Please enable JavaScript.
Coggle requires JavaScript to display documents.
Introdução à Linguagem de Programação Java (FUNCIONAMENTO DE UM PROGRAMA…
Introdução à Linguagem de Programação Java
Conjunto de regras sintáticas e semânticas, utilizados para se estabelecer comunicação entre o programador e o computador.
São usadas para se escrever programas ou softwares.
Métodos de implementação de Linguagens de Programação:
É a forma como uma linguagem de programação se comunica (é entendida e executada) com o computador.
O computador possui uma linguagem de máquina de
nível baixo
que oferece operações primitivas.
O software de sistema deve criar uma interface com os programas de
nível mais alto
.
Introdução ao Java
Linguagem de programação orientada a objetos
desenvolvida por um time de programadores, liderados por Patrick Naughton, Mike Sheridan e James Gosling, na empresa Sun Microsystems.
Linguagem de Alto desempenho
, suporta multithreading, compilação just-in-time e utilização de código nativo.
É uma linguagem que é compilada para um “bytecode”
, que é interpretada por uma máquina virtual – JVM.
Principais características:
PORTABILIDADE
O Java pode ser executado em qualquer plataforma ou equipamento que possua um interpretador Java e que tenha sido especialmente compilado para o sistema a ser utilizado.
ORIENTADA A OBJETOS
Contém a sintaxe similar a linguagem C/C++, mas é baseada no modelo Simula67.
SEGURANÇA
Pode ser executado via rede, com restrições de execução, além de proteger o sistema do cliente contra possíveis ataques não intencionais.
POR QUE ESTUDAR JAVA ?
ORIENTAÇÃO A OBJETOS
totalmente 00 - permitindo herança e reutilização de código de forma dinâmica e estática.
DINAMISMO
permite ser aumentado durante a execução.
FACILIDADE
Derivada do C/C++ - Bem familiar. O ambiente retira do programador a responsabilidade de gerenciar a memória e os ponteiros.
UTILIZAÇÕES E APLICAÇÕES DO JAVA
DESENVOLVIMENTO DE APLICATIVOS WEB
FORNECIMENTO DE APLICATIVOS PARA DISPOSITIVOS VOLTADOS PARA O CONSUMO POPULAR (celulares, pagers,PDAs etc)
DESENVOLVIMENTO DE APLICATIVOS CORPORATIVOS DE GRANDE PORTE
MUITOS OUTROS PROPÓSITOS
FUNCIONAMENTO DE UM PROGRAMA JAVA
EDITOR
1
É A ESCRITA OU DESENVOLVIMENTO DO PROGRAMA - CÓDIGO FONTE.
SE FAZ NECESSÁRIO UM EDITOR DE TEXTO SIMPLES COMO O BLOCO DE NOTAS DO WINDOWS OU VI DO LINUX
EXISTEM OS AMBIENTES DE DESENVOLVIMENTO INTEGRADO (IDE - INTEGRATED DEVELOPMENT ENVIROMENT) QUE FORNECEM MUITAS FERRAMENTAS DE SUPORTE AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE EM JAVA E OUTRAS LINGUAGENS .
NETBEANS
ECLIPSE
JCREATOR
BLUEJ
.JAVA
2
COMPILADOR
3
O COMPILADOR JAVA CONVERTE O CÓDIGO-FONTE JAVA EM BYTECODES, QUE REPRESENTAM AS TAREFAS A SEREM REALIZADAS DURANTE A FASE DE EXECUÇÃO.
OS BYTECODES SÃO EXECUTADOS PELA JAVA VIRTUAL MACHINE
(JVM)
- UMA PARTE DO JDK E A BASE DA PLATAFORMA JAVA
A MÁQUINA VIRTUAL JAVA (VM - VIRTUAL MACHINE) É UM APLICATIVO DE SOFTWARE QUE SIMULA UM COMPUTADOR , MAS OCULTA O SISTEMA OPERACIONAL E O HARDWARE SUBJACENTE DOS PROGRAMAS QUE INTERAGEM COM A VM.
.CLASS
4
CARREGADOR
5
TODO PROGRAMA DEVE SER COLOCADO NA MEMÓRIA ANTES DE PODER EXECUTAR.
O CARREGADOR DE CLASSE TRANSFERE OS ARQUIVOS .CLASS CONTENDO OS BYTECODES DO PROGRAMA PARA A MEMÓRIA PRINCIPAL.
O CARREGADOR DE CLASSE TAMBÉM CARREGA QUALQUER ARQUIVOS .CLASS FORNECIDO PELO JAVA QUE SEU PROGRAMA UTILIZA.
OS ARQUIVOS .CLASS PODEM SER CARREGADOS A PARTIR DE UM DISCO EM SEU SISTEMAS OU EM UMA REDE.
BYTECODES
6
VERIFICADOR
7
ENQUANTO AS CLASSES SÃO CARREGADAS , O VERIFICADOR DE BYTECODE EXAMINA OS CÓDIGOS PARA ASSEGURAR QUE ELES SÃO VÁLIDOS E NÃO VIOLAM RESTRIÇÕES DE SEGURANÇA PARA CERTIFICAR-SE DE QUE OS PROGRAMAS JAVA QUE CHEGAM PELA REDE NÃO DANIFIQUEM OS ARQUIVOS DO SISTEMA
BYTECODES
8
INTERPRETADOR
9
EXECUÇÃO
A JVM EXECUTA O PROGRAMA INTERPRETANDO O BYTECODES GERADO NA FASE DE COMPILAÇÃO.
COM ISSO, SEQUÊNCIAS DE AÇÕES ESPECIFICADAS PELO PROGRAMADOR SÃO ,ENFIM , EXECUTADAS .
ATUALMENTE, AS JVM UTILIZAM UMA COMBINAÇÃO DE INTERPRETAÇÃO E DE COMPILAÇÃO JUST-IN-TIME (JIT).
NESSE PROCESSO , A JVM ANALISA OS BYTECODES À MEDIDA QUE ELES SÃO INTERPRETADOS.
PROCURANDO HOT SPOTS (PONTOS ATIVOS) PARTE DOS BYTECODES , QUE SÃO EXECUTADAS COM FREQUÊNCIA .
PARA ESSAS PARTES , UM COMPILADOR JIT , CONHECIDO COMO COMPILADOR JAVA HOTSPOT , TRADUZ OS BYTECODES PARA A LINGUAGEM DE MÁQUINA DO COMPUTADOR SUBJACENTE.
AMBIENTE DE PROGRAMAÇÃO EM JAVA
O ambiente de desenvolvimento de software Java, Java SDK (antigamente, JDK), é formado, essencialmente, por um conjunto de aplicativos que permite, entre outras tarefas, realizar a compilação e a execução de programas escritos na linguagem Java. Este ambiente pode ser baixado gratuitamente a partir do site da Sun Microsystems
http://java.sun.com
.
As ferramentas básicas do kit de desenvolvimento Java são:
O INTERPRETADOR DE APLICAÇÕES JAVA(MÁQUINA VIRTUAL),JAVA.
O INTERPRETADOR DE APPLETS JAVA , APPLETVIEWER
O COMPILADOR JAVA , JAVAC.
ENTENDENDO AS SIGLAS
DO AMBIENTE JAVA
J2SE
JAVA 2 STANDARD EDITION
FORNECE AS PRINCIPAIS APIs(Interface de Programação de Aplicações) E ENFOCA O DESENVOLVIMENTO DE APLICAÇÕES NA ARQUITETURA CLIENTE -SERVIDOR .
NÃO PERMITE DISTRIBUIÇÃO DE OBJETOS NEM OFERECE SUPORTE A TECNOLOGIAS PARA INTERNET
J2EE
JAVA 2 ENTERPRISE EDITION
FORNECE UM CONJUNTO DE APIs PARA O DESENVOLVIMENTO CORPORATIVO E ENFOCA NA INTEGRAÇÃO ENTRE SISTEMAS .
DISPONIBILIZA ALTA DISTRIBUIÇÃO DE OBJETOS E OFERECE TOTAL SUPORTE A TECNOLOGIAS PARA INTERNET
J2ME
JAVA 2 MICRO EDITION
FORNECE APIs PARA O DESENVOLVIMENTO DE APLICAÇÕES PARA COMPUTAÇÃO MÓVEL , EM PEQUENOS DISPOSITIVOS OU TECNOLOGIAS EMBARCADAS
TIPOS DE PROGRAMA JAVA
JAVA SERVLETS
Programas desenvolvidos para serem executados em servidores Web, baseados na J2EE, comumente usados para gerar conteúdos dinâmicos para websites.
JAVA MIDLETS
Pequenas aplicações, extremamente seguras e construídas para serem executadas dentro do J2ME.
JAVA APPLETS
Pequenas aplicações que não têm acesso aos recursos de hardware, necessitando de um navegador com suporte a J2SE para serem executados.
JAVA BEANS
São componentes de software escritos em Java que podem ser manipulados visualmente com a ajuda de uma ferramenta de desenvolvimento.
STAND - ALONE
Stand - alone – Aplicações baseadas na J2SE que tem total acesso aos recursos do sistema, memória, disco, rede, dispositivos, etc.