上次也说过表现层是最难解决的,主要是解决复用和开发速度,目前的一些基本想法:

  • 有一个类似ECS的通用页面基本元素模型
  • 在上面的基本元素的基础上有项目需要的粒度更大一些的组件,例如下拉列表、表格甚至页面模版
  • 页面Builder,根据一定的规则可以自动创建页面的框架,然后开发人员只需要做一些小的调整
  • 和项目的模型层绑定,这样很多地方拿到模型后,使用Builder就可以使用非常少的代码得到外观一致的页面了
  • 引入AJAX,特别是一些过滤条件,根据一定的规则获取并更新到(可能增加一个客户端缓存),特别是Intranet应用,大部分可能都可以考虑使用AJAX
  • 基于规则的请求转发,不需要进行配置

其实,考虑这么多,主要是现在的视图层太灵活,因此代码风格以及解决问题的风格太不一致,维护起来简直是噩梦,给开发人员提供一个沙箱,他们只能在这个沙箱中发挥,那么产品整体的可维护性和一致性会大大提高。而且,开发的工作量也可以减少一倍以上,当然,搭建这个框架也需要很长时间,但是可以慢慢来,逐步的重构。