什么" Opinionated API"意思?

时间:2015-02-16 06:27:08

标签: api python-3.x

我遇到了术语" Opinionated API"在阅读Python 3.4引入的ssl.create_default_context()函数时,它是什么意思?这种API的风格是什么?为什么我们称之为“#34;固定的人”?

非常感谢。

1 个答案:

答案 0 :(得分:12)

这意味着API的创建者为您做出了一些选择,在她看来是最好的。

例如,Web应用程序框架可以选择与选择的较低级库(对于日志,数据库访问,会话管理等内容)进行最佳协作(甚至捆绑或专门工作),而不是让您选择(然后必须配置你自己的。

ssl.create_default_context的情况下,一些安全专家考虑过合理安全的默认配置来配置SSL连接。特别是,它将可用的算法限制为那些仍然被认为是安全的算法,但代价是与遗留系统的完全兼容性,这是一种有利于他们(和我)意见的权衡。

基本上他们说"我们在这个领域有很多经验,我们真的认为你应该按照以下方式做事情"。

我认为这是对企业"的响应。 API声称可以与尽可能多的标准接口的每个实现一起使用(以牺牲配置和组合的复杂性为代价,需要昂贵的顾问来设置所有内容)。

或#34;约定配置"的自然延伸。

事情应该是开箱即用的,所以你只需要在特殊情况下使用专家设置(当时你应该知道你在做什么),而不是一个初学者对应用程序的各个方面做出明智的决定(可能以灾难告终)。