Desenvolvimento Web TCC-00.226 Turma A-1



Documentos relacionados
Programação de Computadores II TCC Turma A-1

Introdução à Linguagem Java

Capítulo 1. Introdução ao Java. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Programação Orientada a Objetos (DPADF 0063)

Orientação a Objetos com Java

Java Linguagem de programação

Programação de Computadores - I. Profª Beatriz Profº Israel

Java. Guia do Programador. Peter Jandl Junior. Novatec

Linguagens de. Aula 02. Profa Cristiane Koehler

A Linguagem Algorítmica Estrutura de Repetição. Ex. 2

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

PROGRAMAÇÃO ORIENTADA A OBJETOS EM JAVA*

Java & OpenJDK. Thiago S. Gonzaga. Sun Campus Ambassador thiago.gonzaga@sun.com

Linguagem Java. Arquitetura e Ambiente de Desenvolvimento. Arquitetura e Ambiente de Desenvolvimento Prof. Anderson Augustinho Uniandrade

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br

PROGRAMAÇÃO JAVA. Parte 1

Programação de Computadores II: Java. / NT Editora. -- Brasília: p. : il. ; 21,0 X 29,7 cm.

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico

CURSO DE PROGRAMAÇÃO EM JAVA

Programação Orientada a Objetos

Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da

Objetivos do Curso. Você será capaz de:

Definições. Parte 02. Java Conceitos e. Desenvolvimento de Programação Orientada a Objetos. Prof. Pedro Neto

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010

Linguagem de Programação Introdução a Linguagem Java

2a Edição Peter Jandl Junior

OOP - Java. Artur Duque Rossi Mestrado em Modelagem Computacional Universidade Federal de Juiz de Fora

Introdução linguagem Java principais pacotes. Bruno Calegaro

3a Edição Peter Jandl Junior

Programação de Computadores II TCC /Turma A-1A

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura

Programação online em Java

A Linguagem Java. Apresentação. Java. A Linguagem da Internet

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática

Um pouco do Java. Prof. Eduardo

Java Básico. Aula 1 por Thalles Cezar

Java para Desktop. Introdução à Plataforma Java JSE

Prof. Esp. Adriano Carvalho

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

Visão Geral da Plataforma Java. Robinson Castilho - JUGMS castilho@bacarin.com.br

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO

Orientação a Objetos e a Linguagem Java

ESTUDO SOBRE AS LINGUAGENS DE PROGRAMAÇÃO HOSPEDEIRAS SUPORTADAS PELA FERRAMENTA HTML. Aluno: Rodrigo Ristow Orientador: Wilson Pedro Carli

Linguagem de Programação Orientada a Objeto. Introdução a Orientação a Objetos Professora Sheila Cáceres

Laboratório I Aula 2

Programação por Objectos

Lógica de Programação

Estudo comparativo entre tecnologias Java: Applet e JWS.

FBV - Linguagem de Programação II. Um pouco sobre Java

Capítulo 8. Software de Sistema

Universidade Federal de Uberlândia

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

Faculdade Latino Americana Programação Orientada a Objetos II - 4º Período Ciências da Computação. REVISÃO POO Parte 01

Qualidade de Software

Sistemas Operacionais

Programação Orientada a Objetos

1. Apresentação Objetivos

Capítulo 1 Introdução

Java. Marcio de Carvalho Victorino

Aspectos de Segurança em Programação com Java

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

Como se tornar um desenvolvedor de plug-ins para AutoCAD e Revit

Introdução a Linguagem

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread.

Sistemas Operacionais

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática

Artur Petean Bove Júnior Tecnologia SJC

Tecnologia Java. Helder darocha

Tutorial Eclipse (IDE)

Programação Orientada a Objetos

Mini-curso Gratuito. Globalcode - The Developers Company Slide 1

Objetivos: Entender o funcionamento dos programas Java via linha de comando

SISTEMAS OPERACIONAIS

Programação Orientada a Objetos

Palestrante. Alexandre Faria

Programação para Internet II

Java Linguagem de programação

Procedimentos para Configuração do Ambiente J2EE e J2SE em Ambiente Windows

Em uma linguagem de programação como C e Pascal, temos a seguinte situação quando vamos compor um programa:

Introdução. Sistemas Operacionais

Desenvolvimento de Aplicações Locais na Plataforma Microsoft

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Sistema de Gestão Comercial Plataforma GSAN. Documento de Procedimento de Instalação

Introdução à linguagem Java

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação Avançada

ESTUDO DE CASO WINDOWS VISTA

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Programação Orientada a Objetos

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais

IIH Introdução à Informática e Hardware

Transcrição:

Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Introdução ao Ambiente de Desenvolvimento Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226 Histórico 1991 Início em 1991 com um pequeno grupo de projeto da Sun Microsystems, denominado Green Team O projeto visava o desenvolvimento de software para uma ampla variedade de dispositivos de rede e sistemas embutidos ames Gosling decide pela criação de uma nova linguagem de programação que fosse simples, portátil e fácil de ser programada Surge a linguagem interpretada Oak (carvalho em inglês), mais tarde rebatizada como ava devido a problemas de direitos autorais Duke é o mascote do ava TCC-00.226 Desenvolvimento Web 2 1

Histórico 1991 1994 Mudança de foco para aplicação na Internet (visão: um meio popular de transmissão de texto, som, vídeo) Projetada para transferência de conteúdo de mídia em redes com dispositivos heterogêneos Também possui capacidade de transferir comportamentos, junto com o conteúdo (HTML por si só não faz isso) Em 1994, onathan Payne e Patrick Naughton desenvolveram o programa navegador WebRunner TCC-00.226 Desenvolvimento Web 3 Histórico 1991 1994 1995 No SunWorld 95 a Sun apresenta formalmente o navegador Hotava e a linguagem ava Poucos meses depois a Netscape Corporation lança o seu navegador capaz de fazer download e executar pequenos códigos ava chamados de Applets Imediatamente a Sun decide disponibilizar o ava gratuitamente para a comunidade de desenvolvimento de softwares e assim surge o ava Developer s Kit 1.0 (DK 1.0) Inicialmente disponível para Sun Solaris e Microsoft Windows 95/NT Progressivamente surgiram kits para plataformas como Linux e Apple Macintosh TCC-00.226 Desenvolvimento Web 4 2

Histórico 1991 1994 1995 2010 Oracle adquire a Sun Microsystems e passa a ser a dona do ava ava Platform (DK), Standard Edition está disponível para download em http://www.oracle.com/technetwork/java/javase/downloads A Integrated Development Environment (IDE) mantida pela Oracle é o NetBeans, também disponível em http://www.oracle.com/technetwork/java/javase/downloads Eclipse é uma das IDEs mais utilizadas http://www.eclipse.org/downloads/moreinfo/java.php Outra opção é o Blue, disponível em http://www.bluej.org/ TCC-00.226 Desenvolvimento Web 5 Simples Orientada a objetos Interpretada, neutra e portável Alta performance Robusta Segura Facilidades para criação de programas distribuídos e multitarefas Coletor de lixo (garbage collector) para desalocar recursos TCC-00.226 Desenvolvimento Web 6 3

Simples e Orientada a Objetos É de fácil aprendizado Puramente orientado a objetos Permite o desenvolvimento de sistemas de uma forma mais natural TCC-00.226 Desenvolvimento Web 7 Permitindo que o código em ava possa ser escrito independente da plataforma Bytecodes executam em qualquer máquina que possua uma ava Virtual Machine (VM) Neutra em relação à arquitetura Característica que permite uma grande portabilidade TCC-00.226 Desenvolvimento Web 8 4

Em java: 1. Todo o código é inicialmente escrito em arquivos de texto.java 2. Esses arquivos fonte são compilados para arquivos.class pelo compilador javac 3. A ferramenta lançadora java roda a aplicação em uma instancia da ava Virtual Machine Um arquivo.class contém bytecodes TCC-00.226 Desenvolvimento Web 9 MyProgram.java ava API ava Virtual Machine Hardware Based Plataform ** ava API: ava Application Programming Interface TCC-00.226 Desenvolvimento Web 10 5

TCC-00.226 Desenvolvimento Web 11 Bytecodes V M C V M C V M C V M C Win95/98 WinNT Linux Solaris TCC-00.226 Desenvolvimento Web 12 6

Editor.class Carregador Bytecodes verificados.java Compilador Bytecodes não verificados Verificador Interpretador TCC-00.226 Desenvolvimento Web 13 Alta Performance É uma linguagem interpretada Existe uma grande discussão quanto a sua performance. Fato: As melhorias na tecnologia de compilação, tem aproximado o desempenho ao de linguagens como C e C++ Ex.: Benchmarks mostram melhor desempenho em alguns casos e pior em outros, caracterizando empate técnico http://blog.cfelde.com/2010/06/c-vs-javaperformance/ TCC-00.226 Desenvolvimento Web 14 7

Robusta e Segura As seguintes características contribuem para tornar a linguagem mais robusta e segura: É fortemente tipada Não possui aritmética de ponteiros Possui mecanismo de coleta de lixo Possui verificação rigorosa em tempo de compilação Possui mecanismos para verificação em tempo de execução Possui gerenciador de segurança Possui mecanismos de segurança que evitam operações no sistema de arquivos da máquina alvo TCC-00.226 Desenvolvimento Web 15 Distribuída Projetada para trabalhar em ambiente de redes Não é uma linguagem para programação distribuída Oferece bibliotecas para facilitar o processo de comunicação TCC-00.226 Desenvolvimento Web 16 8

Dinâmica e Multithread Resolução de referências em tempo de execução Suporte para múltiplas threads de execução Threads podem tratar diferentes tarefas concorrentemente TCC-00.226 Desenvolvimento Web 17 O Ambiente de Desenvolvimento ava SDK Ambiente de desenvolvimento de software ava Antigamente denominado DK (Software Development Kit) Contém um amplo conjunto de APIs ava SDK não é um ambiente integrado de desenvolvimento Não oferecendo editores ou ambiente de programação TCC-00.226 Desenvolvimento Web 18 9

Algumas Ferramentas do ava SDK javac: compilador ava java: interpretador de aplicações ava appletsviewer: interpretador de applets ava javadoc: gerador de documentação para código ava jar: manipulador de arquivos comprimidos no formato ava Archive jdb: depurador de programas ava etc. TCC-00.226 Desenvolvimento Web 19 Exercício Baixe e instale o ava SDK e o NetBeans em sua máquina Crie um projeto no NetBeans, adicione o código abaixo, compile e execute a seguinte classe: public class HelloWorld { public static void main(string[] args) { System.out.println( Olá mundo! ); } } TCC-00.226 Desenvolvimento Web 20 10