• 请不要在回答技术问题时复制粘贴 AI 生成的内容
mokeyjay
V2EX  ›  程序员

请教各位在正式项目中关于代码和视图合理复用的问题

  •  
  •   mokeyjay ·
    mokeyjay · May 27, 2017 · 2816 views
    This topic created in 3303 days ago, the information mentioned may be changed or developed.

    接手我司一个项目,PHP 开发,有三个后台,分别是:

    • 我司自己用的最高权限后台
    • 下放给其他企业的企业后台
    • 普通用户后台

    有些功能三个后台都有、有些则是某一、两个后台独占
    往往这些功能在各个后台基本相同,只是部分细节、前端展示的数据不同
    (例如我司后台发布文章时可选择发布到哪个企业下,而企业自己发布时只能发布在自己名下、禁止且隐藏企业选择框)

    而有些功能呢,看似在各个平台一样,但逻辑流程却不同

    这项目的前一位主程用的是复制粘贴解决,改一个需求可能要改 3 处地方,大毛病没有、小毛病不断。非常繁琐,我觉得应该合理复用
    虽是这么说,但我对于如何复用这里面的代码、视图也没有很好的办法,目前也只是把新建、编辑页面合并这类的小优化
    因此来请教一下大家有没有遇到过类似的问题?你们是如何解决的?

    6 replies    2017-05-27 19:12:10 +08:00
    alen
        1
    alen  
       May 27, 2017
    功能封装,继承重写
    isCyan
        2
    isCyan  
       May 27, 2017 via Android
    关注,也遇到类似疑惑
    zaxlct
        3
    zaxlct  
       May 27, 2017 via Android
    用一些前端框架,比如 vue,react 组件化一下?
    ibufu
        4
    ibufu  
       May 27, 2017
    小业务组件化。
    再将小业务封装成流程组件。
    jybox
        5
    jybox  
       May 27, 2017
    后端部分大部分代码移到 Model 或单独的 Service 层,然后 Controller 层( Web 框架的路由、中间件)只是调用 Model 和 View 和鉴权,三个部分有各自的 Controller 来进行不同的权限控制,其他部分全部复用。
    nicevar
        6
    nicevar  
       May 27, 2017
    这种问题与需求相关,无论是做服务端还是客户端开发都能遇到,能抽象出来模块化当然好,但是如果下层的需求又需要各种定制,有时候复用本来做得很好,经过不断的需求填充,改得也不像样子
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5553 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 06:27 · PVG 14:27 · LAX 23:27 · JFK 02:27
    ♥ Do have faith in what you're doing.