Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

IntelliSense: Длина идентификаторов

723
05 октября 2006 года
Tommy
78 / / 13.10.2002
Наверно это плохая мысль, писать подобный вопрос в этой теме не стоит, но этот вопрос касаеться IntelliSense. И так, я учусь в универе и решил поработать, так вот суть в том, что есть большая программа написанная на Delphi, в которой надо разобраться, что делать крайне трудно, т.к. идентификаторы порой представляют собой просто кучу символов. Когда же дома я писал приложения в Visual Studio, я всегда использовал, если надо, длинные идентификаторы. Хотелось бы услышать ваше мнение на этот счёт: нужно ли использовать длинные идентификаторы в Visual Studio?
713
06 октября 2006 года
Ap0k
360 / / 13.03.2006
Под идентификаторами подразумеваются имена методов/функций/переменных?
303
06 октября 2006 года
makbeth
1.0K / / 25.11.2004
Tommy
Собственно, все зависит от тебя самого(и тех кто будет читать твой код). К именованию идентификаторов нужно подходить с позиции баланса удобочитаемости кода и понятного именования.
Скажем,
 
Код:
public void ThisFunctionMakeSomethingVeryVeryCritical(int MainFunctionParameter, string AnotherFunctionParameter)
{
}

- уже, я бы сказал, перебор, но и
 
Код:
public void CF(int p1, string p2)
{
}

тоже не есть гут. Одним словом, дело за разработчиком и, в общем-то, IntelliSense здесь не причем...
Видывал я программы где попадались идентификаторы типа xxx1, R_22 и т.д. Самое ужасное, что их еще приходилось сопровождать :(
Вообще любая нормальная книга по программированию советует называть идентификаторы так, чтобы взглянув на него, можно было понять, что он делает без всяких дополнительных комментариев, т.н. самодокументирующие названия.
723
06 октября 2006 года
Tommy
78 / / 13.10.2002
makbeth
так то оно так, то есть это просто две крайности, до появления такой вещи как IntelliSense, наш препод говорил что идентификаторы не должны превышать 8 символов, т.к. их долго набирать - звучит тупо (ну дело конечно не только в том как их долго набирать), но всё-таки это ещё один из критериев между которым приходиться балансировать. Так вот IntelliSense как раз позволяет ослабить влияние этого критерия. Другими словами, надо на всю катушку пользоваться такой штукой как IntelliSense или нет? Само собой исходить надо и стандартов кодирования принятых в фирме, и ещё некоторых факторов. Просто хочеться услышать что же это за факторы, и как оди взаимоотносяться.
303
06 октября 2006 года
makbeth
1.0K / / 25.11.2004
Собственно, IntelliSense и задумывался для того, чтобы его использовать, не так ли? Что касается факторов, то я принципе их уже перечислил - это, во-первых, удобство чтения кода самим программистом; во-вторых, понятное именование идентификаторов для тех кто будет сопровождать программу, либо разрабатывать ее дальше, в случае ухода (увольнения и т.д.) первоначального разработчика; в третьих, обеспечение самодокументированности кода. Фактически, стандарты кодирования в фирме (по крайней мере, с которыми я сталкивался) как раз и направлены на это. Думаю, взаимосвязи здесь очевидны.
Насчет "длинные идентификаторы трудно набирать" - если честно, то я бы надавал преподавателю по башке за такие высказывания :) Если ему влом читать твой код с нормальными идентификаторами - это его проблемы. Ну а если серьезно, то нормальные названия обычно попадают под критерий "8 символов +/-":
 
Код:
bool IsUserMatch(string UserName)
{
    return UserName.CompareTo(CurrentUser) == 0;
}
Кроме того, стоит обратить внимание на именах идентификаторов в самой .NET Framework.
273
08 октября 2006 года
3A3-968M
1.2K / / 22.12.2005
Безусловно, IntelliSence облегчает работу с длинными идентификаторами. Лично я использую только существительное и глагол для составления идентификатора. Например, AuthorizeUserByPassword заменить на AuthorizeUser, имя SizeOf на GetSize и т.д.. В FAQ посмотри, я кидал ссылку о правилах написания грамотного удобочитаемого кода.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог