
Анатолий
29.06.2017
17:47:51
Но, главная магия в этом:
List<Object> _objects = new List<Object>();
_objects.Add("Тест"); // Сработает
_objects.Add(123); // Сработает, внезапно :)

Лолитка
29.06.2017
17:49:47

Alan
29.06.2017
17:53:42

Google

Лолитка
29.06.2017
17:54:43
тебе придется больше методов делать
это уже не совсем сахар
да и местами без него вообще придется архитектурные узкие места перестраивать, хотя вот тут я тебе пример сходу не придумаю
Короче, у тебя есть сумма

Анатолий
29.06.2017
17:55:55
Позволяет работать с произвольными типами, сохраняя сторонки типизацию

Лолитка
29.06.2017
17:55:57
И допустим тебе нельзя приводить типы
Ты либо перегрузишь метод энное количество раз
Либо сделаешь его подстановочным
и сможешь дать внутрь любой из чисельных
К слову, я знаю как в джавке ограничить сверху/снизу типы для подстановке, а в шарпах как?

Анатолий
29.06.2017
17:57:31
А ещё можно использовать where... ммм, вкуснота, короче :)
Where T : IMyInterface

Anatoly
29.06.2017
17:58:47

Google

Anatoly
29.06.2017
17:58:54
Я хз как ещё объяснить :)

Alan
29.06.2017
18:06:26
Вообще, чем глубже копаю, тем больше складывается ощущение, что С# состоит из ненужного функционала чуть менее, чем полностью. То, что без generic выйдет длиннее мне и так ясно) Почти всегда так и бывает, то же самое с return, get, set. Что угодно можно делать без них, но некоторым людям проще сделать код нечитаемым, чем длинным.

Лолитка
29.06.2017
18:07:03
Это он для тебя нечитаемым
А отстутствие дублирования - как раз метрика адекватности кода

Mitolya
29.06.2017
18:07:29
Вообще, чем глубже копаю, тем больше складывается ощущение, что С# состоит из ненужного функционала чуть менее, чем полностью. То, что без generic выйдет длиннее мне и так ясно) Почти всегда так и бывает, то же самое с return, get, set. Что угодно можно делать без них, но некоторым людям проще сделать код нечитаемым, чем длинным.
попахивает пайтоном...

Лолитка
29.06.2017
18:07:54
Опять таки, в адвансед штуках без него может и не обойдешься
это пока у тебя голый метод все хорошо

Vlad
29.06.2017
18:08:07
Вообще, чем глубже копаю, тем больше складывается ощущение, что С# состоит из ненужного функционала чуть менее, чем полностью. То, что без generic выйдет длиннее мне и так ясно) Почти всегда так и бывает, то же самое с return, get, set. Что угодно можно делать без них, но некоторым людям проще сделать код нечитаемым, чем длинным.
Плохо кажется

Gid
29.06.2017
18:08:09
Вообще, чем глубже копаю, тем больше складывается ощущение, что С# состоит из ненужного функционала чуть менее, чем полностью. То, что без generic выйдет длиннее мне и так ясно) Почти всегда так и бывает, то же самое с return, get, set. Что угодно можно делать без них, но некоторым людям проще сделать код нечитаемым, чем длинным.
Каждый раз как захожу
Тупо стреляет орудие
Из какого-то вопроса или вброса

Лолитка
29.06.2017
18:08:31
а если тебе придется пихать, я не знаю, методы в какие-то делегаты
и чот там дальше
хреначить
то без этого тебе, вероятно, придется потратить куда больше времени
ты еще на лямбды поругайся
типа фу, нечитаемо

Gid
29.06.2017
18:09:36
Какие-то гет сет, нахуй оно надо все делать паблик статик))))00
Можно доступ быстро получить
Без экземпляра класса

Google

Gid
29.06.2017
18:09:58
Удобная разработка
Какие-то делегаты дженерики ивенты

Vlad
29.06.2017
18:10:19
Global variables

Лолитка
29.06.2017
18:10:20
Нет, ну он про то что методы аксесоры можно написать

Gid
29.06.2017
18:10:30

Vladimir Bondaryuk
29.06.2017
18:10:35
А все классы это один но partial ?

Gid
29.06.2017
18:10:38
Как в жаве будет

Лолитка
29.06.2017
18:10:38
формально, работать будет
ага

Gid
29.06.2017
18:10:50
На каждый чих гет сет через методы

Лолитка
29.06.2017
18:11:48
Но тип, приоритеты шарпов джавок и прочего - это скорее скорость разработки, оттуда и ноги растут этого всего.
И это дохрена удобно когда ты знаешь чо происходит.
А если тебе не нужен сахар - можно писать на ассемблере.
Все то же самое - только медленно, зато понятно - пиздец

Лолитка
29.06.2017
18:12:19
Вот уж где читаемость кода

Кирилл
29.06.2017
18:12:59
Все равно в IL коде сводится к полям и методам

Летучая
29.06.2017
18:13:02
Делать лишнюю работу как делали в 90-ых

Кирилл
29.06.2017
18:13:38
Сарказм mode

Лолитка
29.06.2017
18:13:38
это все неважно
там пендосы на апач лазер повесили

Летучая
29.06.2017
18:13:50
Вообще да, не нужны паблик-статик программисты

Google

Artemko
29.06.2017
18:30:43
Вообще, чем глубже копаю, тем больше складывается ощущение, что С# состоит из ненужного функционала чуть менее, чем полностью. То, что без generic выйдет длиннее мне и так ясно) Почти всегда так и бывает, то же самое с return, get, set. Что угодно можно делать без них, но некоторым людям проще сделать код нечитаемым, чем длинным.
Тебе надо изучить либо чуть comp sci, либо податься в go

Alan
29.06.2017
18:31:01
Походу придётся уйти в процедурку)

Artemko
29.06.2017
18:32:22
Помнится, чувак сделал chatroulette целиком на Response.Write и поимел свои миллионы
Но не все ж такие мозговитые

Анатолий
29.06.2017
18:35:45
Сахар адски удобен тем, что позволяет разложить все по полочкам и лишает многих очевидных способов прострелить коленку, при этом добавляя несколько неочевидных.

Gid
29.06.2017
18:37:38
Как раз без работы будешь

Admin
ERROR: S client not available

Gid
29.06.2017
18:38:10
Отдыхать
А отдых это очень хорошо

Alan
29.06.2017
18:38:47
чувствую с дженериками я даж до поиска вакансий не дойду) XD

Анатолий
29.06.2017
18:42:27
И case
К примеру
if (a is string s) return s.Length();
и
switch (x){
case string s:
return s.Length();
case int i:
return i+1;
default:
throw new WtfException();
}

Alan
29.06.2017
18:49:39
впринципе можно брать готовые примеры кода с generic, а потом в CIL смотреть как это работает на самом деле. В wiki сказано что в Visual Studio можно смотреть также intermediate код. Я так в 2014 году смог понять Console.Write, хотя даже для ООП наверное продвигаюсь очень медленно (учу C# с весны 2014)

pew
29.06.2017
18:51:16
...

Gid
29.06.2017
18:52:58
.....
С 2014 года

Gena
29.06.2017
18:56:15
А что было неясно в Console.Write ?)

Google

Лев
29.06.2017
18:58:12
?

pew
29.06.2017
18:59:18
ну вы щя чувака совсем засмущаете

Artem
29.06.2017
19:00:06

Лев
29.06.2017
19:00:23
Может чувак просто троллит

Artem
29.06.2017
19:00:36

Alan
29.06.2017
19:01:18
ну сейчас 17. вообще хотел в 12 программирование начать, но тогда взялся за с++ и бросил, когда упёрся в "if"

Лев
29.06.2017
19:01:37
Он 100% троллит

Alan
29.06.2017
19:01:42
вообще сам с геймдева, но там больше leveldesign и 3D моделлированием занимался.

Влад
29.06.2017
19:01:54
Эээ.
Ухади.
"троллить" здесь - моя работа.

Alan
29.06.2017
19:02:45
ну я не знаю, 17 это рано или поздно

Mitolya
29.06.2017
19:03:06

Alexander
29.06.2017
19:03:08
@pulkzerstorer Это нормально, большинство по такому же пути шли.

Влад
29.06.2017
19:03:29
Я в 12 игрался с Game Maker)(

Alexander
29.06.2017
19:03:45
Вообщем большая часть кто перешел на C# - тот кто не смог себя реализовать в нативной разработке.

Влад
29.06.2017
19:03:46
Я начал в 16.
*прошло 9 месяцев*
Эта группа больше не существует