Boas práticas no desenvolvimento de aplicações para Windows Mobile

Slides:



Advertisements
Apresentações semelhantes
Introdução à plataforma
Advertisements

Mini-curso desenvolvendo aplicações com Zend Framework
Análise do Rational Suite
DOMÓTICA Protocolo de comunicação LonWorks ou LON (Local Operating Network)
Bem-vindo(a)! ACÇÃO 17 Primeiros Passos na Utilização das TIC.
Introdução aos Sistemas Distribuídos
Criar uma Aplicação Web em ASP.NET v Tipos de Sites Web gerados pelo VS2005 File-system Web sites Ficheiros armazenados num directório local É utilizado.
Web Services Um Web Service é um bloco de software que pode ser acedido pela Internet e usado remotamente por outras aplicações Infra-estrutura para a.
Gestão de Redes e Sistemas Distribuídos
2 Período de realização Julho de 2007 a Julho de 2008 Entidades envolvidas Universidade de Aveiro – Dep. de Comunicação e Arte Inova-Ria – empresa associada:
© 2005, it - instituto de telecomunicações. Todos os direitos reservados. LOcalização de PESsoas em Ambientes Interiores 1º Workshop TELESAL 23 de Novembro.
Centrado na arquitetura
Introdução aos Serviços Web
TRABALHO DE CONCLUSÃO II PUCRS – Faculdade de Informática
Documentação da Neptus Framework
Mobilidade na Internet
Ana Duarte nº1; Ana Marques nº2
Este software destina-se à gestão da área de expediente no que respeita a entradas e saídas de correspondência, emissão de ofícios e outros textos A Gestão.
Conhecendo o Visual Studio.NET
Configuração de manutenção
História da Internet 1º A Internet foi idealizada na década de 60 nos Estados Unidos. O objectivo inicial, era o enorme potencial de partilha de informações.
ETHERNET - Engenharia de Tráfego em Redes Ethernet baseadas na Norma IEEE 802.1s MSTP Amaro de Sousa Instituto de Telecomunicações DETI, Universidade de.
Sistema de monitorização e controlo baseado em módulos Zigbee
Objectivos do Curso de Engenharia Informática da ESTT/IPT
DOCUMENTO CONFIDENCIAL DA MICROSOFT Set 2009 | Página 1 | Apresentação para BDMs.
Visão Geral PRO.NET.
André Freitas, Luís Silva, Ricardo Oliveira Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática 3ºAno Disciplina.
Tecnologias.NET Equipe: Ayrton Johab Rejane Roosevelt Wanessa.
Framework gpnet.
Redes Aula 7 Professor: Marcelo Maia.
Gestão de Redes e Sistemas Distribuídos Teresa Maria Vazão Fevereiro 2003 IST/INESC Contactos:IST/Tagus-Park Tel:
Gestão de Redes e Sistemas Distribuídos
Gestão de Redes e Sistemas Distribuídos Teresa Maria Vazão Julho 2005 Ferramentas de Gestão Plataformas de Gestão IST/INESC-ID Contactos: IST/Tagus-Park.
Posto de Abastecimento Seguro
SERVIDORES. Um Servidor é: Servidor é um computador que gere ficheiros, dados, impressoras, faxes e outros recursos a outros computadores. O servidor.
Apresentação do Sistema
MVP Virtual Conference 2013
XIV Jornada de Cursos .NET com C# Antônio Júnior Bruno Inojosa.
Trabalho realizado por: Leandro, Ruslana e Nataliya.
WorkAbout PRO A nova geração de um sucesso. WorkAbout Pro Terminada que está a vida do WorkAbout Mx na Europa, a Psion Teklogix apresenta através da sua.
Aplicativo de Interação Acadêmica
TCP/IP.
Prof.°: João Henrique Disciplina: SOR II
Virtualização/Hipervisão/Servidores Microsoft
Sistema de Gestão de Segurança da Informação
Gestão SNMP. Planeamento Montagem e Manutenção de Redes e Equipamentos Informáticos 2 SNMP- Simple Network Management Protocol Nos primeiros dias da Arpanet,
Ciclo de Seminarios Técnicos – PET Computação Quarta-Feira - 15/06/2011
O que são, quais existem e suas características.
Gestão de Redes e Sistemas Distribuídos Enquadramento e Estruturação da Gestão 2004/2005 Teresa Vazão IST/INESC Contactos:IST/Tagus-Park
Prof: Lídia Henriques 7º Ano Objetivos Utilizar adequadamente o computador e/ou dispositivos eletrónicos similares que processem dados. Introdução.
Mini Curso.
Desenvolvimento Global de Software Mestrado de Informática / UFPB Francilene Procópio Garcia, D.Sc. Configuração do Processo - Parte.
Apresentador Cargo. Tecnologias de Classe Corporativa Experiência Administrativa Sob Medida Local de Trabalho Remoto da Web Potencializa Investimentos.
SGPC - Sistema de Gestão de Panificadora e Confeitaria
WebPTM Web Project and Time Manager Autor: Daniel Nicoletti Orientador: Prof. Dr. Carlos Miguel Tobar Toledo Co-Orientador: Murilo Woigt Miranda PONTIFÍCIA.
SGPC - Sistema de Gestão de Panificadora e Confeitaria
Student Tech Clubs Desenvolvimento WEB Antonio Ladeia Graduando em Tecnologia em Análise e Desenvolvimento de Sistemas Instituto Federal da Bahia Introdução.
Prof. Sidney Galeote. 2 www. prasabermais. com  Visão Geral sobre a dimensão de qualidade “performance”  Custo da qualidade  Como a performance deve.
Sobre a Prime Control A Prime Control é um Centro de Excelência em Qualidade de Software. Nossa missão é desenvolver, aperfeiçoar e realizar serviços.
UCSal – Tecnologia em Análise e Desenvolvimento de Sistemas Programação para Aplicações WEB Profa. Semíramis Assis
Tecnologias para Mobilidade
1 Criação e publicação de um site utilizando o Website e Cloud Site.
JBuilder Daniel Almeida, Dayene Mendes, Gustavo Ribeiro, Thiago Dias.
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
Gerenciamento de Redes
LINGUAGEM DE PROGRAMAÇÃO I
Apresentação Comercial Gateways SIP/GSM. Seus custos com telefonia celular estão altos? A TeiQ Solution pode ajudar para solucionar este problema!
Evolução da Internet Introdução Internet Service Providers World Wide Web Protocolos Software para Internet A internet é uma rede de redes. A primeira.
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO CURSO DE CIÊNCIA DA COMPUTAÇÃO Redes de Computadores Ferramenta NTop (Network Traffic Probe) Explorador.
Transcrição da apresentação:

Boas práticas no desenvolvimento de aplicações para Windows Mobile Pedro Lamas pedro.lamas@pocketpt.net plamas@microfil.pt

Pedro Lamas .NET Framework & CF Developer Administrador na comunidade Windows Mobile PocketPT.net Orador em eventos tecnológicos (Microsoft TechDays & DevDays, Seminários PocketPT.net, Faculdades…) Profissionalmente, passei por empresas como LiveSolutions e Indra, actualmente Team Leader na Microfil “Tecnogeek”

Eu tenho um sonho…

Problemas, problemas e mais problemas… Velocidade de processamento Memória disponível Tamanho e orientação do ecrã Entrada de dados (teclado, SIP, …) Capacidades de comunicação (GSM, UMTS, bluetooth, internet, …) Brilho do ecrã Autonomia energética (bateria disponível, stand-by, …) …

Considerações no desenho da Arquitectura de aplicações móveis Construir um Rich Client, um Thin Web Client, ou uma Rich Internet Application (RIA) Determinar que dispositivos a nossa aplicação deverá suportar: WM Standard, WM Professional Ter em conta se a aplicação necessitará de ligação de dados e prever cenários de baixa largura de banda disponível Desenhar um interface de utilizador adequada com as necessidades do dispositivo móvel Desenhar uma arquitectura que permita reutilização e sustentabilidade da solução Ter em conta os baixos recursos disponíveis: memória disponível, tempo de bateria, velocidade de processamento…

Por onde passa a solução? Desenvolver sobre padrões provados e praticados Utilizar Frameworks

Frameworks Disponíveis Smart Client Software Factory http://tinyurl.com/cvus94 Windows Mobile LOB Solution Accelerator 2008 http://tinyurl.com/b5utkj Smart Device Framework http://tinyurl.com/cmtfaq

Frameworks Disponíveis Smart Client Software Factory http://tinyurl.com/cvus94 Windows Mobile LOB Solution Accelerator 2008 http://tinyurl.com/b5utkj Smart Device Framework http://tinyurl.com/cmtfaq

Smart Client Software Factory Mas afinal, o que é isto? Conjunto de padrões e linhas de desenvolvimento (Patterns and Practices) Mantida pela própria comunidade em regime de código aberto no CodePlex Inclui blocos de código para os principais paradigmas presentes no desenvolvimento de aplicações

Características da Smart Client SF O que está incluído Padrões e blocos de código para os seguintes aspectos: Autenticação e Autorização Chaching Comunicação Gestão de Configurações Acesso a Dados Dispositivo Gestão de Excepções Logging Porting Sincronização Testes Interface de Utilizador Validação Criem aplicações que funcionam bem usando o D-PAD No Client Software Factory havia o OAC (Orientation Aware Control), que gera muito código extra Desenhem sempre a pensar no Standard (sem Touch Screen) Tenham sempre em atenção o tamanho e a mudança de orientação do ecrã: mantenham-se pelos Stack Controls Application Settings usa LINQ to XML (XElement) Lembrem-se: a Microsoft não lhes dá ferramentas para escrever grande código, mas antes muita corda para se enforcarem! Data Layer é um projecto separado (permite a troca rápida de motor de base de dados) As pessoas há muito que pedem que as bases de dados de SQL Compact tenham coisas como Stored Procedures e Triggers, esta é a resposta! Não há grande ganho de performance, mas de separação de código! Triggers estão em managed-code através da Data Layer A Data Layer gere o estado das entidades (objectos) e como tal eles tratam de todas as operações da base de dados

Frameworks Disponíveis Smart Client Software Factory http://tinyurl.com/cvus94 Windows Mobile LOB Solution Accelerator 2008 http://tinyurl.com/b5utkj Smart Device Framework http://tinyurl.com/cmtfaq

Mobile Accelerator 2008 Mas afinal, o que é isto? Uma aplicação móvel para a gestão de uma cadeia de fornecimento de produtos + gestão de stocks e inventário + gestão dos trajectos de entrega Baseada no .NET Compact Framework 3.5, SQL Server Compact 3.5, Visual Studio 2008, Windows Mobile 6 Standard SDK, SQL Server 2008 e Exchange Server 2007 Incluí as seguintes características: Mais de 5.000 linhas de código comentado Uma base de dados em SQL Server 2008 Mais de 100 páginas de documentação Um ficheiro de ajuda de toda a API

Características do Mobile Accelerator 2008 O que está incluído Um único executável a servir diversas plataformas Independência do Interface de Utilizador Application Settings Introdução de limitações sobre a camada de aplicação Stored Procedures e Triggers próprios Entidades de Negócio genéricas e com metodologias de monitorização de estado Criem aplicações que funcionam bem usando o D-PAD No Client Software Factory havia o OAC (Orientation Aware Control), que gera muito código extra Desenhem sempre a pensar no Standard (sem Touch Screen) Tenham sempre em atenção o tamanho e a mudança de orientação do ecrã: mantenham-se pelos Stack Controls Application Settings usa LINQ to XML (XElement) Lembrem-se: a Microsoft não lhes dá ferramentas para escrever grande código, mas antes muita corda para se enforcarem! Data Layer é um projecto separado (permite a troca rápida de motor de base de dados) As pessoas há muito que pedem que as bases de dados de SQL Compact tenham coisas como Stored Procedures e Triggers, esta é a resposta! Não há grande ganho de performance, mas de separação de código! Triggers estão em managed-code através da Data Layer A Data Layer gere o estado das entidades (objectos) e como tal eles tratam de todas as operações da base de dados

Características do Mobile Accelerator 2008 O que mais está incluído Cache Global Error Logging Network Availability Projecto de instalação CAB Localização Mudança de Língua LINQ A memória já não é um grande problema, mas mantém-se os 32 MB de limite do tamanho de um processo Registo de Erros utiliza um básico StreamWriter, nada de muito especial! O objectivo é apenas de TER registo de erros. Estudem a possibilidade de enviar erros (webservice para registo dos erros!) As aplicações móveis são exactamente isso: móveis! Daí que perda de sinal/internet será de ser esperado! Fazer um simples WebRequest a um URL, e se devolver ok, então tudo está ok!  Mostrar ficheiro CAB Já vi pessoas a fazerem localização à mão de formas diferentes… aqui vão ver ainda outra forma! LINQ to SQL no mobile!!

Frameworks Disponíveis Smart Client Software Factory http://tinyurl.com/cvus94 Windows Mobile LOB Solution Accelerator 2008 http://tinyurl.com/b5utkj Smart Device Framework http://tinyurl.com/cmtfaq

Smart Device Framework Mas afinal, o que é isto? Funciona como uma extensão à própria .NET Compact Framework Acesso rápido a API’s do Windows Mobile através de classes Managed A versão 1.4 é mantida como projecto partilhado em código aberto A actual versão 2.0 é mantida pela OpenNETCF LLC em código fechado, mas pode ser adquirida licença para o código

Características da Smart Device Framework O que está incluído Classes Managed para uma série de componentes Unmanaged na própria .NET CF OpenNETCF.Phone (marcar núm., registo, …) OpenNETCF.Phone.Sim (mensagens, contactos, …) … Alguns extras específicos e que poderão ser de grande utilidade OpenNETCF.Ftp (FtpWebRequest - acesso a FTP Server) OpenNETCF.Smtp (envio de mensagens por SMTP)

Características da Smart Device Framework O que mais está incluído A versão comercial (paga!) inclui ainda: Suporte Intellisence para o IDE (Visual Studio) Documentação integrada de todas as classes Templates pré-configurados para projectos Acesso rápido a serviços online directamente do IDE Todo o código-fonte da Framework Suporte técnico

Conclusão! Utilizem as Frameworks e Patterns disponíveis como uma base para o vosso esforço de desenvolvimento de aplicações móveis Façam uso apenas do que necessitam para colocar as vossas aplicações em funcionamento Tenham sempre um olhar crítico sobre os padrões que pretendem utilizar

Q&A

Ligações Pedro Lamas PocketPT.net Microfil www.pedrolamas.com pedrolamas@gmail.com PocketPT.net www.pocketpt.net pedro.lamas@pocketpt.net Microfil www.microfil.pt plamas@microfil.pt

Obrigado!