Через полгода после выхода прошлой статьи о сравнении RxPM c другими презентационными паттернами мы с Jeevuz, наконец, готовы представить библиотеку RxPM — реактивную реализацию паттерна Presentation Model. Давайте сделаем небольшой обзор основных компонентов библиотеки и покажем, как их использовать.
Рубрика «architecture» - 5
RxPM — реактивная реализация паттерна Presentation Model
2017-11-22 в 10:45, admin, рубрики: android, architecture, Presentation Model, RxPM, Блог компании MobileUp, Проектирование и рефакторинг, разработка мобильных приложений, Разработка под android, реактивное программированиеВведение в Seneca.JS
2017-11-13 в 15:02, admin, рубрики: architecture, framework, javascript, Microservices, node.js, nodejsSeneca — microservices toolkit для Node.JS. Он предоставляет плагины, которые заботятся об основах вашего приложения. Это позволяет сосредоточиться на реальной бизнес-логике. Нет необходимости беспокоиться о том, какую базу данных использовать, как структурировать компоненты или как управлять зависимостями. Просто начните писать код.
Вы описываете всё как действия. Действия вызываются всякий раз, когда они соответствуют набору свойств. Ваш вызывающий код не знает и не заботится, какое действие выполняет работу. Один объект JavaScript входит, а другой выходит, асинхронно.
Чем Seneca.js не является
Я люблю конкретные сравнения, и увы я быстро делаю поспешные обобщения, которые могут в конечном итоге причинить мне боль.
Чтобы этого избежать, вот список того, что нет у Seneca:
- Seneca — это не “строгий” фреймворк. Seneca не навязывает вам ни архитектуру приложения ни каких-либо подходов. Хотите разместить все свое приложение в одном действии? Вы можете. Хотите сделать каждое действие всего в 5 строк кода? Вы тоже можете это сделать. Seneca невероятно надежен и будет работать практически со всеми архитектурными решениями, которые вы принимаете.Читать полностью »
Заблуждения Clean Architecture
2017-08-11 в 7:39, admin, рубрики: android, architecture, clean architecture, clean code, patterns, programming, Блог компании MobileUp, Программирование, Проектирование и рефакторинг, разработка мобильных приложений, Разработка под android
На первый взгляд, Clean Architecture – довольно простой набор рекомендаций к построению приложений. Но и я, и многие мои коллеги, сильные разработчики, осознали эту архитектуру не сразу. А в последнее время в чатах и интернете я вижу всё больше ошибочных представлений, связанных с ней. Этой статьёй я хочу помочь сообществу лучше понять Clean Architecture и избавиться от распространенных заблуждений. Читать полностью »
Android Architecture Components. Часть 4. ViewModel
2017-08-05 в 7:28, admin, рубрики: android, android architecture components, AndroidViewModel, application, architecture, development, location, ViewModel, ViewModelProvider, ViewModelProviders, ViewModelStore, ViewModelStores, Разработка под android, разработка приложенийКомпонент ViewModel — предназначен для хранения и управления данными, связанными с представлением, а заодно, избавить нас от проблемы, связанной с пересозданием активити во время таких операций, как переворот экрана и т.д. Не стоит его воспринимать, как замену onSaveInstanceState, поскольку, после того как система уничтожит нашу активити, к примеру, когда мы перейдем в другое приложение, ViewModel будет также уничтожен и не сохранит свое состояние. В целом же, ViewModel можно охарактеризовать как синглтон, который гарантирует, что не будет уничтожен пока есть активный экземпляр нашей активити и освободит ресурсы после ухода с нее (все немного сложнее, но выглядит как-то так). Стоит также отметить, что мы можем привязать любое количество ViewModel к нашей Activity(Fragment).
Компонент состоит из таких классов: ViewModel, AndroidViewModel, ViewModelProvider, ViewModelProviders, ViewModelStore, ViewModelStores. Разработчик будет работать только с ViewModel, AndroidViewModel и для получения истанца с ViewModelProviders, но для лучшего понимания компонента, мы поверхностно рассмотрим все классы.
Android Architecture Components. Часть 3. LiveData
2017-07-21 в 16:15, admin, рубрики: android, android architecture components, architecture, development, livedata, LiveDataReactiveStreams, MediatorLiveData, MutableLiveData, Transformations, Разработка под android, разработка приложений
Компонент LiveData — предназначен для хранения объекта и разрешает подписаться на его изменения. Ключевой особенностью является то, что компонент осведомлен о жизненном цикле и позволяет не беспокоится о том на каком этапе сейчас находиться подписчик, в случае уничтожения подписчика, компонент отпишет его от себя. Для того чтоб LiveData учитывала жизненный цикл используется компонент Lifecycle, но также есть возможность использовать без привязки к жизненному циклу.
Сам компонент состоит из классов: LiveData, MutableLiveData, MediatorLiveData, LiveDataReactiveStreams, Transformations и интерфейса: Observer.
Класс LiveData, являет собой абстрактный дженериковый класс и инкапсулирует всю логику работы компонента. Соответственно для создания нашего LiveData холдера, необходимо наследовать этот класс, в качестве типизации указать тип который мы планируем в нем хранить, а также описать логику обновления хранимого объекта.
Читать полностью »
MBLTdev 2017 is coming. Регистрация открыта
2017-07-18 в 12:08, admin, рубрики: architecture, arkit, CoreML, elegien, ios development, iOS разработка, IoT, mblt, mbltdev, speaker, билеты, Блог компании e-Legion Ltd., доклад, конференция, разработка мобильных приложений, Разработка под android, разработка под iOSПривет! 4-я Конференция мобильных разработчиков MBLTdev состоится 27 октября 2017 г. в Москве.
MBLTdev — это ежегодная конференция для повышения квалификации и знакомства с профессиональным сообществом опытных и талантливых разработчиков. Изучите последние iOS- и Android-тенденции и лучшие практики, посетив выступления докладчиков из Европы, Кремниевой долины и России. Узнайте о новых инструментах и подходах к проектированию архитектуры, задайте вопросы экспертам, получите новые знания для работы над вашими проектами.
Осторожно, под катом спойлеры — все подробности о программе и билетах.Читать полностью »
Android Architecture Components. Часть 2. Lifecycle
2017-07-09 в 17:06, admin, рубрики: android, android architecture components, architecture, development, lifecycle, LifecycleActivity, LifecycleFragment, LifecycleObserver, LifecycleRegistry, LifecycleService, ProcessLifecycleOwner, Разработка под android, разработка приложений
Как я уже упоминал в предыдущем материале, компонент Lifecycle призван упростить работу с жизненным циклом, а имено избежать калбеков с Activity/Fragment в наш компонент, который должен реагировать на события жизненого цикла. В этой статье, мы подробно разберем как он устроен и как с ним работать.
Сам компонент состоит из классов: Lifecycle, LifecycleActivity, LifecycleFragment, LifecycleService, ProcessLifecycleOwner, LifecycleRegistry. Интерфейсов: LifecycleOwner, LifecycleObserver, LifecycleRegistryOwner.
Lifecycle — класс, который хранит информацию про состояние жизненного цикла и разрешает другим объектам отслеживать его c помощью реализации LifecycleObserver. Состоит из методов: addObserver(LifecycleObserver), removeObserver(LifecycleObserver) и getCurrentState(). Как понятно из названий для добавления подписчика, удаления и соответственно получения текущего состояния.
Читать полностью »
Android Architecture Components. Часть 1. Введение
2017-07-06 в 14:47, admin, рубрики: android, android architecture components, architecture, development, Разработка под android, разработка приложенийНа Google I/O 2017, было представлено набор библиотек под названием Android Architecture Components. В нескольких словах — это ряд вспомогательных библиотек, которые призваны помочь с такими вещами как, проектирование, тестирование и сопровождение приложений. То, что команда разработки Android начала акцентировать внимание на архитектуре не может не радовать, поскольку проблема является действительно актуальной. Ведь изначально не было предоставлено никаких требований или гайдлайнов по проектированию, и разработчику приходилось отталкиваться от своего предыдущего опыта. Что, в свою очередь, вызывало сложности в сопровождении проекта, а также сомнительные решения для специфических для ОС ситуаций. По факту это не первые шаги в этом направлении. Ранее уже Google представил репозиторий android-architecture с примерами применения разных архитектурных концептов. Надеемся, что развитие будет дальше и может на следующем Google I/O мы сможем увидеть полноценный фреймворк.
Читать полностью »
Microsoft на CodeFest 2017 — отчёт, слайды и видео докладов
2017-06-14 в 8:16, admin, рубрики: .net, architecture, azure, CodeFest, codefest 2017, Google, iOS, kubernetes, microsoft, Microsoft Azure, security, Блог компании MicrosoftПривет!
В этом году, в апреле, мы снова участвовали на CodeFest 2017, крутейшей за Уралом конференция разработчиков, тестировщиков, дизайнеров, менеджеров проектов и продуктов (с).
На этот раз от Microsoft было несколько докладчиков — Джеффри Рихтер (Microsoft Corporation), Андрей Беленко (Microsoft) и покорный слуга (Microsoft Россия). Коллеги из команды CodeFest выложили слайды, видео докладов и отчетное видео до ката. Под катом я собрал все доклады, в которых говорили о Microsoft.