Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ключевое слово var 
:(
    Опции темы
source777
Дата 15.9.2008, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 4
Всего: 56



Цитата(PashaPash @  13.9.2008,  18:03 Найти цитируемый пост)
Да еще и считаешь что венгерка может упростить отладку. 
Я вроде даже смайлик поставил, чтобы ты понял, что это издёвка над твоим пуризмом... 

Цитата(PashaPash @  13.9.2008,  18:03 Найти цитируемый пост)
Ты ж считаешь что StreamWriter - это "неуправляемый тип"
тут не более, чем разногласия в терминологии, можно говорить, что FileStream(про него речь шла) - "управляемая обёртка для неуправляемого ресурса", а можно и сократить... всё равно понятно, что имеется в виду.

Цитата(PashaPash @  13.9.2008,  18:03 Найти цитируемый пост)
а финализатор - это блок finally. 
Где это я такое говорил?


Цитата(PashaPash @  13.9.2008,  18:03 Найти цитируемый пост)
Ты можешь понять что делает чужой код, без знания о типах и интерфейсах переменных?
В принципе да, хотя и не в общем случае, а лишь в частном, когда идентификаторы обладают достаточной семантической ясностью. 
Возьмём простой пример:
Код

var dave = new Customer("dave");
var orders = dave.GetOrders();
decimal sum = 0;
foreach(var order in orders)
{
  sum += order.Price;
}

Я утверждаю, что данный код вполне ясен и без явного объявления типов, в данном случае нам достаточно знать, что GetOrders возвращает что-то IEnumerable<Order>, что и следует из его названия. Чтобы указать тип явно, у нас три пути:
1) держать весь API в памяти
2) воспользоваться столь не любимым (судя по всему даже презираемым) вами IntelliSense
3) найти декларацию метода(средствами VS, ну или если хочешь вручную)
Однако никакой выгоды от явного указания типа мы в данном случае всё равно не получим!


Цитата(PashaPash @  13.9.2008,  18:03 Найти цитируемый пост)
Я не предлагаю не использовать вар вообще
Эта оговорка появилась лишь в последнем сообщении, до этого было "можно, если ..., но всё равно не нужно"  smile 


Это сообщение отредактировал(а) source777 - 15.9.2008, 11:20


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
PashaPash
Дата 15.9.2008, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата(source777 @  15.9.2008,  11:17 Найти цитируемый пост)
тут не более, чем разногласия в терминологии, можно говорить, что FileStream(про него речь шла) - "управляемая обёртка для неуправляемого ресурса", а можно и сократить... всё равно понятно, что имеется в виду.
И из этого следует, что надо вызывать FileStream.Close в финализаторе? Оффтоп и не смешно. Перечитай Рихтера. А насчет сокращений - сократить управляемый класс до неуправляемого ресурса - это как-то слишком смело smile.

Цитата(source777 @  15.9.2008,  11:17 Найти цитируемый пост)
Возьмём простой пример:
---snip--
Однако никакой выгоды от явного указания типа мы в данном случае всё равно не получим!

Фишка примера в том, что переменная orders тебе тут не нужна. Вставь вызов GetOrders прямо в foreach - и одной переменной станет меньше. И про тип гадать не придется.
А для sum ты тип почему-то указал явно, хотя он тоже выводится. Посмотри в комментах на хабре, там кто-то уже сделал баг - var sum=0; Хотя sum обладает вполне достаточной семантической ясностью - это ж сумма, что тут непонятного.
Цитата(source777 @  15.9.2008,  11:17 Найти цитируемый пост)
Эта оговорка появилась лишь в последнем сообщении, до этого было "можно, если ..., но всё равно не нужно" 

Когда это я писал "все равно не нужно"? Нужно, но только в паре вполне определенных случаев.


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


Эксперт
***


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

Репутация: 4
Всего: 56



Цитата(PashaPash @  15.9.2008,  15:51 Найти цитируемый пост)
А для sum ты тип почему-то указал явно, хотя он тоже выводится.
Для примитивных типов, на мой взгляд, var несколько избыточен, хотя не спорю можно было написать var sum = 0m;  но не дало бы никакой выгоды...



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


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

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


 




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


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

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