Java SE 7 e o futuro da linguagem Java

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamanho: px
Começar a partir da página:

Download "Java SE 7 e o futuro da linguagem Java"

Transcrição

1 Java SE 7 e o futuro da linguagem Java Michael Nascimento Santos Summa Technologies do Brasil Ltda

2 Aviso As informações nesta palestra correspondem a declarações de previsão baseadas em expectativas atuais de eventos futuros que envolvem riscos e incertezas incluindo, sem limitação, riscos associados a incertezas inerentes à adequação do momento e sucesso de pesquisas...

3 Agenda > Como o Java SE é definido > Funcionalidades consideradas para inclusão > Mudanças propostas na linguagem > O futuro da linguagem Java > Q&A

4 Agenda > Como o Java SE é definido > Funcionalidades consideradas para inclusão > Mudanças propostas na linguagem > O futuro da linguagem Java > Q&A

5 Definição do Java SE (Antigamente) > Uma umbrella JSR é submetida ao JCP > A JSR já menciona algumas funcionalidades propostas > Escolhe-se o Expert Group > O EG discute o que deve ou não ser incluído e isso resulta na especificação > JSRs para APIs/mudanças da linguagem > Pequenos bugs/alterações listadas > A Sun faz a implementação de referência, aka JDK > A especificação passa por todo processo burocrático de votação e temos uma nova release!

6 Definição do Java SE hoje > Java + YOU (por bem ou por mal) > Apesar da burocracia, há grande influência da comunidade > JSRs lideradas por indivíduos > JSR-310 (Date & Time) > Contribuições ao OpenJDK > Closures prototype > Kijaro, um projeto aberto > Blogs > No entanto, ainda há dois grandes guardiões : > Java SE: Danny Coward > Linguagem Java: Alex Buckley

7 Agenda > Como o Java SE é definido > Funcionalidades consideradas para inclusão > Mudanças propostas na linguagem > O futuro da linguagem Java > Q&A

8 Próximas releases: Java SE > Java SE 6u10 (em breve) > Java Kernel > Applets e aplicações tratadas de forma unificada via JNLP com novo plugin > Java Quick Starter > Diversas melhorias para suportar o JavaFX > Java SE 7 (2009?) - APIs > Desktop (Swing Application Framework, Beans Binding, Validation) > NIO 2 (JSR 203) > JPA 2.0 > Date & Time > Melhorias no gerenciamento da VM (JMX)

9 Swing Application Framework (JSR-296) > Suporte à aplicação como conceito e seu ciclo de vida > Application (launch, initialize, startup, ready, exit, shutdown) > Configuração externa de recursos (textos, cores, ícones) > Sendo reconsiderado no momento > Ações > Tasks, com suporte à execução assíncrona, indicação de progresso, interrupção e bloqueio da GUI > Sessions, com persistência do estado da aplicação

10 Swing Application Framework (JSR-296) public class M yapp extends SingleFram eapplication O verride protected void startup() { JLabellabel= new JLabel("H ello W orld"); show (label); } } public static void m ain(string[] args) { Application.launch(M yapp.class,args); } //SingleFram eapplication é um a subclasse de Application

11 Swing Application Framework (JSR-296) ApplicationC ontext c = Application.getInstance().getContext(); ResourceM ap r = c.getresourcem ap(m yform.class); r.getstring("aform at","w orld") => " Hel l o Wor l d" r.getc olor("colorrbg A") => new Col or ( 5, 6, 7, 8) r.getfont("afont") => new Font ( " Ar i al ", Font. PLAI N, 12) resources/m yform.properties astring = Just a string aform at = H ello % s aninteger = 123 aboolean = True anicon = m yicon.png afont = Arial-PLAIN -12 colorrg BA = 5,6,7,8 color0xrg B = #

12 Swing Application Framework (JSR-296) public class M yapp extends SingleFram eapplication Action public void sayh ello() { JLabellabel= new JLabel(); label.setn am e("label"); show (JO ptionpane.created ialog(label)); O verride protected void startup() { show (new JButton(getAction("sayH ello"))); } public static void m ain(string[] args) { Application.launch(M yapp.class,args); } } # resources/m yapp.properties sayh ello.action.text = Say& H ello sayh ello.action.shortd escription = say hello label.text = H ello W orld m ainfram e.title = H ello

13 Beans Binding (JSR 295) > Cria o conceito de Property > Infelizmente, não algo que faça parte da linguagem > Interface com algumas implementações convenientes (BeanProperty, ELProperty etc) > Permite expor propriedades sintéticas, como JTextComponent.text > Provê APIs para conversão e validação > Binding: liga duas propriedades > Possui extensões para facilitar o suporte Swing: > Lists/Maps observáveis > JListBinding, JTableBinding > Um tanto quanto polêmica

14 Beans Binding (JSR 295) Property fnamep = BeanProperty.create( firstname ); Property textp = BeanProperty.create( text ); Bindings.createAutoBinding(READ_WRITE, person, fnamep, textfield, textp).bind(); Property oldp = ELProperty.create( ${age > 50}} ); Bindings.createAutoBinding(READ, person, oldp, label, textp).bind();

15 Beans Binding (JSR 295) Property fnp = BeanProperty.create( firstname ); Property lnp = BeanProperty.create( lastname ); JTableBinding tb = SwingBindings.createJTableBinding(READ, list, jtable); tb.addcolumnbinding(fnp).setcolumnname( First Name ).setcolumnclass(string.class); tb.addcolumnbinding(lnp).setcolumnname( Last Name );.setcolumnclass(string.class); tb.bind();

16 Bean Validation (JSR-303) > Permite restringir o valor das propriedades no domínio através de anotações especiais (constraints) > Define > Permite criar suas próprias anotações de constraints e como validá-las (ConstraintValidator<A extends Annotation>) > Permite validações de todo o bean, propriedades individuais ou grupos > Geração de mensagens customizadas > Será integrada a diversos frameworks

17 Bean Validation (JSR-303) public class message="longer than {max} characters") private private Country country; } public class private String name;... }

18 Bean Validation Length { String message() default "{beanckeck.length}"; String[] groups() default {}; int min() default 0; int max() default Integer.MAX_VALUE; } public class LengthConstraint implements Constraint<Length> { public void initialize(length annotation) { } public boolean isvalid(object value) { } }

19 NIO 2 (JSR-203) > Nova API de suporte a filesystems > FileSystem > FileRef > Path > FileStore > Suporte a symbolic links > FileAttributeView > WatchService > SeekableByteChannel > Nova API de Sockets > Asynchronous I/O > Muito mais!

20 JPA 2.0 (JSR-317) > Mapeamento mais flexível > Collections de tipos básicos (wrappers, BigDecimal etc) > Collections de tipos embeddables (Endereco, CPF etc) > Listas ordenadas > Melhor suporte a Maps > Deleção de órfãos > API para locks pessimistas > Cache API > Criteria API > Integração com validação

21 Date & Time API (JSR-310) Date date = new Date(2007, 12, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/HongKong"); Calendar cal = new GregorianCalendar(date, zone); DateFormat fm = new SimpleDateFormat("HH:mm Z"); String str = fm.format(cal);

22 Date & Time API (JSR-310) Date date = new Date(2007, 12, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/HongKong"); Calendar cal = new GregorianCalendar(date, zone); DateFormat fm = new SimpleDateFormat("HH:mm Z"); String str = fm.format(cal);

23 Date & Time API (JSR-310) int year = ; Date date = new Date(year, 12, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/HongKong"); Calendar cal = new GregorianCalendar(date, zone); DateFormat fm = new SimpleDateFormat("HH:mm Z"); String str = fm.format(cal);

24 Date & Time API (JSR-310) int year = ; Date date = new Date(year, 12, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/HongKong"); Calendar cal = new GregorianCalendar(date, zone); DateFormat fm = new SimpleDateFormat("HH:mm Z"); String str = fm.format(cal);

25 Date & Time API (JSR-310) int year = ; int month = 12-1; Date date = new Date(year, month, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/HongKong"); Calendar cal = new GregorianCalendar(date, zone); DateFormat fm = new SimpleDateFormat("HH:mm Z"); String str = fm.format(cal);

26 Date & Time API (JSR-310) int year = ; int month = 12-1; Date date = new Date(year, month, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/HongKong"); Calendar cal = new GregorianCalendar(date, zone); DateFormat fm = new SimpleDateFormat("HH:mm Z"); String str = fm.format(cal);

27 Date & Time API (JSR-310) int year = ; int month = 12-1; Date date = new Date(year, month, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/Hong_Kong"); Calendar cal = new GregorianCalendar(date, zone); DateFormat fm = new SimpleDateFormat("HH:mm Z"); String str = fm.format(cal);

28 Date & Time API (JSR-310) int year = ; int month = 12-1; Date date = new Date(year, month, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/Hong_Kong"); Calendar cal = new GregorianCalendar(date, zone); DateFormat fm = new SimpleDateFormat("HH:mm Z"); String str = fm.format(cal);

29 Date & Time API (JSR-310) int year = ; int month = 12-1; Date date = new Date(year, month, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/Hong_Kong"); Calendar cal = new GregorianCalendar(zone); cal.settime(date); DateFormat fm = new SimpleDateFormat("HH:mm Z"); String str = fm.format(cal);

30 Date & Time API (JSR-310) int year = ; int month = 12-1; Date date = new Date(year, month, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/Hong_Kong"); Calendar cal = new GregorianCalendar(zone); cal.settime(date); DateFormat fm = new SimpleDateFormat("HH:mm Z"); Date caldate = cal.gettime(); String str = fm.format(caldate);

31 Date & Time API (JSR-310) int year = ; int month = 12-1; Date date = new Date(year, month, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/Hong_Kong"); Calendar cal = new GregorianCalendar(zone); cal.settime(date); DateFormat fm = new SimpleDateFormat("HH:mm Z"); Date caldate = cal.gettime(); String str = fm.format(caldate);

32 Date & Time API (JSR-310) int year = ; int month = 12-1; Date date = new Date(year, month, 13, 16, 40); TimeZone zone = TimeZone.getInstance("Asia/Hong_Kong"); Calendar cal = new GregorianCalendar(zone); cal.settime(date); DateFormat fm = new SimpleDateFormat("HH:mm Z"); fm.settimezone(zone); Date caldate = cal.gettime(); String str = fm.format(caldate);

33 Date & Time API (JSR-310) LocalDateTime dt = datetime(2007, 12, 13, 16, 40); TimeZone zone = timezone("asia/hong_kong"); ZonedDateTime date = datetime(dt, zone); DateTimeFormatter fm = hourminutezoneformatter(); String str = fm.print(date);

34 Date & Time API (JSR-310) ZonedDateTime date = builder().year(2007).december(). dayofmonth(13).hour(16).minute(40). timezone("asia/hong_kong").build(); DateTimeFormatter fm = hourminutezoneformatter(); String str = fm.print(date);

35 Problemas da API atual > Mutável > Janeiro é 0, Dezembro é 11, mas os dias vão de 1 a > Date não é uma data > Date usa anos a partir de 1900 > Calendar não pode ser formatado > DateFormat não é thread-safe > DateFormat possui um TimeZone implícito > java.sql.{date, Time, Timestamp} estendem Date > Muitos conceitos não podem ser representados

36 Date & Time API (JSR-310) > Modelo abrangente de data e hora > Type-safe > Interoperável com Date e Calendar > Vão poder ser convertidas para as novas interfaces > Compatível com os padrões XML e SQL > Princípios de design: > Imutável > Fluente > Principle of Least Astonishment > Extensível

37 Date & Time API (JSR-310) > Científica (Instant, Duration, Interval) > Humana > Tipos básicos > LocalDate, LocalTime, LocalDateTime > OffsetDate, OffsetTime, OffsetDateTime > ZonedDateTime > Campos > Year, MonthOfYear, DayOfMonth, DayOfWeek etc. > Regras extensíveis > DateMatcher, TimeMatcher > DateAdjuster, TimeAdjuster > DateResolver

38 Date & Time API (JSR-310) > Solução para o problema do horário de verão! > Novo conceito de TimeZone > Nome > Offset base (ZoneOffset) > Versão das regras de transição do offset > (Se tudo der certo) permitirá atualização das regras da JVM on-the-fly > Sem quebrar objetos existentes > Usando novas regras para objetos criados depois

39 Date & Time API (JSR-310) > Periods > Years, Months etc. > Composições dos valores > Nova API de formatting & parsing > Com builders > Interoperável com API existente > Suporte a outros sistemas de calendário > Suporte aos existentes no JDK > Permitindo extensibilidade > Nova classe para obter a hora atual: Clock > Fácil de testar > Permite atender requisitos de uma forma melhor

40 Agenda > Como o Java SE é definido > Funcionalidades consideradas para inclusão > Mudanças propostas na linguagem > O futuro da linguagem Java > Q&A

41 A linguagem Java > Como evoluir uma linguagem estabelecida? > Assume-se que adicionar features é algo bom > Talvez seja para aplicações > Linguagens precisam ser consistentes > Se existe boxing/unboxing, por que não List<int>? > Java tem como princípio ser backwardscompatible > Ao mesmo tempo que permite que seu código funcione, não permite que a evolução ocorra da forma mais elegante possível

42 Princípios de evolução > Respeitar o passado > Novas keywords quebram o código (assert, enum) > Features removidas quebram o código > Consertar pode quebrar código também > Respeitar o futuro > Features que complementam features podem ser postergadas > Levar em conta outras potenciais adições ao definir a sintaxe > Respeitar o modelo atual > Manter o foco da linguagem > Aumentar a consistência dentro do foco

43 Princípios do modelo atual > Linguagem de alto nível > Clareza > Tipagem estática > Isolamento entre a linguagem e as APIs

44 Features e viabilidade > Propriedades > Reified generics > Closures & extension methods > Suporte XML > Módulos > Melhorias nas anotações > Pequenas mudanças

45 Propriedades > Diversos modelos propostos > Alterando a linguagem > Nova API > Combinação de ambas > Polêmica > Poucas soluções concretas desenvolvidas > Código teria que ser reescrito para tirar proveito > Chances: baixíssimas

46 Reified generics > Desejada por grande parte das pessoas > Poucas soluções propostas > Nenhum protótipo concreto, nem especificação > Requer muito esforço de implementação > Chances: baixíssimas

47 Closures > Diversos modelos propostos > BGGA > FCM > CICE > NIPAD > Muito polêmica na comunidade > Para que código comum tirasse proveito, exigiria reescrita ou adoção de features como extension methods > Chances: baixíssimas

48 Closures > Diversos modelos propostos > BGGA > FCM > CICE > NIPAD (Não Implementem Pelo Amor de Deus!!!) > Muito polêmica na comunidade > Para que código comum tirasse proveito, exigiria reescrita ou adoção de features como extension methods > Chances: baixíssimas

49 Suporte XML > Extremamente polêmica! > Sem protótipo disponível > Sem especificação > Chances: baixíssimas (ufa!)

50 Módulos > Duas JSRs inicialmente > 277: API e modelo de execução > 294: Mudanças na linguagem > Unificada recentemente na JSR-277 > Introduz conceito de restricted keyword: module > Declaração de classes e pacotes integrante do módulo > Declaração de dependências de outros módulos > Novo formato de deployment (JAM) > Potencial interoperabilidade com outros sistemas de módulos (OSGi) > Chances de inclusão: altas

51 Módulos // org/netbeans /core/debug g er.java module org.netbeans.core; packag e org.netbeans.core; public class Debugger {... new ErrorTracker()... } // org/netbeans /core/utils /ErrorTracker.java module org.netbeans.core; packag e org.netbeans.core.utils ; module class ErrorTracker { module int geterrorline() {... } } // org/netbeans Vers ImportModule(name=" java.s e.core", vers ion=" 1.7+") module org.netbeans.core;

52 Melhorias nas anotações > Possui JSR > Mais lugares para usar: > String> > class UnmodifiableList<T> T> List<T> = //...; > Introduz a noção de tipo específico de processador de anotação: type checker > Não tão polêmica (talvez por não estar tão difundida) > Chances: média-alta

53 Pequenas features > Multi-catches: > } catch (AnException, AnotherException e) { tratar(e) } > Safe-rethrow > Permite fazer catch de super-tipo, mas lançar apenas subtipos esperados > Switch para Strings > Chances: muito altas

54 Agenda > Como o Java SE é definido > Funcionalidades consideradas para inclusão > Mudanças propostas na linguagem > O futuro da linguagem Java > Q&A

55 O futuro da linguagem > Nunca vamos ter closures, reified generics ou...? > A opinião está dividida: > Alguns querem que a linguagem fique como está e a evolução ocorra em novas linguagens para a JVM > Alguns temem o que as pessoas farão com features como generics > Alguns querem que Java continue sendo uma linguagem viva e em constante evolução > É como o conselho mais piegas do mundo:

56 Depende de nós > A comunidade precisa decidir > A decisão final a respeito da linguagem ainda não foi tomada > E o melhor provavelmente deve ser um pouco da opinião de cada parcela da comunidade > Colabore manifestando a sua opinião > Blogs > OpenJDK > JUGs > Ou a Globalcode... :-)

57 Conclusão > Diversas APIs estão cogitadas para inclusão > Nem tantas mudanças de linguagem assim > Java vai manter suas características > Há certas coisas que nós nunca vamos ver em Java - operator overloading... :-) > O quão longe a linguagem vai evoluir e até quando vão haver novas versões depende da comunidade > Faça parte da comunidade!

58 Obrigado! Michael Nascimento Santos

59 La pergunta?

JSR 310: Uma nova forma de lidar com datas e horas

JSR 310: Uma nova forma de lidar com datas e horas JSR 310: Uma nova forma de lidar com datas e horas Fábio Kung Michael Nascimento Santos JustJava 2007 Fábio Kung 30/01/2008 JSR 310: Uma nova forma de lidar com datas e horas 2 Michael Nascimento Santos

Leia mais

Desenvolvendo aplicações desktop em Java: presente e futuro

Desenvolvendo aplicações desktop em Java: presente e futuro Desenvolvendo aplicações desktop em Java: presente e futuro Michael Nascimento Santos Conexão Java 2006 Michael Nascimento Santos 7 anos de experiência com Java Expert nas JSRs 207, 250, 270 (Java 6),

Leia mais

Desktop em minutos com genesis, Matisse, Java WebStart e JSR-296

Desktop em minutos com genesis, Matisse, Java WebStart e JSR-296 Desktop em minutos com genesis, Matisse, Java WebStart e JSR-296 Allan Jones Batista de Castro Michael Nascimento Santos Raphael Winckler de Bettio JustJava 2006 Allan Jones Batista de Castro 5 anos de

Leia mais

Novos tempos: javax.time Conheça a nova especificação de Data e Hora

Novos tempos: javax.time Conheça a nova especificação de Data e Hora 1 Novos tempos: javax.time Conheça a nova especificação de Data e Hora Você irá conhecer a nova API de data e hora da plataforma Java. Construída como uma opção ao uso de java.util.date e java.util.calendar,

Leia mais

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44 Armazenando Dados em Aplicações Java Parte 2 de 3: Apresentando as opções Hua Lin Chang Costa, hualin@cos.ufrj.br, COPPE/UFRJ. Leonardo Gresta Paulino Murta, leomurta@ic.uff.br, IC/UFF. Vanessa Braganholo,

Leia mais

TDC2012. EJB simples e descomplicado, na prática. Slide 1

TDC2012. EJB simples e descomplicado, na prática. Slide 1 TDC2012 EJB simples e descomplicado, na prática Slide 1 Palestrantes Kleber Xavier Arquiteto Senior / Globalcode kleber@globalcode.com.br Vinicius Senger Arquiteto Senior / Globalcode vinicius@globalcode.com.br

Leia mais

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Aula 09 Introdução à Java Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Java: Sintaxe; Tipos de Dados; Variáveis; Impressão de Dados.

Leia mais

EJB 3.1: A Community Update

EJB 3.1: A Community Update EJB 3.1: A Community Update Reza Rahman Autor, EJB 3 in Action Expert Group Member, Java EE 6 and EJB 3.1 Fundador, Cognicellence Julho de 2008 1 EJB 3.0: Revisão Breve > As grandes mudanças > EJB simplificado

Leia mais

Esse update é 10: Novos applets e JavaFX

Esse update é 10: Novos applets e JavaFX Esse update é 10: Novos applets e JavaFX Jorge Diz Instrutor Globalcode Objetivos Objetivos: Mostrar o que vem por ai no desktop/ browsertop Ver se os applets agora vão pegar Onde está JavaFX? Agenda >Applets:

Leia mais

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Tecnologia Java Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Origem da Tecnologia Java Projeto inicial: Oak (liderado por James Gosling) Lançada em 1995 (Java) Tecnologia

Leia mais

Programação em JAVA. Subtítulo

Programação em JAVA. Subtítulo Programação em JAVA Subtítulo Sobre a APTECH A Aptech é uma instituição global, modelo em capacitação profissional, que dispõe de diversos cursos com objetivo de preparar seus alunos para carreiras em

Leia mais

Seminário - C# DSO II. Desenvolvimento de Sistemas Orientados a Objetos 2. Equipe: Diorges, Leonardo, Luís Fernando, Ronaldo

Seminário - C# DSO II. Desenvolvimento de Sistemas Orientados a Objetos 2. Equipe: Diorges, Leonardo, Luís Fernando, Ronaldo Seminário - C# DSO II Desenvolvimento de Sistemas Orientados a Objetos 2 Equipe: Diorges, Leonardo, Luís Fernando, Ronaldo Roteiro Breve Histórico Plataforma.NET Características da Linguagem Sintaxe Versões

Leia mais

Capítulo 4. Packages e interfaces

Capítulo 4. Packages e interfaces Capítulo 4. Packages e interfaces 1/17 Índice Indice 4.1 - Package 4.2 - Interface 2/17 Índice 4.1 Package 4.1 - Package 4.2 -- Interface 3/17 4.1 Package Package ou pacote está para o Java como as directorias

Leia mais

Frameworks - Grails. Aécio Costa

Frameworks - Grails. Aécio Costa Aécio Costa Abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade

Leia mais

Desenvolvimento Web com Framework Demoiselle versão 1.0

Desenvolvimento Web com Framework Demoiselle versão 1.0 Desenvolvimento Web com Framework Demoiselle versão 1.0 Módulo 07: Outros Componentes Autor: Rodrigo Hjort Serpro / Coordenação Estratégica de Tecnologia / Curitiba www.frameworkdemoiselle.org.br Modificado

Leia mais

Java Persistence API. Entity Entity Campos e Propriedades Entity Chaves Primárias Entity Associações

Java Persistence API. Entity Entity Campos e Propriedades Entity Chaves Primárias Entity Associações Java Persistence API Entity Entity Campos e Propriedades Entity Chaves Primárias Entity Associações Entity Manager Entity Manager API Java Persistence Query Language (JPQL) Persistence Units 1 Java Persistence

Leia mais

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:

Leia mais

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em

Leia mais

Mapeamento Lógico/Relacional com JPA

Mapeamento Lógico/Relacional com JPA Mapeamento Lógico/Relacional com JPA Elaine Quintino da Silva Doutora em Ciência da Computação pelo ICMC-USP/São Carlos Analista de Sistemas UOL PagSeguro Instrutora Globalcode Agenda! Persistência de

Leia mais

Explorando os novos recursos de EJB 3.1. Fabio Velloso fabio@soujava.org.br

Explorando os novos recursos de EJB 3.1. Fabio Velloso fabio@soujava.org.br Explorando os novos recursos de EJB 3.1 Fabio Velloso fabio@soujava.org.br Esta obra está licenciada sob uma Licença Creative Commons http://creativecommons.org/licenses/by-nc-sa/2.0/br/ Fabio Velloso

Leia mais

JAVA 1.5 na plataforma J2SE 5.0 Tiger Novas Construções, Sintaxe, Tipos e Polimorfismo

JAVA 1.5 na plataforma J2SE 5.0 Tiger Novas Construções, Sintaxe, Tipos e Polimorfismo JAVA 1.5 na plataforma J2SE 5.0 Tiger Novas Construções, Sintaxe, Tipos e Polimorfismo GENERICS (Tipos Parametrizados, Classes Parametrizadas) : têm o objectivo de tornar as Colecções seguras em termos

Leia mais

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5 JavaScript Diego R. Frank, Leonardo Seibt FIT Faculdades de Informática de Taquara Fundação Educacional Encosta Inferior do Nordeste Av. Oscar Martins Rangel, 4500 Taquara RS Brasil difrank@terra.com.br,

Leia mais

EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux lozano@4linux.com.br

EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux lozano@4linux.com.br EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux lozano@4linux.com.br Você Gosta do EJB? O EJB esteve por muito tempo na berlinda do mundo Java É pesado... É complicado... Código muito

Leia mais

Introdução a Linguagem

Introdução a Linguagem Introdução a Linguagem Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 03 Introdução a Linguagem Java 1 Conteúdo Máquina Virtual (JVM) Histórico de Java Case Sensitive Tipos Primitivos Tipo String

Leia mais

Padrão Arquitetura em Camadas

Padrão Arquitetura em Camadas Padrão Arquitetura em Camadas Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Definição Estimula a organização

Leia mais

Formação em JAVA. Subtítulo

Formação em JAVA. Subtítulo Formação em JAVA Subtítulo Sobre a APTECH A Aptech é uma instituição global, modelo em capacitação profissional, que dispõe de diversos cursos com objetivo de preparar seus alunos para carreiras em Tecnologia

Leia mais

PROJETO PEDAGÓGICO DE CURSOS

PROJETO PEDAGÓGICO DE CURSOS 1 de 6 PROJETO PEDAGÓGICO DE CURSOS BURITREINAMENTOS MANAUS-AM MARÇO / 2015 2 de 6 PACOTES DE TREINAMENTOS BURITECH A Buritech desenvolveu um grupo de pacotes de treinamentos, aqui chamados de BuriPacks,

Leia mais

Aplicações Desktop: Swing/SubMacroForms. Carlos Renato Alves Gouveia Novembro/2008 cgouveia@fes.br

Aplicações Desktop: Swing/SubMacroForms. Carlos Renato Alves Gouveia Novembro/2008 cgouveia@fes.br Aplicações Desktop: Swing/SubMacroForms Carlos Renato Alves Gouveia Novembro/2008 cgouveia@fes.br Carlos Renato Alves Gouveia Especialista em Engenharia de Web Sites pela UFMS; Professor Universitário

Leia mais

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

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem

Leia mais

Resolvendo objeto-relacional impedance mismatch com hibernate

Resolvendo objeto-relacional impedance mismatch com hibernate Resolvendo objeto-relacional impedance mismatch com hibernate August 7, 2013 Sumário I 1 Introdução 2 3 4 Sumário II 5 Contexto Mapeamento Objeto-Relacional (ORM) é uma técnica de programação para converter

Leia mais

Curso - Padrões de Projeto Módulo 2: Padrões de Criação

Curso - Padrões de Projeto Módulo 2: Padrões de Criação Curso - Padrões de Projeto Módulo 2: Padrões de Criação Vítor E. Silva Souza vitorsouza@gmail.com http://www.javablogs.com.br/page/engenho http://esjug.dev.java.net Sobre o Instrutor Formação: Java: Graduação

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 10 Persistência de Dados

Leia mais

Capítulo 8. Introdução UML

Capítulo 8. Introdução UML Capítulo 8. Introdução UML 1/42 Índice Indice 8.1 - Introdução UML 8.2 - Modelação estrutural 8.2.1 - Representação de classes e objectos 8.2.2 - Relações entre objectos 8.2-3 - Relações de associação

Leia mais

Spring: Um suite de novas opções para Java EE

Spring: Um suite de novas opções para Java EE Spring: Um suite de novas opções para Java EE Alberto J Lemos (Dr. Spock) Instrutor Globalcode Ricardo Jun Taniguchi Instrutor Globalcode 1 Agenda > Sobre o Spring Framework > Escopo de integração com

Leia mais

Java Internationalization (i18n)

Java Internationalization (i18n) Java Internationalization (i18n) Java Deployment Course por Jorge H. C. Fernandes (jhcf@di.ufpe.br) DI-UFPE Julho de 1999 Referências Java Tutorial Todos os exemplos mostrados nesta aula foram originados

Leia mais

Projeto Demoiselle. Para perguntas e respostas, utilizem a lista de discussões de usuários da comunidade: demoiselle-users@lists.sourceforge.

Projeto Demoiselle. Para perguntas e respostas, utilizem a lista de discussões de usuários da comunidade: demoiselle-users@lists.sourceforge. Projeto Demoiselle Para perguntas e respostas, utilizem a lista de discussões de usuários da comunidade: demoiselle-users@lists.sourceforge.net Palestrantes: Antônio Carlos Tiboni Luciana Campos Mota 20/07/2009

Leia mais

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse Como criar um EJB Criando um projeto EJB com um cliente WEB no Eclipse Gabriel Novais Amorim Abril/2014 Este tutorial apresenta o passo a passo para se criar um projeto EJB no Eclipse com um cliente web

Leia mais

MÓDULO Programação para Web 2

MÓDULO Programação para Web 2 MÓDULO Programação para Web 2 USANDO O JSF Continuação Interdependência e Injeção Instâncias de Managed Beans podem conversar entre si para dividir o processamento das requisições dos usuários de acordo

Leia mais

Um pouco do Java. Prof. Eduardo

Um pouco do Java. Prof. Eduardo Um pouco do Java Prof. Eduardo Introdução A tecnologia JAVA é composta pela linguagem de programação JAVA e pela plataforma de desenvolvimento JAVA. Os programas são escritos em arquivos-texto com a extensão.java.

Leia mais

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Curso Adonai QUESTÕES Disciplina Linguagem JAVA 1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String

Leia mais

Curso de Aprendizado Industrial Desenvolvedor WEB

Curso de Aprendizado Industrial Desenvolvedor WEB Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Servidor de Aplicações WEB Tomcat Servidor Tomcat Foi desenvolvido

Leia mais

Módulo 06 Desenho de Classes

Módulo 06 Desenho de Classes Módulo 06 Desenho de Classes Última Atualização: 13/06/2010 1 Objetivos Definir os conceitos de herança, polimorfismo, sobrecarga (overloading), sobreescrita(overriding) e invocação virtual de métodos.

Leia mais

Desenvolvimento Web com Framework Demoiselle versão 1.1

Desenvolvimento Web com Framework Demoiselle versão 1.1 Desenvolvimento Web com Framework Demoiselle versão 1.1 Módulo 10: Monitoração de Ambientes Autor: Rodrigo Hjort SERPRO / Coordenação Estratégica de Tecnologia / Curitiba www.frameworkdemoiselle.org.br

Leia mais

PROJETO PEDAGÓGICO DE CURSOS

PROJETO PEDAGÓGICO DE CURSOS 1 de 9 PROJETO PEDAGÓGICO DE CURSOS BURITREINAMENTOS MANAUS-AM JUNHO / 2014 2 de 9 PACOTES DE TREINAMENTOS BURITECH A Buritech desenvolveu um grupo de pacotes de treinamentos, aqui chamados de BuriPacks,

Leia mais

Programação de Interfaces Gráficas. Aula 1. Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress.

Programação de Interfaces Gráficas. Aula 1. Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress. Programação de Interfaces Gráficas Aula 1 Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress.com "Use o seu tempo para melhorar a si mesmo através dos escritos

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato

Leia mais

Daniel Wildt dwildt@gmail.com. FACENSA Grupo de Estudos Java - FUJA Slide: 1

Daniel Wildt dwildt@gmail.com. FACENSA Grupo de Estudos Java - FUJA Slide: 1 Apresentação Tecnologia Java Daniel Wildt dwildt@gmail.com FACENSA Grupo de Estudos Java - FUJA Slide: 1 1. Java 2. JCP 3. Tecnologia Java 4. J2ME/J2SE/J2EE 5. Certificações 6. JUG 7. RSJUG Agenda 8. Ambiente

Leia mais

PADI 2015/16. Aula 1 Introdução à Plataforma.NET

PADI 2015/16. Aula 1 Introdução à Plataforma.NET PADI 2015/16 Aula 1 Introdução à Plataforma.NET 1 Sumário 1. Framework.NET Arquitectura 2. Linguagem C# 2.0 Sintaxe C# vs. Java vs. C++ 3. IDE: MS Visual Studio 2005 ou superior Ferramentas Console/Win

Leia mais

Sobre o Professor Dr. Sylvio Barbon Junior

Sobre o Professor Dr. Sylvio Barbon Junior 5COP088 Laboratório de Programação Aula 1 Java Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr barbon@uel.br 1 Sobre o Professor Dr. Sylvio Barbon Junior Formação: Ciência e Engenharia da Computação (2005

Leia mais

Roteiro. Interfaces de Programação de Aplicações (Application Programming Interfaces) Conceitos BásicosB. ! Definição

Roteiro. Interfaces de Programação de Aplicações (Application Programming Interfaces) Conceitos BásicosB. ! Definição Roteiro Interfaces de Programação de Aplicações (Application Programming Interfaces) Cleidson R. B. Souza Departamento de Informática Universidade Federal do Pará! Definição! Vantagens! Exemplos! Utilização

Leia mais

Módulo 02 Programação Orientada a Objetos. Última atualização: 07/06/2010

Módulo 02 Programação Orientada a Objetos. Última atualização: 07/06/2010 Módulo 02 Programação Orientada a Objetos Última atualização: 07/06/2010 1 Objetivos Definir conceitos de orientação a objetos: o abstração, encapsulamento, pacotes. Discutir reutilização de código em

Leia mais

Programação Orientada a Objetos em java. Polimorfismo

Programação Orientada a Objetos em java. Polimorfismo Programação Orientada a Objetos em java Polimorfismo Polimorfismo Uma característica muito importante em sistemas orientados a objetos Termo proveniente do grego, e significa muitas formas Em POO, significa

Leia mais

JAVA Express com Lógica

JAVA Express com Lógica JAVA Express com Lógica Sobre a KTEC A KTEC Escola de Tecnologia oferece uma série de cursos, para os que procuram uma base sólida no aprendizado, com foco nas boas práticas que fazem a diferença no mercado

Leia mais

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural Resumo: Perguntas a fazer ao elaborar um projeto arquitetural Sobre entidades externas ao sistema Quais sistemas externos devem ser acessados? Como serão acessados? Há integração com o legado a ser feita?

Leia mais

Como sobreviver com Java 2? Saulo Arruda

Como sobreviver com Java 2? Saulo Arruda Como sobreviver com Java 2? Saulo Arruda Agenda Apresentação Contexto do mercado Soluções para Java 5+ Soluções para Java 2 Conclusões Apresentação Saulo Arruda (http://sauloarruda.eti.br) Trabalha com

Leia mais

5 Derivando Aplicações Baseadas em Spring e OSGi

5 Derivando Aplicações Baseadas em Spring e OSGi 69 5 Derivando Aplicações Baseadas em Spring e OSGi O capítulo 3 apresentou como um conjunto de artefatos (classes, interfaces, aspectos e arquivos extras) de uma arquitetura de LPS pode ser modelado na

Leia mais

Como já foi muito bem detalhado no Capítulo IV, o jcompany Developer Suite pode ser

Como já foi muito bem detalhado no Capítulo IV, o jcompany Developer Suite pode ser A1Criando um módulo de negócio Capítulo 27 Aplicação dividida em módulos - Introdução Como já foi muito bem detalhado no Capítulo IV, o jcompany Developer Suite pode ser compreendido como uma solução de

Leia mais

Enterprise Java Beans

Enterprise Java Beans Enterprise Java Beans Prof. Pasteur Ottoni de Miranda Junior DCC PUC Minas Disponível em www.pasteurjr.blogspot.com 1-O que é um Enterprise Java Bean? O Entertprise Java Bean (EJB) é um componente server-side

Leia mais

Parte I. Demoiselle Mail

Parte I. Demoiselle Mail Parte I. Demoiselle Mail Para o envio e recebimento de e-s em aplicativos Java, a solução mais natural é usar a API JavaMail [http:// www.oracle.com/technetwork/java/java/index.html]. Ela provê um framework

Leia mais

Java EE 6. A revolução do. Um overview sobre as novidades da JSR 316. a r t i g o

Java EE 6. A revolução do. Um overview sobre as novidades da JSR 316. a r t i g o a r t i g o Pedro Henrique S. Mariano (pedro.mariano@caelum.com.br) técnologo em Análise e Desenvolvimento de Sofware pela FIAP, possui as certificações SCJP 6 e SCRUM master.trabalha como consultor e

Leia mais

BSI UFRPE Prof. Gustavo Callou gcallou@gmail.com

BSI UFRPE Prof. Gustavo Callou gcallou@gmail.com BSI UFRPE Prof. Gustavo Callou gcallou@gmail.com HelloWorld.java: public class HelloWorld { public static void main (String[] args) { System.out.println( Hello, World ); } } Identificadores são usados

Leia mais

Paradigmas da Programação PPROG. Linguagem JAVA. Interfaces. (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33

Paradigmas da Programação PPROG. Linguagem JAVA. Interfaces. (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33 PPROG Paradigmas da Programação Linguagem JAVA Interfaces (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33 PPROG Motivação para usar Interfaces Definição de Interface

Leia mais

JPA: Persistência padronizada em Java

JPA: Persistência padronizada em Java JPA: Persistência padronizada em Java FLÁVIO HENRIQUE CURTE Bacharel em Engenharia de Computação flaviocurte.java@gmail.com Programação Orientada a Objetos X Banco de Dados Relacionais = Paradigmas diferentes

Leia mais

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

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Primeira Dica Afirmação O que é Java? Características do Java Como Java Funciona Plataforma Java Edições Java Java SE Java EE Java ME

Leia mais

Tutorial RMI (Remote Method Invocation) por Alabê Duarte

Tutorial RMI (Remote Method Invocation) por Alabê Duarte Tutorial RMI (Remote Method Invocation) por Alabê Duarte Este tutorial explica basicamente como se implementa a API chamada RMI (Remote Method Invocation). O RMI nada mais é que a Invocação de Métodos

Leia mais

Profa. Thienne Johnson

Profa. Thienne Johnson Profa. Thienne Johnson E. Gamma and R. Helm and R. Johnson and J. Vlissides. Design Patterns - Elements of Reusable Object-Oriented Software. Addison- Wesley, 1995. Conhecido como GoF (Gang of Four) Versão

Leia mais

Introdução à Plataforma Eclipse. Leandro Daflon daflon@les.inf.puc-rio.br

Introdução à Plataforma Eclipse. Leandro Daflon daflon@les.inf.puc-rio.br Introdução à Plataforma Eclipse Leandro Daflon daflon@les.inf.puc-rio.br Agenda Introdução Arquitetura da Plataforma Componentes da Plataforma JDT PDE Visão Geral do Projeto Eclipse.org 2 Introdução O

Leia mais

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL. Java Peristence API 1.

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL. Java Peristence API 1. UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL Java Peristence API 1.0 Salvador-Ba Março/2009 1 RAMON PEREIRA LOPES Java Peristence API

Leia mais

Análise de Programação

Análise de Programação Análise de Programação Conceitos Avançados da Linguagem de Programação Java Prof Gilberto B Oliveira Encapsulamento Proteger o dado dentro de uma classe (capsula segura) Facilita o uso da classe por outros

Leia mais

Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.

Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this. Aula 2 Objetivos Encapsulamento na linguagem Java; Utilizando a referência this. Encapsulamento, data hiding é um conceito bastante importante em orientação a objetos. É utilizado para restringir o acesso

Leia mais

THREADS EM JAVA. George Gomes Cabral

THREADS EM JAVA. George Gomes Cabral THREADS EM JAVA George Gomes Cabral THREADS Fluxo seqüencial de controle dentro de um processo. Suporte a múltiplas linhas de execução permite que múltiplos processamentos ocorram em "paralelo" (em computadores

Leia mais

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc. Sintaxe Geral Tipos de Dados Comentários Comentários: De linha: // comentário 1 // comentário 2 De bloco: /* linha 1 linha 2 linha n */ De documentação: /** linha1 * linha2 */ Programa Exemplo: ExemploComentario.java

Leia mais

Aspectos técnicos do desenvolvimento baseado em componentes

Aspectos técnicos do desenvolvimento baseado em componentes Aspectos técnicos do desenvolvimento baseado em componentes Um novo processo de desenvolvimento O uso de componentes traz mudanças no processo de desenvolvimento Além de desenvolver um produto, queremos

Leia mais

Programação Orientada a Objetos. Encapsulamento

Programação Orientada a Objetos. Encapsulamento Programação Orientada a Objetos Encapsulamento de Dados Ocultação de dados Garante a transparência de utilização dos componentes do software, facilitando: Entendimento Reuso Manutenção Minimiza as interdependências

Leia mais

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sumário. Java 2 Enterprise Edition. J2EE (Java 2 Enterprise Edition)

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sumário. Java 2 Enterprise Edition. J2EE (Java 2 Enterprise Edition) Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) J2EE () Sumário Introdução J2EE () APIs J2EE Web Container: Servlets e JSP Padrão XML 2 J2EE é Uma especificação para servidores

Leia mais

Fixture-Factory. Criando objetos para seus testes. Como criar objetos através de templates para serem utilizados como massa de dados em seus testes.

Fixture-Factory. Criando objetos para seus testes. Como criar objetos através de templates para serem utilizados como massa de dados em seus testes. fixture-factory_ Fixture-Factory Criando objetos para seus testes Como criar objetos através de templates para serem utilizados como massa de dados em seus testes. Começamos testando métodos simples, mas

Leia mais

Processamento de dados XML

Processamento de dados XML Processamento de dados XML César Vittori cvittori@inf.ufrgs.br Outubro de 2000 Resumo Considerações no desenvolvimento de software para processar dados XML. Processamento de uma DTD para interpretar marcação

Leia mais

( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO DISPOSITIVOS MOVEIS ANDROID STUDIO

( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO DISPOSITIVOS MOVEIS ANDROID STUDIO Serviço Nacional de Aprendizagem Comercial E.E.P. Senac Pelotas Centro Histórico Programa Nacional de Acesso ao Ensino Técnico e Emprego Curso Técnico em Informática ( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO

Leia mais

ruirossi@ruirossi.pro.br

ruirossi@ruirossi.pro.br Persistência Com JPA & Hibernate Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 Mapeamento Objeto-Relacional Contexto: Linguagem de programação orientada a objetos

Leia mais

Java Threads. Introdução

Java Threads. Introdução Java Threads mleal@inf.puc-rio.br 1 Introdução O único mecanismo de concorrência suportado explicitamente pela linguagem Java é multi-threading. threading. Os mecanismos de gerenciamento e sicronização

Leia mais

Subtipos e Subclasses

Subtipos e Subclasses Subtipos e Subclasses Aula 15 do curso 6.170 15 de outubro de 2001 Sumário 1Subtipos 32 2 Exemplo: Bicicletas 33 3 Exemplo: Quadrado e retângulo 37 4 Princípio de substituição 38 5 Subclasses e subtipos

Leia mais

EJB. Session Beans. J2EE (C. Geyer) Introdução a SessionBean 1

EJB. Session Beans. J2EE (C. Geyer) Introdução a SessionBean 1 EJB Session Beans J2EE (C. Geyer) Introdução a SessionBean 1 Autores! Autores " Cláudio Geyer " Eduardo Studzinski Estima de Castro (EJB 3.0) " Gisele Pinheiro Souza (EJB 3.0) J2EE (C. Geyer) Introdução

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:

Leia mais

Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB)

Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB) Uma Introdução à Arquitetura Francisco C. R. Reverbel 1 Copyright 1998-2006 Francisco Reverbel O Object Request Broker (ORB) Via de comunicação entre objetos (object bus), na arquitetura do OMG Definido

Leia mais

Introdução à Tecnologia Web

Introdução à Tecnologia Web Introdução à Tecnologia Web JavaScript Sintaxe da Linguagem: Delimitadores e etc Profª MSc. Elizabete Munzlinger JavaScript Sintaxe da Linguagem Índice 1 SINTAXE DA LINGUAGEM... 2 1.1 Delimitadores de

Leia mais

INTEGRAÇÃO DE TÉCNICAS DE SISTEMAS DISTRIBUÍDOS APLICADA AO DESENVOLVIMENTO DE UM AMBIENTE PARA O JOGO DE XADREZ

INTEGRAÇÃO DE TÉCNICAS DE SISTEMAS DISTRIBUÍDOS APLICADA AO DESENVOLVIMENTO DE UM AMBIENTE PARA O JOGO DE XADREZ INTEGRAÇÃO DE TÉCNICAS DE SISTEMAS DISTRIBUÍDOS APLICADA AO DESENVOLVIMENTO DE UM AMBIENTE PARA O JOGO DE XADREZ Acadêmico: Antonio Carlos Bambino Filho Orientador: Prof. Marcel Hugo SUMÁRIO Introdução;

Leia mais

Programação Orientada a Objetos em Java. Threads Threads Threads. Threads

Programação Orientada a Objetos em Java. Threads Threads Threads. Threads Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Threads Threads Threads Threads Professor: César Melo Slides baseados

Leia mais

SUMÁRIO CAPÍTULO 1 INTRODUÇÃO AO JAVA... 1

SUMÁRIO CAPÍTULO 1 INTRODUÇÃO AO JAVA... 1 SUMÁRIO CAPÍTULO 1 INTRODUÇÃO AO JAVA... 1 A Origem... 2 O Caminho Para a Aprendizagem... 4 Java Como Plataforma... 6 Finalidade... 9 Características... 11 Perspectivas... 13 Exercícios... 14 CAPÍTULO

Leia mais

Aplicabilidade: visão geral

Aplicabilidade: visão geral CURSO BÁSICO SAXES 2 Aplicabilidade: visão geral BI Comércio Indústria nf-e Serviços Software house Enterprise Business Bus Banco financeiro Instituição Sindicato ERP html Casos 3 6 Customização: importação

Leia mais

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

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação III Aula 02 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação Técnica de comunicação padronizada para enviar instruções a um computador. Assim

Leia mais

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos

Leia mais

Objetivos: Sun recomenda que utilize o nome de domínio da Internet da empresa, para garantir um nome de pacote único

Objetivos: Sun recomenda que utilize o nome de domínio da Internet da empresa, para garantir um nome de pacote único Pacotes e Encapsulamento Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Introdução Permite o agrupamento de classes em uma coleção chamada pacote Um pacote é uma coleção de classes

Leia mais

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

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da Java Laboratório Aula 1 Programação orientada a objetos Profa. Renata e Cristiane Introdução a Plataforma Java O que é Java? Tecnologia Linguagem de Programação Ambiente de Execução (JVM) Tudo isso é a

Leia mais

POO Programação Orientada a Objetos. Classes em Java

POO Programação Orientada a Objetos. Classes em Java + POO Programação Orientada a Objetos Classes em Java + Classes 2 Para que a JVM crie objetos: Ela precisa saber qual classe o objeto pertence Na classe estão definidos os atributos e métodos Programamos

Leia mais

Programação e Configuração de Aplicações JEE. Edilmar Alves

Programação e Configuração de Aplicações JEE. Edilmar Alves Programação e Configuração de Aplicações JEE Edilmar Alves Palestrante Sócio da InterSite Informática Professor Universitário Coordenador do JUGMS e membro do BrazilJUGs Fã de Linux, Java e outros softwares

Leia mais

www.3layer.com.br www.3layer.com.br Merlin Um Novo Horizonte na Criação das Telas de Cadastro

www.3layer.com.br www.3layer.com.br Merlin Um Novo Horizonte na Criação das Telas de Cadastro Merlin Um Novo Horizonte na Criação das Telas de Cadastro Sumário >> panorama geral Cenário A proposta Comparações Características e Funcionalidades O presente e o futuro EOF Merlin - Um Novo Horizonte

Leia mais

AGORA ORACLE AO SEU ALCANCE

AGORA ORACLE AO SEU ALCANCE A performance que você necessita no preço que você quer! Agora, produtos de infra-estrutura tecnológica ao seu alcance. Existem alternativas que proporcionam às pequenas e médias empresa permanecerem no

Leia mais

Arquitetura JEE Introdução à Camada de Negócios: Enterprise Java Beans (EJB) Marcos Kalinowski (kalinowski@ic.uff.br)

Arquitetura JEE Introdução à Camada de Negócios: Enterprise Java Beans (EJB) Marcos Kalinowski (kalinowski@ic.uff.br) Arquitetura JEE Introdução à Camada de Negócios: Enterprise Java Beans (EJB) (kalinowski@ic.uff.br) Agenda Arquiteturas Web em Java (Relembrando) Arquitetura Java EE Introdução a Enterprise Java Beans

Leia mais