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

TGINSIGHT SIMILAR POSTS

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

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

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

Hashtags

Резултати

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

Търсене: #march

当前筛选 #march清除筛选

Wikipedia每日一图(#March 30, 2026)https://ift.tt/jKRlxtY Sand dunes of the Thar Desert in the Indian state of Rajasthan. On this day in 1949, the state was formed after a merger of several Rajput princely states into the Indian Union following India's independence from British colonial rule.. 了解更多 . #Wikipedia每日一图

Wikipedia每日一图(#March 23, 2026)https://ift.tt/EHIGf8M A previously unpublished illustration intended for the Saturday Evening Post's 1943 New Year's edition. It was never used due to publisher demands that the illustrator, J.C. Leyendecker, create a more optimistic and patriotic cover that was sensitive to the families of American soldiers. It was publicly shown for the first time in 2020 as part of an auction.. 了解更多 . #Wikipedia每日一图

Wikipedia每日一图(#March 22, 2026)https://ift.tt/EdkunCs Royal angelfish (Pygoplites diacanthus), Ras Muhammad National Park, Red Sea, Egypt. The body of the royal angelfish is moderately elongate, is very compressed and can reach a length of up to 25 centimetres (9.8 in) It's widely distributed throughout the Indo-Pacific and can be found in the Red Sea and Indian Ocean around East Africa and the Maldives, stretching to the Tuamoto Islands, New Caledonia, and Great Barrier Reef. The royal angelfish occurs at depths ranging from 0 to 80m (0 to 262 ft), in coral rich areas of lagoons, reefs, and are also often found in the vicinity of caves. It is a carnivorous species that feeds on sponges and tunicates located throughout reefs and underwater caves. They are a non-migratory species that can be found solitary, in pairs, or groups. Probably the most spectacular fish I've ever seen underwater in terms of colors. we have no FPs of the whole family Pomacanthidae (marine angelfishes).. 了解更多 . #Wikipedia每日一图

123•••67
ПредишнаСтр. 1 от 7Следваща