Compartir

Xamarin Forms en Acción Aplicac de Negocio

Sinopsis del producto

Uno de los retos de los desarrolladores es el allegarse los conocimientos necesarios referentes a los diversos sistemas operativos y lenguajes de programación y actualizar estos conocimientos; asimismo, mantener múltiples versiones de código y diferentes ambientes, y administrar varias distribuciones y actualizaciones. El presente libro se constituye como una enorme contribución para el incremento de los conocimientos de los desarrolladores de habla hispana, ya que permite desarrollar, conservar y administrar una línea base de código para iOS, Android y Windows y crear así aplicaciones nativas para cada plataforma; de este modo se logra que la App tenga la performance y experiencia en cada dispositivo, y además permite al desarrollador la reutilización, optimización y productividad en la calidad del código y, por ende, de la aplicación. n nEste documento ofrece a los lectores una completa, sólida y didáctica referencia que facilita adquirir de Xamarin.Forms el máximo potencial y de esa manera mejorar el desarrollo de aplicaciones móviles para múltiples plataformas. Xamarin.Forms ha probado ser una excelente opción tecnológica cuando se trata de decidir el rumbo por el que irán las soluciones móviles en una empresa o institución. n nVENTAJAS n n• La organización de este libro permite leerse en orden de inicio a fin, ya que gradualmente en cada capítulo (a partir del 4) se implementan funcionalidades adicionales y modificaciones en la aplicación de encuestas. n• Cuenta con numerosas figuras explicativas de cada uno de los temas abordados. n nCONOZCA n n• Las maneras mediante las cuales se pueden manejar los eventos de los elementos visuales. n• Los estilos que pueden aplicar todos los elementos visuales y controles de Xamarin.Forms. n• Las características y funcionalidad del patrón de diseño Model-View-ViewModel. n nAPRENDA n n• A manejar el lenguaje XAML para realizar soluciones sofisticadas en Xamarin.Forms. n• A ejecutar un enlace de datos en Xamarin.Forms mediante la extensión de marcado {Binding}. n• A utilizar el “kit de desarrollo” PRISM en Xamarin.Forms para el diseño, arquitectura y construcción de aplicaciones. n nDESARROLLE SUS HABILIDADES PARA n nConocer los fundamentos de Xamarin y de Xamarin.Forms para la construcción de aplicaciones multi-plataforma. nEl modelo de aplicación que expone Xamarin.Forms. nEl lenguaje XAML para la definición de las Interfaces de Usuario. nEl modelo de navegación y mensajería. nEl importante mecanismo de Enlace de Datos en Xamarin.Forms. nEl objetivo y papel que juegan los Comandos. nLos diversos beneficios de usar el patrón de diseño MVVM en la arquitectura de tus aplicaciones. nLa invocación de funcionalidad nativa de los sistemas operativos. nEl por qué Prism es una pieza fundamental e imprescindible para construir arquitecturas extensibles, robustas y de fácil mantenimiento. nEl uso de SQLite como base de datos para almacenamiento local. nLa comunicación a servicios REST para tus aplicaciones móviles. n nA QUIÉN VA DIRIGIDO n nEl presente texto está dirigido tanto a desarrolladores amateurs que deseen aprender a construir aplicaciones multiplataforma con Xamarin.Forms, como a desarrolladores profesionales de empresas que quieran iniciar o perfeccionar su estrategia de aplicaciones móviles multiplataforma con esta tecnología. n nÍNDICE n nPrefacio ……………………………………………………………………………………………… ... XV nPrólogo ............................................................................................................ XVII nCapítulo 1. Introducción a Xamarin .................................................................... 1 n¿Qué es Xamarin? ................................................................................................ 1 nBueno ya, entonces ¿qué es Xamarin? ................................................................ 3 nMétodos para compartir el código ....................................................................... 4 nFundamentos de Xamarin.Forms ............................................................................. 6 n¿Qué es Xamarin.Forms? ..................................................................................... 6 n¿Xamarin o Xamarin.Forms? ................................................................................ 6 nAnatomía de una solución ....................................................................................... 7 nArquitectura de Xamarin.Forms ............................................................................... 8 nClase Application .................................................................................................. 8 nCiclo de vida ......................................................................................................... 9 nEjecutando Xamarin.Forms en cada proyecto concreto .................................... 10 nJerarquía de clases ............................................................................................. 13 nSistema de Propiedades Enlazables ....................................................................... 17 n¿Qué es una Propiedad Enlazable? .................................................................... 18 nBindableObject ................................................................................................... 19 nBindableProperty ............................................................................................... 19 nPropiedades Adjuntas ........................................................................................ 21 nManejo de eventos ................................................................................................ 22 nManejo de eventos desde XAML ........................................................................ 23 nManejo de eventos a través de código usando la sintaxis estándar .................. 23 nManejo de eventos a través de código usando Expresiones Lambda ................ 24 nCapítulo 2. El lenguaje XAML ............................................................................ 25 nIntroducción ..... ……………………………………………………………………………………… 25 n¿Qué es XAML? .................................................................................................. 25 nReglas básicas de XAML ..................................................................................... 25 nEspacios de nombres XML .................................................................................. 27 nSintaxis de subelementos ................................................................................... 28 nExtensiones de marcado .................................................................................... 29 nRecursos ............................................................................................................. 30 nConvertidores de tipos ....................................................................................... 34 nXAML compilado ................................................................................................ 37 nCapítulo 3. Interfaz de Usuario ......................................................................... 39 nContenedores ...………………………………………………………………………………………. 39 nStackLayout ........................................................................................................ 39 nGrid .................................................................................................................... 40 nControles ................................................................................................................ 45 nControles comunes ................................................................................................ 46 nButton ................................................................................................................ 46 nStepper ............................................................................................................... 47 nSwitch ................................................................................................................. 47 nSlider .................................................................................................................. 47 nDatePicker .......................................................................................................... 47 nTimePicker .......................................................................................................... 48 nProgressBar ........................................................................................................ 48 nActivityIndicator ................................................................................................. 48 nImage ................................................................................................................. 48 nBoxView ............................................................................................................. 48 nFrame ................................................................................................................. 49 nWebView ............................................................................................................ 49 nControles de texto ................................................................................................. 49 nLabel ................................................................................................................... 49 nEntry ................................................................................................................... 50 nEditor .................................................................................................................. 50 nSearchBar ........................................................................................................... 50 nTipos de teclado ................................................................................................. 50 nControles de lista ................................................................................................... 52 nPicker ................................................................................................................. 52 nListView .............................................................................................................. 52 nEstilos ..................................................................................................................... 53 nUsando los estilos .............................................................................................. 53 nPropiedad BasedOn............................................................................................ 54 nEstilos implícitos ................................................................................................. 54 nPropiedad ApplyToDerivedTypes ....................................................................... 57 nTriggers en estilos .............................................................................................. 58 nDiccionarios mezclados ...................................................................................... 61 nCapítulo 4. Navegación y Mensajería ................................................................ 65 nNavegación ............................................................................................................ 65 nNavegación jerárquica ....................................................................................... 66 nNavegación modal .............................................................................................. 68 nMensajería ............................................................................................................. 69 nDisplayAlert ........................................................................................................ 70 nDisplayActionSheet ............................................................................................ 70 nClase MessagingCenter ...................................................................................... 71 nManos a la obra ..................................................................................................... 73 nCreando la solución ............................................................................................ 74 nConfiguración de la solución .............................................................................. 81 nDespliegue de los ensamblados de Xamarin.Forms ........................................... 81 nCreación de la aplicación en la PCL .................................................................... 83 nModificación del punto de entrada en Android ................................................. 84 nModificación del punto de entrada en iOS ........................................................ 85 nModificación del punto de entrada en UWP ...................................................... 86 nImplementando las dos páginas ......................................................................... 87 nImplementando SurveysView ............................................................................ 89 nImplementando SurveyDetailsView ................................................................... 90 nDesplegando los equipos ................................................................................... 92 nComunicando ambas páginas ............................................................................ 95 nProbando la aplicación ....................................................................................... 97 nCapítulo 5. Enlace de Datos .............................................................................. 99 nIntroducción ...................................................................................................... 99 nSource .............................................................................................................. 100 nPath .................................................................................................................. 100 nMode ................................................................................................................ 100 nInterfaces INotifyPropertyChanged y INotifyCollectionChang1d ..................... 103 nObservableCollection ........................................................................................... 110 nContexto de Enlace de Datos ........................................................................... 113 nEnlace entre elementos ................................................................................... 116 nPropiedad StringFormat ................................................................................... 118 nPlantillas de Datos ................................................................................................ 122 nTipos de celdas ................................................................................................. 123 nConvertidores de Valor ........................................................................................ 125 nCreando un Convertidor de Valor .................................................................... 126 nUsando un Convertidor de Valor ...................................................................... 127 nManos a la obra ................................................................................................... 129 nCreando la fuente de datos .............................................................................. 130 nImplementando la Plantilla de Datos ............................................................... 135 nImplementando el Convertidor de Valor ......................................................... 138 nCapítulo 6. Comandos .................................................................................... 141 nIntroducción ......................................................................................................... 141 nCreando un comando básico ............................................................................ 142 nImplementando CanExecute() .......................................................................... 146 nImplementando CanExecuteChanged .............................................................. 147 nImplementaciones existentes recomendadas .................................................. 150 nManos a la obra ................................................................................................... 150 nImplementando el comando ............................................................................ 151 nCapítulo 7. El Patrón de Diseño Model-View-ViewModel ............................... 155 nIntroducción ......................................................................................................... 155 n¿Qué es el patrón de diseño Model-View-ViewModel? ................................... 155 nLa Vista o View ................................................................................................. 156 nEl Modelo para la Vista o ViewModel .............................................................. 156 nEl Modelo ......................................................................................................... 157 nVentajas ........................................................................................................... 157 nCardinalidad entre los Model, Views y ViewModels ........................................ 158 nEstrategias para relacionar una Vista con su ViewModel ................................ 158 nCómo pensar en MVVM ................................................................................... 159 nManos a la obra ................................................................................................... 160 nRenombrando y organizando las clases actuales ............................................. 160 nImplementando SurveyDetailsViewModel ....................................................... 162 nModificando la página SurveyDetailsView ....................................................... 166 nImplementando la colección de equipos ......................................................... 168 nImplementando la selección de equipos .......................................................... 169 nImplementando el comando para finalizar una encuesta ................................ 172 nDesinscribiendo los mensajes .......................................................................... 175 nEjecutando la aplicación ................................................................................... 177 nCapítulo 8. Funcionalidad Nativa de las Plataformas ...................................... 179 nIntroducción ......................................................................................................... 179 nClase Device ......................................................................................................... 179 nIdiom ................................................................................................................ 179 nOS ..................................................................................................................... 180 nBeginInvokeOnMainThread() ........................................................................... 180 nStartTimer() ...................................................................................................... 181 nOnPlatform() y OnPlatform() ...................................................................... 181 nClase OnPlatform ........................................................................................... 182 nImágenes .............................................................................................................. 182 nServicio de Dependencias .................................................................................... 183 nDependencyService .......................................................................................... 184 nPlugins de Xamarin .............................................................................................. 188 nManos a la obra ................................................................................................... 189 nModificando el modelo .................................................................................... 189 nCreando la interfaz IGeolocationService .......................................................... 190 nImplementación de IGeolocationService en UWP ........................................... 191 nImplementación de IGeolocationService en Android ....................................... 193 nUsando el Servicio de Dependencias ............................................................... 196 nModificando la Plantilla de Datos .................................................................... 197 nProbando la aplicación ..................................................................................... 198 nCapítulo 9. Arquitectura de Aplicaciones con Prism ........................................ 201 nIntroducción ...................................................................................................... 201 n¿Qué es Prism?................................................................................................. 202 n¿Por qué usar Prism? ....................................................................................... 202 nVersiones de Prism ........................................................................................... 203 n¿Qué ofrece Prism para Xamarin.Forms? ........................................................ 203 nPrincipios SOLID ............................................................................................... 204 nRequerimientos ................................................................................................ 205 nModelo de Aplicación .......................................................................................... 205 nClase PrismApplication ..................................................................................... 206 nClase BindableBase .............................................................................................. 208 nClase DelegateCommand ..................................................................................... 208 nObservesProperty() .......................................................................................... 208 nObservesCanExecute() ..................................................................................... 209 nNavegación .......................................................................................................... 209 nINavigationService ............................................................................................ 209 nINavigationAware ............................................................................................. 210 nIPageDialogService ............................................................................................... 210 nInyección de dependencias .................................................................................. 211 n¿Cuándo se usa la Inyección de Dependencias en Prism? ............................... 213 nManos a la obra ................................................................................................... 214 nInstalando Prism .............................................................................................. 214 nImplementando el Modelo de Aplicación ........................................................ 216 nImplementando la clase BindableBase ............................................................. 219 nImplementando la infraestructura de navegación ........................................... 220 nInyección de Dependencias .............................................................................. 221 nImplementando DelegateCommand ................................................................ 235 nProbando la aplicación con Prism .................................................................... 236 nComplementando la aplicación con más páginas ............................................ 237 nImplementando Material Design en la aplicación de Android ......................... 251 nProbando la aplicación con la nueva estructura .............................................. 253 nCapítulo 10. Almacenamiento local con SQLite ............................................... 255 nIntroducción ...................................................................................................... 255 n¿Qué es SQLite? ............................................................................................... 255 nInstalando y referenciando SQLite en el proyecto UWP .................................. 255 nInstalando el paquete de SQLite para .NET ...................................................... 257 nCreando la conexión a SQLite ........................................................................... 258 nCreando un servicio para la base de datos ....................................................... 259 nManos a la obra ................................................................................................... 260 nImplementando ISQLiteService ........................................................................ 260 nModificando la clase Survey ............................................................................. 263 nCreación de la interfaz ILocalDbService ........................................................... 264 nRegistrando la instancia en el contenedor de Unity......................................... 268 nInyectando el servicio en los ViewModels ....................................................... 268 nGuardando las encuestas en la base de datos ................................................. 270 nLeyendo las encuestas de la base de datos ...................................................... 271 nImplementando la funcionalidad de borrar encuestas .................................... 272 nAgregando un texto amigable en la Interfaz de Usuario .................................. 278 nProbando la aplicación ..................................................................................... 279 nCapítulo 11. Comunicación a Servicios ............................................................ 281 nIntroducción ....................................................................................................... 281 nSOAP vs. REST................................................................................................... 281 nCreando un servicio REST con ASP.NET Web API .......................................... 282 nManos a la obra ................................................................................................... 284 nCreando la base de datos ................................................................................. 284 nCreando el proyecto Web API .......................................................................... 286 nCreando los controladores SurveysController y TeamsController ................... 287 nCreando el proyecto Surveys.Entities .............................................................. 289 nCreando el proyecto Surveys.Web.DAL.SqlServer ........................................... 292 nImplementando el controlador de equipos ..................................................... 299 nImplementando el controlador de encuestas .................................................. 300 nCreando el servicio IWebApiService ................................................................. 302 nRegistrando el servicio IWebApiService ........................................................... 305 nPublicando el servicio REST .............................................................................. 305 nProbando el servicio REST ................................................................................ 308 nModificando ILocalDbService ........................................................................... 309 nCreando el módulo de sincronización .............................................................. 311 nImplementando la nueva página de selección de equipos .............................. 318 nModificando SurveyDetailsViewModel ............................................................ 327 nModificando la página de encuestas ................................................................ 329 nProbando la aplicación ..................................................................................... 336 nProtegiendo el servicio con autenticación basada en tokens .......................... 337 nProbando la aplicación ..................................................................................... 351 nÍndice analítico ............................................................................................... 353

9786076229668

Sinopsis del producto

Uno de los retos de los desarrolladores es el allegarse los conocimientos necesarios referentes a los diversos sistemas operativos y lenguajes de programación y actualizar estos conocimientos; asimismo, mantener múltiples versiones de código y diferentes ambientes, y administrar varias distribuciones y actualizaciones. El presente libro se constituye como una enorme contribución para el incremento de los conocimientos de los desarrolladores de habla hispana, ya que permite desarrollar, conservar y administrar una línea base de código para iOS, Android y Windows y crear así aplicaciones nativas para cada plataforma; de este modo se logra que la App tenga la performance y experiencia en cada dispositivo, y además permite al desarrollador la reutilización, optimización y productividad en la calidad del código y, por ende, de la aplicación. n nEste documento ofrece a los lectores una completa, sólida y didáctica referencia que facilita adquirir de Xamarin.Forms el máximo potencial y de esa manera mejorar el desarrollo de aplicaciones móviles para múltiples plataformas. Xamarin.Forms ha probado ser una excelente opción tecnológica cuando se trata de decidir el rumbo por el que irán las soluciones móviles en una empresa o institución. n nVENTAJAS n n• La organización de este libro permite leerse en orden de inicio a fin, ya que gradualmente en cada capítulo (a partir del 4) se implementan funcionalidades adicionales y modificaciones en la aplicación de encuestas. n• Cuenta con numerosas figuras explicativas de cada uno de los temas abordados. n nCONOZCA n n• Las maneras mediante las cuales se pueden manejar los eventos de los elementos visuales. n• Los estilos que pueden aplicar todos los elementos visuales y controles de Xamarin.Forms. n• Las características y funcionalidad del patrón de diseño Model-View-ViewModel. n nAPRENDA n n• A manejar el lenguaje XAML para realizar soluciones sofisticadas en Xamarin.Forms. n• A ejecutar un enlace de datos en Xamarin.Forms mediante la extensión de marcado {Binding}. n• A utilizar el “kit de desarrollo” PRISM en Xamarin.Forms para el diseño, arquitectura y construcción de aplicaciones. n nDESARROLLE SUS HABILIDADES PARA n nConocer los fundamentos de Xamarin y de Xamarin.Forms para la construcción de aplicaciones multi-plataforma. nEl modelo de aplicación que expone Xamarin.Forms. nEl lenguaje XAML para la definición de las Interfaces de Usuario. nEl modelo de navegación y mensajería. nEl importante mecanismo de Enlace de Datos en Xamarin.Forms. nEl objetivo y papel que juegan los Comandos. nLos diversos beneficios de usar el patrón de diseño MVVM en la arquitectura de tus aplicaciones. nLa invocación de funcionalidad nativa de los sistemas operativos. nEl por qué Prism es una pieza fundamental e imprescindible para construir arquitecturas extensibles, robustas y de fácil mantenimiento. nEl uso de SQLite como base de datos para almacenamiento local. nLa comunicación a servicios REST para tus aplicaciones móviles. n nA QUIÉN VA DIRIGIDO n nEl presente texto está dirigido tanto a desarrolladores amateurs que deseen aprender a construir aplicaciones multiplataforma con Xamarin.Forms, como a desarrolladores profesionales de empresas que quieran iniciar o perfeccionar su estrategia de aplicaciones móviles multiplataforma con esta tecnología. n nÍNDICE n nPrefacio ……………………………………………………………………………………………… ... XV nPrólogo ............................................................................................................ XVII nCapítulo 1. Introducción a Xamarin .................................................................... 1 n¿Qué es Xamarin? ................................................................................................ 1 nBueno ya, entonces ¿qué es Xamarin? ................................................................ 3 nMétodos para compartir el código ....................................................................... 4 nFundamentos de Xamarin.Forms ............................................................................. 6 n¿Qué es Xamarin.Forms? ..................................................................................... 6 n¿Xamarin o Xamarin.Forms? ................................................................................ 6 nAnatomía de una solución ....................................................................................... 7 nArquitectura de Xamarin.Forms ............................................................................... 8 nClase Application .................................................................................................. 8 nCiclo de vida ......................................................................................................... 9 nEjecutando Xamarin.Forms en cada proyecto concreto .................................... 10 nJerarquía de clases ............................................................................................. 13 nSistema de Propiedades Enlazables ....................................................................... 17 n¿Qué es una Propiedad Enlazable? .................................................................... 18 nBindableObject ................................................................................................... 19 nBindableProperty ............................................................................................... 19 nPropiedades Adjuntas ........................................................................................ 21 nManejo de eventos ................................................................................................ 22 nManejo de eventos desde XAML ........................................................................ 23 nManejo de eventos a través de código usando la sintaxis estándar .................. 23 nManejo de eventos a través de código usando Expresiones Lambda ................ 24 nCapítulo 2. El lenguaje XAML ............................................................................ 25 nIntroducción ..... ……………………………………………………………………………………… 25 n¿Qué es XAML? .................................................................................................. 25 nReglas básicas de XAML ..................................................................................... 25 nEspacios de nombres XML .................................................................................. 27 nSintaxis de subelementos ................................................................................... 28 nExtensiones de marcado .................................................................................... 29 nRecursos ............................................................................................................. 30 nConvertidores de tipos ....................................................................................... 34 nXAML compilado ................................................................................................ 37 nCapítulo 3. Interfaz de Usuario ......................................................................... 39 nContenedores ...………………………………………………………………………………………. 39 nStackLayout ........................................................................................................ 39 nGrid .................................................................................................................... 40 nControles ................................................................................................................ 45 nControles comunes ................................................................................................ 46 nButton ................................................................................................................ 46 nStepper ............................................................................................................... 47 nSwitch ................................................................................................................. 47 nSlider .................................................................................................................. 47 nDatePicker .......................................................................................................... 47 nTimePicker .......................................................................................................... 48 nProgressBar ........................................................................................................ 48 nActivityIndicator ................................................................................................. 48 nImage ................................................................................................................. 48 nBoxView ............................................................................................................. 48 nFrame ................................................................................................................. 49 nWebView ............................................................................................................ 49 nControles de texto ................................................................................................. 49 nLabel ................................................................................................................... 49 nEntry ................................................................................................................... 50 nEditor .................................................................................................................. 50 nSearchBar ........................................................................................................... 50 nTipos de teclado ................................................................................................. 50 nControles de lista ................................................................................................... 52 nPicker ................................................................................................................. 52 nListView .............................................................................................................. 52 nEstilos ..................................................................................................................... 53 nUsando los estilos .............................................................................................. 53 nPropiedad BasedOn............................................................................................ 54 nEstilos implícitos ................................................................................................. 54 nPropiedad ApplyToDerivedTypes ....................................................................... 57 nTriggers en estilos .............................................................................................. 58 nDiccionarios mezclados ...................................................................................... 61 nCapítulo 4. Navegación y Mensajería ................................................................ 65 nNavegación ............................................................................................................ 65 nNavegación jerárquica ....................................................................................... 66 nNavegación modal .............................................................................................. 68 nMensajería ............................................................................................................. 69 nDisplayAlert ........................................................................................................ 70 nDisplayActionSheet ............................................................................................ 70 nClase MessagingCenter ...................................................................................... 71 nManos a la obra ..................................................................................................... 73 nCreando la solución ............................................................................................ 74 nConfiguración de la solución .............................................................................. 81 nDespliegue de los ensamblados de Xamarin.Forms ........................................... 81 nCreación de la aplicación en la PCL .................................................................... 83 nModificación del punto de entrada en Android ................................................. 84 nModificación del punto de entrada en iOS ........................................................ 85 nModificación del punto de entrada en UWP ...................................................... 86 nImplementando las dos páginas ......................................................................... 87 nImplementando SurveysView ............................................................................ 89 nImplementando SurveyDetailsView ................................................................... 90 nDesplegando los equipos ................................................................................... 92 nComunicando ambas páginas ............................................................................ 95 nProbando la aplicación ....................................................................................... 97 nCapítulo 5. Enlace de Datos .............................................................................. 99 nIntroducción ...................................................................................................... 99 nSource .............................................................................................................. 100 nPath .................................................................................................................. 100 nMode ................................................................................................................ 100 nInterfaces INotifyPropertyChanged y INotifyCollectionChang1d ..................... 103 nObservableCollection ........................................................................................... 110 nContexto de Enlace de Datos ........................................................................... 113 nEnlace entre elementos ................................................................................... 116 nPropiedad StringFormat ................................................................................... 118 nPlantillas de Datos ................................................................................................ 122 nTipos de celdas ................................................................................................. 123 nConvertidores de Valor ........................................................................................ 125 nCreando un Convertidor de Valor .................................................................... 126 nUsando un Convertidor de Valor ...................................................................... 127 nManos a la obra ................................................................................................... 129 nCreando la fuente de datos .............................................................................. 130 nImplementando la Plantilla de Datos ............................................................... 135 nImplementando el Convertidor de Valor ......................................................... 138 nCapítulo 6. Comandos .................................................................................... 141 nIntroducción ......................................................................................................... 141 nCreando un comando básico ............................................................................ 142 nImplementando CanExecute() .......................................................................... 146 nImplementando CanExecuteChanged .............................................................. 147 nImplementaciones existentes recomendadas .................................................. 150 nManos a la obra ................................................................................................... 150 nImplementando el comando ............................................................................ 151 nCapítulo 7. El Patrón de Diseño Model-View-ViewModel ............................... 155 nIntroducción ......................................................................................................... 155 n¿Qué es el patrón de diseño Model-View-ViewModel? ................................... 155 nLa Vista o View ................................................................................................. 156 nEl Modelo para la Vista o ViewModel .............................................................. 156 nEl Modelo ......................................................................................................... 157 nVentajas ........................................................................................................... 157 nCardinalidad entre los Model, Views y ViewModels ........................................ 158 nEstrategias para relacionar una Vista con su ViewModel ................................ 158 nCómo pensar en MVVM ................................................................................... 159 nManos a la obra ................................................................................................... 160 nRenombrando y organizando las clases actuales ............................................. 160 nImplementando SurveyDetailsViewModel ....................................................... 162 nModificando la página SurveyDetailsView ....................................................... 166 nImplementando la colección de equipos ......................................................... 168 nImplementando la selección de equipos .......................................................... 169 nImplementando el comando para finalizar una encuesta ................................ 172 nDesinscribiendo los mensajes .......................................................................... 175 nEjecutando la aplicación ................................................................................... 177 nCapítulo 8. Funcionalidad Nativa de las Plataformas ...................................... 179 nIntroducción ......................................................................................................... 179 nClase Device ......................................................................................................... 179 nIdiom ................................................................................................................ 179 nOS ..................................................................................................................... 180 nBeginInvokeOnMainThread() ........................................................................... 180 nStartTimer() ...................................................................................................... 181 nOnPlatform() y OnPlatform() ...................................................................... 181 nClase OnPlatform ........................................................................................... 182 nImágenes .............................................................................................................. 182 nServicio de Dependencias .................................................................................... 183 nDependencyService .......................................................................................... 184 nPlugins de Xamarin .............................................................................................. 188 nManos a la obra ................................................................................................... 189 nModificando el modelo .................................................................................... 189 nCreando la interfaz IGeolocationService .......................................................... 190 nImplementación de IGeolocationService en UWP ........................................... 191 nImplementación de IGeolocationService en Android ....................................... 193 nUsando el Servicio de Dependencias ............................................................... 196 nModificando la Plantilla de Datos .................................................................... 197 nProbando la aplicación ..................................................................................... 198 nCapítulo 9. Arquitectura de Aplicaciones con Prism ........................................ 201 nIntroducción ...................................................................................................... 201 n¿Qué es Prism?................................................................................................. 202 n¿Por qué usar Prism? ....................................................................................... 202 nVersiones de Prism ........................................................................................... 203 n¿Qué ofrece Prism para Xamarin.Forms? ........................................................ 203 nPrincipios SOLID ............................................................................................... 204 nRequerimientos ................................................................................................ 205 nModelo de Aplicación .......................................................................................... 205 nClase PrismApplication ..................................................................................... 206 nClase BindableBase .............................................................................................. 208 nClase DelegateCommand ..................................................................................... 208 nObservesProperty() .......................................................................................... 208 nObservesCanExecute() ..................................................................................... 209 nNavegación .......................................................................................................... 209 nINavigationService ............................................................................................ 209 nINavigationAware ............................................................................................. 210 nIPageDialogService ............................................................................................... 210 nInyección de dependencias .................................................................................. 211 n¿Cuándo se usa la Inyección de Dependencias en Prism? ............................... 213 nManos a la obra ................................................................................................... 214 nInstalando Prism .............................................................................................. 214 nImplementando el Modelo de Aplicación ........................................................ 216 nImplementando la clase BindableBase ............................................................. 219 nImplementando la infraestructura de navegación ........................................... 220 nInyección de Dependencias .............................................................................. 221 nImplementando DelegateCommand ................................................................ 235 nProbando la aplicación con Prism .................................................................... 236 nComplementando la aplicación con más páginas ............................................ 237 nImplementando Material Design en la aplicación de Android ......................... 251 nProbando la aplicación con la nueva estructura .............................................. 253 nCapítulo 10. Almacenamiento local con SQLite ............................................... 255 nIntroducción ...................................................................................................... 255 n¿Qué es SQLite? ............................................................................................... 255 nInstalando y referenciando SQLite en el proyecto UWP .................................. 255 nInstalando el paquete de SQLite para .NET ...................................................... 257 nCreando la conexión a SQLite ........................................................................... 258 nCreando un servicio para la base de datos ....................................................... 259 nManos a la obra ................................................................................................... 260 nImplementando ISQLiteService ........................................................................ 260 nModificando la clase Survey ............................................................................. 263 nCreación de la interfaz ILocalDbService ........................................................... 264 nRegistrando la instancia en el contenedor de Unity......................................... 268 nInyectando el servicio en los ViewModels ....................................................... 268 nGuardando las encuestas en la base de datos ................................................. 270 nLeyendo las encuestas de la base de datos ...................................................... 271 nImplementando la funcionalidad de borrar encuestas .................................... 272 nAgregando un texto amigable en la Interfaz de Usuario .................................. 278 nProbando la aplicación ..................................................................................... 279 nCapítulo 11. Comunicación a Servicios ............................................................ 281 nIntroducción ....................................................................................................... 281 nSOAP vs. REST................................................................................................... 281 nCreando un servicio REST con ASP.NET Web API .......................................... 282 nManos a la obra ................................................................................................... 284 nCreando la base de datos ................................................................................. 284 nCreando el proyecto Web API .......................................................................... 286 nCreando los controladores SurveysController y TeamsController ................... 287 nCreando el proyecto Surveys.Entities .............................................................. 289 nCreando el proyecto Surveys.Web.DAL.SqlServer ........................................... 292 nImplementando el controlador de equipos ..................................................... 299 nImplementando el controlador de encuestas .................................................. 300 nCreando el servicio IWebApiService ................................................................. 302 nRegistrando el servicio IWebApiService ........................................................... 305 nPublicando el servicio REST .............................................................................. 305 nProbando el servicio REST ................................................................................ 308 nModificando ILocalDbService ........................................................................... 309 nCreando el módulo de sincronización .............................................................. 311 nImplementando la nueva página de selección de equipos .............................. 318 nModificando SurveyDetailsViewModel ............................................................ 327 nModificando la página de encuestas ................................................................ 329 nProbando la aplicación ..................................................................................... 336 nProtegiendo el servicio con autenticación basada en tokens .......................... 337 nProbando la aplicación ..................................................................................... 351 nÍndice analítico ............................................................................................... 353

9786076229668

Ver más
Ver menos

$32.571,00

99999 disponibles

*Precios válidos solo para compras online.
Costo de envío      Medios de pago
mp-logo-hand-shake
Hasta 12 pagos sin tarjeta con Mercado Pago. Saber más
Compra con Mercado Pago sin tarjeta y paga mes a mes
1
Agrega tu producto al carrito y al momento de pagar, elige “Cuotas sin Tarjeta” o “Meses sin Tarjeta”.
2
Inicia sesión en Mercado Pago.
3
Elige la cantidad de pagos que se adapten mejor a ti ¡y listo!

Crédito sujeto a aprobación.

¿Tienes dudas? Consulta nuestra Ayuda.

Con esta compra sumás 32571 puntos
Comprar ahora

Especificaciones

Tapa blanda o Bolsillo
Argentina
Español / Castellano
Producto a la venta formado por un único componente
22/02/2022
ISBN 9786076229668

Quizás te interese

Valoraciones

No hay valoraciones aún.

¿Ya lo leíste? Valorá “Xamarin Forms en Acción Aplicac de Negocio”

Creado por Livriz