Случайны выбор дневника Раскрыть/свернуть полный список возможностей


Найдено 96 сообщений
Cообщения с меткой

clean architecture - Самое интересное в блогах

Следующие 30  »
rss_habr

IEntityTypeConfiguration в EF Core, или отделим отделимое

Воскресенье, 16 Января 2023 г. 01:08 (ссылка)

Почти каждый разработчик программного обеспечения работал с СУБД, по крайней мере каждый слышал о них. В мире существует множество способов для работы с базами данных и один из них - это ORM (англ. Oblect-Relational Mapping). Для разработчиков приложений, особенно бизнес-приложений, различного рода реализации данного способа стали в прямом смысле "спасательным кругом" в грубом мире работы с базами данных. Ещё начиная с .Net Framework компания Microsoft кидала такой круг разработчикам, который носил название Entity Framework (EF). И теперь, в .NET есть кроссплатформенная реализация старенького EF - Entity Framework Core (EF Core).

В EF Core существует несколько способов конфигурирования сущностей, все они рассмотрены в моей предыдущей статье - https://habr.com/ru/post/649647/. Лучший из них на мой взгляд - это реализация IEntityTypeConfiguration<>. Он позволяет отделить модель предметной области от хранилища, сделать структуру проекта более упорядоченной, а само решение более гибким. Далее по статье мы рассмотрим все преимущества данного способа. Итак, пришло время на не реальном реальном проекте разобраться наконец с этим способом описания отношений полей и сущностей.

Сделаем конфигурацию для магазина, который занимается продажей автомобилей. База данных у нас уже существует, нужно только "подружить" с ней наше решение на .NET. Будем считать, что структуру нашей будущей БД разрабатывал вменяемый человек, который соблюдал элементарные правила именования полей и т.п.

Имеем несколько таблиц Cars, EquipmentOptions, Makes, Models. Все они имеют поля, которые являются системными, имеют один и тот же тип и называются одинаково. Это поля Id, CreatedDateTime, UpdatedDateTime. Для описания этих полей, мы создадим базовую модель для будущих сущностей BaseEntity:

Читать далее

https://habr.com/ru/post/710740/?utm_source=habrahabr&utm_medium=rss&utm_campaign=710740

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Советы по архитектуре кода для начинающих

Понедельник, 09 Января 2023 г. 15:20 (ссылка)

Для кого статья

Вы уже написали свои первые 1000 строк кода и сейчас хотите сделать их понятнее, потому что внесение изменений занимает столько-же времени, сколько написать заново, но советы из ООП, SOLID, clean architecture и т.д. непонятны вам.

О чем статья

Эта статья - не объяснение принципов ООП, SOLID своими словами, а попытка создать промежуточный уровень между никакой и чистой архитектурами. 100% советы будут накладываться друг на друга и перефразировать SOLID, но так даже лучше.

От кого статья

Я Middle разработчик. Конечно, не гуру разработки, но кому, как не мне, помнить о проблемах, с которыми сталкивался когда только начинал свой путь.

Отказ от ответственности

Уверен, каждый пункт из статьи может быть предметом спора, но на то это и вольный пересказ. Вся статья идет под эмблемой "Лучше применить такую архитектуру, чем не применять вообще никакой".

Формат статьи - наводящие советы / вопросы.

Читать далее

https://habr.com/ru/post/709670/?utm_source=habrahabr&utm_medium=rss&utm_campaign=709670

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Компонентный подход. Боремся со сложностью в Android-приложениях

Вторник, 27 Декабря 2022 г. 17:29 (ссылка)

Представьте, что вы начали разработку нового Android-приложения. Поначалу особых проблем не будет. Вы реализовали лишь самые базовые функции. Экранов немного, и все они простые. Вам легко ориентироваться в коде. Вы бодро добавляете одну фичу за другой. Но со временем разработка усложняется: кода становится много, главный экран обрастает большим количеством UI-элементов и логики, экраны образуют сложные цепочки переходов. Приходится ломать голову, чтобы добавить что-то новое, не сломав ничего из старого. Скорость разработки падает. Знакомая ситуация?

Существует эффективный способ борьбы со сложностью — компонентный подход. Мы в MobileUp применили его в трех крупных Android-приложениях и теперь не представляем, как жили без него раньше.

Меня зовут Артур, я тимлид в компании MobileUp. Я помогу вам освоить компонентный подход. Постараюсь сделать это как можно проще и увлекательнее.

Вас ждет серия статей. Это первая из них — теоретическая. В ней мы рассмотрим, какие сложности встречаются в Android-приложениях, и почему MVVM и Clean Architecture не панацея против них. Я расскажу, что такое компонентный подход и в чем его преимущества. А в конце статьи будут ссылки на материалы для углубленного изучения.

Читать далее

https://habr.com/ru/post/708040/?utm_source=habrahabr&utm_medium=rss&utm_campaign=708040

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Запросы с пагинацией с помощью Paging 3 и работа над ошибками. Boilerplate ч. 4

Воскресенье, 13 Ноября 2022 г. 12:18 (ссылка)

Всем привет после такого длительного перерыва возвращаем серию статей Boilerplate. Сегодня будем разбирать как облегчить пагинацию с помощью библиотеки Paging 3. За это время достаточно правок произошло в самом репозитории Boilerplate которые мы сегодня тоже разберем.

Читать далее

https://habr.com/ru/post/682120/?utm_source=habrahabr&utm_medium=rss&utm_campaign=682120

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

[Перевод] От wtf-кода к чистой архитектуре

Среда, 05 Октября 2022 г. 18:05 (ссылка)

Материал заботливо подготовлен на основе перевода части книги Go With The Domain, а именно — главы 9 «Чистая архитектура» за авторством Milosz Sm'olka.

В этой части говорится о том, как из wtf-кода прийти к чистой архитектуре с помощью сочетания двух идей: разделении портов и адаптеров + ограничении того, как структуры кода ссылаются друг на друга.

Читать далее

https://habr.com/ru/post/691562/?utm_source=habrahabr&utm_medium=rss&utm_campaign=691562

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

PHPCleanArchitecture — Что нового?

Суббота, 04 Сентября 2022 г. 03:45 (ссылка)

Этот пост является дополнением предыдущего. В нём расскажу о новых возможностях инструмента (с блэкджеком и шлюпками с примерами и картинками).

Читать далее

https://habr.com/ru/post/686236/?utm_source=habrahabr&utm_medium=rss&utm_campaign=686236

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Запросы в сеть с Clean Architecture — Обработка ошибок с сервера. Boilerplate ч. 3

Среда, 03 Августа 2022 г. 20:03 (ссылка)

Продолжаем дополнять серию статей. Сегодня мы разберем как легко обработать ошибку с сервера. То что мы будем сегодня разбирать тесно связано с предыдущими статьями и если вы их ещё не читали то настоятельно рекомендую перейти по ссылкам, прочитать и вернуться.

Читать далее

https://habr.com/ru/post/673180/?utm_source=habrahabr&utm_medium=rss&utm_campaign=673180

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Чистая архитектура на Go: плюсы и минусы

Четверг, 30 Июня 2022 г. 19:28 (ссылка)

15-17 июля в Слёрм пройдёт практический интенсив «Чистая архитектура приложения на Go». Мы пообщались с его автором Николаем Колядко, Senior Go Backend в Robovoice. Он рассказал, что такое чистая архитектура и какие проблемы она помогает решить. А ещё разобрал основные плюсы и минусы такого подхода к разработке приложений.

Читать далее

https://habr.com/ru/post/674440/?utm_source=habrahabr&utm_medium=rss&utm_campaign=674440

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Запросы в сеть с Clean Architecture и MVVM. Boilerplate ч. 2

Суббота, 21 Мая 2022 г. 22:20 (ссылка)

Что такое чистая архитектура, зачем использовать? Сегодня я не отвечу вам на эти вопросы :) (для этого существуют много других хороших статей одна из них Заблуждения Clean Architecture) Но отвечу на то как реализовать Clean Architecture в Android'е по крайней мере покажу вам свою реализацию.

Для общего понятия что здесь будет происходить вам нужно уметь пользоваться такими технологиями как: Coroutines, Retrofit 2, Lifecycle, Hilt. Ну приступим!

Читать далее

https://habr.com/ru/post/667026/?utm_source=habrahabr&utm_medium=rss&utm_campaign=667026

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Как рефакторинг помогает улучшить производительность разработчиков и повысить качество приложений

Среда, 04 Мая 2022 г. 11:11 (ссылка)

7 лет назад на одной ИТ-конференции спикер рассказывал про новую возможность Android платформы. После доклада его спросили про архитектуру, которую они используют в своей команде для разработки Android приложений. Его ответ заключался в том, что архитектура не важна, что каждый разработчик может делать так, как он хочет. Он сказал, что главное - это не где какие файлы лежат и что в них написано, а главное, чтобы были новые фичи. В наших приложениях в то время никакой архитектуры не было и мы только начинали интересоваться этим вопросом, но ответ спикера меня удивил. Уже тогда мне казалось, что такой подход только усложняет работу, а не упрощает. Например, когда программист работает над новой фичой, ему приходится проанализировать несколько вариантов, сделанных разными людьми в рамках одного проекта, и потратить время на принятие решения о том, какой же из этих вариантов использовать сейчас.

Сегодня про архитектуру мобильных приложений гораздо больше информации и больше разработчиков задумываются об этом при старте приложения. Неважно, один человек работает над приложением или команда. Набор принципов и договоренностей об организации кода, о том, какой должна быть архитектура, помогает быстрее находить ответы на вопросы в процессе написания и проектирования кода.

Читать про рефакторинг Headspace, Duolingo

https://habr.com/ru/post/664168/?utm_source=habrahabr&utm_medium=rss&utm_campaign=664168

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество

Следующие 30  »

<clean architecture - Самое интересное в блогах

Страницы: [1] 2 3 ..
.. 10

LiveInternet.Ru Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат
О проекте: помощь|контакты|разместить рекламу|версия для pda