Journal de participation à la session d'étude.
Java 9
Java 9 Features | |
---|---|
Module System | jigsaw,Adapté au déploiement Cloud, Docker, module-info.Défini en java |
The Modular JDK | |
jShell | |
Encapsulate Internal APIs | |
jlink | outil, Linker can produce custom runtime image(Regular, JVM specific memory images, fast exec) |
Ahead of Time (AOT) Compilation | statically compile java classes,Intégration de compilation statique et dynamique |
G1 Garbage Collector as the Default | Divisez l'espace du tas en tailles fixes, E, S,Mark O |
Méthode de modularisation
module com.foo.bar{
require com.foo.bar
exports com.foo.bar
}
Modular Development
La modularisation est possible dans chaque couche |
---|
Modular Application |
Modular Link |
Modular JDK |
Accessibility | Accessibilité Java 9 |
---|---|
public | public to everyone |
public but only ... | |
public only within a module | |
protected | protected |
private | private |
src/module-info.java
module hello.world{
exports com.example.hello; // Paquets publiés en externe requires java.base; }
hello.world |
---|
com.example.bonjour public |
(No concealed packages)cache |
Migrating from the top down
Dépendances de bibliothèques tierces -> Extraire les dépendances avec la commande jdeps
Automatic Modules Modularisation automatique (lorsque vous souhaitez utiliser une bibliothèque tierce pour la modularisation) Le nom du fichier JAR est le nom du module Tout publier
module hello.world{
exports com.example.hello to myapp;
requiert java.base; // ajouté par défaut requires jackson-core; ouvre com.myapp.domain à jackson.databind // Comportement uniquement lors de l'utilisation de la réflexion
uses javax.print.PrintServiceLookup
}
module printlib{
provides javax.print.PrintServiceLookup with groovy.backend.CodeEvaluatetionEngineFactory;
}
JDK layout assumptions Changer de répertoire, rt.jar
Class loader assumptions Ordre de chargement des classes
System property changes
Matériau de référence JEP 261
Éviter les dépendances circulaires des modules
httpClient.java (dépend de logging.api) | > loging.apis interface LogSPI < | logging.impl (dépend de logging.api) class HTTPLogger implements LogSPI
Java Future | L'avenir de Java |
---|---|
uniform model | object, Array, value, types, methods |
post-threaded | Confined/immutable data |
Data Layout | Codes like a class, works like an int! |
Data Layout
class Point {
final int x;
final int y;
}
Point[] pts = |x|y|x|y|x|y|Je veux faire une image de
maintenant,|x|y| |x|y| |x|y|Image avec un espace comme Moins efficace avec GC
Java EE 8
Java EE 8 | |
---|---|
JAX-RX2.1 | |
Servlet 4.0 | HTTP/2 performance, server push |
JSON-B 1.0 | JSON <-> Java binding |
JSON-P 1.1 | |
CDI 2.0 | |
Bean Validation | |
JSF 2.3 | |
Security 1.0 |
Deep Learning
deepleaning4j
Recommended Posts