SlideShare a Scribd company logo
1

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
The following is intended to outline our general
product direction. It is intended for information
purposes only, and may not be incorporated into
any contract. It is not a commitment to deliver any
material, code, or functionality, and should not be
relied upon in making purchasing decisions.
The development, release, and timing of any
features or functionality described for Oracle’s
products remains at the sole discretion of Oracle.

2

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Java Platform Tradeoffs
Алексей Фёдоров, Oracle
JCK, Java Platform Group
24 октября 2013

3

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
 Апдейты: часто или редко?
 Исправление багов или совместимость?

 Совместимость или новые фичи?

Agenda

 История о неизвестных отцах
 GUI: Нативный или универсальный?
 История про Beep
 Как быть хитрому лицензиату?

4

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Сюжет 1
Апдейты: часто или редко?

5

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Обновления Java и политика

6

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
7

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Сюжет 2
Исправление багов или совместимость?

8

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Протокол взаимодействия
API spec
(aka Javadoc)

JLS 8

JSR 337

Standalone
documents
9

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Спецификация конкретной
версии платформы Java
играет роль протокола!
JVMS 8
Какие изменения допустимы?
Предлагаемое изменение

Update

Major release

Добавить что-нибудь в Public API
(пакет / класс / метод / поле)

-

+

Удалить что-нибудь из Public API

-

-*

Добавить что-нибудь в Private API

+

+

Удалить что-нибудь из Private API

+**

+

Изменить спецификацию чего-нибудь

-

+**

Исправить ошибку (несоответствие поведения
требуемому в спецификации)

+**,***

+

* - @Deprecated, @Override
*** - см. следующий слайд
10

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

** - проанализировать риски
Adding null key to empty TreeMap without
Comparator should throw NPE
Bug 5045147

11

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Bug 2188127
Сюжет 3 (совсем коротко)
Совместимость или новые фичи?
 Лямбды
 Дефолтные методы в интерфейсах

12

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Сюжет 4
Неизвестные отцы

13

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
14

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
15

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
16

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
17

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
18

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
19

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
20

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Сюжет 5
GUI: Нативный или универсальный?

21

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
22

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Сюжет 6
Toolkit.beep()

23

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
24

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Java 7

25

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Java 7

Java 8
26

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Сюжет 7
Как быть хитрому лицензиату?

27

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Выводы
 Большинство tradeoff’ов связаны с совместимостью

– в том или ином её смысле
 Имеющиеся риски трудно оценивать

 Разные риски в update releases и в major updates
 Java двигается в Embedded
– целостность падает

28

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Q&A
29

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Мои контакты
 @23derevo

 alexey.x.fedorov@oracle.com
 fyodorov.spbu@gmail.com
 Skype: fyodorov.spbu
 http://about.me/alexey.fyodorov

30

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
31

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

More Related Content

Viewers also liked

Power p.rev.ind
Power p.rev.indPower p.rev.ind
Power p.rev.ind
csantan2
 
RAA-Case Study
RAA-Case StudyRAA-Case Study
RAA-Case StudyRob Schenk
 
Improvising Careers - NYU/Stern - Nov 2013
Improvising Careers - NYU/Stern - Nov 2013Improvising Careers - NYU/Stern - Nov 2013
Improvising Careers - NYU/Stern - Nov 2013
Christopher Bishop
 
Digital Marketing
Digital MarketingDigital Marketing
Digital MarketingSadiq P
 
Gregory K Harris resume 111
Gregory K Harris resume 111Gregory K Harris resume 111
Gregory K Harris resume 111Greg Harris, MS
 
Bioplastic Container Cropping Systems Project Background
Bioplastic Container Cropping Systems Project BackgroundBioplastic Container Cropping Systems Project Background
Bioplastic Container Cropping Systems Project Background
University of Nevada Cooperative Extension
 
Vbridge consulting private limited
Vbridge consulting private limitedVbridge consulting private limited
Vbridge consulting private limited
vbridgeconsult
 

Viewers also liked (12)

Power p.rev.ind
Power p.rev.indPower p.rev.ind
Power p.rev.ind
 
Gaming industry bart
Gaming industry bartGaming industry bart
Gaming industry bart
 
Md Athar cv - Copy - Copy (1)
Md Athar cv - Copy - Copy (1)Md Athar cv - Copy - Copy (1)
Md Athar cv - Copy - Copy (1)
 
Presentation1
Presentation1Presentation1
Presentation1
 
DeShetlerMILH498final
DeShetlerMILH498finalDeShetlerMILH498final
DeShetlerMILH498final
 
RAA-Case Study
RAA-Case StudyRAA-Case Study
RAA-Case Study
 
Improvising Careers - NYU/Stern - Nov 2013
Improvising Careers - NYU/Stern - Nov 2013Improvising Careers - NYU/Stern - Nov 2013
Improvising Careers - NYU/Stern - Nov 2013
 
Digital Marketing
Digital MarketingDigital Marketing
Digital Marketing
 
Presentation1
Presentation1Presentation1
Presentation1
 
Gregory K Harris resume 111
Gregory K Harris resume 111Gregory K Harris resume 111
Gregory K Harris resume 111
 
Bioplastic Container Cropping Systems Project Background
Bioplastic Container Cropping Systems Project BackgroundBioplastic Container Cropping Systems Project Background
Bioplastic Container Cropping Systems Project Background
 
Vbridge consulting private limited
Vbridge consulting private limitedVbridge consulting private limited
Vbridge consulting private limited
 

Similar to Java Platform Tradeoffs (CEE SECR 2013)

O Mundo Oracle e o Que Há de Novo no Java
O Mundo Oracle e o Que Há de Novo no JavaO Mundo Oracle e o Que Há de Novo no Java
O Mundo Oracle e o Que Há de Novo no Java
Bruno Borges
 
Java: how to thrive in the changing world
Java: how to thrive in the changing worldJava: how to thrive in the changing world
Java: how to thrive in the changing worldAlexey Fyodorov
 
Java Embedded у вас дома
Java Embedded у вас домаJava Embedded у вас дома
Java Embedded у вас дома
Diana Dymolazova
 
General Capabilities of GraalVM by Oleg Selajev @shelajev
General Capabilities of GraalVM by Oleg Selajev @shelajevGeneral Capabilities of GraalVM by Oleg Selajev @shelajev
General Capabilities of GraalVM by Oleg Selajev @shelajev
Oracle Developers
 
GlassFish Roadmap
GlassFish RoadmapGlassFish Roadmap
GlassFish Roadmap
glassfish
 
206590 mobilizing your primavera workforce
206590 mobilizing your primavera workforce206590 mobilizing your primavera workforce
206590 mobilizing your primavera workforce
p6academy
 
Introduction to MySQL Enterprise Monitor
Introduction to MySQL Enterprise MonitorIntroduction to MySQL Enterprise Monitor
Introduction to MySQL Enterprise MonitorMark Leith
 
Securing Mobile Device Access
Securing Mobile Device AccessSecuring Mobile Device Access
Securing Mobile Device Access
Artur Alves
 
A Importância do JavaFX no Mercado Embedded
A Importância do JavaFX no Mercado EmbeddedA Importância do JavaFX no Mercado Embedded
A Importância do JavaFX no Mercado EmbeddedBruno Borges
 
GraalVM: Run Programs Faster Everywhere
GraalVM: Run Programs Faster EverywhereGraalVM: Run Programs Faster Everywhere
GraalVM: Run Programs Faster Everywhere
J On The Beach
 
Владимир Иванов (Oracle): Java: прошлое и будущее
Владимир Иванов (Oracle): Java: прошлое и будущееВладимир Иванов (Oracle): Java: прошлое и будущее
Владимир Иванов (Oracle): Java: прошлое и будущее
Olga Lavrentieva
 
Ebs troubleshooting con9019_pdf_9019_0001
Ebs troubleshooting con9019_pdf_9019_0001Ebs troubleshooting con9019_pdf_9019_0001
Ebs troubleshooting con9019_pdf_9019_0001jucaab
 
Serverless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsServerless Java - Challenges and Triumphs
Serverless Java - Challenges and Triumphs
David Delabassee
 
Ed presents JSF 2.2 at a 2013 Gameduell Tech talk
Ed presents JSF 2.2 at a 2013 Gameduell Tech talkEd presents JSF 2.2 at a 2013 Gameduell Tech talk
Ed presents JSF 2.2 at a 2013 Gameduell Tech talkEdward Burns
 
Graal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them AllGraal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them All
Thomas Wuerthinger
 
JSF 2.2
JSF 2.2JSF 2.2
JSF 2.2
Edward Burns
 
Newfeaturesincontext 130911052709-phpapp01
Newfeaturesincontext 130911052709-phpapp01Newfeaturesincontext 130911052709-phpapp01
Newfeaturesincontext 130911052709-phpapp01
Frank Rodriguez
 
whats-new-netbeans-ide-80.pptx
whats-new-netbeans-ide-80.pptxwhats-new-netbeans-ide-80.pptx
whats-new-netbeans-ide-80.pptx
GabrielSoche
 
Serverless Java: JJUG CCC 2019
Serverless Java: JJUG CCC 2019Serverless Java: JJUG CCC 2019
Serverless Java: JJUG CCC 2019
Shaun Smith
 
Reconsidering applications: 10:90:90
Reconsidering applications: 10:90:90Reconsidering applications: 10:90:90
Reconsidering applications: 10:90:90
Getting value from IoT, Integration and Data Analytics
 

Similar to Java Platform Tradeoffs (CEE SECR 2013) (20)

O Mundo Oracle e o Que Há de Novo no Java
O Mundo Oracle e o Que Há de Novo no JavaO Mundo Oracle e o Que Há de Novo no Java
O Mundo Oracle e o Que Há de Novo no Java
 
Java: how to thrive in the changing world
Java: how to thrive in the changing worldJava: how to thrive in the changing world
Java: how to thrive in the changing world
 
Java Embedded у вас дома
Java Embedded у вас домаJava Embedded у вас дома
Java Embedded у вас дома
 
General Capabilities of GraalVM by Oleg Selajev @shelajev
General Capabilities of GraalVM by Oleg Selajev @shelajevGeneral Capabilities of GraalVM by Oleg Selajev @shelajev
General Capabilities of GraalVM by Oleg Selajev @shelajev
 
GlassFish Roadmap
GlassFish RoadmapGlassFish Roadmap
GlassFish Roadmap
 
206590 mobilizing your primavera workforce
206590 mobilizing your primavera workforce206590 mobilizing your primavera workforce
206590 mobilizing your primavera workforce
 
Introduction to MySQL Enterprise Monitor
Introduction to MySQL Enterprise MonitorIntroduction to MySQL Enterprise Monitor
Introduction to MySQL Enterprise Monitor
 
Securing Mobile Device Access
Securing Mobile Device AccessSecuring Mobile Device Access
Securing Mobile Device Access
 
A Importância do JavaFX no Mercado Embedded
A Importância do JavaFX no Mercado EmbeddedA Importância do JavaFX no Mercado Embedded
A Importância do JavaFX no Mercado Embedded
 
GraalVM: Run Programs Faster Everywhere
GraalVM: Run Programs Faster EverywhereGraalVM: Run Programs Faster Everywhere
GraalVM: Run Programs Faster Everywhere
 
Владимир Иванов (Oracle): Java: прошлое и будущее
Владимир Иванов (Oracle): Java: прошлое и будущееВладимир Иванов (Oracle): Java: прошлое и будущее
Владимир Иванов (Oracle): Java: прошлое и будущее
 
Ebs troubleshooting con9019_pdf_9019_0001
Ebs troubleshooting con9019_pdf_9019_0001Ebs troubleshooting con9019_pdf_9019_0001
Ebs troubleshooting con9019_pdf_9019_0001
 
Serverless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsServerless Java - Challenges and Triumphs
Serverless Java - Challenges and Triumphs
 
Ed presents JSF 2.2 at a 2013 Gameduell Tech talk
Ed presents JSF 2.2 at a 2013 Gameduell Tech talkEd presents JSF 2.2 at a 2013 Gameduell Tech talk
Ed presents JSF 2.2 at a 2013 Gameduell Tech talk
 
Graal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them AllGraal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them All
 
JSF 2.2
JSF 2.2JSF 2.2
JSF 2.2
 
Newfeaturesincontext 130911052709-phpapp01
Newfeaturesincontext 130911052709-phpapp01Newfeaturesincontext 130911052709-phpapp01
Newfeaturesincontext 130911052709-phpapp01
 
whats-new-netbeans-ide-80.pptx
whats-new-netbeans-ide-80.pptxwhats-new-netbeans-ide-80.pptx
whats-new-netbeans-ide-80.pptx
 
Serverless Java: JJUG CCC 2019
Serverless Java: JJUG CCC 2019Serverless Java: JJUG CCC 2019
Serverless Java: JJUG CCC 2019
 
Reconsidering applications: 10:90:90
Reconsidering applications: 10:90:90Reconsidering applications: 10:90:90
Reconsidering applications: 10:90:90
 

More from Alexey Fyodorov

Non-blocking Michael-Scott queue algorithm
Non-blocking Michael-Scott queue algorithmNon-blocking Michael-Scott queue algorithm
Non-blocking Michael-Scott queue algorithm
Alexey Fyodorov
 
How threads help each other
How threads help each otherHow threads help each other
How threads help each other
Alexey Fyodorov
 
Помоги ближнему, или Как потоки помогают друг другу
Помоги ближнему, или Как потоки помогают друг другуПомоги ближнему, или Как потоки помогают друг другу
Помоги ближнему, или Как потоки помогают друг другу
Alexey Fyodorov
 
Counter Wars (JEEConf 2016)
Counter Wars (JEEConf 2016)Counter Wars (JEEConf 2016)
Counter Wars (JEEConf 2016)
Alexey Fyodorov
 
Non-blocking synchronization — what is it and why we (don't?) need it
Non-blocking synchronization — what is it and why we (don't?) need itNon-blocking synchronization — what is it and why we (don't?) need it
Non-blocking synchronization — what is it and why we (don't?) need it
Alexey Fyodorov
 
Синхронизация без блокировок и СМС
Синхронизация без блокировок и СМССинхронизация без блокировок и СМС
Синхронизация без блокировок и СМС
Alexey Fyodorov
 
Unsafe: to be or to be removed?
Unsafe: to be or to be removed?Unsafe: to be or to be removed?
Unsafe: to be or to be removed?
Alexey Fyodorov
 
Общество Мертвых Потоков
Общество Мертвых ПотоковОбщество Мертвых Потоков
Общество Мертвых Потоков
Alexey Fyodorov
 
JDK: CPU, PSU, LU, FR — WTF?!
JDK: CPU, PSU, LU, FR — WTF?!JDK: CPU, PSU, LU, FR — WTF?!
JDK: CPU, PSU, LU, FR — WTF?!
Alexey Fyodorov
 
Atomics, CAS and Nonblocking algorithms
Atomics, CAS and Nonblocking algorithmsAtomics, CAS and Nonblocking algorithms
Atomics, CAS and Nonblocking algorithms
Alexey Fyodorov
 
Java in Motion
Java in MotionJava in Motion
Java in Motion
Alexey Fyodorov
 
Процесс изменения платформы Java
Процесс изменения платформы JavaПроцесс изменения платформы Java
Процесс изменения платформы Java
Alexey Fyodorov
 

More from Alexey Fyodorov (13)

Non-blocking Michael-Scott queue algorithm
Non-blocking Michael-Scott queue algorithmNon-blocking Michael-Scott queue algorithm
Non-blocking Michael-Scott queue algorithm
 
How threads help each other
How threads help each otherHow threads help each other
How threads help each other
 
Помоги ближнему, или Как потоки помогают друг другу
Помоги ближнему, или Как потоки помогают друг другуПомоги ближнему, или Как потоки помогают друг другу
Помоги ближнему, или Как потоки помогают друг другу
 
Counter Wars (JEEConf 2016)
Counter Wars (JEEConf 2016)Counter Wars (JEEConf 2016)
Counter Wars (JEEConf 2016)
 
Non-blocking synchronization — what is it and why we (don't?) need it
Non-blocking synchronization — what is it and why we (don't?) need itNon-blocking synchronization — what is it and why we (don't?) need it
Non-blocking synchronization — what is it and why we (don't?) need it
 
Синхронизация без блокировок и СМС
Синхронизация без блокировок и СМССинхронизация без блокировок и СМС
Синхронизация без блокировок и СМС
 
Unsafe: to be or to be removed?
Unsafe: to be or to be removed?Unsafe: to be or to be removed?
Unsafe: to be or to be removed?
 
Общество Мертвых Потоков
Общество Мертвых ПотоковОбщество Мертвых Потоков
Общество Мертвых Потоков
 
JDK: CPU, PSU, LU, FR — WTF?!
JDK: CPU, PSU, LU, FR — WTF?!JDK: CPU, PSU, LU, FR — WTF?!
JDK: CPU, PSU, LU, FR — WTF?!
 
Atomics, CAS and Nonblocking algorithms
Atomics, CAS and Nonblocking algorithmsAtomics, CAS and Nonblocking algorithms
Atomics, CAS and Nonblocking algorithms
 
Philosophers
PhilosophersPhilosophers
Philosophers
 
Java in Motion
Java in MotionJava in Motion
Java in Motion
 
Процесс изменения платформы Java
Процесс изменения платформы JavaПроцесс изменения платформы Java
Процесс изменения платформы Java
 

Recently uploaded

PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 

Recently uploaded (20)

PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 

Java Platform Tradeoffs (CEE SECR 2013)

  • 1. 1 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 2. The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 2 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 3. Java Platform Tradeoffs Алексей Фёдоров, Oracle JCK, Java Platform Group 24 октября 2013 3 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 4.  Апдейты: часто или редко?  Исправление багов или совместимость?  Совместимость или новые фичи? Agenda  История о неизвестных отцах  GUI: Нативный или универсальный?  История про Beep  Как быть хитрому лицензиату? 4 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 5. Сюжет 1 Апдейты: часто или редко? 5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 6. Обновления Java и политика 6 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 7. 7 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 8. Сюжет 2 Исправление багов или совместимость? 8 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 9. Протокол взаимодействия API spec (aka Javadoc) JLS 8 JSR 337 Standalone documents 9 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Спецификация конкретной версии платформы Java играет роль протокола! JVMS 8
  • 10. Какие изменения допустимы? Предлагаемое изменение Update Major release Добавить что-нибудь в Public API (пакет / класс / метод / поле) - + Удалить что-нибудь из Public API - -* Добавить что-нибудь в Private API + + Удалить что-нибудь из Private API +** + Изменить спецификацию чего-нибудь - +** Исправить ошибку (несоответствие поведения требуемому в спецификации) +**,*** + * - @Deprecated, @Override *** - см. следующий слайд 10 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ** - проанализировать риски
  • 11. Adding null key to empty TreeMap without Comparator should throw NPE Bug 5045147 11 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Bug 2188127
  • 12. Сюжет 3 (совсем коротко) Совместимость или новые фичи?  Лямбды  Дефолтные методы в интерфейсах 12 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 13. Сюжет 4 Неизвестные отцы 13 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 14. 14 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 15. 15 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 16. 16 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 17. 17 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 18. 18 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 19. 19 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 20. 20 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 21. Сюжет 5 GUI: Нативный или универсальный? 21 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 22. 22 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 23. Сюжет 6 Toolkit.beep() 23 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 24. 24 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 25. Java 7 25 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 26. Java 7 Java 8 26 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 27. Сюжет 7 Как быть хитрому лицензиату? 27 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 28. Выводы  Большинство tradeoff’ов связаны с совместимостью – в том или ином её смысле  Имеющиеся риски трудно оценивать  Разные риски в update releases и в major updates  Java двигается в Embedded – целостность падает 28 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 29. Q&A 29 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 30. Мои контакты  @23derevo  alexey.x.fedorov@oracle.com  fyodorov.spbu@gmail.com  Skype: fyodorov.spbu  http://about.me/alexey.fyodorov 30 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 31. 31 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.