Это плохо для “думания” в LINQ, когда навык не передаваем вне C#? [закрытый]

У меня в конфиге два псевдонима:

alias.foo=commit -a -m 'none'
alias.coa=commit -a -m

, если мне лень, я просто фиксирую все изменения с помощью

git foo

и просто делаю быстрый коммит

git coa "my changes are..."

coa означает «совершить все»

9
задан KingNestor 30 June 2009 в 16:15
поделиться

10 ответов

К счастью, нет. Образ мышления «LINQ» более правильно понимать как «функциональный» образ мышления, и это мышление, которое можно легко перенести.

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

23
ответ дан 4 December 2019 в 06:08
поделиться

Вместо того, чтобы смотреть на ваше будущее за пределами C #, я сконцентрировался бы на том, что помогает вам выполнять свою работу сегодня.

Если это означает использование и свободное владение LINQ, пусть будет так. Пока вы готовы учиться и адаптироваться в будущем (как и сегодня), это не будет большой проблемой.

8
ответ дан 4 December 2019 в 06:08
поделиться

Это имеет значение? У каждого языка есть свои уникальные приятные особенности. Это все равно, что сказать: «Будет ли использование фигурных скобок в C # затруднять его перенос на другой язык без фигурных скобок?»

4
ответ дан 4 December 2019 в 06:08
поделиться

Тебе это не повредит. Я искренне верю, что все современные языки очень скоро перейдут на этот синтаксис. Java уже движется в этом направлении, и другие языки последуют с чем-то похожим. MS, несмотря на все крики, которые они получают, в этом деле намного опередила остальных. Устранен целый класс ошибок, связанных с временными переменными / массивами с точки зрения запросов к объектам массива. Преимущества этого огромны.

3
ответ дан 4 December 2019 в 06:08
поделиться

LINQ - отличная вещь. Он будет распространяться. Фактически, распространение уже началось .

1
ответ дан 4 December 2019 в 06:08
поделиться

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

Может ли то же самое случиться с LINQ?

1
ответ дан 4 December 2019 в 06:08
поделиться

Да, вам будет больно, если LINQ to SQL будет единственным известным вам sql.

0
ответ дан 4 December 2019 в 06:08
поделиться

Я думаю, что важно понимать, что происходит за кулисами высокоуровневых абстракций, таких как LINQ, иначе могут возникнуть проблемы, например, с производительностью. Как ни странно, последнее сообщение нашего хоста в блоге посвящено этой теме.

Так что, если «думать в LINQ» означает забыть об этом, что, как я подозреваю, так и происходит с некоторыми разработчиками (за исключением нынешней компании), это можно считать "плохо".

0
ответ дан 4 December 2019 в 06:08
поделиться

Я нахожу это понимание логики Это помогает мне лучше освоить методы расширения LINQ. Если вы можете написать свои собственные методы расширения Where или Group ..etc, то их можно использовать без стыда.

0
ответ дан 4 December 2019 в 06:08
поделиться

Да, ваше беспокойство справедливо.

То есть, когда вы научитесь использовать любой инструмент, вы начинаете забывать, как хорошо работать без этого инструмента. Вы также расстраиваетесь, когда этот инструмент недоступен.

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

В течение десятков лет люди писали программное обеспечение без взаимодействия с компьютером в реальном времени, например, перфокарты. Они не были несчастными. Сегодня очень немногие умеют это делать. Сама идея сделать это кажется мне ужасной.

Если вы станете знатоком Linq, вы упустите его, когда его нет рядом. Это отличный инструмент. По мере роста вашего мастерства в Linq ваши навыки программирования без Linq (которые вы не практикуете) станут ржавыми.

Во всех вышеупомянутых случаях мы заменили человеческий навык на инструмент + новый человеческий навык. Каждый раз идея отказаться от инструмента звучит пугающе. Я считаю, что всегда есть некоторая ценность в изучении более старого, менее технологичного способа ведения дел, поскольку он помогает мне стать более разносторонним, но обычно я выбираю более высокотехнологичный способ.

Итак, дон Не уклоняюсь от Linq, но изучите другие способы делать что-то в рамках вашего самообразования как программиста.

5
ответ дан 4 December 2019 в 06:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: