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

TGINSIGHT SIMILAR POSTS

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

Изходен канал @clockstackwheels · Post #247 · 11.03

Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе. Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода. Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу". С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой. Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого. Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :) Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие. #dev

Hashtags

Резултати

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

Търсене: #adapty

当前筛选 #adapty清除筛选

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#工具 ✅#万能电视遥控器 📱 更新版本: 1.28 👤 脚本作者: @chxm1023 🕒 更新日期: 2024-09-30 📌 脚本功能: 解锁Pro 💳 特别说明: 一次性解锁,先开启规则,在进入软件即可!如果无效按[恢复购买]进行恢复! ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#效率#AI ✅#Genie - Chatbot 📱 更新版本: 7.9.2 👤 脚本作者: @ddm1023 🕒 更新日期: 2025-03-29 📌 脚本功能: 解锁Pro ❗️ 使用声明: 仅供学习参考,请在下载后24小时内删除。禁止传播、售卖,感谢理解与支持。 💳 特别说明: 一次性解锁,先开启规则,在进入软件即可!如果无效按[恢复购买]进行恢复 ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#AI#效率 ✅#Nova-聊天/写作AI 📱 更新版本: 3.1.0 👤 脚本作者: @chxm1023 🕒 更新日期: 2024-06-21 📌 脚本功能: 解锁专业版 💳 特别说明: 一次性解锁,先开启规则,在进入软件即可!如果无效按[恢复购买]进行恢复! ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#效率#AI ✅#AiChatbot 📱 更新版本: 1.39 👤 脚本作者: @ddm1023 🕒 更新日期: 2024-11-09 📌 脚本功能: 解锁Pro 💳 特别说明: 非一次性解锁,先开启规则,在进入软件即可!如果无效按[恢复购买]进行恢复! ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#天气 ✅#CLIME-天气预报 📱 更新版本: 5.13.20 👤 脚本作者: @chxm1023 🕒 更新日期: 2024-09-04 📌 脚本功能: 解锁专业功能 💳 特别说明: 一次性解锁,先开启规则,在进入软件即可! ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#AI#图像 ✅#Sketchar-AR画图应用 📱 更新版本: 8.39.2 👤 脚本作者: @chxm1023 🕒 更新日期: 2024-09-29 📌 脚本功能: 解锁Pro 💳 特别说明: 非一次性解锁,先开启规则,在进入软件即可!如果无效按[恢复购买]进行恢复!如弹出付费就按[恢复购买]即可。 ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#翻译#效率 ✅#说话与翻译-翻译器 📱 更新版本: 6.0.11 👤 脚本作者: @chxm1023 🕒 更新日期: 2024-06-26 📌 脚本功能: 解锁内购 💳 特别说明: 非一次性解锁,先开启规则,在进入软件即可! ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#旅游 ✅#FlightTracker-飞机追踪 📱 更新版本: 8.3.6 👤 脚本作者: @ddm1023 🕒 更新日期: 2025-03-12 📌 脚本功能: 解锁Pro ❗️ 使用声明: 仅供学习参考,请在下载后24小时内删除。禁止传播、售卖,感谢理解与支持。 💳 特别说明: 一次性解锁,先开启规则,在进入软件即可!如果无效按[恢复购买]进行恢复 ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利 ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ ❗️

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#修图#图像 ✅#LogoShop-logo设计软件 📱 更新版本: 2.3.15 👤 脚本作者: @ddm1023 🕒 更新日期: 2025-05-29 📌 脚本功能: 解锁Pro ❗️ 使用声明: 仅供学习参考,请在下载后24小时内删除。禁止传播、售卖,感谢理解与支持。 💳 特别说明: 一次性解锁,先开启规则,在进入软件即可!如果无效按[恢复购买]进行恢复 ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利

#脚本#QuantumultX#Loon#Surge#Shadowrocket#Stash#Crack#adapty#修图#AI#图像 ✅#Luminar - 手机照片编辑器 📱 更新版本: 2.3.4 👤 脚本作者: @ddm1023 🕒 更新日期: 2025-04-29 📌 脚本功能: 解锁会员 ❗️ 使用声明: 仅供学习参考,请在下载后24小时内删除。禁止传播、售卖,感谢理解与支持。 💳 特别说明: 一次性解锁,先开启规则,在进入软件即可!如果无效按[恢复购买]进行恢复 ⬇️ 下载地址: 点击下载 🔗 脚本链接: 长按复制 ➡️ 一键导入: 点击导入 🔄 脚本转换: 点击传送 ✈️导航💬群组🤖投稿🎁福利