
Sheridan
22.01.2019
23:39:02

Владимир
22.01.2019
23:39:23
да?
Да) Если ты с С-подобных пришел в питон, то какое-то время будешь испытывать ломку привычных связей в мозгу. Потом возвращаться не захочешь.

Sheridan
22.01.2019
23:39:29
если бы он умел что я хочу - я бы уже реализовал хотелку и принялся за другую

Google

Donaudampf
22.01.2019
23:40:13

Владимир
22.01.2019
23:40:18
спорно, очень спорно
Питон все верно сделал. Он наказал за путанное множественное наследование и заставил рефакторить код

Sheridan
22.01.2019
23:41:44
так что возвращаться в люой язык мне не привыкать
оно станет менее путанным если я начну просто параметры об dict передавать?
нет, не станет
тогда почему?

Владимир
22.01.2019
23:43:04

Sheridan
22.01.2019
23:43:17
разные классы
разное делают

Владимир
22.01.2019
23:43:42
Так зачем ты их смешиваешь

Google

Donaudampf
22.01.2019
23:43:52
в случае с множественным наследованием - в питоне через mro решена проблема, которая в некоторых других языках решена запретом такого наследования в принципе. Так что не надо тут

Sheridan
22.01.2019
23:43:52
общий предок для плагинов и класс, реалузкющий веб-листен сокет

Donaudampf
22.01.2019
23:45:09

Sheridan
22.01.2019
23:47:03
Так зачем ты их смешиваешь
смотри, общий для плагинов предок реализует набор опций, поставляет плагинам хранилище, при необходимости оборачивает плагины в поток.
А листенер просто открывает сокет и ждет веб-хука.
В итое получается плагин, который уже умеет много унаследованного от предка плагинов и ему в перелопределенную функцию прилетают вебхуки, перехваченные аторым классом
почему это - проблема?

Владимир
22.01.2019
23:47:38
какая именно проблема?
А в чем проблема? На скрине нормально вызываются инит методы. Через супер не получиться сделать, так как супер прогонит по МРО, а у тебя инит с разными аргументами.

Sheridan
22.01.2019
23:47:42

Владимир
22.01.2019
23:48:23
кресло у нее хорошее

Sheridan
22.01.2019
23:48:24

Donaudampf
22.01.2019
23:48:36
что с ним не так?
в том, что без линеаризации это либо неопределённый порядок вызова методов либо неподдерживаемый говнокод с ручным явным вызовом методов

Sheridan
22.01.2019
23:49:45

Владимир
22.01.2019
23:49:48

Donaudampf
22.01.2019
23:50:43

Google

Sheridan
22.01.2019
23:50:57
окай, спасибо
пойду вызывать конструкторы руками

Donaudampf
22.01.2019
23:51:31

Sheridan
22.01.2019
23:52:01

Владимир
22.01.2019
23:52:25

Donaudampf
22.01.2019
23:52:40

Владимир
22.01.2019
23:52:54
А разные аргумент легко организовать
достаточно определять иниты с поддержкой args, kwargs

Donaudampf
22.01.2019
23:53:16

Владимир
22.01.2019
23:53:20
и вызывай супер хоть до посинения)

Sheridan
22.01.2019
23:53:25

Artem
22.01.2019
23:53:34

Владимир
22.01.2019
23:53:37
а если сигнатуры разные, то будь добр указать какой инит надо вызвать

Sheridan
22.01.2019
23:54:08

Винни
22.01.2019
23:54:33
Можно ли, а самое главное, как, в Андроиде получить доступ к сообщениям и звонкам? Чтобы, допустим, ретранслировать их по сокету на другое устройство. Делать приложение буду на kivy, т.к. это пока что единственный нормальный вариант

Владимир
22.01.2019
23:54:35
оО

Sheridan
22.01.2019
23:55:00

Владимир
22.01.2019
23:55:04

Donaudampf
22.01.2019
23:55:06

Владимир
22.01.2019
23:56:15
Так тут мро поломано

Google

Donaudampf
22.01.2019
23:56:17

Винни
22.01.2019
23:56:29

Donaudampf
22.01.2019
23:56:30
ну а я о чём

Винни
22.01.2019
23:56:50

Владимир
22.01.2019
23:57:00

Винни
22.01.2019
23:57:19
На сях что ли?
Ибо насколько я знаю, то в новых андроидах эту лавочку прикрыли

Sheridan
22.01.2019
23:57:19

Винни
22.01.2019
23:57:39

Donaudampf
22.01.2019
23:58:11

Владимир
22.01.2019
23:58:44

Admin
ERROR: S client not available

Sheridan
22.01.2019
23:59:27
это уже что-то религиозное
нет, просто перекидывать туда-сюда мусор умеют и джуны. А если ты считаешь себя программистом, то надо уметь писать четко работающие алгоритмы с понятно откуда приходящими и куда узодящими данными

Владимир
22.01.2019
23:59:41

Sheridan
23.01.2019
00:00:11

Владимир
23.01.2019
00:00:20

Sheridan
23.01.2019
00:00:32

Винни
23.01.2019
00:00:56

Sheridan
23.01.2019
00:01:01
ну и как бы это - задача программиста, его работа. А не тяп-ляп-прод, как сейчас модно

Donaudampf
23.01.2019
00:01:55

Владимир
23.01.2019
00:03:11
ну и как бы это - задача программиста, его работа. А не тяп-ляп-прод, как сейчас модно
ну вот в коде выше, на скрине твоем, что не так? Ты смешал два класса, тебе надо родительские проинициализировать. У них разные сигнатуры. Чисто логические как ты одним вызовом такое хочешь сделать? Через перегрузку? Это нечитаемо. Питон за ясность. Таким образом заставляет тебя либо осмыслить еще раз архитектуру, либо вызывать нужный метод базового класса явно.

Google

Sheridan
23.01.2019
00:03:23

Владимир
23.01.2019
00:04:11
не понятно

Sheridan
23.01.2019
00:04:21

Donaudampf
23.01.2019
00:05:23

Sheridan
23.01.2019
00:05:38

Donaudampf
23.01.2019
00:06:00
примерно так со стороны выглядят эти хотелки и паническая боязнь *args, **kwargs

Sheridan
23.01.2019
00:06:47
сейчас пишу этот плагин. С такой архитектурой мне нужно просто описать метод hook. Всё остально взлетит и зацйепится само

Владимир
23.01.2019
00:09:59
Так проблема то в чем? Инит руками приходится писать?

Sheridan
23.01.2019
00:10:51

Владимир
23.01.2019
00:11:22

Sheridan
23.01.2019
00:12:07

Donaudampf
23.01.2019
00:12:14

Sheridan
23.01.2019
00:12:33
ромбовидное наследование - достаточнео часто применяется
наличие такого мусора я и терпеть не могу

Владимир
23.01.2019
00:13:34