Tecnología móvil

La telefonía móvil o telefonía celular es un medio de comunicación inalámbrico a través de ondas electromagnéticas. Como cliente de este tipo de redes, se utiliza un dispositivo denominado teléfono móvil o teléfono celular. En la mayor parte de Hispanoamérica se prefiere la denominación teléfono celular o simplemente celular, aunque en Cuba se dice de ambas formas, y mientras que en España es más común el término teléfono móvil o simplemente móvil. Resultado de imagen para tecnologia movil
 
¿ A que se le llama programacion movil?
En casi cualquier ámbito de programación que escojas, hoy en día tienes disponibles infinidad de herramientas, lenguajes y entornos que puedes elegir. Toda esa maraña de opciones hacen que, en ocasiones, sea muy complicado decantarse por una opción u otra.
 
En el mundo del desarrollo para móviles y tabletas pasa lo mismo. Actualmente dispones de muchas opciones si te quieres dedicar a este ámbito, y en concreto debes elegir entre:
 
Los lenguajes y herramientas nativos de cada plataforma: ObjectiveC/Swift y XCode en iOS, Java y Android Studio en Android, C#, XAML y Visual Studio en el caso de Windows Phone y Windows 8....
Herramientas multiplataforma que compilan a código nativo. La más conocida y utilizada es Xamarin.
Herramientas multiplataforma basadas en HTML. La más conocida es PhoneGap/Apache Cordova, pero existen muchas más.
Cada una de estas opciones tiene sus ventajas e inconvenientes, así que ¿cuál deberías elegir?.
 
En este post repasaremos por encima las principales opciones que existen a la hora de realizar programación móvil con sus ventajas e inconvenientes, y te daremos unas pautas básicas para ayudarte a decidir por dónde tirar.
 
Desarrollo Nativo
Está claro que, siempre que puedas, el desarrollo nativo es la mejor gran opción.
 
El problema es que cada plataforma (iOS, Android, WP...) es un mundo. Cada una de ellas utiliza un lenguaje de programación diferente, herramientas propias y paradigmas de programación particulares. A cambio obtienes la máxima flexibilidad, adaptación total al entorno en el que se ejecuta la aplicación y el máximo rendimiento.
 
La desventaja principal es que tienes que dominar muchos lenguajes y herramientas y que el tiempo de desarrollo se multiplica mucho, pues es necesario crear desde cero tres versiones diferentes de la misma aplicación (una para cada plataforma).
 
Por regla general los programadores se especializan y eligen una única plataforma, de modo que puedan dar lo mejor de si mismos en ésta.
 
Por ejemplo, si decides especializarte en iOS y así programar para la popular plataforma de iPhone y iPad, entonces deberás aprender a programar con Objective-C o Swift y a utilizar el entorno XCode, comprándote además un ordenador Mac.
 
Desarrollo multiplataforma compilado a nativo
Una opción de compromiso es utilizar alguna plataforma de desarrollo mixta que independiza el desarrollo del lenguaje nativo de cada plataforma móvil.
 
Con este tipo de herramientas se utiliza un único lenguaje y se crean aplicaciones para todas las plataformas, eso sí, adaptando algunas cuestiones para poder funcionar en cada caso. Lo bueno es que te permite conocer un solo lenguaje, reutilizar gran parte del código entre todas, y generar aplicaciones nativas para todos los entornos móviles.
 
La más conocida es, sin duda, Xamarin. Está basada en el lenguaje C# de Microsoft y en la plataforma .NET, y gracias a sus herramientas permite crear aplicaciones para todas las plataformas, reutilizando gran parte del código (a excepción de la interfaz).
 
Si ya conoces C# y .NET, aprender Xamarin te ayuda a aprovechar los conocimientos que ya posees y con ellos desarrollar para todas las plataformas móviles relevantes del mercado (iOS, Android y Windows Phone).
 
Se obtienen muchas ventajas de su uso, pero fundamentalmente dos:
 
Puedes programar en algo que ya conoces y evitar aprender nuevos lenguajes innecesariamente.
· Tus aplicaciones funcionarán con pocos cambios en varias plataformas.
O sea, al final ahorras tiempo, esfuerzo y llegas antes al mercado.
 
Las aplicaciones escritas con Xamarin en C# se compilan a código nativo en cada plataforma, por lo que su rendimiento es exactamente el mismo que el de una aplicación nativa. Además ofrece acceso directo nativo a todas las APIs de cada plataforma así como a los controles de interfaz de usuario nativos (de hecho esto es lo que debes aprender con Xamarin para cada plataforma de manera diferente según quieras programar para iOS, Android o Windows Phone).
¿A qué se le llama programación móvil?
En casi cualquier ámbito de programación que escojas, hoy en día tienes disponibles infinidad de herramientas, lenguajes y entornos que puedes elegir. Toda esa maraña de opciones hacen que, en ocasiones, sea muy complicado decantarse por una opción u otra.
 
En el mundo del desarrollo para móviles y tabletas pasa lo mismo. Actualmente dispones de muchas opciones si te quieres dedicar a este ámbito, y en concreto debes elegir entre:
 
Los lenguajes y herramientas nativos de cada plataforma: ObjectiveC/Swift y XCode en iOS, Java y Android Studio en Android, C#, XAML y Visual Studio en el caso de Windows Phone y Windows 8....
Herramientas multiplataforma que compilan a código nativo. La más conocida y utilizada es Xamarin.
Herramientas multiplataforma basadas en HTML. La más conocida es PhoneGap/Apache Cordova, pero existen muchas más.
Cada una de estas opciones tiene sus ventajas e inconvenientes, así que ¿cuál deberías elegir?.
 
En este post repasaremos por encima las principales opciones que existen a la hora de realizar programación móvil con sus ventajas e inconvenientes, y te daremos unas pautas básicas para ayudarte a decidir por dónde tirar.
 
Desarrollo Nativo
Está claro que, siempre que puedas, el desarrollo nativo es la mejor gran opción.
 
El problema es que cada plataforma (iOS, Android, WP...) es un mundo. Cada una de ellas utiliza un lenguaje de programación diferente, herramientas propias y paradigmas de programación particulares. A cambio obtienes la máxima flexibilidad, adaptación total al entorno en el que se ejecuta la aplicación y el máximo rendimiento.
 
La desventaja principal es que tienes que dominar muchos lenguajes y herramientas y que el tiempo de desarrollo se multiplica mucho, pues es necesario crear desde cero tres versiones diferentes de la misma aplicación (una para cada plataforma).
 
Por regla general los programadores se especializan y eligen una única plataforma, de modo que puedan dar lo mejor de si mismos en ésta.
 
Por ejemplo, si decides especializarte en iOS y así programar para la popular plataforma de iPhone y iPad, entonces deberás aprender a programar con Objective-C o Swift y a utilizar el entorno XCode, comprándote además un ordenador Mac.
 
Desarrollo multiplataforma compilado a nativo
Una opción de compromiso es utilizar alguna plataforma de desarrollo mixta que independiza el desarrollo del lenguaje nativo de cada plataforma móvil.
 
Con este tipo de herramientas se utiliza un único lenguaje y se crean aplicaciones para todas las plataformas, eso sí, adaptando algunas cuestiones para poder funcionar en cada caso. Lo bueno es que te permite conocer un solo lenguaje, reutilizar gran parte del código entre todas, y generar aplicaciones nativas para todos los entornos móviles.
 
La más conocida es, sin duda, Xamarin. Está basada en el lenguaje C# de Microsoft y en la plataforma .NET, y gracias a sus herramientas permite crear aplicaciones para todas las plataformas, reutilizando gran parte del código (a excepción de la interfaz).
 
Si ya conoces C# y .NET, aprender Xamarin te ayuda a aprovechar los conocimientos que ya posees y con ellos desarrollar para todas las plataformas móviles relevantes del mercado (iOS, Android y Windows Phone).
 
Se obtienen muchas ventajas de su uso, pero fundamentalmente dos:
 
Puedes programar en algo que ya conoces y evitar aprender nuevos lenguajes innecesariamente.
· Tus aplicaciones funcionarán con pocos cambios en varias plataformas. O sea, al final ahorras tiempo, esfuerzo y llegas antes al mercado.
 
Las aplicaciones escritas con Xamarin en C# se compilan a código nativo en cada plataforma, por lo que su rendimiento es exactamente el mismo que el de una aplicación nativa. Además ofrece acceso directo nativo a todas las APIs de cada plataforma así como a los controles de interfaz de usuario nativos (de hecho esto es lo que debes aprender con Xamarin para cada plataforma de manera diferente según quieras programar para iOS, Android o Windows Phone).
¿Cómo se comunican los celulares y pc?
Además de los programas que se instalan directamente en tu teléfono móvil, también existen otros que interactúan entre Windows y el sistema operativo de tu teléfono
 
Es el caso de los sincronizadores de información PIM, los visores remotos de entornos o los gestores de funciones telefónicas. Una serie de programas capaces de establecer una comunicación entre tu PC y tu móvil con un objetivo común: controlar y gestionar tu teléfono móvil sin apartar la mirada de la pantalla de tu PC.
Resultado de imagen para celular y pc
Sincronizadores
Las suites distribuidas por los fabricantes forman parte de esos programas esenciales. Básicamente, son programas que se encargan de sincronizar la información PIM entre el PC y las aplicaciones instaladas de fábrica en el teléfono móvil.
 
En el caso de Nokia, estos programas se conocen por Nokia PC Suite e incluyen todas las funciones necesarias para gestionar y sincronizar contactos, tareas, calendario, notas o correos electrónicos entre plataformas.
 
Para terminales con Windows Mobile o Windows Mobile Smartphone, Microsoft utiliza una combinación de programas. Por un lado, un módulo de sincronización denominado ActiveSync o Windows Mobile Device Center (para Vista) y, por otro, el cliente de correo electrónico Microsoft Outlook.
 
BlackBerry, en cambio, utiliza un entorno denominado Desktop Software que, al igual que los anteriores, también se encarga de unificar la información PIM entre el programa y los gestores de información instalados de fábrica en sus terminales.
 
Otros fabricantes como Sony Ericsson utilizan este tipo de suites para, además, generar copias de seguridad de los contactos, transferir imágenes e incluso crear y enviar mensajes desde el propio entorno del programa.
 
Controla tu teléfono desde Windows
Además de los típicos sincronizadores de información PIM, también existen otras soluciones como los gestores de funciones telefónicas, programas que permiten manipular las funciones básicas de tu terminal directamente desde el Escritorio de Windows. Por ejemplo, True Connect para Windows Mobile Smartphone permite navegar e interactuar con la gran parte de opciones y funciones de un terminal desde una ventana de Windows. De hecho, puedes redactar y enviar mensajes, añadir nuevas notas de texto, agregar o modificar contactos en la agenda e incluso realizar capturas de pantalla.
 
FloAt's Mobile Agent o MyPhoneExplorer son programas de características semejantes pero compatibles con teléfonos móviles Sony Ericsson. Además de gestionar mensajes, notas y contactos; ambos programas permiten añadir citas en el calendario, transferir archivos e incluso atender las llamadas entrantes directamente desde el PC.
 
Para Symbian OS actualmente existen diferentes soluciones independientes para acceder, desde Windows, a las funciones vitales. Por ejemplo, con BlueText puedes enviar y recibir mensajes desde el Escritorio, Smart Remote permite gestionar el calendario los contactos o grabar vídeos; o PhoneScreen, un programa capaz de emular una representación a escala del entorno. Ideal para demostraciones de funcionalidades u otras presentaciones.
 
Controla Windows desde tu teléfono
Al igual que hay programas para controlar el teléfono móvil desde Windows, también existen programas para hacer lo contrario. Es decir, programas que permiten controlar las funciones básicas de Windows u otros programas instalados, directamente desde la pantalla del teléfono móvil.
 
Es el caso de RDM+ Remote Desktop o Mobile Desktop, dos programas con los recursos y las opciones necesarias para visualizar e interactuar con el Escritorio de Windows, gobernar el teclado o el ratón, ejecutar programas e incluso reiniciar o apagar el sistema de un modo remoto. U otros programas como PhoneTunes, Bluetooth Remote Control o Best Mobile MouseAnyWhere, pensados para controlar el reproductor iTunes, presentaciones de PowerPoint o simplemente utilizar tu móvil como ratón, respectivamente.