经历了非常多公司,看过好多代码。
传统行业公司普遍都有自己一套统一的开发框架,封装的非常傻瓜化。门槛极低,便于不同的项目高速开发上线。比方有一个银行业框架封装到开发者仅仅须要在界面上拖拽就完毕大部分工作,然后在拖拽好的模块里面加入一些业务代码就ok了。用友。华为也是类似。当然传统行业缺点是。一套框架用n年,老掉牙了也在用。有时候跟不上时代。
小的互联网公司有时候就不太注重,基本就以高速上线为主。草草完毕功能就能够了。阿里巴巴在开发框架封装方面做的也不是非常好。跟发展历史有关。也跟商业驱动有关,这个就不多谈了。
开发框架一说,有做java就觉得spring就ok了,或者spring我简单封装一下就ok了。
大错特错。做框架的目的是把与业务无关的全部细节隐藏掉,让开发者以最快最简单的方式完毕业务。拿做一个站点来说,抛开架构,仅就单机开发一个java站点,须要做的事情就非常多。
我认为起码须要规范或封装的部分:
- 后端
- 后端编码规范
- 分层规范 controller service dao。这个很重要
- 基础工具类 xxUtil
- Ioc aop spring能够实现
- mvc spring能够实现
- 数据库 数据源 事务 这个能够通过spring实现
- 日志记录 通过spring aop记录耗时日志,參数日志等
- 模板封装 jsp或vm等
- 数据校验
- 前端
- 前端js/css编码规范
- 前端统一字体、样式、控件规范
- 前端模块化开发 比如:sea.js
- form 校验
- ajax
- 无js化,參见angularjs jui(国内前端框架)
- 前后端结合
- 分页
- 异常处理及展示
- 页面跳转规范或ajax load规范
- 业务
- 单点登录
- 权限判定
- 评论
- 等等
总之有非常多。一定须要封装到让一个刚毕业的学生在2-3周就能够熟练开发。并且框架代码由专门的框架开发者进行升级维护及培训,保持框架的活力。
封装框架能够增强对设计模式及面向对象,aop的理解,仅仅有当你成功的完毕了一个框架的封装,你才干够继续往架构的方向前进。
当然对此有开发者颇有争议。我见过非常多程序猿,当他从一个公司离开后,发现脱离了公司的框架自己什么也不会。
这个说明2个问题:
- 他们公司框架做的好,让他了解的细节足够少。
- 他没有合理的利用时间,去把框架掌握到手。
跟阿里的同事也有讨论。结果大家都比較认同:
- 一个团队必须有自己的开发框架,尽管再去为阿里全集团做一套统一的框架非常难,但自己团队内部必须有一套框架。能够帮助团队高速开发。
事实上支付宝是有一整套开发框架的。这是由于支付宝沿袭自金融行业。 - 另外要组织全团队的框架培训,让每一个人都对框架有足够的熟悉,甚至提出改进意见。
- 通过框架节省下的时间,能够研究更先进的技术,反哺框架本身。
时间: 2024-10-10 13:14:11