Post on 27-Aug-2020
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 1
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 2
Java: эволюция неизбежна
Александр Белокрылов
@gigabel
@OracleSpb
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 3
Make the Future Java
Целостная платформа
Модернизация и инновации
Продуктивность разработчиков
Прозрачное эволюционирование
Вовлечение сообщества
Качество и безопасность
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 4
Java стратегия развития
Переход на JDK 7: ISV,
хостинг провайдеры,
разработчики
JDK 8/9: Lambda,
JavaScript, слияние JVM
в 8, Jigsaw в 9
JDK 9 и дальше: Generic
language interop,
использование GPU,
улучшения для облаков
Java SE
Java EE 6: Широкая
распространенность;
Поддерживается всеми
АS
Java EE 7: начало
2013; Фокус на HTML 5
упрощении разработки
Java EE 8: облачность
и модульность
Java EE
UI для инструментов,
десктопных и
встроенных
приложений
Интеграция с
Swing/SWT/HTML5
Работа с App Stores и
другими моделями
распространения
Уход от плагина в
будущем
JavaFX/Client
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 5
Java стратегия развития
Платформа
безопасности
Enable rich ecosystem of
security applications
Фундамент системы
безопасности Internet of
Things
Java Card
Поддержка новых
релизов Java ME, SE и
EE
Поддержка
развивающихся
технологий HTML 5
Поллая поддержка end-
to-end разработки для
десктопа, веб и
встроенных систем
NetBeans
Цель один JSR для
платформы
Подсистема SE,
слияние ME/SE
инструментария и API
Низкие аппаратные
требования для
бюджетных встроенных
систем
Java в Internet of Things
Java ME
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 6
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 7
Java Scorecard 2012
Java SE • Добавлена поддержка OS X и Linux ARM
• Выпущено 8 обновлений с более чем 300 улучшениями
JavaFX • JavaFX 2.2 для Windows, OS X, и Linux
• JavaFX 1.0 SceneBuilder для Windows и OS X
• Движение JavaFX к OpenSource
Java ME/
Embedded
• Выпуск Java Embedded Suite – стек для встроенных систем
• Выпуск Java ME Embedded для Java на микроконтроллерах
• Java ME/SE запланирована синхнонизация релизов ME/SE 8 в CY2013
• Java ME 8 JSR запрос на стандарт будет отправлен в JCP
Java EE • 2 выпуска GlassFish
• Java EE 7 переопределен и специфицирован выпуск в CY2013
• Java EE 7 с HTML5
Технология Результат
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 8
Java Scorecard 2012
OpenJDK
• Новые проекты: Penrose, OpenJFX, PowerPC/AIX ports,
Sumatra поддержка GPU
• Обновление в комитете: Andrew Haley, Doug Lea избраны
• 68 новых «рук» в OpenJDK , включая CBOE, SUSE, Taobao и множество
индивидуальных разработчиков
JCP • JCP.next: прозрачность, слияние комитетов, пересмотр JSPA
• Adopt a JSR программа инициирована JUG London and SOUJava
• 21 JSRs создан начиная с октября 2011
JUG • 25% прирост Java User Groups (c 157 до 197)
• 20+ новых JUG появились в этом году
• 36% рост Oracle - JUG выступлений (с 50 to 68)
Сообщество Результат
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 9
Java Scorecard 2012
Инвестиции • Неизменный рост инвестиций
• 4 региональных JavaOne более 5,000 посетителей
Сообщество • Публикуется Java Magazine: 120K подписчиков
• 17% количество Java Days (с 46 до 54)
• 500k разработчиков WW получили информацию от Oracle
Цифры • 17% рост Java.net регистраций (с 700K до 820K)
• 8% рост активных пользователей NetBeans (1.1M to 1.22M)
Oracle Leadership Результат
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 10
Java SE
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 11
Java SE 7 массовый переход
0
50
100
150
200
250
7 7u1 7u2 7u3 7u4 7u5 7u6 7u7
Millio
ns
Oracle JRE 7 Downloads
Oracle JRE 7 Downloads
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 12
Java 7 на OS X и Linux/ARM
Ethernet
USB
SD
Card
Audio RCA
Video
General
Purpose I/O
Power HDMI
Image source: Boston Ltd., UK
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 13
JDK 8
Java for Everyone • Профайлы
• JSR 310 - Date & Time APIs
• Non-Gregorian calendars
• Unicode 6.1
• ResourceBundle
• BCP47 locale matching
• Globalization & Accessibility
Innovation • Lambda (замыкания)
• Language Interop
• Nashorn
Core Libraries • “Параллельные” коллекции
Improvements in functionality
• Improved type inference Security • Ограничение doPrivilege
• NSA Suite B algorithm support
• Поддержка SNI Server Side
• DSA обновление FIPS186-3
• AEAD JSSE CipherSuites
Tools • Управление компилятором
• JSR 308 – аннотации Java-
типов
• Нативные пакеты
• Инструменты для App Store
Client • Новые метод развертывания
• JavaFX 8
• Public UI Control API
• ПоддержкаJava SE Embedded
• Поддержка HTML5
• 3D формы и атрибуты
• Система печати
General Goodness • Улучшения в JVM
• No PermGen
• Производительность
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 14
Project Nashorn
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 15
base
tls logging
auth jdbc
jta rmi
jaxp naming
rowset
kerberos management
compiler
xmldsig
prefs sctp
instrument
scripting
crypto
compat
management.iiop cosnaming
corba
desktop
tools.jre
jaxws
jx.annotations
httpserver
tools
tools.jaxws tools.base
devtools
10 52MB 17 24
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 16
JavaFX вчера и сегодня
JavaFX 2.2 для
Linux
Scene Builder 1.0
Linux Developer
Preview
JavaFX 2.1 для
OS X
OpenJFX
проект создан
Dec 11
NetBeans 7.2 с
FX 2.1 и Scene
Builder
integration
Linux/ARM Dev
Preview
Scene Builder
Linux Dev Preview
Jan 12 Apr 12 Aug 12
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 17
JavaFX 2.2 и дальше
Multi-Touch Mac
Scene Builder Advanced Cells
1080p Embedded
Performance
Rich Text
ComboBox
HTTP Live Streaming
Pagination
3D Native Deployment
h.264
Snapshot Canvas
Writeable Image
ColorPicker
i18n
Linux
Printing
Accessibility 3rd Party Controls
SWT
for Linux
ARM
Complex Text
SwingNode
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 18
Новый метод развертывания приложений
Кросс-платформенное JavaFX приложение
JAR, Applet, JNLP, Self-contained
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 19
JavaFX Deployments
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 20
To Java SE 9 and Beyond!
Jigsaw
Cloud
Ease of use Optimizations Generic Lang Interoperability
Penrose
OpenJFX
Project Sumatra – Java for GPUs
Ports: Power PC/AIX
Multi-Tenancy Support
Self Tuning JVM
Improved Integration with Native
Resource Management
Lang Enhancements
Unified Type System
Data Structure Optimizations
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 21
Дорожная карта Java SE
2015 2012 2013 2014
7u6 • JRE на Mac
• JavaFX 2.2 интеграция
• Linux ARM V6/V7
• JavaFX на Mac и Linux
JDK 8 • Lambda
• Слияние JVM
• JavaScript Interop
• JavaFX 8
– Public UI Control API
– Java SE Embedded support
– Enhanced HTML5 support
NetBeans IDE 7.2 • JDK 7 на Mac
• JavaFX на Mac и Linux
Scene Builder 1.0 • Windows и Mac
Major Serviceability
improvements • Java Flight Recorder
• Native memory tracking
• Java Discovery Protocol
• App Stores Packaging tools
• Last Public Release of JDK 6
JDK 9 • Jigsaw
• Интероперабельность
• Оптимизации
• Cloud
• JavaFX 9
• JavaFX JSR
NetBeans IDE 7.3 • Scene Builder 1.1
Scene Builder 1.1 • Поддержка Linux
NetBeans IDE 8 • JDK 8 support
• Scene Builder 2.0 support
Scene Builder 2.0 • JavaFX 8 support
• Enhanced Java IDE support
NetBeans IDE 9 • JDK 9 support
• Scene Builder 3.0 support
SceneBuilder 3.0 • JavaFX 9 support
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 22
Нужны летчики-испытатели
JDK 8 бетта в феврале 2013
– http://openjdk.java.net/projects/jdk8
JDK 8 сборки уже доступны
– Пробуйте Lambda и JavaFX 8
– Для сильных духом http://jdk8.java.net/
Сборки с Jigsaw также на
Java.net
Java SE и JavaFX
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 23
Java ME & Embedded
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 24
Sensors & Micro controllers
Smart Energy & mHealth
Connected Vehicles Smart Appliances &
Consumer Electronics Communications Industrial controls &
Network Appliances
Multi-function
Embedded Devices
Java Embedded – Java для встроенных систем
Personal Devices
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 25
Platform
Footprint
Device
CPU/
GPU/I-O ARM 7 Cortex M ARM9/11 MIPS32/Intel Atom/ARM CortexA/PPC
50KB-1MB
1MB-10MB
10MB-100MB
Oracle Java Embedded Offering Today
Java card
OJEC
Средние
SE-E
Большие
ME-E
Маленькие Безопасные
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 26
New Embedded релизы
Java ME Embedded 3.2
Runtime: платформы на
микроконтроллерах
Java Embedded Suite 7.0
Интегрированная Java
платформа для встроенных
систем
Оконечные устройства Концентраторы
Embedded
Данные & Приложения
DB 3.1.1
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 27
Java Card Основа для системы безопасностии Embedded
Communication
Network Business
Application
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 28
Дорожная карта Embedded Java
2015 2012 2013 2014
Java Embedded Suite 7
• SE Embedded 7
• GlassFish для Embedded
• Java DB
Java SE Embedded 8 • Слияние JVM
• компактные профайлы
• JavaFX для Embedded
Java Embedded Suite 8 • интеграция с FMW
• Flight Recorder/Mission Control
Java ME Embedded 3.2
• Микроконтроллеры
• API доступа к устройству
Java ME SDK 3.2
• Embedded эмулятор
• Eclipse интеграция
Java Embedded Suite 7.1
• Последние версии JDK и
GlassFish
• Оптимизации
• Новые поддерживаемые
платформы
Java Embedded 9
• JDK9
• Модульность Jigsaw
• Дополнительный
Embedded device APIs
• Облегчение процесса
разработки
Java ME Embedded 3.3
• Прямой доступ
• Оптимизация
аппаратных требований
• Улучшение
инструментов и
подходов к разработке
Java ME Embedded 8 • Java ME 8
• Стандартный Embedded API
• Новый on-device debugging
NetBeans IDE 8 • Поддержка Java ME/SE 8
Embedded
NetBeans IDE 7.2
• ME Embedded
NetBeans IDE 9
• Поддержка Java
ME/SE 9 Embedded
• Поддержка Jigsaw
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 29
Что делать? Узнайте больше о Java Embedded
Доклад Артура Пилипенко
Скачать и попробовать Java Embedded
– http://www.oracle.com/technetwork/java/embedded/downloads
Вступить в сообщество Java Embedded на Java.net
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 30
Java EE
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 31
Java EE фокус и направление развития
Стандарт: для приложений
Модульность: модульная архитектура
Расширяемость: выбираем лучшее
Переносимость: между вендорами
Продуктивность: для разработчиков
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 32
Java EE сообщество
GlassFish 51 билд
2 релиза
выпущены
Java EE 7
1 сообщество
14 JSRs 19 spec
leads
32
компании 201 эксперт
Java EE 7 23 активных проекта
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 33
Java EE 6 мировое господство
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 34
?
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 35
Люди говорят
…it is a brave and honest decision of the EG to
realign Java EE 7 to the community needs and
make a second try on Cloud and PaaS with the
Java EE 8 Platform release scheduled for the
spring of 2015…
Markus Eisele, Java EE Consultant
http://blog.eisele.net/
Speaking as a Java EE implementer, we (Red Hat)
are very much in support of this. We've long
advocated that we, the Java EE community are not
ready to standardize cloud yet, and feel this is
proven by OpenShift, our Java EE cloud offering,
which is working well with Java EE 6.
Pete Muir, Redhat
Java EE is already 90% cloud ready due to its focus on
clear packaging, deployment and portability ...When it
comes to the last 10% of unmet cloud needs, we are
clearly in a time of experimentation, not yet a time of
standardization... Vendors innovate, collectively we
standardize. We are not done innovating in this space.
David Blevins, Apache TomEE, Geronimo
Java EE 7 Cloud features likely to be
delayed until 2015 – your view?
Right call. Cloud standardization is a bad
move with the market changing so much
52%
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 36
Java EE прошлое, настоящее, будущее
May 1998
Enterprise
Java Platform
Dec 1999
10 specs
Robustness
Sep 20110
13 specs
Web Services
Nov 2003
20 specs
Ease of
Development
May 2006
23 specs
Lightweight
Dec 2009
28 specs
Simplicity
& HTML5
Q2 2013
33+ specs
JPE
Project
J2EE 1.3
CMP,
Connector
Architecture
Java EE 5
Ease of
Development,
Annotations,
EJB 3.0, JPA,
JSF, Updated
Web Services
J2EE 1.4 Web
Services
Mgmt,
Deployment,
Async
Connector
Java EE 6
Pruning,
Extensibility
Ease of Dev,
CDI, JAX-RS
Web Profile
Servlet 3.0,
EJB 3.1 Lite
Java EE 7
JMS 2.0,
Batch,
JCache, TX
Interceptors
HTML5:
WebSocket,
JSON
Web Profile
JAX-RS 2.0
J2EE 1.2 Servlet, JSP,
EJB, JMS
RMI/IIOP
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 38
Java EE 7 пересмотренный фокус Продуктивность и HTML5
• Продуктивность разработчиков
– меньше Boilerplate
– Больше функциональности
• HTML5
– WebSocket
– JSON
– HTML5 Forms
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 39
Java EE 7 – JSR кандидаты
Connector
1.6
Managed Beans 1.0 EJB 3.2
Servlet 3.1
Portable
Extension
s
JSF 2.2 JAX-RS
2.0
Bean
Valid
ati
on
1.1
JMS 2.0 JPA 2.1
EL 3.0
JTA 1.2
JSP 2.2
Interceptors 1.1 CDI 1.1 Common
Annotations 1.1
Updated Major
Release
New
Java Caching API
(JSR 107)
Batch Applications
(JSR 352)
Java API for JSON
(JSR 353)
Java API for WebSocket
(JSR 356)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 40
Connector
1.6
Managed Beans 1.0 EJB 3.2
Servlet 3.1
Portable
Extension
s
JSF 2.2 JAX-RS
2.0
Bean
Valid
ati
on
1.1
JMS 2.0 JPA 2.1
EL 3.0
JTA 1.2
JSP 2.2
Interceptors 1.1 CDI 1.1 Common
Annotations 1.1
Java Caching API
(JSR 107)
Batch Applications
(JSR 352)
Java API for JSON
(JSR 353)
Java API for WebSocket
(JSR 356)
Java EE 7 – статус спецификации
✔ Early/Public Drafts Available
✔
✔
✔ ✔ ✔
✔
✔
✔
✔ ✔
✔
✔
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 41
4.0
Java EE 7 – текущая имплементация
download.java.net/glassfish/4.0/promoted/
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 42
Java EE Persistence для NoSQL
NoSQL не стандартизирован
EclipseLink NoSQL – JPA Style
– MongoDB
– Oracle NoSQL
– Cassandra в планах
– И много больше
Нужны хорошие советы!
@Entity
@NoSql(dataFormat=MAPPED)
public class Order {
@Id
@Field(name="_id")
private String id;
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 43
Java EE 8 и дальше
Облачная архитектура
Multi tenancy для SaaS приложений
Последовательное внедрение JSRов
Модульность с Jigsaw (SE 9)
Стандартизированная программная модель для облачных сервисов
Java
EE 7
PaaS
Enablement Multi-
tenancy
NoSQL
JSON-B
State Management
Avatar
Concurrency
Storage
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 44
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13 45