Mostrando postagens com marcador jedi. Mostrar todas as postagens
Mostrando postagens com marcador jedi. Mostrar todas as postagens

20 outubro 2008

Uso da Orientação a Objetos com Java nas aplicações Móveis

Programar para celular usando a orientação a objetos pode prejudicar a performance da aplicação? Essa questão me ocorreu alguns anos atrás (2004-2005), quando os celulares eram bem mais limitados do que hoje. Mas a conclusão era que criar muitas classes poderiam prejudicar o desempenho por questões obvias da pouca memória disponível. Hoje no entanto, os celulares já tem mais recursos computacionais. Mas ainda requer cautela ao projetar tais aplicações usando OO para não abusar do bom senso. A menos que não deseje portar tal aplicação para nenhum outro dispositivo além do seu smartphone. :)

Segundo o wikipédia, "A orientação a objetos, também conhecida como Programação Orientada a Objetos (POO) ou ainda em inglês Object-Oriented Programming (OOP) é um paradigma de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de objetos."

Um video interessante sobre Orientação a Objetos que recomendaria para curiosos.


Não dá para sair criando muitos objetos como gostaríamos. :( Neste caso, eu penso que é mais vantagem tentar avaliar o custo de memória que sua aplicação tem e o projeto em si.

Mas como faço isso se não conheço muito bem as práticas de otimização?
Preciso me tornar um JEDI na programação? A resposta é sim. :) Mas se anime, existe algumas coisas que pode fazer e que pode te ajudar. Um site interessante é: http://mr.dev.mobi

Esse site se propõe a testar sua aplicação para saber se está usando as melhores práticas e padrões da indústria móvel. Tem opções de análises gratuítas. Vale a pena dar uma olhada.

De qualquer forma é preciso usar o bom senso quanto ao projeto orientado a objetos para não prejudicar a performance de sua aplicação móvel. Ainda, tentar testar no celular real e procurar avaliar os resultados. É a melhor coisa a fazer na minha opinião.

08 setembro 2008

Dicas para programadores Java ME

Após alguns posts aqui no blog, reuni algumas dicas com referências que acho interessante repassar para vocês que querem aprender sobre programação para celulares usando Java e afins.

Série de dicas para iniciantes em programação para java me:

Introdução a programação para celulares com suporte a Java ME - parte 1
http://profdouglas.blogspot.com/2007/02/introduo-programao-para-celulares-com.html

Introdução a programação para celulares com suporte a Java ME - parte 2

Introdução a programação para celulares com suporte a Java ME – parte 3

Introdução a programação para celulares com suporte a Java ME – parte 4


Alguns trabalhos de meus alunos na disciplina de laboratório de programação (3 e 4 periodos (2008.1), com video aulas que foram produzidos por eles mesmos:

Tutoriais + video aulas sobre Java ME e SE


Um trabalho no mestrado onde pesquisei com meus colegas o Estado da arte em computação móvel:
Computação Móvel e Sem Fio

PARA QUEM VAI BOTAR A MÃO NA MASSA com Eclipse:

http://profdouglas.blogspot.com/2007/05/retomando-as-dicas-de-java-me.html 


ASPECTOS GERAIS:

http://profdouglas.blogspot.com/2008/02/aprenda-programar-e-torna-se-um-jedi.html 

Dicas sobre configurações p/ o seu celular, entenda um pouco sobre eles:
Arena de celulares: GSMArena

07 julho 2008

Curso de Segurança em Java: a importância da qualificação

Que o mercado de desenvolvimento de software está em alta não é nenhuma novidade. O problema, segundo especialistas, vai faltar profissionais qualificados nos próximos anos aqui no Brasil. Bom, isso pra mim não é novidade porque tem muita gente que acha que se aprende sem fazer na prática. Isso eu acho difícil, e quando chegam nas entrevistas, não tem nada para comprovar que já mexeu em alguma coisa de verdade.

Por outro lado fica a questão: já que este mercado é tão exigente COMO eu posso me qualificar para ser mais competitivo? Seja mais desenrolado. Ou seja, crie oportunidades e pretextos para estudar e fazer coisas na prática de programação.

Um curso gratuito e bem interessante para fazer coisas são os módulos do JEDI (Java Education and Development Initiative), no qual já falei aqui em post anterior. Pois é um treinamento para programadores. É claro, o sucesso deste curso dependerá de você realmente se dedicar.

Uma dica que costumo dizer em sala de aula é: se estiver estudando alguma teoria nova, seja lá qual for a sua área, coloque em prática o que está estudando. Se não for possível aplicar, então você deveria se questionar o porquê está estudando isso. Se conseguir, o aprendizado "será para sempre". Pelo menos no requisito de experiência.

Olha ai o plano de curso do novo módulo de SEGURANÇA do JEDI.

Lição 1 - Introdução a Segurança
* Conhecer sobre os principais aspectos de segurança
* Aprender boas práticas de segurança
* Observar as práticas de segurança aplicadas à linguagem Java

Lição 2 - Sandbox
* Identificar o modelo de segurança padrão empregado – Sandbox
* Conhecer os componentes da Sandbox
* Realizar as configurações dos componentes da Sandbox
* Definir os domínios de proteção de sua aplicação
* Aplicar a política de segurança, por intermédio das permissões
* Entender como as classes podem ser assinadas (certificação digital)

Lição 3 - Gerenciadores de Segurança
* Compreender a arquitetura dos Gerenciadores de Segurança
* Conhecer os métodos dos Gerenciadores de Segurança
* Construir um Gerenciador de Segurança customizado

Lição 4 - Segurança em Java
* Descriminar o que é Segurança
* Compreender o modelo de Segurança implementado em Java
* Obter mais dados sobre a Sandbox

Lição 5 - Classes de Segurança em Java
* Conhecer as regras e permissões de segurança
* Entender as classes de regras, de permissão e de acesso
* Aprender detalhes sobre exceções associadas a segurança
* Construir uma classe de permissão

Lição 6 - JAAS
* Trabalhar com a tecnologia JAAS
* Identificar as políticas de segurança de JAAS e seus arquivos de configuração
* Conhecer as classes de autenticação e autorização da tecnologia JAAS
* Programar e administrar através da tecnologia JAAS

Lição 7 - Criptografia
* Debater sobre os tipos de algoritmos criptográficos
* Conhecer as classes da arquitetura de criptografia Java

Lição 8 - Class Loaders
* Ter uma visão geral de funcionamento do Class Loader
* Compreender as considerações de segurança sobre o Class Loader
* Entender as classes do Class Loader

Lição 9 - Message Digest
* Conhecer os principais algoritmos de Message Digest
* Identificar os principais usos da utilização de Message Digest
* Empregar a classe MessageDigest em um aplicativo

Lição 10 - Listas de Controle de Acesso
* Conhecer as características da ACL
* Obter maiores informações sobre Java e as Listas de Controle de Acesso


Em resumo, pratique o que estuda, caso contrário, não vai aprender direito.