MoneyLover
то что ты из ру - я уже понял
🍁 Jaŭhien
MoneyLover
для него русские номера отображаются ( на его же скрине )
MoneyLover
сервис мультиязычный просто)
MoneyLover
по айпи детектит
🍁 Jaŭhien
Коля, беги!
MoneyLover
В общем, если есть кто из Киева кто осилит данный стэк, прошу в личку
MoneyLover
старое описание продукта
Nikolay
17
🍁 Jaŭhien
А вчера вообще вторник был
Tigran
У нас тут положено к вакансиям вилку прикреплять
MoneyLover
извиняюсь, у меня несколько вариантов сотрудничества. Есть торговая марка и .ua и ООО
можно работать как на партнерских так и на зп, но все нужно обсуждать
🍁 Jaŭhien
Иван
Транзакции же
А в чем с ними проблема?
Я пока не улавливаю суть
Tigran
Tishka17
Вообще, save больше похож что должен быть в репозитории или слое бизнес логики, но точно не в самой сущности
Anonymous
Aragaer
я могу ошибаться и с чем-то путать, но по-моему создание экземпляра сущности не заносит его автоматически в базу данных. save() нужен именно для этого. В частности он присваивает id
Roman
Привет. Как работает import одной и той же библиотеки многократно использующийся в разных частях сткрипта (например import os в основном теле скрипта, в модулях и в классах), импортируется библиотека 1 раз или каждый раз при встрече этой инструкции?
Aragaer
Roman
один раз
т.е. в классе можно и злоупотребить?
Aragaer
не стоит
Aragaer
вообще лучше не использовать локальных импортов
Tishka17
Aragaer
да
Tishka17
Tishka17
🍁 Jaŭhien
Aragaer
если что-то редкое, разовое и локальное, то я и сам делаю локальные импорты
Tishka17
Я делаю локальные только если они от конфига зависят или других подобных факторов
Anonymous
pishite
Подскажите не могу вникнуть в функции, а имеено в зарезервированные слова: global, local, nonlocal
Tishka17
Например, тип коннектора к базе
pishite
Кто-то может простым языком объяснить
Tishka17
Или реализация интерфейса другого
pishite
Слишком заумно в книге
Anonymous
Что можете о коде в этом боте? https://github.com/MaxiFilippov/news_bot
Anonymous
Так удобней работать с кодом
Не улучшает, кстати. У тебя в хедере ебашится импорт какой-то лузлы. Сам файл на несколько тысяч строк. Создается ложное впечатление, что енто что-то распространенное и часто юзабельное. А по факту там один вызов где-то.
Так быть не должно
Anonymous
Anonymous
Tigran
ну я догадался, да
Tigran
Anonymous
Anonymous
Имхо, лучше подозвать коллегу, который не знаком с кодом и спросить, что легче читается
Roman
еще вопрос, как отлавливаете выход из скрипта, вызванный извне? (особенно Ctrl + Z интересует) (мне нужно грамотно треды останавливать, чтобы потом не висели в системе)
Roman
Tishka17
Anonymous
Иван
index.py - главный файл
1. Entrypoint обычно лучше именовать main или как-то так
2. global не оч хорошо в коде юзать
3. Много лишних комментариев там, где они не нужны. Не нужно писать над функцией, что она делает. В идеале, по названию и коду должно быть понятно
âDêšwu öBipci
Кто в курсе, в селери id задачи это строка?
âDêšwu öBipci
Написано uuid, но я чёт не уверен какой тип именно это означает
Roman
еще вопрос, как отлавливаете выход из скрипта, вызванный извне? (особенно Ctrl + Z интересует) (мне нужно грамотно треды останавливать, чтобы потом не висели в системе)
Иван
index.py - главный файл
Вот эта вся функция выглядит очень не очень
https://github.com/MaxiFilippov/news_bot/blob/master/change_all_settings.py#L25
🍁 Jaŭhien
âDêšwu öBipci
Иван
Лучше избегать больших функций, которые мало делают
Aragaer
ориентир, который я где-то уцепил и мне он очень понравился
Aragaer
если файл больше 200 строк, то в нем наверно овердохрена всего и надо бы начать делить
Nikolay
Брехня
Aragaer
200. Двести
Tigran
ну это не про го, конечно)
âDêšwu öBipci
Я и в проектах на 1к+ строк нормально ориентируюсь. Даже спустя годы.
Aragaer
пожалуй да, не про го
âDêšwu öBipci
На один файл, да.
Aragaer
я плохо ориентируюсь, но у меня вообще с памятью и внимательностью плохо
Aragaer
200 строк ок
Aragaer
кстати, я на жаве такого ограничения старался придерживаться
Richard
200 строк файл?
âDêšwu öBipci
Если нормально и логично разбивать на блоки кода, то все читаемо.
Anonymous
Ташке ща контрольный в голову засажу: uvloop в основном файле, loop.c, содержит 163 000 строк.