Email or username:

Password:

Forgot your password?
Мя :sparkles_lesbian:

Почему в pydantic нет аналога rename_all из serde :(

Вернее, он есть, но...писать трансляторы нужно ручками, а serde конвертирует растовый snake_case в нужный формат автоматически

23 comments
mittorn

@mo потому что не нужны эти rename_all, код меняющий some_shit в someShit - зло

Мя :sparkles_lesbian:

@mittorn конечно, лучше прописывать десять alias ручками для каждого поля в жсончике, дада

Мя :sparkles_lesbian:

@mittorn и иметь десять шансов в них опечататься

mittorn

@mo а зачем когда можно просто структуру делать как в json. Всё это говно в serde ломает grep и заставляет люто гореть пердак когда что-то ищешь

mittorn

@mo НЕ НУЖНО. Вот напиши регулярку мне на конвертацию из snake case в camel case, да ещё и чтобы при этом grep лишнее не цеплял. Не надо делать сложноразбираемого говна в коде без необходимости. Если уже решили использовать snake_case в проекте или протоколе - нехуй совать camelCase туда

Мя :sparkles_lesbian:

@mittorn
> регулярку
> на конвертацию

Ты бредишь што ли сука? (с)

В жсоне может быть любой case, потому что апишка, сюрприз, бывает third party. Но в коде должен быть единый стиль. Вот согласно ему и грепай.

mittorn

@mo то есть ради единого стиля ты собираешься конвертировать имена идентификаторов? У растофанатиков совсем крыша потекла!!!

Мя :sparkles_lesbian:

@mittorn естественно. Десериализация она для того и существует, чтобы хуйню пришедшую извне распарсить в то, что соответствует внутренним требованиям.

mittorn

@mo проблема начинается когда ты хочешь быстро найти поле с обеих сторон, а оказывается что оно не использкуется (потому что используется в другом case)

Мя :sparkles_lesbian:

@mittorn ищешь поле по case который в проекте. Problems?

mittorn replied to Мя

@mo то есть ещё нужно этот кейс как-то угадать. Это всё создание проблем на ровном месте. И вместо того чтобы просто сделать grep -nr name ты будешь грепать с разным именем разные подпроекты, при этом цепляя кучу лишнего текста

Мя :sparkles_lesbian: replied to mittorn

@mittorn не надо угадывать, зачем? Для раста общепринято именовать поля snake_case, в других языках свои общепринятые стандарты

mittorn replied to Мя

@mo т.е если я считаю что snake_case - го_вно, то не имею права писать на rust т.к мой код нарушит какие-то соглашения? Схера ли вообще язык определяет стиль нейминга?

Мя :sparkles_lesbian: replied to mittorn

@mittorn ну, можешь, но не жалуйся потом, что с твоим кодом никто не хочет иметь дела

mittorn replied to Мя

@mo а если серьёзно, почему в языке вообще есть какой-то общепринятый нейминг и другие нельзя? может там ещё и без стандартной библиотеки код писать нельзя? (как это ложится на rust в ядре linux???)

Мя :sparkles_lesbian: replied to mittorn

@mittorn потому что иначе будет бардак, и код будет
а) выглядеть как говно
б) нельзя будет понять по имени, это структура, поле, или вообще модуль

std подключена по умолчанию, отключается атрибутом #![no_std]
Плюс можно использовать её составные части (core и alloc) по отдельности

Мя :sparkles_lesbian: replied to Мя

@mittorn я понимаю что "на сишечке писали без всей этой херни и норм", но эру сишечки мы давно прошли, и теперь от языка ожидается, что он установит базовые правила по взаимодействию разных людей и их проектов
1. Система сборки + пакетник
2. Общий стиль кода, которого надо придерживаться

Это прям минимум

mittorn replied to Мя

@mo система сборки+ пакетник - основное что делает раст практически неюзабельным, потому что распускает адептам культа карго руки. А культ карго заключается в том что они думают что обновляя зависимости постоянно решат какие-то проблемы (избегут каких-то мифических уязвимостей). То то я вижу в половине проектов почти все коммиты - update crates.
Общий стиль кода конечно нужен, но если есть интерфейс с каким-то неймингом, то и используй его как есть.

mittorn replied to Мя

@mo а ну да, в rust сказали что венгерка - говно и изобрели свою венгерку, точно

Мя :sparkles_lesbian: replied to Мя

@mittorn какая венгерка, она тут вообще никаким боком отношения не имеет

mittorn replied to Мя

@mo когда по формату имени ты различаешь структуру и поле - почти та же венгерка. Чем это отличается от именования с префиксом m мемберов класса?

Go Up