Три особенности JavaScript, о которых полезно знать каждому Java/C-разработчику
9 мин
Перевод

Иногда JavaScript может вводить разработчика в заблуждение, а иногда — доводить до белого каления из-за своей неполной консистентности. Есть в JavaScript некоторые вещи, которые только запутывают и сбивают с толку. Самые известные из них оператор with, неявные глобальные переменные и странное поведение при операции сравнения.
Пожалуй, вокруг JavaScript разгоралось больше всего споров в истории программирования. Помимо его недостатков (отчасти рассмотренных в новых спецификациях ECMAScript), большинство программистов недовольны следующими моментами:
- DOM, который многие ошибочно считают эквивалентом самого языка JavaScript, обладает очень неудачным API.
- Когда переходишь на JavaScript с языков С и Java, то попадаешь в ловушку синтаксиса, который устроен не так, как в императивных языках. Это очень часто приводит к багам и сильно раздражает.
В результате JavaScript обрёл довольно плохую репутацию, которой он, в общем-то, не заслуживает. И чаще всего это связано с тем, что многие разработчики переносят на JavaScript свой опыт работы на Java или С/С++. Здесь разобраны три наиболее трудных случая, демонстрирующих разницу в подходах между Java и JavaScript.




Здравствуй, Хабр! В данной статье мы хотели бы рассказать историю создания мобильной игры “Robot Alan”, мотивированной простым желанием “Сделать игру!”, которое вылилось в три с лишним года переделок, бросания и начинания заново. Мы постараемся показать весь наш путь и то как мы с моим товарищем развивались и менялись под влиянием этой небольшой игрушки. Осторожно! Много страшных картинок из прошлого, много трафика!



