1 / 21

Java

Java. Cristiano Soares Rafael di Lego Roberto Nemirovsky Thiago Nascimento. Sun Microsystems. Fundada em 1982, introduzindo o primeiro workstation Em 1987 foi líder no comércio de workstations Em 1993 atinge a marca de 1 milhão de sistemas distribuidos (UNIX)

syshe
Télécharger la présentation

Java

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Java Cristiano Soares Rafael di Lego Roberto Nemirovsky Thiago Nascimento

  2. Sun Microsystems • Fundada em 1982, introduzindo o primeiro workstation • Em 1987 foi líder no comércio de workstations • Em 1993 atinge a marca de 1 milhão de sistemas distribuidos (UNIX) • Em 1995 lança a linguagem Java, designada para a Internet e para Intranets corporativas • Em 1998 lança a segunda versão do Java, oferecendo mais velocidade, flexibilidade e um conjunto completo de classes-base.

  3. * September 2002 Grupo de Desenvolvimento

  4. Principais características • Orientada a Objetos. • Neutra em relação à arquitetura. • Interpretada / Portável. • Dinâmica e distribuída. • Simples, robusta e segura. • Garbage collection. • Multithread.

  5. Garbage collection • Identificar objetos que não são utilizados a um determinado tempo e liberá-los da memória. • Um objeto está em uso somente se ele pode ser acessado ou buscado pelo programa em um determinado estado. • Gerência de memória mais segura. • Custo de execução adicional.

  6. Garbage collection

  7. Java Virtual Machine • Computador abstrato que permite rodar programas compilados em Java. • JVM é “Virtual” pois é geralmente implementada em software sobre uma plataforma em hardware(“Real”) e um sistema operacional.

  8. JVM - ByteCodes • O programa em Java é tanto compilado como interpretado. • O programa em Java é compilado em bytecodes, e não em linguagem de máquina. Posteriormente, os bytecodes são interpretados pela máquina virtual.

  9. JVM - ByteCodes Código em Java JMV-Programa rodando Código em bytecodes

  10. JMV - Multiplataforma • “Write once, run anywhere”.

  11. Java-Orientação à objeto • Método de programação baseado em hierarquia de classes, e em integrados e bem definidos objetos. • Todo programa Java é encapsulado em uma classe, seja ela uma classe definida pelo usuário ou uma classe proveniente de uma das bibliotecas API da plataforma Java.

  12. Java-Orientação à objeto • O programa abaixo é encapsulado pela classe “ExampleProgram” class ExampleProgram { public static void main(String[] args){ System.out.println("I'm a simple Program“); } }

  13. Multithread “Objetos disponibilizam uma forma de dividir o programa em seções independentes. Freqüentemente, você também precisa tornar um programa em sub-tarefas independentes.” Bruce Eckel

  14. Multithread - Vantagens • Melhor uso da CPU. • Diminui acoplamento de código. • Diminui tempo de espera. • Troca de contexto mais “leve”. • Uso de Deamons. • Perfeito para processamento paralelo.

  15. Multithread - Desvantagens • Diminui desempenho enquanto espera por recursos compartilhados. • Adiciona “overhead” à CPU para gerenciar as threads. • Complexidade de implementação alta. • Starvation e Deadlock.

  16. Eclipse IDE Distribuição gratuita Oferece grande flexibilidade para e controle para desenvolvimento de projetos Plug-in implementam funcionalidades extras, os quais são vistos como “features” do sistema Suporte à UML Facilita o desenho o e projeto do sistema

  17. Diagrama de Casos de Uso

  18. Diagrama de Classes Uso de Interfaces Criação de Pacotes Criação de Classes e Relacionamentos

  19. O Eclipse implementa ainda: • Controle de versões • Integração entre JUnits • Assistente de código e facilidade no “debug” • Diagrama de colaboração • Diagrama de seqüência • Diagrama de estados • Diagrama de componentes • Diagrama de atividades

  20. Integração Desenho e Implementação O desenho é mapeado automaticamente em código, podendo ser executado a partir do próprio Eclipse

  21. Another Tool Eclipse Platform Workbench Help Java Development Tools (JDT) JFace SWT Team Your Tool Plug-in Development Environment (PDE) Workspace Debug Their Tool Platform Runtime Eclipse Project Arquitetura

More Related