2Avk - текучка
От: Sinix  
Дата: 30.06.16 18:28
Оценка:
Несколько вопросов

1. У нас чего, соглашение по именованию поменялось?

я про правки
private const int EqualResult = 0;
=>
private const int _equalResult = 0;


решарпер ругается, так что я бы вернул к старому

2. В references CodeJam.Main есть ссылка на System.Threading.dll, которой, рвзумеется, в взрослом фреймворке нет. Может подрубать её как conditional?
Re: 2Avk - текучка
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 30.06.16 20:06
Оценка:
Здравствуйте, Sinix, Вы писали:

S>1. У нас чего, соглашение по именованию поменялось?


S>я про правки

S>
S>private const int EqualResult = 0;
S>=>
S>private const int _equalResult = 0;
S>


Ничего не менялось, всегда были приватные члены _camel, в том числе и константы.

S>решарпер ругается, так что я бы вернул к старому


У нас почему то в настройках решарпера настройки для приватных констант вообще не было. Поправил.

S>2. В references CodeJam.Main есть ссылка на System.Threading.dll, которой, рвзумеется, в взрослом фреймворке нет. Может подрубать её как conditional?


Она и так как conditional подключена, посмотри внимательнее.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[2]: 2Avk - текучка
От: Sinix  
Дата: 04.07.16 06:26
Оценка: +1
Здравствуйте, AndrewVK, Вы писали:

Сорри, что ответил не сразу, на какое-то время от цивилизации оторван

AVK>Ничего не менялось, всегда были приватные члены _camel, в том числе и константы.


А мы можем вот это поменять? Нигде и никогда не видел, чтоб константы с маленькой буквы / подчёркивания объявляли.


S>>2. В references CodeJam.Main есть ссылка на System.Threading.dll, которой, рвзумеется, в взрослом фреймворке нет. Может подрубать её как conditional?

AVK>Она и так как conditional подключена, посмотри внимательнее.

Ага, поискал — нюанс студии, не лечится и не подавляется. Печаль-беда.
Re[3]: 2Avk - текучка
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 04.07.16 06:50
Оценка:
Здравствуйте, Sinix, Вы писали:

AVK>>Ничего не менялось, всегда были приватные члены _camel, в том числе и константы.

S>А мы можем вот это поменять?

Зачем.

S> Нигде и никогда не видел, чтоб константы с маленькой буквы / подчёркивания объявляли.


Стандартный стиль кодирования на RSDN всегда такой был
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[4]: 2Avk - текучка
От: Sinix  
Дата: 05.07.16 06:09
Оценка:
Здравствуйте, AndrewVK, Вы писали:

S>>А мы можем вот это поменять?

AVK>Зачем.

Охх, вот тут вечно проблемы с объяснениями. Обсуждение вечно вот в таком вот духе получается:

S>> Нигде и никогда не видел, чтоб константы с маленькой буквы / подчёркивания объявляли.
AVK>Стандартный стиль кодирования на RSDN всегда такой был


aka "зачем менять? мы всегда так делаем".

Засада в том, что остальная команда в rsdn team не состоит и (как минимум для меня) текущий стиль смотрится сплошным WTF.
Я бы предпочёл использовать стандартные соглашения и отступать от них _только_ если очевидно что альтернатива лучше. В случае с константами наш велосипед очевидно хуже, т.к. константы нельзя отличить от полей.

С другой стороны, остальным участникам оно вообще пофиг, как мне кажется. Так что если больше голосов за поменять не будет — пусть остаётся
Re[5]: 2Avk - текучка
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 05.07.16 15:22
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Засада в том, что остальная команда в rsdn team не состоит и (как минимум для меня) текущий стиль смотрится сплошным WTF.


WTF это как раз когда константы и поля имеют разный стиль. Это не только на RSDN, в Парусе было ровно тоже самое, по крайней мере в платформе.

S>Я бы предпочёл использовать стандартные соглашения и отступать от них _только_ если очевидно что альтернатива лучше.


Стандартных соглашений нет. RSDNовские появились раньше всех. Потом появился StyleCop, правила которого никоим образом стандартными не были. А FDG про приватные члены ничего не говорил.

S> В случае с константами наш велосипед очевидно хуже, т.к. константы нельзя отличить от полей.


"Очевидно" очень плохое слово в аргументации. Мне вот совсем неочевидно, почему неразличимость приватных, публичных констант и публичных полей, свойств и событий лучше.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[6]: 2Avk - текучка
От: Sinix  
Дата: 06.07.16 05:50
Оценка:
Здравствуйте, AndrewVK, Вы писали:

S>>Засада в том, что остальная команда в rsdn team не состоит и (как минимум для меня) текущий стиль смотрится сплошным WTF.

AVK>WTF это как раз когда константы и поля имеют разный стиль. Это не только на RSDN, в Парусе было ровно тоже самое, по крайней мере в платформе.

Ну с одной стороны имеем RSDN/Парус, с другой — всю codebase MS, в которой константы с заглавной. Сам понимаешь, какой стиль для подавляющего большинства девелоперов привычней.
В общем фиг с ним, типа у нас других проблем с стилем и с проектом в целом нет

Вопрос по делу:

Я собираюсь добавить два проекта — CodeJam.PerfTests.NUnit, и CodeJam.PerfTests.xUnit — для запуска перфтестов под nUnit/xUnit соответственно. Ну и потом надо будет нюгет-пакеты для каждого сделать. Возражений не будет?
Документашка в процессе, скину на днях.
Re[7]: 2Avk - текучка
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 06.07.16 06:40
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Ну с одной стороны имеем RSDN/Парус, с другой — всю codebase MS, в которой константы с заглавной. Сам понимаешь, какой стиль для подавляющего большинства девелоперов привычней.


Не понимаю. Стиль приватных констант в codebase MS подавляющему большинству девелоперов не виден и неизвестен.

S>Я собираюсь добавить два проекта — CodeJam.PerfTests.NUnit, и CodeJam.PerfTests.xUnit — для запуска перфтестов под nUnit/xUnit соответственно. Ну и потом надо будет нюгет-пакеты для каждого сделать. Возражений не будет?


Нет. А зачем сразу и под nunit и под xunit.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Re[8]: 2Avk - текучка
От: Sinix  
Дата: 06.07.16 07:10
Оценка: +1
Здравствуйте, AndrewVK, Вы писали:

AVK>Не понимаю. Стиль приватных констант в codebase MS подавляющему большинству девелоперов не виден и неизвестен.


Ну так этот стиль и в книгах, и в блогах и в примерах — везде используется. И он абсолютно логичен. Для меня вот этот код выглядит "как родной"
        private const string Fa = nameof(F.A);
        private const string Fx = "X";
        private const int Count = DefaultCount;


а вот это
        private const string _fa = nameof(F.A);
        private const string _fx = "X";
        private const int _count = _defaultCount;

при использовании вызывает кучу вопросов, особенно последняя строчка — фиг поймёшь поле оно или константа. Особенно с интеллисенсом решарпера, который традиционно не умеет в читаемые иконки:
  Угадай, где что


UPD Как показатель — 4 голоса за ответ с camelCasing, 267 — за Pascal.

S>>Я собираюсь добавить два проекта — CodeJam.PerfTests.NUnit, и CodeJam.PerfTests.xUnit — для запуска перфтестов под nUnit/xUnit соответственно. Ну и потом надо будет нюгет-пакеты для каждого сделать. Возражений не будет?


AVK>Нет. А зачем сразу и под nunit и под xunit.

В смысле, зачем вообще xUnit поддерживать?
Лично нам незачем, но если кто ещё пользоваться будет — попросят точно.
Отредактировано 06.07.2016 7:16 Sinix . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.