it-юмор :: geek (Прикольные гаджеты. Научный, инженерный и айтишный юмор)

it-юмор geek 
it-юмор,geek,Прикольные гаджеты. Научный, инженерный и  айтишный юмор
Подробнее

it-юмор,geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор
Еще на тему
Развернуть
иногда private пишут только потому что так захотелось
Если класс имеет общее с кем то имя, у программиста после этого жопа может статус на public поменять.
crom crom 16.05.202013:21 ответить ссылка 5.4
А что значит "общее с кем то имя"? С соседом дядей Васей или что? И при чём тут имя класса если речь о методе? Или даже если была бы речь о классах, то при чём тут имя если есть неймспейсы?(если они конечно есть)
MIKEk8 MIKEk8 16.05.202021:10 ответить ссылка 0.2
Каждый класс создаётся с конкретной целью. Один или несколько публичных методов исполняют контракт класса. Остальные методы вспомогательные, существуют только для обеспечения выполнения основных методов и они не должны быть публичными, поскольку засоряют собой пространство имён класса, чем усложняют его использование к примеру другими людьми .
Rozyel Rozyel 16.05.202015:32 ответить ссылка 0.6
В таких случаях private можно заменить на protected и сделать сверху свой класс-обертку.

Но вот иногда private ставят потому, что метод реально не должен вызываться извне иначе что-то сломается.
Hellsy Hellsy 16.05.202016:06 ответить ссылка 0.3
Не вижу проблемы поменять контракт класса, если он в привате, как оказалось, делает нечто, что может быть полезно извне. Или вообще вынести к херам этот функционал в отдельный класс.
Для относительно неспецифического, то есть, не привязанного к конкретной задаче, класса - вполне частый кейс.
Вынести да, изменить контракт класса который кем то используется - так себе идея, в лучшем случае тесты упадут, в худшем баг в продакшн. Изменение на public усложнит код создавая лишние зависимости. Если бизнес логика изменится, что происходит довольно таки часто, придется проверять все связанные ветки выполнения. На больших проектах single responsibility - хлеб и соль.
Если это, например, хитрая коллекция/холдер/монада, а пртватный метод позволяет узнать некоторое, по мнению автора класса коллекции, "ненужное" свойство внутреннего состояния этой коллекции, то тут только открытие приватного метода, ну или новый метод, вызывающий тот приватный. И ни на какие тесты и прочее это не повлияет, если этот метод не вносит изменений(а вообще, copy on write рулит).
Или потому что IDE сказала что его можно сделать private, а кто я такой чтобы спорить с IDE.
MIKEk8 MIKEk8 16.05.202021:06 ответить ссылка 1.3
Если private можно поставить, его нужно поставить!
public delegate
endopit endopit 16.05.202015:49 ответить ссылка 0.0
кажется я обосрался
Шаблон "паблик Морозов".
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
One morning you wake up find out you have access to God’s developer console. What’s the first thing you do with this power?
Discussion
♦ 154 +	W 479	& Share
^ BEST COMMENTS ▼
I like forks • 5h
hehe3301 • 7h
sudo rm -rf oceans/*/contents/
*.plástic
sudo rm -rf people/*/*.cáncer sudo rm -rf v
подробнее»

it-юмор geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор без перевода it humor geek it юмор

One morning you wake up find out you have access to God’s developer console. What’s the first thing you do with this power? Discussion ♦ 154 + W 479 & Share ^ BEST COMMENTS ▼ I like forks • 5h hehe3301 • 7h sudo rm -rf oceans/*/contents/ *.plástic sudo rm -rf people/*/*.cáncer sudo rm -rf v
¿i
OR IS IT TESTING ME?
Й