Java 01 Java Visao Geral Resumo

7,529 views

Published on

Published in: Technology, News & Politics
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
7,529
On SlideShare
0
From Embeds
0
Number of Embeds
31
Actions
Shares
0
Downloads
178
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Java 01 Java Visao Geral Resumo

  1. 1. Java - Visão Geral Regis Pires Magalhães [email_address]
  2. 2. Roteiro <ul><li>Histórico </li></ul><ul><li>Principais características </li></ul><ul><li>Componentes da plataforma Java </li></ul>
  3. 3. Histórico <ul><li>1991 – O projeto Green </li></ul><ul><ul><li>Projeto conduzido por: Mike Sheridan (negócio), Patrick Naughton (sistema gráfico) and James Gosling (linguagem de programação). </li></ul></ul><ul><ul><li>O objetivo do projeto descobrir a “nova onda” da computação. </li></ul></ul><ul><ul><li>Eles chegaram a conclusão de que uma das ondas seria a convergência entre dispositivos eletrônicos “inteligentes” e computadores. </li></ul></ul><ul><ul><li>O projeto vislumbrou a criação de um ambiente de execução flexível </li></ul></ul><ul><ul><ul><li>Capaz de rodar nos mais diversos tipos de dispositivos </li></ul></ul></ul><ul><ul><ul><ul><li>Primariamente em pequenos dispositivos (móveis ou não) </li></ul></ul></ul></ul><ul><ul><li>A implementação inicial do runtime era em C++ </li></ul></ul><ul><ul><ul><li>James Gosling viu que C++ não era adequada para o projeto e suas extensões e modificações ao C++ foram os primeiros passos para o desenvolvimento de uma linguagem independente apropriada ao projeto. </li></ul></ul></ul><ul><ul><ul><li>A linguagem foi inicialmente chamada Oak, mas o nome foi mudado devido à existência de uma patente já registrada para outra linguagem de programação. </li></ul></ul></ul><ul><ul><li>Para dispositivos com pouca memória era necessária uma linguagem pequena com código bastante otimizado para poupar espaço. </li></ul></ul><ul><ul><li>Como os fabricantes de dispositivos poderiam usar diferentes CPUs era importante não ficar preso a nenhuma arquitetura em particular. </li></ul></ul>
  4. 4. Histórico <ul><li>1991 – O projeto Green </li></ul><ul><ul><li>Os requisitos de código pequeno e independente de plataforma fez a equipe ressuscitar o modelo de algumas implementações do Pascal dos primeiros dias do PC, baseadas em um código intermediário para uma máquina virtual. </li></ul></ul><ul><ul><li>A inspiração do nome Java surgiu em uma cafeteria local, cujo conteúdo do café vinha de uma ilha da Indonésia chamada Java. </li></ul></ul><ul><ul><li>O projeto Green ainda criou o personagem Duke, que seria o ajudante usado na interface gráfica. </li></ul></ul><ul><ul><li>O projeto estava à beira do cancelamento. Não conseguiu vender nada em 93 e até metade de 94. O mercado de dispositivos “inteligentes” não estava se desenvolvendo como a Sun previa. </li></ul></ul><ul><ul><li>O rápido crescimento da Internet por volta de 1994 deu um novo impulso ao projeto. A Sun voltou seus esforços para acelerar a conclusão da sua linguagem. </li></ul></ul><ul><ul><ul><li>O objetivo era aproveitar a flexibilidade da linguagem para prover maior dinamismo na Web. </li></ul></ul></ul><ul><ul><ul><li>Não havia nenhum concorrente no horizonte na nova era digital que se abria com a Web. </li></ul></ul></ul>
  5. 5. Histórico <ul><li>1994 – Browser </li></ul><ul><ul><li>Na metade de 94 a equipe percebeu que um browser independente de arquitetura, confiável e seguro seria importante e, então, construiu um browser. </li></ul></ul><ul><ul><li>O browser HotJava foi feito para mostrar o poder do Java, mas os idealizadores também tinham em mente o poder do que chamamos applets. Assim, fizeram um browser capaz de executar código Java em páginas web. </li></ul></ul><ul><li>1995 – Lançamento da tecnologia Java </li></ul><ul><ul><li>Em 23 de maio de 95 o browser com suporte a applets foi apresentado na SunWorld. </li></ul></ul><ul><li>Jan/1996 – Netscape decide dar suporte a Java ao seu browser Navigator </li></ul><ul><li>1996 – Disponibilização da primeira release </li></ul><ul><ul><li>Java Development Kit (JDK) 1.0 </li></ul></ul><ul><li>1997 – JDK 1.1 </li></ul>
  6. 6. Histórico <ul><li>1998 – Java Community Process (JCP) </li></ul><ul><ul><li>Especificação da tecnologia Java passa a ser conduzida através de processo aberto formado pela Sun e usuários Java </li></ul></ul><ul><li>1999 </li></ul><ul><ul><li>Fevereiro </li></ul></ul><ul><ul><ul><li>Java 1.2, renomeado para Java 2. </li></ul></ul></ul><ul><ul><li>Junho </li></ul></ul><ul><ul><ul><li>Ramificação da plataforma: J2SE, J2ME e J2EE </li></ul></ul></ul><ul><ul><li>Dezembro </li></ul></ul><ul><ul><ul><li>Primeira release J2EE </li></ul></ul></ul><ul><ul><ul><li>Primeira release J2SE para Linux </li></ul></ul></ul><ul><li>2000 – J2SE 1.3 </li></ul><ul><li>2002 – J2SE 1.4 </li></ul><ul><li>2004 – J2SE 1.5 – Java 5 </li></ul><ul><li>Dez/2006 – Java 6 – Mustang </li></ul><ul><li>2008 – Java 7 - Dolphin </li></ul>
  7. 7. Principais Características <ul><li>Orientada a Objetos </li></ul><ul><li>Simples </li></ul><ul><li>Robusta </li></ul><ul><li>Independente de arquitetura </li></ul><ul><li>Portável </li></ul><ul><li>Multi-threaded </li></ul><ul><li>Segura </li></ul><ul><li>Rápida </li></ul>
  8. 8. Principais Características <ul><li>Com coleta de lixo automática </li></ul><ul><li>Distribuída </li></ul><ul><li>Rica </li></ul><ul><li>Livre / Open Source </li></ul><ul><li>Multi-Uso -> Abrange os mais diversos tipos de aplicação. </li></ul><ul><li>Fartíssima documentação </li></ul><ul><ul><li>Inclusive em português </li></ul></ul><ul><li>Várias ferramentas de apoio à aprendizagem da linguagem. </li></ul><ul><li>Muito usada no meio acadêmico, inclusive como linguagem introdutória. </li></ul>
  9. 9. Plataformas Java <ul><li>Plataforma </li></ul><ul><ul><li>Ambiente de hardware e/ou software no qual um programa é executado </li></ul></ul><ul><li>A plataforma Java é somente de software </li></ul><ul><ul><li>Esta plataforma de execução funciona sobre outras plataformas de hardware e software </li></ul></ul><ul><li>Plataformas Java </li></ul><ul><ul><li>JME – Java Platform, Micro Edition </li></ul></ul><ul><ul><ul><li>Plataforma de desenvolvimento para dispositivos com suporte à Java como Palms, celulares, pagers, etc. </li></ul></ul></ul><ul><ul><li>JSE – Java Platform, Standard Edition </li></ul></ul><ul><ul><ul><li>Contém serviços padrão para aplicações e applets. </li></ul></ul></ul><ul><ul><li>JEE – Java Platform, Enterprise Edition </li></ul></ul><ul><ul><ul><li>Plataforma de desenvolvimento completa para aplicações empresariais robustas e escaláveis. </li></ul></ul></ul>
  10. 10. Plataformas Java * Connected Limited Device Configuration ** Mobile Information Device * **
  11. 11. Componentes da plataforma Java <ul><ul><li>Java Virtual Machine (Java VM ou JVM) </li></ul></ul><ul><ul><ul><li>Provê suporte para independência de plataforma </li></ul></ul></ul><ul><ul><ul><li>Máquina virtual que interpreta código Java compilado </li></ul></ul></ul><ul><ul><ul><li>Java é uma linguagem compilada e interpretada!!! </li></ul></ul></ul><ul><ul><li>Java Application Programming Interface (Java API) </li></ul></ul><ul><ul><ul><li>Provê suporte para programação de aplicações em geral </li></ul></ul></ul><ul><ul><ul><li>Vasta gama de componentes de software prontos para uso para as mais diversas funcionalidades </li></ul></ul></ul>
  12. 12. Plataforma J2SE <ul><ul><li>JRE – Java Runtime Environment </li></ul></ul><ul><ul><li>SDK – Software Development Kit </li></ul></ul>
  13. 13. Resumo <ul><li>Plataforma Java </li></ul><ul><ul><li>Principais Características </li></ul></ul><ul><ul><ul><li>Orientada a Objeto </li></ul></ul></ul><ul><ul><ul><li>Simples </li></ul></ul></ul><ul><ul><ul><li>Dinâmica </li></ul></ul></ul><ul><ul><ul><li>Robusta </li></ul></ul></ul><ul><ul><ul><li>Independente de Plataforma </li></ul></ul></ul><ul><ul><ul><li>Portável </li></ul></ul></ul><ul><ul><ul><li>Multi-threaded </li></ul></ul></ul><ul><ul><ul><li>Segura </li></ul></ul></ul><ul><ul><ul><li>Rápida </li></ul></ul></ul><ul><ul><ul><li>Distribuída </li></ul></ul></ul><ul><ul><ul><li>Rica </li></ul></ul></ul><ul><ul><li>Arquitetura </li></ul></ul><ul><ul><ul><li>JVM + Java API </li></ul></ul></ul>
  14. 14. Referências e Recursos <ul><li>Web </li></ul><ul><ul><li>The Source for Java Technology (Sun) </li></ul></ul><ul><ul><ul><li>http://java.sun.com </li></ul></ul></ul><ul><ul><ul><li>http://java.sun.com/j2se </li></ul></ul></ul><ul><ul><ul><li>http://java.sun.com/j2ee </li></ul></ul></ul><ul><ul><ul><li>http://java.sun.com/j2me </li></ul></ul></ul><ul><ul><ul><li>http://java.sun.com/features </li></ul></ul></ul><ul><ul><li>Tutorials & Short Courses by Sun </li></ul></ul><ul><ul><ul><li>http://developer.java.sun.com/developer/onlineTraining </li></ul></ul></ul><ul><ul><li>Documentation, Tutorials & Courses </li></ul></ul><ul><ul><ul><li>http://java.web.cern.ch/java/tutorials.html </li></ul></ul></ul><ul><ul><li>Jguru: Your view of the Java universe </li></ul></ul><ul><ul><ul><li>http://www.jguru.com </li></ul></ul></ul><ul><ul><li>argonavis.com.br </li></ul></ul><ul><ul><ul><li>http://www.argonavis.com.br </li></ul></ul></ul><ul><ul><li>Java Myths </li></ul></ul><ul><ul><ul><li>http://cdsmith.twu.net/professional/java/myths.html </li></ul></ul></ul><ul><ul><ul><li>http://www.javacoffeebreak.com/articles/inside_java/insidejava-may00.html </li></ul></ul></ul>
  15. 15. Referências e Recursos <ul><li>Livros </li></ul><ul><ul><li>Core Java 2 – Volume I – Cay S. Horstmann e Gary Cornell. </li></ul></ul><ul><ul><li>Thinking in Java (3rd Edition) </li></ul></ul><ul><ul><ul><li>http://www.bruceeckel.com </li></ul></ul></ul><ul><ul><li>Java in a Nutshell (4th Edition) – David Flanagan </li></ul></ul><ul><ul><li>Java – Como Programar (4ª Edição) – Deitel & Deitel </li></ul></ul>

×