Guia para o Profissional Java
-
Upload
armenio-cardoso -
Category
Technology
-
view
1.389 -
download
3
description
Transcript of Guia para o Profissional Java
Guia para oGuia para oProfissional JavaProfissional Java
Ciclo de Palestras 2011Ciclo de Palestras 2011
ApresentaçõesApresentações
Armênio CardosoArmênio CardosoConsultor, Arquiteto de Sistemas e ProfessorConsultor, Arquiteto de Sistemas e Professor
http://www.http://www.linkedinlinkedin.com/in/armeniocardoso.com/in/armeniocardoso
http://www.http://www.slideshareslideshare.net/armeniocardoso.net/armeniocardoso
AgendaAgenda
• Contexto Atual.Contexto Atual.
• Contexto de Java.Contexto de Java.
• O Que Eu Devo O Que Eu Devo Saber?Saber?
• Conclusões.Conclusões.
Contexto AtualContexto Atual
• Como Java se posiciona Como Java se posiciona em relação às outras em relação às outras Linguagens de Linguagens de Programação?Programação?
• Que outras Linguagens Que outras Linguagens de Programação eu de Programação eu devo conhecer?devo conhecer?
• Como o paradigma de Como o paradigma de Orientação a Objetos Orientação a Objetos está posicionado?está posicionado?
Contexto AtualContexto Atual
Ranking das Linguagens de Programação – Ranking das Linguagens de Programação – Setembro 2011Setembro 2011::
http://www.http://www.tiobetiobe.com.com
Contexto AtualContexto Atual
Ranking das Linguagens de Programação – Ranking das Linguagens de Programação – Setembro 2011Setembro 2011::
19%
18%
9%7%7%
6%
4%
4%
2%
1%
23%
JavaCC++C#PHPObjective-CBASICPythonPerlJavaScriptOutras
http://www.http://www.tiobetiobe.com.com
56%38%
4%
2%
OOProceduralFuncionalLógico
Contexto AtualContexto Atual
Paradigmas de Programação:Paradigmas de Programação:
http://www.http://www.tiobetiobe.com.com
•Erlang;•F#;•Haskel;•Lisp;•Scala.
•Prolog;•Oz.
66%
34%
EstáticoDinâmico
Contexto AtualContexto Atual
Definição dos Tipos de Dados nas Linguagens de Programação:Definição dos Tipos de Dados nas Linguagens de Programação:– Estático = compilação.Estático = compilação.– Dinâmico = runtime.Dinâmico = runtime.
•ActionScript;•Groovy;•JavaScript;•Python;•Ruby.
http://www.http://www.tiobetiobe.com.com
Contexto de JavaContexto de Java
• Como se constitui a Como se constitui a Plataforma Java?Plataforma Java?
• Quais são as Quais são as versões disponíveis?versões disponíveis?
• Quais são as Quais são as principais IDEs principais IDEs open-source?open-source?
Contexto de JavaContexto de Java
JDK 1.0 - 1996JDK 1.0 - 1996JDK 1.1 - 1997JDK 1.1 - 1997
J2SE 1.2 - 1998J2SE 1.2 - 1998J2SE 1.3 - 2000J2SE 1.3 - 2000J2SE 1.4 - 2002J2SE 1.4 - 2002J2SE 5.0 - 2004J2SE 5.0 - 2004
Java SE 6 - 2006Java SE 6 - 2006Java SE 7 - 2011Java SE 7 - 2011
Standard Edition
Contexto de JavaContexto de Java
JPE (Pro. Ed.) – 1998JPE (Pro. Ed.) – 1998
J2EE 1.2 – 1999J2EE 1.2 – 1999
J2EE 1.3 – 2001J2EE 1.3 – 2001
J2EE 1.4 – 2003J2EE 1.4 – 2003
Java EE 5 – 2006Java EE 5 – 2006
Java EE 6 – 2009Java EE 6 – 2009
Enterprise Edition
Contexto de JavaContexto de Java
• Ambientes de Ambientes de Execução:Execução:– Android;Android;– iOS;iOS;– BlackBerry;BlackBerry;– HP webOS;HP webOS;– Symbian OS;Symbian OS;– Windows Mobile.Windows Mobile.
• Carência de Carência de Compatibilidade do Compatibilidade do Java ME “oficial”.Java ME “oficial”.
Micro Edition
Contexto de JavaContexto de Java
• Evolução das Evolução das tecnologias de tecnologias de desenvolvimento:desenvolvimento:
Cross-platform DeploymentCross-platform Deployment
• Oportunidade de criar Oportunidade de criar SDKs que suportem SDKs que suportem várias plataformas de várias plataformas de runtime.runtime.
Micro Edition
Contexto de JavaContexto de Java
EclipseEclipse
1.0 20011.0 20012.0 20022.0 20022.1 20032.1 20033.0 20043.0 20043.1 20053.1 20053.2 20063.2 2006
Europa 3.3 2007Europa 3.3 2007
Ganymede 3.4 2008Ganymede 3.4 2008
Galileo 3.5 2009Galileo 3.5 2009
Helios 3.6 2010Helios 3.6 2010
Indigo 3.7 2011Indigo 3.7 2011
NetbeansNetbeans
Xelfi 1997Xelfi 1997DeveloperX2 1999DeveloperX2 19993.x 2000 - 20033.x 2000 - 20034.0 20044.0 20044.1 20054.1 2005
5.5 20065.5 20065.5.1 20075.5.1 2007
6.1 20086.1 20086.5 20086.5 20086.8 20096.8 20096.9.1 20106.9.1 2010
7.0.1 20117.0.1 2011
Integrated Development Environment - IDEIntegrated Development Environment - IDE
O Que Eu Devo Saber?O Que Eu Devo Saber?
• Quais são as dicas Quais são as dicas sobre a plataforma sobre a plataforma Java?Java?
• Quais são os “grandes Quais são os “grandes assuntos” que um assuntos” que um profissional deve profissional deve conhecer?conhecer?
• O que mudou na O que mudou na Certificação Java?Certificação Java?
O Que Eu Devo Saber?O Que Eu Devo Saber?
• Dica nº 1: Atenção com o Java SE 7:Dica nº 1: Atenção com o Java SE 7:
– O SDK versão 7 é muito recente (atenção aos O SDK versão 7 é muito recente (atenção aos bugs).bugs).
– Conjunto de “melhorias” que ainda não justificam Conjunto de “melhorias” que ainda não justificam o movimento de migração.o movimento de migração.
– Bibliografia escassa, explorando somente os Bibliografia escassa, explorando somente os novos recursos.novos recursos.
– Empresas não devem servir de “cobaia”.Empresas não devem servir de “cobaia”.
O Que Eu Devo Saber?O Que Eu Devo Saber?
““Oracle: Java's worst enemy”Oracle: Java's worst enemy”By Neil McAllister – InfoWorld - 04/08/2011By Neil McAllister – InfoWorld - 04/08/2011
• Oracle lançou o Java SE 7 com um bug Oracle lançou o Java SE 7 com um bug seríssimo e quem foi o primeiro a seríssimo e quem foi o primeiro a alertar a comunidade Java? A Apache alertar a comunidade Java? A Apache Foundation. Que ironia!Foundation. Que ironia!
O Que Eu Devo Saber?O Que Eu Devo Saber?
• Dica nº 2: Migrar para Java EE 6:Dica nº 2: Migrar para Java EE 6:
– As aplicações JEE 5 precisam receber pequenos As aplicações JEE 5 precisam receber pequenos “ajustes” para a nova versão.“ajustes” para a nova versão.
– JPA: de Toplink para Eclipselink.JPA: de Toplink para Eclipselink.
– Já existem vários livros sobre o assunto. Já existem vários livros sobre o assunto.
– Atenção com o uso das IDEs: a versão JEE 5 pode Atenção com o uso das IDEs: a versão JEE 5 pode não ser mais suportada por default.não ser mais suportada por default.
O Que Eu Devo Saber?O Que Eu Devo Saber?
• Dica nº 3: Buscar maior aproximação com Dica nº 3: Buscar maior aproximação com os padrões:os padrões:
– As aplicações JEE 6 consolidaram tecnologias As aplicações JEE 6 consolidaram tecnologias “ponta-a-ponta”: “ponta-a-ponta”: • Java Server Faces 2.0 (Ajax e componentes mais ricos);Java Server Faces 2.0 (Ajax e componentes mais ricos);• Enterprise Java Beans 3.1 (Inversion Of Control);Enterprise Java Beans 3.1 (Inversion Of Control);• Java Persistence Architecture 2.0 – Eclipselink muito Java Persistence Architecture 2.0 – Eclipselink muito
semelhante ao Hibernate.semelhante ao Hibernate.
– Racionalidade na publicação de ofertas de Racionalidade na publicação de ofertas de emprego.emprego.
O Que Eu Devo Saber?O Que Eu Devo Saber?
• Dica nº 4: Conhecer as soluções cross-Dica nº 4: Conhecer as soluções cross-platform deployment para dispositivos platform deployment para dispositivos móveis:móveis:
– Crescimento exponencial da plataforma Android Crescimento exponencial da plataforma Android e Apple iOs.e Apple iOs.
– Crescimento exponencial do uso de dispositivos Crescimento exponencial do uso de dispositivos móveis integrados a aplicações corporativas.móveis integrados a aplicações corporativas.
http://en.http://en.wikipediawikipedia.org/wiki/Mobile_development.org/wiki/Mobile_development
O Que Eu Devo Saber?O Que Eu Devo Saber?
• Livros - Java Standard Edition:Livros - Java Standard Edition:
O Que Eu Devo Saber?O Que Eu Devo Saber?
• Livros - Java Enterprise Edition:Livros - Java Enterprise Edition:
O Que Eu Devo Saber?O Que Eu Devo Saber?
• Livros - Java Enterprise Edition:Livros - Java Enterprise Edition:
O Que Eu Devo Saber?O Que Eu Devo Saber?
• Livros - Desenvolvimento “Mobile”:Livros - Desenvolvimento “Mobile”:
O Que Eu Devo Saber?O Que Eu Devo Saber?
• O Que Mudou na Certificação?O Que Mudou na Certificação?
– Oracle Certified Associate.Oracle Certified Associate.– O.C. Professional Java Programmer.O.C. Professional Java Programmer.
– O. C. Master, Java SE 6 Developer.O. C. Master, Java SE 6 Developer.
– O. C. Professional, Java EE 5 Web Component Developer.O. C. Professional, Java EE 5 Web Component Developer.– O. C. Professional, Java EE 5 Business Component O. C. Professional, Java EE 5 Business Component
Developer.Developer.
– O. C. Master, Java EE 5 Enterprise Architect.O. C. Master, Java EE 5 Enterprise Architect.
Master: a partir de 1º de outubro será necessário fazer um curso para poder fazer a certificação.
ConclusõesConclusões