SlideShare uma empresa Scribd logo
1 de 27
JavaScript и все-все-все
Паша Клименков (XB Software)
Сначала не было ничего
Потом пришел Брэндон Айк,
и стал JavaScript (1995)
• Прототипный
• Java-подобный
• Интерпритируемый
И мы научились делать анимированные
снежинки и котиков
Затем пришло нечто странное (1999)…
Internet Explorer 5 + MSXML.XMLHTTP
= AJAX!
Уже позже додумались,
что JSON удобнее XML
И некоторое время было
непонятно, что с этим делать
Но постепенно вэб стал выглядеть вот так
Затем еще один сюрприз (2007)
Примерно в это же время выяснилось, что
делать вэб-приложения - это сложно
• Cross browser
• Event Loop
• Callback hell (Пирамида Судьбы)
• Глобальные переменные и побочные эффекты
• Понимание языка
Зоопарк браузеров
Спасибо jQuery!
Он сделал многие вещи кроссбраузерно
простыми
Event Loop – к нему пришлось привыкнуть
Callback hell aka Пирамида Судьбы
Решение: промисы (promises)
Callback hell и promise
Понимание языка
Даглас Крокфорд – наше всё!
Microsoft – тоже всё!
TypeScript
А затем пришёл Node.js (2009),
и JavaScript стал хаотически вездесущ
LAMP умер! Да здравствует MEAN!
Что происходит сегодня
• ES 6
• HTML5 практически везде
• Декстопные приложения на JS
• Мобильные приложения JS
• Роботы!!!
Спасибо! Вопросы?
/pasha.klimenkov

Mais conteúdo relacionado

Mais de Pavel Klimiankou

Mais de Pavel Klimiankou (10)

Troubleshooting .net core on linux
Troubleshooting .net core on linuxTroubleshooting .net core on linux
Troubleshooting .net core on linux
 
Functional programming techniques in regular JavaScript
Functional programming techniques in regular JavaScriptFunctional programming techniques in regular JavaScript
Functional programming techniques in regular JavaScript
 
Приёмы функционального программирования в обычном JavaScript
Приёмы функционального программирования в обычном JavaScriptПриёмы функционального программирования в обычном JavaScript
Приёмы функционального программирования в обычном JavaScript
 
Browser APIs for data exchange: types and application
Browser APIs for data exchange: types and applicationBrowser APIs for data exchange: types and application
Browser APIs for data exchange: types and application
 
Браузерные API обмена данными: какие и зачем
Браузерные API обмена данными: какие и зачемБраузерные API обмена данными: какие и зачем
Браузерные API обмена данными: какие и зачем
 
What is Docker
What is DockerWhat is Docker
What is Docker
 
Что такое Docker
Что такое DockerЧто такое Docker
Что такое Docker
 
Chrome Extensions
Chrome ExtensionsChrome Extensions
Chrome Extensions
 
Game physics in JavaScript
Game physics in JavaScriptGame physics in JavaScript
Game physics in JavaScript
 
Игровая физика в JavaScript
Игровая физика в JavaScriptИгровая физика в JavaScript
Игровая физика в JavaScript
 

Кратчайшая история JavaScript