![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
source777 |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1878 Регистрация: 12.3.2007 Репутация: 4 Всего: 56 |
Я вроде даже смайлик поставил, чтобы ты понял, что это издёвка над твоим пуризмом...
тут не более, чем разногласия в терминологии, можно говорить, что FileStream(про него речь шла) - "управляемая обёртка для неуправляемого ресурса", а можно и сократить... всё равно понятно, что имеется в виду. Где это я такое говорил?
Возьмём простой пример:
Я утверждаю, что данный код вполне ясен и без явного объявления типов, в данном случае нам достаточно знать, что GetOrders возвращает что-то IEnumerable<Order>, что и следует из его названия. Чтобы указать тип явно, у нас три пути: 1) держать весь API в памяти 2) воспользоваться столь не любимым (судя по всему даже презираемым) вами IntelliSense 3) найти декларацию метода(средствами VS, ну или если хочешь вручную) Однако никакой выгоды от явного указания типа мы в данном случае всё равно не получим! Эта оговорка появилась лишь в последнем сообщении, до этого было "можно, если ..., но всё равно не нужно" ![]() Это сообщение отредактировал(а) source777 - 15.9.2008, 11:20 -------------------- Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте |
||||
|
|||||
PashaPash |
|
||||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 13 Всего: 49 |
И из этого следует, что надо вызывать FileStream.Close в финализаторе? Оффтоп и не смешно. Перечитай Рихтера. А насчет сокращений - сократить управляемый класс до неуправляемого ресурса - это как-то слишком смело ![]()
Фишка примера в том, что переменная orders тебе тут не нужна. Вставь вызов GetOrders прямо в foreach - и одной переменной станет меньше. И про тип гадать не придется. А для sum ты тип почему-то указал явно, хотя он тоже выводится. Посмотри в комментах на хабре, там кто-то уже сделал баг - var sum=0; Хотя sum обладает вполне достаточной семантической ясностью - это ж сумма, что тут непонятного.
Когда это я писал "все равно не нужно"? Нужно, но только в паре вполне определенных случаев. |
||||
|
|||||
source777 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1878 Регистрация: 12.3.2007 Репутация: 4 Всего: 56 |
-------------------- Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |