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

Верну тред в русло дотнета. Я всё ещё для себя

не решил очень... странную проблему. Неймспейсы.

Дефолтное поведение у студии и решарпера - пихать названия папок в названия. И... Это кошмар на большом проекте, где вложенность 4/5+.
Единственное, что я нашёл для решарпера - у него есть возможность для папки выставить свойство "Provide namespace name" или что-то такое. Оно работает, но (!):
- не дружит с вижлой
- нужно руками для _каждой_ папки тыкнуть
- ломается при ренейме, переносе, а в dotsettings мусор остаётся

Вопрос: есть ли нормальные инструменты/конфиги/etc, чтобы зафорсить для всех файлов в проекте "имя неймспейса = имя проекта"?

7 ответов

14 просмотров

Попробуй globbing pattern использовать доя всех папок, чтобы не "тыкать". У msbuild очень развитый декларативный язык. Если только инструменты будут правильно подлерживать это.

А зачем пихать в разные папки, если нет деления на неймспейсы? Я, например, вообще редко пользуюсь деревом директорий - перехожу по типам через шорткаты. И даже толком не знаю часто, в какой это папке - меня не волнует. Просто начинаю писать код нового класса в любом месте, жму alt-enter, и прошу положить в отдельный файл. Ляжет рядышком, в фолдере неймспейса.

George Polevoy
А зачем пихать в разные папки, если нет деления на...

Ну ты как в энтерпрайзе не работал, там ограничение - 10 файлов в папке

Fredi-Kats Автор вопроса
George Polevoy
А зачем пихать в разные папки, если нет деления на...

Ну вот дженерик проект, у него Company.Product.Area.Project в названии. В проекте находится... Ну, допустим 120-300 файлов. Их все в корень закинуть?

Ilya Chernoudov
Ну ты как в энтерпрайзе не работал, там ограничени...

Я на хуй посылал их с их правилами. Ни разу за такое не уволили)

Fredi Kats
Ну вот дженерик проект, у него Company.Product.Are...

Либо в корень, либо макс в один уровень. А корневой неймспейс не зачем делать таким всратым, сделайте его одним словом.

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта