Форум сайта python.su
568
FishHook
Ну-ка объясни дяде.
AlekseyPythonДядя? К жене? Экий ты затейник.
Это вы к своей жене так обращайтесь.
Офлайн
294
AlekseyPythonвы хоть сами читали что там на выдаче, в основном там новички спрашивают зачем нужен self и почему без него ничего не работает.
Вот что думают другие программисты про ‘self.’:
[code python][/code]
Офлайн
0
Если уж хотите чегонить нарыть гуглите “python self hell”
Офлайн
0
FishHookТам написано "Ну-ка объясни дяде." К тому же нет запятой, которую используют при обращении.
Дядя? К жене? Экий ты затейник.
Офлайн
857
AlekseyPythonПонимаешь, вся эта модульная система, пакетная система хоть в каком языке сделана не просто так. Она несёт определённую функцию в разработке проекта. Пакет или модуль является абстракцией. Мы берём эту абстракцию и используем. Мы просим её сделать что-то. Например, пакет “Машина” включает в себя всё, что касается машины. Мы можем с его помощью собрать машину, починить машину, запустить машину. То, как это делается, лежит полностью на этом пакете (пакет - это набор модулей, а модуль - набор классов, а класс - набор операций). Поэтому когда тебе надо взять машину и поехать на ней в другом проекте, ты её не пишешь с нуля, а берёшь пакет “Машина” и копируешь его в другой проект. Таким образом ты сегодня написал одну машину, а завтра использовал её в десяти разных проектах. Так ты экономишь своё время. Потом всё сводится к сборке нового проекта путём копирования в него уже разработанных пакетов. Так за день можно написать большую программу. Ну и пакет может быть компонентом программы, но и компонент программы может состоять из нескольких пакетов. Понимаешь масштабы?
Второй раз напишу: я ничего не объединяю в пакеты и не создаю компоненты.

AlekseyPythonДля функций мы создаём пространство имён. Либо оно в виде класса как коробочки для функций, либо оно задаётся в имени древним способом. Просто в питоне функции почти не используются. Если же они используются, то их ограниченное количество и они заперты в своём модуле. Помнишь, да, если функций стало слишком много в модуле, то что-то не то и надо перепроектировать это дело, так как код должен читаться в любом случае (удерживать в голове нужно как содержимое одной функции свободно, так и содержимое одного модуля свободно).
Тоже самое можно сказать про функции. Почему за константы боимся, а за функции нет? Тогда получается и все функции надо оборачивать классами, чтобы не было пересичения имен.
Отредактировано py.user.next (Дек. 5, 2018 01:26:59)
Офлайн
0
py.user.next, спасабо за теорию.
Офлайн