Как продвинуть и/или продать LINQ коллеге?

Как Вы продвигаете и/или продаете синтаксис LINQ коллеге, который не видит преимущества по ручному способу сделать вещь?

Для использования в качестве примера Linq к Entity/Sql вместо того, чтобы использовать плоскость ado.net без любого LINQ.

5
задан Fredou 19 January 2010 в 15:00
поделиться

8 ответов

Я бы лично начал с Linq к объектам. Вы не нуждаетесь в бай-то, а затем вы можете использовать Linq в своем коде, пусть он использует Foreach Coops, условия и т. Д. В своем коде ... и в конце концов он может заметить, что ваш код более декларативный, более четкий и короче.

Решение по использованию ORM VS RAIL ADO.NET является большим, IMO - и один с последствиями, находящимися за пределами только синтаксиса LINQ.

13
ответ дан 18 December 2019 в 08:28
поделиться

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

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

Мы вступаем в аналогичную проблему на моем месте работы. Мой аргумент был, что LINQ является последовательным способом запроса всего, что поддерживает iEnumerable (и другие), а не только базы данных. Но при использовании его в запросы базы данных вы получаете дополнительное преимущество в том, что все ваши запросы категорически набираются. Вы не получаете это при выполнении встроенных SQL или вызывая хранимые процедуры. Это преимущество огромен, когда определения сущности меняются. Компилятор сделает всю работу для вас.

2
ответ дан 18 December 2019 в 08:28
поделиться

Скажите им, что вы пересмотрели: теперь вы не любите LINQ и думаете, что это ужасный способ пойти.

Это должно сделать трюк. Просто шучу (в основном).

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

Некоторые из преимуществ :

  • Вы можете запросить не только базы данных, но файлы XML или любую коллекцию объекта с помощью одинакового синтаксиса - это полезно в длинном запуске
  • USIGN параметров нет нужды беспокоиться о E.g. Инъекции SQL
  • Вы можете запрос через отношения без необходимости явным присоединиться, Подобно этому

, самое большое преимущество всего, что я звоню, является первой точкой, такой же и простой синтаксис.

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

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

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

2
ответ дан 18 December 2019 в 08:28
поделиться

Заседание коричневого мешка. Проверьте свой код на экране и покажите, как его 20 строк кода могут быть переписаны в 2 или 3.

, которые в значительной степени продаются всем, что я его показал.

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

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

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

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

-121--3206170-

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

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

-121--3206176-

Покажите им мой демонстрационный ролик и спросите их, сколько кода потребуется, чтобы сделать то же самое в ADO.NET. Тогда обратите внимание, что в реальном мире, вероятно, между ними будут репозитории и сервисы, которые вы получите почти бесплатно с прогнозами LINQ.

Затем отобразите параллельные расширения в .NET 4 .

0
ответ дан 18 December 2019 в 08:28
поделиться
Другие вопросы по тегам:

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