Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Вопрос этикета, как назвать переменную-массив, в единственном или множественном числе? (3 стр)

Вопрос этикета, как назвать переменную-массив, в единственном или множественном числе? (3 стр)

Страницы: 1 2 3 4 Следующая »
AslanПостоялецwww3 апр. 20186:13#30
Роман Шувалов
Point points[MAX_POINTS];
int npoints=1;
Point point=points[0];
fantomassПостоялецwww3 апр. 20189:05#31
Suslik
auto point = points[i];
size_t points_count = points.size();
for(auto &point : points)
{
}

"points.size()"? (Почему) не делишь поля/методы как существительные/глаголы?
SuslikМодераторwww3 апр. 20189:06#32
fantomass
если бы я писал, я бы сделал GetCount(). но по старой доброй традиции gnu-сный code convention с нелепыми наименованиями всегда служил для быстрой идентификации stl-кода.
DelfigamerПостоялецwww3 апр. 20189:14#33
fantomass
> "points.size()"? (Почему) не делишь поля/методы как существительные/глаголы?
Потому что это аксессор, и в STL акксессоры именуются тем, что они возвращают.
[To] auto "point" assign pointsi.
[To] size-typed "points_count" assign points's size.
For each auto-ref "point" in points do
  nothing.

Если вас смущают функции-существительные, то порекомендую держаться в сторонке от языков функциональных.

Правка: 3 апр. 2018 13:05

fantomassПостоялецwww3 апр. 20189:22#34
Suslik
Мдее.. )

Delfigamer

И про брэйнфак мне ещё расскажи ;)

Правка: 3 апр. 2018 9:26

gudleifrПостоялецwww3 апр. 201810:34#35
Zab
> А если серьезно, то может стоит именовать так, как принято в конкретном
> проекте?
Открою тайну. Только никому не говорите. Языки программирования нужны для описания сложных программ, поэтому применяемая система именования программных сущностей зависит от способа, которым программист борется со сложностью.
1. "Плюем и копипастим" оно же "быстренько быдлокодим" - система имен, очевидно, навязывается нам извне (учебником, исходником, артелью, бомондом...).
2. "Структурное программирование" в классической форме - система имен вторична по сравнению с выбираемой нами системой описания логики программы и диктуется ею.
3. "Масштабирование сущностей" и ООП в т.ч.- система имен завязана на единообразии словообразования и соблюдение этого единообразия гораздо важнее самих имен (вплоть до венгерской нотации).
4. "Проблемно ориентированный язык" - система имен должна приводить к записи конечной(!) программы в наиболее человеческой форме.
Но т.к. все, что делается на Форуме практически не выходит за пределы (1), то делайте, как "в конкретном проекте"...
SuslikМодераторwww3 апр. 201810:40#36
gudleifr
читая твои посты, мне иногда хочется завалиться на какой-нибудь форум по вязанию и начать их учить, как правильно вязать. главное — делать это с умным видом и максимумом пафоса.
gudleifrПостоялецwww3 апр. 201810:41#37
Suslik
Без комментариев.
Ghost2Постоялецwww3 апр. 201811:21#38
Suslik

> хочется завалиться на какой-нибудь форум по вязанию и начать их учить, как правильно вязать
Ты ему главное не говори, на какой конкретно форум хочешь завалиться.
Потому что мне кажется, что в вязании он тоже настоящий. Без комментариев.

Правка: 3 апр. 2018 11:23

Роман ШуваловУчастникwww3 апр. 201811:46#39
Suslik
> если тебе кажется красивой запись отличная от такой, которая считается
> стандартной, то надо менять свои взгляды
А я за этим сюда и написал.

Буду использовать points[] и points_count.

ZabПостоялецwww3 апр. 201811:48#40
gudleifr
Ощущение, что вы никогда не работали в по настоящему больших проектах...
Ну и что вы делать предлагаете в условиях нескольких мегабайт исходников, написанными парой-тройкой поколений программистов, общей численностью несколько десятков человек?
Допустим, вам поручили сделать какой-то новый модуль. Там вы можете внутри завести свои порядки. При контакте с другими модулями все равно останутся всякие козьи морды, большая часть которых объясняется исторически, но не логически и не прагматически.
А если вам поручили не новый модуль разрабатывать, а "причесать" старый? Все выкинуть и сделать заново? Иногда и так полезно, но далеко не всегда, надо смотреть конкретные условия.

Но даже если вы назаводили внутри модулей свои "правильные" порядки, это ничуть не облегчит жизнь следующим программистам, которые будут в проекте ковыряться. Что ни модуль, то свои уникальные правильные порядки, получаются.

В общем, сортировка в таких условиях идет не по красоте кода, а по тому, можно ли какому-то модулю доверять. Если он написан по технологии, которой его автор уверенно владел, даже если эта технология некомфортна для меня, пусть себе живет. Если еще и автор никуда не делся, пока еще работает по соседству - вообще отлично. Зачем его переучивать, если его технологии тоже работают? Я не могу ими толком пользоваться, иначе воспитан, но он то может...

gudleifrПостоялецwww3 апр. 201811:49#41
Zab
> Ну и что вы делать предлагаете в условиях нескольких мегабайт исходников,
> написанными парой-тройкой поколений программистов, общей численностью несколько
> десятков человек?

gudleifr
> 1. "Плюем и копипастим" оно же "быстренько быдлокодим" - система имен,
> очевидно, навязывается нам извне (учебником, исходником, артелью, бомондом...).

Я полностью с Вами согласился же...

Правка: 3 апр. 2018 11:50

ZabПостоялецwww3 апр. 201811:55#42
gudleifr
> Я полностью с Вами согласился же...
Тогда извиняюсь... Я увидел сарказм там, где его нет, видимо.

Опытный программист много всяких стилей видел, наверное как-нибудь отделит бред от технологий, пусть даже странных. Приучаешься читать код, написанный даже совсем не в твоем стиле. А потом возникает вопрос - нужно ли перелопачивать все под свои привычки. Ответ может быть очень разным.

DelfigamerПостоялецwww3 апр. 201813:25#43
fantomass
Я и не настаиваю же.
Зачем разбираться в функциональных языках? И на алгоритмических всё прекрасно кодится. Шаблоны не нужны.
Зачем нужно ООП? И на процедурках всё прекрасно работает.
Зачем изучать STL? И на своих велосипедах всё прекрасно катается.
Зачем давать имена переменным? И на ijklm1m2m3n всё прекрасно компилируется.
Зачем вообще нужны компьютеры? И на логарифмических линейках всё прекрасно считается.

Правка: 3 апр. 2018 13:25

gudleifrПостоялецwww3 апр. 201814:03#44
Delfigamer
> ... функциональные языки, шаблоны, ООП, STL, имена переменных...
Что за суповой набор? И какое отношение это имеет к теме?
Страницы: 1 2 3 4 Следующая »

/ Форум / Программирование игр / Общее

2001—2018 © GameDev.ru — Разработка игр