Introdução à Linguagem Java - ppt carregar
PublicouTainá Samudio Alterado mais de 4 anos atrás
Apresentação em tema: "Introdução à Linguagem Java"— Transcrição da apresentação:
1 Introdução à Linguagem Java
2 Breve Histórico Sun Microsystems, 90/91: um grupo de desenvolvimento recebeu a tarefa de projetar uma linguagem de programação pequena que pudesse ser usada em dispositivos eletrodomésticos (controles remoto etc. ) Esses dispositivos não possuem muita memória, então a linguagem teve que ser bem pequena e gerar códigos restritos. A linguagem foi projetada para ser utilizado em diferentes tipos de hardware, graças ao uso de bytecodes e de uma Máquina Virtual.
3 Breve Histórico (cont)
1991: decidiu-se por nomear a linguagem como Java (apelido dado pelos americanos ao café). 1992: entregue o primeiro produto chamado "*7" (controle remoto extremamente inteligente). Não houve interesse comercial. Buscou-se outro modo para comercializar a tecnologia. Enquanto isso a Internet estava crescendo e era necessário um browser para poder acessá-la. Decidiu-se então pela construção deste browser, denominado HotJava, que foi inteiramente programado em Java
4 Breve Histórico (cont)
A grande inovação em relação ao Java se deu em 1995. A Netscape decidiu dar suporte à linguagem a partir de seu navegador Web para Internet (Netscape Navigator 2.0). A partir disto, todo usuário deste navegador passou a ser um potencial usuário da linguagem Java. Desde então, um fluxo constante de novidades vem acontecendo, culminando com a linguagem Java tornando-se a atual "coqueluche" dos programadores.
5 Breve Histórico (cont)
Versão atual da linguagem: 2.0 (12/98) Último release: (03/01) Penúltima versão da linguagem: 1.1 (02/97) Releases: a 1.1.8 Primeira versão da linguagem: 1.0 (05/96) releases e 1.0.2 Todas as versões foram e são distribuídas gratuitamente (http://www.javasoft.com) no pacote JDK (Java Development Kit)
6 Java Development Kit Compilador Java
javac Interpretador Java (Java Virtual Machine) java Appletviewer Java Debugger jdb Gerador Automáticos de Documentos javadoc Just-in-Time Compiler
7 Ambiente Java
8 Ambiente Java
9 Características da Linguagem Java
Simples Orientada a Objetos Distribuída Robusta Segura Neutra quanto à Arquitetura Portátil (Write Once Run Anywhere) Interpretada de Alto Desempenho Multithreaded (multitarefa) Dinâmica
10 Java é Simples Verdade, se você conhece bem C++
Não existem struct, union, artimética de ponteiros, include, classes virtuais etc. Falso, se você conhece apenas programação DOS ou VB, ou se não conhece OO sintaxe estranha escreve-se muito Verdade, pois seus produtos (.class, compilador e VM) são pequenos Falso, pois é muito extensa (muitas características)
11 Java é Orientada a Objetos
Completamente verdade metaclasses e reflexão persistência de objetos (serialização) solução mais elegante para herança múltipla (interfaces) em suma, por ser recente, é uma linguagem OO pura (ao contrário do C++, que é híbrida)
12 Java é Distribuída Completamente verdade
extensa biblioteca de rotinas para se trabalhar com protocolo TCP/IP (FTP, HTTP, SMTP) Comunicação entre objetos remotos (RMI) Habilitada para funcionar também no servidor (servlets e JSP) Habilitada para funcionar também em dispositivos portáteis (J2ME)
13 Java é Robusta Verdade possibilidade de capturar e tratar erros de run-time (exceções) excelente gerenciamento de memória impossível o acesso indevido à memória
14 Java é Segura Mais ou menos verdade
não é possível se acessar a memória fora de seu espaço de processamento possibilidade de se impedir o acesso a funções de baixo nível quando da execução a partir de um Browser novos releases que corrigem eventuais falhas de segurança descobertas
15 Java é Neutra quanto à Arquitetura
Verdade os bytecodes contidos em um arquivo .class podem ser executados em uma grande de diferentes plataformas para as quais existam JVMs (Windows 9x, Windows NT, Windows 3.11, MacOS, Solaris, Linux, Mainframe*.* :), HP-UX, PalmTops, Web-TVs, torradeiras, cafeteiras :))) etc.
16 Java é Portátil Grande Verdade (Write Once Run Anywhere)
quem define as características particulares à cada arquitetura é a JVM e não o .class o padrão Unicode facilita a tarefa de "internacionalização" do código a aplicação tem a mesma "cara", não importa o S.O. (apenas a partir da versão 1.1, com o pacote Swing que pode substituir o AWT)
17 Java é Interpretada Grande desvantagem :(
o desempenho do compilador e da JVM é ruim para Wintel, a configuração mínima é Pentium 100 com 32 Mb de RAM
18 Java é de Alto Desempenho
Pode ser verdade, graças a mecanismos como: JIT (Just in Time Compiler) compiladores nativos (transformam o .class em .exe) IDEs (JBuilder, Visual Café etc), que facilitam muito o desenvolvimento das aplicações
19 Java é Multithreaded "Permite que um programa faça mais de uma coisa ao mesmo tempo" muito "fácil" de implementar porém, a maneira como a JVM interpreta o código multithreaded varia, dependendo da arquitetura
20 Java é Dinâmica Os bindings são resolvidos em tempo de execução (funciona bem somente a partir da versão 1.1) Permite que novos métodos sejam acrescentados a uma biblioteca sem afetar os clientes desta biblioteca
21 Java é a Linguagem da Internet
Do lado do "Cliente", isto é mais ou menos verdade, graças aos applets, que são suportados por praticamente todos os Web Browser (diferente de outras tecnologias que exigem o uso de plug-in) Do lado do "Cliente", applets são mais profissionais que linguagens script (Javascript e VBScript por exemplo)
22 Java é a Linguagem da Internet (cont)
Do lado do "Servidor", isto é verdade graças aos servlets (applets que rodam no servidor e que substituem os scripts Perl como mecanismo para CGI) e ao JSP (Java Server Pages), tecnologia que facilita a criação de páginas dinâmicas
23 O que Java não é... Java não é Javascript e vice-versa
Java não é uma extensão de HTML Java não é fácil de aprender Java não é um ambiente fácil de se programar Java ainda não é uma linguagem de programação universal
24 O que Java não é... (cont) Java não é tão lenta quanto seus inimigos dizem (madura o suficiente para o desenvolvimento de aplicações sérias) Java não se restringe somente à Internet (boa para aplicações OO stand-alone, com ou sem interface gráfica)