Я использовал CodeSmith в течение прошлых 2 лет и люблю то, что он делает для меня. Однако я также знаю о T4, который встроен к Visual Studio и может сделать некоторый довольно интересный материал также. На основе переговоров с друзьями T4 в VS2010 T4 будет еще лучше.
Таким образом, вопрос: я продолжаю ехать на шине CodeSmith, или время это, чтобы начать преобразовывать все мои шаблоны к T4?
Обновление, Возможно, я не был ясен в способе, которым я задал вопрос. Очевидно, я не собираюсь удалять свои шаблоны cs и прекращать использовать их, пока у меня нет новой шаблонной работы. Однако это даже стоит усилия в этой точке? T4 в этой точке предлагают востребованное преимущество перед CodeSmith? Есть ли некоторая функция или набор функций, которые путем записи моих шаблонов для T4 вместо этого я буду видеть 100X улучшение моей эффективности?
Я был очень взволнован и взволнован по поводу T4 и попытался преобразовать все мои материалы CodeSmith в T4 - только чтобы узнать, что есть довольно много ошибок / не хватает от Т4.
Ознакомьтесь с сообщением в блоге Кэтлин Доллард What Wrong with T4 - она в значительной степени королева генерации кода на .NET, и она очень хорошо резюмирует это - я полностью согласен с ее проблемы.
В целом, после долгих экспериментов и попыток, я в значительной степени отказался от T4 - он просто еще не готов к использованию в прайм-тайм, по крайней мере, не для того типа шаблонов, с которыми я работал (в основном, проверка базы данных таблицы для извлечения значений, например, в качестве основы самодельной ORM, или для извлечения констант, настроек конфигурации и т. д.из базы данных)
И, экспериментируя с T4 в VS2010, я не уверен, сколько из этого было исправлено, правда .... не так много, кажется. Есть еще несколько интересных концепций ( предварительно обработанные шаблоны , предположительно поддержка параметров и т. Д.), Но большинство основных недостатков, похоже, все еще сохраняются .....
Итак, для сейчас: пока не выбрасывайте CodeSmith !! Возможно, T4 в VS2016 будет столь же мощным .... но до тех пор .....
Ресурсы: