вторник, 16 октября 2012 г.

Лямбда в Java 8: кардинальное изменение в разработке Java-программ

Все доминирующие языки программирования сегодня максимально используют мощную идею замыканий. Все, кроме одного. Кто отстает? Java, и годами казалось, что с этим ничего не поделаешь. 

Пятнадцать лет назад, когда Мартин Одерски, автор языка Scala и основатель «TypeSafe», вместе с Филипом Вадлером выпустили экспериментальный проект «Pizza», люди старались сделать замыкания неотъемлемой частью языка. Несмотря на кажущуюся излишнюю сложность, сообщество Java вернулось к идее включить замыкания  в язык примерно в 2008 году, потом эти планы отложили, поскольку корпорация «Oracle» поглотила «Sun Microsystems», а Java теряла позиции в то время как новые релизы постоянно откладывались. 


Но с появлением Java 8 все кардинально меняется и сообществу лучше быть готовым. «Это, наверное, самое значительное обновление для Java» - утверждает Браян Гетц, разработчик Java в «Oracle». Он отмечает, что замыкания изменят метод разработки Java-программ даже больше, чем появления обобщений в Java 5. Так же, как обобщения позволили разработчикам не зацикливаться на определений типов, целью Лямбда-выражений является помочь разработчикам не обращать внимания на поведение. 

Лямбда -- название проекта, который привязывает замыкания к языку Java. И что программистам даст Лямбда и использование замыканий? Программисты смогут трактовать блок кода как часть данных, которую можно передать в качестве аргумента, словно в действительности он является экземпляром или типом. «Вроде, ничего особенного, но на самом деле -- это громадное достижение» - заявляет Гетц. «Это существенно изменит подход к разработке Java-библиотек». 

Потребовалось много времени, но с выпуском Java 8 проект Lambda наконец станет полноценной частью спецификации языка. Синтаксис, который сначала раскритиковали как слишком сложный для обычного программиста, в результате станет стандартным инструментом разработки, встречающимся в каждом современном Java-приложении.

источник

понедельник, 15 октября 2012 г.

Исправление ошибок


Четыре причины, по которым Facebook отказался от HTML5 и перешел к нативной разработке

Facebook спровоцировал массу споров, выпустив свое приложение для iOS. Но не из-за приложения, как такового, а потому, что посчитал использование HTML5 самой большой своей ошибкой. Собственно, это и стало причиной перехода на нативную разработку.



Все утверждали, что Facebook просто сделал плохое HTML5 приложение, а сам стадарт HTML5 таковым не является, поскольку множеству других разработчиков удалось создать качественные мобильные решения.

Интересная и актуальная точка зрения, особенно если учесть, что мобильные системы получают все больше и больше замечаний. Ранее отсутствовали какие-либо детали, относительно принятого решения, но сейчас все иначе. Если вы хотели знать, почему Facebook забраковал HTML5, Тоби Лангел в Perf Feedback приводит следующие причины:
  • Инструменты/API разработчика. Самое главное, нехватка инструментов для отслеживания проблем с памятью. 
  • Прокрутка. Она должна быть быстрой, плавной и четырехсторонней.
  • Графический процессор. Громоздкий API и абстракция «черного ящика» делают данный подход не совсем ненадежным. 
  • Другое. Желательна поддержка сенсорного управления браузером, более плавная анимация и эффективная система кэширования.
 Источник