[Java 7] As alterações aprovadas:  XML
Índice dos Fóruns » Notícias
Autor Mensagem
Rafael Afonso
Virtual Machine Man
[Avatar]
Membro desde: 05/12/2002 16:03:43
Mensagens: 719
Localização: São Paulo/SP
Offline

Olá:

Saiu a relação das alterações aprovadas para Java 7:

  • Simplified Generics: Uso da diamond notation:



  • Collection Literals:



  • Automatic Resource Management



  • String em Switchs



  • Binary Literals



  • Simplified Varargs Method Invocation


  • Este confesso que não entendi

  • language support for JSR 292(invokedynamic)



  • Fontes:
    http://java.dzone.com/articles/jdk7-tackles-java-verbosity
    http://blogs.sun.com/darcy/entry/project_coin_final_five

    Rafael Ubiratam Clemente Afonso
    ---------------------------------------
    GitHub
    ScalaFX
    LinkedIn
    [MSN]
    Bruno Laturner
    GUJ Expert
    [Avatar]

    Membro desde: 18/02/2008 16:17:53
    Mensagens: 3002
    Offline

    Rafael Afonso wrote:
  • Simplified Varargs Method Invocation


  • Este confesso que não entendi


    No final do email tem links falando sobre o problema, este achei o melhor: http://tech.puredanger.com/2007/02/27/generics-array-construction/

    O problema fundamental é instanciar Arrays, que são tipos verificados em tempo de compilação, usando generics (tempo de execução), onde seus tipos são apagados, e ainda manter tipagem forte.

    Dá até pra fazer isso, mas com muita criatividade e magia negra.

    A resposta acima foi achada em menos de 5 minutos no google.
    The prisoner falls in love with his chains. --E.W. Dijkstra
    [WWW]
    Paulo Silveira
    Administrador
    [Avatar]

    Membro desde: 07/08/2002 18:38:50
    Mensagens: 4204
    Localização: São Paulo
    Offline

    excelente post!

    todas mudancas bem pequenas, mas vao ajudar bastante.

    uma pena que a grande maioria das mudancas maiores foram engavetadas. especialmente reificação de tipos genéricos, structs (objetos na pilha, por assim dizer) e outras coisinhas mais.

    http://blog.caelum.com.br twitter: @paulo_caelum


    [Email] [WWW]
    ceara
    Debugger
    [Avatar]

    Membro desde: 27/05/2005 10:02:01
    Mensagens: 60
    Localização: Campinas
    Offline

    Sweeeeeeeeeeeeeeeet!

    Até as empresas homologarem o Java 7 vai demorar!


    rafacastanho.wordpress.com
    [WWW] [ICQ]
    Lucas Teixeira
    Java Ninja
    [Avatar]

    Membro desde: 11/12/2003 10:47:22
    Mensagens: 269
    Localização: São Paulo - SP
    Offline

    Faltou lembrar do Elvis Operator e do Null-Safe Navigation. (ambos que vieram do Groovy)

    O Elvis Operator (Operador Elvis, "está vivo, não morreu, apesar de você não vê-lo") é uma maneira simplificada para usar a atribuição de valores a variáveis com operadores ternários, levando-se em consideração que 90% dos casos onde usamos os operadores ternários, são para validar se um objeto é null ou não. Exemplo.




    Já o Null-Safe Navigator, é uma maneira, como dizem os Rubistas e Groovistas (esquisito né), "açucarada" de navegar em objetos e seus filhos. Ele faz uma validação se o objeto onde está se chamando um método é null ou não, para neste caso, efetuar a chamada mesmo.



    []s,

    Lucas F. A. Teixeira .·.
    lucastex no gmail com
    lucastex.com/twitter
    [Email] [MSN]
    AUser
    GUJ Master
    [Avatar]

    Membro desde: 23/10/2008 06:39:07
    Mensagens: 1092
    Offline

    Eu não sei quanto à vocês, mas estou com um alívio de não ter que ficar criando enum pra switch besta... Achei todas as alterações muito interessantes!
    Sergio Lopes
    Moderador
    [Avatar]

    Membro desde: 17/11/2003 00:22:10
    Mensagens: 1368
    Localização: São Paulo - SP
    Offline

    bizarro esse "Automatic Resource Management"... o que vai ter de gente usando errado isso (achando que fecha mas nao fecha)...

    pra mim eh desnecessario...

    Sérgio Lopes - twitter: @sergio_caelum - blog pessoal: sergiolopes.org
    Curso Java | Apostilas Java | Arquitetura Java | Curso Rails
    renanreismartins
    GUJ Ranger
    [Avatar]

    Membro desde: 19/09/2007 15:19:38
    Mensagens: 807
    Localização: São Paulo - SP
    Offline

    Sergio Lopes wrote:bizarro esse "Automatic Resource Management"... o que vai ter de gente usando errado isso (achando que fecha mas nao fecha)...

    pra mim eh desnecessario...


    Sergio, como deverá ser feito com a nova mudança ?

    grande abrassss

    http://renanreismartins.blogspot.com/ - Para apaixonados por desenvolvimento de software
    [WWW] [MSN]
    Marky.Vasconcelos
    Moderador
    [Avatar]

    Membro desde: 11/04/2007 18:18:20
    Mensagens: 5932
    Localização: São Paulo/SP
    Offline

    Os safe-null operators sairam mesmo?

    Até onde vi tava planejado mas não ia sair.

    Isso seria algo muito interessante.

    Não gosto de switchs então vou continuar não usando mesmo aceitando Strings.

    Facebook @MarkyHitchhiker +Mark WP: MarkyTech's

    Projects:
    Android Roadmap - Aprenda Android do inicio (Java é o unico pre-requisito)
    Towel ( ObjectTableModel & Swing & Utils )
    Tower Defense Game - Java2D [Open-Source] [How-to-play]
    EVGD: Programação de jogos (links) Ponto V! - Desenvolvimento de jogos para indies, curiosos e profissionais

    DefaultTableModel?! PARE! Não faça isso! Faça melhor!

    Dicas: Faça perguntas inteligentes! ; MigLayout ; GridBagLayout (Joke)

    Develop games is fantastic, with words you can make worlds!!!

    DON'T PANIC!
    MarkyHitchhiker's Blog!
    [WWW] [MSN]
    Rafael Afonso
    Virtual Machine Man
    [Avatar]
    Membro desde: 05/12/2002 16:03:43
    Mensagens: 719
    Localização: São Paulo/SP
    Offline

    O que estou sentindo falta é a inclusão da nova API de date/time, inspirada na Joda Time. Pelo menos até agora não vi nenhuma confirmação de que ela será incluída.

    Rafael Ubiratam Clemente Afonso
    ---------------------------------------
    GitHub
    ScalaFX
    LinkedIn
    [MSN]
    Bruno Laturner
    GUJ Expert
    [Avatar]

    Membro desde: 18/02/2008 16:17:53
    Mensagens: 3002
    Offline

    Sergio Lopes wrote:bizarro esse "Automatic Resource Management"... o que vai ter de gente usando errado isso (achando que fecha mas nao fecha)...

    pra mim eh desnecessario...


    Já tem muita gente esquecendo de fechar recursos que abriram, isso pelo menos ajuda a aliviar o peso sobre o programador.

    A resposta acima foi achada em menos de 5 minutos no google.
    The prisoner falls in love with his chains. --E.W. Dijkstra
    [WWW]
    Luca
    Moderador
    [Avatar]

    Membro desde: 06/09/2002 14:30:10
    Mensagens: 5810
    Localização: São Paulo/SP ou Paraty/RJ
    Offline

    Olá

    Também gostei do post.

    Quanto a notícia lamento algumas ausências tais como Improved Exception Handling for Java (esta ausência dói um pouco) e Large arrays

    Além do que descreve o post acho (não tenho certeza) que serão incluídas mais coisas tais como Acréscimos na API de concorrência (Fork/Join e TransferQueue) e Acréscimos no Java.NIO (Improved filesystem interface, Complete socket-channel functionality, Support asynchronous I/O.Ver também:
    http://openjdk.java.net/projects/nio/presentations/TS-5052.pdf
    http://openjdk.java.net/projects/nio/presentations/TS-4222.pdf
    http://openjdk.java.net/projects/nio/resources/AsynchronousIo.html

    Também deve ser incluído Type Annotations (JSR 308 ) and the Checker Framework e a nova API Date/Time (assim espero)

    Strings no switches vem com 10 anos de atraso. Teria sido muito mais útil nos primórdios do Java. Agora já nos acostumamos a viver com o mínimo de switch/case

    language support for JSR 292 (invokedDynamic) não mudará a vida do programador Java comum que programa somente em Java mas pode ajudar no desenvolvimento de sistemas interoperando (eita palavrinha horrorosa...) com outras linguagens que usam a JVM. Também ajudará a quem quiser implementar na JVM outras linguagens usando Java.

    Outros links:
    http://blogs.sun.com/darcy/resource/JavaOne/J1_2009-TS-4060.pdf
    http://blogs.sun.com/darcy/
    http://blogs.sun.com/darcy/entry/project_coin_final_five
    http://blogs.sun.com/darcy/entry/project_coin_consideration_round_2
    http://blogs.sun.com/darcy/entry/project_coin_week_1_update

    Coisas a mais que existem por aí e que poderiam fazer parte do Java SE:
    - A API de servlets e algo similar ou o próprio HttpClient
    - A API de logging deveria ser jogada fora em troca de algo como o que já existe por aí tal como SLF4J ou mesmo o LOG4J, ver links em http://www.theserverside.com/news/thread.tss?thread_id=47120 (se bem que hoje em dia logs combinam bem com armazenamentos do tipo Key/value tais como CouchDB, MongoDB, cassandra, redis e similares)
    - API para json

    []s
    Luca

    This message was edited 3 times. Last update was at 31/08/2009 16:00:14


    Dare Obasanjo (Program Manager at Microsoft)
    "The folks I know from across the industry who have to build large scale Web services on the Web today at Google, Yahoo!, Facebook, Windows Live, Amazon, etc are using RESTful Web services. The only times I encounter someone with good things to say about WS-* is if it is their job to pimp these technologies or they have already "invested" in WS-* and want to defend that investment."


    CEP, JMS, JMX e coisas afins (ou não)
    http://lucabastos.blogspot.com/
    [Email] [WWW]
    thiago.correa
    GUJ Master
    [Avatar]

    Membro desde: 26/03/2006 18:54:30
    Mensagens: 1861
    Offline

    E closerus está confirmado mesmo para essa versão?! Achei interessante Collection Literals, já a Diamond Notation e a Management Resource eu não gostei pois prefiro algumas coisas bem explícitas e claras!

    Agora uma pergunta que me veio a cabeça, no caso da Collection Literals, qual implementação de List que ela irá usar?! , e no caso do Map?!

    ---
    "Se não puder ajudar, atrapalhe, afinal de contas o importante é participar!"
    Thiago
    [MSN]
    Rafael Afonso
    Virtual Machine Man
    [Avatar]
    Membro desde: 05/12/2002 16:03:43
    Mensagens: 719
    Localização: São Paulo/SP
    Offline

    thiago.correa wrote:E closerus está confirmado mesmo para essa versão?! Achei interessante Collection Literals, já a Diamond Notation e a Management Resource eu não gostei pois prefiro algumas coisas bem explícitas e claras!

    Agora uma pergunta que me veio a cabeça, no caso da Collection Literals, qual implementação de List que ela irá usar?! , e no caso do Map?!

    Que eu saiba closures foi abandonado. Quanto aos literals eu apostaria em ArrayList e em HashMap.

    Rafael Ubiratam Clemente Afonso
    ---------------------------------------
    GitHub
    ScalaFX
    LinkedIn
    [MSN]
    Rafael Afonso
    Virtual Machine Man
    [Avatar]
    Membro desde: 05/12/2002 16:03:43
    Mensagens: 719
    Localização: São Paulo/SP
    Offline

    Aqui está uma página com o status das features propostas para o Java 7: http://tech.puredanger.com/java7

    Rafael Ubiratam Clemente Afonso
    ---------------------------------------
    GitHub
    ScalaFX
    LinkedIn
    [MSN]
     
    Índice dos Fóruns » Notícias
    Ir para:   
    Powered by JForum 2.1.8 © JForum Team