Por trás de uma solução SD existem muitas tecnologias, linguagens, considerações de segurança, arquitetura, etc. Veremos como GX se encarregas de ocultar todas estas complexidades para simplificar o desenvolvimento de verdadeiras aplicações SD nativas.
26. #GXBR
Apps Offline – Sync
Automatica
• Sync x tabla ou registro
• Resolve o problema de chaves sequenciais
• Disparo automático ou manual
• Mantem um estado dos registros sincronizados
Bom dia, menu nome é Pablo Mazzilli , trabalho na area de suporte de Artech há 16 anos, e nos ultimos anos como responsável tecnico para Brasil.Nesta primeira apresentação quero lhes mostrar a nivel geral , que implica a solução Smart Device com o GX. E porque isso é importante para todos nós.Ao longo do encontro vamos ver alguns cases e na tarde aprofundaremos em assuntos mais tecnicos.
Quero começar falando sobre alguns artigos que peguei da media esta semana.Este de aqui fala do aumento de acceso ao internet através de dispositivos inteligentes (Brasil e USA).--------------------------Podemos seguir vendo os smart devices simplesmente como um novo gadget, ou uma nova consola de jogos, ou como um excelente medio para ler os emails e interagir com as redes sociais. Sim, de fato é maior usso desses aparelhos é nessos segmentos.Vejam o grafico. O porcentaje de acesso a internet a través dos dispositivos inteligentes já ultrapassou o accesso desde os PC. Isso é uma pesquisa recente nos EEUU, mas vejam que no Brasil a realidade não é muito diferente. Mais isso esta levando que as app de produtividade também começem a se utilizar mais em este tipo de dispositivos, para todas as faixas etareas.Todos vamos a ter que desenvolver alguma coisa para SD. Seja app para consumidor final ou para empresas.Nota interessante do artigo:“A pesquisa mostrou que 16% dos internautas tupiniquins acessam a internet apenas através de aparelhos móveis, e sequer possuem um computador em casa ou no trabalho. ”
E o segundo ponto interessante: Do total das pessoas que acessam internet desde SD, mais de 80% é feito através de apps Nativas, perdendo terreno as apps Webs.Algum poderia dizer que gran parte desse porcentage são jogos e app socias (de fato é assim), e que pouco tem que ver com as apps que fazemos, mas o que posso concluir : Os usuarios vao continuar utilizando o mobile no cotidiano, cada vez para mais coisas, e elas tem que ser nativas, pela UX.Eles já conhencem a tecnologia, e por tanto serão mais exigentes.Provavelmente parte de nossas apps tenham que incluir esses componentes socias ou de “jogo” (gamification).---------------Fuente: http://venturebeat.com/2014/04/01/the-mobile-web-is-still-losing-out-to-native-apps-six-years-into-the-mobile-revolution/
Que tipos de apps teremos que desenvolver. ..Aquí temosalgunsexemplos de app bem diferentes, jáfeitascom o GX: Business & ConsumerAppsQ2L / MindPills: São apps para facilitar o processo de aprendizado, de uma maneira diferente. É uma soluçao “out of the box” , pensada desde o inicio para SD.Podemos categorizar ela como “Consumer app” . Apps que tem que esta disponíveis para todas as plataformas (não sabemos nem podemos escoler pelo usuario). Seguramente vai estar nos market.Vejam como colocam o conceito de jogo
Outro exemplo, colocando conceitos socias : App da Virada Cultural.3.248 presentaciones compartidas via twitter, mail o facebook. Eso con el 63% de los Artistas (529/841). 31.120 favoritadas/agendadas. Eso con el 96% de los Artistas (809/841)61% de los artistas fueron rankeados (rating > 0)
O segundo exemplo, é uma app para Foça de vendas de uma corporação. Tem um target mais especifico (não é para tudo o mundo). É uma app integrada ao ERP da empresa. Podemos chamar elas de Business Apps. Até poderiamos pensar que a diferença da consumer apps, as business apps esta pre-definida a plataforma. Mas com o assunto do BYOD isso tampouco é uma certeza.Cenários bem distantes, mas com as mesmas complexidades. O que ha por detrais delas ?
A arquitetura dessas soluções é práticamente a mesma. App nativas, que mostrar e ou atualizam dados, que estão centralizados ou no dispositivo. Que se conectam a serviços que ficam num servidor. Logo ao final vou aprofundar sobre a arquitetura. O que quero lhes mostrar aqui, que seja uma app simples, ou complexa, por detrais delas existe um monte de tecnologias e complexidades.Não é somente fazer o app SD, isso tem que ser gerado para as diferentes plataformas. Seguramente vai existir um sistema de retaguarda para esse app SD, um backoffice para fazer configuraçãos, um banco de dados centralizado. Esses serviços no server side, pode estar se executando em varios servidores, etc. Muitos lenguages de programação, bancos, servidores, recursos de hw. Não parece tam simples, né ? Bom isso depende...
Então fica claro que para SD precisamos de uma solução Cross Platform, assim como vem sendo a proposta de GX ao longo da historia.
Exemplo da Virada Cultural onde se mostrar os diferentes dispositivos utilizados
A solução , alem de multi-plataforma, tem que perdurar nas novas versoes da mesma plataforma. Entre versões também existem mudanças que podem ser disruptivas.E além disso, temos que atuar rapidamente. O grafico mostrar a rapida adoção do iOS 7 por parte dos usuários da apple.
Então,as apps tem que ser nativas. Mas as diferentes plataformas utilizam seus proprios lenguajes: Objective-c, Java para Android, Java para BB, Html, WinJS... Com o GX , os novos geradores para SD seguem a misma linha que os geradores Win, Web: gerar app nos lenguajes nativos partindo de uma especificação abstracta, em alto nivel.Posicionar ao desenvolvedor mais perto do dominio do problema que dos detalhes tecnologicos.Um desenvolvimento baseado em padroes e modelos, que perduram no tempo alias da tecnologia. Esse mesmo modelo gerando para as diferentes plataformas, mas em forma particular, sem ignorar as diferenças e as melhoras practicas de cada uma delas.
Pero uno de los “problemas” de las app nativas es la fragmentacion.Por ejemplo, iOS fue sacando nuevos devices, con diferente tamaño de pantalla. Eso no fue problema para nosotros, porque tenemos la posibilidad de definir N-layouts en el modelo. Es algo que ya se habia considerado desde el comienzo dado la fragmentacion de Android.Estos layouts tienen una ventaja aun mayor, que mejora la UX de los usuarios, porque puedo hacer pantallas especificas para diferentes tamaños (phone, tablets), orientaciones. Se aprovecha mejor, es mas agradable y no tengo que replicar el codigo.Pero es solo una de las ventajas de UX. Veamos que mas tenemos.Fuente de las imagenes: http://www.okilla.com/1022/resource-mobile-design-kit-android-ios-windows-psd/
Um dos fatores de êxito mais importante das apps SD é experiência que o usuáriotemcom o App.Importante que a navegação seja simples, objetiva, intuitiva.E aqui novamente a importancia de que o app seja Nativo.
Os novos de nossas apps agoraconhecem da tecnologia,ussamela no cotidiano e por tanto se voltarammuitomaiscriticos.Jánão precisamos treinar eles como utilizar estes “novos computadores” como tinhams que fazer no passado. Então um dos requerimentos mais importantes das apps é tudo o que tem que ver com a UX e UI. Apps tem que ser muito simples, objetivos claros, intutivas (ou vai precisar de manual ?) , performantes, bonitas.Como vamos a desenvolver essa apps ?Entao o foco esta no usuario etemos que pensar emfazer as melhores apps. Linkshttp://blogs.estadao.com.br/daniel-gonzales/apps-trazem-programacao-completa-da-virada-cultural/http://www.baixaki.com.br/iphone/download/virada-cultural.htmhttp://www.baixaki.com.br/android/download/virada-cultural-2013.htm
Nuevamentenospreguntamos: quéprecisamos? Antes que nada queesténcompletamenteintegradas, que se puedaaprovechardesdeGeneXuslascapacidadesque los dispositivosofrecen a nivel de hardware y de otrossoftwaresquecorren.Para eso X Evolution 2 traefuncionalidadesdesdealgocomo los llamadosdominiossemánticosquenospermitenquesobre un campo de dominio Phone yo de Tap y automáticamente se inicie un llamado, hasta un montón de APIs para integrarse con APIs para manejarFotos o integrarse con Facebook.
Mais recursos de UX Diferentes formas de ver uma “LISTA”.
Exemplo de como ao colocar chinês no FindMyPlane acelerou a adopção nesse pais.
A arquitetura de uma solução SD com o GX é bem completa. Não somente contempla a parte de SD conectadas ou desconectadas, mas tudo o necessario para essa app funcionar (backend do app SD, backoffice do app web, etc).
Exemplo de app MindPills. Esta para ambas plataformas, mas precisa de uma backoffice web para carregar as perguntas e respostas. Isso tem que ser WEB e o GX já gera essa parte.
Vejamos como é a arquitetura de uma solução SD online com o GX. Temos o proprio apps , que é uma metadata, um conjunto de controles nativos. Esse app consume e invoca processos, gerados com os geradores Web (java, net, ruby). Essa invoção se realiza através de serviços REST automticamente gerados desse jeito. Toda a camada logica do negocio esta se executando no servidor. Os processos acessam ao banco de dados. No SD, se dipoe ademas de um cache, para que tudo seja optimizado, e não ficar pedindo ao sever coisas que não foram alteradas.
Bonus track
Além das facilidades que temos para gerar todos os componentes da app, nas diferentes camadas, temos muitas facilidades para aproveitas as caracteristicas que nos fornecen las plataformas. Deploy to cloud : para prototipar rápidamento os app SD e WebPublicação nas lojas virtuas: para disponibilizar o seu app para o mundo todo.
Push Notifications: para se conectar com os usuarios de seu app. Inapp purchases e ads, para monetizar o app. Estas são features proprias das plataformas mobile, cada uma tem a sua implementação e suas complexidades, mas desde o gx se tem uma unica API para apreveitar elas.
Achamos que temos uma muito boa solução para desenvolver Apps potentes, completas, com excelente UX, UI.Mas isto é um processo de melhoria continua, porque continuamente aparecem novas tecnologias, opçoes, ferramentas, que aumentan ainda mais a complexidade. Por tanto a gente tem um grande trabalho pela frente, para que vocês consigam se focalizar no seus negocios e possam levar adianta suas ideias... Muito obrigado.