Upload
mikhail-lomonosov
View
205
Download
3
Embed Size (px)
DESCRIPTION
Citation preview
Java как язык Веба: эволюция или ребрендинг?
Анатолий Филин, ЗАО «Грамант»
О чем?
•История и факты
•Java как бренд
•Языки Веба и Java
•Новые языки на базе JVM
•Эволюция Веб в сторону усложнения
•Упрощение Java как языка для Веб
JVM = Java Virtual Machine, виртуальная машина
1991 – началась работа над языком1995 – первая версия языка выпущена компанией Sun
Write once, run everywhere1998 – выпуск Java2: редакции J2ME, J2SE, J2EE1998 – внедрен Java Community Process 2007 - Java лицензируется под GNU General Public LicenseJan 2010 - Компания Sun Microsystems поглощается Oracle
Текущая версия: Java 6
История и факты
Как работает виртуальная машина
Java code
Bytecode Native code
Компилятор]Java JIT
Не зависит от платформыЗависит от платформы, т.е.комбинации: процессор + ОСНапример: WinXP + Intel
Библиотеки дляплатформы
JIT – Just-in-time компилятор
Groovy code Компилятор
Groovy
JVM
• Мощный но сложный язык, высокий порог входа• Java = сложные Enterprise приложения• Академический язык, хорош для обучения студентов• Требуется сложная настройка, слишком сложен для Веба • Требуется высокая квалификация и как результат, высокая стоимость
разработки • Соревнуется с С# за нишу в области корпоративных приложений
Java как бренд: стереотипы
Снижение интереса к Java, низкая доля языка в мире Веб-приложений
15 лет спустя
2010: Популярные языки Веба
Источники: опрос коллег + Google Trends + данные издательств (O’Reilly) + базы вакансий
Причины:• Взрывообразный рост Интернета• Нехватка обученных кадров• Стоимость разработки и поддержки
Тренд 2010: Java выходит в Web
• Google включается в Java-процесс
• Реализация многочисленных языков и фреймворков на базе JVM, в частности Groovy и Grails
Google и Java
• Google App Engine: поддержка Java
• Google Web Toolkit (GWT): Java -> Ajax
Эволюция Веба ЭволюцияJava
Домашние страницы
Форум, новостнаялента, магазин
Портал, аукцион
Cоциальные сети, e-commerce, интеграция с корпоративными и платежными системами
Апплеты и десктоп-приложения
Корпоративные приложения,интранет-системы
Мобильные приложения
Веб-фреймворки и языки на базе JVM
1995
2010
Веб дорос до Java – Java адаптировалась под Веб
Что мы хотим от языка Веба?
Сложно
ИнтеграцияФинансыReal-time
Ти
пичн
ое В
еб-
при
лож
ени
е … Просто
База данных БраузерФронт-енд
Например, Groovy+Grails или JRuby
Код на «легком» языке высокого уровня
Код на мощном, гибком, универсальном языке
Java + библиотеки ифреймворки
… п
ожал
уйст
а!
Виртуальная машина Java
КриптографияБезопасностьМногопоточностьВерсионностьЛогирование
Транзакционность
Асинхронные сообщения
Workflow
PersistenceСервлеты Веб-сервисы
Взаимодействие с БД
Spring – MVC framework
Язык Groovy
Grails фреймворк
Java
пл
атф
орм
аticketOffice.book( airplane.seats.find { it.nearTheWindow })
Современный языкНизкий порог входаЛегкая настройкаУдобное тестирование
Пример: Groovy и Grails
Виртуальная машина Java
Java Script(Rhino)
Ruby(JRuby)
ColdFusion(BlueDragon)
Cobol AWK(Jawk)
Tcl(Jacl)
Python(Jython)
PHP(IBM sMash PHP,
Quecus)
Rexx(IBM NetRexx)
Scala Groovy Closure
Созвездие языков на базе JVM
Java = Простая разработка на мощной платформе
Новый имидж Java