Весной я выступал на РИФе с докладом «Java как язык Веба: эволюция или ребрендинг?». Почему эта тема вообще возникла? Дело в том, что некоторые считают Java чисто академическим языком, для других — это язык корпоративных приложений, но никак не язык Веба. В России вообще для большинства Веб-разработчиков существует только один язык – PHP. Что касается Java, то есть мнение, что писать на нем непродуктивно, это сложный язык с высоким порогом входа, под любой проект нужно долго настраивать среду разработки, и вообще – язык слишком сложен для Веб-приложений, которые в большинстве своем достаточно просты.
В своем докладе я попытался реабилитировать Java как язык именно Веб-приложений. Аргументы следующие. Во-первых, достаточно очевидно, что сами Веб-приложения в последнее время усложняются. На смену сайтам, форумам, порталам, блогам пришли социальные сети, а Интернет движется в сторону персонализации всего и вся и «семантического Веба». С другой стороны возрастают требования по интеграции Веб-приложений с платежными системами, системами реального времени, корпоративными системами.
Т.е. в типичной Веб-системе есть основная «плоская» и достаточно примитивная часть, реализующая взаимодействие между фронт-ендом и базой данных, и сравнительно небольшая «глубокая» часть, например интеграция с биллингом, специализированный поиск или конвертация видео. Идеальный язык Веб-программирования, должен эффективно решать простые задачи, но в то же время предоставлять инструменты решения самых сложных задач.
Оказывается, что за последние несколько лет возник и развился целый класс языков, которые дают возможность быстрого прототипирования, но при этом идеально интегрируются с Java и позволяют использовать весь тот инструментарий, который был накоплен за 18 лет развития языка. Эти языки как и Java компилируются в байткоды виртуальной Java-машины. Тем самым обеспечивается как машинно-независимость, так и полная совместимость с Java. Кроме того, сами виртуальные машины Java для различных платформ настолько оптимизированы, что по производительности программы на этих языках не уступают нативным приложениям.
Самый популярный из этих языков – это Grails. У нас о нем пока мало кто знает, а в Штатах Grails наряду с Ruby on Rails является лидером среди языков программирования для Веб. Появление этих языков ценно еще и потому, что оно вдохнуло новую жизнь в сам язык Java. Java стала полноправным языком Веба.
Видео-запись выступления Анатолия на РИФ-2010 можно посмотреть здесь.