Столкнулся с какой-то глупостью. Веб-приложение. Достаточно крупное. С ветвистыми модулями. От точки входа к модулю как передать конкретно данный для данный сессии коннект к базе данных? Сейчас все функции просто тащат за собой и передают дальше некий env.
"модули в питоне - это объекты" - эээээ
"Возможно передай по ссылке" - так и фигачить во всех функциях передачу дальше? Я хотел бы узнать как делают
Сейчас я решил немного странным способом. Хотя не вижу почему бы и нет. Я запихал все функции модуля в класс, постановил в спецификации проекта, что объекты нужны для контекстуализации и да, пихаю в объект
schors, я вот тоже пытаюсь в твои установки врубиться и не пойму в чем проблема. Ну импортнул ты модуль. Он в адресном пространстве твоего приложения. Допустим там объект какой создался. У него где-то там коннект к БД передать надо. Ну так приконекться к БД и отдай ему. Зачем тебе при наличии ООП думать о том, как какой-то внутренней функции чего-то там передастся? Объект - это черный ящик. Ты ему на вход/входы отдал требуемое, с выхода получил что тебе нужно и что там внутри и как обрабатывается - вообще не должно тебя волновать.
А если ты о том, что импортируешь через from {module} import {func} as myfunc, так воспринимай, как реплицирование функции в свое приложение и работай с ней как с функцией.
Может я чего-то не так понимаю?
schors, бвахаха! Go - не ООП. Ну не классическое ООП скажем так.
Вот например http://habrahabr.ru/post/243593/ почему рассказывается.
Ну или вот тут на буржуйско и более развесисто
http://spf13.com/post/is-go-object-oriented/