“企业级开发框架”既可能是前端框架、各种语言的后端框架( java 的特别多)、前后端混合框架。
好多公司会自己造,一部分会开源出来,例如阿里的 egg 。
一般是少数技术厉害的做出来、后续维护,一般会有固定的项目结构,内置一些常用的功能,然后具体的业务代码让码农来填,一般是数据库的增删改查,或者画页面,这部分为框架填业务代码的码农甚至不知道 http 协议,只知道在后端怎么怎么写个方法,前端就能用了,或者在前端调用框架内部的方法,传个地址、参数就能收到数据了,连参数是在 URL 中,还是在 body 中都不清楚。
这类框架可以复用代码,但是普遍都有各种限制,例如 URL 只能是某种格式,或者不支持 websocket ,一旦需求需要框架不支持的功能,就只能等框架更新,这样维护性显然很差。
在以前的“框架”和“库”的争论中,一般认为,“库”可以复用代码,而且维护性要比“框架”要好很多,如果一个库不满足需求,可以等库更新,也可以根据需求实现一个,也可以考虑用高质量的开源库。
所以,为什么软件公司和部分互联网公司会流行“企业级开发框架”?而不是以“库”的形式复用?
从“人”的角度看,填业务代码填多了,技术是基本上得不到提升的;而如果项目是库的形式,码农反而有机会思考,造轮子,提升技术。例外,我感觉,高级开发们做“企业级开发框架”,有利于保持自己的稀缺性。
好多公司会自己造,一部分会开源出来,例如阿里的 egg 。
一般是少数技术厉害的做出来、后续维护,一般会有固定的项目结构,内置一些常用的功能,然后具体的业务代码让码农来填,一般是数据库的增删改查,或者画页面,这部分为框架填业务代码的码农甚至不知道 http 协议,只知道在后端怎么怎么写个方法,前端就能用了,或者在前端调用框架内部的方法,传个地址、参数就能收到数据了,连参数是在 URL 中,还是在 body 中都不清楚。
这类框架可以复用代码,但是普遍都有各种限制,例如 URL 只能是某种格式,或者不支持 websocket ,一旦需求需要框架不支持的功能,就只能等框架更新,这样维护性显然很差。
在以前的“框架”和“库”的争论中,一般认为,“库”可以复用代码,而且维护性要比“框架”要好很多,如果一个库不满足需求,可以等库更新,也可以根据需求实现一个,也可以考虑用高质量的开源库。
所以,为什么软件公司和部分互联网公司会流行“企业级开发框架”?而不是以“库”的形式复用?
从“人”的角度看,填业务代码填多了,技术是基本上得不到提升的;而如果项目是库的形式,码农反而有机会思考,造轮子,提升技术。例外,我感觉,高级开发们做“企业级开发框架”,有利于保持自己的稀缺性。