Palestra de Tecnologia Java

Embed Size (px)

Citation preview

  • 8/14/2019 Palestra de Tecnologia Java

    1/53

    Rodrigo Lopes FerreiraSun Certified Enterprise Architect for Java Enterprise Edition 5(II)

    Sun Certified Business Component Developer for Java EE 5

    Sun Certified Web Component Developer for Java EE 5Sun Certified Programmer for Java SE 5

    Tecnologia Java

  • 8/14/2019 Palestra de Tecnologia Java

    2/53

  • 8/14/2019 Palestra de Tecnologia Java

    3/53

  • 8/14/2019 Palestra de Tecnologia Java

    4/53

    Java!Java! IdIdia de escrever softwares que funcionem emia de escrever softwares que funcionem em

    qualquer plataforma de computador, seja elaqualquer plataforma de computador, seja ela

    pessoal, servidora ou micro (celulares,pessoal, servidora ou micro (celulares, PDAsPDAs, TV, TVDigital, Cartes de Banco,Digital, Cartes de Banco, etcetc))

  • 8/14/2019 Palestra de Tecnologia Java

    5/53

    Java!Java! Funciona em qualquer ambiente operacionalFunciona em qualquer ambiente operacional

    MMquina Virtual Java (VM) interpreta oquina Virtual Java (VM) interpreta o bytecodebytecodegerado e transforma para cgerado e transforma para cdigo nativo nodigo nativo noambiente hospedeiro.ambiente hospedeiro.

    Funciona em tudo, semFunciona em tudo, sem recompilarrecompilar!!

  • 8/14/2019 Palestra de Tecnologia Java

    6/53

  • 8/14/2019 Palestra de Tecnologia Java

    7/53

    Vantagens!Vantagens! O mesmo cO mesmo cdigo roda em qualquer plataforma,digo roda em qualquer plataforma,

    sem necessidade de recompilasem necessidade de recompila

    oo

    As aplicaAs aplicaes podem ser trocadas de servidoreses podem ser trocadas de servidoresde aplicade aplicaoo

    No existeNo existevendorvendor locklock--inin. Se voc ficar. Se voc ficarinsatisfeito com a performance ou suporte de uminsatisfeito com a performance ou suporte de umfornecedor, pode procurar outrofornecedor, pode procurar outro

    Suporte extensivo a aplicaSuporte extensivo a aplicaeses multimulti--camadascamadas

  • 8/14/2019 Palestra de Tecnologia Java

    8/53

    Vantagens!Vantagens! Incentivo ao desenvolvimento orientado a objetosIncentivo ao desenvolvimento orientado a objetos

    Possibilidade de criaPossibilidade de criao de componentes como de componentes comresponsabilidadesresponsabilidades nicas, que podem sernicas, que podem serreutilizados depoisreutilizados depois

    Possibilidade de testes unitPossibilidade de testes unitrios por componenterios por componente

    distribudistribuda com um vasto conjunto deda com um vasto conjunto debibliotecas bbibliotecas bsicas prontas, chamadas desicas prontas, chamadas de APIsAPIs

  • 8/14/2019 Palestra de Tecnologia Java

    9/53

    Vantagens!Vantagens! VVrios frameworks que ajudam narios frameworks que ajudam na

    implementaimplementao de Padres de Projetoso de Padres de Projetos

    Ferramentas para documentaFerramentas para documentao de co de cdigodigo

    Maior comunidade de desenvolvedores do mundoMaior comunidade de desenvolvedores do mundo

    Milhares de artigos, revistas,Milhares de artigos, revistas, ffrumsrums etc.etc.

    Suporte e apoio das maiores companhias deSuporte e apoio das maiores companhias desoftware do mundo.software do mundo.

  • 8/14/2019 Palestra de Tecnologia Java

    10/53

  • 8/14/2019 Palestra de Tecnologia Java

    11/53

    Mundo do Java!Mundo do Java!

    Fonte:Fonte: httpshttps://://meapplicationdevelopersmeapplicationdevelopers ..devdev..javajava.net/fragmentation.html.net/fragmentation.html

  • 8/14/2019 Palestra de Tecnologia Java

    12/53

    Processo Java!Processo Java!

  • 8/14/2019 Palestra de Tecnologia Java

    13/53

    Quem controla o Java?Quem controla o Java? Controlado pela JCP (JavaControlado pela JCP (Java CommunityCommunity ProcessProcess))

    Algumas empresas que compem a JCP:Algumas empresas que compem a JCP: SunSun MicrosystemsMicrosystems IBMIBM OracleOracle BEA SystemsBEA Systems RedHatRedHat

    NovellNovell XeroxXerox Comunidade em GeralComunidade em Geral

  • 8/14/2019 Palestra de Tecnologia Java

    14/53

    Quem usa Java?Quem usa Java?

  • 8/14/2019 Palestra de Tecnologia Java

    15/53

    Quem desenvolve em Java?Quem desenvolve em Java?

    http://www.http://www.tiobe.comtiobe.com/index./index.phpphp//contentcontent//paperinfopaperinfo//tpcitpci/index.html/index.html -- Junho de 2009Junho de 2009

  • 8/14/2019 Palestra de Tecnologia Java

    16/53

    Desenvolvendo em Java!Desenvolvendo em Java! Editores de produEditores de produo gratuitos:o gratuitos:

    Eclipse IDEEclipse IDE NetBeansNetBeans IDEIDE OracleOracle JDeveloperJDeveloper

    Servidores de aplicaServidores de aplicao gratuitos:o gratuitos: GlassfishGlassfish JBossJBoss

    TomcatTomcat ApacheApache GeronimoGeronimo

  • 8/14/2019 Palestra de Tecnologia Java

    17/53

    EdiEdies do Java!es do Java! Java StandardJava Standard EditionEdition (JSE)(JSE)

    Base da plataforma, tudo funciona sobre esteBase da plataforma, tudo funciona sobre estealicercealicerce

    Java EnterpriseJava Enterprise EditionEdition (JEE)(JEE)

    AplicaAplicaes corporativas, com tratamento dees corporativas, com tratamento de

    concorrncia, alta disponibilidade, serviconcorrncia, alta disponibilidade, servios distribuos distribudos,dos,SOA, escalabilidade, transaSOA, escalabilidade, transaes etc.es etc.

    Java MicroJava Micro EditionEdition (JME)(JME)

    AplicaAplicaes para dispositivos mes para dispositivos mveis e de recursosveis e de recursoslimitados de memlimitados de memria, rede e processamentoria, rede e processamento

  • 8/14/2019 Palestra de Tecnologia Java

    18/53

    EdiEdies do Java!es do Java!

  • 8/14/2019 Palestra de Tecnologia Java

    19/53

    Java StandardJava Standard EditionEdition!!

  • 8/14/2019 Palestra de Tecnologia Java

    20/53

    Java StandardJava Standard EditionEdition!! Java Virtual MachineJava Virtual Machine ResponsResponsvel por ler ovel por ler o

    bytecodebytecode, verificar suas restri, verificar suas restries e transformes e transform--lo em clo em cdigo nativo no ambiente hospedeirodigo nativo no ambiente hospedeiro

  • 8/14/2019 Palestra de Tecnologia Java

    21/53

    Java StandardJava Standard EditionEdition!! JRE (JavaJRE (Java RuntimeRuntime EnvironmentEnvironment)) responsresponsvelvel

    por executar ospor executar os bytecodesbytecodes (empacotados em(empacotados emarquivos .jar) feitos em Java.arquivos .jar) feitos em Java.

    JDK (JavaJDK (Java DevelopmentDevelopment Kit)Kit) ferramentasferramentasnecessnecessrias para desenvolver aplicativos em Javarias para desenvolver aplicativos em Java

  • 8/14/2019 Palestra de Tecnologia Java

    22/53

    Java EnterpriseJava Enterprise EditionEdition!!

  • 8/14/2019 Palestra de Tecnologia Java

    23/53

    Java EnterpriseJava Enterprise EditionEdition!! Servidores de aplicaServidores de aplicao desenvolvidos pelao desenvolvidos pela

    comunidade ou por terceiros fornecem toda acomunidade ou por terceiros fornecem toda ainfrainfra--estrutura da aplicaestrutura da aplicaoo

    Os servidores de aplicaOs servidores de aplicao so desenvolvidoso so desenvolvidos

    sobre a especificasobre a especificao JEE, queo JEE, que concebida pelaconcebida pelaJCP.JCP.

    Libera o desenvolvedor de tarefas complexasLibera o desenvolvedor de tarefas complexas

    como processamento paralelo, transacomo processamento paralelo, transaes,es,conexes, escalabilidade etc. O desenvolvedorconexes, escalabilidade etc. O desenvolvedorfocafoca--se na lse na lgica do neggica do negcio e o servidor cuida docio e o servidor cuida dorestante.restante.

  • 8/14/2019 Palestra de Tecnologia Java

    24/53

    Java EnterpriseJava Enterprise EditionEdition!! Robustez para atender milhares de solicitaRobustez para atender milhares de solicitaeses

    simultaneamentesimultaneamente

    Suporte deSuporte de ServletsServlets,, JSPsJSPs,, EJBsEJBs,, WebServicesWebServices,,seguransegurana, conectividade com sistemas legados,a, conectividade com sistemas legados,SOA, altaSOA, alta--disponibilidade, escalabilidade,disponibilidade, escalabilidade,seguransegurana, transaa, transaes, agrupamento dees, agrupamento deconexes etc.conexes etc.

    Indicado para aplicaIndicado para aplicaes de grande escala e dees de grande escala e demisso crmisso crticatica

  • 8/14/2019 Palestra de Tecnologia Java

    25/53

    Java EnterpriseJava Enterprise EditionEdition!!

    Arquitetura bArquitetura bsica JEEsica JEE

  • 8/14/2019 Palestra de Tecnologia Java

    26/53

    Java EnterpriseJava Enterprise EditionEdition!! Servidores Web:Servidores Web:

    JakartaJakarta

    TomCatTomCat

    JettyJetty

    Servidores de AplicaServidores de Aplicao (Web+EJB+o (Web+EJB+fullfull):): SunSun GlassfishGlassfish (livre)(livre) JBossJBoss (livre)(livre) IBMIBM WebsphereWebsphere

    BEABEA WeblogicWeblogic Oracle OC4JOracle OC4J

  • 8/14/2019 Palestra de Tecnologia Java

    27/53

    Java MicroJava Micro EditionEdition!!

  • 8/14/2019 Palestra de Tecnologia Java

    28/53

    Java MicroJava Micro EditionEdition!! Permite o desenvolvimento integrado dePermite o desenvolvimento integrado de

    aplicaaplicaes personalizadas para dispositivoses personalizadas para dispositivosmmveis com capacidade de processamento, vveis com capacidade de processamento, vdeodeoe meme memria limitados.ria limitados.

  • 8/14/2019 Palestra de Tecnologia Java

    29/53

    Java MicroJava Micro EditionEdition!! HistHistria:ria:

    O objetivo era executar a aplicaO objetivo era executar a aplicao em vo em vriasriasplataformas, desde mplataformas, desde mquinas ligadasquinas ligadas TVTVhabilitadas para a internet athabilitadas para a internet at telefones celularestelefones celulares

  • 8/14/2019 Palestra de Tecnologia Java

    30/53

    Java MicroJava Micro EditionEdition!! MMquina virtual Java para Microquina virtual Java para Micro EditionEdition

    Foi projetada para ser menor e mais eficienteFoi projetada para ser menor e mais eficienteposspossvel, e ainda permanecer rvel, e ainda permanecer rpida para aspida para asnecessidades da linguagem Javanecessidades da linguagem Java

  • 8/14/2019 Palestra de Tecnologia Java

    31/53

    Java MicroJava Micro EditionEdition!! Problema: Como criar sistemas que possamProblema: Como criar sistemas que possam

    funcionar em dispositivos to diferenciados emfuncionar em dispositivos to diferenciados emnnveis de processamento e funcionalidadesveis de processamento e funcionalidadesextras?extras?

    SoluSoluo: Foram criadas aso: Foram criadas as configuraconfiguraeses!!

  • 8/14/2019 Palestra de Tecnologia Java

    32/53

    Java MicroJava Micro EditionEdition!! ConfiguraConfiguraes:es:

    Para ajustar e padronizar quais recursos podem serPara ajustar e padronizar quais recursos podem serutilizados numa aplicautilizados numa aplicao, foram criadas duaso, foram criadas duasconfiguraconfiguraes bes bsicas:sicas:

    CDCCDC ((ConnectedConnectedDeviceDevice ConfigurationConfiguration)) CLDCCLDC ((ConnectedConnectedLimitedLimitedDeviceDevice ConfigurationConfiguration))

    As configuraAs configuraes so baseadas em requisitos noes so baseadas em requisitos no

    funcionais, como: memfuncionais, como: memria, conectividade deria, conectividade derede, vrede, vdeo, poder de processamento, recursosdeo, poder de processamento, recursosadicionais, entre outrosadicionais, entre outros

  • 8/14/2019 Palestra de Tecnologia Java

    33/53

    Java MicroJava Micro EditionEdition!! CDCCDC ((ConnectedConnectedDeviceDevice ConfigurationConfiguration):):

    Direcionado para dispositivos comDirecionado para dispositivos commaior capacidademaior capacidadeeeSmartPhonesSmartPhones..

    Tem um conjunto maior de funTem um conjunto maior de funes na sua API bes na sua API bsica esica epossui recursos mais evolupossui recursos mais evoludos.dos.

  • 8/14/2019 Palestra de Tecnologia Java

    34/53

    Java MicroJava Micro EditionEdition!! CLDCCLDC ((ConnectedConnectedLimitedLimitedDeviceDevice ConfigurationConfiguration):):

    Direcionado para dispositivos com capacidade muitoDirecionado para dispositivos com capacidade muitolimitada de rede, processamento, grlimitada de rede, processamento, grficos etc.ficos etc.

    Tem um conjunto muito limitado de funTem um conjunto muito limitado de funes na sua APIes na sua APIbbsicasica

  • 8/14/2019 Palestra de Tecnologia Java

    35/53

    Java MicroJava Micro EditionEdition!! Problema do CLDC: Existem muitos dispositivosProblema do CLDC: Existem muitos dispositivos

    com capacidade limitada que possuem vcom capacidade limitada que possuem v

    riasrias

    particularidades. Por exemplo, como lidar comparticularidades. Por exemplo, como lidar comum celulares que possuem cmera e outros queum celulares que possuem cmera e outros queno possuem? Jno possuem? J que os mesmos tero a mesmaque os mesmos tero a mesma

    capacidade de processamento e rede? Se fizercapacidade de processamento e rede? Se fizerum sistema que rode em um celular com cmeraum sistema que rode em um celular com cmeraele no funcionarele no funcionar em um sem cmera...em um sem cmera...

    Isso parece um problema grave, aonde estIsso parece um problema grave, aonde est aacompatibilidade?compatibilidade?

  • 8/14/2019 Palestra de Tecnologia Java

    36/53

    Java MicroJava Micro EditionEdition!! SoluSoluo: Foi criado oo: Foi criado o Perfil de CLDC: O MIDPPerfil de CLDC: O MIDP

    MIDPMIDP ((MobileMobile InformationInformation DeviceDevice ProfileProfile)) Especializa e cria alguns requisitos mEspecializa e cria alguns requisitos mnimos de hardwarenimos de hardware

    e software, que vem para sanar os problemas dee software, que vem para sanar os problemas de

    celulares com cmera e sem cmera, comcelulares com cmera e sem cmera, com bluetoothbluetooth ouousem, com isso, sem isso etc.sem, com isso, sem isso etc.

    Agora podemos ter certeza que o dispositivoAgora podemos ter certeza que o dispositivo limitado e possui uma slimitado e possui uma srie de recursosrie de recursoshomologados na verso do seu MIDP.homologados na verso do seu MIDP.

  • 8/14/2019 Palestra de Tecnologia Java

    37/53

    Java MicroJava Micro EditionEdition!! MIDP 1.0MIDP 1.0 Dispositivos que possuem, no mDispositivos que possuem, no mnimo Xnimo X

    recursosrecursos

    MIDP 2.0MIDP 2.0 Dispositivos que possuem, no mDispositivos que possuem, no mnimo Ynimo Youtros recursosoutros recursos

    Os fabricantes devem prover no dispositivo todos osOs fabricantes devem prover no dispositivo todos osrecursos homologados na verso da especificarecursos homologados na verso da especificao doo doMIDP.MIDP.

    O desenvolvedor cria um sistema que roda sobre CLDCO desenvolvedor cria um sistema que roda sobre CLDC1.0 e MIDP 2.0. Com isso, ele garante que em qualquer1.0 e MIDP 2.0. Com isso, ele garante que em qualquerdispositivo que suporte, no mdispositivo que suporte, no mnimo esta especificanimo esta especificao,o,

    seu sistema irseu sistema ir funcionar de forma idntica.funcionar de forma idntica.

  • 8/14/2019 Palestra de Tecnologia Java

    38/53

    Java MicroJava Micro EditionEdition!!

    Componentes JMEComponentes JME

  • 8/14/2019 Palestra de Tecnologia Java

    39/53

    Java MicroJava Micro EditionEdition!!

    Arquitetura da plataforma JMEArquitetura da plataforma JME

  • 8/14/2019 Palestra de Tecnologia Java

    40/53

    Java MicroJava Micro EditionEdition!! Desenvolvendo em JMEDesenvolvendo em JME

    Softwares necessSoftwares necessrios:rios: WTK (WTK (Sun Java Wireless ToolkitSun Java Wireless Toolkit))

    Ferramentas para desenvolvimento JMEFerramentas para desenvolvimento JME EmuladoresEmuladores OtimizaOtimizaes de Performancees de Performance Ferramentas para documentaFerramentas para documentaoo Exemplos de refernciaExemplos de referncia

    IDE de DesenvolvimentoIDE de Desenvolvimento NetBeansNetBeans 6.1+ com Wireless6.1+ com Wireless toolstools Eclipse IDE comEclipse IDE com EclipseMEEclipseME PluginPlugin

  • 8/14/2019 Palestra de Tecnologia Java

    41/53

    Java MicroJava Micro EditionEdition!! MidletMidlet: Aplicativo projetado para ser executado: Aplicativo projetado para ser executado

    em um dispositivo mem um dispositivo mvelvel

  • 8/14/2019 Palestra de Tecnologia Java

    42/53

    Java MicroJava Micro EditionEdition!! OsOs MidletsMidlets so empacotados em arquivosso empacotados em arquivos..jarjaree

    podem serpodem serinstaladosinstaladosem qualquer dispositivoem qualquer dispositivommvel que suporte as verses da configuravel que suporte as verses da configurao eo eperfil, sem necessidade de alteraperfil, sem necessidade de alterao ouo ourecompilarecompilaoo

    A MA Mquina Virtual Java (K Virtual Machine, emquina Virtual Java (K Virtual Machine, emJME) controla o cJME) controla o cdigo dodigo do MidletsMidlets e o sistemae o sistema

    operacional nativo do dispositivo, controla a KVMoperacional nativo do dispositivo, controla a KVM

  • 8/14/2019 Palestra de Tecnologia Java

    43/53

    Java MicroJava Micro EditionEdition!! O pacoteO pacote..jarjarde umde um MidletMidlet contcontm os seguintesm os seguintes

    arquivos:arquivos: Os arquivosOs arquivos..classclass Um arquivo descritor (MANIFEST.MF) descrevendo oUm arquivo descritor (MANIFEST.MF) descrevendo o

    contecontedo do pacotedo do pacote

    Os recursos como imagens, mOs recursos como imagens, mdias etc.dias etc. O arquivoO arquivo..jadjad((Java ApplicationJava Application DescriptorDescriptor) que) que

    contcontm as informam as informaes sobre o aplicativo, como: nome,es sobre o aplicativo, como: nome,verso, nome do autorverso, nome do autor etcetc; O dispositivo m; O dispositivo mvel l evel l eapresenta ao usuapresenta ao usurio no momento da instalario no momento da instalaoo

  • 8/14/2019 Palestra de Tecnologia Java

    44/53

    Java MicroJava Micro EditionEdition!! Os arquivosOs arquivos..jarjardede MidletMidlet podem ser instaladospodem ser instalados

    atravatravs de:s de: Cabo de conexo direta com o dispositivoCabo de conexo direta com o dispositivo Download a partir de um host externo (intranet, internetDownload a partir de um host externo (intranet, internet

    etcetc))

    Ao tentar instalar, o dispositivo exibirAo tentar instalar, o dispositivo exibir umumdidilogo com as informalogo com as informaes do aplicativo, ees do aplicativo, esolicitarsolicitar sua confirmasua confirmao ou rejeio ou rejeio. Casoo. Caso

    aceite, a aplicaaceite, a aplicao sero ser instaladainstaladaautomaticamente e estarautomaticamente e estar dispondisponvel logo emvel logo emseguidaseguida

  • 8/14/2019 Palestra de Tecnologia Java

    45/53

  • 8/14/2019 Palestra de Tecnologia Java

    46/53

    Java MicroJava Micro EditionEdition!! Pontos importantes sobre JME:Pontos importantes sobre JME:

    O fabricante do dispositivoO fabricante do dispositivo quem implementa a KVMquem implementa a KVM((K Virtual MachineK Virtual Machine) com base na especifica) com base na especificao JME, queo JME, que concebida pela JCPconcebida pela JCP

    A melhor estratA melhor estratgia para arquitetar um sistema JMEgia para arquitetar um sistema JME aproveitar seusaproveitar seus timos recursos de conectividade;timos recursos de conectividade;servindo apenas deservindo apenas de thinthin--clientclientdo sistema, ou seja, enviado sistema, ou seja, enviae recebe dados de um sistema mais potente. Isso podee recebe dados de um sistema mais potente. Isso podeser implementado atravser implementado atravs des de socketssockets, HTTP ou, HTTP ou

    WebServicesWebServices

  • 8/14/2019 Palestra de Tecnologia Java

    47/53

    Por onde comePor onde comear em JMEar em JME

    NetBeansNetBeans IDE 6.1+IDE 6.1+

    Pode ser baixado em http://www.netbeans.orgPode ser baixado em http://www.netbeans.org

    InterfaceInterface tima para construtima para construo de componentes JMEo de componentes JME

    Agiliza e facilita muito o trabalho com JMEAgiliza e facilita muito o trabalho com JME

    Exemplos prExemplos prticos para praticamente todas as funticos para praticamente todas as funesesJME (Bluetooth, conexo viaJME (Bluetooth, conexo via socketssockets, HTTP, gr, HTTP, grficos,ficos,

    jogos de exemplo,jogos de exemplo, etcetc))

    Java MicroJava Micro EditionEdition!!

  • 8/14/2019 Palestra de Tecnologia Java

    48/53

    Tendncias JMETendncias JME Google AndroidGoogle Android

    http://code.google.com/intl/pthttp://code.google.com/intl/pt--BR/android/BR/android/

    Sistema operacional de dispositivos mSistema operacional de dispositivos mveis do futuro, baseado emveis do futuro, baseado emLinux e mantido pela OpenLinux e mantido pela Open HandsetHandset AllianceAlliance (um(um consconsrciorcio de 48de 48compahiascompahias de hardware, software e telecomde hardware, software e telecom empenhadasempenhadas paraparadesenvolverdesenvolver padrespadres abertosabertos parapara dispositivosdispositivos mmveisveis))

    Plataforma computacional micro completaPlataforma computacional micro completa aplicativos podem seraplicativos podem serescritos em linguagem Java para interagir com todo o sistemaescritos em linguagem Java para interagir com todo o sistemaoperacional (todos os recursos disponoperacional (todos os recursos disponveis)veis)

    Recursos modernos como interface grRecursos modernos como interface grfica moderna,fica moderna, lbum delbum de

    fotos, MP3 Player,fotos, MP3 Player, WebViewWebView, Google, Google MapsMaps, internet 3G etc., internet 3G etc.

    Alto investimento do Google, da OHA e da comunidade openAlto investimento do Google, da OHA e da comunidade open--source em geralsource em geral

  • 8/14/2019 Palestra de Tecnologia Java

    49/53

    Resumo Geral!Resumo Geral! JavaJava uma plataforma mundial, suportada euma plataforma mundial, suportada e

    utilizada pelas maiores empresas do mundoutilizada pelas maiores empresas do mundo

    JavaJava uma plataforma que no puma plataforma que no pra de crescerra de crescer

    Existe Java em tudo, desde os grandes servidoresExiste Java em tudo, desde os grandes servidoresatat o seu carto do bancoo seu carto do banco

    Maior comunidade de desenvolvedores doMaior comunidade de desenvolvedores domundo, com apostilas, revistas, dicas, cmundo, com apostilas, revistas, dicas, cdigo dedigo deexemplo e muito maisexemplo e muito mais

  • 8/14/2019 Palestra de Tecnologia Java

    50/53

  • 8/14/2019 Palestra de Tecnologia Java

    51/53

    O que mais aprender?O que mais aprender? Melhores prMelhores prticas de programaticas de programaoo UML (UML (UnifiedUnifiedModelingModeling LanguageLanguage)) Padres de Projetos (Padres de Projetos (DesignDesign PatternsPatterns)) MetodologiasMetodologias geisgeis

    ScrumScrum XP (XP (Extreme ProgrammingExtreme Programming)) IBM RUP (IBM RUP (RationalRationalUnifiedUnifiedProccessProccess))

    WebServicesWebServices

    SOASOA BPMBPM BPELBPEL PrepararPreparar--se para uma certificase para uma certificao profissionalo profissional

  • 8/14/2019 Palestra de Tecnologia Java

    52/53

    CertificaCertificaes Java!es Java! Reconhecidas mundialmenteReconhecidas mundialmente Providas pelaProvidas pela PrometricPrometric ((Centro Mundial deCentro Mundial de

    Treinamentos e CertificaTreinamentos e Certificaeses))

  • 8/14/2019 Palestra de Tecnologia Java

    53/53