JavaScript: - aktualizacja ECMAScript 6 pozwoli na modularyzację

Kolejne duże uaktualnienie platformy JavaScript, o roboczej nazwie ECMAScript 6 umożliwi modularyzację kodu oraz zapewni deweloperom większą wygodę programowania i bezpieczeństwo.

Szczegóły tej aktualizacji podano w ubiegłym tygodniu na konferencji programistów HTML5 (HTML5 Dev Conf) odbywającej się w San Francisco. David Herman z Mozilla Research, uczestniczący w pracach projektowych nad specyfikacją w ramach ECMA International (Europejskie Stowarzyszenie na rzecz Standaryzacji Systemów Informacyjnych i Komunikacyjnych), poinformował, że wydanie kolejnego uaktualnienia ECMAScript przewidywane jest na rok 2013. Podanie informacji o JavaScript na konferencji HTML5 nie jest przypadkowe: HTML 5 zawiera nowe API i nowe możliwości dla platformy WWW, a JavaScript jest językiem tej platformy; w praktyce nie można w pełni korzystać z HTML5 bez JavaScript, a JavaScript jest bezużyteczny bez API webowych.

Modularyzacja pozwoli na wielokrotne użycie raz napisanego kodu JavaScript w wielu aplikacjach. Według Hermana, system modułowy jest najważniejszą cechą nowej wersji JavaScript, ponieważ zapewnia programistom większe możliwości udostępniania kodu.

Uwagę zwraca też wsparcie danych binarnych w wersji 6, co umożliwia takie operacje, jak czytanie plików binarnych czy binarnych protokółów sieciowych. Można np. czytać zawartość pliku PDF bez konieczności reprezentowania poszczególnych pozycji w postaci łciągów znaków. Obsługa danych binarnych jest użyteczna w aplikacjach intensywnie obsługujących dane i zapewnia możliwość obniżenia czasu ich przetwarzania jak ilości potrzebnej pamięci .

Z kolei zawarta w uaktualnieniu ECMAScript możliwość stosowania kluczy prywatnych pomoże programistom poprawić bezpieczeństwo programów - będą mogli "zakrywać" informacje, uniemożliwiając kodom złośliwym lub przypadkowym intruzom wgląd we fragmenty programu.

Nowe możliwości generatorów w wersji 6 ułatwiają wyrażanie sekwencji zdarzeń w programach webowych. Generatory te będą szczególnie przydatne dla programów asynchronicznych. Inna nowość - interpolacja ciągów znaków - pozwoli na umieszczanie zmiennych w łańcuchu.Do ciągów znaków będą dodawane zabezpieczania (szczepionki) przez dopisaniem do nich (injection) złośliwego kodu. ECMAScript 6 uzyska również dodatkowe udogodnienia programistyczne, takie jak ulepszenia składni.

ECMA rozważa też dodanie klas w ramach ECMAScript, co powinno dać korzyści, w postaci możliwości strukturalizowania programu. Ponadto w ECMAScript pojawia się nowy typ obiekt o nazwie proxy. Są to obiekty, których domyślne zachowania w typowych sytuacjach mogą być kontrolowane, eliminowane lub zmieniane. Pozwoli to programistom na pewne manipulowanie semantyką obiektów JavaScript i może być użyteczne dla eksperymentów z różnymi stylami technik programowania lub reimplementacji istniejących Web API, takich jak DOM (Document Object Mode). Projekt dom.js, prowadzony przez Mozilla, wykorzystuje proxy do reimplementacji biblioteki DOM w JavaScript, zamiast C++, co powinno dać zauważalną poprawę wydajności.

Nowe mechanizmy JavaScript mogą być dodane do przeglądarki, która oficjalnie ich nie obsługuje, za pośrednictwem transpilera (translatora kodu). Mozilla prowadzi projekt Narcissus (interpretator JavaScript), który może wykorzystywać transpiler, ale jeszcze z tego nie korzysta.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200