5 Распространенных мифов о Javascript

Мифы о Javascript
Несмотря на то, что Javascript это один из самых популярных языков в мире, он до сих пор недооценивается и является непонятным для многих людей. Ситуация улучшилась в течении последних нескольких лет, но следующие мифы до сих пор блуждают по просторам web.

1. Javascript == Java

Разработчик из Соединенного Королевства (UK) Jeremy Keith, придумал такое определение этому мифу:

Java это такой же Javascript, как ham (ветчина) и hamster (хомяк).

Схожи только имена, но Java и JavaScript не связаны между собой.  Есть целый ряд поверхностных сходств, но такие же сходства можно найти и в других любых двух языках, имеющих C-подобный синтаксис.

Первоначально язык Javascript назывался Mocha, в какой-то момент стал LiveScript, и наконец стал называться Javascript в тот момент, когда язык Java был провозглашен спасителем жизни, вселенной и всего остального. Название всего лишь маркетинговых ход компании Netscape и ничего более.

2. Javascript «игрушечный» язык.

Часть «script» в названии языка, создаем обманчивое впечатление, что это урезанная, макро версия Java. Это не так. Во всяком случае, популярные «фичи» JavaScript, такие как замыкания и лямбда-функции в настоящее время оказали влияние на другие языки, такие как PHP, C# и наконец сам Java.

Javascript наиболее часто встречается в виде встроенного в браузер интерпретатора, но это не означает, что он менее мощный в отличие от компилируемых языков программирования.

3. Javascript есть только в браузерах.

Большинство людей используют Javascript в качестве языка встроенного в браузер, но его (как и другие языки основанные на стандарте ECMAScript ) можно найти во многих других местах, таких например как:

  • Браузер Mozilla Firefox и почтовый клиент Thunderbird используют Javascript для некоторых прикладных процессов.
  • Flash ActionScript основан на Javascript.
  • PDF файлы могут содержать встроенный Javascript.
  • Множество десктоп виджетов от Microsoft и Apple используют Javascript.
  • OpenOffice.org обеспечаивает поддержку Javascript.
  • webOS, используемый в мобильных устройствах Palm, применяет Javascript, как язык для приложений.
  • Javascript может быть использован для создания приложений в Gnome и в качестве скриптового языка в Windows.

Javascript пока не имеет полноценной серверной реализации, хотя несколько десятков хороших реализаций существует. День, когда мы сможем использовать Javascript и для серверной и для клиентской части когда-нибудь наступит, но непонятно, как скоро.

4. Javascript до сих пор не отлажен и имеет множество багов.

Эти дни давно уже стали преданием. Все производители браузеров соблюдают стандарт ECMAScript и очень редко можно встретить дополнительные фунции в Javascript.

Тем не менее реализация в браузерах не всегда одинакова: различные особенности манипуляции DOM объектами, особенности обработки событий, и причуды браузера могут доставить не мало головной боли при разработке. Это не вина самого языка, это проблема браузеров, через которые Javascript получает доступ к его, браузера, объектам.

5. Javascript не Объектно-ориентированный язык.

Путаница возникает оттого, что Javascript не использует привычные способы организации объектов. Отсутствие ключевого слово «class» заставляет разработчиков думать, что Javascript это функциональный язык программирования.

Javascript предлагает модель прототипов. Это действительно потрясающе, вы можете писать, как функциональный код, так и организовывать код в классический объект с частными методами и свойствами.

Кроме того, все в Javascript является объектами, даже типы данных и функции. А как вам такое:

var x = new Number(123);
var opp = "oops".substr(0,3);
var f = function() { return function() { alert("hello!"); }; };

Как насчет передачи функции в виде параметра:

var Add = function(a, b) { return a + b; };
function Calculate(func, a, b) {
	return func(a, b);
}
var s = Calculate(Add, 1, 2); // s = 3

Или вы хотите расширить собственные типы ?

// reverse any string
String.prototype.Reverse = function() {
	return this.split("").reverse().join("");
};
var h1 = "Hello!";
var h2 = h1.Reverse(); // !olleH

Javascript на первый взгляд может показаться непонятным, но вы поймете его элегантность и мощь, когда опять будете программировать на своем основном языке.

Вы все еще верите в эти мифы ?

Источник: http://www.sitepoint.com/

JavaScript

3 thoughts on “5 Распространенных мифов о Javascript

  1. [quote]Вы все еще верите в эти мифы ?[/quote]
    Нет) Когда-то верил. Вообще предпочитаю пользоваться фреймворками, а не чистым javascript.

  2. Сам первое время работы с web почти во все из них верил 🙂 Этим статья и понравилась.

Comments are closed.