170 похожих чатов

Ее выражение все будет ограничено техническими проблемами. Вот у вас

пост, и в нем комментарии. Если мы хотим выразить домен как можно больше в коде, то наверняка будет что-то типа

type Post struct {
Id int
Comments []Comment
}

Только что этот код значит? Что каждый раз, когда мы подтянем пост, у нас сразу подтянутся комментарии? А сколько их подтянется? Мы же не можем подтянуть все. Да и не нужны нам каждый раз комментарии, в основном только для отображения поста. И как у нас сохраняются комментарии? Пушим просто в поле Comments и оно сохранит посты с комментарием? Скорее всего нет. В общем, оно только внешне отображает домен, но оно не отображает технический аспект никак, который мы должны учитывать

1 ответов

9 просмотров

ну вот вы привели пример из го на котором и правда ничего не понятно а теперь смотрим на питон class Post: @property def id(self): pass def comments(self, limit=100, offset=0): pass мне не нужно знать есть ли там комментарии и сколько их, в случае необходимости они благодаря сахару лениво подгрузятся при обращении к свойству comments я просто беру этот класс и использую дальше с такими же высокоуровневыми абстракциями, которые легко создаются несколькими строками кода на го же мне бы пришлось реализовывать это всё руками и низкоуровневые вещи торчали бы изо всех щелей

Похожие вопросы

Обсуждают сегодня

$params = [ 'formid' => 'feedbackForm', 'formTpl' => '@CODE: <form class="form-validate" data-id="ajax_form"> <fieldset class="margin-bottom-md"> ...
Pathologic
1
И ещё вопрос: можно ли типа как на дос как-то запариться и с помощью прерываний выводить текст, вместо функции printf ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
34
Ладно, ещё тупого спрошу. Код должен банально вывести значение регистра на консоль, на деле же не выводя ничего, просто оставляя нерабочую консоль (открыта, ничего не написан...
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
25
здравствуйте. пытаюсь проверить, содержится ли в десятичном представлении инта некоторая цифра. совершаю: strstr(x, "5") != NULL) получаю ошибку с фото (заведомо неработающий ...
Катя Шевчук🪇
18
Что там вообще с кроссплатформенностью?
🄼🄰🄺🅉🄰🄸
23
Ребята. Этот вопрос мучает меня уже 13 - 15 лет. Почему при валидации в ФормЛистере у поля phone поведение странноватое и отличается от других? А именно, вот набор правил д...
Андрей [aharito] Харитонов
1
Доброй ночи. Вопрос знатокам. Имеется некая таблица, результат которой выведен в DBGrid на форме. И есть форма, с помощью которой можно как добавить запись, так и отредактиров...
Евгений
28
{ char buff = *start; *start = *end; *end = buff; } Из-за этой строчки? Что каждый символ через перем бафф? Как вариант использовать другие со...
Wenks
12
а всё почему? потому что ассемблер в отличии от яву порождает множество пагубных привычек, среди которых например можно отметить использование глобальных переменных для всего ...
Mixail Frolov
35
Кстати, а я вот тут подумал. Допустим, у нас имеется цикл который выполняет огромное количество итераций, но мы хотим, чтобы какие-то действия исполнилось только один раз. В Я...
The Bird of Hermes
23
Карта сайта