Python мануфактураJavaDesign Patterns для автоматизаторів

Java · Сесії: AMA та PMP · 11:51–15:00

Non-public API у Python

Один underscore, наприклад `_locator`, — домовленість «внутрішня деталь, не використовуй без потреби». Інтерпретатор не забороняє доступ. Подвійний початковий underscore запускає name mangling, щоб зменшити випадкові конфлікти в нащадках, але теж не створює security boundary. На відміну від `private` або `protected` у статично типізованих мовах, Python більше покладається на дисципліну автора й користувача класу. IDE може попередити про звернення до non-public member, але виконання зазвичай можливе.

__init__, self, page та принципи ООП →

Java · Сесії: AMA та PMP · 19:35–23:01

Інкапсуляція відкриває безпечний інтерфейс

Інкапсуляція поєднує стан і поведінку та визначає дозволений спосіб взаємодії з об’єктом. Практичний акцент — не «сховати все», а відкрити невеликий зрозумілий інтерфейс, який не змушує зовнішній код знати внутрішню послідовність дій. Користувач класу працює за правилами його публічних методів. Це знижує coupling: внутрішню реалізацію можна змінити, поки зовнішній контракт залишається стабільним.

__init__, self, page та принципи ООП →
Запитати в чаті про «encapsulation» →