Дмитрий Васильев dart for js devs
TRANSCRIPT
![Page 1: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/1.jpg)
Dart для JS developers
Дмитрий Васильев
![Page 2: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/2.jpg)
index.dart
![Page 3: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/3.jpg)
Объявление переменной
![Page 4: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/4.jpg)
Аннотации типа
![Page 5: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/5.jpg)
Логические операторы
• Операторы || и && принимают и возвращают bool
• if принимает bool выражение
• Если выражение не bool - warning
• Все, что не true - считается false
![Page 6: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/6.jpg)
null-aware операторы
![Page 7: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/7.jpg)
Сравнивание
• == - оператор эквиватентности
• identical() - метод определения идентичности
• Dart - NAN = NAN
• Dart -> JS - NAN != NAN
![Page 8: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/8.jpg)
Перегрузка операторов
• +, -, *, /, ==, [], []= могут быть перегружены
• Object определяет == ( использует identical)
• Если оператор не перегружен - no such method
• Порядко зависимые. a+b != b+a
![Page 9: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/9.jpg)
Строки
![Page 10: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/10.jpg)
Числовые типы• num, int, double
• floor, ceil, round, abs…
• 64 bit
![Page 11: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/11.jpg)
Функции
![Page 12: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/12.jpg)
Dart объектно-ориентированный
• класс Object
• toString(), runtimeType
• null - это объект
• Object - это не коллекция, а класс с мемберами
• Не определен мембер - исключение
• this - доступен только внутри методов класса
![Page 13: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/13.jpg)
ООП в Dart• abstract classes
• inheritance
• implementation
• mixins
• только public или private members
![Page 14: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/14.jpg)
КоллекцииБазовый синтаксис
![Page 15: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/15.jpg)
КоллекцииList и Map
![Page 16: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/16.jpg)
КоллекцииIterable
![Page 17: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/17.jpg)
КоллекцииObservable
![Page 18: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/18.jpg)
Работа с DOM
![Page 19: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/19.jpg)
Внедрение Dartindex.html
![Page 20: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/20.jpg)
Внедрение Dartmain.dart
![Page 21: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/21.jpg)
Прочее• Errors
• Exceptions
• async and await
• Futures и Streams
• Модули
![Page 22: Дмитрий Васильев Dart for js devs](https://reader033.vdocuments.mx/reader033/viewer/2022052116/588110041a28ab22368b70c1/html5/thumbnails/22.jpg)
Полезные ресурсы
• dartlang.org
• news.dartlang.org
• Dartisans G+ group
• dartpad.dartlang.org