SlideShare a Scribd company logo
1Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Как после 5 лет
Javascript я начал
писать на Dart
Илья Таратухин
30.11.2016
2Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
План действий
➔ Расскажу о себе;
➔ поговорим об особенностях перехода с JS на Dart;
➔ расскажу о проблемах, с которыми столкнулся;
➔ profit.
3Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Докладчик
➙ Закончил НГТУ;
➙ 5+ лет в 2ГИС;
➙ 3+ мес в Wrike;
image
4Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Опыт программирования
➔ Pascal, Delphi, C, C++; // В обучении
➔ Java, .NET, PHP, Python; // Первый опыт, до полугода
➔ JavaScript, ES6, NodeJS; // 5 лет
➔ Dart. // Сейчас (3+ месяца)
5Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Особенности
перехода с JS
на Dart
6Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
ООП в Dart
➔ Dart is a class-based,
single-inheritance, pure
object-oriented
programming language.
➔ Dart is optionally typed
and supports reified
generics.
7Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
ООП в Dart
➔ Одиночное наследование (extends);
➔ Абстрактные классы (abstract);
➔ Интерфейсы (implements);
➔ Миксины (with).
8Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Коллекции
➔ List = массив в JS
➔ Map = Object в JS
9Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Коллекции
➔ List = массив в JS
➔ Map = Object в JS
10Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Коллекции
Iterable
➔ lodash не нужен
➔ lazy методы
➔ ситаксический сахар
11Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Асинхронность
➔ Future/Completer (аналог Promise/Defered);
➔ async await;
➔ Future.delayed/Timer (аналог setTimeout);
➔ Stream.
12Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Dart в браузере
HttpRequest
Обертки над
нативными
событиями
And more
Element
Подписка на
события
(Stream)
Timeout /
Future
13Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Как использовать JS
библиотеки в Dart?
14Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
JS interop
➔ Описывает интерфейс
JS сущности;
➔ обеспечивает доступ к
свойствам;
➔ позволяет вызывать
функции;
➔ можно передавать Dart
callback внутрь JS.
15Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Проблемы, с которыми я столкнулся
➔ Interop сложно отлаживать;
➔ cообщество очень мало, часто на StackOverflow есть
интересующий вопрос, но нет ответа;
➔ экосистема находится в активной разработке;
➔ приходится доказывать, что Dart не мертв.
16Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Profit
➔ Типизация просто необходима в большом Web-
приложении;
➔ порог вхождения Dart возможно легче, чем в PHP/JS;
➔ нет существенных препятствий в использовании JS-
библиотек;
➔ в современном frontend мы осваиваем скорее
инструменты, а не языки.
17Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike
Вопросы?
Илья Таратухин
@darkilfa

More Related Content

PDF
Как создавать landing page по методологии «Scrum»
PDF
За пределами PageObject
PDF
Елена Гальцина
PDF
Пример fuzzy testing для поиска URL в тексте
ODP
Fuzz testing
PDF
Anders Sandholm, Google - "Update on Dart. Why you might consider Dart for y...
PPTX
Dart London hackathon
PPTX
Dart structured web apps
Как создавать landing page по методологии «Scrum»
За пределами PageObject
Елена Гальцина
Пример fuzzy testing для поиска URL в тексте
Fuzz testing
Anders Sandholm, Google - "Update on Dart. Why you might consider Dart for y...
Dart London hackathon
Dart structured web apps

More from Anton Anokhin (12)

PDF
Андрей Толмачев "Страх и ненависть в компонентных командах"
PDF
"Okr strategic planning over scrum"
PDF
Наталья Антипова "Инструменты фасилитации в помощь Scrum master’у"
PDF
Анна Обухова "Sm технологии влияния"
PPTX
Роман Абдульманов, Wrike "С бэкенда во фронтенд: мой опыт перехода на Dart"
PDF
Никита Ефимов Lead UX Architect, New Cloud Technologies
PDF
Дмитрий Павлов, UX researcher "UX-исследования в продуктовой компании"
PDF
Andrew Filev Lean ux
PDF
How to create self-service analytics tool from activity logs garbage
PPTX
Нифонтова, Ковальская "Как быть и что делать, если вы поддерживаете сложный Ш...
PDF
Yuriy Golikov, Wrike: Team of teams how to organize effective development of...
PDF
Дмитрий Васильев Dart for js devs
Андрей Толмачев "Страх и ненависть в компонентных командах"
"Okr strategic planning over scrum"
Наталья Антипова "Инструменты фасилитации в помощь Scrum master’у"
Анна Обухова "Sm технологии влияния"
Роман Абдульманов, Wrike "С бэкенда во фронтенд: мой опыт перехода на Dart"
Никита Ефимов Lead UX Architect, New Cloud Technologies
Дмитрий Павлов, UX researcher "UX-исследования в продуктовой компании"
Andrew Filev Lean ux
How to create self-service analytics tool from activity logs garbage
Нифонтова, Ковальская "Как быть и что делать, если вы поддерживаете сложный Ш...
Yuriy Golikov, Wrike: Team of teams how to organize effective development of...
Дмитрий Васильев Dart for js devs
Ad

From js to dart

  • 1. 1Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Как после 5 лет Javascript я начал писать на Dart Илья Таратухин 30.11.2016
  • 2. 2Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike План действий ➔ Расскажу о себе; ➔ поговорим об особенностях перехода с JS на Dart; ➔ расскажу о проблемах, с которыми столкнулся; ➔ profit.
  • 3. 3Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Докладчик ➙ Закончил НГТУ; ➙ 5+ лет в 2ГИС; ➙ 3+ мес в Wrike; image
  • 4. 4Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Опыт программирования ➔ Pascal, Delphi, C, C++; // В обучении ➔ Java, .NET, PHP, Python; // Первый опыт, до полугода ➔ JavaScript, ES6, NodeJS; // 5 лет ➔ Dart. // Сейчас (3+ месяца)
  • 5. 5Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Особенности перехода с JS на Dart
  • 6. 6Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike ООП в Dart ➔ Dart is a class-based, single-inheritance, pure object-oriented programming language. ➔ Dart is optionally typed and supports reified generics.
  • 7. 7Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike ООП в Dart ➔ Одиночное наследование (extends); ➔ Абстрактные классы (abstract); ➔ Интерфейсы (implements); ➔ Миксины (with).
  • 8. 8Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Коллекции ➔ List = массив в JS ➔ Map = Object в JS
  • 9. 9Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Коллекции ➔ List = массив в JS ➔ Map = Object в JS
  • 10. 10Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Коллекции Iterable ➔ lodash не нужен ➔ lazy методы ➔ ситаксический сахар
  • 11. 11Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Асинхронность ➔ Future/Completer (аналог Promise/Defered); ➔ async await; ➔ Future.delayed/Timer (аналог setTimeout); ➔ Stream.
  • 12. 12Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Dart в браузере HttpRequest Обертки над нативными событиями And more Element Подписка на события (Stream) Timeout / Future
  • 13. 13Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Как использовать JS библиотеки в Dart?
  • 14. 14Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike JS interop ➔ Описывает интерфейс JS сущности; ➔ обеспечивает доступ к свойствам; ➔ позволяет вызывать функции; ➔ можно передавать Dart callback внутрь JS.
  • 15. 15Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Проблемы, с которыми я столкнулся ➔ Interop сложно отлаживать; ➔ cообщество очень мало, часто на StackOverflow есть интересующий вопрос, но нет ответа; ➔ экосистема находится в активной разработке; ➔ приходится доказывать, что Dart не мертв.
  • 16. 16Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Profit ➔ Типизация просто необходима в большом Web- приложении; ➔ порог вхождения Dart возможно легче, чем в PHP/JS; ➔ нет существенных препятствий в использовании JS- библиотек; ➔ в современном frontend мы осваиваем скорее инструменты, а не языки.
  • 17. 17Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slideWrike Вопросы? Илья Таратухин @darkilfa