ru_python_beginners | Unsorted

Telegram-канал ru_python_beginners - Python beginners

14446

Вопросы про Python для чайников. Cпам и троллинг неприемлем. Частозадаваемые вопросы: https://github.com/ru-python-beginners/faq/blob/master/README.md Правила группы: https://t.me/ru_python_beginners/1649981

Subscribe to a channel

Python beginners

Испания будет катать послезавтра

Читать полностью…

Python beginners

можно постучать в кложуры, но там тоже будет доступ

Читать полностью…

Python beginners

например можно getattr на объекте сломать, но обход ессесно будет

Читать полностью…

Python beginners

Вот, мне важно было это услышать. Потому что я думал, что я просто не могу додуматься как это сделать на python

Читать полностью…

Python beginners

это часть философии языка, we are all grown ass adults

Читать полностью…

Python beginners

Вот нашел два определения

Инкапсуляция — это объединение данных и методов для работы с ними в один «контейнер» (класс). Она отвечает за структурирование кода.
Сокрытие (Information Hiding) — это ограничение прямого доступа к внутренним компонентам этого контейнера извне. Оно отвечает за безопасность и изоляцию деталей реализации.

То есть исходя из определения инкапсуляция это просто положить все в одну капсулку/контейнер, чтобы была структура

В моем коде не было сокрытия, но в python как делают сокрытие?

Читать полностью…

Python beginners

тебе надо понимать цели этих все операций:
1. есть желание защититься от случайных некорректных действий программиста, дернувшего не то
2. есть желание дать себе гибкость в изменении реализации, ограничивая то что может юзать другой программист
3. есть желание дать красивый понятный интерфейс
4. есть желание исключить конфликты имен, полученных из разных мест (то есть оставить доступ к каждой переменной/функции, хотя называются вроде одинаково)
5. есть желание данные и функции работы с ними передавать вместе одной пачкой, чтобы менять можно было проще

Читать полностью…

Python beginners

интеншон манглинга это переименовать букву, чтобы она не пересеклась

Читать полностью…

Python beginners

определяют что есть что по интеншону

Читать полностью…

Python beginners

манглинг это просто изменение имени

Читать полностью…

Python beginners

Я читал, что такое манглинг. То есть получается, сокрытие это буквально невозможность достать переменную. В моем коде ее можно достать по специальному имени _User__credit_num, а значит это не сокрытие, мои рассуждения верны?

Читать полностью…

Python beginners

Вот я накалякал, здесь инкапсуляция или сокрытие, потому что я плаваю в этом. Интересует только на примере Python языка

Читать полностью…

Python beginners

как же я ненавижу автопереводы в доке. Вот нахуя они так делают?

Читать полностью…

Python beginners

точнее это уже финт поверх, а не напрямую имеющееся сокрытие

Читать полностью…

Python beginners

#define private public
#include "злостный_хидер"
#undef private

Читать полностью…

Python beginners

Вроде разобрался, спасибо

Читать полностью…

Python beginners

Ну я имею ввиду по канону делать как, без всяких костылей

Читать полностью…

Python beginners

сделать своё можно, но костыльно и нахуй не нужно

Читать полностью…

Python beginners

у нас есть стандарт как именовать интерналы. их лучше не трогать, если не хочешь заработать проблем. всё.

Читать полностью…

Python beginners

к инкапсуляции есть второе определение с выделением публичного интерфейса, но по сути одно предполагает другое

Читать полностью…

Python beginners

все эти вещи можно реализовывать по разному, в зависимости от того какие уже реализации есть в языке

Читать полностью…

Python beginners

Да, типо если в дочернем классе кто-то захочет создать такую же переменную, он сможет ее создать без всяких проблем. Потому что python автоматически даст разные имена

Читать полностью…

Python beginners

да с этими терминами постоянно какие-то споры, все всех запутали

Читать полностью…

Python beginners

Про манглинг я понял, мои мысли относительно моего кода по теме сокрытия верны или нет?

Читать полностью…

Python beginners

манглинг существует чтобы побеждать кроссинг имен, механизмы ограничения доступа и сокрытия существуют чтобы прикрывать доступ

Читать полностью…

Python beginners

здесь нет сокрытия, манглинг это не сокрытие и не ограничение доступа

Читать полностью…

Python beginners

а по моему прыщ в доке это круто

Читать полностью…

Python beginners

может ли существовать сокрытие в принципе в компьютерах по фон Нейману — вопрос философский

Читать полностью…

Python beginners

Тишка уже который год рассказывает что в плюсах нет сокрытия

Читать полностью…

Python beginners

Плюсы в принципе не дают сокрытия. А с темплейтами ещё хуже, ты ещё и реализацию методов светишь.

Поэтому там есть явное ограничение доступа, чтобы хоть как-то это компенсировать

Читать полностью…
Subscribe to a channel