dot*_*ter 2 .net t4 f# type-providers
据我所知,这两个工具都用于代码生成.使用t4生成的库可以在任何地方使用,类型提供程序只能与F#一起使用,那么重点是什么?
作为@pad说,这是可能的消耗从C#F#类型提供程序(取决于你如何实现你的类型提供商).
IMO,类型提供程序相对于T4的主要好处是它们作为.NET程序集分发,这使得从多个项目中使用它们变得更容易/更简单.AFAIK,T4要求您将宏文件复制(或以其他方式包含)到您想要使用它们的每个项目中.(自从我使用T4以来已经有几年了,所以它可能已经改变了.)
总的来说,我认为类型提供商和T4之间的功能有很大的重叠; 是的,如果您愿意,可以使用T4复制大部分类型提供程序功能.然而,你所做的函数编程越多,你就会越了解模块化 - 以恰当的数量 - 使函数式语言比它们的命令式函数更具生产力; 出于同样的原因,构造类型提供程序的方式以及它们与F#编译器集成的方式使它们在实践中比T4宏更好地使用.
| 归档时间: |
|
| 查看次数: |
463 次 |
| 最近记录: |