A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

A Plataforma Java, suas Tecnologias e Aplicações Diego Ziquinatti

Apresentações semelhantes


Apresentação em tema: "A Plataforma Java, suas Tecnologias e Aplicações Diego Ziquinatti"— Transcrição da apresentação:

1 A Plataforma Java, suas Tecnologias e Aplicações Diego Ziquinatti diego.ziquinatti@yahoo.com.br

2 Objetivos deste encontro Apresentar a plataforma Java e suas Tecnologias –Histórico –Características –Peculiaridades Demonstrar aplicações feitas em Java –Empresas que utilizam –Como utilizam –Benefícios

3 O que é Java? Java é uma especificação bem definida de uma Linguagem de Programação OO, desenvolvida pela Sun Microsystems. Usa-se, ainda, o nome “Java” para identificar: –Ambientes de execução de software, presentes em SO, browsers, celulares, PDA, cartões inteligentes (JavaCards) e eletrodomésticos. –Uma coleção de classes, componentes e frameworks (APIs) para o desenvolvimento de aplicações multiplataforma. –O conjunto de ferramentas que permite o desenvolvimento de aplicativos Java (JDK – Java Development Kit)

4 O que é a Plataforma Java? Plataforma é um ambiente de software e/ou hardware onde os programas são executados. Plataforma Java: –Java API –JVM (Java Virtual Machine)

5 Por que Java? Por ser um ambiente de desenvolvimento OO –OO é o paradigma mais forte atualmente –Java é uma linguagem que atende os requisitos OO Pela portabilidade do código produzido –Programe em Windows e execute em Linux –Sem necessidade de recompilar Pelas características de segurança –Applets possuem restrições para acesso de arquivos –Sem endereçamento direto de memória

6 Por que Java? Pela facilidade de integração a outros ambientes –Java nasceu junto com a Internet –API para integração com sistemas legados Linguagem e ferramentas em constante aperfeiçoamento –Rumo da linguagem definido pela comunidade Java –JCP (Java Community Process) JDK é Free Software, assim como diversas ferramentas –Java pode ser usado comercialmente sem nenhum custo –Diversas ferramentas disponíveis gratuitamente

7 Como começou? Projeto Green: lançado em 1991 pela Sun Microsystems tinha o objetivo de desenvolver tecnologia para integrar dispositivos eletrônicos como TV´s, CD Players e Computadores. A linguagem inicialmente sugerida foi o C++. Porém, ela não oferecia imediatamente o que era necessário: portabilidade, confiabilidade e programas com tamanho reduzido para dispositivos portáteis. Assim nasceu Oak: nome pelo qual Java foi chamado inicialmente.

8 Como começou? Oak foi criada pelo arquiteto e programador James Gosling, sendo uma mera ferramenta para os programadores do Projeto Green; mas acabou tendo um potencial maior do que qualquer um poderia ter imaginado. Oak foi desenvolvida baseada em C++ e SmallTalk. Procurou- se aproveitar as características positivas destas linguagens reavaliando os aspectos negativos. Oak surgiu mais simples, segura, portátil e fácil de programar do que C++.

9 Como começou? Em 1992 o projeto Green lança um pequeno dispositivo portátil, um controle remoto extremamente inteligente. Dotado de uma pequena tela com capacidade touch screen, o usuário interagia com eletrodomésticos através de uma representação animada de uma casa. Foi chamado Star-7.

10 Como começou? Em 1993 surge a primeira grande oportunidade: uma concorrência pública para o desenvolvimento de uma tecnologia para TV a cabo interativa, porém vencida pela SGI (Silicon Graphics Inc.) Nesta época a Internet era mais para aficionados em computadores que sabiam como manipular protocolos como FTP e Telnet. Um programa chamado Mosaic, construído para o protocolo HTTP, tornou possível a usuários normais a visualização de documentos HTML na Internet. Este foi um marco importante.

11 Como começou? Os membros do projeto perceberam que a tentativa de desenvolver uma interface interativa, robusta, segura e independente de arquitetura para dispositivos digitais também poderia ser usada na Internet! A Internet era uma rede que ligava centenas de computadores diferentes executando sistemas operacionais diferentes. Estimulados pelo grande crescimento da Internet, Jonathan Payne e Patrick Naughton desenvolvem o programa navegador WebRunner, capaz de efetuar o download e a execução de código Java via Internet.

12 Apresentado formalmente pela Sun como o navegador HotJava no SunWorld’95, o interesse pela solução se mostrou explosivo. Em setembro/1995, a Netscape Corp. lança a versão 2.0 de seu browser também com capaz de efetuar o download e a execução de pequenas aplicações Java, então denominadas applets. Assim se inicia a história de sucesso do Java. Como começou? Programas escritos em Java que podem ser adicionados em documentos hipertexto. Suportam efeitos de multimídia como sons, interações com o usuário (mouse, teclado), imagens, animações, gráficos.

13 Como começou? Numa atitude importante, a Sun decide tornar o código-fonte aberto e disponibilizar o Java gratuitamente para a comunidade de desenvolvimento de software, embora detenha todos os direitos relativos à linguagem e as ferramentas de sua autoria. Surge assim o JDK 1.0 (Java Development Kit 1.0) Plataformas inicialmente atendidas: Sun Solaris e Microsoft Windows 95/NT. Progressivamente foram disponibilizados kits para outras plataformas tais como IBM OS/2, Linux e Macintosh.

14 Como começou? Em 1997, surge o JDK 1.1 que incorpora grandes melhorias para o desenvolvimento de aplicações gráficas e distribuídas. No início de 1999 é lançado o JDK 1.2, contendo tantas melhorias que foi denominado Java 2. A Sun constantemente libera novas versões ou correções bem como novas APIs para desenvolvimento de aplicações específicas. A versão estável mais atual disponível é o JDK 1.6

15 Evolução da Plataforma JCP (Java Community Process): processo criado pela Sun como forma de evoluir e manter a tecnologia Java aberta e disponível para todos. Através do JCP são definidas as JSRs (Java Specification Request), que ditam as novas tecnologias Java. Mais de 600 empresas participam: –IBM –Apache –JBoss –SAP –Oracle –Nokia –Sony

16 Características Simples e Dinâmica –Java possui em torno de 50 palavras reservadas. –As funcionalidades da plataforma estão nas APIs. Orientada a Objetos –Tudo em Java são classes ou instância de uma classe. Exceção: Tipos Primitivos. –Atende os requisitos para ser considerada OO: Abstração, Encapsulamento e Hereditariedade.

17 Características Portável (independência de plataforma) –Java gera uma linguagem de máquina (byte-codes) destinada a uma única plataforma, a JVM (Java Virtual Machine). –Em teoria, pode-se implementar uma JVM para qualquer plataforma de hardware. Interpretada –Por ser interpretada não é comparada à velocidade de execução de código nativo. –Algumas JVMs dispõem de compiladores JIT (Just In Time) que compilam os byte-codes para código nativo em tempo de execução.

18 Características Robusta e Segura –Não implementa aritmética de ponteiros. –Possui mecanismo de liberação automática de memória. –É fortemente tipada: não permite conversão implícita de tipos. –Não permite herança múltipla de classes (mas possui interfaces). –Exige o tratamento de exceções em tempo de compilação. –Mecanismos de segurança podem, no caso de applets, evitar operações no sistema de arquivos.

19 Características Distribuída –Aplicativos Java podem acessar objetos remotos. –API extensa para protocolos de rede, como TCP/IP, HTTP e FTP. Multithreading –Permite a execução de múltiplas rotinas concorrentes. –Permite o gerenciamento da sincronização destas rotinas concorrentes.

20 Outras características Case-sensitive: –Em java maiúsculas de minúsculas são diferentes. Não existem variáveis globais ou funções independentes: –Toda variável ou função pertence a uma classe ou objeto Arquivo fonte tem extensão.java Classe compilada tem extensão.class Classes podem ser agrupadas em arquivos.jar

21 A JVM é a parte do Java responsável pela execução do byte- code, independente de plataforma. JVM (Java Virtual Machine)

22

23 Execução em Java

24 Garbage Collector Thread de baixa prioridade que libera da memória automaticamente objetos não mais referenciados no escopo do programa. Reside na JVM. Vantagem direta: libera o programador da responsabilidade de destruir objetos criados.

25 Distribuições Java Java Standard Edition – Java SE –APIs essenciais para qualquer aplicação java Core Java, Desktop Java Java Enterprise Edition – Java EE –APIs para o desenvolvimento de aplicações distribuídas JSP (Java Server Page), EJB (Enterprise Java Beans) Java Micro Edition – Java ME –APIs para o desenvolvimento de aplicações p/ portáteis PDA (Personal Digital Assistant), Palms, Celulares, TVs digitais

26 Aplicação Java SE

27 Aplicação Java EE

28 Aplicação Java ME

29 Para trabalhar com Java é necessário conhecer suas APIs, as quais residem em pacotes (packages). Cada distribuição possui uma coleção de APIs. APIs Java

30 O que é aprender Java? Conhecer a sintaxe da linguagem Java –Tipos, controles, estruturas condicionais. Aprender as APIs, suas classes e seus métodos –java.lang; java.io; java.util; java.sql; javax.swing. Conhecer a teoria da OO: –Classes, Objetos, Métodos, Atributos, Herança. Dominar ferramentas e tecnologias auxiliares –IDEs, UML, XML, Design Patterns, etc.

31 Como começar com Java Instalar JDK. –Download em http://java.sun.comhttp://java.sun.com JDK - não é ambiente visual (IDE), é um conjunto de ferramentas para desenvolvimento Java. Composto por: –javac.exe – Compilador Java –java.exe – Máquina virtual Java (JVM) –jre.exe – Java Runtime Environment –appletviewer.exe – Visualizador de Applets –javadoc.exe - Composição de documentação –jdb.exe – Depurador de programas

32 IDEs para Java EclipseEclipse — projeto aberto iniciado pela IBM NetBeansNetBeans — ambiente criado pela Sun Microsystems JBuilderJBuilder — ambiente desenvolvido pela Borland JDeveloperJDeveloper — IDE desenvolvida pela Oracle JCreatorJCreator —ambiente desenvolvido pela Xinox BlueJBlueJ — ambiente desenvolvido para iniciantes IntelliJ IDEAIntelliJ IDEA — IDE desenvolvida pela JetBrains

33 Ferramentas CASE Ferramenta CASE é um software que dispõe de mecanismos que auxiliam na construção de um software. Diagramas, Geração de Código, Engenharia Reversa e Mapeamento OO-Relacional. Ferramentas CASE para Java: Rational Rose http://www.rational.com Argo UML http://www.argouml.org Poseidon UML http://www.gentleware.com Jude: http://objectclub.esm.co.jp/Jude/download.html

34 Exemplos em Java SwingSet2: software demonstrativo que permite verificar funcionalidades de Java como interface gráfica, multithread e Look&Feel. SwingSet2.jar JAgenda: software desenvolvido para demonstrar o uso do Java com interface gráfica, persistindo em arquivo XML. JAgenda.jar

35 Java no Brasil Banco do Brasil: desenvolve aplicativos e serviços web com tecnologia Java EE para ambiente corporativo. http://www.bb.com.br Globo.com http://www.globo.com BrasilTelecom http://brasiltelecom.com.br Telemig: controla em torno de 1 milhão de celulares com tecnologia Java

36 Java no Mundo BankBoston –Todo Internet Banking feito em Java Nasa –Telescópio Hubble e sonda espacial Pathfinder. Nokia –Não só em aparelhos, mas nos servidores da empresa. American Express, Visa –Utilizam a tecnologia JavaCard.

37 Referências (Internet) SUN MICROSYSTEMS http://java.sun.com ORACLE http://otn.oracle.com/tech/java/index.html IBM http://www-106.ibm.com/developerworks/java JavaWorld http://www.javaworld.com Java TV (artigo sobre como programar com Java para TV digital) http://www.javafree.org/dependencias/tutoriais/javatv/JavaTV_Ja vaFree.pdf

38 Java TV

39 Referências (Livros) “JAVA COMO PROGRAMAR” DEITEL, HARVEY M.; DEITEL,PAUL J. “CORE JAVA 2, V.1 – FUNDAMENTOS” HORSTMANN, CAY; CORNELL,GARY.

40 Formação Java Target Trust Orientação Objetos –Introdução à Orientação Objetos –Conceito de Classe, Objeto, Atributo, Método, Herança, etc. UML –Introdução à UML –Como, quando e onde utilizar os diagramas da UML. Java Fundamentals –Introdução à linguagem Java: estruturas, sintaxe e comandos. –Aplicação da OO em Java

41 Formação Java Target Trust Java Advanced –API java.io (acesso à arquivos) –API Swing (interface gráfica) –API JDBC (acesso à banco de dados) Java Server Pages (JSP) –Trabalhando com Java na Web. –Struts, JSTL e Taglibs Enterprise Java Beans (EJB) –Trabalhando com objetos distribuídos em Java.

42 Convidamos você para tomar este café:

43 Obrigado pela presença! Diego Ziquinatti diego.ziquinatti@yahoo.com.br


Carregar ppt "A Plataforma Java, suas Tecnologias e Aplicações Diego Ziquinatti"

Apresentações semelhantes


Anúncios Google