Ver Mensaje Individual
  #20  
Viejo 12/07/20, 18:01:52
Array

[xs_avatar]
Areatza Areatza no está en línea
Usuario muy activo
 
Fecha de registro: abr 2019
Mensajes: 1,943
Modelo de smartphone: Galaxy Z Flip/ Ultra SD
Tu operador: Lowi
 Cita: Originalmente Escrito por DaSound Ver Mensaje
Me váis a tener que perdonar pero me estoy retorciendo del dolor solo con leer los despropósitos que se están poniendo por aquí, y me váis a disculpar pero hace falta un conocimiento mucho más profundo de cómo funcionan “por debajo” los sistemas para poder afirmar u opinar sin elucubraciones imaginativas si un sistema es más eficiente que el otro y paso a explicar algunas cosas por las que iOS es CLARÍSIMAMENTE más EFICIENTE, optimizado y mejor sistema en general que Android de aquí a Lima.

Hay muchas razones por las que iOS es más eficiente que Android, algunas por buena práctica por parte de quien lo desarrolló, parte por la buena práctica de quien Diseñó su integración y buena parte por el modelo de negocio en el que se desarrolla, me explico.

En primer lugar, la arquitectura hardware que Apple creó para sus placas es tremendamente escaladle por años. Arreglo a esto le software se complementa con él como un guante, y esto implica solo a su procesador o a su RAM, sino a cómo está colocado cada pieza de ese puzzle, sus buses de comunicación, la forma en que intercambia la información el procesador, la RAM, la memoria interna e incluso sistemas de cámaras, pantalla... en definitiva, cada más mínimo componente hardware de esa placa trabaja.

IOS es un sistema que proviene de MacOS (OS X en su día) tienen un control absoluto del producto desde sus cimientos hasta a su procedencia histórica, y esto permite trabajar muy bien el software aunque sea de terceros.

Esta es otra de las razones. Apple se reserva un control absoluto de iOS sobre el software de terceros, nadie puede salirse del tiesto desmesuradamente, sus normas son más estrictas y no por ser más “NAZI” que nadie, sino por intentar establecer el cumplimiento de las buenas prácticas de programación, y es que se nota demasiado un perfil de desarrollador de años en Android respecto al de iOS, que tiene mucho más en cuenta cosas como no consumir más ram de la debida, y es más cuidadoso con los recursos del sistema.

Android es un sistema ineficiente en recursos desde la base, y así será para siempre jamás, habría que rehacerlo de 0 para solucionar ese problema. Es un sistema que tiene tan metida por el culo la capa de virtualización y su maldigo lenguaje Java que con esa única razón ya es suficiente para afirmar que iOS es enormemente más optimizado. Hablamos de que esa capa de virtualización va directamente a la RAM, el lenguaje Java no es capaz de compilar directamente a binario por lo que el compilador del sistema tiene que pasar el lenguaje a bytecode o lenguaje máquina y de ahí a binario, previo paso por la máquina virtual para poder llegar a la capa del compilador... una basura de aúpa.

La optimización no solo se refiere al sistema, sino al catálogo de SDKs y Frameworks que forman parte del paquete del fabricante para construir las apps. Los kits de desarrollos de iOS están mucho mejor estructurados, están ideados para que sean totalmente óptimos en RAM y que trabajen con los mínimos recursos pero sin perder el rendimiento que lo caracteríza (que tmabién tiene sus cosas, como las tablas... qué dolor es montar una simple UITableView). En general, el ciclo de vida y ciclo de vistas de iOS es mucho más eficiente que el de Android, la forma en que se montan o componen cada una de ellas propicia que sean más o menos eficientes, pudiendo prescindir de “chapuzas intermedias” cuando se quiere hacer cualquier mínima cosa que se sale de lo normal.

Ahora Android tiene como lenguaje Kotlin... pero sus compiladores no son capaces de bajar el código a binario directo, por lo que tiene que compilar Kotlin -> Javacode -> bytecode -> binario... desternillante del todo.

Luego está el anticuado y Manido sistema del “garbage collector” del que Android depende para que Java libere la memoria... y es una buena razón, aparte de la virtualización y baja calidad de frameworks para que necesite tantísima memoria, y es que aunque sobre el papel sea una buena herramienta para quitarse “basura” de encima y hacer hueco a nuevas ejecuciones en la memoria RAM, su implementación es tan tremendamente mala que no pasa cuando puede, no se le fuerza a pasar cuando se necesita....... pasa cuando quiere, y no se puede correr ese riesgo, hay que poner memoria extra para garantizar que siempre tenemos un hueco y no tener que tirar del almacenamiento local.

Y todo esto te das mucha más cuenta sobre todo cuando hay que diseñar una solución software para el requisito de un cliente y estás en la misma habitación que un arquitecto software de la plataforma Android y te cuenta técnicamente cómo hay que montar todo con total detalle y lo comparas... madre mía de mi vida.

La fragmentación, las bases, el lenguaje, el esquema software el control del ciclo de vida, sus frameworks.... son las razones de porqué iOS es mucho más óptimo que Android, y daos cuenta de que no voy a meter en medio cómo funciona cada app, a qué tiene acceso y temas de seguridad... porque entonces ya es para morirse.



No puede ser más lo contrario de lo que estás diciendo. Como más arriba he explicado, la optimización de iOS no solo es tan real como la vida misma, sino que además la diferencia es mucha más grande de lo que un usuario cualquier puede percibir o imaginar, o de lo que alguien que más o menos medio comprende cómo funcionan estas cosas es capaz de deducir imaginativamente.

Samsung no tiene NADA por lo que necsita más ram, DEX es un espejismo absoluto y que obviamente Apple no ha querido implementar porque de lo contrario ya lo tendría, sería funcional y los más importante, lo usaría alguien...

Si hay algo que Apple tiene bien controlado es no fagocitarse A sí mismo los mercados, para eso tiene el iPad, la única declaración de intenciones seria y clara y que tiene alguna oportunidad de ser una alternativa a un PC, o con una experiencia decente (con el que me encuentro ahora mismo escribiendo estas cosas y que es herramienta esencial del día a día).´



Qué gracioso! mi sobrino de 8 años hace lo mismo cuando no sabe qué decir.



Todo suma, obviamente una pantalla de 120hz solo no es razón de más ram, pero la inexistencia de refresco dinámico sí que lo es, por eso Apple se resiste a montarlas en el iPhone, porque su experiencia visual es satisfactoria (aunque los 120Hz los llevamos disfrutando años en el iPad Pro, momento en el que era ninguneada por la comunidad Android y que ha sido valorada solo cuando se ha integrado en algunos de sus dispositivos), a costa de la libertad de poner “la batería que haga falta”, porque cualquier recurso en un terminal Android es grátis sobredimensionarlo, da igual, nadie va a pedir una explicación.


“No hace ningún mal”, no, ni ningún bien, porque como tenemos RAM de sobra, qué más da cómo estén hechas las cosas, siempre funciona, eso se propaga desde quien crea el sistema a quien crea las aplicaciones, y le da exactamente lo mismo cuidarse de hacer una instancia reutilizable que Una por vuelta de un bucle, aunque sean 400, qué más da.


Me remito a lo que le acabo de contestar a @Zippy y a lo que ha explicado @Metzen83.

Ni Android ni iOS «necesitan» más de 4/6 GB para funcionar bien, la diferencia es que Apple ratea al máximo con la RAM mientras que los fabricantes más prestigiosos de Android llevan años en una carrera desbocada a ver quién ofrece más. Y qué quieres que te diga, yo como cliente prefiero que sobre RAM, no hace ningún daño y quizás en algún momento me venga bien tener ese extra.


En el año 2015, el iPhone 6s Plus tenía pantalla FullHD, 1080x1920 específicamente, y la multitarea era lo escrupulosamente necesario sin suponer un despilfarro, como hace Android, del que la multitarea se basa en mantener la app viva en RAM con actualizaciones en segundo plano y ocupando CPU, qué pasa? Adiós batería. iOS implementó en ese momento (iOS8) un sistema que congela las apps y guarda un snapshot que debidamente aprovechado por el desarrollador, es capaz de devolverlo al estado en que se fue a segundo plano aunque la tenga que re-arrancar... algo mil veces más lógico.



Si como misiles te refieres a un breve vuelo para terminar explotando, sí, van como misiles.

Después de esto, a partir de aquí, podéis seguir intentando dar una explicación casi teológica al tema.

Saludos.
Gracias por tu mensaje, una intervención de 10.
Responder Con Cita
Gracias de parte de: