SlideShare uma empresa Scribd logo
1 de 32
Apresentação da Disciplina e Introdução ao Java

                 Prof. Adriano Teixeira de Souza
   Ex-acadêmico da Fasul
   Especialista em Desenvolvimento de Software
    e Novas Tecnologias - Unioeste
   Analista de Sistemas na C.Vale Agroindústria
   Desenvolvedor nas plataformas Java e .Net




                        Prof. Adriano Teixeira de Souza
   Nome
   Cidade
   Em que área trabalha
   Que tecnologias utiliza no dia-a-dia
   Expectativas para a disciplina




                         Prof. Adriano Teixeira de Souza
   Ementa
    ◦ Estrutura de dados primitivas:
      Pilhas, listas, árvores
    ◦ Algoritmos de manipulação de estrutura de dados:
      Inserção, eliminação, busca e percurso
    ◦ Algoritmos de ordenação de dados
      Quick sort, Bouble sort, Merge sort e Heap sort
    ◦ Algoritmos de pesquisa
      Busca binária e busca linear
    ◦ Medidas de complexidade algorítmicas
    ◦ Desenvolvimento com utilização de estrutura de
      dados


                                 Prof. Adriano Teixeira de Souza
   Utilização da linguagem Java
   Aulas práticas
   Listas de exercícios
   Discussão do conteúdo
   Trabalhos
   Avaliação bimestral
   Nota
    ◦ Avaliação bimestral (Peso de 50%)
    ◦ Trabalhos e listas de exercícios (peso de 35% )
    ◦ Participação e envolvimento em sala (peso 15%)



                            Prof. Adriano Teixeira de Souza
   JAVA SE 6 (Standard Edition)

   Eclipse 3.7.2




                         Prof. Adriano Teixeira de Souza
   Linguagem de programação

   Uma plataforma:




                      Prof. Adriano Teixeira de Souza
   Linguagem de alto nível,

   Orientada a objetos.

   Programas são compilados e interpretados.

   Linguagem intermediária chamada bytecode

   Java Virtual Machine (JVM)

   programas Java executados em qualquer sistema
    que tenha uma versão da JVM.



                           Prof. Adriano Teixeira de Souza
   É uma plataforma apenas de software que é
    executada sobre várias plataformas de
    hardware. Ela possui três versões:

   Java SE (Standard Edition)
   Java EE (Enterprise Edition)
   Java ME (Micro Edition)




                          Prof. Adriano Teixeira de Souza
   O Java SE permite desenvolver e implantar
    aplicativos Java em desktops e
    servidores, bem como ambientes integrados
    e em tempo real. O Java SE inclui classes que
    suportam o desenvolvimento de serviços da
    Web para Java e fornece a base para Java
    Platform, Enterprise Edition (Java EE).




                         Prof. Adriano Teixeira de Souza
   A versão corporativa o ajuda a desenvolver e
    implantar aplicativos Java do lado do servidor
    transportáveis, robustos, escaláveis e
    seguros. Construído com base em Java SE, o
    Java EE fornece APIs de serviços da Web, de
    modelo de componente, de gerenciamento e
    de comunicações para implementar
    aplicativos SOA e da Web 2.0 de classe
    corporativa.




                         Prof. Adriano Teixeira de Souza
   O Java ME fornece um ambiente para aplicativos em
    execução em uma grande variedade de dispositivos
    móveis e integrados, como :
    ◦   Telefones celulares
    ◦   PDAs
    ◦   TV set-top boxes
    ◦   Impressoras.
   Inclui :

    ◦   interfaces com o usuário flexíveis
    ◦   um modelo de segurança robusto
    ◦   uma grande variedade de protocolos de rede integrados
    ◦    suporte extensivo para aplicativos em rede e off-line que
        podem ser transferidos por download dinamicamente.


                                  Prof. Adriano Teixeira de Souza
   Principais benefícios da linguagem Java:

    ◦ Portabilidade de aplicativos Java em plataformas de
      hardware e sistemas operacionais — possível porque a
      JVM instalada em cada plataforma entende o mesmo
      bytecode.

    ◦ A linguagem Java e a plataforma têm uma escala
      impressionante. Os aplicativos podem ser facilmente
      gravados (ou adaptados de aplicativos de desktop Java
      existentes) para dispositivos com recursos limitados.
      recursos da Web.

    ◦ Projetada para execução de maneira segura em redes, a
      linguagem suporta este nível de segurança ao operar na
      Internet.


                             Prof. Adriano Teixeira de Souza
   Em uma linguagem de programação como C
    e Pascal, temos o seguinte quadro quando
    vamos compilar um programa:

    ◦ O código fonte é compilado para uma plataforma e
      sistema operacional específico. Muitas vezes, o
      próprio código fonte é desenvolvido visando uma
      única plataforma!

    ◦ Esse código executável (binário) resultante será
      executado pelo sistema operacional e, por esse
      motivo, ele deve saber conversar com o sistema
      operacional em questão.


                             Prof. Adriano Teixeira de Souza
Linguagem “C”




                Prof. Adriano Teixeira de Souza
Linguagem Java




                 Prof. Adriano Teixeira de Souza
Linguagem Java




                 Prof. Adriano Teixeira de Souza
/* Primeiro Programa em Java */             comentários
package pacote;                             definição do pacote

import java.util.Scanner;                   biblioteca de E/S

Public class MeuPrograma {                  definição da classe

    // função principal|inicio
    public static void main(String[] args)
    {                                     marca início da função

        // função para escrever na tela
        System.out.println ("olá Java!!");


    }                                       marca fim da função
}



                                  Prof. Adriano Teixeira de Souza
   O eclipse é uma IDE Open Source (código fonte
    aberto) que serve para o desenvolvimento em
    muitas linguagens:
    ◦   PHP
    ◦   Java
    ◦   Python
    ◦   HTML
    ◦   C/C++
   A IDE Eclipse foi iniciado pela forte IBM, e depois
    foi doada para uma comunidade software livre.
   A grande vantagem do Eclipse é que seu
    desenvolvimento é todo baseado em plugins, isso
    nos ajuda muito na hora de utilizado para outras
    linguagens.
                            Prof. Adriano Teixeira de Souza
   Variável: “objeto” que pode assumir diversos
     valores
    Espaço de memória de um certo tipo de dado
     associado a um nome para referenciar seu
     conteúdo
public static void main(String[] args) {
  int idade;
  idade = 30;
  System.out.println (“ A idade é :”+idade);
}


                         Prof. Adriano Teixeira de Souza
   Comece com letras ou sublinhado:
    ◦ Seguidos de letras, números ou sublinhados

   Java é sensível ao caso:
    ◦ Peso   <>     peso   <>        pEso

   Não podemos definir um identificador com o
    mesmo nome que uma palavra chave
    ◦ static public int long if while do, dentre outras




                            Prof. Adriano Teixeira de Souza
     Determina um conjunto de valores e as possíveis
        operações realizadas sobre os mesmos
       Informa a quantidade de memória (bits)

 Tipo     Tamanho                              Escala
 byte       8 bits                          -128 a 127
 short     16 bits                      -32.768 a 32.767
  int      32 bits               -2.147.483.648 a 2.147.483.647
 long      64 bits   -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807
 float     32 bits           -3.40292347E+38 a +3.40292347E+38
double     64 bits               -1.79769313486231570E+308 a
                                  +1.79769313486231570E+308
 char      16 bits                      'u0000' a 'uFFFF'
boolean     1 bit                          true ou false



                                     Prof. Adriano Teixeira de Souza
public static void main(String[] args) {

    int soma=10;
    float money= 2.21f;
    char letra= 'A';
    double num =2.01E6;
    String nome = “Aloisio”; //não é primitivo, é classe.

    System.out.println("n   valor   da   soma = "+ soma);
    System.out.println("n   Valor   de   Money = "+ money);
    System.out.println("n   Valor   de   Letra = "+ letra);
    System.out.println("n   Valor   de   Pi = "+ num);
    System.out.println("n   Valor   de   nome = "+ nome );

}



                              Prof. Adriano Teixeira de Souza
Saída de
 Entrada    Processamento de                     Dados
de Dados          dados




           Instruções de E/S




                   Prof. Adriano Teixeira de Souza
   Apresentação de dados no monitor
   System.out.println(“string de controle”);

Exemplo:
Scanner leitor = new Scanner(System.in);

System.out.println(“Digite a sua idade:n”);

int idade = leitor.nextInt();

System.out.println(“Sua idade é: ”+idade);

                          Prof. Adriano Teixeira de Souza
Operador            Ação
   +               Adição
   *            Multiplicação
   /              Divisão
   %       Resto da divisão inteira

   -         Subtração (unário)
   --           Decremento
  ++            Incremento

               Prof. Adriano Teixeira de Souza
Operador            Ação
   >              Maior que
  >=         Maior ou igual que
   <              Menor que
  <=        Menor ou igual que
  ==                Igual a
   !=            Diferente de
   &&           Condição “E”
   ||          Condição “OU”
   !                  Não



           Prof. Adriano Teixeira de Souza
Operador   Exemplo              Ação
  +=        x += y             x=x+y
  -=        x -= y             x=x-y
  *=        x *= y             x=x*y
  /=        x /= y             x=x/y
  %=       x %= y              x=x%y



               Prof. Adriano Teixeira de Souza
Operador Exemplo                         Ação
  ++      ++a      adicionar 1 à variável a e depois calcular a
                          expressão na qual a reside
          a++       calcular a expressão na qual a reside e
                        depois adicionar 1 à variável a
  --               subtrair 1 da variável a e depois calcular a
          --a
                           expressão na qual a reside
          a--       calcular a expressão na qual a reside e
                        depois subtrair 1 da variável a




                              Prof. Adriano Teixeira de Souza
   Observemos antes de mais nada que ++x é
    diferente de x++!

Se                           porém Se
    x = 10;                    x = 10;
    y = ++x;                   y = x++;
    /* x=x+1;   y=x; */        /* y=x;        x=x+1 */
                             então
então                          x = 11 e
  x = 11 e                     y = 10
    y = 11




                          Prof. Adriano Teixeira de Souza
   1) Faça um programa para ler e escrever na
    tela o seu nome e a sua idade.

   2) Faça um programa para ler e escrever na
    tela os seguintes dados:
    ◦   Nome
    ◦   Endereço
    ◦   Telefone
    ◦   Cidade
    ◦   Cep




                        Prof. Adriano Teixeira de Souza
   3) Entre com 3 números, verifique qual o
    maior dentre os valores informados e
    imprima na tela a frase “o maior número é X”
    ◦ Onde X é a variável contendo o maior valor

   4) Entre com 2 números e apresente-os de
    forma ordenada




                            Prof. Adriano Teixeira de Souza

Mais conteúdo relacionado

Mais procurados

Exercício resolvido normalização
Exercício resolvido normalizaçãoExercício resolvido normalização
Exercício resolvido normalização
Ticianne Darin
 
Estrutura de dados - Introdução a linguagem C
Estrutura de dados - Introdução a linguagem CEstrutura de dados - Introdução a linguagem C
Estrutura de dados - Introdução a linguagem C
Adriano Teixeira de Souza
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
Mauro Pereira
 

Mais procurados (20)

Sistemas Distribuidos Java
Sistemas Distribuidos JavaSistemas Distribuidos Java
Sistemas Distribuidos Java
 
Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++
 
Exercício resolvido normalização
Exercício resolvido normalizaçãoExercício resolvido normalização
Exercício resolvido normalização
 
Algoritmos Gulosos - Troco Mínimo
Algoritmos Gulosos - Troco MínimoAlgoritmos Gulosos - Troco Mínimo
Algoritmos Gulosos - Troco Mínimo
 
Modelagem de dados
Modelagem de dadosModelagem de dados
Modelagem de dados
 
Estrutura de dados - Introdução a linguagem C
Estrutura de dados - Introdução a linguagem CEstrutura de dados - Introdução a linguagem C
Estrutura de dados - Introdução a linguagem C
 
Manual de portugol
Manual de portugolManual de portugol
Manual de portugol
 
Aula 09 - introducao oo
Aula 09 - introducao ooAula 09 - introducao oo
Aula 09 - introducao oo
 
Acesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBCAcesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBC
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 
[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner
[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner
[Curso Java Basico] Aula 12: Lendo dados do teclado usando a classe Scanner
 
Variáveis e portugol
Variáveis e portugolVariáveis e portugol
Variáveis e portugol
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
O que é um Banco de Dados Relacional?
O que é um Banco de Dados Relacional?O que é um Banco de Dados Relacional?
O que é um Banco de Dados Relacional?
 
Banco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQLBanco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQL
 
JAVA - Herança
JAVA - HerançaJAVA - Herança
JAVA - Herança
 
Orientação a Objetos em Python
Orientação a Objetos em PythonOrientação a Objetos em Python
Orientação a Objetos em Python
 
[Curso Java Basico] Aula 14: Condicionais If-Else
[Curso Java Basico] Aula 14: Condicionais If-Else[Curso Java Basico] Aula 14: Condicionais If-Else
[Curso Java Basico] Aula 14: Condicionais If-Else
 
Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de Software
 

Destaque

Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)
Adriano Teixeira de Souza
 
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Adriano Teixeira de Souza
 
Estrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores BináriasEstrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores Binárias
Adriano Teixeira de Souza
 
Estrutura de dados em Java - Ponteiros e Alocação de Memória
Estrutura de dados em Java - Ponteiros e Alocação de Memória Estrutura de dados em Java - Ponteiros e Alocação de Memória
Estrutura de dados em Java - Ponteiros e Alocação de Memória
Adriano Teixeira de Souza
 
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Adriano Teixeira de Souza
 
Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada
Adriano Teixeira de Souza
 

Destaque (20)

Estrutura de dados em Java - Filas
Estrutura de dados em Java - FilasEstrutura de dados em Java - Filas
Estrutura de dados em Java - Filas
 
Estrutura de dados em Java - Filas
Estrutura de dados em Java - Filas Estrutura de dados em Java - Filas
Estrutura de dados em Java - Filas
 
Estrutura de dados em Java - Pilhas
Estrutura de dados em Java - PilhasEstrutura de dados em Java - Pilhas
Estrutura de dados em Java - Pilhas
 
Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)
 
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
 
Estrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores BináriasEstrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores Binárias
 
Aplicação de Integração Contínua para viabilizar a rastreabilidade de artefat...
Aplicação de Integração Contínua para viabilizar a rastreabilidade de artefat...Aplicação de Integração Contínua para viabilizar a rastreabilidade de artefat...
Aplicação de Integração Contínua para viabilizar a rastreabilidade de artefat...
 
Estruturas de dados
Estruturas de dadosEstruturas de dados
Estruturas de dados
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentais
 
Estrutura de dados em Java - Ponteiros e Alocação de Memória
Estrutura de dados em Java - Ponteiros e Alocação de Memória Estrutura de dados em Java - Ponteiros e Alocação de Memória
Estrutura de dados em Java - Ponteiros e Alocação de Memória
 
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
 
Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada
 
Estrutura de dados em Java - Recursividade
Estrutura de dados em Java - RecursividadeEstrutura de dados em Java - Recursividade
Estrutura de dados em Java - Recursividade
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - Apresentação
 
Estrutura de dados - Árvores Binárias
Estrutura de dados - Árvores BináriasEstrutura de dados - Árvores Binárias
Estrutura de dados - Árvores Binárias
 
ESTRUTURA DE DADOS (JAVA) AULA 03
ESTRUTURA DE DADOS (JAVA) AULA 03ESTRUTURA DE DADOS (JAVA) AULA 03
ESTRUTURA DE DADOS (JAVA) AULA 03
 
ESTRUTURA DE DADOS (JAVA) AULA 09
ESTRUTURA DE DADOS (JAVA) AULA 09ESTRUTURA DE DADOS (JAVA) AULA 09
ESTRUTURA DE DADOS (JAVA) AULA 09
 
Certificacao Java
Certificacao JavaCertificacao Java
Certificacao Java
 
ESTRUTURA DE DADOS (JAVA) AULA 01
ESTRUTURA DE DADOS (JAVA) AULA 01ESTRUTURA DE DADOS (JAVA) AULA 01
ESTRUTURA DE DADOS (JAVA) AULA 01
 
Introdução à Estrutura de Dados
Introdução à Estrutura de DadosIntrodução à Estrutura de Dados
Introdução à Estrutura de Dados
 

Semelhante a Estrutura de Dados em Java (Introdução)

Estrutura de Dados - Características da linguagem C - 1
Estrutura de Dados - Características da linguagem C - 1Estrutura de Dados - Características da linguagem C - 1
Estrutura de Dados - Características da linguagem C - 1
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Adriano Teixeira de Souza
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao java
Armando Daniel
 

Semelhante a Estrutura de Dados em Java (Introdução) (20)

Estrutura de Dados - Características da linguagem C - 1
Estrutura de Dados - Características da linguagem C - 1Estrutura de Dados - Características da linguagem C - 1
Estrutura de Dados - Características da linguagem C - 1
 
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
 
Linguagem Java- Iniciação à programação Java
Linguagem Java- Iniciação à programação JavaLinguagem Java- Iniciação à programação Java
Linguagem Java- Iniciação à programação Java
 
Java e orientação a objetos
Java e orientação a objetosJava e orientação a objetos
Java e orientação a objetos
 
Linguagem de Programação Java
Linguagem de Programação JavaLinguagem de Programação Java
Linguagem de Programação Java
 
Produtividade em Java com Grails
Produtividade em Java com GrailsProdutividade em Java com Grails
Produtividade em Java com Grails
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao java
 
Algoritomos aula 3 rafael
Algoritomos aula 3 rafaelAlgoritomos aula 3 rafael
Algoritomos aula 3 rafael
 
POO - Aula 1 introducao
POO - Aula 1   introducaoPOO - Aula 1   introducao
POO - Aula 1 introducao
 
Desenvolvendo para WEB com JAVA
Desenvolvendo para WEB com JAVADesenvolvendo para WEB com JAVA
Desenvolvendo para WEB com JAVA
 
Trabalho 4 Semestre e 5 Semestre 2015
Trabalho 4 Semestre e 5 Semestre 2015Trabalho 4 Semestre e 5 Semestre 2015
Trabalho 4 Semestre e 5 Semestre 2015
 
Linguagem Java, fundamentos da linguagem Java
Linguagem Java, fundamentos da linguagem JavaLinguagem Java, fundamentos da linguagem Java
Linguagem Java, fundamentos da linguagem Java
 
Guia Rápido de Referência Java
Guia Rápido de Referência JavaGuia Rápido de Referência Java
Guia Rápido de Referência Java
 
Java - Primeiros passos
Java - Primeiros passosJava - Primeiros passos
Java - Primeiros passos
 
Azure Weekend 2016 - Bancos de Dados no Azure
Azure Weekend 2016 - Bancos de Dados no AzureAzure Weekend 2016 - Bancos de Dados no Azure
Azure Weekend 2016 - Bancos de Dados no Azure
 
Compweek
CompweekCompweek
Compweek
 
Matando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonMatando o Java e Mostrando o Python
Matando o Java e Mostrando o Python
 
Minicurso Java
Minicurso JavaMinicurso Java
Minicurso Java
 
1.introducao java
1.introducao java1.introducao java
1.introducao java
 
Spring framework 2.5
Spring framework 2.5Spring framework 2.5
Spring framework 2.5
 

Mais de Adriano Teixeira de Souza

Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMSSistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Adriano Teixeira de Souza
 
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em JavaParadigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Adriano Teixeira de Souza
 
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Adriano Teixeira de Souza
 
Ferramentas para desenvolvimento web com produtividade - Slide Artigo (2009)
Ferramentas para desenvolvimento web com produtividade -  Slide Artigo (2009)Ferramentas para desenvolvimento web com produtividade -  Slide Artigo (2009)
Ferramentas para desenvolvimento web com produtividade - Slide Artigo (2009)
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Tratamento de Exceções
Paradigmas de Linguagens de Programação - Tratamento de ExceçõesParadigmas de Linguagens de Programação - Tratamento de Exceções
Paradigmas de Linguagens de Programação - Tratamento de Exceções
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de ControleParadigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de Controle
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Expressões e Instruções de Atribuição
Paradigmas de Linguagens de Programação - Expressões e Instruções de AtribuiçãoParadigmas de Linguagens de Programação - Expressões e Instruções de Atribuição
Paradigmas de Linguagens de Programação - Expressões e Instruções de Atribuição
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Tipos primitivos e compostos
Paradigmas de Linguagens de Programação - Tipos primitivos e compostosParadigmas de Linguagens de Programação - Tipos primitivos e compostos
Paradigmas de Linguagens de Programação - Tipos primitivos e compostos
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Tipos Abstratos de Dados
Paradigmas de Linguagens de Programação - Tipos Abstratos de DadosParadigmas de Linguagens de Programação - Tipos Abstratos de Dados
Paradigmas de Linguagens de Programação - Tipos Abstratos de Dados
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Escopo estático/dinâmico
Paradigmas de Linguagens de Programação - Escopo estático/dinâmicoParadigmas de Linguagens de Programação - Escopo estático/dinâmico
Paradigmas de Linguagens de Programação - Escopo estático/dinâmico
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - ClassificaçõesParadigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - Classificações
Adriano Teixeira de Souza
 

Mais de Adriano Teixeira de Souza (15)

Responsive web design
Responsive web designResponsive web design
Responsive web design
 
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMSSistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
 
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
 
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em JavaParadigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em Java
 
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
 
Ferramentas para desenvolvimento web com produtividade - Slide Artigo (2009)
Ferramentas para desenvolvimento web com produtividade -  Slide Artigo (2009)Ferramentas para desenvolvimento web com produtividade -  Slide Artigo (2009)
Ferramentas para desenvolvimento web com produtividade - Slide Artigo (2009)
 
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
 
Paradigmas de Linguagens de Programação - Tratamento de Exceções
Paradigmas de Linguagens de Programação - Tratamento de ExceçõesParadigmas de Linguagens de Programação - Tratamento de Exceções
Paradigmas de Linguagens de Programação - Tratamento de Exceções
 
Paradigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de ControleParadigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de Controle
 
Paradigmas de Linguagens de Programação - Expressões e Instruções de Atribuição
Paradigmas de Linguagens de Programação - Expressões e Instruções de AtribuiçãoParadigmas de Linguagens de Programação - Expressões e Instruções de Atribuição
Paradigmas de Linguagens de Programação - Expressões e Instruções de Atribuição
 
Paradigmas de Linguagens de Programação - Tipos primitivos e compostos
Paradigmas de Linguagens de Programação - Tipos primitivos e compostosParadigmas de Linguagens de Programação - Tipos primitivos e compostos
Paradigmas de Linguagens de Programação - Tipos primitivos e compostos
 
Paradigmas de Linguagens de Programação - Tipos Abstratos de Dados
Paradigmas de Linguagens de Programação - Tipos Abstratos de DadosParadigmas de Linguagens de Programação - Tipos Abstratos de Dados
Paradigmas de Linguagens de Programação - Tipos Abstratos de Dados
 
Paradigmas de Linguagens de Programação - Escopo estático/dinâmico
Paradigmas de Linguagens de Programação - Escopo estático/dinâmicoParadigmas de Linguagens de Programação - Escopo estático/dinâmico
Paradigmas de Linguagens de Programação - Escopo estático/dinâmico
 
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
 
Paradigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - ClassificaçõesParadigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - Classificações
 

Último

Último (9)

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Entrevistas, artigos, livros & citações de Paulo Pagliusi
Entrevistas, artigos, livros & citações de Paulo PagliusiEntrevistas, artigos, livros & citações de Paulo Pagliusi
Entrevistas, artigos, livros & citações de Paulo Pagliusi
 
Aula 01 - Introducao a Processamento de Frutos e Hortalicas.pdf
Aula 01 - Introducao a Processamento de Frutos e Hortalicas.pdfAula 01 - Introducao a Processamento de Frutos e Hortalicas.pdf
Aula 01 - Introducao a Processamento de Frutos e Hortalicas.pdf
 
COI CENTRO DE OPERAÇÕES INDUSTRIAIS NAS USINAS
COI CENTRO DE OPERAÇÕES INDUSTRIAIS NAS USINASCOI CENTRO DE OPERAÇÕES INDUSTRIAIS NAS USINAS
COI CENTRO DE OPERAÇÕES INDUSTRIAIS NAS USINAS
 
Palestras sobre Cibersegurança em Eventos - Paulo Pagliusi
Palestras sobre Cibersegurança em Eventos - Paulo PagliusiPalestras sobre Cibersegurança em Eventos - Paulo Pagliusi
Palestras sobre Cibersegurança em Eventos - Paulo Pagliusi
 
ATIVIDADE 1 - CÁLCULO DIFERENCIAL E INTEGRAL II - 52_2024.docx
ATIVIDADE 1 - CÁLCULO DIFERENCIAL E INTEGRAL II - 52_2024.docxATIVIDADE 1 - CÁLCULO DIFERENCIAL E INTEGRAL II - 52_2024.docx
ATIVIDADE 1 - CÁLCULO DIFERENCIAL E INTEGRAL II - 52_2024.docx
 
Convergência TO e TI nas Usinas - Setor Sucroenergético
Convergência TO e TI nas Usinas - Setor SucroenergéticoConvergência TO e TI nas Usinas - Setor Sucroenergético
Convergência TO e TI nas Usinas - Setor Sucroenergético
 
ATIVIDADE 1 - GESTÃO DE PESSOAS E DESENVOLVIMENTO DE EQUIPES - 52_2024.docx
ATIVIDADE 1 - GESTÃO DE PESSOAS E DESENVOLVIMENTO DE EQUIPES - 52_2024.docxATIVIDADE 1 - GESTÃO DE PESSOAS E DESENVOLVIMENTO DE EQUIPES - 52_2024.docx
ATIVIDADE 1 - GESTÃO DE PESSOAS E DESENVOLVIMENTO DE EQUIPES - 52_2024.docx
 
EAD Curso - CIÊNCIA DE DADOS NA INDÚSTTRIA
EAD Curso - CIÊNCIA DE DADOS NA INDÚSTTRIAEAD Curso - CIÊNCIA DE DADOS NA INDÚSTTRIA
EAD Curso - CIÊNCIA DE DADOS NA INDÚSTTRIA
 

Estrutura de Dados em Java (Introdução)

  • 1. Apresentação da Disciplina e Introdução ao Java Prof. Adriano Teixeira de Souza
  • 2. Ex-acadêmico da Fasul  Especialista em Desenvolvimento de Software e Novas Tecnologias - Unioeste  Analista de Sistemas na C.Vale Agroindústria  Desenvolvedor nas plataformas Java e .Net Prof. Adriano Teixeira de Souza
  • 3. Nome  Cidade  Em que área trabalha  Que tecnologias utiliza no dia-a-dia  Expectativas para a disciplina Prof. Adriano Teixeira de Souza
  • 4. Ementa ◦ Estrutura de dados primitivas:  Pilhas, listas, árvores ◦ Algoritmos de manipulação de estrutura de dados:  Inserção, eliminação, busca e percurso ◦ Algoritmos de ordenação de dados  Quick sort, Bouble sort, Merge sort e Heap sort ◦ Algoritmos de pesquisa  Busca binária e busca linear ◦ Medidas de complexidade algorítmicas ◦ Desenvolvimento com utilização de estrutura de dados Prof. Adriano Teixeira de Souza
  • 5. Utilização da linguagem Java  Aulas práticas  Listas de exercícios  Discussão do conteúdo  Trabalhos  Avaliação bimestral  Nota ◦ Avaliação bimestral (Peso de 50%) ◦ Trabalhos e listas de exercícios (peso de 35% ) ◦ Participação e envolvimento em sala (peso 15%) Prof. Adriano Teixeira de Souza
  • 6. JAVA SE 6 (Standard Edition)  Eclipse 3.7.2 Prof. Adriano Teixeira de Souza
  • 7. Linguagem de programação  Uma plataforma: Prof. Adriano Teixeira de Souza
  • 8. Linguagem de alto nível,  Orientada a objetos.  Programas são compilados e interpretados.  Linguagem intermediária chamada bytecode  Java Virtual Machine (JVM)  programas Java executados em qualquer sistema que tenha uma versão da JVM. Prof. Adriano Teixeira de Souza
  • 9. É uma plataforma apenas de software que é executada sobre várias plataformas de hardware. Ela possui três versões:  Java SE (Standard Edition)  Java EE (Enterprise Edition)  Java ME (Micro Edition) Prof. Adriano Teixeira de Souza
  • 10. O Java SE permite desenvolver e implantar aplicativos Java em desktops e servidores, bem como ambientes integrados e em tempo real. O Java SE inclui classes que suportam o desenvolvimento de serviços da Web para Java e fornece a base para Java Platform, Enterprise Edition (Java EE). Prof. Adriano Teixeira de Souza
  • 11. A versão corporativa o ajuda a desenvolver e implantar aplicativos Java do lado do servidor transportáveis, robustos, escaláveis e seguros. Construído com base em Java SE, o Java EE fornece APIs de serviços da Web, de modelo de componente, de gerenciamento e de comunicações para implementar aplicativos SOA e da Web 2.0 de classe corporativa. Prof. Adriano Teixeira de Souza
  • 12. O Java ME fornece um ambiente para aplicativos em execução em uma grande variedade de dispositivos móveis e integrados, como : ◦ Telefones celulares ◦ PDAs ◦ TV set-top boxes ◦ Impressoras.  Inclui : ◦ interfaces com o usuário flexíveis ◦ um modelo de segurança robusto ◦ uma grande variedade de protocolos de rede integrados ◦ suporte extensivo para aplicativos em rede e off-line que podem ser transferidos por download dinamicamente. Prof. Adriano Teixeira de Souza
  • 13. Principais benefícios da linguagem Java: ◦ Portabilidade de aplicativos Java em plataformas de hardware e sistemas operacionais — possível porque a JVM instalada em cada plataforma entende o mesmo bytecode. ◦ A linguagem Java e a plataforma têm uma escala impressionante. Os aplicativos podem ser facilmente gravados (ou adaptados de aplicativos de desktop Java existentes) para dispositivos com recursos limitados. recursos da Web. ◦ Projetada para execução de maneira segura em redes, a linguagem suporta este nível de segurança ao operar na Internet. Prof. Adriano Teixeira de Souza
  • 14. Em uma linguagem de programação como C e Pascal, temos o seguinte quadro quando vamos compilar um programa: ◦ O código fonte é compilado para uma plataforma e sistema operacional específico. Muitas vezes, o próprio código fonte é desenvolvido visando uma única plataforma! ◦ Esse código executável (binário) resultante será executado pelo sistema operacional e, por esse motivo, ele deve saber conversar com o sistema operacional em questão. Prof. Adriano Teixeira de Souza
  • 15. Linguagem “C” Prof. Adriano Teixeira de Souza
  • 16. Linguagem Java Prof. Adriano Teixeira de Souza
  • 17. Linguagem Java Prof. Adriano Teixeira de Souza
  • 18. /* Primeiro Programa em Java */ comentários package pacote; definição do pacote import java.util.Scanner; biblioteca de E/S Public class MeuPrograma { definição da classe // função principal|inicio public static void main(String[] args) { marca início da função // função para escrever na tela System.out.println ("olá Java!!"); } marca fim da função } Prof. Adriano Teixeira de Souza
  • 19. O eclipse é uma IDE Open Source (código fonte aberto) que serve para o desenvolvimento em muitas linguagens: ◦ PHP ◦ Java ◦ Python ◦ HTML ◦ C/C++  A IDE Eclipse foi iniciado pela forte IBM, e depois foi doada para uma comunidade software livre.  A grande vantagem do Eclipse é que seu desenvolvimento é todo baseado em plugins, isso nos ajuda muito na hora de utilizado para outras linguagens. Prof. Adriano Teixeira de Souza
  • 20. Variável: “objeto” que pode assumir diversos valores  Espaço de memória de um certo tipo de dado associado a um nome para referenciar seu conteúdo public static void main(String[] args) { int idade; idade = 30; System.out.println (“ A idade é :”+idade); } Prof. Adriano Teixeira de Souza
  • 21. Comece com letras ou sublinhado: ◦ Seguidos de letras, números ou sublinhados  Java é sensível ao caso: ◦ Peso <> peso <> pEso  Não podemos definir um identificador com o mesmo nome que uma palavra chave ◦ static public int long if while do, dentre outras Prof. Adriano Teixeira de Souza
  • 22. Determina um conjunto de valores e as possíveis operações realizadas sobre os mesmos  Informa a quantidade de memória (bits) Tipo Tamanho Escala byte 8 bits -128 a 127 short 16 bits -32.768 a 32.767 int 32 bits -2.147.483.648 a 2.147.483.647 long 64 bits -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 float 32 bits -3.40292347E+38 a +3.40292347E+38 double 64 bits -1.79769313486231570E+308 a +1.79769313486231570E+308 char 16 bits 'u0000' a 'uFFFF' boolean 1 bit true ou false Prof. Adriano Teixeira de Souza
  • 23. public static void main(String[] args) { int soma=10; float money= 2.21f; char letra= 'A'; double num =2.01E6; String nome = “Aloisio”; //não é primitivo, é classe. System.out.println("n valor da soma = "+ soma); System.out.println("n Valor de Money = "+ money); System.out.println("n Valor de Letra = "+ letra); System.out.println("n Valor de Pi = "+ num); System.out.println("n Valor de nome = "+ nome ); } Prof. Adriano Teixeira de Souza
  • 24. Saída de Entrada Processamento de Dados de Dados dados Instruções de E/S Prof. Adriano Teixeira de Souza
  • 25. Apresentação de dados no monitor  System.out.println(“string de controle”); Exemplo: Scanner leitor = new Scanner(System.in); System.out.println(“Digite a sua idade:n”); int idade = leitor.nextInt(); System.out.println(“Sua idade é: ”+idade); Prof. Adriano Teixeira de Souza
  • 26. Operador Ação + Adição * Multiplicação / Divisão % Resto da divisão inteira - Subtração (unário) -- Decremento ++ Incremento Prof. Adriano Teixeira de Souza
  • 27. Operador Ação > Maior que >= Maior ou igual que < Menor que <= Menor ou igual que == Igual a != Diferente de && Condição “E” || Condição “OU” ! Não Prof. Adriano Teixeira de Souza
  • 28. Operador Exemplo Ação += x += y x=x+y -= x -= y x=x-y *= x *= y x=x*y /= x /= y x=x/y %= x %= y x=x%y Prof. Adriano Teixeira de Souza
  • 29. Operador Exemplo Ação ++ ++a adicionar 1 à variável a e depois calcular a expressão na qual a reside a++ calcular a expressão na qual a reside e depois adicionar 1 à variável a -- subtrair 1 da variável a e depois calcular a --a expressão na qual a reside a-- calcular a expressão na qual a reside e depois subtrair 1 da variável a Prof. Adriano Teixeira de Souza
  • 30. Observemos antes de mais nada que ++x é diferente de x++! Se porém Se x = 10; x = 10; y = ++x; y = x++; /* x=x+1; y=x; */ /* y=x; x=x+1 */ então então x = 11 e x = 11 e y = 10 y = 11 Prof. Adriano Teixeira de Souza
  • 31. 1) Faça um programa para ler e escrever na tela o seu nome e a sua idade.  2) Faça um programa para ler e escrever na tela os seguintes dados: ◦ Nome ◦ Endereço ◦ Telefone ◦ Cidade ◦ Cep Prof. Adriano Teixeira de Souza
  • 32. 3) Entre com 3 números, verifique qual o maior dentre os valores informados e imprima na tela a frase “o maior número é X” ◦ Onde X é a variável contendo o maior valor  4) Entre com 2 números e apresente-os de forma ordenada Prof. Adriano Teixeira de Souza