@ru_python

Страница 7943 из 9768
Bogdan (SirEdvin)
31.01.2019
11:43:34
Или класс

У меня просто флешбеки от оду, где вся логика в моделях и это очень стремно

Tishka17
31.01.2019
11:44:15
Логика самой модели может быть в модели

Bogdan (SirEdvin)
31.01.2019
11:44:50
Ну, а бизнес-логика?

Google
Tishka17
31.01.2019
11:45:00
Часть бизнес логики

Bogdan (SirEdvin)
31.01.2019
11:45:01
Которая затрагивает модель и, например, одну ее ссылку)

Tishka17
31.01.2019
11:45:14
Это бы я не стал

Bogdan (SirEdvin)
31.01.2019
11:45:43
Или скажем если у меня на один сервис с кучей кода аж одна модель, но штук 5 сервисов

Сервис который ставит модельки в очередь, сервис который слушает очередь, сервис валидации этих моделек и так далее)

Tishka17
31.01.2019
11:46:46
Ну норм

Bogdan (SirEdvin)
31.01.2019
11:48:04
А так все было бы в одной этой модели и было бы стремно :) Так что я обычно стараюсь ничего в модель не пихать, кроме логики работы с данными)

Tishka17
31.01.2019
11:48:04
Функции в нем мокнуть)
А если тебе понадобится в коде два инстанса сервиса, но с разными бэкендт.

Bogdan (SirEdvin)
31.01.2019
11:48:38
Ну, тут у меня уже будет DI нормальный. Пока что у меня такой подход только если объект всегда нужен только один

Tishka17
31.01.2019
11:49:06
Ну вот у меня сейчас прилетел проект, в котором об этом не думали

И мне надо бэкенд заменить

Bogdan (SirEdvin)
31.01.2019
11:49:49
Ну, похоже в далеком будущем кто-то будет меня ненавидеть)

Tishka17
31.01.2019
11:50:13
Ну, тут у меня уже будет DI нормальный. Пока что у меня такой подход только если объект всегда нужен только один
лучше проектировать исходя из позиции, что объектов всегда может быть много и все юзать разные реализации зависимостей

Google
Tishka17
31.01.2019
11:50:32
главное палку не перегнуть, иначе можэно инжектить всё вообще

Bogdan (SirEdvin)
31.01.2019
11:51:04
Как в ангуляре)

Tishka17
31.01.2019
11:51:52
вот у меня щас код, который парсит и нормализует входные параметры занимается тем, что формирует сразу код для базы. А код, который парсит ответ базы сразу добавляет туда данные из кэша

а мне надо базу только заменить.

а парсинг входных данных и работу скэшами оставить

“база” - условно

Bogdan (SirEdvin)
31.01.2019
11:53:26
Ну, такие штуки в своей orm, я таки добавил. Правда нельзя несколько бд использовать сразу, но это просто сложно сделать)

Tishka17
31.01.2019
11:53:52
ну у меня не ORM, у меня щас Elasticsearch в качестве бэкенда

появился

от ОРМ толку ноль было бы

kernel
31.01.2019
11:54:23
ну у меня не ORM, у меня щас Elasticsearch в качестве бэкенда
Я в итоге просто в основном потоке через цикл проверял окончена работа других потоков или нет.

kernel
31.01.2019
11:54:48
Там вложенные потоки есть.

Tishka17
31.01.2019
11:55:04
омг

kernel
31.01.2019
11:55:12
А как? Подскажи.

Tishka17
31.01.2019
11:55:31
ну то есть если у тебя кто-то запустил потоки, он пусть и ждет их завершения

а главный ждет его

ну либо общую waitgroup какую-то сделать

хз что там в питоне

kernel
31.01.2019
11:56:34
Я что то типа флагов расставил

Google
kernel
31.01.2019
11:57:03
Бля, но вот с thread.join() хз. Вроде говорят его чуть ли не обязательно ставить. Но я хз как.

Tishka17
31.01.2019
11:58:30
просто join() блокирует твой текущий поток, пока дочерний не завершится

ну то есть не дочерний, а для которого ты вызвал джойн

kernel
31.01.2019
11:58:53
Это я знаю. Он обязательный или нет?

Tishka17
31.01.2019
11:59:01
вроде нет

kernel
31.01.2019
11:59:10
уфф)

Tishka17
31.01.2019
11:59:18
но то, что ты сделал попахивает костылями

есть же condition variable например

хотя хз что у тебя там за код

Terminator
31.01.2019
12:01:35
Никита Бутов будет жить. Поприветствуем!

kernel
31.01.2019
12:01:45
хотя хз что у тебя там за код
Потом на github закину. Однако: нужно одновременно анализировать несколько соцсетей и кучу отдельных факторов. join здесь не очень подходит.

Tishka17
31.01.2019
12:02:08
может тебе больше подходит ThreadPoolExecutor?

хз что значит “анализировать” и "одновременно"

kernel
31.01.2019
12:03:47
Например, искать в комментариях слова

Сразу для нескольких групп и соцсетей

Tishka17
31.01.2019
12:06:32
сразу и одноверменно - разные вещи

kernel
31.01.2019
12:06:51
Почему?

Tishka17
31.01.2019
12:07:18
звучало как будто надо обязателньо проверять паралелльно. И нельзя сначала одну, а потом сразу другую

ладно, это уже софистика

Владимир
31.01.2019
12:07:50
Например, искать в комментариях слова
Тебе надо сначала собрать данные, потом уже анализировать. Слона надо кушать по частям. Собрал, подготовил данные, запустил анализ

Google
kernel
31.01.2019
12:08:39
А вот это здравая мысль. Пойду рефакторить.

Tishka17
31.01.2019
12:09:00
да можно и сразу анализиторать, но это должны быть независимые части

kernel
31.01.2019
12:09:14
Всмысле части?

Tishka17
31.01.2019
12:09:24
прям части проги

анализтор не должен знать о парсере и наоборот

Владимир
31.01.2019
12:09:57
да можно и сразу анализиторать, но это должны быть независимые части
Да, я подразумевал, что эту цепочку можно независимо для каждого источника данных делать.

kernel
31.01.2019
12:10:19
анализтор не должен знать о парсере и наоборот
Это если писать чисто ООП код. Я стараюсь комбинировать.

Владимир
31.01.2019
12:11:02
Это если писать чисто ООП код. Я стараюсь комбинировать.
Ты что-то путаешь. ООП и процедурный подход не имеют отношения к этому никакого

Terminator
31.01.2019
12:11:24
@DEADorHIRED будет жить. Поприветствуем!

Tishka17
31.01.2019
12:11:32
оффтопик: Kafka же не по AMPQ работает?

Ilona
31.01.2019
12:11:38
Привет! Что должен знать разраб, который работает с Voip Какие бибилитеки, стеки, технологии, что-то еще Для питона и перла

kernel
31.01.2019
12:11:48
Ты что-то путаешь. ООП и процедурный подход не имеют отношения к этому никакого
Мне показалось что он утверждает "Нужно мыслить объектно"

Владимир
31.01.2019
12:13:27
Мне показалось что он утверждает "Нужно мыслить объектно"
Смысл в том, чтобы разделить обязанности между разными частями кода.

Tishka17
31.01.2019
12:13:52
ага

kernel
31.01.2019
12:14:20
Ну я делаю это при помощи функций.

Alex
31.01.2019
12:15:10
совсем нет

Вадим
31.01.2019
12:18:59


Google
Вадим
31.01.2019
12:19:27
Как мне это передать в Python

kernel
31.01.2019
12:19:38
мм

Ruslan
31.01.2019
12:19:40
get_attribute('placeholder')

Tishka17
31.01.2019
12:19:44
совсем нет
спасиб. я тут пытаюсь по конфигам понять с какими частям инфраструктуры работает сервис

Ruslan
31.01.2019
12:20:26
value это уже другой аттрибут

Вадим
31.01.2019
12:20:54
Skipper
31.01.2019
12:21:12
Ребят а список и связанный список это одно и то же?

Ruslan
31.01.2019
12:21:42
Я понял,спасибо
пожалуйста

Michael
31.01.2019
12:24:38
список это такой концептуально массив куда можно вставлять в середину, и вначало, без переписи всего

Aragaer
31.01.2019
12:25:31
а связанный список это конкретная реализация списка

Michael
31.01.2019
12:25:34
реализуется как связный список, или двойной

иногда двойной - где связи в две стороны

Aragaer
31.01.2019
12:25:52
бывают например односвязные списки, двусвязные, прошитые, списки на основе массива, блочные и так далее

Michael
31.01.2019
12:25:58
иногда еще хитрее - в зависимости от нужды

арагаер прав

Aragaer
31.01.2019
12:26:05
питоновские например идут блоками

Michael
31.01.2019
12:26:10
но это все понты

Страница 7943 из 9768