Re[11]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 09:28
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>А я утверждаю, что зачастую усложняет. Приходится невольно думать о том, что означают все эти типы, хотя это далеко не всегда важно.


Не понял, почему приходится? Кто-то заставляет? Если не важно, то не думай, в чем проблема?
лэт ми спик фром май харт
Re[12]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 09:29
Оценка:
Здравствуйте, Undying, Вы писали:

U>var же вынуждает пользоваться intellicence при чтении кода и для определения типов локальных переменных тоже, т.е. intellicence приходиться использовать чаще.


+1
Причем intellicence доступен далеко не всегда. Например, он недоступен при мержевании, или сравнении версий исходников.
лэт ми спик фром май харт
Re[13]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 09:32
Оценка:
Здравствуйте, MxKazan, Вы писали:

MK>Да, да. И это тоже при-выч-ка. Ну не можешь без точного типа и всё тут. А нужно просто расслабиться и получать удовольствие Просто попробуй не замечать var — ну есть переменная и Слава Богу! Со временем, привычка "искать тип" уйдет и var начнет нравицца


Знание типов необходимо, чтобы знать, что именно делает этот код. Название методов не несет всех требуемых нюансов.
лэт ми спик фром май харт
Re[12]: LINQ как шаг к функциональному программированию
От: Undying Россия  
Дата: 22.01.09 09:34
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Не знаю как на счет дураков. Но твой код надо писать уж тогда еще прикольнее:

VD>
VD>delegate
VD>{
VD>  t1 x1 = modifyDeviceGridSynch;
VD>  t2 x2 = x1.VisibleDataRegion;
VD>  int result = x2.Height;
VD>  return result;
VD>}
VD>

VD>Потому как типы всех промежуточных значений так же не известны из контекста.
VD>Паранойя? Однозначно! Но это ваша, сударь, паранойя.

Ты в своем репертуаре
Автор: VoidEx
Дата: 21.01.09
— "давайте доведем мысль оппонента до абсурда, а потом с блеском ее опровергнем".

Я утверждал, что знание типов упрощает понимание кода. Я нигде не утверждал, что любая форма добавления информации о типах в код (например, создание для этого временных переменных) заведомо улучшает читабельность кода.
Re[13]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 09:36
Оценка: +1
Здравствуйте, Ziaw, Вы писали:

Z>Нам не важен конкретный тип переменной. Нам важен лишь смысл вызовов методов, его можно понять не зная конкретного типа.


А если общего смысла недостаточно, а надо знать нюансы, так как где-то баг?
лэт ми спик фром май харт
Re[15]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 09:39
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>Я пока мне не докажут обратного, я буду считать, что Шарик собака. Если я узнаю, что в моей программе кто-то назвал кошку Шариком я буду сильно ругаться, вне зависимости, указал он явно что это кошка или это вывел компилятор.


Замени "Шарик" на "Васька".
лэт ми спик фром май харт
Re[15]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 09:40
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>Я пока мне не докажут обратного, я буду считать, что Шарик собака.


Из-за этого баг, который сидит где-то в методе кошки, ты будешь упорно и безрезультатно искать в собаке.
лэт ми спик фром май харт
Re[14]: LINQ как шаг к функциональному программированию
От: Ziaw Россия  
Дата: 22.01.09 09:46
Оценка:
Здравствуйте, mrTwister, Вы писали:

Z>>Нам не важен конкретный тип переменной. Нам важен лишь смысл вызовов методов, его можно понять не зная конкретного типа.


T>А если общего смысла недостаточно, а надо знать нюансы, так как где-то баг?


Тогда шаримся в нюансах, дебажим и т.п. Типы переменных на виду это очень незначительная толика нюансов.
... << RSDN@Home 1.2.0 alpha 4 rev. 0>>
Re[16]: LINQ как шаг к функциональному программированию
От: Ziaw Россия  
Дата: 22.01.09 09:51
Оценка:
Здравствуйте, mrTwister, Вы писали:

T>Замени "Шарик" на "Васька".


Нужно учиться писать код, чтобы он не выглядел двусмысленным. Ставить вместо этого подпорки в виде аннотаций типов не имеет никакого смысла.
... << RSDN@Home 1.2.0 alpha 4 rev. 0>>
Re[17]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 09:51
Оценка:
Здравствуйте, VladD2, Вы писали:

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


Вот пренебрежения правилами читаемости и непротиворечивости текста и вдет к тому, что: "Отладчик — это наше всё!!! "
лэт ми спик фром май харт
Re[16]: LINQ как шаг к функциональному программированию
От: Ziaw Россия  
Дата: 22.01.09 09:54
Оценка:
Здравствуйте, mrTwister, Вы писали:

Z>>Я пока мне не докажут обратного, я буду считать, что Шарик собака.


T>Из-за этого баг, который сидит где-то в методе кошки, ты будешь упорно и безрезультатно искать в собаке.


У меня есть IDE, я сначала попадаю в нужный метод, а потом выясняю какому же классу он принадлежит.
... << RSDN@Home 1.2.0 alpha 4 rev. 0>>
Re[18]: LINQ как шаг к функциональному программированию
От: Ziaw Россия  
Дата: 22.01.09 09:58
Оценка:
Здравствуйте, mrTwister, Вы писали:

T>Вот пренебрежения правилами читаемости и непротиворечивости текста и вдет к тому, что: "Отладчик — это наше всё!!! "


Андаинг приводит такие шедевры читабельности, что просто диву даешься. Может быть у вас найдется хороший пример, где var делает код двусмысленным, а явное указание снимает данный недостаток?
... << RSDN@Home 1.2.0 alpha 4 rev. 0>>
Re[13]: LINQ как шаг к функциональному программированию
От: hugo Австрия  
Дата: 22.01.09 09:58
Оценка: -1 :)
Здравствуйте, Undying, Вы писали:

U>Здравствуйте, hugo, Вы писали:


U>>>Объясни почему такой код по-твоему читабелен:

H>>Я НИГДЕ НЕ писал, что такой код читабелен, будь внимателен, когда отвечаешь. Теперь я уже вообще не пойму, о чем ты говоришь .

U>Я привел два варианта кода. В http://rsdn.ru/forum/message/3258359.1.aspx
Автор: hugo
Дата: 21.01.09
второй из вариантов ты поскипал, а по поводу первого варианта написал, что этот код нечитабелен. Это логично понять, как то, что второй вариант ты посчитал приемлимым. Если бы ты сразу написал, что оба варианта кода нечитабельны вопросов бы к тебе у меня не возникло.


У тебя не вопросы возникли, а телепатические умозаключения, основанные на том, что ты что-то там себе логично предположил. Не стоит мудрствовать и "читать" дальше моего ответа.
Re[18]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 10:00
Оценка: +3 :)
Здравствуйте, VladD2, Вы писали:

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


А еще лучше писать так, чтобы ошибку было видно и без отладчика.
лэт ми спик фром май харт
Re[13]: LINQ как шаг к функциональному программированию
От: hugo Австрия  
Дата: 22.01.09 10:03
Оценка:
Здравствуйте, Undying, Вы писали:


VD>>Паранойя? Однозначно! Но это ваша, сударь, паранойя.


U>Ты в своем репертуаре
Автор: VoidEx
Дата: 21.01.09
— "давайте доведем мысль оппонента до абсурда, а потом с блеском ее опровергнем".




Ты сам только что сделал что-то похожее здесь
Автор: Undying
Дата: 22.01.09
Re[10]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 10:03
Оценка:
Здравствуйте, Ziggi111, Вы писали:

Z>Можно. Ибо как уже писали выше, если функции обзывать не как попало, то всё понятно и без intellisense. Ну если конечно функция Дай_Хлеб() не возвращает колесо_от_самолёта.


Что возвращает "ExecuteSupercalifragilisticexpialidocious()"?
лэт ми спик фром май харт
Re[10]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 10:06
Оценка:
Здравствуйте, hugo, Вы писали:

H>На Erlang нет ни одного варианта, просто нету анотаций типов. Мне не мешает.


С чего ты взял, что тебе это не мешает, ведь ты не пробовал программировать на эрланге с аннотацией типов?
лэт ми спик фром май харт
Re[19]: LINQ как шаг к функциональному программированию
От: Ziaw Россия  
Дата: 22.01.09 10:08
Оценка:
Здравствуйте, mrTwister, Вы писали:

T>А еще лучше писать так, чтобы ошибку было видно и без отладчика.


Полностью согласен. Только явно указаные типы в этом не помогают никак.
... << RSDN@Home 1.2.0 alpha 4 rev. 0>>
Re[17]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 10:13
Оценка: 3 (1) -1
Здравствуйте, Ziaw, Вы писали:

Z>Здравствуйте, mrTwister, Вы писали:


T>>Замени "Шарик" на "Васька".


Z>Нужно учиться писать код, чтобы он не выглядел двусмысленным. Ставить вместо этого подпорки в виде аннотаций типов не имеет никакого смысла.


Ага, это все равно, что написать: "надо учиться писать код, чтобы в нём не было багов. Ставить вместо этого подпорки в виде статической типизации, автоматического управления памятью и пр. не имеет никакого смысла". С идеей, конечно, не поспоришь, но пользы от неё никакой.
лэт ми спик фром май харт
Re[15]: LINQ как шаг к функциональному программированию
От: mrTwister Россия  
Дата: 22.01.09 10:15
Оценка: 1 (1)
Здравствуйте, Ziaw, Вы писали:

Z>Тогда шаримся в нюансах, дебажим и т.п.


Бывает ещё так, что дебажить нельзя, или бессмысленно в виду невоспроизводимости бага. Остается только одно: тупо вчитываться в код. И тогда очень жалеешь, что ты не компилятор и не можешь автоматически в уме выводить типы.
лэт ми спик фром май харт
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.