Você está na página 1de 37

Linguagens de Programao III

Aula 02
Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br

Linguagens de Programao
Tcnica de comunicao padronizada para enviar
instrues a um computador.

Assim como a linguagem humana, cada linguagem


de programao tem sua sintaxe e gramtica.

Existem diferentes tipos de linguagem de


programao que podem ser utilizadas para criao de programas.

Categorias da Linguagens de Programao


Linguagens de Programao de Alto Nvel - mais amigvel ao usurio - O programa dever ser traduzido atravs de um compilador - Exemplos: Java, C, C++, Basic, Fortran

Linguagens de Montagem de Baixo Nvel - Similares s linguagens de mquina - So mais simples e permitem a um programador substituir nomes por nmeros - Linguagens de montagem esto disponveis para cada famlia de CPU
3

Ciclo de Vida do Desenvolvimento de um Programa

Tipos de Erros
Erros de Compilao ou Erros de Sintaxe - Ocorrem quando existem erros de sintaxe no programa - O compilador ir detectar o erro e o programa no ser compilado - O programador estar impossibilitado de gerar um programa executvel at que ele conserte o erro Erros de Execuo - Compiladores no so perfeitos e no podem detectar todos os erros de compilao - Isto especialmente verdadeiro nos erros de lgica como os laos de repetio infinitos - Este tipo de erro chamado erro de execuo
5

Histrico do Java
- Criada em 1991 quando cientistas da Sun, liderados por
Patrick Naughton e James Gosling, projetaram uma linguagem pequena para ser utilizada em eletrodomsticos em geral. O projeto se chamava Green.

- Como os cientistas vinham de uma gerao UNIX, eles


basearam essa linguagem nova em C++ e ela foi chamada inicialmente de OAK.

- OAK um tipo de rvore que os autores apreciavam.


- Posteriormente, mudaram o nome para Java, porque j havia uma linguagem com o nome OAK.
6

Histrico do Java

Histrico do Java
Os cientistas passaram os anos de 1993 e 1994 tentando vender a
sua tecnologia ... Mas no encontraram clientes ...

Enquanto isso, a WEB crescia exponencialmente ... A chave para a WEB o browser que recebe o hipertexto e converte
para a tela. Ento, para mostrar o poder de Java eles construram o browser HotJava. Este browser reconhecia applets, e por isso tinha uma mquina virtual Java embutida em si.

Em 1995, a Netscape decidiu tornar a prxima verso apta a


reconhecer applets Java. A partir de ento, todas as verses posteriores do Netscape, inclusive o Internet Explorer, reconhecem Java.
8

O que a Tecnologia Java ?

Tecnologia Java: linguagem de programao

10

Tecnologia Java: ambiente de desenvolvimento

11

Tecnologia Java: ambiente de aplicao e distribuio

12

Caracterstica Java: Mquina Virtual Java (MVJ)

13

Caracterstica Java: Mquina Virtual Java (MVJ)


um computador abstrato definido por uma especificao.
Para executar um programa Java, precisamos de uma implementao desta mquina virtual.

Por exemplo, a Sun oferece uma implementao da MVJ que


o interpretador java.exe que vem juntamente com o ambiente de programao.

14

Caractersticas da Linguagem Java


Parecida com C/C++
o A sintaxe muito semelhante a da linguagem C/C++. o Em Java, no existe aritmtica de ponteiros, estruturas e unies ...

Orientada a objetos
o uma linguagem voltada para programao orientada a objetos, por isso, todo cdigo est contido dentro de classes.

Compilada e Interpretada
o Todo programa compilado e interpretado. Um programa em Java compilado para um cdigo composto por instrues chamadas bytecode. O bytecode um cdigo de uma mquina virtual, chamada Mquina Virtual Java (Java Virtual Machine JVM). Os bytecodes so independentes da plataforma e so interpretados pela JVM para serem executados no computador.
15

Caractersticas da Linguagem Java


Todo interpretador Java ou browser que execute applets Java uma
implementao de uma Mquina Virtual Java. A JVM tambm pode ser implementada em hardware.

Alm da JVM, a plataforma Java composta tambm pela Java Application


Programming Interface (Java API). A API Java uma grande coleo de componentes de software disponibilizados que fornecem muitas capacidades interessantes e teis, como, componentes de interface grfica. A API Java agrupada com bibliotecas (pacotes) de componentes relacionados.

O cdigo Java compilado uma nica vez, porm o programa


interpretado toda vez que for executado.
16

Caractersticas da Linguagem Java

17

Caractersticas da Linguagem Java


Segura
o A presena da coleta automtica de lixo (Garbage Collection) evita erros comuns que os programadores cometem quando so obrigados a gerenciar diretamente a memria (C, C++, Pascal). No se usa ponteiros, em favor do uso de vetores, objetos e outras estruturas substitutivas, que trazem benefcios em termos de segurana.

Suporta concorrncia
o Java suporta Multithreading que a capacidade de um programa fazer mais de uma tarefa ao mesmo tempo, como por exemplo, imprimir enquanto l um fax. A linguagem permite a criao, de maneira fcil, de vrios threads de execuo, que eliminam o perodo de inatividade do processador executando concorrentemente em sistemas multiprocessadores.

18

O Ambiente de Programao Java

19

Fases de um programa Java

20

Fases de um programa Java

21

Primeiro Programa - Exemplo


1.

/*Meu primeiro programa Java */ 2. public class Main 3. { 4. public static void main(String[] args) 5. { 6. System.out.println("Ol Mundo"); 7. } 8. }

22

Primeiro Programa - Exemplo


Linha 2. public class Main
o Esta linha utiliza a palavra reservada class para declarar que uma nova classe ser definida aqui. o Main o nome usado para identificar a classe. Toda definio de classe, inclusive todo o cdigo e os dados, estar entre as chaves { e } que encontram-se nas linhas 3 e 8 deste exemplo.

Linha 4. public static void Main(String[] args)


o A linha 4 contm a declarao do mtodo main. Este mtodo simplesmente um ponto de partida para o interpretador Java. por onde ser iniciada a execuo. o O mtodo main dever ser sempre declarado na forma acima.
23

Primeiro Programa - Exemplo


Linha 6. System.out.println("Ol Mundo");
o Esta linha executa o mtodo println do objeto out. Este objeto uma instncia da classe OutputStream e foi declarado como varivel de classe (static) na classe System. Esse mtodo imprime na tela uma mensagem texto, no caso, Ol Mundo.

Por causa do modelo de objeto, uma sada simples em tela difcil de entender. Por isso, at aprofundarmos o conhecimento suficientemente, pense apenas em:
System.out.println como um mtodo para impresso na tela (sada do console).

24

Estruturas Fundamentais de Programao Java


Espao em branco
o Java uma linguagem de formato livre. No necessrio endentar para que ela funcione corretamente. Por exemplo, o nosso programa Ol Mundo poderia ser escrito da seguinte maneira:

public class Main{public static void main(String[] args) {System.out.println("Ol Mundo");}}

25

Estruturas Fundamentais de Programao Java


Comentrios
o Os comentrios em cdigo-fonte podem ser de 3 tipos, de uma linha, de vrias linhas e de documentao. o Os comentrios de uma linha
// esta uma varivel do tipo int

o Os comentrios de vrias linhas


/* esta uma varivel do tipo int e todas as variveis dessa classe so Tambm do tipo int porque os valores atribudos so do tipo inteiro */

o Os comentrios de documentao
/** este comentrio serve para mostrar o uso da ferramenta JavaDoc para gerar documentao HTML */
26

Estruturas Fundamentais de Programao Java


Palavras-chave reservadas
o So usadas para identificar tipos, modificadores e mecanismos de controle de fluxo. Essas palavras, juntamente com os operadores e separadores, formam uma definio da linguagem Java. Elas no podem ser utilizadas como nome de varivel, mtodo ou classe.

27

Estruturas Fundamentais de Programao Java


Identificadores
o Os identificadores so as palavras usadas para nomes de classes, mtodos e variveis. Um identificador pode ser qualquer sequncia de caracteres de letras maisculas e minsculas, nmeros e caracteres de sublinhado. Mas observer:
No podem comear com nmeros para serem identificados como literais numricos e A linguagem Java sensvel a maisculas e minsculas, por isso o identificador

Valor valor Nome nome Endereco endereco


28

Estruturas Fundamentais de Programao Java


Convenes para nomes de identificadores
o Variveis e mtodos devem ser definidos com letras minsculas. No caso do identificador ser formado por mais de um termo, o segundo termo e os termos seguintes devem iniciar com letra maiscula. As variveis so compostas por substantivos e adjetivos, enquanto os nomes dos mtodos comeam sempre com um verbo. o Exemplos:

hora horaDoDia valorCorrente obterHoraDoDia ( )


29

Estruturas Fundamentais de Programao Java


Classes
o Os nomes das classes so escritas em minsculo com a primeira letra em maiscula. Para os nomes compostos por mais de um termo, usase comear os termos seguintes com letra maiscula. Os nomes de classes Java so formados por substantivos e adjetivos. o Exemplos:

InterfaceSimples Interface CalculaMaiorNumero

30

Estruturas Fundamentais de Programao Java


Declarao Import
o Para utilizar os pacotes Java, usa-se a declarao de importao que define onde o compilador pode encontrar as classes destes pacotes. A declarao de importao import deve preceder a declarao de todas as classes. o O compilador ir procurar por pacotes dentro dos diretrios especificados na varivel de ambiente classpath. Um pacote pode ainda estar compactado dentro de um arquivo JAR.

31

Estruturas Fundamentais de Programao Java


Tipos primitivos de dados
o Java tem 8 tipos simples de dados que podem ser classificados em quatro grupos: o Inteiros: byte, short, int, long que so usados para nmeros inteiros. o Nmeros de ponto flutuante: float, double que so todos os nmeros com preciso de frao. o Caracteres: char. o Valores lgicos: boolean que um tipo especial usado para representar valores lgicos.

32

Estruturas Fundamentais de Programao Java

33

Estruturas Fundamentais de Programao Java


Declarao e Inicializao de Valores
o As variveis do tipo byte, short, int, long, float, double, char e boolean podem ser declaradas de acordo com uma das formas exibidas abaixo:

o As variveis de dentro de uma classe no inicializadas recebem por default o valor 0 (zero). o As variveis locais de dentro de um mtodo no so inicializadas por default e por isso gerado um erro de compilao, quando no so inicializadas e so acessadas.
34

Estruturas Fundamentais de Programao Java


Criar variveis de cada tipo e exibir seus respectivos valores

35

Estruturas Fundamentais de Programao Java


Criar variveis de cada tipo e exibir seus respectivos valores

36

Linguagens de Programao III


Aula 02
Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br