“约定优于配置”范例的好处

时间:2010-12-03 15:30:24

标签: paradigms convention-over-configur

Web开发中的“约定优于配置”范例有哪些好处?是否存在坚持下去的情况?

由于

5 个答案:

答案 0 :(得分:6)

“公约”规定90%的时间都是某种方式。当您偏离该约定时,您可以进行更改...而不是强迫每个用户理解每个配置参数。这个想法是,如果你需要它不同,那么你将在那个时间点搜索它,而不是试图在所有配置参数中包围时常常没有实际价值。

恕我直言,它总是有意义的。使约定优先于显式配置是理想的。如果有人担心,他们会强迫自己调查需要。

答案 1 :(得分:3)

我认为好处很简单:无需配置。您不需要为此类资源定义位置,例如,app / framework可以自行查找它们。

对于没有意义的情况:任何需要替代配置的频繁情况,或者开发人员/管理员需要明确“选择加入”某些行为的情况(例如,为了防止可能产生安全隐患的意外和意外副作用)。

答案 2 :(得分:3)

约定优于Web开发中的配置范式的好处是提高了生产率,因为您无需进行配置即可设置所有规则,并且程序员不必做出更多决策。这在使用.NET Framework时很明显。

答案 3 :(得分:1)

最明显的好处是你必须编写较少的代码。让我们来看看Java Persistence API。当您定义具有属性和相应的setter / getter的POJO时,它是一个简单的类。但是当你使用@javax.persistence.Entity对它进行注释时,它就变成了一个可以在DB中持久化的实体对象(表)。现在这是通过一个简单的注释实现的,没有其他配置文件。

另一个优点是,你的所有逻辑都在一个地方,并且在一种语言中(即你摆脱了单独的xml)。

答案 4 :(得分:0)

我认为这篇wikipedia文章已经很好地说明了这一点:

关于配置的约定(也称为按惯例编码)是 尝试进行软件框架开发的软件设计范例 减少开发人员使用 需要制作框架,而不必失去灵活性。 该概念由David Heinemeier Hansson提出,用于描述 Ruby on Rails Web框架的基本原理,但与 较早的想法,例如“合理的违约”概念以及 用户界面设计中的最小惊讶原则。

该短语本质上意味着开发人员仅需指定 应用程序的非常规方面。例如,如果有一个 模型中的Sales类,数据库中对应的表是 默认情况下称为“销售”。只有一个人偏离了 惯例,例如“产品销售”表 有关这些名称的代码。

当工具实现的约定与所需的匹配时 行为,它的行为符合预期,而无需编写配置 文件。仅当所需行为偏离实现时 约定是必需的显式配置。