前言:我是 Python 的爱好者,热衷于 django 框架。昨日,一同学问我什么是“框架”,在框架领域“开源”如何理解。汗!一时不知怎么回答。今天用比较浅显的语言描述了一下,生怕有什么错误,故来此请各位长官挑挑毛病,以待完善。
因为是 Python 的爱好者,故发贴在此,更是希望有 Python 方面的相关建议。
什么是框架?
学了好多框架,Spring Struts Hibernate Rails Pylons django ...
学习了《开源Web》后,我终于可以拿俗话来解释一下:
举例(西方文化体系老这样干,我也这样干):
Spring 的框架 前被 Struts 干,后被 Hibernate 搞,拿其核心机制 IOC 来说一说吧。
IOC就是一个小沙盒 包在 java 平台沙箱内的又一层
平常写的java代码,不管再多,一个功能写到底,哪个类用了哪个类,接口在哪里实现总有一天搞不清楚,找不出来。
于是,Spring(框架)出现了,前踢view,后踹data,中间抱着Controller,于是结构明白了,世界清静了。
具体view写什么,data怎么实现,Controller填些啥就按规则写就好了,XML一配置。Over.
什么是开源?
Spring是开源的,其框架提供出来,同时框架本身的实现源码在官网上也都搜得到,OK,哪怕是框架实现出了错,我们也可以从框架源码里找出来。(不过很少有人这样干,毕竟IT民工一般不管这个)
反观dotnet,它分了层,要求你做什么不做什么,不告诉为什么,这也就是编了四五年dotnet仍然不懂各部分关系的民工存在的原因。
于是,就明白了,没有框架,程序照写。
配合、维护、提速,这些,没有框架支持还真不行!
想做民工、民工头、监工长、架构师、包工头儿,任你挑!
因为是 Python 的爱好者,故发贴在此,更是希望有 Python 方面的相关建议。
什么是框架?
学了好多框架,Spring Struts Hibernate Rails Pylons django ...
学习了《开源Web》后,我终于可以拿俗话来解释一下:
举例(西方文化体系老这样干,我也这样干):
Spring 的框架 前被 Struts 干,后被 Hibernate 搞,拿其核心机制 IOC 来说一说吧。
IOC就是一个小沙盒 包在 java 平台沙箱内的又一层
平常写的java代码,不管再多,一个功能写到底,哪个类用了哪个类,接口在哪里实现总有一天搞不清楚,找不出来。
于是,Spring(框架)出现了,前踢view,后踹data,中间抱着Controller,于是结构明白了,世界清静了。
具体view写什么,data怎么实现,Controller填些啥就按规则写就好了,XML一配置。Over.
什么是开源?
Spring是开源的,其框架提供出来,同时框架本身的实现源码在官网上也都搜得到,OK,哪怕是框架实现出了错,我们也可以从框架源码里找出来。(不过很少有人这样干,毕竟IT民工一般不管这个)
反观dotnet,它分了层,要求你做什么不做什么,不告诉为什么,这也就是编了四五年dotnet仍然不懂各部分关系的民工存在的原因。
于是,就明白了,没有框架,程序照写。
配合、维护、提速,这些,没有框架支持还真不行!
想做民工、民工头、监工长、架构师、包工头儿,任你挑!