Size: a a a

2020 September 27

AD

Apache DOG™ in pro.cxx
Побитый Кирпич
1) проблема надуманна
Х.х. и в продакшн?
источник

ПК

Побитый Кирпич... in pro.cxx
Apache DOG™
Х.х. и в продакшн?
Тем более
источник

AD

Apache DOG™ in pro.cxx
Что тем более, вы просто пишете "как нибудь" без задней мысли и думания о последствиях?
источник

ПК

Побитый Кирпич... in pro.cxx
Apache DOG™
Что тем более, вы просто пишете "как нибудь" без задней мысли и думания о последствиях?
Надо просто публичный контракт грамотно дизайнить. И потом чтоб публичный интерфейс ему соответствовал и не ломал
источник

ЕП

Евгений Попов... in pro.cxx
источник

ЕП

Евгений Попов... in pro.cxx
Думал что кому-нибудь интересно будет
источник

ЕП

Евгений Попов... in pro.cxx
Всем привет
источник

ЕП

Евгений Попов... in pro.cxx
Плюсы превращаются в кашу
источник

ПК

Побитый Кирпич... in pro.cxx
Корутины для невнимательных инженеров
источник

ЕП

Евгений Попов... in pro.cxx
Вы меня на мемы тащите?
источник

ЕП

Евгений Попов... in pro.cxx
Читал что в Go что-то подобное есть
источник

ЕП

Евгений Попов... in pro.cxx
В новых языках проще с новыми фичами так как чистый лист не имеет сформировавшего скелета
источник

ЕП

Евгений Попов... in pro.cxx
Нет риска нарушить согласованную картину
источник

m

magras in pro.cxx
PRoSToC0der
yield_value разве можно без аргументов? (ну и соответственно co_yield без expression?)
Действительно нельзя. Да и возвращать yield_value() должен awaitable. Сейчас добавлю апдейт, что этот код - бред.
источник

m

magras in pro.cxx
ed braed
Господа, меня вот какой "архитектурный" вопрос волнует..
Предположим есть несколько объектов (не имеющие наследственной связи), которые должны как-то общаться между собой (например иметь ссылки друг на друга, или просто доступ к чужим данным, не суть важно).
Очевидно что в этом случае мы можем пойти как минимум 2мя путями:
1) Объявить некий публичный интерфейс к нужным данным.
2) Объявить некий приватный интерфейс и тупо начать френдить.

Оба варианта как по мне тухлые:
1 - создаёт опасность того, что этим интерфейсом воспользуется тот, кто им воспользоваться не должен.
2 - создаёт прям-таки железобетонные связи между классами, которые потом проблематично отслеживать и модерировать.
Ну и френды считаются мувитоном и признаком хреновой архитектуры, насколько я понимаю.

Собственно существует ли какая-то хитрость до которой я не догоняю, или проблема на самом деле надуманна?
Я с таким в основном встречался когда два класса жестко связаны. Например контейнер и итератор. В таких случаях я обычно объявляю итератор внутри контейнера, а контейнер использует только публичный интерфейс итератора.
источник

AD

Apache DOG™ in pro.cxx
Побитый Кирпич
Корутины для невнимательных инженеров
Внимательность антипаттерн
источник

ПК

Побитый Кирпич... in pro.cxx
Apache DOG™
Внимательность антипаттерн
А без нее никуда в программировании
источник

ЕП

Евгений Попов... in pro.cxx
Побитый кирпич, поддерживаю
источник

ЕП

Евгений Попов... in pro.cxx
Ники перепутал
источник

AD

Apache DOG™ in pro.cxx
Побитый Кирпич
А без нее никуда в программировании
Вообще говоря, это есть лимитирующий фактор надёжности, по сему, чем больше исключаешь её влияние, тем надёжнее будет работать.
источник