Получи случайную криптовалюту за регистрацию!

DDDevotion

Логотип телеграм канала @dddevotion — DDDevotion D
Логотип телеграм канала @dddevotion — DDDevotion
Адрес канала: @dddevotion
Категории: Технологии
Язык: Русский
Страна: Россия
Количество подписчиков: 3.35K
Описание канала:

All about Domain-Driven Design
FB - https://www.facebook.com/groups/dddevotion/
Youtube - https://www.youtube.com/c/dddevotion
По вопросам сотрудничества @gradea

Рейтинги и Отзывы

4.00

2 отзыва

Оценить канал dddevotion и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

1

4 звезд

0

3 звезд

1

2 звезд

0

1 звезд

0


Последние сообщения 3

2022-05-18 14:43:01 Работая с тактическими паттернами DDD, в очередной раз убеждаешься какой же этот ваш DDD "душный" в хорошем смысле слова. Вот буквально на днях пилили небольшой объект-значение, отражающий количество (при этом количество может быть дробным значением). И в процессе запилки возникли вопросы вида
- Какие могут быть максимальные и минимальные значения?
- Какая должна точность дробной части?
- Как округляется значение при выполнении арифметических операций?
- Какие вообще арифметические операции допустимы, с какими аргументами и в каких диапазонах?
- Как вести себя при переполнении?

И это довольно простой класс, ничего особенного. В обычном случае пишут что-то вроде fun calculate(float: count) и забивают, мы же уделяем столько внимания казалось бы такой незначительной чиселке. И в итоге может показаться, что все это не нужно. Да и вообще тратим больше времени - нужно подумать, написать тесты, etc. Но это не совсем так, ведь мы получаем:
- Снижение когнитивной нагрузки. Мы работаем над небольшим независимым кусочком кода и за счет этого яснее видим граничные случаи.
- Сами тесты получаются проще и шустрее, их дешевле поддерживать. Местами очень хорошо заходит property-тестирование
- Самый главный пункт - мы защищаемся от нелепых багов вида "нам передали отрицательное число в качестве количества, а мы его пропустили, потому что забыли провалидировать. Теперь надо полбазы перетряхнуть на проде, чтобы устранить последствия".
- За счет инкапсуляции упрощается сам код, ведь нам не нужно таскать и копипастить разного рода проверки.

Итого, если количество тестов и растет, то время на их написание (незначительное) компенсируется отсутствием детсадовских багов, а так же более читабельным и поддерживаемым кодом.
1.1K views11:43
Открыть/Комментировать
2022-05-10 23:38:30 https://www.meetup.com/Technical-Excellence/events/285738419/

Коллеги проводят митап про эволюционное проектирование.
Термин пришел из архитектуры и ландшафтного дизайна, позже появился и в проектировании ПО. В частности упоминается в LeSS (https://less.works/less/technical-excellence/architecture-design) и SAFe (https://www.scaledagileframework.com/agile-architecture/). Ну и нельзя не вспомнить книгу Building Evolutionary Architectures (https://www.thoughtworks.com/insights/books/building-evolutionary-architectures).
1.6K views20:38
Открыть/Комментировать
2022-05-04 11:40:05 Faster is slower

Иван Закревский напомнил мне про отличную статью, в которой объясняется важность системного подхода к своим решениям и почему быстрота в моменте оборачивается замедлением на дистанции. https://less.works/less/principles/systems-thinking

P.S. Есть русский перевод https://less.works/ru/less/principles/systems-thinking
579 views08:40
Открыть/Комментировать
2022-04-21 17:28:23

1.3K views14:28
Открыть/Комментировать
2022-04-21 17:28:22 вот и следующая часть подоспела
1.3K views14:28
Открыть/Комментировать
2022-04-13 23:07:31 Не очень слежу, но тем не менее, в марте в гошечке 1.18 завезли генерики)

Я помню как они появились в c# 2.0 (а до этого я только у читал про них у Майерса). И это был кайф!

https://go.dev/doc/tutorial/generics
3.0K views20:07
Открыть/Комментировать
2022-04-07 23:15:30 Коллеги из IT's Tinkoff начинают серию стримов по книге Влада Learning Domain-Driven Design

Первый стрим уже прошел



Также в плейлисте подробный обзор книги с кабанчиком Клеппмана, тоже всячески рекомендую, если не читали или хотите свериться.
4.5K views20:15
Открыть/Комментировать
2022-03-30 21:15:35 Транзитивная архитектура – только один из паттернов поставки для замещения легаси.

Помимо паттернов поставки (delivery)
Авторы выделяют
– паттерны понимания проблематики
– паттерны разбиения проблематики
– и даже паттерны непрерывных оргизменений.

Рекомендую к ознакомлению https://martinfowler.com/articles/patterns-legacy-displacement/
3.7K views18:15
Открыть/Комментировать
2022-03-30 16:45:38 Вышел новый техрадар thoughtworks.com/radar

Что приглянулось, чтоб подробнее поразбираться:
- транзитивная архитектура https://martinfowler.com/articles/patterns-legacy-displacement/transitional-architecture.html

- КУПИДон https://dannorth.net/2022/02/10/cupid-for-joyful-coding/

- Четыре ключевые метрики https://www.thoughtworks.com/radar/techniques?blipid=1298

- Сальса https://slsa.dev/

- https://www.testcontainers.org/

и многое другое.

Как вам эта версия радара? Что вы отметили для себя на будущее?
3.9K viewsedited  13:45
Открыть/Комментировать
2022-03-26 20:39:48 Читаю сейчас не спеша новую книгу Вернона. Оказывается по следам публикации книги вышел подкаст на se-radio https://www.se-radio.net/2022/01/episode-495-vaughn-vernon-on-strategic-monoliths-and-microservices/

В целом ничего неожиданного, но Вернона всегда интересно послушать)
3.2K views17:39
Открыть/Комментировать