如果您要使用某些第三方库(日志,orm,di等)开始一个新项目,您是否更愿意通过使用流畅接口或XML文件进行编程来配置所有这些库?
您是否会使用仅支持其中一个选项(Fluent或XML)的库?或者您更喜欢可以在各种配置策略之间进行选择的库。
对于那些喜欢代码的人,请将此作为一个假设的例子(用C#编写)。
这是流利的配置:
LogConfiguration.ConfigureStorage()
.ForDatabase("CommonDB")
.AsMsSqlDatabase()
.WithConnectionString("server=(local); database=Northwind; Integrated Security=true;")
.AsDefault();
这是XML配置:
<logging>
<database name="CommonDB" provider="MSSQL" connString="server=(local); database=Northwind; Integrated Security=true;" default="true" />
</logging>
最后,Fluent和XML配置的优点和缺点是什么?
到现在为止,我们已经开始:
代码中的流畅配置
赞成
缺点
XML配置
赞成
缺点
答案 0 :(得分:1)
我倾向于使用xml作为我可能想要在构建后更改的属性(例如连接字符串,记录器)
我更喜欢代码中强类型(编译)的流畅配置,例如NHibernate映射,只在开发过程中发生变化。
答案 1 :(得分:0)
如果我能用流利的方式理解你,你的意思是代码?如果是这样,那么我肯定会选择XML。如果你说流利的是纯文本文件,那么我仍然会选择XML。 优点:
缺点:
目前我的所有项目都是基于XML的。
答案 2 :(得分:0)
我认为XML配置可能不如Java配置那么冗长甚至更简单。
查看我对the same config on XML and on Java DSL in Spring Integrations's wireTap
config
对于缺乏经验的程序员来说,XML配置也可能更为熟悉。因此,在未来维持此类配置的努力可能会更少。