Веб 3.0. Есть ли будущее у java в ria и mobile?

Post on 09-Jun-2015

636 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

#jokerconf (http://jokerconf.com/) unconference lightning talk presentation

TRANSCRIPT

Веб 3.0

Или есть ли будущее у Java

в RIA и Mobile?

Липский Никита (twitter: @pjBooms)

Excelsior

Или есть ли будущее у Java?

Проблемы Java в RIA

• Интернет браузеры блокируют Java

апплеты

• WebStart не привычен пользователям

• “Self-contained native packages with

bundled JRE is better deployment model”Steven Chin, Oracle JavaFX evangelist

Проблемы Java в Mobile

• iOS политика распространения приложений

блокирует любую динамическую загрузку –

JIT невозможен

• На Android своя Java (фрагментация)

• На Windows -- .NET

Поблемы Java в

IT сообществе

• Java – больше не модно

• JavaFX – вызывает скепсис

• Java довольно невнятно маркетируется

Как мы будем решать эти

проблемы?

Если не мы то кто?

Текущее состояние IT

• Web

• Mobile

• Desktop

Три почти непересекающихся мира

Достоинства Web

Достоинства Web

1. Нет инсталляции на клиенте

Достоинства Web

1. Нет инсталляции на клиенте

2. Встроенное бесплатное

“автоматическое обновление“

Достоинства Web

1. Нет инсталляции на клиенте

2. Встроенное бесплатное

“автоматическое обновление“

3. Отгрузка по частям

Достоинства Web

1. Нет инсталляции на клиенте

2. Встроенное бесплатное

“автоматическое обновление“

3. Отгрузка приложения по частям

4. «Простые» изобразительные

средства: HTML + JavaScript

Достоинства Web

1. Нет инсталляции на клиенте

2. Встроенное бесплатное “автоматическое обновление“

3. Отгрузка приложения по частям

4. «Простые» изобразительные средства: HTML + JavaScript

5. Работает везде, где есть браузер

Недостатки Веб

Browser Hell

Неудобный, тормозной UI

JavaScript – не масштабируем

Mobile и Desktop

• Два мира – суть одна:

отдельно ставящаяся программа с GUI

Преимущества GUI

Удобство, скорость, адекватное отображние предметной области

Масштабируем

Преимущества GUI

• Всегда (почти) выглядит одинаково, на

какую бы систему не ставился.

Недостатки GUI

Сегментированность

Большие системы много весят

Ручное автообновление

Громоздкость выразительных

средств

Выводы

Нам нужна система совмещающая

достоинства обеих подходов и

лишенная их недостатков

Выводы

• не требующая инсталляции на клиенте

Выводы

• работаящая везде где есть"browser”

Выводы

• одинакова во всех браузерах

Выводы

• со встроенным автоматическим

обновлением

Выводы

• прилетающая на клиент по частям

Выводы

• простая по сути

Выводы

• позволяющая делать равномощный по

выразительности родному GUI

Выводы

• на эффективных языках

программирования (со строгой

типизацией).

Фантастика?

Back to the future

• Oberon System

Oberon system key features

• И язык, и платформа

• Переносимая: как OS, так и поверх других OS

• Язык: ОО, строгая типизация, рантайм

проверки, рантайм типы, сборка мусора

• Платформа: reflection, динамическая

загрузка, переносимый код, статическая и

динамическая компиляция

• Система: Event-driven, MVC, persistent objects,

динамические атрибуты (поля и код)

Все есть текст

Все есть документ

The Nothing System

Check list

не требует инсталляции на клиенте

Check list

работает везде где есть"browser”

Check list

выглядит во всех браузерах одинаково

Check list

со встроенным автоматическим

обновлением

Check list

прилетает на клиент по частям

Check list

простая по сути

Check list

позволяющая делать равномощный по

выразительности родному GUI

Check list

на эффективных языках

программирования (со строгой

типизацией).

Но причем здесь Java?

• Java – это единственная зрелая

платформа, на которой это можно

реализовать

• JavaFX – готов к mobile

• Net is the computer

Основа системы будущего

• Java как платформа. JavaFX как UI.

• MVC – разделение представления от логики

и данных. Представление – произвольное.

Контроль над рендерингом представления.

• Загрузка приложения по частям (контроль

над толщиной клиента)

• Персонализированность (настройка "под

себя“).

Ресурсы

• Oberon System 3 – http://www.oberon.ethz.ch

• Xerox Cedar/Mesa System – “A tour through Cedar”

• Acme – http://research.swtch.com/acme

• CaptainCasa – http://www.captaincasa.com

• WebFX – https://github.com/brunoborges/webfx

• JavaFX IDE –

https://bitbucket.org/tschindl/bitbucketmgr

• The Nothing System –

https://github.com/pjBooms/The-Nothing-System

Вопросы?

Никита Липский,

Excelsior

nlipsky@excelsior-usa.com

(383) 330-55-08

top related