Все верно в целом говоришь, но я все же реквестирую пример языка с динамической типизацией и полноценной инкапсуляцией.
А что касается тс-истерички, то я как всегда неоригенален, ибо ЯЗАБАН.
К сожалению не знаком, прошу уточнить два пункта: private члены там действительно private или __каквпистоне(); Отсутсвует ли возможность изменения/добавление полей вне класса?
И еще очень интересует как с этим в ruby, ибо хочу потыкать его, но боюсь разачарований, как с питоном.
Если ооп часть языка, то зависит от. Если нет, то приват кладется в локализованный хеш по инстансу. Если инкапсуляция не религия, то не критично, разве что для поддержки в с* лучше делать импл, чем пересобирать мир.
Это ты сейчас про питон, или в общем? Как-то много «если»...
не критично
Такая псевдоинкапсуляция не может быть инкапсуляцией по определению. Вопрос криитичности наличия инкапсуляции это уже частный вопрос, ответ на который зависит напрямую от разработчиков. Ящитаю что если ООП, то инкапсуляция должна быть. Имеешь такое же право со мной не согласиться.
Я надеюсь, у тебя нет предвзятого мнения о Common Lisp? Так вот там вообще нет никаких private/public полей (слотов, как они там называются). Но ты можешь писать accessors (функции для доступа к слотам) или генерировать их автоматом. Единственный минус с тамошней инкапсуляцией - нет статических методов.
Кой-где ещё тоже нет public/private, а доступ к переменным экземпляра осуществляется через getter/setter
Ценю и уважаю, только вот только он все же более функциональный...
public/private
здесь и ранее public/private употреблялись не в виде конектреных модификаторов, а как характеристика скрытых и открытых полей класса. Понятно что это может осуществляться не только через модификаторы.
доступ к переменным экземпляра осуществляется через getter/setter
Кстати считаю это наиболее правильным: все по умолчанию скрыто, а к чему уже доступ - осуществляется интерфейс в виде геттеров/сеттеров. Сам себя приучил сразу так писать.
Страшно становится, когда я наблюдаю, что делает с людьми (на примере ув. Bizun) петухон! Вот уж действительно омерзительное поделие, надеюсь, что не придется с ним сталкиваться.