![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
CInNet |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 20.7.2009 Репутация: нет Всего: нет |
Встал вопрос о написании переменных. Как лучше их указывать veriable или _veriable ? И почему?
|
|||
|
||||
PashaPash |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 9 Всего: 49 |
CInNet, лучше писать variable, и обращаться к ней this.variable.
|
|||
|
||||
CInNet |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 20.7.2009 Репутация: нет Всего: нет |
А почему? На самый главный вопрос не ответил)
|
|||
|
||||
PashaPash |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 9 Всего: 49 |
Потому что так говорит Microsoft StyleCop.
SA1309: fields names must not start with an underscore. |
|||
|
||||
CInNet |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 20.7.2009 Репутация: нет Всего: нет |
Спасибо Павел
![]() |
|||
|
||||
NightmareZ |
|
|||
![]() [хакер] ![]() ![]() Профиль Группа: Участник Сообщений: 699 Регистрация: 10.8.2006 Репутация: 1 Всего: 13 |
Чем аргументировать будешь? -------------------- NightmareZ.net - мой блог и сайт, мои проекты и прочий трэш Ely-Art.ru - наша маленькая домашняя арт-студия mugcraft.ru - кружки на любой вкус |
|||
|
||||
CInNet |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 20.7.2009 Репутация: нет Всего: нет |
Потому что так говорит Microsoft StyleCop. SA1309: fields names must not start with an underscore. Это сообщение отредактировал(а) CInNet - 19.8.2009, 10:40 |
|||
|
||||
CYBERDREAM |
|
|||
![]() I think, there4 I am ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1096 Регистрация: 31.10.2006 Где: CyberLand Репутация: 8 Всего: 28 |
Интересно из каких соображений они это написали
![]() -------------------- Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно) Telegram, skype: kuchuk.artiom |
|||
|
||||
PashaPash |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 9 Всего: 49 |
CYBERDREAM,
очень простые соображения - подчеркивание избыточно. StyleCop требует расставлять this. для instance member-ов. Он же требует называть свойства с заглавных букв.
IMHO, вполне однозначно и без _; |
|||
|
||||
mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 1 Всего: 128 |
Я предпочитаю немного другую нотацию. И она имхо удобнее, меньше загромождение кода. Маленький примерчик, где разрисованы все аспекты оформления, которые я использую для именования переменных и функций:
В целом, так. Приватные поля с маленькой буквы с подчеркиванием спереди, что говорит о том, что они приватные. Публичные поля и методы с большой буквы без подчеркивания. Приватные методы с большой буквы с подчеркиванием. Так при чтении кода сразу разграничиваются общедоступные и скрытые поля и методы, а дополнительно при обращении к полям не надо тыкать везде this'ов, которые загромождают код. Кому как, имхо, такой стиль написания значительно упрощает чтение и сопровождение кода. |
|||
|
||||
PashaPash |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 9 Всего: 49 |
mr.Anderson, whom how. Мне проще поставить StyleCop с дефолтными настроками, и прикрутить его к ccnet, чем следить за стилем вручную.
У this есть один бонус - студийный интеллисенс показывает после . именно то, перед чем надо this по правилам StyleCop ставить. И есть StyleCop For Resharper, который реформатит код. Опять же IMHO, подчеркивание вообще для всех приватных вещей как-то сомнительно - лично меня очень сильно плющит от _PrivateMethod ![]() Это сообщение отредактировал(а) PashaPash - 19.8.2009, 16:19 |
|||
|
||||
mihryak |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 10 Всего: 36 |
не пишу ни подчёркивание, ни this, локальных переменных в разумных пределах избегаю, а использование приватных св-в и методов никак не отделяю для себя от использования публичных
![]() впрочем, сейчас на проекте приватные поля начинаются с подчёркивания, не сказал бы, что страдаю - главное, чтобы все следовали одному код-стайлу (откровенно хреновые правила сами вымрут со временем) |
|||
|
||||
Enteropoly |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 50 Регистрация: 17.6.2009 Репутация: нет Всего: нет |
Согласен полностью с mr.Anderson
|
|||
|
||||
mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 1 Всего: 128 |
То применяется рефакторинг, и "левых" изменений там попросту нет))) Лично мне бывает просто приятно знать, вызываю я внутренний метод или же внешний при работе внутри класса. Возможно, субъективно. |
|||
|
||||
mihryak |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 10 Всего: 36 |
mr.Anderson, а чем эта приятность вызвана? т.е. в чём для тебя состоит разница между приватными и публичными методами?
|
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | .NET для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |