Está en la página 1de 2

Influye el conocer el hardware para desarrollar aplicaciones mviles.

Hay dependencia hay en las aplicaciones mviles con su hardware y es


necesario conocerlo para crear ciertos tipos de aplicaciones?
Primeramente, abarcare este ensayo especifico solo en aplicaciones con S.O.
Android ya que todos sus dispositivos tienen hardware diferente y cambiara el
desarrollo de las aplicaciones.
Para desarrollar en Android es necesario conocer principios de Java que como ya
sabemos es un lenguaje de alto nivel y no es tan necesario conocer el hardware
para crear aplicaciones, solo lo bsico de programacin, pero las aplicaciones
dependiendo de lo que se quiera realizar se puede tildar lentas o hasta ineficientes
si se quiere distribuir a gran escala.
Aunque se pueda utilizar varias cosas del hardware del telfono desde un lenguaje
de alto nivel como por ejemplo la cmara, sensor de luz, de proximidad,
acelermetro, giroscopio, barmetro, etc. Dependiendo de la gamma del mvil se
podran poner lento el dispositivo y hasta cerrarse la aplicacin.
Por eso es de gran ayuda si conociramos todos los tipos de hardware
(Arquitectura, procesador y gpu) de los dispositivos Android. Las aplicaciones que
se haran se podran optimizar hasta un 100% y hasta mejorar la eficiencia de la
aplicacin.
En Android existe a lo que llamaremos NDK (Native Developer Kit), como su
nombre en ingls lo dice es un kit de desarrollo nativo para Android, poder utilizar
cdigo de bajo nivel (C, C++ y Ensamblador) para desarrollar funciones o
fragmentos de cdigo utilizando un lenguaje de bajo nivel, por ejemplo una funcin
que te genere la sucesin de Fibonacci, cuanto tiempo durara en java hacer una
sumatoria de los primeros 20 nmeros, en java durara poco ms de 1 segundo
mientras realizas la misma funcin en C, el tiempo se reducira a milisegundos, se
obtiene un tiempo de respuesta ptimo para una aplicacin mvil.
Aunque no todo el mundo conozca el desarrollo de NDK y suene raro el utilizarlo
muchas empresas desarrolladoras mviles lo utilizan por ejemplo FB al ser una
aplicacin a tiempo real y hacer Streaming o Spotify para un buen uso del
hardware del sonido del telfono y reproducir canciones a tiempo real y la mayora
de juegos que vemos en el store del telfono tienen cdigo de bajo nivel para. que
funcione bien el juego en un dispositivo utilizando frameworks.
Al momento de generar todo el cdigo de bajo nivel que se va utilizar en la app se
compila en varias libreras binarias para cada procesador que existe en Android
(ARM, Mips y los x86 y x86_64), Los binarios compilados para una arquitectura de
procesador no funcionan para otra arquitectura. Por eso es necesario compilar
para todos los procesadores que existen.

Jess Manuel Estrada Morales 13550397


Ahora vamos a lo importante es necesario conocer el hardware des dispositivo
para crear ciertos tipos de aplicaciones.
La respuesta es s, no tienes que conocer todo el hardware y como est
construido, pero debes de saber los componentes que hay en el dispositivo.
Qu tipo de aplicaciones interactan con el hardware? Toda aquella aplicacin
que tenga fragmentos de cdigo en ensamblador, como sabemos el ensamblador
el lenguaje de ms bajo nivel, interacta directamente con el hardware del
dispositivo, para hacer tareas en especfico como conocer e interactuar con
componentes y acelerar hasta un 30% ms que un cdigo en C.
Como vemos en la
imagen, conociendo
el hardware y
sabiendo el
lenguaje adecuado
se podran realizar
apps como
procesamiento de
seales, algoritmos
complejos hechos
en ensamblador,
apps a tiempo real,
etc.

He necesitado conocer parte del hardware para crear yo una aplicacin mvil?
Si, aunque no utilice directamente lenguaje ensamblador, utilice C, para interactuar
con las cmaras del dispositivo y poder procesar imgenes a tiempo real con la
cmara del dispositivo y poder hacer as una aplicacin que revisara exmenes de
opcin mltiple con la cmara del celular. Tuve que saber como funciona la
cmara de los dispositivos Android y en base eso crear un algoritmo que
reconociera las bolitas del examen.
En conclusin lo que podra decir es que aunque se puedan crear aplicaciones sin
tener conocimiento del hardware del dispositivo y en muchos casos no es
necesario tener que saber cmo esta construido el dispositivo, siempre ser muy
buena practica el conocer como estn hechos los mviles ya sea Android o IOS o
hasta Windows Phone para construir aplicaciones que funcionen mucho mejor ya
que lo que realmente importa al ltimo es que los que vallan a usar la app, tengan
una muy buena experiencia de usuario con el producto final.

Jess Manuel Estrada Morales 13550397

También podría gustarte