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

А давайте я сразу сюда вкину вторую тему И начем с

вопрос: правильно ли, что все функции должны называть в snake_case, а структуры в CameCase?

43 ответов

58 просмотров
Давид-Шекунц Автор вопроса
К|/|pи/\/\ 6е3yглbIи
screenshot

Разве это не Hungarian notation но на уровне именований самого языка?

Нет, никто не мешает называть как угодно что угодно

Давид-Шекунц Автор вопроса
Давид Шекунц
Разве это не Hungarian notation но на уровне имено...

Что я имею ввиду: в go у тебя все PascalCase если экспортиться и camelCase если нет То есть, чтобы сделать Hungarian notation тебе надо явно добавить в название тип (например SomeInt) В Rust получается, что если я вижу snake_case, то это функция / метод, а если PascalCase, то это структура Понимаете о чем я?

Давид-Шекунц Автор вопроса
К|/|pи/\/\ 6е3yглbIи
screenshot

Бесит что есть варнинг на non_snake_case имя крейта

Давид-Шекунц Автор вопроса
Давид Шекунц
Разве это не Hungarian notation но на уровне имено...

И основной вопрос в чем: Hungarian notation читается плохой практикой (и я с этим согласен) и считается уже очень очень давно Почему при этом Rust, создававшийся после языков где был Hungarian notation решил делать такой синтаксис? Может это не "Hungarian notation" или же "Hungarian notation" это нормально?

Давид-Шекунц Автор вопроса
Пух
#[allow(non_snake_case)]

Но да, я просто "стандартный подход"

Давид Шекунц
Что я имею ввиду: в go у тебя все PascalCase если ...

ну коде, что следует гайдлайнам, все будет как в гайдлайнах на удивление большинство кода действительно следует гайдлайнам, так что если будет snake_case то это 100% функция/метод/макрос PascalCase - кастомные типы / любые структуры или перечисления (ну и на крайняк union)

Давид Шекунц
И основной вопрос в чем: Hungarian notation читает...

Если есть причины, по которым это плохо, вкидуй

Давид Шекунц
И основной вопрос в чем: Hungarian notation читает...

где ты нашел венгерскую нотациюв расте?

Давид Шекунц
И основной вопрос в чем: Hungarian notation читает...

для меня венгерская нотация это вообще что то на уровне trait ISomething (типа интерфейсов в джаве), в остальном это уже зависит от компилятора в данном случае компилятор позволяет убрать "ограничение" на следование гайдлайнам главное, что компилятор по умолчанию заставляет писать на основе уже придуманных гайдлайнов - остальное уже чаще всего не нужно

Давид-Шекунц Автор вопроса
Пух
Если есть причины, по которым это плохо, вкидуй

Самый ярый пример I перед интерфейсом Подробно раскрывал вот здесь

Давид-Шекунц Автор вопроса
Пух
И это всё, кажется?

Я имею ввиду сам факт, что функции / методы и структуры деляться по неймингу подходит под понятие венгерской нотации: "тип описывается названием"

Давид-Шекунц Автор вопроса
К|/|pи/\/\ 6е3yглbIи
ну коде, что следует гайдлайнам, все будет как в г...

Вот тут согласен, если 100% кода такие, то венгерская нотация не работает Кейс закрыт

Давид Шекунц
Я имею ввиду сам факт, что функции / методы и стру...

в среднем это называется кодстайл, а не венгерская нотация

Давид-Шекунц Автор вопроса
Пух
#[allow(non_snake_case)]

А вот это реально работает? Можно так разрешить на уровне кода писать в другом стиле?

Давид Шекунц
Он ругается если называю по-другому

можешь отключить любую ругань по стилям #![allow(nonstandard_style)]

Le Chat
А гошка твоя так может? 😉

Ну там совсем копец с этим, ГОлаг

Давид-Шекунц Автор вопроса
Пух
в среднем это называется кодстайл, а не венгерская...

Да, но я не понимаю в чем логика разделения стиля кода между функциями и структурами В итоговом коде получается что используются всевозможные варианты написания Красота кода – намаловажный параметр и множество вариантов написания ее портят

Давид Шекунц
А вот это реально работает? Можно так разрешить на...

раст позволяет тебе сделать с ним что угодно (ну практически), но только если ты это сам явно укажешь таким издевательством на уровне всего крейта не занимаются, обычно над блоком кода максимум по умолчанию и так хорошие и читаемые линтинги, так что это очень малая доля ситуаций (ну или вот как пример выше, если нужно сделать из синтаксиса кашу https://github.com/gravl4/ADC_UDP_LOGGER/tree/main/src)

Давид-Шекунц Автор вопроса
Пух
да, в lib.rs напиши и норм

А этим кто-то пользуется?

Давид Шекунц
Да, но я не понимаю в чем логика разделения стиля ...

чтобы было понятно по имени какая это конкретно сущность.

Давид-Шекунц Автор вопроса
Le Chat
А гошка твоя так может? 😉

Так вот суть в том, что слава богу нет Так любой программист просто отключает правила форматера и какой смысл его добавлять... Ребята, я знаю, что вы сейчас начнете говорить: "та не прав" – но вам не кажется, что это реально странно? Зачем это давать разработчикам? Какая от этого польза?

К|/|pи/\/\ 6е3yглbIи
раст позволяет тебе сделать с ним что угодно (ну п...

таким бредом нормальные люди не страдают)) это просто пример каши "потому что захотелось" на деле весь код следует гайдлайнам на уровне стандарта компилятора, и этого вполне хватает

Давид-Шекунц Автор вопроса
Давид Шекунц
Так вот суть в том, что слава богу нет Так любой ...

Объясню, это чисто путь JS: "Дадим все, а дальше они разберутся" – но люди в итоге не разбираются и у нас в итоге куча гавнокода в котором очень тяжело жить (и это причина почемя я не люблю JS)

Давид Шекунц
Объясню, это чисто путь JS: "Дадим все, а дальше о...

Если ты запретишь вкусовщину в языке то у тебя просто появится конкурент и не один

Давид Шекунц
Так вот суть в том, что слава богу нет Так любой ...

писать на JS != писать на Rust и отношение к языкам тоже, скажем так, разное я бы сказал, что JS на уровне семантики позволяет относиться к синтаксису также наплевательски, как к памяти ну в общем я думаю мой посыл понят)))

Давид-Шекунц Автор вопроса
Пух
Была бы польза от запретов всего на свете

Она есть и ты знаешь о каком я языке) Как минимум потому что я хочу скорее найти больше аргументов за Rust, а не наоборот

Давид Шекунц
Она есть и ты знаешь о каком я языке) Как минимум...

оке, в расте этого запрета нет. Какие минусы мы получили?

Давид-Шекунц Автор вопроса
О. К
Если ты запретишь вкусовщину в языке то у тебя про...

Появятся конкуренты, которые скажут: "Вот там вам дали эту свободу, из-за нее вы страдаете потому что куча людей начали ей слишком сильно пользоваться, а у нас этого нет, значит и страданий этих не будет" – и это будет реальным преимуществом

Давид Шекунц
Появятся конкуренты, которые скажут: "Вот там вам ...

"Вот у вас отобрали эту свободу, из-за этого вы страдаете, потому что вам она нужна" и это тоже будет преимущество

Всм правильно ли? Так принято

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

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

А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
что насчет пагинга? на осдеве непонятно(
Vi Chapmann 🪙
26
Вопрос я правильно понимаю что в коде newtype ArrowMap k v = ArrowMap { getArrowMap :: k -> Maybe v } getArrowMap есть функция типа k -> Maybe v, если да, то не понимаю задач...
Fedor
64
Ребят, что лучше для реверса: гидра или ида?
En Vind Av Sorg
26
Делаю велосипед логгер. К сообщению хочу прикрутить некоторую информацию, типа, кем отправлено, какой уровень, и всякое такое. И тут подумалось мне, почему бы не хранить весь...
Serjone
24
Как Вы считаете нормально ли в двадцатых годах 21 века в ВУЗах Российской Федерации обучать студентов работе с TASM? Не слишком ли это "архаично"? (Если оффтоп или флейм для э...
Spiker01
52
Комрады, хотел уточнить. Проперть в OnDestroy юнита-хозяина по-прежнему доступна? И еще уточнение: finalization юнита наступает раньше или позже OnDestroy?
Ed Doc
48
Продолжая диалог про свифт в проде – сейчас возник вопрос в активном наборе бекендеров. В основном в нашей компании мы фанаты Java Spring и полностью ей довольны. Однако найм ...
Guseyn
27
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
если загрузчик efi? если сама PML4 PDPT PDT PT лежит в неудобном для меня месте?
Vi Chapmann 🪙
8
Карта сайта