我正在建立一个应用程序,Sencha Touch和NodeJS作为后端。这个应用程序应该用于控制和报告城市公共交通的下落。我计划建造三个模块,一个用于乘客,一个用于驾驶员和一个管理模块。
我想的是,我应该在同一个应用程序中构建所有这些模块,并在登录时检查用户配置文件吗?或者我应该构建单独的应用程序(至少将一般用户模块与其他两个模块分开)以使其更安全。
如果乘客以某种方式访问任何其他模块,那显然会非常有害。
答案 0 :(得分:0)
有3个不同模块的第一个原因就是你所指出的 - 安全性。
这样做的第二个原因是 - 如果其中一个服务失败 - 如同一个大型代码库将整个批次降低 - 如同3个不同的服务,66%的服务仍在工作。
第三个原因是KISS - 保持简单愚蠢 - 一个大的代码库更难以推理和建模。错误会影响整个代码库。添加功能成为服务之间的权衡。
通常我会说,不仅要将您的应用分成3个模块,而且要将此方法降低到更低的水平,并尝试将内容分成单个组件'尽可能多。
考虑一下木匠制作一张桌子(大多数软件开发人员正在做的是订购')。
木匠不会下载制作'库作为一个大型代码库。
他们首先使用'锯'看木头的计划。
然后打磨'程序,以平滑木材。
然后是' Hammer'将木材放在一起的程序 - 等等注意每个步骤是一个工具如何完成一项工作。
第二天,木匠被要求做一把椅子 - 他们以不同的顺序使用相同的工具。
答案 1 :(得分:0)
我想说将访问划分为不同的信息是一个应用程序层问题,我会将它全部构建到同一个node.js应用程序中。如果该类型的用户有权访问其请求的信息,则此应用应检查用户权限。