@placeholderpics · Post #59476 · 10.04.2026 г., 23:00
夜明けちゃん@🍈新刊委託中: 夜明け °˖✧🌅#OC https://twitter.com/yoayoake/status/2042567428341928088
Hashtags
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #247 · 11.03
Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе. Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода. Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу". С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой. Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого. Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :) Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие. #dev
Hashtags
Търсене: #oc
@placeholderpics · Post #59476 · 10.04.2026 г., 23:00
夜明けちゃん@🍈新刊委託中: 夜明け °˖✧🌅#OC https://twitter.com/yoayoake/status/2042567428341928088
Hashtags
@placeholderpics · Post #59361 · 05.04.2026 г., 05:21
Toga//トガ: #oc white which https://twitter.com/toganawa4857/status/2040630723892449570
Hashtags
@placeholderpics · Post #59292 · 01.04.2026 г., 18:48
HoYo: #oc spring rain🌸 https://twitter.com/hoyo_illust/status/2039198569878503485
Hashtags
@placeholderpics · Post #59259 · 30.03.2026 г., 21:06
佐々米: 白い森のアリス #oc https://twitter.com/SasaG_yd2/status/2038586034066514146
Hashtags
@placeholderpics · Post #59218 · 26.03.2026 г., 19:52
とき@VGGC11th【A-27,28】: 無防備すぎる灰色ちゃん #OC https://twitter.com/toki_ship8/status/2036770130852745509
Hashtags
@placeholderpics · Post #59217 · 26.03.2026 г., 19:52
百千たまる │ VGGC11th【C-01-02】・コミティア155【U49b】: 止まってくださーい🐰👮 #oc https://twitter.com/momochi_ee/status/2037123230264418382
Hashtags
@aqburchik · Post #25654 · 12.04.2026 г., 11:18
сегодня мне 26. мне будет приятно если скажете что-то хорошее. #oc
Hashtags
@limnosdsstation · Post #11069 · 15.04.2026 г., 20:20
https://x.com/r_ws2l/status/2038225998110683247 野乃々 のっち : #oc
Hashtags
@waitingwhatoncewas · Post #10485 · 23.06.2024 г., 18:33
[#oc]
Hashtags
@zince_general_collection · Post #9714 · 05.05.2026 г., 16:30
ふらいさち☕: #OC https://twitter.com/sachi_furai/status/2020784737413996590
Hashtags
@chiki_log · Post #6007 · 25.09.2025 г., 11:18
#oc
Hashtags
@chiki_log · Post #5956 · 25.08.2025 г., 19:02
#oc
Hashtags