|
rss_habr
CherryPick DI — di библиотека для dart/flutter проектовВторник, 09 Августа 2022 г. 21:51 (ссылка)
CherryPick DI DI-контейнер – это библиотека, которая обеспечивает функциональность механизма внедрения зависимостей. Содержание 1. Предисловие 2. Возможности библиотеки 3. Компоненты библиотеки - 3.1. Scope - 3.2. Module - 3.3. Binding 4. Пример использования 5. Заключение 1. Предисловие Первые попытки разработать свой DI для пет проектов написанных на Flutter SDK были начаты в начале 2020 года. Сподвигло меня на этот шаг несколько причин: 1. На тот момент я не нашел DI в pub.dev с возможностью делить контейнер на scope (возможно плохо искал) 2. Упростить работу с зависимостями в проекте 3. Желание написать собственный DI 4. Иметь в арсенале простой DI (надеюсь с простым API) Читать далееhttps://habr.com/ru/post/681714/?utm_source=habrahabr&utm_medium=rss&utm_campaign=681714
rss_habr
CherryPick DI — di библиотека для dart/flutter проектовВторник, 09 Августа 2022 г. 21:51 (ссылка)
CherryPick DI DI-контейнер – это библиотека, которая обеспечивает функциональность механизма внедрения зависимостей. Содержание 1. Предисловие 2. Возможности библиотеки 3. Компоненты библиотеки - 3.1. Scope - 3.2. Module - 3.3. Binding 4. Пример использования 5. Заключение 1. Предисловие Первые попытки разработать свой DI для пет проектов написанных на Flutter SDK были начаты в начале 2020 года. Сподвигло меня на этот шаг несколько причин: 1. На тот момент я не нашел DI в pub.dev с возможностью делить контейнер на scope (возможно плохо искал) 2. Упростить работу с зависимостями в проекте 3. Желание написать собственный DI 4. Иметь в арсенале простой DI (надеюсь с простым API) Читать далееhttps://habr.com/ru/post/681714/?utm_source=habrahabr&utm_medium=rss&utm_campaign=681714
rss_habr
Паттерны проектирования в Dart. Часть 2Понедельник, 08 Августа 2022 г. 17:29 (ссылка)
В первой части статьи мы рассмотрели основные и порождающие шаблоны и особенности их реализации на Dart. Теперь пришло время поговорить о структурных шаблонах и о их реализации с использованием синтаксических конструкций языка Dart и возможностей стандартной библиотеки. Мы будем стараться исключать возможности, предоставляемые такими сущностями языка как символы и рефлексия (пакет dart:mirrors), поскольку они не поддерживаются во Flutter (но обозначим возможные их применения при использовании Dart для бэкэнда), предпочитая использовать кодогенерацию во всех ситуациях, где это возможно. Читать далееhttps://habr.com/ru/post/681328/?utm_source=habrahabr&utm_medium=rss&utm_campaign=681328
rss_habr
Паттерны проектирования в Dart. Часть 2Понедельник, 08 Августа 2022 г. 17:29 (ссылка)
В первой части статьи мы рассмотрели основные и порождающие шаблоны и особенности их реализации на Dart. Теперь пришло время поговорить о структурных шаблонах и о их реализации с использованием синтаксических конструкций языка Dart и возможностей стандартной библиотеки. Мы будем стараться исключать возможности, предоставляемые такими сущностями языка как символы и рефлексия (пакет dart:mirrors), поскольку они не поддерживаются во Flutter (но обозначим возможные их применения при использовании Dart для бэкэнда), предпочитая использовать кодогенерацию во всех ситуациях, где это возможно. Читать далееhttps://habr.com/ru/post/681328/?utm_source=habrahabr&utm_medium=rss&utm_campaign=681328
rss_habr
Flutter jank shaders — история проблемы и пути решенияСреда, 03 Августа 2022 г. 11:13 (ссылка)
Меня зовут Андрей, я Flutter-разработчик в команде Центра развития финансовых технологий (ЦРФТ) Россельхозбанка. Сегодня поговорим о «jank shaders» — дёргающейся анимации при первых запусках приложений на Flutter — и о том, как можно постараться её исправить. Несколько лет назад пользователи отметили, что при первом запуске приложений на Android и IOS наблюдаются некоторые задержки в анимации, но при последующих запусках задержки постепенно исчезают. Подобная проблема распространяется не только на пользовательские анимации, но и на базовые, такие как например переходы между экранами. На скриншоте ниже приведен пример задержки анимации перехода между экранами при первом запуске. Читать далееhttps://habr.com/ru/post/680586/?utm_source=habrahabr&utm_medium=rss&utm_campaign=680586
rss_habr
Flutter jank shaders — история проблемы и пути решенияСреда, 03 Августа 2022 г. 11:13 (ссылка)
Меня зовут Андрей, я Flutter-разработчик в команде Центра развития финансовых технологий (ЦРФТ) Россельхозбанка. Сегодня поговорим о «jank shaders» — дёргающейся анимации при первых запусках приложений на Flutter — и о том, как можно постараться её исправить. Несколько лет назад пользователи отметили, что при первом запуске приложений на Android и IOS наблюдаются некоторые задержки в анимации, но при последующих запусках задержки постепенно исчезают. Подобная проблема распространяется не только на пользовательские анимации, но и на базовые, такие как например переходы между экранами. На скриншоте ниже приведен пример задержки анимации перехода между экранами при первом запуске. Читать далееhttps://habr.com/ru/post/680586/?utm_source=habrahabr&utm_medium=rss&utm_campaign=680586
rss_habr
Паттерны проектирования в DartПонедельник, 25 Июля 2022 г. 16:41 (ссылка)
В последние годы растет популярность фреймворка для кроссплатформенной разработки приложений Flutter, а вместе с ним вторую жизнь получил и язык программирования Dart. Dart создавался как потенциальная замена JavaScript и мог бы занять нишу, которая сейчас принадлежит TypeScript, но по ряду причин он так и оставался длительное время "одним из проектов Google", который не был оценен ни для использования в web (после транспиляции в JavaScript), ни для создания серверных или десктопных приложений. При этом компилятор Dart создает оптимизированный высокопроизводительный код для основных операционных систем и может также использоваться для компиляции в другие аппаратные архитектуры (например, для микроконтроллеров) и, в целом, Dart может использоваться как язык общего назначения для создания серверных приложений (Shelf, Aqueduct), устройств умного дома (с целевой платформой ARM и пакетом dart_periphery) и, конечно, десктопных, мобильных и веб-приложений (Flutter). И все же язык обладает определенным набором особенностей, которые надо учитывать при реализации кода и использованию типовых паттернов проектирования. В этой статье мы рассмотрим примеры реализации самых часто используемых основных и порождающих шаблонов на языке Dart (будем использовать возможности наиболее актуальной версии Dart 2.17), а во второй части статьи будут рассмотрены более сложные структурные и поведенческие паттерны. Читать далееhttps://habr.com/ru/post/678714/?utm_source=habrahabr&utm_medium=rss&utm_campaign=678714
rss_habr
Паттерны проектирования в DartПонедельник, 25 Июля 2022 г. 16:41 (ссылка)
В последние годы растет популярность фреймворка для кроссплатформенной разработки приложений Flutter, а вместе с ним вторую жизнь получил и язык программирования Dart. Dart создавался как потенциальная замена JavaScript и мог бы занять нишу, которая сейчас принадлежит TypeScript, но по ряду причин он так и оставался длительное время "одним из проектов Google", который не был оценен ни для использования в web (после транспиляции в JavaScript), ни для создания серверных или десктопных приложений. При этом компилятор Dart создает оптимизированный высокопроизводительный код для основных операционных систем и может также использоваться для компиляции в другие аппаратные архитектуры (например, для микроконтроллеров) и, в целом, Dart может использоваться как язык общего назначения для создания серверных приложений (Shelf, Aqueduct), устройств умного дома (с целевой платформой ARM и пакетом dart_periphery) и, конечно, десктопных, мобильных и веб-приложений (Flutter). И все же язык обладает определенным набором особенностей, которые надо учитывать при реализации кода и использованию типовых паттернов проектирования. В этой статье мы рассмотрим примеры реализации самых часто используемых основных и порождающих шаблонов на языке Dart (будем использовать возможности наиболее актуальной версии Dart 2.17), а во второй части статьи будут рассмотрены более сложные структурные и поведенческие паттерны. Читать далееhttps://habr.com/ru/post/678714/?utm_source=habrahabr&utm_medium=rss&utm_campaign=678714
rss_habr
Мой опыт flutter собеседованийСуббота, 23 Июля 2022 г. 19:25 (ссылка)
В данной статье я хотел поделиться своим опытом прохождения собеседований и для этого собрал топ самых частых вопросов, которые мне задавали. В комментариях делитесь своим опытом. Это будет полезно всем, кто хочет развивать карьеру в качестве flutter-developer. Читать далееhttps://habr.com/ru/post/678560/?utm_source=habrahabr&utm_medium=rss&utm_campaign=678560
rss_habr
Мой опыт flutter собеседованийСуббота, 23 Июля 2022 г. 19:25 (ссылка)
В данной статье я хотел поделиться своим опытом прохождения собеседований и для этого собрал топ самых частых вопросов, которые мне задавали. В комментариях делитесь своим опытом. Это будет полезно всем, кто хочет развивать карьеру в качестве flutter-developer. Читать далееhttps://habr.com/ru/post/678560/?utm_source=habrahabr&utm_medium=rss&utm_campaign=678560
rss_habr
3D-объекты во Flutter. Расширяем FlameСреда, 20 Июля 2022 г. 12:03 (ссылка)
В конце прошлого года движок Flame для создания игровых приложений на Flutter опубликовал первую стабильную версию 1.0 и анонсировал большие изменения в системе миксинов, подходах к управлению компонентами и созданию сцены из иерархии объектов, каждый из которых может выступить в роли контейнера. Прежде всего Flame ориентирован на двумерную графику (спрайты, системы частиц, визуальные эффекты), но возможности Skia позволяют использовать трехмерные преобразования и обеспечивать работу с шейдерами, благодаря чему можно приблизиться к созданию трехмерных игр. В этой статье мы обсудим возможный путь создания трехмерных компонентов в Flame с произвольной визуализацией с использованием компилируемых шейдеров. Читать далееhttps://habr.com/ru/post/677844/?utm_source=habrahabr&utm_medium=rss&utm_campaign=677844
rss_habr
[Перевод] Главный цикл в пошаговых играхВторник, 19 Июля 2022 г. 21:10 (ссылка)
Теперь, когда мой рогалик, написанный на Dart, имеет открытый исходный код, мне хотелось бы поговорить о том, на что было потрачено большое количество времени. На самом деле я вложил даже слишком много усилий в некоторые элементы этой игры и может когда-нибудь напишу и о них. Однако сейчас я хотел бы начать с того места, где стартует любая игра: главный цикл. Читать далееhttps://habr.com/ru/post/677578/?utm_source=habrahabr&utm_medium=rss&utm_campaign=677578
rss_habr
Поговорим про безопасность в Dart и FlutterПонедельник, 11 Июля 2022 г. 14:15 (ссылка)
Безопасность приложения определяется всеми уровнями - от операционной системы и компилятора до используемых пакетов/плагинов и кода самого приложения. Особенно этот вопрос актуален, когда значительная часть используемых компонентов поддерживается сообществом и не контролируется единой организацией или фондом и, чем более популярной становится платформа, чем больше пакетов появляется и чем больше становится кодовая база платформа, тем больше вероятность возникновения уязвимостей разного уровня (особенно в низкоуровневом коде на C++, где возможна утечка памяти, переполнение буфера, состояние гонки и другие неприятности), а также внедрения вредоносного кода разработчиками из сообщества (начиная от безобидных баннеров, до внедрения шпионского кода, бэкдоров и деструктивных функций). В статье мы обсудим какие векторы атак возможны в Dart, какие меры предпринимает сообщество и Google для снижения рисков при создании платформы и пакетов (и про бейджик openssf), и как можно обезопасить себя. Читать далееhttps://habr.com/ru/post/676138/?utm_source=habrahabr&utm_medium=rss&utm_campaign=676138
rss_habr
Поговорим про безопасность в Dart и FlutterПонедельник, 11 Июля 2022 г. 14:15 (ссылка)
Безопасность приложения определяется всеми уровнями - от операционной системы и компилятора до используемых пакетов/плагинов и кода самого приложения. Особенно этот вопрос актуален, когда значительная часть используемых компонентов поддерживается сообществом и не контролируется единой организацией или фондом и, чем более популярной становится платформа, чем больше пакетов появляется и чем больше становится кодовая база платформа, тем больше вероятность возникновения уязвимостей разного уровня (особенно в низкоуровневом коде на C++, где возможна утечка памяти, переполнение буфера, состояние гонки и другие неприятности), а также внедрения вредоносного кода разработчиками из сообщества (начиная от безобидных баннеров, до внедрения шпионского кода, бэкдоров и деструктивных функций). В статье мы обсудим какие векторы атак возможны в Dart, какие меры предпринимает сообщество и Google для снижения рисков при создании платформы и пакетов (и про бейджик openssf), и как можно обезопасить себя. Читать далееhttps://habr.com/ru/post/676138/?utm_source=habrahabr&utm_medium=rss&utm_campaign=676138
rss_habr
Flutter для автомобиля. А почему бы и нет?Понедельник, 04 Июля 2022 г. 16:33 (ссылка)
Одной из проблем развития бортовых систем для автомобиля является создание качественного переносимого программного обеспечения, которое бы работало на бортовых системах разных автопроизводителей и могло быть скомпилировано под разные аппаратные и программные архитектуры. Несмотря на очевидную актуальность, задача осложнялась прежде всего тем, что большинство автопроизводителей предпочитало создавать собственные проприетарные операционные системы, что затрудняло создание переносимого программного обеспечения. Ситуация изменилась со стартом проекта Automotive Grade Linux (AGL), поддерживаемыми крупными компаниями такими как Toyota, Mazda, Suzuki, Ford и Mercedes Benz и производителями медиасистем (например, Panasonic). И в планах развития проекта Flutter на 2022 год обозначено развитие поддержки AGL как целевой платформы для приложений. В этой статье мы рассмотрим основные идеи создания переносимых приложений для AGL на Flutter. Читать далееhttps://habr.com/ru/post/674622/?utm_source=habrahabr&utm_medium=rss&utm_campaign=674622
|
LiveInternet.Ru |
Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат О проекте: помощь|контакты|разместить рекламу|версия для pda |