TypeScript для PHP-разработчика. Как писать на JavaScript большие приложения и не сойти с ума::Журнал СА 7-8.2015
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Наука и технологии
Подписка
Где купить
Авторам
Рекламодателям
Архив номеров
Контакты
   

  Опросы
  Статьи

Рынок труда  

Системные администраторы по-прежнему востребованы и незаменимы

Системные администраторы, практически, есть везде. Порой их не видно и не слышно,

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 9878
Комментарии: 0
Потоковая обработка данных

 Читать далее...

19.03.2018г.
Просмотров: 8092
Комментарии: 0
Релевантный поиск с использованием Elasticsearch и Solr

 Читать далее...

19.03.2018г.
Просмотров: 8193
Комментарии: 0
Конкурентное программирование на SCALA

 Читать далее...

19.03.2018г.
Просмотров: 5190
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 5867
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

Друзья сайта  

 TypeScript для PHP-разработчика. Как писать на JavaScript большие приложения и не сойти с ума

Архив номеров / 2015 / Выпуск №7-8 (152-153) / TypeScript для PHP-разработчика. Как писать на JavaScript большие приложения и не сойти с ума

Рубрика: Разработка /  Принципы программирования

Александр Майоров АЛЕКСАНДР МАЙОРОВ, Tutu.ru, руководитель отдела Frontend-разработки, alexander@majorov.su

TypeScript для PHP-разработчика

Рекомендации для PHP-разработчиков, нуждающихся в разработке больших сложных веб-приложений на клиентской стороне. Почему TypeScript может оказаться отличным выбором?

Когда-то JavaScript был маленьким. И его воспринимали как язык для маленьких... Для маленьких задач. От него требовалось совсем не много. Что-то показать или скрыть, анимировать котиков. По мере развития технологий и распространения интернета, по мере развития браузеров и их возможностей также развивался и браузерный язык – JavaScript. В какой-то момент возможности браузера стали позволять реализовывать сложную логику приложения на клиентской стороне. И заказчики стали хотеть больше. А фронтендеры и не сопротивлялись. Сами того не замечая, они все больше и больше перетягивали логики с бэкенда на фронтенд.

Однажды фронтендеры проснулись и осознали, что их код стал настолько сложным и большим, что поддерживать его уже нелегко. Поддерживать сложные веб-приложения, написанные на JavaScript, все труднее и труднее. При этом сам язык обладает рядом недостатков (хотя есть и много достоинств), из-за которых очень сложно отслеживать утечки памяти, какие-то ошибки…

Ко всему прочему в мир фронтенда стали подтягиваться разработчики из других областей, ранее писавшие на других языках программирования. Каждый нес в мир JavaScript свои знания. Кто-то нес функциональный подход и говорил, что он самый правильный, кто-то утверждал, что классическая школа объектно-ориентированного программирования лучше. Прелесть языка JavaScript в том, что он позволяет не просто писать, используя эти подходы, но даже смешивать их.

Появилось очень много различных фреймворков и библиотек. Фронтенд-мир, наверное, единственный, в котором появилось такое большое количество различных библиотек, подходов и инструментов. При этом фреймворки пытались устранить какие-то недостатки языка. Но устранить их все на уровне фреймворков невозможно. Стали появляться различные инструменты, позволяющие писать не на JavaScript, а на чем-то другом и все это компилировать в наш родной JS.

Список всевозможных трансляторов и диалектов можно найти на странице [1]. Там вы увидите более 340 различных языков программирования, которые компилируются именно в JavaScript. Среди них можно отметить следующие:

  • CoffeeScript семейство – 12 диалектов.
  • CoffeeScript идеологически совместимые – 25 вариантов.
  • 16 вариантов статически типизированных: TypeScript, Dart, Typecast.js, AtScript...
  • Существующие языки. Компилируемые в JS: PHP, Java, Ruby, Python, Erlang, Perl, Lua, Scala, C#, F#, Lisp, Scheme, OCaml, Haskell, Smalltalk, C/C++, Go...

Лучше всех популяризировать «Не JavaScript» получилось у Ruby-разработчиков. Они смогли показать всему миру, что можно писать фронтенд, вообще не написав ни строчки кода на JS, благодаря CoffeeScript. Он стал революционным для своего времени. И у него есть много интересных достоинств. Но все же CoffeeScript не является языком JavaScript, уж простите. Это другой язык, со своими нюансами и проблемами при отладке.

Когда на CoffeeScript пишут Ruby-разработчики, то это нормально. Для них это родной язык, можно сказать. Но когда на «кофе» пытаются писать PHP-разработчики, к примеру, или C#, Java-разработчики, то это должно вызывать больше вопросов, чем понимания. Зачем еще одни язык, когда можно использовать существующие знания и писать на чем-то, что более близко как синтаксически, так и идеологически?

Моя мысль, подтвержденная реальным применением на боевых проектах нашей компании, такова: TypeScript для PHP-разработчика такой же родной язык, как CoffeeScript для Ruby-программиста. А следовательно, если хотите разрабатывать сложные приложения на JavaScript, вы просто должны писать их на TypeScript. И далее мы будем рассматривать, почему стоит писать именно на TS.

Статью целиком читайте в журнале «Системный администратор», №7-8 за 2015 г. на страницах 95-99.

PDF-версию данного номера можно приобрести в нашем магазине.


  1. Список трансляторов и диалектов – http://goo.gl/EAabNP.
  2. Исходные тексты TypeScript – https://github.com/Microsoft/TypeScript.
  3. Онлайн-версия компилятора для демонстрации возможностей – http://www.typescriptlang.org/Playground.
  4. Официальный сайт Hack – http://hacklang.org.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru