Está en la página 1de 18

Arquitectura Windows pone

Arquitectura de sistemas

Jorge Eider Vasquez Urrutia 625082

Universidad Cat !ica de Co!om"ia #ogot$ %&C&

E! '5 de (e"rero de 20'0) durante e! *o"i!e Wor!d Congress ce!e"rado en #arce!ona) *icroso+t present a! mundo su nuevo sistema operativo para smartp,ones- Windows .,one /& 0u desarro!!o comenz en 2008 tras !a reorganizaci n de! equipo de Windows *o"i!e 1 !a cance!aci n de! pro1ecto 2.,oton3) !a versi n de! sistema en !a que *icroso+t tra"a4a"a desde 2005 con pocos resu!tados& 6rigina!mente se p!ante su sa!ida a! mercado en 2007) pero una serie de retrasos o"!igaron a preparar una versi n de transici n de Windows *o"i!e 8W* 6&59 1 retrasar e! !anzamiento de Windows .,one / ,asta 6ctu"re de 20'0 en Europa) :oviem"re de 20'0 en U0A 1 20'' para Asia& Una de sus m$s ac!amadas novedades es !a inter+ace de usuario) denominada 2*etro3) "asada en unos simp!es pero e+ectivos mosaicos din$micos que muestran in+ormaci n ;ti! a! usuario& <am"i=n se estrena un nuevo concepto !!amado >U#) un !ugar donde centra!izar acciones 1 agrupar ap!icaciones por !a actividad a !a que se destinan) as?) podemos encontrar e! >U# de @m$genes) Aune) 6++ice o B"oC Dive) cada uno de !os cua!es nos dar$ acceso a tareas espec?+icas como m;sica) documentos o 4uegos& Un aEo despu=s de su presentaci n) de nuevo en e! marco de! *o"i!e Wor!d Congress) Windows .,one /) con apenas unos meses de vida) presenta importantes novedades) a su primera actua!izaci n en *arzo de 20'') que inc!u1e me4oras en e! rendimiento genera! as? como !a inc!usi n de copiar 1 pegar) se une una nueva actua!izaci n) !!amada 2*ango3 que inc!uir$ e! motor de @nternet ECp!orer 7) con su soporte para ><*D5) *u!titarea en ap!icaciones de terceros e integraci n con B"oC F60 1 Ginect& En *a1o de 20'' *icroso+t a puesto a disposici n de !os desarro!!adores !a primera versi n "eta de !as nuevas ,erramientas de desarro!!o de !a versi n 2*ango3 de Windows .,one&

Arquitectura de Windows Phone.


Uno de !os grandes pro"!emas a !os que *icroso+t de"i ,acer +rente en !a =poca Windows *o"i!e +ue !a +ragmentaci n de ,ardware 1 so+tware eCistente en ecosistema) aprendiendo de sus errores) en Windows .,one nos encontraremos mode!o de ,ardware 1 so+tware c!aro 1 conciso que a1udar$ a evitar !a repetici n esta situaci n& de e! un de

Modelo de Hardware
>asta !a !!egada de Windows .,one a! mercado pod?amos encontrar 2 mode!os) o p!anteamientos) distintos a nive! de ,ardware en !os principa!es competidores de! segmento de !os smartp,ones Modelo Iphone: (=rreo contro! so"re e! ,ardware) siendo App!e !a encargada de diseEar tanto e! sistema i60 como e! dispositivo donde se e4ecuta& Como principa!

venta4a de este mode!o encontramos !a adaptaci n tota! de! sistema operativo a! dispositivo) puesto que am"os ,an sido conce"idos como partes de un todo 1 podemos estar seguros de o+recer !a misma eCperiencia de uso para todos !os consumidores& Como principa!es desventa4as tenemos e! coste de adquisici n) de"ido norma!mente a que adquirimos un dispositivo de gama a!ta) que no todo e! mundo puede o quiere permitirse) 1 !a nu!a variedad de dispositivos en e! mercado) so!o eCiste uno 1 no tenemos opciones de e!ecci n& Modelo Windows Mobile / Android: Como +a"ricantes de so+tware) primero *icroso+t con Windows *o"i!e 1 a,ora Hoog!e con Android) desarro!!an e! sistema operativo que cua!quier +a"ricante puede !icenciar e inc!uir en su dispositivo) sin unos requerimientos m?nimos de ,ardware ni !?mites en !a persona!izaci n de !a inter+ace de usuario& 0u principa! venta4a es !a cantidad) gracias a este mode!o e! mercado puede ser inundado con cientos de mode!os distintos 1 e! usuario tiene !i"ertad para e!egir entre termina!es de gama "a4a) media o a!ta& 0in em"argo este mode!o su+re de dos grandes pro"!emas) m$s que desventa4as) e! primero es !a a"isma! di+erencia de ,ardware entre un termina! de gama "a4a 1 uno de gama a!ta) !o que incide directamente en !a eCperiencia de usuario) siendo a!gunos termina!es imposi"!es de usar o no pudiendo actua!izar!os m$s a!!$ de una cierta versi n de! sistema& E! segundo gran pro"!ema es que) como desarro!!adores no podemos asegurar !a compati"i!idad de nuestra ap!icaci n con todos !os mode!os eCistentes 1 en a!gunos casos) de"emos crear distintas versiones para varios termina!es para poder asegurarnos una "ase de usuarios grande) !o que redunda directamente en !os costes de desarro!!o 1 actua!izaci n de !os productos que rea!izamos& IJu= mode!o sigue Windows .,oneK :inguno de !os dos) o m$s "ien podr?amos decir que !os dos) en *icroso+t 1a ten?an !a eCperiencia de Windows *o"i!e 1 !a +ragmentaci n e inconsistencia de! sistema a trav=s de distintos dispositivos) pero no quer?an atarse a un so!o dispositivo) as? encontraron e! camino intermedio Modelo Windows Phone: Como +a"ricante de! sistema) *icroso+t requiere que todo te!=+ono que desee e4ecutar Windows .,one disponga de unas caracter?sticas m?nimas) para asegurar !a consistencia de todos !os usuarios de! sistema) a partir de estas caracter?sticas !os +a"ricantes de so+tware son !i"res de amp!iar!as en a!gunos casos 1 est$n o"!igados a cump!ir!as con eCactitud en otros& En este mode!o) conseguimos aunar !as venta4as de! mode!o @.,one) todos !os usuarios o"tienen !a misma eCperiencia de uso 1 !os desarro!!adores sa"emos que nuestra ap!icaci n +uncionar$ de +orma id=ntica en todos !os dispositivos Windows .,one /) 1 !as de! mode!o Windows *o"i!e L Android) no estamos encerrados en un so!o ,ardware) eCisten distintos dispositivos de varios +a"ricantes) todos con unas caracter?sticas m?nimas comunes pero con su+icientes di+erencias como para sentir que podemos escoger e! termina! que m$s se a4uste a nosotros& Con este mode!o en mente) *icroso+t creo unas especi+icaciones m?nimas inicia!es) !!amadas C,assis ') por !as que todo +a"ricante que desease crear termina!es para e! nuevo sistema de"e guiarse 8(igura '&'9&

Figura 1.1 Especificaciones Chassis 1

Ma se ,a anunciado que en e! +uturo aparecer$n !as especi+icaciones C,assis 2 1 C,assis F) que soportar$n otros tipos de te!=+onos 1 mantendr$n una re!aci n de unidad con e! C,assis ') compartiendo un m?nimo denominador com;n que permita o"tener !a misma eCperiencia de usuario independientemente de! dispositivo ,ardware que uti!icemos&

Modelo de Software
Windows .,one est$ "asado en Windows CE 6&0 NF) un sistema muc,o m$s moderno 1 avanzado que e! uti!izado en !os Windows *o"i!e 6&B 8Windows CE 5&29& Windows CE 6&0 supuso un rediseEo tota! de! sistema con respecto a su anterior versi n) por i!ustrar!o de una +orma simp!e- Windows CE 5&2 soporta"a F2 procesos en su Gerne!) mientras que Windows CE 6&0 soporta F2&/68& A,ora) !a 0,e!! 1 !a p!ata+orma de ap!icaciones residen en memoria de usuario mientras que e! Gerne!) !os drivers) e! sistema de arc,ivos) networOing) e! sistema de rendering 1 gr$+icos 1 e! sistema de actua!izaciones residen en e! espacio de Gerne!& Estamos ,a"!ando de un sistema de F2#its) con !o que so!o puede mane4ar 5H" de memoria- 2H" para procesos 1 2H" para e! Oerne!& En !a versi n NF de Windows CE 6&0 se aEadi soporte para 0i!ver!ig,t *o"i!e) @nternet ECp!orer Em"edded 1 otras tecno!og?as& Nesu!ta interesante resa!tar que esta versi n soporta (!as, Dite de +orma nativa en e! sistema) aunque esta tecno!og?a no se encuentre disponi"!e en Windows .,one /& 0o"re toda !a in+raestructura provista por Windows CE 6&0 NF se !evanta e! mode!o de so+tware de Windows .,one / 8(igura '&29) a! igua! que con e! ,ardware) *icroso+t ,a creado un mode!o conciso) pensado para +aci!itar e! uso de! dispositivo 1 aportar co,esi n a !a inter+ace de usuario&

Figura 1. Modelo de sof!ware en Windows Phone

Modelo de Aplicacin
En Windows .,one !as ap!icaciones se desp!iegan en +orma de paquete BA.) "$sicamente es un arc,ivo comprimido dentro de! cua! podemos encontrar !os ensam"!ados 1 recursos origina!es de nuestra ap!icaci n& Da ;nica +orma de insta!ar una ap!icaci n en Windows .,one es mediante !a tienda o+icia! de *icroso+t) E! *arOetp!ace) en !a cua! de"emos registrarnos como desarro!!adores para poder vender nuestras ap!icaciones& .ara garantizar !a seguridad de! sistema 1 evitar !a pirater?a) e! ma!ware o virus) a cada ap!icaci n se !e asigna un @% ;nico 1 un certi+icado de seguridad emitido cuando nuestra ap!icaci n es apro"ada en e! *arOetp!ace de Windows .,one& Este certi+icado puede insta!arse en modo demo) por !o que so!o con compro"ar e! modo de este certi+icado desde nuestra ap!icaci n podremos sa"er si nos encontramos en modo de prue"a o modo comp!eto 1 restringir o cam"iar !a +orma en que nuestra ap!icaci n se comporta) evitando e! desarro!!o de versiones 2!ite3 como en otras p!ata+ormas&

Modelo de UI
E! mode!o de inter+ace de usuario de Windows .,one se compone de e!ementos) p$ginas 1 sesiones& Un e!emento es todo contro! que se muestra a! usuario) una p$gina es una agrupaci n ! gica de e!ementos 1 una sesi n es e! con4unto de interacciones que rea!iza un usuario so"re nuestra ap!icaci n e inc!uso puede invo!ucrar a otras ap!icaciones& .or e4emp!o) podemos rea!izar una ap!icaci n que necesite de! usuario una +oto) tenemos un "ot n 8e!emento9 en nuestra p$gina que muestra e! >U# de im$genes 1 una vez que e! usuario ,a se!eccionado una) vue!ve a nuestra ap!icaci n 1 se muestra !a imagen escogida& Este con4unto de acciones se eng!o"a dentro de una sesi n&

Integracin con la nube


Windows .,one nace con una c!ara integraci n con !a nu"e& .or de+ecto tenemos integraci n con servicios como ECc,ange) Hoog!e *ai!) >otmai!) B"oC Dive) 0O1drive)

(ace"ooO o #ing& En !a versi n actua! de! Oit de desarro!!o no eCisten A.@s que permitan a nuestras ap!icaciones acceder a estos servicios directamente) pero se espera que aparezcan en pr Cimas actua!izaciones& Necientemente *icroso+t ,a !i"erado e! Windows .,one C!oud 0ervices 0%G) un Oit de desarro!!o que dotar$ de servicios en !a nu"e eCc!usivos para Windows .,one /) como reconocimiento 6CN) Voz a teCto 1 una serie de apis para intercomunicar dispositivos sin necesidad de tener una ip +i4a en e!!os&

Application runtime
>asta a,ora ,emos tenido una visi n genera! de !os mode!os de ,ardware 1 so+tware en !os que se "asa Windows .,one) en esta secci n eCaminaremos !a parte que m$s nos invo!ucra- e! App!ication Nuntime) donde 1 como se e4ecutar$n nuestras ap!icaciones) !as !imitaciones que encontraremos 1 !os +rameworOs que tenemos a nuestro a!cance para desarro!!ar& A continuaci n podemos ver un esquema de c mo est$ estructurado e! App!ication Nuntime de Windows .,one 8(igura '&F9

Figura 1."# Es$ue%a del applica!ion run!i%e de Windows Phone

En Windows .,one podemos encontrar dos +rameworOs c!aramente di+erenciados0i!ver!ig,t para Windows .,one 1 B:A para Windows .,one& &il'erligh! for Windows Phone es un +rameworO "asado en 0i!ver!ig,t que nos permitir$ crear ap!icaciones mu!timedia ricas que se e4ecuten de +orma nativa en Windows .,one) con una inter+ace creada en BA*D& ()A for Windows Phone a su vez se "asa en B:A para Windows) se trata de una so!uci n *u!tiscreen 8B"oC) Windows) Windows .,one9 2% 1 F% para crear 4uegos con ca!idad pro+esiona! en nuestro dispositivo& Estos +rameworOs se e4ecutan so"re un sand"oC de &:E< que !es +aci!ita e! acceso a! ,ardware) sensores) a!macenamiento) !oca!izaci n) etcP Esto quiere decir que nuestras ap!icaciones nunca tendr$n acceso nativo a! sistema 1 siempre se e4ecutar$n

ais!adas de! sistema 1 entre e!!as mismas) no pudiendo compartir espacio de a!macenamiento ni ning;n otro tipo de in+ormaci n a no ser que usemos servicios eCternos en !a nu"e para e!!o& Con !a nueva versi n de !as ,erramientas de desarro!!o para *ango 8Windows .,one /&59 se a"re !a posi"i!idad de tener ap!icaciones miCtas) que usen 0i!ver!ig,t para !a inter+ace de usuario 1 B:A para gr$+icos F%) creando una eCperiencia de usuario m$s rica 1 comp!eta&

Preparando nuestro entorno.


Una vez que ,emos conocido un poco !a arquitectura de ,ardware 1 so+tware genera! que podemos encontrar en Windows .,one es ,ora de comenzar a preparar nuestro entorno de desarro!!o) para e!!o vamos a dar un repaso a !as ,erramientas que *icroso+t pone a nuestra disposici n de +orma gratuita para poder crear ap!icaciones para !a p!ata+orma&

Descargando el SD
.ara comenzar a desarro!!ar ap!icaciones en Windows .,one necesitaremos descargar desde !a we" de *icroso+t e! Git de %esarro!!o de 0o+tware 80%G por sus sig!as en ing!es 0o+tware %eve!opment Git9 que inc!u1e todas !as ,erramientas que podemos necesitar para crear una ap!icaci n para Windows .,one *icroso+t Visua! 0tudio 20'0 para Windows .,one *icroso+t ECpression #!end para Windows .,one Emu!ador de Windows .,one App!ication %ep!o1ment Windows .,one %eve!oper Negistration .odemos descargar e! 0%G de desarro!!o de Windows .,one / desde !a siguiente UNDh!!p://crea!e.%sdn.co%/en#us/ho%e/ge!!ing*s!ar!ed donde podremos encontrar) adem$s de !as ,erramientas) !as ;!timas actua!izaciones de! 0%G e instrucciones so"re su insta!aci n 8(igura '&59&

Figura 1.+ P,gina de descarga del &-. de Windows Phone

En e! momento de escri"ir este !i"ro se encontra"a disponi"!e dos 0%G distintos) e! esta"!e de !a versi n /&0 1 !a primera "eta de !a versi n /&') usaremos esta ;!tima versi n en todo e! !i"ro pues nos permite desarro!!ar para Windows .,one /&0 1 *ango& Una vez que ,a1amos descargado !as ,erramientas) e! proceso de insta!aci n es mu1 senci!!o) aunque puede !!evar un tiempo considera"!e en +unci n de !a ca!idad de nuestra coneCi n a @nternet) e! insta!ador se compone so!o de un !anzador que ocupa a!go menos de '*" 1 descarga todos !os componentes que necesite durante !a insta!aci n) necesitando en tota! a!rededor de 2F0*" 8(igura '&59

Figura 1./ El propio ins!alador se descargar, el sof!ware necesario

Una vez terminada !a insta!aci n de"emos descargarnos !as ;!timas actua!izaciones de !as ,erramientas de desarro!!o 8en e! momento de escri"ir este !i"ro !a actua!izaci n de EneroL20''9 que adem$s de corregir "ugs aEaden !as siguientes ,erramientas WPConnec!: Windows Phone Connec! nos permitir$ depurar ap!icaciones en un dispositivo +?sico sin tener e! so+tware Aune de sincronizaci n activado) anteriormente)

a! intentar depurar ap!icaciones que ,iciesen uso de !as A.@s de sensores teniendo Aune iniciado 8indispensa"!e para !a depuraci n en dispositivos9 se produc?a una eCcepci n de seguridad) por !o que con esta ,erramienta podremos e4ecutar 1 depurar este tipo de ap!icaciones& Cap-e!ec!: Capabili!0 -e!ec!ion 1ool nos permitir$ detectar !as capacidades especia!es de! te!=+ono que requiere nuestra ap!icaci n 8como coneCi n a datos o !oca!izaci n9 1 reemp!azar !as creadas por de+ecto) todo e!!o sin tener que editar manua!mente !os arc,ivos de con+iguraci n&

!.".# Microsoft $isual Studio "%&% para Windows Phone


Una vez insta!ado e! 0%G de Windows .,one / 1 sus actua!izaciones tendremos a nuestra disposici n todo e! so+tware necesario para desarro!!ar ap!icaciones comercia!es para este sistema operativo& Una de !as principa!es ,erramientas que usaremos en e! proceso de crear nuestra ap!icaci n ser$ Visua! 0tudio e! entorno de desarro!!o pro+esiona! de *icroso+t) en su versi n 20'0 para Windows .,one /) una versi n tota!mente gratuita 1 +unciona 8+igura '&69-

Figura 1.2 Inicio de 3isual &!udio 414 para Windows Phone 5

%esde esta ventana principa! podremos crear un nuevo pro1ecto de 0i!ver!ig,t para Windows .,one / o B:A 5&0 para Windows .,one /) am"os usando como !engua4e CQ 8+igura '&89) pu!sando so"re e! !inO 2:ew .ro4ect3 o en e! men; (i!e R :ew R .ro4ect&
Nota: En el momento de escribir este libro el soporte para Visual Basic.NET se encuentra todava en desarrollo y no admite todas las caractersticas de Windows Phone. Por todo esto, este libro desarrollar todos los e!emplos en "#.

Figura 1.5 Pan!alla de selecci6n de nue'o pro0ec!o

Ma que este !i"ro est$ dedicado a 0i!ver!ig,t) nos centraremos en !os di+erentes pro1ectos que podemos crear con esta tecno!og?a) de4ando a! !ector que investigue !os pro1ectos de B:A si as? !o desea& %isponemos de 5 tipos de pro1ectos di+erentes en 0i!ver!ig,t para Windows .,one Windows .,one App!ication Windows .,one %ata"ound App!ication Windows .,one C!ass Di"rar1 Windows .,one .anorama App!ication Windows .,one .ivot App!ication Windows Phone "- 7raphics Applica!ion 8 Windows Phone Audio Pla0bac9 Agen! 8 Windows Phone Audio &!rea%ing Agen! 8 Windows Phone 1as9 &cheduler Agen! 8
*Estos proyectos solo son compatibles con dispositivos que ejecuten la nueva versin Mango del sistema operativo

Windows Phone Application


Da p!anti!!a "ase para toda ap!icaci n 0i!ver!ig,t para Windows .,one) inc!u1e una p$gina por de+ecto con !os esti!os de Windows .,one) arc,ivos de imagen para !a panta!!a de inicio e icono que podemos sustituir por !os nuestros si !o deseamos 1 todo !isto para e4ecutar con so!o pu!sar (5&

Nota: $ntes de e!ecutar, debemos cerciorarnos de tener conectado nuestro tel%&ono de desarrollo y 'une o WP"onnect iniciados, o seleccionar (ue se e!ecute el emulador de Windows phone en el combo (ue tenemos disponible a tal e&ecto.

Windows Phone Databound Application


Esta p!anti!!a es eCactamente igua! a !a p!anti!!a "ase eCp!icada anteriormente) con e! aEadido de que en !a p$gina creada tenemos un !ist"oC con una p!anti!!a de datos simp!e) una carpeta 0amp!e%ata con datos de e4emp!o 1 una carpeta viewmode!s con c!ases *VV* !istas para ser usadas& :os puede ser mu1 ;ti! para ver c mo +unciona e! en!ace a datos en Windows .,one / 1 como usar e! patr n de diseEo *VV* para crear ap!icaciones&

Windows Phone 'lass (ibrar)


0i ,emos tra"a4ado anteriormente con &:E< este pro1ecto es "astante senci!!o) se trata de un pro1ecto para generar una !i"rer?a de c!ases que podamos consumir desde una ap!icaci n Windows .,one& <enemos que recordar que) por norma genera!) no podemos crear una !i"rer?a de c!ases para W.( o 0i!ver!ig,t 1 aEadir!a a una ap!icaci n Windows .,one /) por !o que tendremos que usar este tipo de pro1ecto para crear una !i"rer?a espec?+ica para nuestra ap!icaci n m vi!& En posteriores cap?tu!os a"ordaremos !a pro"!em$tica de compartir c digo entre ap!icaciones we") m vi!es 1 de escritorio gracias a una caracter?stica de Visua! 0tudio 20'0 !!amada mu!ti targeting) pero por a,ora "asta con decir que no podemos compartir una !i"rer?a de c!ases entre distintas p!ata+ormas&

Windows Phone Panora*a Application


0e trata de un pro1ecto Windows .,one App!ication standard) pero se ,a sustituido e! contenido por de+ecto por un contro! panorama) e! cua! nos permite tener e!ementos que ocupen m$s que e! anc,o de !a panta!!a 1 poder movernos por e!!os simp!emente desp!az$ndonos de derec,a a izquierda) en una rueda sin +in) podemos ver e4emp!os de este contro! en !os >u"s de Windows .,one /) como por e4emp!o e! de 6++ice 8(igura '&89&

Figura 1.: Con!rol panora%a del ;ub de <ffice.

Windows Phone Pi+ot Application


@gua! que e! pro1ecto .anorama App!ication) pero en este caso sustitu1endo e! contenido por de+ecto por un contro! .ivot) este contro! se comporta de +orma parecida a un contro! de pestaEas) tenemos secciones que ocupan !a panta!!a 1 podemos navegar por e!!as) pu!sando so"re e! t?tu!o superior o simp!emente desp!az$ndonos con gestos de derec,a a izquierda o viceversa& .odemos ver un e4emp!o de este contro! en !a con+iguraci n de Windows .,one / 1 en otras ap!icaciones que usan ta"u!aci n para mostrar distintos datos 8(igura '&79&

Windows Phone !D ,raphics Application


Este tipo de pro1ecto eCc!usivo de Windows .,one *ango 8/&59 nos permite compartir en una misma ap!icaci n) un inter+ace de usuario creado tota!mente en 0i!ver!ig,t con gr$+icos F% de a!ta ca!idad generados usando B:A 1 tota!mente interactivos& %e esta +orma tenemos !o me4or de cada mundo) !a senci!!ez 1 rapidez a !a ,ora de generar ap!icaciones de 0i!ver!ig,t 1 toda !a potencia de !a H.U a !a ,ora de crear contenidos F% 1 gr$+icos interactivos) as? como animaciones comp!e4as&

Windows Phone Audio Pla)bac- Agent


Una de !as grandes novedades de *ango) es e! poder desarro!!ar ap!icaciones que se e4ecuten en segundo p!ano) !os !!amados agentes& Entre e!!os tenemos este pro1ecto en concreto que nos permite reproducir m;sica que se encuentre en e! te!=+ono en segundo p!ano sin necesidad de tener una inter+ace de usuario a"ierta 1 visi"!e&

Windows Phone Audio Strea*ing Agent


Este pro1ecto es igua! a! anterior) sa!vo en que con e! 0treaming Agent podremos reproducir m;sica por medio de 0treaming sin necesidad de que esta se encuentre directamente en e! te!=+ono&

Windows Phone .as- Scheduler Agent


Este tipo de pro1ecto nos permite e4ecutar tareas de prop sito genera! en e! te!=+ono en segundo p!ano sin necesidad de una inter+ace de usuario& .odemos as? crear tareas que se encarguen de recoger datos H.0 1 enviar!os a un servidor para seguir una ruta o ,acer cua!quier tipo de procesamiento m$s pesado o recurrente&

Microsoft /0pression 1lend 2 para Windows Phone


En com"inaci n con Visua! 0tudio 20'0) tendremos a nuestra disposici n otra +ant$stica ,erramienta para crear ap!icaciones Windows .,one) se trata de ECpression #!end 5) pensada por 1 para diseEadores) nos otorgar$ un contro! sin precedentes so"re e! aspecto de nuestra ap!icaci n 1 +aci!itar$ muc,?simo e! diseEo de nuestra U@) permiti=ndonos a go!pe de rat n de+inir animaciones) transiciones) persona!izar p!anti!!as de contro!) esti!os o p!anti!!as de datos) inc!uso rea!izar e! en!ace a nuestros datos de +orma visua!& En caso de que tengamos insta!ada otra versi n de ECpression #!end 5 en nuestro sistema antes de insta!ar !as ,erramientas de Windows .,one) o si deseamos insta!ar!a despu=s de tener !as ,erramientas en nuestro sistema) no tendremos ning;n pro"!ema) simp!emente se aEadir$n !as p!anti!!as de Windows p,one a !a nueva versi n 1 podremos tra"a4ar de +orma ,omog=nea en otros pro1ectos& <enemos que recordar que no se trata de una versi n recortada o de prue"as) es ECpression #!end 5 a! comp!eto) simp!emente se !imita e! que so!o tendremos acceso a !as p!anti!!as necesarias para Windows .,one 8(igura '&'09-

Figura 1.14 &elecci6n de pro0ec!o en E=pression >lend +

Dos pro1ectos a !os que tenemos acceso son !os mismos que en Visua! 0tudio 20'0) no so!o se !!aman de !a misma +orma) Visua! 0tudio 20'0 1 ECpression #!end 5 comparten e! mismo +ormato de pro1ecto) por !o que podremos crear un pro1ecto en Visua! 0tudio 20'0 1 a"rir!o con ECpression #!end 5 1 viceversa) tra"a4ando en am"os entornos so"re e! mismo pro1ecto sin ning;n pro"!ema& %e ,ec,o) a! tener !os dos insta!ados en e! mismo sistema) se detectar$n mutuamente) desde ECpression #!end a! ,acer c!icO derec,o so"re un arc,ivo BA*D) C0 o V# tendremos una opci n en e! men; conteCtua! 2Edit in Visua! 0tudio3 8Editar en Visua! 0tudio9 que autom$ticamente nos a"rir$ e! pro1ecto en Visua! 0tudio !isto para editar e! arc,ivo se!eccionado) una vez ,ec,os cam"ios) so!o con guardar 1 vo!ver a ECpression #!end !os cam"ios se cargar$n autom$ticamente) de !a misma +orma) si se!eccionamos un arc,ivo BA*D en Visua! 0tudio tendremos !a opci n en e! men; conteCtua! 26pen in ECpression #!end3 8A"rir en ECpression #!end9 que se comportar$ igua!) podremos rea!izar cam"ios 1 a! vo!ver a Visua! 0tudio este !os detectar$ 1 !os tendremos disponi"!es&

Nota: Para poder invocar a Visual )tudio desde Blend y viceversa, debemos e!ecutar las aplicaciones con permisos elevados *+un as $dministrator , E!ecutar como $dministrador-, de lo contrario recibiremos un error indic ndonos (ue necesitamos elevar los permisos.

Esta integraci n 0ide "1 0ide de Visua! 0tudio 1 ECpression #!end nos a1udar$ a rea!izar ap!icaciones visua!mente impactantes de una +orma natura! 1 simp!e) integrando !o me4or de una ,erramienta dedicada a! desarro!!o 8Visua! 0tudio9 con otra dedicada a! diseEo 8ECpression #!end9&

!.2.# /*ulador de Windows Phone


Junto con Visua! 0tudio 20'0 1 ECpression #!end 5 e! Oit de desarro!!o de Windows .,one tam"i=n inc!u1e un emu!ador tota!mente +unciona! de! sistema) que nos permitir$ pro"ar nuestras ap!icaciones en condiciones parecidas a !as que podemos encontrar en un dispositivo rea! 8(igura '&''9&

Figura 1.11 E%ulador de Windows Phone

.odremos !anzar e! emu!ador desde @nicio R .rogramas R Windows .,one %eve!oper <oo!s R Emu!ador de Windows .,one& <am"i=n podemos indicar!e a Visua! 0tudio que deseamos usar e! emu!ador para e4ecutar nuestra ap!icaci n) desde e! com"o de target de 0i!ver!ig,t que encontraremos en !a "arra standard de ,erramientas 8(igura '&'29-

Figura 1.1 &elecci6n del des!ino de e?ecuci6n

Aunque nunca reemp!azar$ a prue"as en un dispositivo rea!) e! emu!ador de Windows .,one nos va a permitir de +orma senci!!a pro"ar inc!uso ap!icaciones que dependan de !a !oca!izaci n o que usen !os sensores) como e! ace!er metro de! te!=+ono& En !a "arra de "otones de! emu!ador) e! ;!timo de e!!os 8RR9 8(igura '&'F9 nos permite acceder a !a panta!!a de ,erramientas adiciona!es-

Figura 1.1" Acceso a las herra%ien!as adicionales del e%ulador.

En estas ,erramientas tendremos acceso a un simu!ador de H.0 que nos permitir$ crear rutas 1 puntos que se enviar$n a nuestro emu!ador como datos H.0 rea!es para que nuestra ap!icaci n pueda usar!os 8(igura '&'59-

Figura 1.1+ E%ulador de 7P& en'iando posiciones a nues!ra aplicaci6n

<am"i=n tenemos una ,erramienta que nos permitir$ emu!ar e! comportamiento de! ace!er metro en nuestra ap!icaci n) con un mode!o F% de! te!=+ono que podremos girar como deseemos 8(igura '&'59-

Figura 1.1/ En'@o de da!os de aceler6%e!ro a nues!ro e%ulador

Sil+erlight para Windows Phone


Junto con Windows .,one /) *icroso+t ,a puesto a nuestra disposici n 0i!ver!ig,t para Windows .,one) una nueva versi n de 0i!ver!ig,t) especia!mente pensada para e! nuevo sistema operativo de Nedmon&

34u5 es Sil+erlight para Windows Phone6


0i!ver!ig,t para Windows .,one est$ "asado en 0i!ver!ig,t F) siendo un su"set de esta versi n !a que tendremos disponi"!e en e! nuevo sistema de *icroso+t& Adiciona!mente) se ,an aEadido caracter?sticas no disponi"!es en 0i!ver!ig,t F que son espec?+icas de Windows .,one& A continuaci n podemos ver una !ista de !as caracter?sticas de 0i!ver!ig,t F soportadas por 0i!ver!ig,t para Windows .,one @nput Nenderizado de U@ *edia %eep Aoom Da1out En!ace a datos @so!ated 0torage >ttpWe"Nequest L We"C!ient WC( BA*D Empaquetado BA.

0eria!izaci n B*D <am"i=n eCisten di+erencias en cuanto a !os contro!es soportados en 0i!ver!ig,t para Windows .,one) eCactamente) !os siguientes contro!es no est$n soportados-

6pen(i!e%ia!og 0ave(i!e%ia!og Ca!endar %atagrid %ate.icOer (rame Hrid0p!itter Da"e! .age 0cro!!#ar <a"Contro! <reeView <ampoco tenemos soporte para de!egados as?ncronos) por !o que no tendremos acceso a !os m=todos #egin@nvoOe 1 End@nvoOe) como e4emp!o este c digo no est$ soportado en 0i!ver!ig,t para Windows .,oneAsyncCallback callback = new AsyncCallback(result); callback.BeginInvoke();

<am"i=n tenemos que tener en cuenta que 0i!ver!ig,t para Windows .,one usa e! parser BA*D de 0i!ver!ig,t F) no e! de 0i!ver!ig,t 5) por !o que !a siguiente eCpresi n) que es v$!ida en 0i!ver!ig,t 5 no !o es en 0i!ver!ig,t para Windows .,one<Button>Hola</Button>

Da +orma correcta ser?a !a siguiente<Button Content= Hola />

Nota: En la actuali.aci/n a Windows Phone 0an1o ya se incluye el parser de )ilveli1ht 2 en )ilverli1ht para Windows Phone, por lo (ue las anteriores e3presiones son ambas v lidas en esta nueva versi/n.

0a!vo estas di+erencias) nuestro c digo 0i!ver!ig,t F ser$ casi comp!etamente compati"!e con Windows .,one&

Sil+erlight para Windows Phone 7Mango8


Con !as nuevas ,erramientas de %esarro!!o para Windows .,one 2*ango3 una de !as actua!izaciones m$s importantes que reci"iremos ser$ e! paso de 0i!ver!ig,t desde !a versi n F a !a versi n 5) teniendo muc,a m$s potencia) entre otras) estas son !as venta4as que nos aportar$ 0i!ver!ig,t 5 en Windows .,one 0oporte me4orado para e! patr n *VV* o A,ora !os "otones 1 !os ,ipervincu!os 1a soportan en!ace a comandos Esti!os de contro!es g!o"a!es usando <arget<1pe :uevos contro!es o Nic,<eCt#oC para mostrar teCto enriquecido o View#oC para poder redimensionar contenido BA*D me4orado) ma1or compati"i!idad con BA*D escrito origina!mente para W.( En!ace a datos permite en!ace a instancias de %ependenc16"4ects 0tring(ormat en !as opciones de en!ace a datos& P >a1 muc,as m$s novedades 1 venta4as en esta nueva versi n de 0i!ver!ig,t para Windows p,one) para ver!as todas) puedes visitar e! siguiente !inO de *0%:h!!p://%sdn.%icrosof!.co%/en#us/librar0/hh "5"+ A'B3&.C2D.asp=

También podría gustarte