接手我司一个项目,PHP 开发,有三个后台,分别是:
有些功能三个后台都有、有些则是某一、两个后台独占
往往这些功能在各个后台基本相同,只是部分细节、前端展示的数据不同
(例如我司后台发布文章时可选择发布到哪个企业下,而企业自己发布时只能发布在自己名下、禁止且隐藏企业选择框)
而有些功能呢,看似在各个平台一样,但逻辑流程却不同
这项目的前一位主程用的是复制粘贴解决,改一个需求可能要改 3 处地方,大毛病没有、小毛病不断。非常繁琐,我觉得应该合理复用
虽是这么说,但我对于如何复用这里面的代码、视图也没有很好的办法,目前也只是把新建、编辑页面合并这类的小优化
因此来请教一下大家有没有遇到过类似的问题?你们是如何解决的?
1
alen 2017-05-27 11:13:54 +08:00
功能封装,继承重写
|
2
isCyan 2017-05-27 11:49:20 +08:00 via Android
关注,也遇到类似疑惑
|
3
zaxlct 2017-05-27 13:01:17 +08:00 via Android
用一些前端框架,比如 vue,react 组件化一下?
|
4
ibufu 2017-05-27 13:07:15 +08:00
小业务组件化。
再将小业务封装成流程组件。 |
5
jybox 2017-05-27 13:21:15 +08:00
后端部分大部分代码移到 Model 或单独的 Service 层,然后 Controller 层( Web 框架的路由、中间件)只是调用 Model 和 View 和鉴权,三个部分有各自的 Controller 来进行不同的权限控制,其他部分全部复用。
|
6
nicevar 2017-05-27 19:12:10 +08:00
这种问题与需求相关,无论是做服务端还是客户端开发都能遇到,能抽象出来模块化当然好,但是如果下层的需求又需要各种定制,有时候复用本来做得很好,经过不断的需求填充,改得也不像样子
|