XE5 in Action-PT.pptx [solo lectura] · 2019-09-26 · 10/4/2013 9 Tentar encaixar uma experiência...
Transcript of XE5 in Action-PT.pptx [solo lectura] · 2019-09-26 · 10/4/2013 9 Tentar encaixar uma experiência...
10/4/2013
1
RAD STUDIO XE5 Luis Alfonso [email protected]
WWW.DANYSOFT.PT
AGENDA10.00 Bem vinda
10.10 Novo RAD Studio XE5. Programação Nativa para Android em acção
10.50 Pausa
11.00 Serviços de dados como fundamento das aplicações multi-dispositivo11.35 Quais são os erros mais comuns quando migramos uma aplicação para um ambiente móvel?
11.55 Perguntas e respostas
WWW.DANYSOFT.PT
Fundada em 1990Mais de 20.000 clientes na Europa e América
Especializados no mundo da programação+20 anos apostando pelo Delphi, C++Builder
e na comunidade ibéricaSensíveis à situação
Preço mínimo garantido Descontos em licenças e manutenção
Novos tipos de formação e consultoríaValor adicional com formação, eventos,
utilidades, livros, vídeos e artigos
WWW.DANYSOFT.PT 4
Fundada em 19933.2 Milhões de clientes
500+ funcionários em 29 países5 Centros de excelência R&D
Vendas a nível mundial e suporteApós a aquisição da Borland, confia na Danysoft
para o mercado ibérico
Embarcadero Technologies
10/4/2013
2
WWW.DANYSOFT.PT
PRODUCTOS EMBARCADERO
Programação de aplicaçõesProgramação de bases de dados, administração e optimização de rendimento
Arquitectura e modelação de dados
Bases de dados implementadas e de grupo de trabalho
RAD StudioC++BuilderDelphiHTML5 Builder
ER/Studio Data ArchitectER/Studio Portal
ER/Studio Software ArchitectER/Studio Business Architect
DB Power StudioDBArtisanRapid SQLDB OptimizerDB Change Manager
InterBase
WWW.DANYSOFT.PT
3 Milhões de programadores Delphi/C++ …• 9.7 Mil millhões de linhas por ano
• 100.000 Aplicações Windows
• 80% menos de código requerido- 1.2€por linha de código efectivo
• 47.2€ mil milhões de poupança emprogramação
O MUNDO MULTIDISPOSITIVO EMQUE VIVEMOS…
Análise da situação
WWW.DANYSOFT.PT
EVOLUÇÃO DO PANORAMA DO AMBIENTE DE CLIENTE
Windows
1999
Windows & Web
2005 2
W
10/4/2013
3
WWW.DANYSOFT.PT
2013: A REVOLUÇÃO DO CLIENTE
Windows MóvilMac
Panorama multidispositivo sem precedentes hoje em dia
1 Mil Mill. 65 Milhões +1 Mil Mill
WWW.DANYSOFT.PT
A REVOLUÇÃO DO CLIENTE
Panorama multidispositivo sem precedentes hoje em dia
WWW.DANYSOFT.PT
QUANDO É QUE AS TABLETS IRÃO ULTRAPASSAR OS NOTEBOOKS?
11
Julho 2012Os analistas prevêem que serão ultrapassadas em 2016
Setembro 2012Os analistas prevêem que serão ultrapassdas em 2015
Janeiro 2013Os analistas prevêem que serão ultrapassadas em…
WWW.DANYSOFT.PT
QUANDO É QUE AS TABLETS IRÃO ULTRAPASSAR OS NOTEBOOKS?
12
Este ano.
10/4/2013
4
WWW.DANYSOFT.PT
2013+
A diversidade de clientes será cada vez maior
WWW.DANYSOFT.PT
ENVIOS DE PORTÁTEIS E MÓVEIS
WWW.DANYSOFT.PT
ENVIOS GLOBAIS DOS SMARTPHONES
WWW.DANYSOFT.PT
TABLET OS, REPARTIÇÃO DE ENVIOS E MERCADO Q2 2013
10/4/2013
5
WWW.DANYSOFT.PT
MUDANÇA… É UMA CONSTANTE EM TODOS OS MEIOS
<< MORE TO COME HERE >>
DEMO
BLOQUEADO NO AMBIENTE DE TRABALHO DO PC?
WWW.DANYSOFT.PT
QUAL É O SIGNIFICADO DESTAS MUDANÇAS TODAS PARA TI?Tu
A Tua equipa
O Teu negócio
10/4/2013
6
WWW.DANYSOFT.PT
ESTAS MUDANÇAS E… TUAs tuas opções de carreira ou…São ampliamente aumentadasDiminuem continuamente, assim que agarra-te com muita força ao teutrabalho
A tua participação no projectoDirige-te para os melhores projectos novosTens a oportunidade de ser o “heroí” da programação de negócio Inovação em aspectos que nunca imaginaste
OuTrabalhas mais e mais em projectos antigos e herdados
WWW.DANYSOFT.PT
ESTAS MUDANÇAS E… A TUA EQUIPA
Todos com o mesmo critério que “tu”
Divide-se no mesmo número de plataformas que existemActualmente isto significa quatro grupos (Win, Android, iOS, OS X)Como gestionarias isso…Orçamentos 3x/4x e programadores 3x/4xMembros desmotivados irão sair à procura de melhores projectos e perspectivas
WWW.DANYSOFT.PT
ESTAS MUDANÇAS E…O TEU NEGÓCIOOs clientes esperam que estejas sempre aí Interacção 24/7 e imediata é agora pedida no negócios de todos os tamanhosNaqueles que se GANHAN, e naqueles que não se PERDEM
Custos… O custo da transação e compra por impulsoRetenção e lealdade do clienteOportunidade completamente perdida se não se aproveitam os tempos do mercadoSer totalmente excluído da demografia do grande consumo
WWW.DANYSOFT.PT
SELECÇÕES ACTUAIS DE FERRAMENTAS
AppleGoogle
Microsoft
Apenas umdispositivo
Multidispositivo
Baseadas emscriptsRealmente
nativasVendor Tools
Web TechBased Tools
HTML5 e JavaScript
10/4/2013
7
WWW.DANYSOFT.PT
PRÓS E CONTRAS DAS FERRAMENTAS MULTIDISPOSITIVO –FERRAMENTAS DE FABRICANTES VS FERRAMENTAS BASEADAS NA WEB
PrósInterface NativaRendimento NativoSeguras
ContrasMúltiplas bases de códigoEquipamentosmúltiplosMaiores custos de programação
AppleGoogle
Microsoft
Apenas umdispositivo
Realmente nativas
Multidispositivo
Baseadas emscripts
HTML5 e JavaScript
WWW.DANYSOFT.PT
$ $$ $
C# or C++
.NET or MFC
C++ or Obj-C
OSX SDK
Objective-C
iOS SDK
Java
Android SDK
Múltiplas linguagens, múltiplas bases de código
2
APROXIMAÇÃO DAS FERRAMENTAS DE FABRICANTES À PROGRAMAÇÃOMULTIDISPOSITIVO
WWW.DANYSOFT.PT
PRÓS E CONTRAS RELATIVAMENTE AO MULTIDISPOSITIVO –FERRAMENTAS BASEADAS EM WEB
PrósUma equipaMenor custo de programaçãoMais rápido no mercado
ContrasRendimento scriptInterface não nativoInseguras
AppleGoogle
Microsoft
Apenas umdispositivo
Realmente nativas
Multidispositivo
Baseadas emscripts
HTML5 e JavaScript
WWW.DANYSOFT.PT
$ $ $JavaScript or C#
PlatformSDK
PlatformSDK
PlatformSDK
Uma linguagem, múltiples bases de código
2
SOLUÇÕES MÓVEIS DE CÓDIGO VIRTUAL
10/4/2013
8
WWW.DANYSOFT.PT
MULTIDISPOSITIVO REALMENTE NATIVOMultidispositivo
Realmente NativoEmbarcadero
AppleGoogle
Microsoft
Un solo dispositivo
Realmente nativas
Multidispositivo
Basadas en script
HTML5 y JavaScript
WWW.DANYSOFT.PT
MULTIDISPOSITIVO REALMENTE NATIVOMultidispositivo
Realmente NativoEmbarcadero
AppleGoogle
Microsoft
Apenas umdispositivo
Realmente nativas
Multidispositivo
Baseadas em scripts
HTML5 e JavaScript
PrósInterface NativaRendimento NativoSeguras
PrósUma equipaMenor custo de programaçãoMais rápido no mercado
DEMOERROS DOS PROGRAMADORES
AO MUDAREM-SE PARA DISPOSITIVOS MÓVEIS
10/4/2013
9
WWW.DANYSOFT.PT
Tentar encaixar uma experiência de computador num dispositivo móvelOs dispositivos móveis não têm as facilidades do PC incluindo• Ecrã grande para uma fácil visualização• Uma caché robusta em memória para um processamento rápido de dados• Teclado externo para ser fácil teclarOs programadores cosntroiem programas complexos nos dispositivos móveis:• Com ecrãs confusos• “Drenando” os recursos do dispositivo• Impactam a experiência de usuário
Como evitá-lo• Identificar as acções mais valiosas e que são mais apropriadas de usar na app
• Desenhar apenas para esses requisitos• Assegurar-se de que os usuários as podem completar com um mínimo de “taps”• Establecer um máximo de tolerância nos pasos que se têm que tomar para completar
• Aprender a fórmula das apps mais comuns e ajustar-se a elas até que sejamos realmente especialistas
ERRO #1
WWW.DANYSOFT.PT
ERRO #1: COMO EVITÁ-LO COM O RAD STUDIOTemplates de App para começarDistribuições mais comuns para os dispositivos móviles (telefones e tablets) Templates com detalhes de mestre
Componentes fáceis de usar, para uma programação consistente e rápida
Suporte de design para diferentes tipos de dispositivos, “form factors”, resoluções e orientações.
WWW.DANYSOFT.PT
Não converter a experiência de usuário na prioridade• Com centenas de milhar de apps, os usuários têm muitas opções• Se a tua app não é fácil de usar, as pessoas irão evitá-la• Os usuários não voltam depois de uma experiência inicial pobre• Recorda – nem todos os dispositivos são iguais!
Como evitá-lo• Centra-te numa boa experiência de usuário e design• Mostra aos usuários chave, protótipos da app nos dispositivos actuais para obter
um “feedback” regular• Sê consciente das zonas tácteis• Entende como o teclado afecta o teu design
ERRO #2
WWW.DANYSOFT.PT
ERRO #2: COMO EVITAR-LO COM O RAD STUDIO
• Prototipagem rápida de modo que tu (e o teu cliente) possam revisar-lo a cada paso
• Utiliza o sensor de comportamento e de dispositivos para descobrirdinâmicamente o que se encontra disponível no dispositivo
10/4/2013
10
WWW.DANYSOFT.PT
ERRO # 3Desperdiçar recursos entre a app, o OS e o Hardware
• Deves poupar cada milisegundo possível e utilizar todas as capacidades relevantes oferecidas• Uma plataforma de programação móvel que se abstraí dos detalhesdo dispositivo apenas trabalha com a funcionalidade comum a todos eles
Como evitá-lo• Constroí uma aplicação realmente nativa sem que a tua aplicação esteja
desenhada para um sistema operativo específico• Uma aplicação nativa está optimizada para um hardware em particular • Evita os “wrappers” como os “JVMs” que se abstraem do controlo das
capacidades em detalhe e programa o dispositivo quando seja possível
WWW.DANYSOFT.PT
ERRO #3: COMO EVITAR-LO COM O RAD STUDIO
• Constroí aplicações realmente nativas• Truques e pistas de rendimento• … paginação?• Maior facilidade para evitar os erros de design da App
WWW.DANYSOFT.PT
Construir apps diferentes para plataformas diferentesConstruir diferentes apps com códigos separados pode produzir problemas diferentes• Muitos dos teus usuários têm múltiplos dispositivos• A app comporta-se de modo diferente para cada dispositivo• As características novas e a correcção de erros em momentos diferentes• Os resultados em cenários sem sincronização – confusão dos usuários• Múltiplas bases de código produzem mais programação e maior sobrecarga de trabalho
Como evitá-loApoia-te em apenas uma base de código que é compilada e optimizada para diferentes plataformas e dispositivos• Criarás uma experiência de usuário mais consistente nos dispositivos suportados• Realizar poupanças significativas com menos recursos para a programação, melhoras e
solução de erros em apenas um base de código
ERRO #4
WWW.DANYSOFT.PT
ERRO #4: COMO EVITÁ-LO COM O RAD STUDIO
Uma linguagem
Uma base de código
Uma plataforma de aplicações
10/4/2013
11
WWW.DANYSOFT.PT
ERRO # 5Não redobrar esforços na segurança
Confiar na segurança do dispositivo ou da rede como protecção da apppode ser periogoso• A app deve tomar medidas activas para proteger os dados
residentes no dispositivo• A app deve tomar medidas activas para proteger os dados
transferidos e as chamadas internas da app• Java e JavaScript são objetivos notórios dos hackers
Como evitá-lo• Para as interacções chave, codifica especificamente para o dispositivo• Incluí segurança própria para reduzir os risgos de ataques de terceiros• Encripta os dados sensíveis armazenados no dispositivo
WWW.DANYSOFT.PT
ERRO #5: COMO EVITÁ-LO COM O RAD STUDIO
• Mostrar vistas do CPU para provar as aplicações• Eventos de encriptação com clientes móveis de DataSnap?
TOMAR CONTROLO DA PROGRAMAÇÃONATIVA APENAS COM UMA BASE DE CÓDIGO
NO AMBIENTE MULTI DISPOSITIVO WWW.DANYSOFT.PT
$
FutureFutureC++ or Delphi*
FM Framework
Uma equipa, uma base de código
RAD STUDIO XE5
10/4/2013
12
WWW.DANYSOFT.PT
DELPHI FIREMONKEY NO ANDROID E IOSEstilos “Nativos” e personalizados
Aplicações realmente nativas
Modelo de programação e componentes Delphi
WWW.DANYSOFT.PT
PROGRAMAÇÃO VISUAL
WWW.DANYSOFT.PT
FRAMEWORK BASEADO EM COMPONENTES
WWW.DANYSOFT.PT
LINGUAGEM COM CARACTERÍSTICAS MODERNAS
Propiedade-Evento-Método
Conta de referências automática
Interfaces
Atributos
Genéricos/Colecções
Métodos anónimos (funções lambda/”closures”)
RTTI rico (introspecção/reflexão)
10/4/2013
13
WWW.DANYSOFT.PT
ARQUITECTURA COMUM DE COMPILAÇÃO
49
Open IR
C/C++*
Delphi
Intel
ARM
*) C++ support for ARM scheduled for later 2013
WWW.DANYSOFT.PT
ARQUITECTURA BASEADA EM COMPONENTES FM
Linguagem
3D API
PlatformaAmbiente de trabalho Dispositivos móveis
Framework
WWW.DANYSOFT.PT
COMPILAÇÃO CRUZADA E PACOTES
App Sources
FM Framework
Cocoa SDK Native Developer Kit
.app in IPA .so in APK
WWW.DANYSOFT.PT
“WIZARD” DE APLICAÇÃO MÓVEL INCORPORADO
Começa com uma aplicação FireMonkey vazia HD ou 3D
Elige entre templates Tabbed Application, Header/Footer e Master/Detail Templates
10/4/2013
14
WWW.DANYSOFT.PT
OPÇÕES DE IMPLEMENTAÇÃO NO IDE PARA ANDROIDImplementa o Android apps no EmuladorQualquer dispositivo AVDImplementa as apps Android no dispositivoDebug depura/implementa no dispositivo
Ad-hoc Distribuí o APK para qualquer lugar
App Store Implementa uma app para uma loja como Play ou Amazon
WWW.DANYSOFT.PT
OPÇÕES DE IMPLEMENTAÇÃO NO IDE PARA IOSImplementa apps iOS no SimulatoriPhone (Retina/no-Retina)iPhone 5 (Retina/no-Retina)iPad (Retina/no-Retina)
Implementa apps iOS no dispositivoDebug (depura/implementa no dispositivo)Ad-hoc (distribui dentro da tua própia empresa)App Store (implementa na App Store)
WWW.DANYSOFT.PT
DEFINIR CONFIGURAÇÕES DA APLICAÇÃO• Define o suporte do dispositivo em Project->Options• Selecciona os ícons para as “app stores” (múltiplas resoluções)
em Project-> Options
WWW.DANYSOFT.PT
ESTILOS NATIVOS
10/4/2013
15
WWW.DANYSOFT.PT
ESTILOS ANDROID
57
• Holo Light (Estilo Android por defeito)
• Holo Dark (Estilo Android personalizado)
• Ambos incluiem suporte incorporado para todas as resoluciones suportadas no Android (1x – 3x)
WWW.DANYSOFT.PT
CONTROLOS NATIVOS
Mensagens de alertaSelectores personalizadosSelector de dataMarcador telefónicoTeclados iOSEdição de texto: TMemo y TEditCortar/Copiar/Colar/Zoom
WWW.DANYSOFT.PT
GESTÃO DO LAYOUT
Alignment
Anchors
Form Family para o carregamentocorrecta do formulário dependendo do dispositivo quando programamos para telefones vs tablets ou na horizontal ouvertical
WWW.DANYSOFT.PT
GESTOS
SwipeTapPinch & ZoomTap & HoldDouble-Tap
10/4/2013
16
WWW.DANYSOFT.PT
ACÇÕES DA LIVRARIA DE MEIOS• Aceder à app. Câmara
• Aceder à livraria de fotos
• Compartir conteúdo p.ej. fotos via Mensagem(SMS), Mail, Facebook, Twitter etc.
• Transição de Slides para separadores
WWW.DANYSOFT.PT
COMPONENTES SENSORSensor de localização (GPS)
Sensor de movimento (Acelerómetro)
Sensor de orientação (Giroscópio)
WWW.DANYSOFT.PT
SENSOR DE LOCALIZAÇÃO
• Obtém a localização do teu dispositivo usando a latitude e a longitude• Utiliza geo codificação inversa para conversão de datos em direcções legíveis• Funciona em Win/Mac/iOS/Android • Podem ser usadas dentro do componente WebBrowser
Mais frequentementeusado em aplicaçõesque necessitam conhecera localização
WWW.DANYSOFT.PT
SENSOR DE MOVIMENTO (ACELERÓMETRO)
Usado para detectar o movimiento na tua aplicação segundo o movimento do teu dipositivo
Obtém os valores de aceleração e aceleração angular (X, Y, Z)
Determina a velocidade
Determina o movimento
10/4/2013
17
WWW.DANYSOFT.PT
SENSOR DE ORIENTAÇÃO (GIRÓSCOPO/BÚSSOLA)
Obtém os valores de inclinação
Obtém os valores de distância X, Y, Z
WWW.DANYSOFT.PT
SERVIÇOS MÓVEISCentro de notificação
... E mais
WWW.DANYSOFT.PT
CENTRO DE NOTIFICAÇÃONovo componente no XE5
Suporta vários tipos de notificações em iOS, Android e Mac OS X
WWW.DANYSOFT.PT
CÂMARAFornece acesso aos sensores de câmara:
Activar o flash
Obtém a posição do sensor, etc.
Acede à traseira e frontal
Tira fotos
10/4/2013
18
WWW.DANYSOFT.PT
TIMEEDITNovo componente FireMonkey no XE5
Suportado no Windows, Mac, iOS e Android
Selector nativo em iOS e Android
WWW.DANYSOFT.PT
CARACTERÍSTICAS DO TLISTVIEW NO XE5“Swipe” para apagar
Vários modos de visualização e edição
Vários estilos de acessórios
Animações em modo de edição
Filtro de procura
LiveBindings
WWW.DANYSOFT.PT
TImage foi actualizado
A propriedade MultiResBitmap foi adicionada
As opções 1x e 2x são mostradas por defeito
Os usuários podem adicionar fácilmente as suas, ej. 1.5x, 3x etc.
SUPORTE DE IMAGEM MULTIRESOLUÇÃO
WWW.DANYSOFT.PT
MAIS COMPONENTES MÓVEISTWebBrowser para navegação web implementada
TMagnifier usado com a edição de texto, embora pode ser também ser utilizado comoutros componentes
TCamera – acesso à câmara frontal/traseira, flash, etc.
TListBox para listas curtas sem scroll ou muito pouco e estilo comcabeçalho/rodapé/grupo/procura
TListView para listas compridas e com scroll ligadas a dados
TSwitch para seleções on/off
TProgressBar para um controlo de visualização flexível
TSpeedButton com variedade de icons … e mais!
10/4/2013
19
WWW.DANYSOFT.PT
Device
PRONTO PARA A EMPRESA
73
FM
InterBase or SQLLite
FireDAC
DataSnap
OracleMSSQLDB2Sybase& more...
YourApp
ServerMethods
FireDACFireDAC
C++ or Delphi
WWW.DANYSOFT.PT
Client Devices BAAS
Enterprise BackendDataSnap MEAP N-tier
WWW.DANYSOFT.PT
MULTICAMADA COM O DATASNAPAcedendo remotamente a serviços vía REST/JSON sobre SOAP, em dispositivos própios ou na nuvem
Conectar os dados da empresa ao dispositivo móvel
DataSnap Server DatabaseDelphi for mobile app
WWW.DANYSOFT.PT
FIREDAC
• Componentes universais de acesso a dados para programaçãosobre qualquer base de dados• para Delphi e C++Builder
• Alto-rendimento, fáceis de usar, conectividade empresarial• Acesso a dados universal
• Mas com muitas características específicas
10/4/2013
20
WWW.DANYSOFT.PT
BASES DE DADOS LOCAISSQLite IBLite InterBase ToGo
Gratís Gratís Comercial
Algumas funções Algumas funções Todas as funções
Sem segurança Sem segurança Encriptação segura
Armazenagem simples SQL-92 RDBMS completa
SQL-92 RDBMS completa
Leitura/escrita simples Multi leitura/escrita rápida
Multi leitura/escrita rápida
WWW.DANYSOFT.PT
VISUAL LIVEBINDINGSLiga controlos a dados
Prototipagem rápida
WWW.DANYSOFT.PT
BAAS?Backend como serviço
Pilha de clientes REST
Abstracção BAAS
Implementação Kinvey
Implementação “Parse”
eg.. Notificações “Push”
WWW.DANYSOFT.PT
PILHA DE CLIENTE REST XE5 Componentes REST Para programar aplicações de cliente REST
RESTDemos.exe Utiliza os componentes REST para aceder a alguns fornecedores diferentes
RESTDebugger.exe Utiliza os componentes REST para executar petições “ad hoc”
10/4/2013
21
WWW.DANYSOFT.PT
REST CARACTERÍSTICAS DO COMPONENTECliente HTTP compreensivo Execução Assíncrona Conexão Proxy HTTPS
Autenticação Basic, OAuth1, OAuth2
JSON Parsing, Formatting JSON to TObject, TObject to JSON
Prototipagem Rápida LiveBindings Execução de tempo de Design
RESUMO
WWW.DANYSOFT.PT
RESUMOMultidispositivo significa que não temos que suportar vários projectos para desenvolver aplicações nativas em vários dispositivos (Android, iOS, Windows e Mac).
Apps Realmente nativas permitem criar aplicações livres de scripts e optimizadas para a plataforma subjacente – cria aplicações mais ricas e rápidas que os usuáriosgostam.
O caminho mais rápido para criar apps para iOS e Android com programaçãovisual com um “framework” visual completo.
Segurança herdada está incorporada ao codificar aplicações que se ejecutamdirectamente no dispositivo sem apontar “runtimes” virtuais.
Plataforma multidispositivo empresarial que significa conectividade a bases de dados empresariais, tecnologia “middleware” nas nossas instalações e conexões para serviços BAAS incluídos no producto.
WWW.DANYSOFT.PT
RESUMO: O MUNDO MULTIDISPOSITIVO
O mundo multidispositivo em que vivemos… uma análise da situação
Bloqueado ao ambiente de trabalho do PC?
Os cinco erros que comentem os programadores quando passama dispositivos móveis e como evitá-los
Tomar controlo da programação nativa apenas com código base no ambiente multi dispositivo
10/4/2013
22
WWW.DANYSOFT.PT
APPS PARA CADA DISPOSITIVO
http://www.smartinsights.com/mobile-marketing/mobile-marketing-analytics/mobile-marketing-statistics/
VALOR ADICIONAL PARA OS ASSISTENTES
10% descontopor assistir ao evento
MUITO OBRIGADOMariana Araújo707 500 [email protected] www.danysoft.pt