Мне нравятся функции С# 3.0, особенно лямбда-выражения, автоматически реализованные свойства или в подходящих случаях, также неявно типизированные локальные переменные (ключевое слово var
), но когда мой босс обнаружил, что я их использую, он попросил меня не использовать какой-либо С# 3.0 в работе. Мне сказали, что эти функции не являются стандартными и запутанными для большинства разработчиков, и его полезность сомнительна. Мне было запрещено использовать только функции С# 2.0, и он также рассматривает возможность запрещения анонимных методов.
Поскольку мы ориентируемся на .NET Framework 3.5, я не вижу причин для этих ограничений. На мой взгляд, возможно, единственным недостатком является то, что моим небольшим сотрудникам и боссу (также программисту) придется изучить некоторые основы С# 3.0, которые не должны быть трудными. Что вы думаете об этом? Правильно ли мой босс, и я что-то упускаю? Есть ли веские причины для такого ограничения в компании-разработчике, где С# является основным языком программирования?