TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #973 · 20.04

В C# есть модификатор доступа internal, который закрывает свойство или метод для всего, кроме текущей сборки (сборка это по сути группа пространств имён). И это чертовски удобно для построения правильной архитектуры по DDD — ты делаешь домен отдельной сборкой без внешних зависимостей, у сущностей закрываешь сеттеры и другие поля модификатором internal, а бизнес-правила с открытыми методами уже пишешь в агрегатах, которые содержат эти сущности. Агрегаты объявлены в той же сборке, так что они могут с сущностями делать что угодно, но слой приложения уже сможет вызвать только метод агрегата. Пример. Есть бизнес-процесс, который включает в себя две сущности: письмо и прикреплённый к нему документ. У каждой из этих сущностей разные жизненные циклы, но письмо можно отправить только в том случае, если статус документа "Согласован". Мы делаем агрегат "письмо с документом" и там public-метод отправки письма сначала проверяет статус документа, а потом вызывает internal-метод отправки в сущности письма. Снаружи (вне домена) вызвать сразу отправку письма невозможно. Но как эту задачу решают разработчики на других языках? Я совершенно не понимаю, как сделать хорошую архитектуру без internal. Окей, в некоторых языках вообще нет вменяемого ОПП и системы типов, но и к таким ребятам я бы не подходил с вопросами об энтерпрайз-архитектуре. Однако, многие серьёзные проекты пишутся на Java или, скажем, Go, что делают разработчики там? Может, кто-нибудь знает, и расскажет мне в комментариях? #dev

Hashtags

Резултати

Намерени 3 подобни публикации

Търсене: #register

当前筛选 #register清除筛选
Экспорт с Haensch

@timetoexport · Post #76 · 30.09.2022 г., 10:28

✅Экспорт мед. изделий. Возможности сегодня✅ Многие из вас ждали вебинар, который осветит реальную картину происходящего в сфере производства медицинских изделий. 13 октября в 14:00 (по Москве) наши эксперты в ходе бесплатного вебинара расскажут о том, какие географические направления открыты российским экспортерам мед. изделий сейчас. Ключевые темы вебинара: 1️⃣. Европейская сертификации по регламенту MDR EU 2017/745 (СЕ маркировка) 2️⃣. Сертификаты по стандарту ISO 13485:2016 «Изделия медицинские. Системы менеджмента качества. Требования к регулированию» 3️⃣. Возможности Группы компании Haensch для экспортеров медицинских изделий 4️⃣.Вопросы-ответы. Обсуждение. Ссылка на регистрацию:https://haensch.timepad.ru/event/2186255/?utm_refcode=8f99a857cdcba99b7efa0fd64515b6d5fa30495f)#register

Hashtags

“President Tech Award” tanlovining bootcamp bosqichi “Yangi O‘zbekiston” universitetida o‘tkaziladi! 🐦Bootcamp “President Tech Award” tanlovining muhim qismi bo‘lib, ishtirokchilarga o‘z loyiha g‘oyalarini ishlab chiqish hamda kengaytirish uchun platforma taqdim etadi. 📨Ro'yxatdan o'tish ✅Ushbu tadbir yangi aloqalar oʻrnatish, startap sohasida mutaxassislar, murabbiylar va muvaffaqiyatli tadbirkorlardan qimmatli bilim va yordam olish imkonini beradi. 📅8-avgust Toshkentda, 10-avgust Samarqandda, 12-avgust Farg‘onada. 🤝 KOICA, Gyeongbuk texnoparki, “Yangi O‘zbekiston” universiteti. 🗣 Koreyadan kelgan mutaxassislar va mamlakatdagi yirik startaplar. 🔁English ➖➖➖➖➖➖➖➖➖➖➖➖➖➖ #presidenttechaward#bootcamp#register ⬇️ Biz ijtimoiy tarmoqlarda: Veb-sayt | Telegram | Instagram | Facebook

djangoproject

@djangoproject · Post #159 · 12.09.2016 г., 17:37

https://docs.python.org/3/library/atexit.html The #atexit module defines #functions to #register and #unregister cleanup functions. Functions thus registered are automatically executed upon normal interpreter termination. atexit runs these functions in the reverse order in which they were registered; if you register A, B, and C, at #interpreter#termination time they will be run in the order C, B, A.