Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Почему VAR? / 17 сообщений из 17, страница 1 из 1
31.10.2013, 11:13
    #38447901
FullKettle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
Смотрю чужие исходники, примеры кода на данном форуме. Практически все любят объявлять переменные как var, особенно списки и массивы. Почему?
...
Рейтинг: 0 / 0
31.10.2013, 11:15
    #38447906
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
FullKettleСмотрю чужие исходники, примеры кода на данном форуме. Практически все любят объявлять переменные как var, особенно списки и массивы. Почему?

Короче, и при смене типов не приходится больше править. В общем, особого смысла нет, если не использовать анонимные типы
...
Рейтинг: 0 / 0
31.10.2013, 11:15
    #38447907
beg-in-er
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
FullKettleСмотрю чужие исходники, примеры кода на данном форуме. Практически все любят объявлять переменные как var, особенно списки и массивы. Почему?
дело вкуса. иногда это просто очень удобно.
не хочешь не пиши, за тебя всё равно это сделает компилятор.
...
Рейтинг: 0 / 0
31.10.2013, 11:18
    #38447911
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
тынць
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
31.10.2013, 11:18
    #38447913
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
AdventureWorks2012
Код: c#
1.
Dictionary<EmployeeDepartmentHistory, ProductModelProductDescriptionCulture> dictionary = new Dictionary<EmployeeDepartmentHistory, ProductModelProductDescriptionCulture>();



Код: c#
1.
var dictionary = new Dictionary<EmployeeDepartmentHistory, ProductModelProductDescriptionCulture>();
...
Рейтинг: 0 / 0
31.10.2013, 11:25
    #38447935
FullKettle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
МСУAdventureWorks2012
Код: c#
1.
Dictionary<EmployeeDepartmentHistory, ProductModelProductDescriptionCulture> dictionary = new Dictionary<EmployeeDepartmentHistory, ProductModelProductDescriptionCulture>();



Код: c#
1.
var dictionary = new Dictionary<EmployeeDepartmentHistory, ProductModelProductDescriptionCulture>();


Ну если только для "укорачивания", то соглашусь...удобно.
...
Рейтинг: 0 / 0
31.10.2013, 11:33
    #38447958
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
Arm79если не использовать анонимные типы

Псевдокод:
Код: c#
1.
2.
3.
4.
5.
6.
var items = List.Select(l => new {ShortName = l.Name, Value = l.Value });

foreach (var item in items)
{
    Console.WriteLine("{0}={1}", item.ShortName, item.Value);
}
...
Рейтинг: 0 / 0
31.10.2013, 11:33
    #38447959
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
FullKettleНу если только для "укорачивания", то соглашусь...удобно.
А как же анонимные типы?

Код: c#
1.
var obj = new { id = 123, title = "123" };
...
Рейтинг: 0 / 0
31.10.2013, 11:45
    #38447988
Matroskin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
Ну var - три кнопка нажать, а Dictionary<EmployeeDepartmentHistory, ProductModelProductDescriptionCulture> - даже боюсь считать.
Ну правда потом нужно будет искать, где же переменная объявлялась, но это детали.
Главное три кнопки. И можно намного быстрее программировать ...

P.S. Главное в программировании удобство разработчика - а на текущие лаги скоро новый проц выйдет ...
...
Рейтинг: 0 / 0
31.10.2013, 11:45
    #38447990
EDUARD SAPOTSKI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
FullKettleНу если только для "укорачивания", то соглашусь...удобно.
В больших приложениях могут быть сотни схожих по функционалу методов у которых по большому счету различны только некоторые типы. Юзая var такие методы создаются копипастом и редактированием правой части записей: new Dictionary<EmployeeDepartmentHistory, ProductModelProductDescriptionCulture>(); Как в примере МСУ. Левая часть остается неизменной.
В общем объем рутинной работы var очень значительно сокращает.
...
Рейтинг: 0 / 0
31.10.2013, 15:15
    #38448484
petalvik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
Когда пишут без var, указывая полные типы, то названия переменным очень часто дают краткие, ничего не говорящие, типа x, obj, item.

Использование var побуждает давать переменным осмысленные имена, вроде person, product и т. п. В результате читаемость кода может вырасти.
...
Рейтинг: 0 / 0
31.10.2013, 15:30
    #38448518
Пьяный Лох
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
EDUARD SAPOTSKIВ больших приложениях могут быть сотни схожих по функционалу методов у которых по большому счету различны только некоторые типы.
Для таких методов ("схожих по функционалу, различны только некоторые типы") придумали дженерики, этак ещё во времена .Net 2.0

petalvik Когда пишут без var, указывая полные типы, то названия переменным очень часто дают краткие, ничего не говорящие, типа x, obj, item.

Использование var побуждает давать переменным осмысленные имена, вроде person, product и т. п. В результате читаемость кода может вырасти.
Куски кода, приведённые в этом топике, несколько опровергают такую точку зрения :)
var dictionary = ...
foreach (var item in items)
var obj = new { id = 123, title = "123" };
Не видно, чтобы использование var к чему-то побуждало :)
...
Рейтинг: 0 / 0
31.10.2013, 16:45
    #38448689
EDUARD SAPOTSKI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
Пьяный ЛохДля таких методов ("схожих по функционалу, различны только некоторые типы") придумали дженерики, этак ещё во времена .Net 2.0
Ух ты, а я думал что про дженерики во времена .Net 2.0 и забыли
...
Рейтинг: 0 / 0
31.10.2013, 16:51
    #38448699
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
var — всему голова!
...
Рейтинг: 0 / 0
31.10.2013, 21:58
    #38449027
Абсолют
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
[quote Ex_Soft] тынць

var это и есть Strong Typed. Это же не dynamic или object.
...
Рейтинг: 0 / 0
01.11.2013, 11:26
    #38449511
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
On 31.10.2013 20:58, Абсолют wrote:
> [quote Ex_Soft]тынць < https://www.google.com/#q=c# var vs strongly typed>
>
> var это и есть Strong Typed. Это же не dynamic или object.

Вы думаете это я сам?
Я тока ввел c# var vs , а дальше уже google "подсказал"... Справедливости ради, в результатах поиска по выше оглашенному запросу ЭстЪ, к примеру, Misuse of the ‘var’ keyword in C# / C# Debate: When Should You Use var? которые, как раз, по теме ТС, IMHO...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
01.11.2013, 11:47
    #38449565
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему VAR?
P.S. BTW,strongly type d - я воспринял в контексте "печатать"/"набирать" (гл.)
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Почему VAR? / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]