ELÉCTRICA
UNIDAD PROFESIONAL ZACATENCO
Diseño e implementación de herramientas básicas de
Ingeniería en Comunicaciones y Electrónica para Pocket PC
T E S I S
Que para obtener el Título de:
Ingeniero en Comunicaciones y Electrónica
Presentan:
Gómez Muñoz Jessica Lissete
Herrera Cárdenas Christian
Santiago Álvarez Jorge Luis
Asesores:
Ing. Armando Mancilla León
M. en C. Roberto Galicia Galicia
DISEÑO E IMPLEMENTACIÓN
DE HERRAMIENTAS BÁSICAS
DE INGENIERÍA EN
COMUNICACIONES Y
ELECTRÓNICA PARA POCKET
ÍNDICE
Contenido
Agradecimientos ... iii
Dedicatorias ... iv
Objetivo General ... v
Objetivos Particulares: ... v
Justificación ... vi
INTRODUCCIÓN ... vii
CAPÍTULO I ... 1
Marco Histórico y Estado del Arte ... 1
1.1 Marco Histórico ... 1
1.1.1 ¿Qué es un dispositivo móvil?... 2
1.1.2 Breve historia de los celulares... 3
1.1.3 Celulares como herramientas de trabajo ... 6
1.2 Estado del Arte ... 6
1.2.1 Sistemas Operativos para móviles... 6
1.2.2 Características de un Dispositivo móvil actual ... 12
1.2.3 Aplicaciones de un dispositivo móvil ... 13
1.2.4 Aplicaciones Windows Mobile con tecnología .NET ... 16
1.3 Pocket PC... 18
1.3.1 Características de PocketPC ... 19
1.3.3 Funciones básicas ... 20
CAPÍTULO II ... 23
Planteamiento del Problema y Herramientas de Software ... 23
2.1 Planteamiento del problema ... 23
2.2 Tecnología .NET... 24
2.2.1 Versiones de multiplataforma de .NET Framework... 25
2.2.2 Características de Visual C# .NET... 27
2.3 Windows Mobile ... 28
2.4.1 Versiones ... 33
2.4.2 Funciones de Visual Studio ... 34
CAPÍTULO III ... 35
Diseño y Desarrollo de la Aplicación ... 35
3.1 Descripción general de la aplicación... 35
3.2 Desarrollo y creación de la aplicación ... 37
3.2.1 Herramientas del software ... 41
3.2.1.1 Controles usados para el diseño de la aplicación ... 43
3.2.2 Desarrollo de herramientas de apoyo para las aplicaciones de ICE para Pocket PC ... 49
3.2.3 Diseño de la interfaz ... 81
3.3 Programación y codificación ... 90
3.3.1 Diagramas de clase ... 92
3.4 Conversión de formularios a bibliotecas de clases. ... 97
CAPÍTULO IV ... 103
Implementación y Pruebas ... 103
4.1 Conexión con el dispositivo ... 103
4.1.1 Emulador Smart Device de Visual Studio ... 104
4.2 Implementación ... 106
4.2.1 Transferencia de la aplicación al dispositivo móvil... 106
4.3 Análisis de pruebas... 110
4.3.1 Resultados en el dispositivo móvil y el emulador ... 115
4.4 Análisis de costos ... 118
Conclusiones ... 121
Anexos ... 124
Herramientas útiles de .NET Framework ... 124
Especificaciones técnicas de instalación y compatibilidad con el sistema operativo del Pocket. ... 125
Compatibilidad del Active Sync con diferentes sistemas operativos y dispositivos ... 127
Requerimientos de instalación Visual Studio 2008 ... 128
Referencia de la biblioteca de clases de .NET Framework ... 129
Apéndice “Códigos de las herramientas de apoyo de la aplicación de ICE” ... 158
Referencias ... 221
Glosario ... 225
Algunas veces el camino se puede tornar difícil, algunas veces puede estar inclinado y muy pesado de subir, otras veces plano y sin chiste. Y así, durante el trayecto, sea cual sea el que se recorra para llegar a nuestro destino, se
puede encontrar de todo tipo de obstáculos grandes o pequeños, son esos obstáculos los que hacen que uno aprenda a sobrevivir y a ser mejor día a día. Sin embargo esto no sería posible sin la ayuda y el apoyo de las
personas que nos acompañan a nuestro alrededor a recorrer con nosotros ese camino.
Es por eso que al día de hoy en que he llegado a una de las primeras paradas, que haré durante mi trayecto,
quiero agradecer a mis padres, por todo su amor, su comprensión, su cariño, por estar conmigo desde niña, por impulsarme a ser mejor día con día, por nunca dejar que me cayera, y ayudarme a levantarme si así fuera. Papás, se que el camino ha sido difícil y que nos hemos topado con tristezas alegrías, pero también disfrutamos de los
éxitos que todo esto conlleva.
A mi hermana Miriam, porque sin su fortaleza como hermana, no hubiera podido reponerme de tantas cosas, por
sus consejos de hermana adulta, aun cuando es más pequeña que yo, Miriam ¡¡eres súper!!, te amo y te agradezco todas las alegrías que me das y las ocurrencias que hicieron nivelar mi nivel de estrés, jejeje… ^_^‟ A mi hermano Ricardo, siempre tan intelectual, excelentes consejos, valiosos para poder seguir mi camino,
gracias por algunos conceptos que me diste para escribir parte de la tesis, ahora se lo importante que es tener un
diccionario a la mano. Para tu corta edad me apoyaste en mis locuras y arrebatos y me dijiste “cálmate y sigue adelante…”, gracias por eso y mucho más, te amo Ricardo, sígueme poniendo música mientras trabajo para evitar que me duerma, aunque luego eso no se pueda lograr jejeje… ^_^‟
A mis amigos, por su apoyo y comprensión, su cariño, su amistad desinteresada, por enseñarme que hay más cosas en la vida que solo estudiar; por decirme que la diversión se puede combinar con el estudio y el trabajo, por comprender mi falta de tiempo y por entender que aunque no conviviéramos mucho tiempo juntos, ellos y yo siempre estaríamos para apoyarnos, aún en los momentos de tristeza y enojo.
Sobre todo quiero darle las gracias a Dios, por colmarme de tantas bendiciones, por nunca dejarme desamparada y por brindarme siempre un rayito de luz y esperanza. Dios gracias por ese poder infinito y por poner en mi camino
a todas y cada una de las personas que me ayudaron a crecer como persona y me llevaron a lograr lo que ahora soy.
OBJETIVOS
Objetivo General
Diseñar e implementar una aplicación para dispositivos móviles, Pocket PC, con sistemas Windows
Mobile con ayuda de la herramienta de programación Visual Studio y .NET Framework.
Objetivos Particulares:
Brindar una aplicación de apoyo, al estudiante de Ingeniería en Comunicaciones y Electrónica, una
interfaz que le permita realizar soluciones operativas básicas, con fines prácticos en esta rama; la
aplicación pretende que el usuario tenga un apoyo sustentable, la cual le ofrecerá herramientas de
diseño, de cálculo, de visualización, tales como una calculadora, formularios e información que le sirva
Justificación
Que el estudiante de ingeniería tenga las herramientas necesarias, para realizar sus tareas afines con
sus materias de Ingeniería en Comunicaciones y Electrónica, por lo que esta herramienta le será de
apoyo para resolver sus problemas de ingeniería básica y con mejores resultados.
De manera más práctica, se integran, en un solo dispositivo, las herramientas necesarias básicas,
siendo innecesario el transporte de otros aditamentos como calculadora, equipo portátil (laptop), hojas
de especificación o un gran volumen de libros, desde luego, en caso de requerir tareas más específicas,
sí se tendrá que recurrir al uso de otros medios.
La aplicación está elaborada en un entorno totalmente orientado a objetos, para la facilidad de uso del
usuario en una plataforma realizada basándose en la tecnología .NET y con un software especializado
en la creación de soluciones de software, como lo es Visual Studio 2008 Professional Edition, que nos
brindan una mejor opción de diseño e implementación del software, y se adaptan a las aplicaciones
utilizadas en los dispositivos orientados a Windows Mobile (Pocket‟s PC y Smartphone). De esta
manera, el usuario podrá implementar esta aplicación de manera fácil a su dispositivo móvil, y podrá
INTRODUCCIÓN
Cuando se habla de desarrollar software para dispositivos móviles, lo primero que se viene a la mente es
el desarrollo para teléfonos celulares, pero, en muchas ocasiones, no se tiene claro que se debe hacer;
¿Un sitio Web? ¿Una aplicación para el celular?
Lo cierto es que, un dispositivo móvil no es solo un celular, y que además, el software a desarrollar,
puede ser, tanto un sitio Web, como una aplicación para el dispositivo.
Los celulares no son los únicos dispositivos móviles para los cuales se puede desarrollar software,
existen otros dispositivos como Palm o Pocket PC. Dispositivos de mano, pequeños con, ciertamente,
una gran potencia.
Para poder tomar la decisión correcta, tanto para elegir el dispositivo correcto, como la tecnología a usar,
es necesario conocer cuáles son nuestras necesidades, tanto presentes como futuras, las capacidades
del dispositivo que se elija, el conocimiento actual o la facilidad de adquirir este conocimiento sobre el
software de desarrollo, entre otras.
Por un lado, Palm, nos brinda una plataforma de desarrollo basada en su propio lenguaje, el cual tiene
fundamentos en C y C++. En la actualidad, el software para desarrollar aplicaciones para estos
dispositivos es totalmente gratis, pero, para poder compilar una aplicación desarrollada para este, es
necesario desembolsar una gran suma, ya que, los compiladores se venden por separado y son
vendidos por terceros, y por último, si uno no posee un equipo Palm, es necesario obtener el BIOS del
equipo para el cual se quiera desarrollar, pero para ello, se deben llevar a cabo una serie de trámites
entre Palm y la empresa a desarrollar, para poder obtener una copia de dicho BIOS.
En contraste con Pocket PC y con Windows CE incluido, se puede programar con dos plataformas de
desarrollo, .Net, y Microsoft Embedded Visual Tools, estas últimas, herramientas totalmente gratuitas,
que nos permiten programar en lenguajes como Visual Basic o Visual C o C
#
.En el caso de que se quieran utilizar tecnologías de vanguardia, también se puede desarrollar con .Net,
Pocket PC.
Se debe aclarar, que .Net, por parte de terceros, también puede desarrollar para Palm, lo que, en este
punto, ya hace la diferencia.
En el caso de teléfonos celulares, se tienen dos alternativas, crear un sitio Web o desarrollar
aplicaciones para el mismo celular. Y una vez más, se pueden plantear las dificultades de aprender un
nuevo lenguaje.
Si se pone en contraste, .Net contra otras tecnologías, se ve que, dependiendo de la marca del celular,
éste posee, para el desarrollo de aplicaciones, un lenguaje específico, aunque basados en C y C++,
cambian de celular a celular. Y en el caso del desarrollo de sitios web para celulares, es necesario
aprender otro lenguaje, comúnmente llamado WML, el cual es una mezcla de XML, con etiquetas “tags”
específicas, y el lenguaje de servidor que se quiera imbuir con nuestro código.
Por el contrario, .Net, tiene la facilidad de que, utilizando la misma forma de trabajo, que el desarrollo de
una página web normal, se pueden crear sitios web, para teléfonos celulares, dejando el código simple y
sin mezclas extrañas de otros lenguajes y tomando en sus manos el trabajo “sucio” de transformación de
datos y lenguajes.
Por último, para el desarrollo de aplicaciones para dispositivos móviles, .Net nos entrega el mismo
entorno de desarrollo, para una aplicación de escritorio. Indudablemente, que este desarrollo, es para
teléfonos celulares o Pocket PC que poseen Windows CE.
En definitiva, .Net lleva ventaja, integrando el desarrollo para dispositivos móviles, con tres alternativas
(Aplicaciones Web para móviles, aplicaciones para celulares, y aplicaciones para dispositivos Pocket),
prácticamente con el mismo código, y con lenguajes de programación que se adaptan a lo que se puede
saber u obtener información en corto plazo.
A lo largo de éste documento se abordarán diversos temas que ayudarán a un mejor entendimiento de
como los diferentes sistemas operativos que están instalados en cada uno de ellos y las diferentes
aplicaciones desarrolladas para el dispositivo móvil, Pocket PC sus principales características y
funciones básicas.
En el capítulo II, se plantea el problema, el cual es, el desarrollo de la aplicación que será implementada
a la Pocket PC, el estudio de las herramientas de desarrollo y las características de Tecnología .NET,
Windows Mobile y una introducción las principales funciones de Visual Studio 2008.
En el capítulo III, se trata más ampliamente del diseño y desarrollo de la aplicación. Las funciones y
herramientas del Visual Studio utilizadas para el diseño de las diferentes interfaces, descripción de los
controles y el desarrollo paso a paso de las herramientas de apoyo para las aplicaciones de ICE para
Pocket PC. Se muestra la manera de programar los controles para que realicen diversas funciones de
acuerdo al tipo de herramienta que se esté desarrollando. Por último se muestra la conversión de los
diversos formularios a bibliotecas de clases, para después conjuntarlas en un solo proyecto.
En el capítulo IV, se explica la manera de sincronizar la Pocket PC por medio del Active Sync, y de esta
manera poder implementar la aplicación; o bien si no se cuenta con el dispositivo, se muestra la manera
de probar la aplicación por medio del emulador con el que cuenta el Visual Studio. Se realizan las
pruebas necesarias con la aplicación, para verificar que se implementó satisfactoriamente.
CAPÍTULO I
Marco Histórico y Estado del Arte
1.1
Marco Histórico
Las tecnologías inalámbricas han tenido mucho auge y desarrollo en estos últimos años.
Una de las que ha tenido un gran desarrollo ha sido la telefonía móvil.
Desde sus inicios a finales de los años 70 han revolucionado enormemente las actividades
que se realizan diariamente. Los dispositivos móviles últimamente se han convertido en una
herramienta primordial para la gente de negocios; las hace sentir más seguras y las hace,
hasta cierto punto, más productivas.
A pesar de que la telefonía celular fue concebida estrictamente para la voz, la tecnología
celular de hoy es capaz de brindar otro tipo de servicios, como datos, audio y video con
algunas limitaciones. Sin embargo, la telefonía inalámbrica del mañana hará posible
aplicaciones que requieran un mayor consumo de ancho de banda.
La evolución del teléfono móvil ha permitido disminuir su tamaño y peso, desde ese primer
teléfono móvil en 1983 que pesaba 780 gramos, a los actuales más compactos y con
mayores prestaciones de servicio. El desarrollo de baterías más pequeñas y de mayor
duración, pantallas más nítidas y de colores, la incorporación de software más amigable, hoy
en día, hacen del teléfono móvil un elemento muy apreciado en la vida moderna.
El avance de la tecnología ha hecho que estos aparatos incorporen funciones que no hace
mucho parecían futuristas, como juegos, reproducción de música MP3 y otros formatos,
correo electrónico, SMS, agenda electrónica PDA, fotografía digital y video digital, video
PC, se incorporó la función de block de notas, agenda y otras funciones fáciles de
sincronizar con una PC; la primer compañía que hizo esto posible fue US Robotics, y el
dispositivo lo llamó Pilot 1000, en aquella entonces, aproximadamente 1996, éste dispositivo
contaba con un poderoso procesador Motorola de 16 MHz y 128 KB de RAM. Un poco más
tarde el nombre fue modificado a Palm Pilot, desembarcando en el mercado en 1997 con
dos versiones Palm Pilot personal y Palm Pilot profesional, éste último con memoria en RAM
de 1 MB, conectividad TCP/IP, reconocimiento de escritura y base de sincronización;
abriéndose paso a una multitud de aplicaciones. Las compañías de telefonía móvil y otros
dispositivos móviles, ya están pensando nuevas aplicaciones para este pequeño aparato
que acompaña a todas partes. Algunas de esas ideas son: medio de pago, localizador e
identificador de personas. Siempre hay que tener en cuenta los grandes avances sufridos
desde el primer dispositivo móvil hasta el actual.
1.1.1 ¿Qué es un dispositivo móvil?
Un dispositivo móvil no es sólo un celular. Los dispositivos móviles (también conocidos
como computadora de mano, "Palmtop" o simplemente handheld) son aparatos de pequeño
tamaño, con algunas capacidades de procesamiento, con conexión permanente o
intermitente a una red, con memoria limitada, diseñados específicamente para una función,
pero que pueden llevar a cabo otras funciones más generales.
Estos dispositivos describen a un ordenador portátil para diversas aplicaciones, que puede
ser llevado a cualquier parte mientras se utiliza.
Los computadores Hand held, o también llamados PDAs (Personal Digital Assistants) son los
llamados ordenadores de la palma de la mano, y fueron diseñados originalmente como
organizadores personales, y ellos hacen esto realmente bien. Las características básicas de
cualquier PDA son una agenda, libreta de direcciones, lista de tareas, y block de notas,
aunque con el auge de los nuevos procesadores y disponibilidad de software, ya se han
potenciado las aplicaciones web, juegos y casi cualquier otra aplicación que se pueda
pensar. Aunque estas primeras características son muy provechosas para mantener a
ocupada, que utilice una computadora de escritorio, es la de la sincronización fácil de la
información con el ordenador del escritorio, dentro de esta categoría, se ha fusionado un
teléfono celular con características similares a las de un computador personal, el cual da
como resultado un Teléfono Inteligente o Smartphone, que es un dispositivo electrónico.
Casi todos los teléfonos inteligentes son celulares que soportan completamente un cliente de
correo electrónico, con la funcionalidad completa de un organizador personal. Una
característica importante de casi todos los teléfonos inteligentes, es que permiten la
instalación de programas para incrementar el procesamiento de datos y la conectividad.
Estas aplicaciones pueden ser desarrolladas por el fabricante del dispositivo, por el operador
o por un tercero. El término "Inteligente" hace referencia a cualquier interfaz, como un
teclado QWERTY en miniatura, una pantalla táctil, o simplemente el acceso seguro al correo
electrónico de una compañía, como el provisto por un BlackBerry.
Los teléfonos inteligentes se distinguen por muchas características que incluyen, pero estas
características no se limitan a, pantallas táctiles ni a un sistema operativo así como la
conectividad a Internet. El completo soporte al correo electrónico parece ser una
característica definitiva, encontrada en todos los modelos existentes y anunciados en el
2007. Casi todos los teléfonos inteligentes también permiten al usuario instalar programas
adicionales, normalmente desde terceros, pero algunos vendedores gustan de presumir a
sus teléfonos como inteligentes, aun cuando no tienen esa característica.
Entre las características más importantes está el acceso a Internet y al correo electrónico, a
los programas de agenda, las cámaras integradas, administración de contactos,
acelerómetros y algunos programas de navegación, así como ocasionalmente la habilidad de
leer documentos de negocios en variedad de formatos como: PDF y Microsoft Office.
1.1.2 Breve historia de los celulares
Martin Cooper fue el pionero en esta tecnología, a él se le considera como "el padre de la
trabajaba para Motorola; pero no fue hasta 1979 cuando aparecieron los primeros sistemas
comerciales en Tokio, Japón, por la compañía NTT.
En 1981, los países nórdicos introdujeron un sistema celular similar a AMPS (Advanced
Mobile Phone System). Por otro lado, en Estados Unidos, gracias a que la entidad
reguladora de ese país adoptó reglas para la creación de un servicio comercial de telefonía
celular, en 1983 se puso en operación el primer sistema comercial en la ciudad de Chicago.
Con ese punto de partida, en varios países se diseminó la telefonía celular como una
alternativa a la telefonía convencional inalámbrica. La tecnología tuvo gran aceptación, por lo
que a los pocos años de implantarse se empezó a saturar el servicio. En ese sentido, hubo
la necesidad de desarrollar e implantar otras formas de acceso múltiple al canal, y
transformar los sistemas analógicos a digitales, con el objeto de darles cabida a más
usuarios. Para separar una etapa de la otra, la telefonía celular se ha caracterizado por
contar con diferentes generaciones. A continuación, se describe cada una de ellas.
LAS GENERACIONES DE LA TELEFONIA INALAMBRICA
--Primera generación (1G)
La 1G de la telefonía móvil, hizo su aparición en 1979 y se caracterizó por ser analógica y
estrictamente para voz. La calidad de los enlaces era muy baja, tenían baja velocidad (2400
bauds). En cuanto a la transferencia entre celdas, era muy imprecisa ya que contaban con
una baja capacidad (Basadas en FDMA, Frequency Division Multiple Access) y, además, la
seguridad no existía. La tecnología predominante de esta generación es AMPS (Advanced
Mobile Phone System).
--Segunda generación (2G)
La 2G arribó hasta 1990, y a diferencia de la primera se caracterizó por ser digital.
sistemas de telefonía celular actuales. Las tecnologías predominantes son: GSM (Global
System por Mobile Communications); IS-136 (conocido también como TIA/EIA136 o
ANSI-136) y CDMA (Code Division Multiple Access) y PDC (Personal Digital Communications),
éste último utilizado en Japón.
Los protocolos empleados en los sistemas 2G soportan velocidades de información más
altas por voz, pero limitados en comunicación de datos. Se pueden ofrecer servicios
auxiliares, como datos, fax y SMS (Short Message Service). La mayoría de los protocolos de
2G ofrecen diferentes niveles de encriptación. En Estados Unidos y otros países se le
conoce a 2G como PCS (Personal Communication Services).
--Generación 2.5 G
Muchos de los proveedores de servicios de telecomunicaciones, se moverán a las redes
2.5G antes de entrar masivamente a la 3. La tecnología 2.5G es más rápida, y más
económica para actualizar a 3G.
La generación 2.5G ofrece características extendidas, ya que cuenta con más capacidades
adicionales que los sistemas 2G, como: GPRS (General Packet Radio System), HSCSD
(High Speed Circuit Switched), EDGE (Enhanced Data Rates for Global Evolution), IS-136B
e IS-95Bm entre otros. Los
--Tercera generación 3G.
La 3G se caracteriza por contener a la convergencia de voz y datos con acceso inalámbrico
a Internet; en otras palabras, es apta para aplicaciones multimedia y altas transmisiones de
datos.
Los protocolos empleados en los sistemas 3G, soportan altas velocidades de información y
están enfocados para aplicaciones más allá de la voz como audio (mp3), video en
3G es la tecnología actual y cumplió con las predicciones que en el 2000, The Yanlee Group
anticipó para el 2004 habría más de 1,150 millones en el mundo, comparados con los 700
millones que hubo en el 2000. Dichas cifras anticiparon un gran número de capital
involucrado en la telefonía inalámbrica, lo que con mayor razón las compañías fabricantes de
tecnología, así como los proveedores de servicios de telecomunicaciones, estarían
dispuestos a invertir su capital en esta aventura llamada 3G.
1.1.3 Celulares como herramientas de trabajo
Los Handheld se han convertido en equipos robustos para su utilización en la gestión de
situaciones empresariales, como por ejemplo, para la grabación de información estando en
la calle. Actualmente son usados para archivar una variedad de tareas y para incrementar la
eficiencia, como ser, la digitalización de notas, gestión de archivos, capturas de firmas,
gestión y escaneo de partes de código de barras, entre otras tareas. Las computadoras
Handheld usadas en el trabajo, han moldeado a través del tiempo una variedad de factores y
de formas, incluyendo teléfonos inteligentes, Handheld, PDAs, PCs Ultra Móviles, Tablet
PCs, Pocket PC, e incluso computadoras portátiles.
1.2 Estado del Arte
1.2.1 Sistemas Operativos para móviles
Probablemente, cualquier usuario de informática tenga en el bolsillo un segundo ordenador
más potente después de su PC: el teléfono móvil o una Pocket PC. Muchos móviles actuales
incluyen, además de la agenda, calendario de citas, videojuegos, reproductor y grabador de
vídeo, correo electrónico e incluso navegación por la Red. Debajo de todos esos programas,
hay un sistema operativo.
Los sistemas operativos están en primera instancia, sobre todo los de PC. Microsoft, la
mayor de las empresas de software, aparece con frecuencia en los medios de comunicación,
Linux, en cambio, el sistema operativo abierto más popular, suele ser noticia cada vez que
una administración pública decide utilizarlo.
Los dispositivos móviles también tienen sus propios sistemas operativos, aunque son menos
famosos que los de PC. Sin embargo, así como el mercado de los sistemas operativos para
PC está dominado por Windows, en el caso de los móviles hay más competencia. La mayor
parte se lo reparten entre tres sistemas: Windows, Symbian y Linux.
Por norma general, antes de la compra de un dispositivo móvil, son pocos los usuarios, los
que atienden al sistema operativo que se instala en el dispositivo. Y son muchos menos los
que lo hacen cuando el dispositivo no es un teléfono inteligente. Pero la guerra en busca de
un sistema operativo estándar es larga y, pese a que últimamente se ha especulado con una
posible fusión entre plataformas o de un predominio claro de un sistema sobre los demás, lo
cierto es que pocas posiciones han variado desde hace más de diez años.
Nokia y Sony Ericsson, por citar algunos ejemplos, han hecho de la plataforma Symbian, su
bandera estratégica en el terreno de los sistemas operativos para sus teléfonos inteligentes.
De hecho, el sistema S60 (la plataforma Symbian utilizada actualmente por Nokia en su
exitosa Serie N), es en este momento el sistema operativo más utilizado a nivel mundial en
el mercado de smartphones. Otros fabricantes, como es el caso de HP, HTC, Toshiba, Acer,
Asus y recientemente Palm, se han decantado por Windows Mobile como plataforma de
desarrollo. Los argumentos son los que clásicamente se atribuyen a cualquier producto
Microsoft: compatibilidad, facilidad de uso, integración con los sistemas Windows para PC,
gracias a una interfaz similar y la garantía de marca que supone Microsoft.
Windows Mobile
Windows Mobile, antes conocido como Windows CE o Pocket PC, tiene una larga historia
como segundo en el campo de los PDA u ordenadores de bolsillo, sin embargo, hace poco
tiempo superó por primera vez al hasta entonces líder, Palm OS.
(3G). Tras unos años de escasa implantación, Windows Mobile 5 ha logrado atraer a
fabricantes como Qtek, Samsung, Nec o la propia Palm, que lo incorpora en sus teléfonos
Treo.
Una de las ventajas de Windows Mobile sobre sus competidores, es que los programadores
pueden desarrollar aplicaciones para móviles, utilizando los mismos lenguajes y entornos
que emplean con Windows para PC. En comparación con las aplicaciones para Symbian,
que necesitan más esfuerzo de desarrollo, aunque también están más optimizadas para
cada modelo de teléfono.
Lentamente, la compañía ha tenido que ir “convenciendo” a los fabricantes sobre las virtudes
de su sistema operativo sobre los ya estandarizados Symbian o Palm OS, y así ha
conseguido una importante cuota de mercado hoy en día. De este modo, Windows Mobile
está integrado hoy en más de 150 dispositivos de comunicación móvil y su plataforma es la
segunda más extendida en Europa.
Lo que Microsoft desarrolla con Windows Mobile 6, la última versión de su sistema operativo
móvil, son nuevas características y herramientas en una plataforma que asegura flexibilidad,
productividad y usabilidad. Esto se materializa en dispositivos que utilizan una interfaz que
es similar al Windows de una PC convencional, pero todo diseñado a medida de los
terminales. Las piezas fundamentales del sistema, son su compatibilidad con los estándares
en cuanto a correos electrónicos, HTML, la suite Office y la gestión de la seguridad. Integra
una interfaz del programa Outlook, que ahora soporta formato HTML y que permite a los
usuarios disfrutar de la administración de los mensajes. En este sentido, además, el
desarrollo de la plataforma Windows Live se ha enriquecido y optimizado, combinando
servicios on-line como Messenger Live y Search. Además, en el campo de la informática
administrativa, la total compatibilidad de esta plataforma móvil con la suite Office, es un valor
que muchos usuarios hacen prevalecer sobre otras características. Acceder al visualizado o
a la edición de archivos de Word, Excel y PowerPoint, que se han elaborado en el ordenador
es una característica necesaria y muy valorada, al permitir la continuidad del trabajo fuera de
Palm OS
Palm OS nació en 1996 de la mano de la primera máquina Palm Pilot. La versión del sistema
operativo de Palm que más se está empleando hoy día es Palm OS 5, cuya versión más
actualizada es conocida como Garnet y, entre otras mejoras, soporta un mayor rango de
resoluciones de pantalla y bluetooth.
En el 2004 se presentó Palm OS 6.1, también denominada Cobalt, un sistema operativo de
32 bits completamente nativo ARM.
El interfaz no cambia mucho, pero Cobalt, entre otras cosas, saca mayor partido a los
procesadores portátiles ARM (más rápidos y eficientes), integra mayores prestaciones
multimedia, es más multitarea, incluye un nuevo sistema de protección que impide que un
único programa pueda cargar toda la información, permite pasar sin problemas de Wi-Fi a
GPRS, ver archivos en su formato nativo (por ejemplo de Microsoft Office). No obstante, su
principal novedad es que el sistema funciona sobre Linux, el sistema operativo de software
libre.
¿Qué fue de PALM OS?
El futuro del sistema operativo que incluyen la mayor parte de las PDA de Palm, actualmente
en el mercado, es hoy en día incierto. Convertido en el auténtico líder del mercado desde su
aparición en 1996, su supremacía comenzó a ceder con la llegada del nuevo siglo, hasta que
en 2003 el fabricante se vio en la necesidad de dividirse, y la plataforma pasó a formar parte
de una nueva empresa denominada PalmSource que, en 2005, fue adquirida por la
compañía japonesa Access.
Los motivos de este retroceso en cuanto a ingresos de la compañía (que no en presencia, ya
que la plataforma sigue siendo una de las que mayor cuota de mercado tiene) son fáciles de
imaginar. La lenta, pero imparable penetración de Windows Mobile, la evolución de decenas
que no incorporaban telefonía móvil. La reacción de Palm con los modelos Treo, convertidos
hoy en los principales dispositivos de la compañía, ha sido fundamental para que la empresa
haya continuado compitiendo, entre los grandes fabricantes de dispositivos portátiles.
Esta plataforma, lógicamente, ha evolucionado desde la clásica interfaz de un asistente de
mano, a incorporar todo tipo de programas y funcionalidades, como teléfono, correo
electrónico, mensajería y navegación en internet, además de compatibilidad con los archivos
de Office, música, vídeo y fotografías. En la actualidad existen dispositivos Palm Treo, que
incorporan el sistema operativo Windows Mobile.
El sistema operativo Palm OS, hoy propiedad de Access, parece que se encamina a su
plena operatividad en Linux, lo que le augura un futuro prometedor.
Según PalmOne, hay más de 13.000 programas disponibles para su sistema operativo,
muchos más que para Windows Mobile. Es posible que el dato sea cierto, teniendo en
cuenta la antigüedad de Palm OS, pero a la hora de la verdad, no suele haber problema
alguno para encontrar programas que hagan lo mismo en ambas plataformas. Las dos son lo
bastante importantes y llevan el suficiente tiempo en el mercado, como para contar con una
nutrida variedad de programas de todo tipo.
Sin duda, cuando se trata de interactuar con computadoras de sobremesa con alguna
versión de Windows instalado, y con programas de esta compañía como la suite de Office,
Windows Mobile tiene ventaja. No obstante, esto no quiere decir que Palm OS no sea
perfectamente compatible con Windows. Por otro lado, únicamente Palm OS es compatible
de entrada con sistemas Macintosh.
Tanto Palm OS como Windows Mobile, traen incluidas las aplicaciones habituales: libreta de
direcciones, agenda, notas, tareas, opciones de seguridad, posibilidad de ajustar
preferencia, entre otras, Palm emplea el cliente de sincronización HotSync y Microsoft
Linux
En los círculos del software libre, se toma en cuenta la idea de implantar Linux en el teléfono
móvil desde hace años, pero ha tardado en llegar. Aún así, en los últimos tiempos se ha
avanzado mucho, y ya hay varios modelos de móvil en el mercado que utilizan una versión
de Linux como su sistema operativo.
Con Linux no hay que pagar licencias, y esto ha atraído a fabricantes de China, Taiwán o
Singapur; aunque no son los únicos. Motorola presentó su primer teléfono basado en Linux
2003, y desde entonces no ha dejado de ofrecer nuevos modelos con este sistema operativo
incorporado. Otros fabricantes conocidos, como NEC, Panasonic o Samsung, disponen de
numerosos teléfonos Linux.
Además, el fabricante de PDA Palm se ha separado de la división encargada del sistema
operativo Palm OS. La nueva versión está a cargo de la empresa japonesa Access y estará
basada en Linux.
Java
Con las siglas J2ME se conoce a Java Micro Edition, como la versión del lenguaje de
programación Java para dispositivos móviles. Aunque es un lenguaje, y no un sistema
operativo, la mayoría de los nuevos móviles pueden ejecutar aplicaciones escritas en Java, y
muchos videojuegos se crean de este modo.
También hay sistemas operativos escritos en Java, como el sistema de RIM, que funciona en
los teléfonos inteligentes Blackberry. La ventaja de Java es que la programación es similar al
famoso lenguaje C, pero más sencilla, con lo que los programadores se pueden familiarizar
rápidamente.
Las aplicaciones desarrolladas en Java se pueden ejecutar en cualquier tipo de dispositivo y
de interpretar las instrucciones. Existen chips que puede ejecutar Java directamente, sin
necesidad de un sistema operativo, y no se descarta su uso en teléfonos móviles.
1.2.2 Características de un Dispositivo móvil
actual
Categorías de dispositivos móviles
Dado el variado número de niveles de funcionalidad asociado con dispositivos móviles, en el
2005, T38 y DuPont Global Mobility Innovation Team, propusieron los siguientes estándares
para la definición de dispositivos móviles:
Dispositivo Móvil de Datos Limitados (Limited Data Mobile Device): dispositivos que tienen una pantalla pequeña, principalmente basada en pantalla de tipo texto
con servicios de datos generalmente limitados a SMS y acceso WAP. Un típico
ejemplo de este tipo de dispositivos son los teléfonos móviles.
Dispositivo Móvil de Datos Básicos (Basic Data Mobile Device): dispositivos que tienen una pantalla de mediano tamaño, (entre 120 x 120 y 240 x 240 pixeles), menú
o navegación basada en íconos por medio de una "rueda" o cursor, y que ofrecen
acceso a e-mails, lista de direcciones, SMS, y un navegador web básico. Un típico
ejemplo de este tipo de dispositivos son las BlackBerry y los Teléfonos Inteligentes.
Dispositivo Móvil de Datos Mejorados (Enhanced Data Mobile Device):
dispositivos que tienen pantallas de medianas a grandes (por encima de los 240 x
120 píxeles), navegación de tipo stylus, y que ofrecen las mismas características
que el "Dispositivo Móvil de Datos Básicos" (Basic Data Mobile Devices), más
aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word, Excel,
portales intranet, etc. Este tipo de dispositivos incluyen los Sistemas Operativos
como Windows Mobile 2006, como en las Pocket PCs.
1.2.3 Aplicaciones de un dispositivo móvil
Una aplicación, es un tipo de programa informático diseñado para facilitar al usuario la
realización de un determinado tipo de trabajo. Esto lo diferencia principalmente de otros tipos
de programas como los sistemas operativos (que hacen funcionar al ordenador), las
utilidades (que realiza tareas de mantenimiento o de uso general), y los lenguajes de
programación (con el cual se crean los programas informáticos), que realizan tareas más
avanzadas y no pertinentes al usuario común.
Suele resultar una solución informática para la automatización de ciertas tareas complicadas,
como pueden ser la contabilidad, la redacción de documentos, o la gestión de un almacén.
Algunos ejemplos de programas de aplicación, son los procesadores de textos, hojas de
cálculo, y base de datos.
Ciertas aplicaciones desarrolladas 'a medida' suelen ofrecer una gran potencia, ya que están
exclusivamente diseñadas para resolver un problema específico. Otros, llamados paquetes
integrados de software, ofrecen menos potencia pero a cambio incluyen varias aplicaciones,
Figura 1 Figuraa que muestra la ubicación y la relación de las aplicaciones con el usuario final.
La figura 1, muestra la ubicación y relación que tienen estas aplicaciones para con el usuario
final, y con otros programas informáticos existentes.
Otros ejemplos de programas de aplicación pueden ser: programas de comunicación de
datos, Multimedia, presentaciones, diseño gráfico, cálculo, finanzas, correo electrónico,
compresión de archivos, presupuestario de obras, gestión de empresas, entre otros.
Libreta de Direcciones
El programa Libreta de Direcciones del Palm almacena información personal, en cualquiera
de las categorías definidas por el usuario. Se muestran las entradas y salidas se ordenan por
los apellidos, y nombre (esto sólo se puede cambiar a Compañía, Apellidos). Hay cinco
campos para el teléfono o correo electrónico, cada uno de los que se puede designar a
Trabajo, a Casa, Fax u Otras, Correo Electrónico, Principal, Buscapersonas o Móvil (los
nombres de los campos no se pueden cambiar).
Calculadora
La Calculadora convierte el ordenador de bolsillo en una calculadora estándar de 4
funciones, con botones de tres tonos morados y azules, que contrastan con los dos botones
También tiene una opción para mostrar un historial de los cálculos realizados, como muchas
calculadoras que se usaban antes.
Calendario
El Calendario muestra un horario diario o semanal, o una vista mensual simple(los nuevos
tiene una vista mensual más elegante). El horario diario tiene una línea cada hora, entre dos
horas del día que el usuario puede elegir. Al hacer clic en una línea vacía, se crea una cita
nueva. Las líneas vacías se llenan con las citas correspondientes, y la hora en que
empiezan, y su duración se muestra en el margen de la izquierda.
El sistema operativo puede anunciar una cita con una alarma, en el momento indicado,
minutos, horas o días antes. Estas alarmas suenan incluso cuando la unidad está apagada.
Las citas se pueden repetir en un número especificado de días, semanas, meses o años y
pueden contener notas.
Gastos
La aplicación Gastos permite a un usuario seguir los gastos comerciales habituales. El
ordenador de bolsillo no realiza ningún cálculo para obtener el total. El usuario tiene que
sincronizar con un ordenador de escritorio, y ver los datos de los gastos en una hoja de
cálculo, en las que se incluyen las plantillas para Microsoft Excel. Debido a esta desventaja,
muchos usuarios consideran esta aplicación poco útil.
Libreta de Notas
Las Notas de Texto permiten escribir notas de hasta 4000 caracteres, clasificadas en
categorías configurables por el usuario. Las notas se pueden ordenar alfabéticamente o
manualmente (que permiten al usuario escoger el orden de las notas). Las Notas de Texto
sólo pueden incluir texto, no dibujos. Por esto, el texto en las Notas se ha de introducir
Notas
En las Notas se pueden hacer dibujos y notas manuscritas. Se pueden ingresar hasta 10
palabras por página, y limitan el escrito a ciertos bytes, si la escritura es pulcra. De lo
contrario, es mejor poner texto en la Libreta de Notas. Hay tres medidas de lápices de dibujo,
más una goma de borrar. Es posible dibujar un mapa muy simple.
Tareas
También denominada lista de tareas. Es el lugar adecuado por crear recordatorios
personales y priorizar las cosas que tienes que hacer. Cada elemento de la lista de tareas
también puede tener: una prioridad, categorías (por organizar y agrupar las tareas en grupos
lógicos), adjuntar una Nota (por añadir una descripción o una aclaración de la tarea). Las
tareas se pueden ordenar por: fecha, prioridad o categoría.
1.2.4 Aplicaciones Windows Mobile con
tecnología .NET
La plataforma .NET Framework, proporciona la infraestructura básica que necesitan las
aplicaciones Windows, para hacer realidad la visión de Microsoft que conecta información,
personas, sistemas y dispositivos.
El Framework .NET consta de:
El Common Language Runtime (CLR). Es un lenguaje neutral de desarrollo y ejecución que proporciona servicios para ayudar a "gestionar" la ejecución de la
aplicación.
Para hacer realidad la visión de Microsoft, .NET Framework proporciona una estructura
integral:
Soporta los protocolos y especificaciones de comunicación Standard. Usa los protocolos y especificaciones estándar de Internet, como TCP/IP, SOAP, XML y
HTTP, para permitir la conexión a un amplio número de información, personas,
sistemas y dispositivos (ver figura 2).
Figura 2 Esquema de red que muestra la conexión con un amplio número de personas
Soporta diferentes lenguajes de programación. Soporta una variedad de diferentes lenguajes de programación, de manera que los desarrolladores pueden
programar en el lenguaje que prefieran.
Soporta la programación con librerías desarrolladas en diferentes lenguajes.
La plataforma .NET proporciona un modelo consistente de programación, para
utilizar piezas de funcionalidad ya desarrolladas o bibliotecas (para mayor
información de estas bibliotecas ver anexos), que hacen que el desarrollo de
aplicaciones sea más rápido, más fácil y menos costoso.
Soporte para diferentes plataformas. El Framework .NET está disponible para toda la variedad de las plataformas Windows, lo que permite a las personas, los
dispositivo, como una PDA o un Smartphone con Windows Mobile, puede
conectarse a servidores que utilicen Windows Server 2003, o incluso Linux.
1.3 Pocket PC
Pocket PC es un ordenador de bolsillo, también llamado PDA (Personal Digital Assistant). Se
trata de un pequeño ordenador, diseñado para ocupar el mínimo espacio y ser fácilmente
transportable, ejecuta el sistema operativo que es Windows CE de Microsoft, el cual le
proporciona capacidades similares a los PCs de sobremesa.
De acuerdo con Microsoft, el Pocket PC es "un dispositivo de mano que permite grabar,
enviar y recibir e-mail, contactos, citas, mostrar archivos multimedia, juegos, intercambiar
mensajes de texto con MSN Messenger, navegar por la web y más".
Desde un punto de vista técnico, Pocket PC es un estándar de Microsoft que impone varios
requisitos al hardware y al software de dispositivos móviles, para tener la etiqueta de Pocket
PC.
Actualmente hay muy pocos fabricantes, y se concentran la gran mayoría en el continente
asiático. Entre ellos, el más importante y que recientemente se convirtió en distribuidor, es
HTC, antiguo proveedor de HP, Acer o Fujitsu entre otros. Otros fabricantes de dispositivos
Pocket PC son Quanta, Foxcon, Inventec, Asus o Compal, concentrados todos ellos en
Taiwan y dedicados también a la fabricación de otros equipos electrónicos, como portátiles o
dispositivos GPS.
Sin embrago, hay bastantes distribuidores, entre las que se encuentran a HP, Fujitsu
Siemens, Garmin, Acer, Casio y un largo etcétera, que encargan a los fabricantes antes
mencionados, el diseño de sus equipos, y a los que sólo les ponen su marca y se encargan
1.3.1 Características de PocketPC
Los PDAs ofrecen, casi las mismas prestaciones que los PCs de sobremesa, con un
aliciente añadido: su total movilidad. Los últimos avances tecnológicos y las posibilidades de
desarrollo de soluciones a medida que ofrece Microsoft Pocket PC avalan sus ventajas.
Gran Capacidad de Procesamiento y Memoria
Enorme Integración Multimedia
Gran Compatibilidad con Ordenadores de Mesa (Word, Excel, MSN Messenger,
Windows Media Player)
Facilidad de Sincronización con PC (ActiveSync)
Mayor potencia y prestaciones
Dos factores han sido decisivos para el auge de estas soluciones: su abaratamiento y la
mayor calidad tecnológica de la última generación de PDAs. Muy lejos quedan los tiempos,
en los que consistían en meras agendas electrónicas. Los modelos actuales se han
convertido en verdaderos ordenadores de bolsillo: su velocidad de proceso es considerable,
están provistos de una amplia memoria, cómodas pantallas en color y versiones en miniatura
de los programas para PC de Microsoft (Pocket Outlook, Pocket Word, Pocket Excel,
Explorer, entre otros). Proporciona al usuario un soporte integral, ofreciéndole una extensión
de su ordenador, permitiéndole realizar numerosas tareas en tiempo real. Permite realizar
llamadas de voz y navegar por Internet a través de GSM o GPRS.
Una plataforma muy flexible
El otro movilizador de esta revolución móvil es Microsoft Pocket PC, un sistema operativo
que posibilita el desarrollo de soluciones a medida para los PDAs. “Microsoft ha creado una
plataforma fácilmente maleable y dotada de grandes herramientas para los desarrolladores,
lo que le ha permitido hacerse ya con un gran porcentaje de este mercado, y crear
Pero, sobre todo, los nuevos dispositivos reportan importantes ventajas empresariales. “Por
su propia movilidad, permiten aprovechar el tiempo al máximo”. Por ejemplo, la premura con
que en el almacén reciben la notificación de un pedido se traduce en una respuesta más
rápida y, por lo tanto, en una mejora del servicio.
Otro gran beneficio es la reducción de costos, en comparación con los que implicaría
ejecutar las mismas tareas en un entorno estático.
1.3.3 Funciones básicas
Hay diferencias entre los equipos que se pueden denominar Pocket PC, dependiendo de las
utilidades que tienen, se pueden englobar en tres grupos:
1º- Las Pocket PCs (comúnmente conocidos como PDA sin teléfono) incluyen versiones móviles de las aplicaciones de Office, además de Microsoft Outlook Mobile. Con el Pocket
PC, podrá utilizar Word Mobile, Excel Mobile y PowerPoint Mobile y navegar por Internet, si
tiene un dispositivo con Wi-Fi y se encuentra en un punto de conexión inalámbrica. Puede
escribir correos electrónicos y enviarlos con tan solo sincronizar su ordenador, o mediante
conexión inalámbrica cuando se encuentra en un punto de conexión.
2º- Los Pocket PC Phone (comúnmente conocidos como Pocket PC o PPC) puede hacer todo lo que hace con un Pocket PC, pero además dispone de teléfono móvil. Si tiene
un Pocket PC Phone, puede acceder a Internet, a través de una conexión inalámbrica
(GPRS, UMTS, etc...); no tendrá que buscar un punto en el que la haya. Tenga en cuenta
que al acceder a Internet, los proveedores de tecnología inalámbrica le impondrán cargos
económicos.
3º- Los Smartphone ofrece lo mismo que un teléfono y además, incluye una serie de aplicaciones más pequeñas. Además de agregar software de terceros a su Smartphone, su
teclado y pantalla pequeños, se han creado, pensados para darle acceso rápido de primera
avanzados, que tienen que consultar el correo electrónico, hacer un seguimiento de su
calendario y tomar notas de voz, pero que no necesitan las funciones de Word Mobile, Excel
Mobile y PowerPoint Mobile. Si después de haber adquirido el dispositivo, descubre que
quiere más funciones, hay una serie de nombres de software de terceros, pensados para
CAPÍTULO II
Planteamiento del Problema y
Herramientas de Software
2.1 Planteamiento del problema
Regularmente cuando se piensa en el desarrollo y creación de software, se pueden
presentar varias preguntas, ¿Qué software existe actualmente? ¿Qué se necesita ahora?
O también puede existir la posibilidad de basarse en un software o aplicación ya
elaborada, pensando en las mejoras que se podrían hacer y que se puedan agregar. Es
importante pensar en las aplicaciones o compiladores que, como programadores,
convenga utilizar, así como verificar la compatibilidad con el dispositivo en el cual se
desarrollará el software.
De esta manera, se enfocará este estudio, a la realización de una aplicación de diseño y
desarrollo de herramientas básicas de ingeniería en comunicaciones y electrónica para
Pocket PC. Por lo que se estudiarán las herramientas que se utilizarán para la realización
de ésta aplicación. Las materias de tronco común a tomar en cuenta, así como las
herramientas básicas a desarrollar, para la resolución de problemas sencillos enfocados
a cada una de las materias propuestas. Tomar en cuenta el software y la plataforma de
2.2 Tecnología .NET.
La Tecnología .NET es un proyecto de Microsoft para crear una nueva plataforma de desarrollo de software, con énfasis en transparencia de redes, con independencia de la
plataforma de hardware y que permita un rápido desarrollo de aplicaciones. Basado en
ella, la empresa intenta desarrollar una estrategia horizontal que integre todos sus
productos, desde el sistema operativo hasta las herramientas de mercado.
La Tecnología .NET podría considerarse una respuesta de Microsoft al creciente mercado de los negocios en entornos Web, como competencia a la plataforma Java de
Sun Microsystems, y a los diversos Framework de desarrollo Web, basados en PHP. Su
propuesta es ofrecer una manera rápida y económica, a la vez que es segura y robusta,
para el desarrollo de aplicaciones –o como la misma plataforma las denomina,
soluciones– permitiendo una integración más rápida y ágil entre empresas, y un acceso
más simple y universal, a todo tipo de información desde cualquier tipo de dispositivo.
La Plataforma .NET de Microsoft es un componente de software, que puede ser añadido al sistema operativo Windows. Provee un extenso conjunto de soluciones predefinidas,
para necesidades generales de la programación de aplicaciones, y administra la
ejecución de los programas escritos, específicamente con la plataforma. Esta solución es
el producto principal en la oferta de Microsoft, y pretende ser utilizada por la mayoría de
las aplicaciones creadas para la plataforma Windows.
La Tecnología .NET Framework se incluye en Windows Server 2008 y Windows Vista. De igual manera, la versión actual de dicho componente, puede ser instalada en
Windows XP, y en la familia de sistemas operativos Windows Server 2003. Una versión
"reducida" de .NET Framework, está disponible para la plataforma Windows Mobile, incluyendo teléfonos inteligentes.
Microsoft proporciona, una versión limitada del .NET Framework para utilizarla en
El Compact Framework 3.5 de .NET o .NETCF 3.5 es una versión actualizada que puede
ser instalada en los diferentes dispositivos móviles que cuenten con una versión anterior
soportada por Compact Framework de (ver figura 3).
Figura 3 comparación de las plataformas soportadas por el .NET Compact Framework 3.5 Por Eduardo Ortega de Movilidad en Microsoft
2.2.1 Versiones de multiplataforma de .NET Framework
La compatibilidad multilenguaje y la integración son objetivos de diseño básicos del CLR
(Common Languaje Runtime) y son críticos para promocionar la adopción de la
plataforma .NET en todas las áreas de la comunidad de desarrollo. La fortaleza del
soporte de lenguaje .NET, es que los componentes desarrollados en cualquier lenguaje,
se pueden utilizar en otro; por ejemplo, una aplicación C++ gestionada puede utilizar una
biblioteca C#. El requisito es que los componentes se ajusten al CLS (Common languaje
Specification); por lo tanto, también es posible desarrollar componentes en un lenguaje
.NET que no se puedan utilizar en otro.
Cuando un archivo de código fuente C# (o un archivo de de código fuente de cualquier
MSIL (Microsoft intermédiate Languaje). MSIL es una representación intermedia y se ha de compilar a instrucciones nativas para poder ejecutarlo; esta tarea se delega al entorno
de ejecución del lenguaje común, que se trata a continuación.
Entorno de ejecución del lenguaje común
El entorno de ejecución del lenguaje común CLR (Common Languaje Runtime) es responsable de la ejecución del código y de proporcionar servicios básicos como la
gestión de memoria automática, subprocesos, seguridad e integración con el sistema
operativo subyacente.
Antes de que se pueda ejecutar el MSIL, se ha de traducir a código nativo, el cual es específico para una CPU concreta. Este proceso se llama compilación inmediata
(Just-In-Time, JIT) y es una característica básica del CLR.
La fuerte integración entre el sistema operativo Windows y el formato de la aplicación
.NET significa que el CLR se invoca automáticamente cuando se arranca una aplicación
.NET.
El sistema de tipos común
El CTS (Common Type System) define como se declaran los tipos, cómo se utilizan y cómo se gestionan en tiempo de ejecución. El CTS es una parte importante del soporte multilenguaje de .NET y proporciona la base para que los tipos escritos en un lenguaje se
puedan utilizar en otros.
Las bibliotecas de clases básicas
El .NET Framework incluye un conjunto de bibliotecas que puede utilizar y extender un
programador durante el proceso de desarrollo. Todos los tipos contenidos en las
bibliotecas de clases cumplen el CLS y se pueden utilizar desde cualquier lenguaje que
Lenguajes
La compatibilidad multilenguaje y la integración son objetivos de diseño básicos del CLR
y son críticos para promocionar la adopción de la plataforma .NET en todas las áreas de
la comunidad de desarrollo. La fortaleza del soporte de lenguaje .NET es que los
componentes desarrollados en cualquier lenguaje se pueden utilizar en otro; por ejemplo,
una aplicación C++ gestionada puede utilizar una biblioteca C#.
Microsoft proporciona tres lenguajes como parte de .NET: Visual Basic .NET, Microsoft
Visual C++ .NET y Microsoft Visual C#.
2.2.2 Características de Visual C# .NET
Al combinar Visual Studio y .NET Framework, se reduce la necesidad de código de
programación común irrelevante, lo que acorta el tiempo de desarrollo y permite que los
desarrolladores, se concentren en la solución de los problemas.
Los diseñadores del lenguaje C# y el .NET Framework han estado claramente influidos
por java, C y C++ pero han tomado una aproximación fundamentalmente distinta para
resolver los conflictos del diseño seguro. Se ha llevado a cabo un gran esfuerzo para
garantizar que el desarrollador puede escribir código seguro y robusto fácilmente, pero
las características que se consideran peligrosas todavía están disponibles para el
programador avanzado o el programador de sistemas heredados que puede indicar de
forma explícita la necesidad de salirse de las limitaciones del código seguro.
Aunque la plataforma .NET acaba de ser presentada, las comparaciones entre Java y C#
son naturales ya que tienen muchas similitudes. Generalmente las comparaciones
tienden a enfocarse únicamente en las similitudes estructurales y sintácticas obvias,
mientras que una exploración a un nivel más profundo revela diferencias fundamentales y
una cantidad importante de características nuevas que están disponibles para el
2.3 Windows Mobile
Windows Mobile es un sistema operativo compacto, con una suite de aplicaciones
básicas para dispositivos móviles basados en la API Win32 de Microsoft. Los dispositivos
que llevan Windows Mobile, son Pocket PC's, Smartphones y Media Center portátil. Ha
sido diseñado para ser similar a las versiones de escritorio de Windows (ver figura 4).
Figura 4 vista de sistema Windows Mobile 6.0 en Smartphone
Básicamente se originó en una versión del Kernel de Windows para sistemas embebidos, que fue creciendo hasta ser un sistema operativo.
2.3.1 Características de Windows Mobile y algunas aplicaciones incluidas
Tanto Windows Mobile para Pocket PC, como Windows Mobile para Smartphone, poseen
bastantes aspectos parecidos, pero en cuanto a aplicaciones desarrolladas, una
aplicación no servirá para ambas versiones Windows Mobile PPC (Pocket PC) y Windows
Figura 5 Fotografía de un Smartphone, marca Nokia. En el se muestra la interfaz en su pantalla
En el caso de Windows Mobile para Pocket PC se muestran las siguientes
características:
En la barra de tareas muestra: la hora actual, el volumen y el estado de la
conectividad. Cuando un programa o un mensaje están abiertos, el espacio en
blanco, en el que estaba el reloj, se convierte en una "OK" o un icono de cerrar (x).
La característica principal de la barra de tareas, es el botón de Inicio, que está
diseñado para que sea parecido al botón de Inicio de las versiones de escritorio de
Windows. El menú de Inicio ofrece programas abiertos recientemente, nueve
entradas del menú personalizadas, y accesos directos a programas, ajustes,
búsquedas, y ayuda.
Las versiones Pocket PC incluyen en Windows Mobile aplicaciones de Microsoft
Office. Éstos incluyen Pocket Word y Pocket Excel. En Windows Mobile 5.0 se
incluye Pocket PowerPoint. Estas versiones incluyen muchas de las características
que se utilizan en versiones de escritorio, pero algunas otras características, como la
inserción de las tablas e imágenes, no se han incluido versiones anteriores a
Windows 5.0. ActiveSync tiene la capacidad de convertir archivos de versiones de
Figura 6 Muestra de un Pocket PC, IPACmarca HP
Outlook Mobile es también un programa que viene con Windows Mobile. Esto incluye
tareas, calendario, contactos, y la bandeja de entrada. Microsoft Outlook para las
versiones de escritorio, se incluye a veces en los CD-ROM's del fabricante del Pocket
PC.
Windows Media Player para Windows Mobile, se añade con el software. Actualmente,
todas las Pocket PC incluyen la versión 9 del reproductor, pero la versión 10 se ha
incluido con un hardware más nuevo, y con las nuevas versiones de Windows
Mobile. Para algunos dispositivos, la versión 10 está disponible para su descarga,
sólo para determinados dispositivos éstos incluyen los dispositivos de la gama de
Dell Axim. Windows Media Player reproduce: WMA, WMV , MP3, y AVI. Los archivos
MPEG actualmente no están soportados, y se debe descargar un programa de
terceros para reproducirlos, y los archivos de WAV se reproducen en un reproductor
por separado. Algunas versiones son también capaces de reproducir M4A.
Windows Mobile Device Center trabaja con dispositivos Windows Mobile 2003 o superiores, y permite gestionar las aplicaciones, opciones de calendario, correos, citas,
tareas y archivos de nuestra PDA, a través del PC.
Entre las novedades que se añaden al nuevo Windows Mobile Device Center, se muestra
una nueva interfaz de usuario, ostensiblemente mejorada con respecto a ActiveSync,
Figura 7 Interfaz de Windows Mobile Device Center
Chess Mobile es un juego de ajedrez de cuidadoso diseño para Windows Mobile, que lleva impreso el sello de calidad de los productos de Orneta, y que puede servir de
entretenimiento en esos ratos muertos, en el que no se tiene más compañía que una
PDA.
Figura 8 Interfaz del la aplicación Chess Mobile por Microsoft corporativo
Para cargar cualquier video que se tenga almacenado en la memoria de la PDA o en la
tarjeta de memoria, sólo se tiene que actualizar el listado de la pantalla principal del
programa. Una vez que se haya copiado el video en el dispositivo, DivX Mobile Player lo reconocerá automáticamente y se puede comenzar su reproducción (ver figura 9).
Figura 9 Pantalla de la aplicación DIVX
2.4 Visual Studio
Microsoft Visual Studio es un entorno de desarrollo integrado (IDE, por sus siglas en inglés) para sistemas Windows. Soporta varios lenguajes de programación, tales como
Visual C++, Visual C#, Visual J#, ASP.NET y Visual Basic .NET, aunque actualmente se
han desarrollado las extensiones necesarias para muchos otros.
Visual Studio permite a los desarrolladores crear aplicaciones, sitios y aplicaciones web,
en cualquier entorno que soporte la plataforma .NET (a partir de la versión net 2002). Así
se pueden crear aplicaciones que se intercomuniquen entre estaciones de trabajo,
páginas web y dispositivos móviles.
A las mejoras de desempeño, escalabilidad y seguridad con respecto a la versión
anterior, se agregan entre otras, las siguientes novedades.
(Incluido con Visual Studio 2005), 3.0 (incluido en Windows Vista) y 3.5 (incluido
con Visual Studio 2008).
• .NET 3.5 incluye biblioteca ASP.NET AJAX para desarrollar aplicaciones web más eficientes, interactivas y altamente personalizadas, que funcionen para
todos los navegadores más populares, y utilicen las últimas tecnologías y
herramientas Web, incluyendo Silverlight y Popfly
A partir de la versión 2005 Microsoft ofrece gratuitamente las Express Editions. Estas son
varias ediciones básicas separadas por lenguajes de programación o plataforma,
enfocadas para novatos y entusiastas. Estas ediciones son iguales al entorno de
desarrollo comercial, pero sin características avanzadas. Las ediciones que hay son:
Visual Basic Express Edition
Visual C# Express Edition
Visual C++ Express Edition
Visual J# Express Edition (Desapareció en Visual Studio 2008)
Visual Web Developer Express Edition (para programar en ASP.NET)
2.4.1 Versiones
Microsoft Visual Studio 5
Microsoft Visual Studio 6
Microsoft Visual Studio .NET (2002)
Microsoft Visual Studio .NET 2003
Microsoft Visual Studio 2005
Microsoft Visual Studio 2008
Estas son varias ediciones básicas separadas por lenguajes de programación o
plataforma. Estas ediciones son iguales al entorno de desarrollo comercial, pero sin
características avanzadas. Las ediciones que hay son:
Visual Basic Express Edition