НовостиОбзорыСобытияIT@WorkРеклама
Идеи и практики автоматизации:

Блог

Будущее Java всё туманнее

Выход Java Development Kit 8 серьёзно отложен - с обещанного сентября 2013-го на будущий год.

[spoiler]Об этом программистскую общественность известил Mark Reinhold, главный архитектор Java. Главная причина -- неспособность Oracle справиться с нескончаемыми проблемами с безопасностью в этой технологии, массово применяемой в самых масштабных проектах. Последняя порция багов (аж 42 штуки!) была пропатчена 16 апреля, причём среди них были максимально опасные -- позволяющие, например, брать без авторизации серверный Java-код под дистанционный контроль, фактически выполняя на скомпрометированной машине любые действия.  

Java кстати хороший пример того, как не надо создавать сложные системы -- все специалисты по ИБ в один голос говорят, что защитный функционал должен проектироваться и закладываться в продукт с самого начала, в его ядро, и полностью охватывать всю архитектуру. Но уж очень тяжёлое у Java историческое наследство.

При этом Java -- это огромные деньги, а главное, огромное «политическое» влияние на ИТ-мир, поэтому Oracle бросает сейчас большие ресурсы на улучшение безопасности Java, явно спешит (что на самом деле вполне может привести к новым багам), и в результате на защиту перебрасываются Java-разработчики с других направлений. Именно такая тактика и стала причиной срывов и откладывания множества сроков, связанных с развитием основной функциональности Java. В частности, неопределённой становится ситуация с многолетне ожидаемыми лямбда-вычислениями (которые и так в полном варианте появятся в лучшем случае в 2016-м).

Добавляет энергии в развал Java и Google -- так, разработку для Андроида можно вести только с использованием Java SDK 5 или 6, а в отношении последней Java 7 имеются лишь отрывочные обещания о создании некоей экспериментальной версии Android SDK, поддерживающего «семёрку».

В своём блоге Mark Reinhold подробно описывает все плюсы и минусы каждого варианта событий, полагая, что наименьшее зло на сегодня -- это доделать лямбду в запланированном объёме, тщательно её протестировать и выпустить, невзирая на сроки. То есть ориентироваться на фичи. Однако у неайтишных топ-менеджеров Oracle мнение другое -- они как обычно и Lambda хотят видеть в Java 8, и в короткие сроки требуют уложиться. Поэтому если Java 8 появится «в срок», пользоваться ей надо будет крайне осторожно из-за потенциальной опасности наличия очередных ошибок как классического следствия спешки.

При этом всём у Java как технологии остаётся огромное количество плюсов, и если имеется хороший проектный Java-опыт, "валить" с неё куда-то ещё тоже неверно. Что же с Java делать, подумаем в следующем посте.