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

TGINSIGHT SIMILAR POSTS

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

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

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

Hashtags

Резултати

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

Търсене: #geniusfoundation

当前筛选 #geniusfoundation清除筛选
Crypto M - Crypto News

@CryptoM · Post #65235 · 12.04.2026 г., 07:19

🚀 Binance Alpha to Debut Genius Foundation (GENIUS) Token on April 13 According to Binance Wallet's post on X, Binance Alpha will be the first platform to list Genius Foundation (GENIUS), with trading scheduled to open on April 13. Eligible users will be able to claim an airdrop using Binance Alpha Points on the Alpha Events page once trading commences. Further details are to be announced. #BinanceAlpha#GeniusFoundation#GENIUS#airdrop#cryptocurrency#blockchain#Binance#April13

Crypto M - Crypto News

@CryptoM · Post #65451 · 13.04.2026 г., 09:17

🚀 GENIUS Airdrop Opens on Binance Alpha: 240 Tokens for Users With 230+ Alpha Points According to Binance Wallet's post on X, Binance Alpha will debut Genius Foundation (GENIUS) on April 13, 2026, at 11:00 UTC, making it the first platform to list the token. Users holding at least 230 Binance Alpha Points may claim a 240-GENIUS airdrop on a first-come, first-served basis; claiming consumes 15 Alpha Points. If the reward pool remains undistributed, the points threshold automatically drops by 5 every 5 minutes. Claims must be confirmed on the Alpha Events page within 24 hours or are forfeited. #GENIUSAirdrop#BinanceAlpha#GeniusFoundation#Airdrop#Crypto#AlphaPoints#Binance#Token#Blockchain#CryptoEvent