Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> имена переменных, какого стиля вы придерживаетесь 
:(
    Опции темы
 
какого стиля вы придерживаетесь при создании переменных?
все строчными разделенное знаком подчеркивания (max_len) [ 9 ]  [22.50%]
разделение заглавными (GetMaxLen или getMaxLen) [ 30 ]  [75.00%]
смешаный (Get_Max_Len) [ 1 ]  [2.50%]
я не заморачиваюсь, одной или двух букв всегда хватает [ 0 ]  [0.00%]
Всего проголосовавших: 40
В этом опросе возможен один вариант ответа
Гости не могут голосовать 
fish9370
Дата 17.7.2011, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 663
Регистрация: 15.4.2007
Где: Москва

Репутация: -1
Всего: 1



тема взята из соседнего поста, показалась интересной..

пишите, кто какой стиль предпочитает и как он придумывает названия именам переменных..
пользуется ли кто-то еще транслитом?



--------------------
undefined
PM MAIL WWW ICQ   Вверх
Сыроежка
Дата 17.7.2011, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 127
Регистрация: 24.6.2011

Репутация: нет
Всего: 1



Во-первых, стиль программирования порой диктуется уже той средой, в которой вы программируете, как, например, имеет место в Windows или MFC.

Обычно в проектах польуются одновременно разными стилями названия переменных. Например, один программист для одной переменной может использовать подчеркивание для разделения слов в идентификаторе, в то время как для другого идентификатора порой проще объединить два слова в одно без всяких разделителей. Кроме того, есть переменные, которые обозначают флаги. Обюычно они пишутся в венгерской нотации. Кроме того для простых функций или простых объектов можно вообще использовать одну букву для имени переменной, как, например, s - для символьного массива, p - для указателя, а n - для целочисленного значения и т.д. Иногда для простыты имя переменной состоит лишь из двух символов, которые означают названия слов.

Например, имеется тип данных REQUEST HEADER. Для переменной этого типа в одном проекте использовалась имя rh. И поверьте, это было лучшее имя, которое можно придумать для переменной этого типа!smile

На самом деле для больших проектов главное, чтобы одни и те же объекты в разных модулях обозначались одними и теми же именами переменных.. 

Это сообщение отредактировал(а) Сыроежка - 17.7.2011, 20:19
PM MAIL   Вверх
azesmcar
Дата 18.7.2011, 07:44 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата(Сыроежка @  17.7.2011,  20:17 Найти цитируемый пост)
Например, имеется тип данных REQUEST HEADER. Для переменной этого типа в одном проекте использовалась имя rh. И поверьте, это было лучшее имя, которое можно придумать для переменной этого типа!

Не верю © smile 

PM   Вверх
Earnest
Дата 18.7.2011, 09:34 (ссылка) |    (голосов:5) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 53
Всего: 183



Странные какие-то ответы, не то что не исчерпывающие, но вообще винегрет. Именование переменных - часть стиля; он обычно корпоративный, так удобнее работать. Я для своей команды сделала документ, компиляцию из какого-то распространенного англоязычного источника и своих домыслов. Транслит запрещен, ибо меня от него колбасит.
До сих пор вспоминаю яркий образец вида - чью-то процедуру на Фортране с именем OBLOPR, что означало "область определения". smile 


--------------------
...
PM   Вверх
k0rvin
Дата 18.7.2011, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 442
Регистрация: 24.1.2010

Репутация: 1
Всего: 5



Цитата(Earnest @ 18.7.2011,  09:34)
Транслит запрещен, ибо меня от него колбасит.

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


--------------------
“Object-oriented design is the roman numerals of computing.” — Rob Pike
All software sucks
PM MAIL   Вверх
fish9370
Дата 18.7.2011, 09:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 663
Регистрация: 15.4.2007
Где: Москва

Репутация: -1
Всего: 1



Цитата(Earnest @  18.7.2011,  09:34 Найти цитируемый пост)
Странные какие-то ответы, не то что не исчерпывающие, но вообще винегрет. Именование переменных - часть стиля; он обычно корпоративный, так удобнее работать


Вы как женщина опытная (как я понял), должны понять, что речь идет о  стадии, когда проект только начинается, и Ваши предпочтения закладываются в корпоративный стиль.. 

кстати, по стилю, можно определить к какой "школе" человек относится.. как тут было правильно подмеченно, сразу видно где у него больше всего опыта, Linux, Windows, MFC и т.д.


Цитата(Сыроежка @  17.7.2011,  20:17 Найти цитируемый пост)
Например, имеется тип данных REQUEST HEADER. Для переменной этого типа в одном проекте использовалась имя rh


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

Добавлено @ 09:57
P.S. за транслит убил бы сразу..

Это сообщение отредактировал(а) fish9370 - 18.7.2011, 10:04


--------------------
undefined
PM MAIL WWW ICQ   Вверх
borisbn
Дата 18.7.2011, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Цитата(Сыроежка @  17.7.2011,  20:17 Найти цитируемый пост)
Во-первых, стиль программирования порой диктуется уже той средой, в которой вы программируете, как, например, имеет место в Windows или MFC.

Что есть, то есть. Правда за весь Windows я бы не говорил... Вот, например, когда мне нужна программа на чистом Си++ (STL, boost), то я и переменные_называю_с_подчеркиванием. Если в Qt лабаю - поВерблюжачиНазываю. А когда ещё с VCL работал (как вспомню - так вздрогну) все ТТипыНазвалВИхСтиле.

А по именованию - ну есть же правила
Цитата

типы и объекты - существительные
свойства объектов - прилагательные
функции, методы объектов - глаголы


Цитата(fish9370 @  17.7.2011,  20:03 Найти цитируемый пост)
пользуется ли кто-то еще транслитом?

Убил бы за vvod_massiva. Особенно весело смотрится транслитерация слова "файл" smile

P.S. Ещё нравится иногда встряхиваться smile
Код

struct Simpson { ... };
struct Homer : public Simpson { ... };
struct Bart : public Simpson { ... };
struct Lisa : public Simpson { ... };


такое, правда, нужно особенно тщательно документировать

Добавлено через 3 минуты и 28 секунд
Цитата(Earnest @  18.7.2011,  09:34 Найти цитируемый пост)
Я для своей команды сделала документ, компиляцию из какого-то распространенного англоязычного источника и своих домыслов

Не поделишься ? Распространять не собираюсь. Прошу для личного пользования


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Earnest
Дата 18.7.2011, 10:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 53
Всего: 183



Да ради бога. Исользуйте как хотите: это перевод одного из валяющихся в сети документов с моей редакцией.

Добавлено через 2 минуты и 58 секунд
Правде, время показало, что не все прижилось. Скажем, функции я именую в основном с большой буквы. Булевские переменные не начинаю с "is". Но это все мелочи. Нельзя вообще все зарегламентировать, должна быть некоторая свобода в соответствии с собственным вкусом.

Присоединённый файл ( Кол-во скачиваний: 15 )
Присоединённый файл  C___Programming_Style_Guidelines.rar 15,23 Kb


--------------------
...
PM   Вверх
borisbn
Дата 18.7.2011, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Earnest, спасибо. Где-то я это видел... О! вот тут.

Да ты собственно и не скрывала   smile  
Цитата(Earnest @  18.7.2011,  10:31 Найти цитируемый пост)
это перевод одного из валяющихся в сети документов с моей редакцией



Это сообщение отредактировал(а) borisbn - 18.7.2011, 10:45


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Qu1nt
Дата 18.7.2011, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 602
Регистрация: 13.1.2007

Репутация: 1
Всего: 50



PM MAIL   Вверх
Earnest
Дата 18.7.2011, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 53
Всего: 183



Цитата(borisbn @  18.7.2011,  11:44 Найти цитируемый пост)
 Где-то я это видел... 

Ну да, я там честно сохранила копирайт.


--------------------
...
PM   Вверх
Сыроежка
Дата 18.7.2011, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 127
Регистрация: 24.6.2011

Репутация: нет
Всего: 1



Цитата(fish9370 @  18.7.2011,  09:56 Найти цитируемый пост)
действительно, часто встречаются очень удачные аббривиатуры (как в данном примере).. но мне кажется, что это хорошо, когда есть документация, чтобы человек со стороны как-то мог разобраться, что она значит..



Как я уже сказал, если одно и тоже имя используется для одного и того же объекта во всех модулях проекта, то документация не требуется.  Поэтому я и указал, что очень важно сохранять использование одного  и того же имени.

Более сложные проблемы возникают, когда вы пишите макросы. В них вы передаете идентификатор, а внтури макроса нужно создать другой идентификатор для подобного же объекта. Здесь тоже требуется некоторая система, так как порой могут возникнуть серьезные ошибки, что вы в макросе можете использовать имя, которое "закроет" собой имя переменной из основного кода.
PM MAIL   Вверх
fish9370
Дата 20.7.2011, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 663
Регистрация: 15.4.2007
Где: Москва

Репутация: -1
Всего: 1



Цитата(Сыроежка @  18.7.2011,  20:00 Найти цитируемый пост)
то документация не требуется


документация в любом случае нужна..


--------------------
undefined
PM MAIL WWW ICQ   Вверх
borisbn
Дата 20.7.2011, 10:37 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



fish9370, ты не прав - по стандарту документировать ничего не требуется  smile 


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Earnest
Дата 20.7.2011, 11:28 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 53
Всего: 183



Цитата(fish9370 @  20.7.2011,  11:36 Найти цитируемый пост)
документация в любом случае нужна.. 

Это сложный вопрос на самом деле. Документация к коду ИМХО не нужна (код должен быть самодокументирован, включая подробные комментарии к сложным местам, либо ссылки на первоисточники для неочевидных алгоритмов). "Стратегические" документы (типа функциональной спецификации на разработку конкретного модуля \ утилиты или   описание дизайна программы) очень желательны. К сожалению, поддерживать их в актуальном состоянии очень сложно...


--------------------
...
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1103 ]   [ Использовано запросов: 23 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.