Все доминирующие языки программирования сегодня максимально используют мощную идею замыканий. Все, кроме одного. Кто отстает? Java, и годами казалось, что с этим ничего не поделаешь.
Пятнадцать лет назад, когда Мартин Одерски, автор языка Scala и основатель «TypeSafe», вместе с Филипом Вадлером выпустили экспериментальный проект «Pizza», люди старались сделать замыкания неотъемлемой частью языка. Несмотря на кажущуюся излишнюю сложность, сообщество Java вернулось к идее включить замыкания в язык примерно в 2008 году, потом эти планы отложили, поскольку корпорация «Oracle» поглотила «Sun Microsystems», а Java теряла позиции в то время как новые релизы постоянно откладывались.
Но с появлением Java 8 все кардинально меняется и сообществу лучше быть готовым. «Это, наверное, самое значительное обновление для Java» - утверждает Браян Гетц, разработчик Java в «Oracle». Он отмечает, что замыкания изменят метод разработки Java-программ даже больше, чем появления обобщений в Java 5. Так же, как обобщения позволили разработчикам не зацикливаться на определений типов, целью Лямбда-выражений является помочь разработчикам не обращать внимания на поведение.
Лямбда -- название проекта, который привязывает замыкания к языку Java. И что программистам даст Лямбда и использование замыканий? Программисты смогут трактовать блок кода как часть данных, которую можно передать в качестве аргумента, словно в действительности он является экземпляром или типом. «Вроде, ничего особенного, но на самом деле -- это громадное достижение» - заявляет Гетц. «Это существенно изменит подход к разработке Java-библиотек».
Потребовалось много времени, но с выпуском Java 8 проект Lambda наконец станет полноценной частью спецификации языка. Синтаксис, который сначала раскритиковали как слишком сложный для обычного программиста, в результате станет стандартным инструментом разработки, встречающимся в каждом современном Java-приложении.
источник
Комментариев нет:
Отправить комментарий