Pull to refresh

«Война браузеров» вокруг JavaScript может расколоть Веб 2.0

Reading time 2 min
Views 1.1K
Lumber room
Если случится апокалипсис, то все мы будем вспоминать его начало в феврале 2005 г., когда появился картографический веб-сервис Google Maps и возник термин Ajax. После этого интерактивные веб-приложения нового поколения стали чрезвычайно модными. Принято считать, что комбинация JavaScript, DHTML и CSS буквально вдохнула новую жизнь во Всемирную паутину и вывела Веб 1.0 на следующую стадию своего развития: появился Веб 2.0.
Читать дальше →
Rating 0
Comments 22

Поддержка Ruby и Python на клиенте в Firefox 4

Reading time 1 min
Views 2.1K
Firefox
В недрах Mozilla Foundation ведется разработка новой виртуальной машины Tamarin для выполнения ECMAScript. Ее планируют включить в четвертую версию Firefox, и, кроме того, уже есть планы по использованию исходных кодов этой виртуальной машины компанией Adobe в новых версиях ActionScript Virtual Machine для Adobe Flash Player.

25 июля в блоге одного из разработчиков появилась запись о том, что в числе новых проектов Mozilla Foundation ведутся работы над внедрением поддержки IronPython и IronRuby в виртуальной машине Tamarin с целью превратить ее в высокопроизводительную многоязыковую виртуальную машину.

Кроме того, в рамках проекта Tamarin ведётся работа над созданием библиотек, которые позволят организовать обработку тега <script> в других браузерах, например, в IE.
Total votes 30: ↑26 and ↓4 +22
Comments 50

ECMAScript4: обзор нового стандарта, фундамента JavaScript2

Reading time 1 min
Views 577
Lumber room
В обновленном стандарте сетевого языка ECMAScript4 (ES4) учтены требования, возникшие при разработке все более крупных AJAX-, Flash и Flex-проектов. При этом одним из условий стандарта ES4 является совместимость с предыдущим стандартом, ES3.

Ссылки:
Total votes 6: ↑6 and ↓0 +6
Comments 11

Реализации ECMAScript 4

Reading time 2 min
Views 2.7K
JavaScript *
Достоверно известно о работе над исполнением ECMAScript 4 нескольких компаний. Вот список реализаций:

ECMAScript 4 Reference Implementation (ES4 RI)


ES4 RI- это справочное исполнение, поддерживаемое технической группой ECMA, как информационная основа для других исполнителей.

Tamarin


Tamarin- это объединение усилий компаний Mozilla и Adobe для адаптирования Open Source Adobe Virtual Machine к языку ECMAScript 4 и запуску на следующих за Firefox 3 версия (через ActionMonkey), а также на Flash 10.
Читать дальше →
Total votes 16: ↑15 and ↓1 +14
Comments 8

Гармония ECMAscript

Reading time 1 min
Views 530
Website development *
Создатель языка JavaScript Брендан Эйч опубликовал в рассылке интересное письмо о будущем спецификации ECMAScript-262 после встречи в Осло. В обсуждении учавствовали представители Adobe, Google & MicroSoft, которые имеют собственные реализации этого стандарта (JavaScript, ActionScript, Rhino, JScript.NET).

Разработчики решили сконцентрироваться на версии 3.1 и отказаться от ряда возможностей, которые изначально предполагалось добавить в ES4: packages, namespaces & early binding. Под вопрос теперь так же поставлены классы, которые можно упростить до lambda-coding + Object.freeze.

ES 4 is dead, long live ES 3.1! AS 3 теперь сам себе хозяин.
Total votes 7: ↑5 and ↓2 +3
Comments 10

Зачем Опере свой JS движок?

Reading time 2 min
Views 760
Opera
Давно было интересно: зачем Опере писать собственный интерпретатор JavaScript, когда есть открытые альтернативы? SpiderMonkey, допустим, может быть проблемой из-за LGPL, но v8 — это BSD лицензия, для проприетарного ПО годится. Поинтересовался мнением людей. Говорят, самая вероятная причина — не хотят зависеть от стороннего разработчика. При этом Opera уже использует сторонний Aspell, хотя он, конечно, не является жизненно важной функцией.

Решил выяснить официальное мнение. JL ответил, что, с технической точки зрения, интеграция такого объёма чужого кода — большая работа. Поддержка всех операционных систем, на которых работает Opera, требует определённого проектирования и повышает требования к коду, и очень вероятно, что разработчики основного движка отказались бы принимать странные модификации в больших количествах, что привело бы к перманентному форку. Что возможно, но затраты сопоставимы с разработкой своего движка. Звучит разумно, хотя я и не знаю, на скольких платформах используется Carakan — кажется, мобильная Opera получает с сервера, грубо говоря, скриншоты с отмеченными ссылками, и скрипты там не работают?
Читать дальше →
Total votes 58: ↑30 and ↓28 +2
Comments 70

Викторина для тех, кто любит Javascript больше ECMAscript

Reading time 2 min
Views 3.4K
JavaScript *
Викторина для тех, кто любит JavaScript больше ECMAScript. Главный приз: пирожок на полке.

Update: Пояснение. Для тех кто совсем не в теме. ECMAScript — это стандарт языка, на котором основаны реализации JavaScript в современных браузерах. Именно этот стандарт определяет поведение программ в этой статье. JavaScript является «надстройкой» над ECMAScript.

Пояснение номер 2. Глюки IE не имеют прямого отношения к викторине поскольку это ошибки (ну или «особенности») реализации стандартов.

Читать дальше →
Total votes 49: ↑41 and ↓8 +33
Comments 49

Internet Explorer 9: наиболее полное руководство разработчика (и не только), часть 4

Reading time 7 min
Views 2.3K
Internet Explorer
что еще нового в IE9 PP3, кроме canvas и video? Огромное описание, масса картинок.

HeaderLeft[1]

23 июня строго по графику (период 8 недель) вышла третья тестовая сборка IE9. На Хабре уже успели написать про этот релиз и в самых общих словах обрисовать нововведения. Кроме того, тут же на Хабре успели сравнить производительность canvas в IE9 и Chrome.

Этот пост раскроет значительно больше деталей третьей тестовой версии Internet Explorer 9 и расскажет о нововведениях в браузер, которые будут важны для разработчиков.

Это четвертая статья из серии статей про нововведения в IE9 для разработчиков. Ознакомится с предыдущими частями можно здесь: часть 1 (CSS3, HTML5, DOM), часть 2 (SVG, GPU), часть третья (профили ICC, форматы изображений, JavaScript).

Читать дальше →
Total votes 117: ↑72 and ↓45 +27
Comments 134

Изменения Jscript и DOM в IE9 preview 3

Reading time 6 min
Views 599
Lumber room
Translation
image

ECMAScript 5 и JScript


Наибольшей новостью является та, что IE9pre3 имеет (почти) полную поддержку ES5. Под «полной поддержкой» подразумевается то, что уже сейчас включено большинство нового API, такого как, например, Object.create, Object.defineProperty, String.prototype.trim, Array.isArray, Date.now и много других дополнений. На сегодняшнее время IE9 поддерживает наибольшее количество методов, даже большее, чем последние версии Chrome, Safari и Firefox. Невероятно, не правда ли? :)
Читать дальше →
Total votes 48: ↑32 and ↓16 +16
Comments 17

Опасности необязательных аргументов в JavaScript

Reading time 7 min
Views 13K
JavaScript *
Translation
Моя последняя тема про “минус ноль” вызвала много интереса. По этому сегодня я собираюсь описать ещё одну особенность JavaScript, на что меня так же вдохновил твит:
Без попытки повторить это в браузере, что вернет следующий код?
["1", "2", "3"].map(parseInt);

Читать дальше →
Total votes 108: ↑97 and ↓11 +86
Comments 67

Прототипы новых расширений стандарта JavaScript

Reading time 3 min
Views 5K
Microsoft corporate blog
Translation
Современные тенденции таковы, что платформа HTML5 становится все более функциональной, веб-приложения становятся все более богатыми и сценарии, которые требуют взаимодействие с серверной стороной для выполнения тривиальных задач становятся все более нудными. Если мы взглянем на клиентский код, то можем заметить некоторый дефицит возможностей JavaScript.

Microsoft вовлечен в совершенствование стандарта JavaScript. Через активное участие в рабочей группе Ecma TC39 мы согласовали и отправили на утверждение готовую часть предложенных стандартов, которые предлагают расширение таких важных библиотек, как Math, Number и String и представили поддержку нового функционала Globalization. Мы рассказали о первых версиях прототипов библиотек на встрече посвященной стандарту в июле в кампусе Microsoft и рассказали про реализацию Globalization на встрече группы стандарта в кампусе Apple в Купертино на прошлой неделе. В добавок, мы выпустили эти базовые реализации для того, чтобы JavaScript-сообщество могло предоставить свои отзывы при использовании новых функций на практике.

Что мы предлагаем

В этом выпуске мы предлагаем следующие расширения для встроенных JavaScript-библиотек:

image

Для того, чтобы проиллюстрировать приведем следующий код:
Читать дальше →
Total votes 30: ↑22 and ↓8 +14
Comments 21

Разработчики IE высказались против Google Dart

Reading time 2 min
Views 2.6K
Website development *
Прошло полтора месяца с момента официальной презентации нового языка программирования Google Dart, который позволит создавать быстрые и высокопроизводительные веб-приложения. Он также позиционируется в качестве замены/альтернативы JavaScript, якобы страдающего от «фундаментальных изъянов».

Для развития Google Dart очень важно, чтобы во все браузеры была встроена поддержка трансляции из Dart в JavaScript, а в будущем Dart был реализован в браузере как основной нативный клиентский язык. Понятно, что с Chrome проблем не будет. Но вот разработчики других браузеров пока не спешат поддержать революционную инициативу Google, а группа разработки Internet Explorer высказалась категорически против нового языка программирования. По их мнению, JavaScript вполне может эволюционировать для создания больших масштабируемых веб-приложений.
Читать дальше →
Total votes 89: ↑75 and ↓14 +61
Comments 250

ISO 8601 и ECMAScript — головная боль от разночтения стандартов

Reading time 3 min
Views 10K
JavaScript *
Разрабатываем мы тут некоторый сервис интеграции с очень сторонней системой. Сам сервис работает на Node.js. И всё бы хорошо, но только недоступность сервера во время сборки мусора очень нервировала стороннюю систему.

В канун нового года было решено сделать серверу подарок — обновить Node.js с версии 0.4.8 до 0.6.6 В силу ряда организационных причин, обсуждать которые здесь не очень хочется, обновление было проведено сразу на боевой системе и даже без регрессионного тестирования.

Неужели в этой ситуации что-то могло пойти не так?
Могло и пошло.
Total votes 58: ↑53 and ↓5 +48
Comments 37

В Chrome (dev) реализованы будущие функции JavaScript

Reading time 1 min
Views 2.4K
JavaScript *
Комитет ECMA сейчас работает над разработкой следующей версии JavaScript, известной под кодовым названием Harmony. Он должен быть закончен к концу следующего года и станет самым большим обновлением за всю историю языка. Разработчики Chrome и V8 решили уже сейчас реализовать некоторые будущие функции JavaScript в браузере Chrome (версия для разработчиков).

Чтобы активировать новые функции, нужно в последнем релизе с dev-канала набрать chrome://flags и включить флаг Experimental JavaScript features.
Читать дальше →
Total votes 40: ↑34 and ↓6 +28
Comments 93

Особенности написания и возможные фичи LR-генераторов

Reading time 8 min
Views 6.2K
JavaScript *Algorithms *Compilers *

Введение


Добрый день.
В заключительной части про написание собственного генератора LALR-парсеров я бы хотел описать возможные особенности и фичи. Кроме того я опишу чего мне не хватало в существующих решениях и ради чего я начал писать свой велосипед.

Дабы задать контекст, сообщу, что грамматика для анализа — это ECMAScript, так же известный как JavaScript. Конкретная спецификация — ECMA-262, редакция 5.1 от июня 2011 года.
Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Comments 4

Обновление IntelliJ IDEA 11.1

Reading time 2 min
Views 14K
Java *
image

Вчера на сайте JetBrains стала доступна для скачивания новая версия среды разработки на Java – IntelliJ IDEA 11.1.

Как всегда IntelliJ IDEA доступна в двух версиях: Ultimate – полная платная версия, а также Community Edition – бесплатная Open-source версия. Владельцы лицензии IntelliJ IDEA 11 Ultimate имеют возможность бесплатного обновления до 11.1.

Попробуем ознакомиться с тем, что нас ждет в новой версии продукта.
Читать дальше →
Total votes 49: ↑42 and ↓7 +35
Comments 74

WebStorm 4 — в гармонии с ECMA Script

Reading time 1 min
Views 2.3K
CSS *JavaScript *Node.JS *
Мы продолжаем поддержку новейших технологий и улучшаем средства контроля качества. В сегодняшнем WebStorm 4.0 — ECMAScript Harmony и встроенный Code Coverage для JavaScript Unit Testing.

Кроме того:
Читать дальше →
Total votes 48: ↑45 and ↓3 +42
Comments 83

CoffeeScript: Классы

Reading time 16 min
Views 21K
Website development *Ruby *JavaScript *CoffeeScript *
Tutorial
CoffeeScript: Classes

В ECMAScript пока отсутствует понятие «класс», в классическом понимании этого термина, однако, в CoffeeScript такое понятие есть, поэтому сегодня мы рассмотрим этот вопрос очень подробно.


Содержание:

1. Основные понятия
2. Члены класса
   2.1. Метод constructor
   2.2. Открытые члены класса
   2.3. Закрытые члены класса
   2.4. Защищенные члены класса
   2.5. Статические члены класса
   2.6. Оператор => (fat arrow)
3. Наследование
4. Дополнительная литература

Читать дальше →
Total votes 44: ↑40 and ↓4 +36
Comments 15

JavaScript — полезные материалы

Reading time 2 min
Views 78K
JavaScript *
Хочу поделиться набором ссылок на нексолько полезных, интересных и, возможно, не самых известных материалов по JavaScript. Из них вы узнаете немного больше об истории появления языка, о его настоящем, тонкостях реализации в различных браузерах, и о будущем развития стандарта ECMAScript. О различных способах наследования в том числе об эмуляции «классического» ООП, множественном наследовании и миксинах. О функциональном стиле программирования в JavaScript: чистые функции, map, reduce, частичное применение и композиции функций. И, наконец, что если бы Хемингуэй писал на JavaScript?
Читать дальше →
Total votes 137: ↑130 and ↓7 +123
Comments 29

Обзор ECMAScript 6, следующей версии JavaScript

Reading time 6 min
Views 98K
JavaScript *
Для начала, ликбез и несколько фактов:
  • ECMAScript — это официальный стандарт языка JavaScript (Слово JavaScript не могло быть использовано, потому что слово Java являлось торговой маркой компании Sun) Т.е. JavaScript — это имплементация стандарта ECMAScript.
  • TC39 — комитет, развивающий стандарт ECMAScript и принимающий решения по включению фич в него.
  • ECMAScript стандартов много. Самый популярный из них — ECMA-262.
  • ECMAScript 5 — последняя редакция стандарта ECMA-262 (утвержден в 2009 году).
  • Предыдущие версии стандарта ECMA-262 были (совсем старые не упоминаю):
    • ECMAScript 3 — поддерживается большинством браузеров (утвержден в 1999 году).
    • ECMAScript 4 — не принят в виду слишком радикальных изменений в стандарте. Позднее в июле 2008 году в урезанном варианте (но все же намного богаче, чем ECMAScript 3) вылился в новый проект ECMAScript Harmony.

  • ECMAScript 6 (кодовое имя ECMAScript.next) должен утвердиться до конца 2013 года.


Итак, что же нас ждет в новой версии JavaScript?

Читать дальше →
Total votes 112: ↑107 and ↓5 +102
Comments 179