170 похожих чатов

Мне тут любопытно стало. А существуют ли линтеры/анализаторы которые проверяют

код на соответствие clean architecture?

21 ответов

7 просмотров

С технической стороны, это реализовать реально?

жалуются когда функция длиннее 4 строк?

Кстати, есть какой-то пакет, в котором настраиваешь какой слой какие импорты может юзать и если ты импортнешь в слой домена какую-то сторонню фигню, то он будет жаловаться. Вот правда название не помню

Нужен ИИ на базе дядюшки Боба. :-D

Георгий
И больше 2х аргументов

ну тут просто, засунуть всё в классы, и всюду один аргумент — self

Alex- Автор вопроса
Artem
Кстати, есть какой-то пакет, в котором настраиваеш...

я просто почему спрашиваю - на днях увидел доклад и там чел рассказал в т.ч. про свой линтер анализирующий сложность кода. Вот и подумалось про чистую архитектуру https://github.com/wemake-services/wemake-python-styleguide

Alex
я просто почему спрашиваю - на днях увидел доклад ...

wemake — это классика. Там есть всё это включить, код писать вообще страшно становится.

Alex
я просто почему спрашиваю - на днях увидел доклад ...

Просто для демонстрации уровня сумасшествия: https://wemake-python-styleguide.readthedocs.io/en/latest/pages/usage/violations/consistency.html#wemake_python_styleguide.violations.consistency.RequiredBaseClassViolation

Alex- Автор вопроса
evle
Просто для демонстрации уровня сумасшествия: https...

ну может это для поддержки 2.7. По-идее это настраивается

Tishka17
Там можно включить не всё?

можно, это просто плагин для флейка

Алиса Королёва
можно, это просто плагин для флейка

Мне казалось его концепция в том, что все нахрен прибито гвоздями

Alex
ну может это для поддержки 2.7. По-идее это настра...

Please, note that this rule has nothing to do with python2. We care only about consistency here.

Пользуюсь pydeps чтобы проверять проект на предмет странных импортов. Возможно можно нейроночку обучить анализировать графы зависимостей между пакетами чтобы она ругалась если что-то не так

Tishka17
Там можно включить не всё?

Ну, это ж тупо обёртка вокруг флейка. Ничто не мешает (если ты у них не работаешь :-D)

evle
Просто для демонстрации уровня сумасшествия: https...

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

Алиса Королёва
я даже не могу сказать как принято в расте тк у на...

Да я даже не про наследование как таковое, а про странное применение слова "консистентность". Типа если у нас есть синтаксис создания класса с наследованием, то второй синтаксис с неявным object нам не нужен. Там ещё такое есть, например: There are too many ways to import something. We should pick one style and stick to it. We have decided to use the readable one. # Correct: from os import path # Wrong: import os.path

evle
Да я даже не про наследование как таковое, а про с...

ну в импорте я точно ничего плохого не вижу

Похожие вопросы

Обсуждают сегодня

Сообщение* в закодированном виде. То есть, просто сделать sendMessage?text=Привет бла-бла! не получится, надо в HEX переводить, и добавлять процент, типа такого: sendMessage?t...
КТ315
21
А случайно нет ли в паскале штатной возможности передать указатель и количество туда где array of в качестве аргумента?
zamtmn
25
> комьюнити я бы не судил по этому чату. Как мы видели по статам просмотров нескольких телеговских постов, то в чате их набивается 30-40 или даже выше, когда как общаются акти...
Constantin F.
4
Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
58
Как сделать чтобы short точно был 2 байта, int точно 4 байта ?(без стандартных библиотек, ну типа без int16_t, int32_t)
#
8
Ну раз я пока тут, задам пару глупых вопросов. Зачем писать на ассемблере если компилятор довольно умный, а ассемблер много времени занимает? В каких прикладных задачах сейчас...
Максим Рябцев
20
Всем привет. Испытываю проблемы в работе БД, а именно огромного роста логов, такого характера: 024-05-16 18:39:07 +05 sentry sentry [unknown] 1050169 7-1 app-sentry01.corp.ru>...
Alexey
2
Только такой if ($modx->event->name == 'OnBeforeCartItemAdding') { $meta = $params['item']['meta']; $lang = $modx->getConfig('_lang'); // проверяем, задана ли опция i...
Multi Web
1
Хм. А телеграм апи работают через HTTP?
The Bird of Hermes
14
Почему Telegram пишет, что объект media не найден, хотя на самом деле я его передаю? Делаю на urllib, без зависимостей, так надо. Вызываю метод sendMediaGroup с таким JSON: ...
Alexey S
1
Карта сайта