Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2021 January 05

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ты архитектуру понимаешь?
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Под капотом это как указатели работает?
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Переслано от std::slavik
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Переслано от std::slavik
а, забыл еще сказать что кроме globals() есть еще locals()
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Переслано от std::slavik
кому интересно уже сами смотрите - как словари возвращаемые меняются внутри функций там и тд
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Айван
А, ну да.
Но вообще, лучше пересмотрел бы архитектуру т.к. глобалы — зло, уж темболее изменяемые :/
Не думаю что можно между 2 файлами передавать одно и то же без глобальных переменных
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
вообще странная херня
Я если бы проект начинал, все по другому сделал бы
А так сейчас класс кнопки если трогать начну, все сломаю к чертям
источник

А

Айван in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Глобальные переменные в большинстве случаев нарушают инкапсуляцию. К ним открыт неконтролируемый доступ отовсюду.
В большом проекте при обилии глобальных переменных возникает путаница в именах. Глобальную переменную же видно отовсюду, надо, чтобы отовсюду было понятно, зачем она.
Глобальные переменные в большинстве случаев нарушают принцип инверсии зависимостей (или делают возможным его нарушение).
Глобальные переменные ухудшают масштабируемость проекта.
Глобальные переменные ухудшают читаемость кода (в каком-то конкретно взятом месте непонятно, нужна ли какая-то конкретная глобальная переменная, или нет).
Глобальные переменные приводят к трудноуловимым ошибкам. Примеры: нежелательное изменение её значения в другом месте/другим потоком, ошибочное использование глобальной переменной для промежуточных вычислений из-за совпадения имен, возвращение функцией неправильного значения при тех же параметрах (оказывается, она зависима от глобальной переменной, а ее кто-то поменял).
Глобальные переменные создают большие сложности при использовании модульного тестирования.
Глобальные переменные увеличивают число прямых и косвенных связей в системе, делая её поведение труднопредсказуемым, а её саму - сложной для понимания и развития.

Извиняюсь за copy-paste. (Объяснение не моё)
Обычно просто скидываю это т.к. лень каждый раз перечислять.
Для меня же основной причиной является масштабируемость, а точнее её отсутствие при глобальных переменных
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
на старте говорил, что нужно относительные координаты использовать, а не абсолютные, сказали не, не надо нам такое
В итолге сейчас выясняется что оказывается на маленьком ноутбучном мониторе видно только центр приложения
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Айван
Глобальные переменные в большинстве случаев нарушают инкапсуляцию. К ним открыт неконтролируемый доступ отовсюду.
В большом проекте при обилии глобальных переменных возникает путаница в именах. Глобальную переменную же видно отовсюду, надо, чтобы отовсюду было понятно, зачем она.
Глобальные переменные в большинстве случаев нарушают принцип инверсии зависимостей (или делают возможным его нарушение).
Глобальные переменные ухудшают масштабируемость проекта.
Глобальные переменные ухудшают читаемость кода (в каком-то конкретно взятом месте непонятно, нужна ли какая-то конкретная глобальная переменная, или нет).
Глобальные переменные приводят к трудноуловимым ошибкам. Примеры: нежелательное изменение её значения в другом месте/другим потоком, ошибочное использование глобальной переменной для промежуточных вычислений из-за совпадения имен, возвращение функцией неправильного значения при тех же параметрах (оказывается, она зависима от глобальной переменной, а ее кто-то поменял).
Глобальные переменные создают большие сложности при использовании модульного тестирования.
Глобальные переменные увеличивают число прямых и косвенных связей в системе, делая её поведение труднопредсказуемым, а её саму - сложной для понимания и развития.

Извиняюсь за copy-paste. (Объяснение не моё)
Обычно просто скидываю это т.к. лень каждый раз перечислять.
Для меня же основной причиной является масштабируемость, а точнее её отсутствие при глобальных переменных
посмотри видео выше
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
думаю полезно будет
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Даниил Кустов
на старте говорил, что нужно относительные координаты использовать, а не абсолютные, сказали не, не надо нам такое
В итолге сейчас выясняется что оказывается на маленьком ноутбучном мониторе видно только центр приложения
И Сейчас сижу один за всех правлю архитектуру, потому что больше некому, а сдавать нам всем
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
они то свою часть сделали по факту, но кривовато из-за координат опять же
источник

А

Айван in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
std::slavik
посмотри видео выше
70MB :/
Что-ж, напишу как посмотрю ¯\_(ツ)_/¯
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Даниил Кустов
Как можно вот такой костыль убрать?
Возвращается либо значение, либо None
Если None присваивать не надо
music_on = music_on or music_button.draw(10)
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ясос Биб
music_on = music_on or music_button.draw(10)
Гениально :D
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Айван
70MB :/
Что-ж, напишу как посмотрю ¯\_(ツ)_/¯
думаешь на ютубчике меньше весят?
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
не знаю, зачем такие сложности навыдумывали
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ясос Биб
не знаю, зачем такие сложности навыдумывали
затем что твое решение не работает
источник

А

Айван in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
std::slavik
думаешь на ютубчике меньше весят?
Вряд ли. Просто немного напрягает скачивать столько)
источник