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

Дисклеймер: не надо только говорить, что я доебываюсь, это важно. Геттеров

не должно быть по принципу tell, don't ask.
Но вот, например, охранник хочет увидеть твой пропуск, ты должен показать. Кажется, что вот он гетер. Однако, вместо String getAccessCard(), лучше сделать String showAccessCard(), на худой конец просто accessCard().
Почему это важно? Такое мышление и именование помогает оставлять гетеры только там, где это действительно необходимо по смыслу.



А вообще это все эзотерика, конечно, никто от и до таких правил не придерживается, но, если стараться, то код получается меньше и читабильнее (не в смысле, как императивщики говорят, мол, вот я смотрю на портянку в 2к строк и мне все понятно, сразу все вижу, нахер ваш ооп, а в смысле того, что каждая сущность маленькая, у нее single responsibility, поэтому ей легко дать говорящее имя и при чтении легко понять, что она делает, а самое главное легко запомнить и понять архитектуру, когда все маленькое, ответственности не дублируются и у сущностей только по одной ответственности. Но, ещё раз, такого почти не бывает.
Мне нравится, например, код aeron в этом плане, рекомендую.

2 ответов

16 просмотров

Я это, новенький тут и просто интересуюсь (не срача ради): а чем accessCard() лучше getAccessCard()? get - глагол, явное действие, к тому же автодополнение с get покажет все, что можно получить. showAccessCard() - имхо, неудобно, когда карту, например, нужно отдать, а не показать - делать еще метод giveAccessCard?

ты случаем не с Егором Бугаенко работаешь?

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта