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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Цифры в конце названия переменных 
:(
    Опции темы
 
Цифры в конце названия переменных
зло [ 7 ]  [25.93%]
иногда можно, напишу когда [ 17 ]  [62.96%]
всегда так пишу [ 3 ]  [11.11%]
Всего проголосовавших: 27
В этом опросе возможен один вариант ответа
Гости не могут голосовать 
mimik
Дата 20.3.2011, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не Rohoss Я
*


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

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



ИМХО это зло, потому что если в конце названия переменных есть цифры, то это повод сделать массив из эти переменных.
PM   Вверх
mes
Дата 20.3.2011, 13:11 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



Цитата

иногда можно, напишу когда

например :
Код

template<typename Arg>
void func (Arg a1, Arg a2, Arg a3) 
{}





--------------------
PM MAIL WWW   Вверх
mimik
Дата 20.3.2011, 13:16 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


не Rohoss Я
*


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

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



Цитата(mes @  20.3.2011,  13:11 Найти цитируемый пост)
Код

void func (Arg a1, Arg a2, Arg a3)
 

а почему не
Код

void func (Arg a[3])
{}

?
PM   Вверх
alexvs11
Дата 20.3.2011, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


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

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



mimik, наверно будет разница как вызывать ее 
Код

func( 1,2,3 ) 

или
Код

Arg args[] = {1,2,3};
func( args );

PM MAIL   Вверх
mimik
Дата 20.3.2011, 13:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не Rohoss Я
*


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

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



Цитата(alexvs11 @  20.3.2011,  13:23 Найти цитируемый пост)
наверно будет разница как вызывать ее 

обычно если
Код

void func (Arg a1, Arg a2, Arg a3)

то и вызов этой функции будет примерно таким
Код

a1 = 1;
a2 = 10;
a3 = 2;
...
func(a1, a2, a3);

тогда не проще ли так
Код

a = {1, 10, 3};
func(a);

?

т.е. эти имена очень связаны,
а когда они не связаны то названиям переменным надо давать осмысленные имена
PM   Вверх
mes
Дата 20.3.2011, 13:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



Цитата(mimik @  20.3.2011,  12:33 Найти цитируемый пост)
тогда не проще ли так
a = {1, 10, 3};
func(a);

проще так :
Код

func(1, 10, 3);



Цитата(mimik @  20.3.2011,  12:16 Найти цитируемый пост)
а почему не
void func (Arg a[3]) 

потому что это другое...

Цитата(mimik @  20.3.2011,  12:33 Найти цитируемый пост)
а когда они не связаны то названиям переменным надо давать осмысленные имена 

это и есть осмысленные имена..

еще пример это плейсхолдеры : _1, _2...
http://liveworkspace.org/code/cafb802b2063...e13a631e435079d


Это сообщение отредактировал(а) mes - 20.3.2011, 14:00


--------------------
PM MAIL WWW   Вверх
mimik
Дата 20.3.2011, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не Rohoss Я
*


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

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



Цитата(mes @  20.3.2011,  13:47 Найти цитируемый пост)
проще так :

понятно что это проще, имелось в виду что a[0], a[1], a[2] ещё где-то используются
Цитата(mes @  20.3.2011,  13:47 Найти цитируемый пост)
потому что это другое...

да это другое, но чем оно хуже?
Цитата(mes @  20.3.2011,  13:47 Найти цитируемый пост)
это и есть осмысленные имена..

a1, a2, a3 это осмысленные имена?  smile 
Цитата(mes @  20.3.2011,  13:47 Найти цитируемый пост)
еще пример это плейсхолдеры : _1, _2...

я с C++ не так хорошо знаком
_1 это имя?
или это параметр по умолчанию?
PM   Вверх
mes
Дата 20.3.2011, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



Цитата(mimik @  20.3.2011,  13:23 Найти цитируемый пост)
a1, a2, a3 это осмысленные имена?  

 smile , также как и first,second, third
это особенность обобщенного программирования, когда неизвестно что именно скрывается за параметрами и известен лишь алгоритм обработки.. 

например 
Код

template<typename A1,  typename A2>
struct pair
{
     A1 first;
     A2 second;
};
template <typename A>
pair<A1, A2> make_pair (A1 a1, A2 a2)
{
    return pair<A1,A2>(a1,a2);
}

как видно для make_pair абсолютно не важно чем являются A1, и А2.. главное что надо из них сделать структуру.. 

Цитата(mimik @  20.3.2011,  13:23 Найти цитируемый пост)
_1 это имя? или это параметр по умолчанию? 

 smile, имя..

Цитата(mimik @  20.3.2011,  13:23 Найти цитируемый пост)
да это другое, но чем оно хуже?

может и не хуже, но не подходит для той задачи
smile


--------------------
PM MAIL WWW   Вверх
alexvs11
Дата 20.3.2011, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


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

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



Цитата(mimik @  20.3.2011,  14:23 Найти цитируемый пост)
я с C++ не так хорошо знаком


Цитата(mimik @  20.3.2011,  13:33 Найти цитируемый пост)
a = {1, 10, 3};func(a);

оно и видно, в с++ запрещена инициализация подобным образом

Цитата(mimik @  20.3.2011,  14:23 Найти цитируемый пост)
a1, a2, a3 это осмысленные имена?

a[0], a[1], a[2] осмысленней?
PM MAIL   Вверх
mes
Дата 20.3.2011, 14:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



Цитата(alexvs11 @  20.3.2011,  13:48 Найти цитируемый пост)
оно и видно, в с++ запрещена инициализация подобным образом

там опечатка, не забывайте что мы ж не в разделе c++ и что собеседники могут быть знакомы с ним лишь поверхностно smile
главное что смысл передан..

Добавлено через 1 минуту и 28 секунд
Цитата(alexvs11 @  20.3.2011,  13:48 Найти цитируемый пост)
a[0], a[1], a[2] осмысленней? 

полагается что с массивом осуществляется работа в цикле.. а следовательно "ручного" 
a[0], a[1], a[2] в таком случае не будет.. 



--------------------
PM MAIL WWW   Вверх
Фантом
Дата 20.3.2011, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


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

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



Можно - в тех случаях, когда цифры представляют собой часть осмысленного имени и не являются в том или ином смысле номерами.
PM   Вверх
mes
Дата 20.3.2011, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



или вот простой пример - функция swap, по обмену содержимого двух переменных .. 
как называть ее аргументы ?


--------------------
PM MAIL WWW   Вверх
миг
Дата 20.3.2011, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



 
Цитата(mimik @  20.3.2011,  13:33 Найти цитируемый пост)
то и вызов этой функции будет примерно таким

Код

a1 = 1;
a2 = 10;
a3 = 2;
...
func(a1, a2, a3);

тогда не проще ли так
Код


a = {1, 10, 3};
func(a);


?

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

это смотря, что твориться внутри функции.
Разница в том, что в результате вычислений внутри функции void fun( int a[]) могут измениться данные  в массиве a..
в отличии от вызова функции void fun(int A[0],int A[1],int A[2] )

Это сообщение отредактировал(а) миг - 20.3.2011, 15:12
--------------------
Oaks may fall when reeds stand the storm.
PM MAIL   Вверх
mes
Дата 20.3.2011, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



вот для наглядности, сами посмотрите что читабельней :
Код

   std::bind (func, _1, _2, _3);   
   std::bind (func, first, second, third);


http://liveworkspace.org/code/2910ce13cff0...db0e784392b9f87


--------------------
PM MAIL WWW   Вверх
mimik
Дата 20.3.2011, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не Rohoss Я
*


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

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



Цитата(mes @  20.3.2011,  14:48 Найти цитируемый пост)
также как и first,second, third

1. тут сложней сделать ошибку
2. если эти переменные связаны, то да, это тоже плохие именна, но здесь мы никак не сможет оградить программиста

Цитата(alexvs11 @  20.3.2011,  14:48 Найти цитируемый пост)
a[0], a[1], a[2] осмысленней?

имхо, да
Код

points = [new Point(1,1), new Point(2,2)]
или
points = ["left-top":new Point(1,1), "right-bottom":new Point(2,2)]

гораздо лучше чем
Код

poinе1 = new Point(1,1)
poinе2 = new Point(2,2)
point3 = new Point(3,3)


Цитата(Фантом @  20.3.2011,  14:59 Найти цитируемый пост)
Можно - в тех случаях, когда цифры представляют собой часть осмысленного имени и не являются в том или ином смысле номерами.

можно пример?

Цитата(mes @  20.3.2011,  15:02 Найти цитируемый пост)
или вот простой пример - функция swap, по обмену содержимого двух переменных .. как называть ее аргументы ?

Код

function swap(left, right)
{}


Добавлено через 2 минуты и 3 секунды
Цитата(миг @  20.3.2011,  15:06 Найти цитируемый пост)
Разница в том, что в результате вычислений внутри функции void fun( int a[]) могут измениться данные  в массиве a..

ну можно поставить const, или как там
PM   Вверх
mes
Дата 20.3.2011, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



Цитата(mimik @  20.3.2011,  14:17 Найти цитируемый пост)
left, right

(left, right),  (lhs, rhs) , (a1,a2), (first,second), (_1, _2) 
являются в данном случае абсолютно равно осмысленными и зависят от вкуса разботчика.
но при количестве аргументов три и более, цифры вытесняют своих конкурентов..

Цитата(mimik @  20.3.2011,  14:17 Найти цитируемый пост)
ну можно поставить const, или как там 

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

Цитата(mes @  20.3.2011,  14:21 Найти цитируемый пост)
 с одним именем

имеется ввиду корень слова без цифрового/буквенного аффикса..

Цитата(mimik @  20.3.2011,  14:17 Найти цитируемый пост)
1. тут сложней сделать ошибку

зачастую, наоборот, легче.. ибо отнимает силы программиста на длинное чтение и  восстановление ассоциации.. 
цифры как ассоциативный ряд намного более наглядны.. 

Это сообщение отредактировал(а) mes - 20.3.2011, 15:30


--------------------
PM MAIL WWW   Вверх
LSD
Дата 22.3.2011, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 9
Всего: 538



Цитата(mimik @  20.3.2011,  15:17 Найти цитируемый пост)
function swap(left, right)

А почему левый-правый, а не верхний-нижний?


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
mimik
Дата 23.3.2011, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не Rohoss Я
*


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

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



Цитата(mes @  20.3.2011,  15:21 Найти цитируемый пост)
(left, right),  (lhs, rhs) , (a1,a2), (first,second), (_1, _2) являются в данном случае абсолютно равно осмысленными и зависят от вкуса разботчика.

имхо, не совсем
Цитата(LSD @  22.3.2011,  15:35 Найти цитируемый пост)
А почему левый-правый, а не верхний-нижний?

ну, левый операнд и правый операнд
в некоторых ЯП можно так
Код

a, b = b, a

Цитата(mes @  20.3.2011,  15:21 Найти цитируемый пост)
чтоб передать массив его надо "собрать", а это уже лишние строчки..

это в c++ так, в некоторых ЯП можно так
Код

func([1, 2, 3])

Цитата(mes @  20.3.2011,  15:21 Найти цитируемый пост)
зачастую, наоборот, легче.. ибо отнимает силы программиста на длинное чтение и  восстановление ассоциации.. 

вот мне недавно надо было добавить новый функционал в чужой код, так так вместо массива используется ассоциативный ряд, код на 2000 строк и с фнукциями с 40 параметрами,
мне сказали что вначале были 3 переменные, потом добавили ещё 2, а потом ещё 35  smile , код надо было написать быстро  и некогда было вникать в функионал, поэтому они просто копипастили,
сейчас, с массивом, этот код занимает где-то 200 строк

PM   Вверх
LSD
Дата 23.3.2011, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 9
Всего: 538



Цитата(mimik @  23.3.2011,  12:54 Найти цитируемый пост)
ну, левый операнд и правый операнд

Ну первый операнд, второй операнд smile , 
Так отчего бы их и не пронумеровать?


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
mimik
Дата 23.3.2011, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не Rohoss Я
*


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

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



Цитата(LSD @  23.3.2011,  13:13 Найти цитируемый пост)
Так отчего бы их и не пронумеровать?

если есть такая функция
Код

function swap(left, right)
{}

и надо будет добавить параметр, то тут код заставляет подумать о рефакторинге

а если
Код

function swap(param1, param2)
{}

то можно добавить новый парметр, а потом ещё, и ещё
потому что такой код изначально не требует напрягаться для написания

Это сообщение отредактировал(а) mimik - 23.3.2011, 13:25
PM   Вверх
LSD
Дата 23.3.2011, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 9
Всего: 538



swap() с тремя параметрами? smile  smile 


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
mes
Дата 23.3.2011, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



Цитата(mimik @  23.3.2011,  11:54 Найти цитируемый пост)
вот мне недавно надо было добавить новый функционал в чужой код, так так вместо массива используется ассоциативный ряд, код на 2000 строк и с фнукциями с 40 параметрами,
мне сказали что вначале были 3 переменные, потом добавили ещё 2, а потом ещё 35   , код надо было написать быстро  и некогда было вникать в функионал, поэтому они просто копипастили,
сейчас, с массивом, этот код занимает где-то 200 строк

 smile к чему сказано то это ?!
имелось ввиду, что для человека легче для восприятия :
Код

bind(f,  _7, _6, _5, _4, _2, _3, _1 )

чем
Код

bind(f, седьмой, шестой, пятый, четвертый, второй, третий, первый);

где вперед заметили и легче выявили не стыковку ?

Цитата(mimik @  23.3.2011,  11:54 Найти цитируемый пост)
это в c++ так, в некоторых ЯП можно так
Код

func([1, 2, 3])

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

Цитата(mimik @  23.3.2011,  12:23 Найти цитируемый пост)
тут код заставляет подумать о рефакторинге

ну заставляет.. поняли что все таки нужно 4ре одинаковых параметра.. как их теперь называть ?

Добавлено @ 16:00
Цитата(LSD @  23.3.2011,  14:56 Найти цитируемый пост)
swap() с тремя параметрами?

ну так речь же не о самом swape...

Добавлено @ 16:03
П.С. то что названия нужно изначально стараться подбирать наиболее эффективные и удобные, я не спорю..
я лишь говорю, что ситуации, когда именно цифровые аффиксы являются наиболее подходящими, не редки.. и не вижу ни одного повода не использовать их в таких случаях..

Добавлено через 11 минут и 31 секунду
кстати если бы я писал swap то с большой вероятностью назвал бы аргументы не (left, right),(lhs,rhs) - которые больше подходит для операторов, а (a,b) потому что на мой взгляд наиболее точно передают семантику и не добавляют лишнего мусора..
но a,b является по сути ничем не отличается от _1 _2.. последние бы не использовал (касается только (c++)), из за их "зарезервированного" смысла, как плейсхолдеры..






Это сообщение отредактировал(а) mes - 23.3.2011, 16:04


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


не Rohoss Я
*


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

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



Цитата(LSD @  23.3.2011,  15:56 Найти цитируемый пост)
swap() с тремя параметрами?

ну да
Код

temp = a;
a = b;
b = c;
c = temp;

Цитата(mes @  23.3.2011,  15:59 Найти цитируемый пост)
где вперед заметили и легче выявили не стыковку ?

да, это тоже не айс, но я и не предлагаю такой вариант, возможно там логичней будет массив или структура

Цитата(mes @  23.3.2011,  15:59 Найти цитируемый пост)
прежде всего массив создан из будет копий

массив/структура будет занимать примерно столько же памяти сколько и параметры функции, не?

Цитата(mes @  23.3.2011,  15:59 Найти цитируемый пост)
ну заставляет.. поняли что все таки нужно 4ре одинаковых параметра.. как их теперь называть ?

зависит, моно массивом, можно хэшмэп, можно классом

PM   Вверх
mes
Дата 23.3.2011, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



Цитата(mimik @  23.3.2011,  15:11 Найти цитируемый пост)
массив/структура будет занимать примерно столько же памяти сколько и параметры функции, не?

дело не в памяти, а в смысле, который вкладывается в решение.. 



--------------------
PM MAIL WWW   Вверх
mimik
Дата 23.3.2011, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не Rohoss Я
*


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

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



Цитата(mes @  23.3.2011,  16:12 Найти цитируемый пост)
дело не в памяти, а в смысле, который вкладывается в решение.. 

Цитата(mes @  20.3.2011,  15:21 Найти цитируемый пост)
цифры как ассоциативный ряд намного более наглядны

имхо, если в коде используется ассоциативный ряд, это один из поводов для того отрефакторить код, заменить ряд на массив/хэш/структуру/класс

имхо, если в каком-то ЯП не принято/оптимально/возможно использовать какой-то подход, это не означает что подход плохой,
в Lisp например, всё есть список smile
а в Java насколько я помню, функцию swap вообще написать не возможно, т.к. нельзя передать параметр по ссылке
PM   Вверх
LSD
Дата 23.3.2011, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 9
Всего: 538



Цитата(mimik @  23.3.2011,  16:11 Найти цитируемый пост)
ну да

Это уже простите не swap() а shift() smile 

А вообще мысль состоит в том, что иногда (не часто) функция принимает фиксированное количество параметров (потому неудобны массивы) которые семантически различаются только порядком в котором они переданы в функцию. Например sum(a1, a2), нет никакой разницы между первым и вторым аргументом. Потому я не вижу принципиальной разницы между: left/right, first/second, a1/a2.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
k0rvin
Дата 23.3.2011, 18:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(mimik @ 23.3.2011,  16:33)
в Lisp например, всё есть список smile

нет


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


не Rohoss Я
*


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

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



Цитата(k0rvin @  23.3.2011,  18:34 Найти цитируемый пост)
нет

http://ru.wikipedia.org/wiki/Lisp
Цитата

Все выражения записываются в виде списков — одной из основных структур Лиспа

я это хотел сказать


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


Опытный
**


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

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



Цитата(mimik @ 23.3.2011,  20:50)
Цитата(k0rvin @  23.3.2011,  18:34 Найти цитируемый пост)
нет

http://ru.wikipedia.org/wiki/Lisp
Цитата

Все выражения записываются в виде списков — одной из основных структур Лиспа

я это хотел сказать

тогда почему не сказал?

и таки не все.

123
123.4
123.4+5i
#\a
"abc"
x
|xyz|

и др.


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


не Rohoss Я
*


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

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



Цитата(k0rvin @  23.3.2011,  21:21 Найти цитируемый пост)
123

это литерал  smile 
Цитата(k0rvin @  23.3.2011,  21:21 Найти цитируемый пост)
и др.

скобки, запятая, плюс это всё выражения, ага, щас


PM   Вверх
_Y_
Дата 23.3.2011, 23:50 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 2
Всего: 34



Цитата(mimik @ 20.3.2011,  13:07)
если в конце названия переменных есть цифры, то это повод сделать массив из эти переменных.

Отнюдь. Все зависит от языка. Возьмем тот же пример с передачей данных формальным параметрам функции (подпрограммы, метода, и т.п.).
  • В ряде языков массив это объект и передается по ссылке, а переменные передаются по значению. Совсем разные вещи, не так ли?
  • В ряде языков массив в формальных параметрах функции не может иметь заданного размера. Поэтому такой массив снижает императивность кода.
  • Отведение памяти под массив обычно требует больше времени, чем под независимые переменные. Да и доступ к элементам массива обычно медленнее. Если имеются серьезные требования к быстродействию - массивы не лучшее решение.

Можно и дальше продолжать. ИМХО если цифры читабельности кода не снижают, недостатком они не являются. Впрочем, сам их использую очень редко.




--------------------
Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:)
PM MAIL WWW   Вверх
k0rvin
Дата 24.3.2011, 07:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(mimik @ 23.3.2011,  21:50)
скобки, запятая, плюс это всё выражения, ага, щас

конечно


--------------------
“Object-oriented design is the roman numerals of computing.” — Rob Pike
All software sucks
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила ведения Религиозных войн
Smartov
1. Уважайте собеседника
2. Собеседник != враг
3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez"

С уважением, Smartov.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Религиозные войны | Следующая тема »


 




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


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

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