Zope:开发企业级应用程序的最佳实践
Zope: Best pratice to develop enterprise grade application
我有许多使用 Zope 开发的遗留应用程序,我想将它们发展为企业级应用程序。
但是我没有找到足够的文档来在 Zope 中开发“现代”应用程序:
- 身份验证:如何集成
Products.PluggableAuthService
?
- ORM:如何使用 ORM 来抽象堆栈中的数据模型?
- 应用程序架构:我可以为每个模型或每个视图构建一个产品吗?或者有其他组织应用程序的方法?
- 版本控制和部署activity。
在哪里可以找到完成我的任务的文档、示例和最佳实践?
标准的 Zope 文档对我来说是旧的和不完整的。
首先,我会尝试大致了解应用程序的状态。他们 运行 使用的是哪个 Zope 版本?请注意,不再维护广泛传播的 2.13 版本(或更低版本),请参阅 https://www.zope.dev/developer/roadmap.html
如果您知道自己拥有什么,则可以估计将它们移植到受支持版本上的工作量,或者替换应用程序是否更有意义。
how can I integrate Products.PluggableAuthService
该插件有很好的文档,参见https://productspluggableauthservice.readthedocs.io/en/latest/ - also have a look in the example plugins. If you have specific questions, I would suggest you to ask in the following forum - https://community.plone.org/
ORM: how can I use an ORM to abstract data model in my stack?
对于 Zope 应用程序,您通常不使用 ORM。模型 类 继承自 Persistent 或类似模型。
Application Architecture: may I build a Product for each Model or for each View? Or there is another way to organize the application?
通常一个产品包含模型和必要的视图,但您当然也可以在一个大文件夹中开发应用程序。这取决于您的喜好和开发团队的规模。
Versioning and Deploy activity.
对于版本控制,我只是使用 git,就像现在的每个人一样。
对于部署,有构建,或者使用 requirements.txt 或 ansible 或我使用的 pip ... https://batou.readthedocs.io/en/stable/
Where can I find documentation, samples and best practice to do my task?
您可以看看 Plone,因为 Plone 是一个非常现代的 Zope 应用程序。
The standard Zope documentation is old and incomplete to my scope.
Zope 4 的 Zope 文档已经部分更新。事实上,文档太丰富了,维护人员的团队非常小,现在“没有人”开始一个新的 Zope 项目。
实际发生了什么 - 它会不时地在完成工作时更新,例如行为发生变化,然后文档也会更新。
尝试使用文档,当您发现某些过时的内容时,尝试修复/更新它,这就是我学习使用 Zope 的方式。
除此之外 - 我认为这非常棒,Zope 仍然存在,可以工作,并且在几天内就安装了安全补丁,因为它已经有 20 多年的历史,而且维护人员的数量非常少。
我有许多使用 Zope 开发的遗留应用程序,我想将它们发展为企业级应用程序。 但是我没有找到足够的文档来在 Zope 中开发“现代”应用程序:
- 身份验证:如何集成
Products.PluggableAuthService
? - ORM:如何使用 ORM 来抽象堆栈中的数据模型?
- 应用程序架构:我可以为每个模型或每个视图构建一个产品吗?或者有其他组织应用程序的方法?
- 版本控制和部署activity。
在哪里可以找到完成我的任务的文档、示例和最佳实践?
标准的 Zope 文档对我来说是旧的和不完整的。
首先,我会尝试大致了解应用程序的状态。他们 运行 使用的是哪个 Zope 版本?请注意,不再维护广泛传播的 2.13 版本(或更低版本),请参阅 https://www.zope.dev/developer/roadmap.html
如果您知道自己拥有什么,则可以估计将它们移植到受支持版本上的工作量,或者替换应用程序是否更有意义。
how can I integrate Products.PluggableAuthService
该插件有很好的文档,参见https://productspluggableauthservice.readthedocs.io/en/latest/ - also have a look in the example plugins. If you have specific questions, I would suggest you to ask in the following forum - https://community.plone.org/
ORM: how can I use an ORM to abstract data model in my stack?
对于 Zope 应用程序,您通常不使用 ORM。模型 类 继承自 Persistent 或类似模型。
Application Architecture: may I build a Product for each Model or for each View? Or there is another way to organize the application?
通常一个产品包含模型和必要的视图,但您当然也可以在一个大文件夹中开发应用程序。这取决于您的喜好和开发团队的规模。
Versioning and Deploy activity.
对于版本控制,我只是使用 git,就像现在的每个人一样。
对于部署,有构建,或者使用 requirements.txt 或 ansible 或我使用的 pip ... https://batou.readthedocs.io/en/stable/
Where can I find documentation, samples and best practice to do my task?
您可以看看 Plone,因为 Plone 是一个非常现代的 Zope 应用程序。
The standard Zope documentation is old and incomplete to my scope.
Zope 4 的 Zope 文档已经部分更新。事实上,文档太丰富了,维护人员的团队非常小,现在“没有人”开始一个新的 Zope 项目。
实际发生了什么 - 它会不时地在完成工作时更新,例如行为发生变化,然后文档也会更新。
尝试使用文档,当您发现某些过时的内容时,尝试修复/更新它,这就是我学习使用 Zope 的方式。
除此之外 - 我认为这非常棒,Zope 仍然存在,可以工作,并且在几天内就安装了安全补丁,因为它已经有 20 多年的历史,而且维护人员的数量非常少。