@ru_python

Страница 7829 из 9768
Sheridan
22.01.2019
23:04:58
как раз классы атомарны



вот всё что мне надо от помошника потоков



Google
Donaudampf
22.01.2019
23:07:28
ThreadHelper практически мимикрирует под Thread

Alex
22.01.2019
23:07:33
ты можешь объяснить а на зачем ты сделал класс ThreadHelper, который делает все то же что и стандартный тред?

ThreadHelper практически мимикрирует под Thread
он не то чтобы мимикрирует, а взаимозаменяем

и не несет никакой смысловой нагрузки

afk

Sheridan
22.01.2019
23:10:10
ты можешь объяснить а на зачем ты сделал класс ThreadHelper, который делает все то же что и стандартный тред?
да, могу. В итоге у меня меньше кода. Я просто наследуюсь от класса и определяю метод run() Бонусом имею возможность расширить свой класс в любую нужную мне сторону и это расширение зацепит все, где это уже используется

а - архитектура, п - плпнирование Как бы банально это не звучало

Alex
22.01.2019
23:11:55
б) в итоге ты получил кусок слабоуправляемого говна, т.к. кроме как запустить тред ты с ним больше ничего сделать не можешь

Sheridan
22.01.2019
23:12:20
а кто запрещает наследоваться от Thread сразу?
А кто запрещает сделать так как я сделал?

Donaudampf
22.01.2019
23:12:23
тут скорее пп - преждевременное планирование

Alex
22.01.2019
23:12:25
и то что он у тебя вывалился ты не узнаешь

Google
Sheridan
22.01.2019
23:12:58
Donaudampf
22.01.2019
23:13:00
А кто запрещает сделать так как я сделал?
никто, просто не разобравшись в языке городить псевдоэнтерпрайз, пытаясь предусмотреть сразу всё - ну так себе

Alex
22.01.2019
23:13:13
вот теперь я точно afk

Владимир
22.01.2019
23:15:01
Какие разделы математики нужны программисту ? ?
Конечные автоматы, комбинаторика, теория графов, тер. вер, мат. стат, теория алгоритмов, ангем, линейка, численные методы. Обычно эту базу прогоняют в универе. Качество такого вдалбливания минимально. Но хотя остаточные знания потом помогут искать нужную информацию в правильном направлении. Где что пригодится зависит от типа ПО, который будешь делать. Может кроме алгоритмов и структур данных то и не понадобиться ничего, а может численные методы будут постоянно нужны, а может геометрические решатели делать придется и т.д. Все зависит от задач.

Donaudampf
22.01.2019
23:16:08
а по поводу разных аргументов - я предполагаю, это тоска по перегрузке функций в плюсах. В питоне этого нет, функция получает набор аргументов и решает, что с ним делать

Donaudampf
22.01.2019
23:16:51
как вариант - можно ещё использовать классметоды и что-то типа шаблона Builder емнип

Sheridan
22.01.2019
23:17:27
как вариант - можно ещё использовать классметоды и что-то типа шаблона Builder емнип
или забыть что питон умеет какбы переопреелять методы и придумывать разные имена

Владимир
22.01.2019
23:17:33
Все бери и проси ещо. Я вот жалею щас что ушол с третьего курса ПМ на АСОиУ, так как считал что мало практики.
Я заканчивал сначала колледж при универе, потом универ. В колледже было много практики, в книвере много сухой теории. Повезло.

Sheridan
22.01.2019
23:18:31
Я заканчивал сначала колледж при универе, потом универ. В колледже было много практики, в книвере много сухой теории. Повезло.
аналогично. Только ПТУ у меня было с паяльником, а конпутеры УКНЦ МС-0511. Хорошо что хоть паскаль был...

Sheridan
22.01.2019
23:19:16
питон умеет перегружать функции. functools.singledispatcher
у питона всё плохо с наследованием, лучше не нарываться

Владимир
22.01.2019
23:19:19
И кстати, все у него хорошо. Просто надо понимать как работает линеаризация в МРО, чтобы не напарываться на странное поведение. Множественное наследование во всех языках может свинку подсунуть

Sheridan
22.01.2019
23:20:35
ну, у нас был профильный колледж. ТАм 4 года программирования было)
ну у меня три. Год с паяльником, два - бейсик. Но я ближе к паяльнику был, так как писал лабы на паскале и мастера меня нахер выгоняли с занятий в лругую комнату попаять

вот я в питоне не понимаю

Google
Sheridan
22.01.2019
23:21:21


и хотел писать так

Владимир
22.01.2019
23:21:32
там очень простой алгоритм

Sheridan
22.01.2019
23:21:37
но питон такое не тянет без сайдэффектов

паяльник это хорошо. я люблю это дело. Аналог даже больше цифры)
кек, у меня ща сбоку висит хардверный мониторинг на диодах под ардуинкой )

Donaudampf
22.01.2019
23:22:23
может поможет что-то типа этого, если хочется один класс создавать кучей разных способов

If you create new objects inside your __init__ it may be better to pass them as arguments and have a factory method instead. It separates business logic from technical details on how objects are created. In this example __init__ accepts host and port to construct a database connection: class Query: def __init__(self, host, port): self._connection = Connection(host, port) The possible refactoring is: class Query: def __init__(self, connection): self._connection = connection @classmethod def create(cls, host, port): return cls(Connection(host, port)) This approach has at least these advantages: • It makes dependency injection easy. You can do Query(FakeConnection()) in your tests. • The class can have as many factory methods as needed; the connection may be constructed not only by host and port but also by cloning another connection, reading a config file or object, using the default, etc. • Such factory methods can be turned into asynchronous functions; this is completely impossible for __init__.

Владимир
22.01.2019
23:22:47
кек, у меня ща сбоку висит хардверный мониторинг на диодах под ардуинкой )
Если упрощенно, то МРО будет действовать слева направо. Если не найдет у предков подходящий метод, то отрыгнет ошибку

В.
22.01.2019
23:24:07
что я не так делаю? отправляю запрос на скрипт питоновский, но на стороне сервера ничего не принимается $.ajax({ async: true, type: "POST", url: "/url/local/bin/script.py", data: JSON.stringify({'url': 'Привет!'}), dataType: "json", success : function() { document.write("текст"); } }); прием: import json, sys my = json.load(sys.stdin) print('Status: 200 OK') print('Content-Type: text/json')

Sheridan
22.01.2019
23:24:15
https://youtu.be/WiKOLyi_XfU

Владимир
22.01.2019
23:24:35
кек, у меня ща сбоку висит хардверный мониторинг на диодах под ардуинкой )
у меня арм валяется))) но руки до него не доходят. он лежит и с укоризной смотрит.

Donaudampf
22.01.2019
23:25:18
питон умеет перегружать функции. functools.singledispatcher
синглдиспатч - это не перегрузка

Владимир
22.01.2019
23:25:32
Sheridan
22.01.2019
23:25:35
у меня арм валяется))) но руки до него не доходят. он лежит и с укоризной смотрит.
ну армов у меня два nexus7. Ща туда убунту влил, но руки чешуцца попробовать генту всобачить )

Владимир
22.01.2019
23:26:16
синглдиспатч - это не перегрузка
>>> @fun.register ... def _(arg: int, verbose=False): ... if verbose: ... print("Strength in numbers, eh?", end=" ") ... print(arg) ... >>> @fun.register ... def _(arg: list, verbose=False): ... if verbose: ... print("Enumerate this:") ... for i, elem in enumerate(arg): ... print(i, elem)

Sheridan
22.01.2019
23:26:58




Google
Владимир
22.01.2019
23:27:18
Уж что-что, а изголяться с кодом в питоне можно на всякий лад.

Владимир
22.01.2019
23:29:42
910 оклик? У меня только год прожил. Свичи плохие в них(

Sheridan
22.01.2019
23:30:06
но думаю уже поменять

чтото стало нехватать управляемой подсветки...

Владимир
22.01.2019
23:30:49
920G
там плохие свичи ставят((( троить начали очень быстро.

Sheridan
22.01.2019
23:31:13
хз, третий год уже вроде, норм...

Admin
ERROR: S client not available

Владимир
22.01.2019
23:31:19
Купил китайский нонейм какой-то, а весной всталю черри в тело оклика)

Donaudampf
22.01.2019
23:31:36
в коде все написано, посмотри внимательно
можно пример, который различает вызов foo(1) и foo(1,2,3)?

Sheridan
22.01.2019
23:32:00
Donaudampf
22.01.2019
23:32:13
def a(*args): pass
я про синглдиспатч

Владимир
22.01.2019
23:32:15
Sheridan
22.01.2019
23:32:20
фуф

Владимир
22.01.2019
23:32:21
я про синглдиспатч
а нафига он тут?

Google
Donaudampf
22.01.2019
23:32:22
а нафига он тут?
потому что вопрос был о перегрузке методов из плюсов

Sheridan
22.01.2019
23:33:11
да хер с ними с методами, могу переименовать

несложно

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

Donaudampf
22.01.2019
23:33:53
человек хочет __init__(self, a) и __init__(self, a, b, c) в одном классе, ну или что-то подобное

Sheridan
22.01.2019
23:34:14


Donaudampf
22.01.2019
23:34:36
да хер с ними с методами, могу переименовать
лучше всё же начать писать на питоне, а не мимикрировать под привычные языки

Sheridan
22.01.2019
23:35:01
лучше всё же начать писать на питоне, а не мимикрировать под привычные языки
да с удовольствием. Только к сожалению это не по щелчку происходмит

должно пройти время и случиться несколько раз вот такое

Donaudampf
22.01.2019
23:35:50
можно какой-нибудь игрушечный пример с иерархией и аргументами, где с super возникли проблемы

Artem
22.01.2019
23:35:57
это делается init(self, *args)
ты что это же не явно

Donaudampf
22.01.2019
23:36:12
это делается init(self, *args)
да я в курсе, но если человек не хочет говорить на нашем языке, я пытаюсь говорить на его

Donaudampf
22.01.2019
23:37:13
https://pastebin.com/dgpALrkj
в этом примере всё работает, если исправить init Derived, как я писал выше

Владимир
22.01.2019
23:37:51
Вообще перегрузка нарушает принцип единой ответственности. И в питоне с его динамичностью не сильно то нужна

Sheridan
22.01.2019
23:38:05
языке который ограничивает программиста... ну такое себе

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

Sheridan
22.01.2019
23:38:48
нафигач строчку больше 79 символов

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