Java SE 9 para arquitetos: como as novidades afetarão suas decisões Michael Nascimento Santos Novas opções ● ● ● ● ● --add-modules: faz com que um módulo fique “visível” (ex: Java EE) --add-exports: faz com que determinado pacote de um módulo fique visível a um conjunto de módulos --add-opens: expõe um módulo ou pacote a “deep” reflection --patch-module : “equivalente” do -Xbootclasspath/p --permit-illegal-access: tudo acima é tão difícil que é mais fácil dar by-pass :-) JEP 282 - jlink: The Java Linker ● ● Permite criar uma imagem executável do seu programa e de suas dependências! Bom ou não para um mundo com microsserviços e Docker? (Algumas das ) outras melhorias ● ● ● ● ● ● JEP 248 - Make G1 the Default Garbage Collector: para o bem ou para o mal; meça! JEP 254 - Compact Strings: menos consumo de memória assumindo que a maioria é ISO-8859-1; JEP 259 - Stack-Walking API: permite ler a stack de forma mais performática e idiomática (lambdas); JEP 266 - More Concurrency Updates: Reactive Streams no Java SE 9! JEP 274 - Enhanced Method Handles: corrige criação de MethodHandle pra métodos default não sobrescritos; JEP 280 - Indify String Concatenation: tornar a estratégia de concatenação mais versátil usando MethodHandles e a nova classe StringConcatFactory Obrigado! [email protected] @mr_ _m Improving your business