from js to dart

17
1 Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike Как после 5 лет Javascript я начал писать на Dart Илья Таратухин 30.11.2016

Upload: anton-anokhin

Post on 20-Jan-2017

22 views

Category:

Software


0 download

TRANSCRIPT

Page 1: From js to dart

1Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Как после 5 лет Javascript я начал писать на DartИлья Таратухин30.11.2016

Page 2: From js to dart

2Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

План действий

➔ Расскажу о себе; ➔ поговорим об особенностях перехода с JS на Dart;

➔ расскажу о проблемах, с которыми столкнулся;

➔ profit.

Page 3: From js to dart

3Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Докладчик

➙ Закончил НГТУ;

➙ 5+ лет в 2ГИС;

➙ 3+ мес в Wrike;

image

Page 4: From js to dart

4Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Опыт программирования

➔ Pascal, Delphi, C, C++; // В обучении

➔ Java, .NET, PHP, Python; // Первый опыт, до полугода

➔ JavaScript, ES6, NodeJS; // 5 лет

➔ Dart. // Сейчас (3+ месяца)

Page 5: From js to dart

5Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Особенности перехода с JS на Dart

Page 6: From js to dart

6Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

ООП в Dart

➔ Dart is a class-based, single-inheritance, pure object-oriented programming language.

➔ Dart is optionally typed and supports reified generics.

Page 7: From js to dart

7Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

ООП в Dart

➔ Одиночное наследование (extends);

➔ Абстрактные классы (abstract);

➔ Интерфейсы (implements);

➔ Миксины (with).

Page 8: From js to dart

8Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Коллекции

➔ List = массив в JS

➔ Map = Object в JS

Page 9: From js to dart

9Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Коллекции

➔ List = массив в JS

➔ Map = Object в JS

Page 10: From js to dart

10Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Коллекции

Iterable

➔ lodash не нужен

➔ lazy методы

➔ ситаксический сахар

Page 11: From js to dart

11Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Асинхронность

➔ Future/Completer (аналог Promise/Defered); ➔ async await;

➔ Future.delayed/Timer (аналог setTimeout);

➔ Stream.

Page 12: From js to dart

12Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Dart в браузере

HttpRequest

Обертки над нативными событиями

And more

Element

Подписка на события (Stream)

Timeout / Future

Page 13: From js to dart

13Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Как использовать JS библиотеки в Dart?

Page 14: From js to dart

14Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

JS interop

➔ Описывает интерфейс JS сущности;

➔ обеспечивает доступ к

свойствам;

➔ позволяет вызывать функции;

➔ можно передавать Dart callback внутрь JS.

Page 15: From js to dart

15Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Проблемы, с которыми я столкнулся

➔ Interop сложно отлаживать; ➔ cообщество очень мало, часто на StackOverflow есть

интересующий вопрос, но нет ответа;

➔ экосистема находится в активной разработке;

➔ приходится доказывать, что Dart не мертв.

Page 16: From js to dart

16Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Profit

➔ Типизация просто необходима в большом Web-приложении;

➔ порог вхождения Dart возможно легче, чем в PHP/JS;

➔ нет существенных препятствий в использовании JS-библиотек;

➔ в современном frontend мы осваиваем скорее инструменты, а не языки.

Page 17: From js to dart

17Как после 5 лет Javascript я начал писать на Dart, Илья Таратухин, 30.11.2016 slide Wrike

Вопросы?

Илья Таратухин@darkilfa