Spring Python似乎是如何在Python中定义高质量API的黄金标准 - 它基于Spring,它似乎也是Java API的黄金标准。
我的经理抱怨(有充分的理由)我们的API一团糟 - 我们需要对它们施加一些订单。由于我们将重新分解,因此利用被认为是最佳实践的方法是有意义的 - 所以我们想考虑Spring。
有人能指出我开始使用Spring的最佳学习资源吗?我用Google搜索了一段时间,没有找到任何似乎从第一原则开始的东西。我正在寻找一些能够充分了解Python但在其他平台或其原则上对Spring缺乏了解的东西。
由于
答案 0 :(得分:10)
您是如何决定使用Spring Python作为首选API的? Spring在Java上运行良好,那里有声明性编程的传统;主要使用XML来控制核心引擎来定义应用程序是Java中的标准模式。
在Python中,虽然像Inversion of Control这样的底层模式仍然适用(取决于您的用例),但Spring选择的实现看起来像是由Java程序员生成的经典案例,他不想学习Python 。请参阅经常引用的文章Python is Not Java。
我赞赏您为您的代码库引入顺序和体贴的决定,但您可能希望在做出决定之前评估一些选项。特别是,你可能会发现使用Spring Python会让招聘优秀的Python程序员变得很困难,当面对描述对象交互的1000行XML文件时,许多人会以另一种方式运行。
也许从重新审视你真正想要完成的事情开始。问题不能仅仅是“你需要一个框架”。那里有很多框架,很难评估a)如果你真的需要一个,b)如果你没有确定你需要解决的底层软件问题,哪一个会起作用。
如果真正的问题是您的代码是一个无法维护的混乱,引入框架可能无法解决问题。而不仅仅是凌乱的代码,你将拥有其他人的风格混乱的代码:-)也许开发团队的严谨性是你应该首先推荐的地方:良好的规划,代码审查,严格的招聘实践,“清理”发布等等......
祝你好运。
答案 1 :(得分:1)
我不会建议Spring Python是坏的(因为我对它不够了解)。但是,将Spring Python称为“Python API的黄金标准”是一个延伸。对我来说,似乎Spring Python更像是一种允许Python应用程序使用Spring与Java Apps交互的方式。
无论如何,在对official documentation进行前瞻性的一瞥之后,对我来说,对Python有了不错的认识但对春天不了解,这似乎相当容易理解。除了它几乎看起来像Java代码,作者忘记了类型名,分号和花括号。 : - )