architecture, framework and lib

作为一个软件从业人员,我问你:

      请说一下你是如何理解architecture, framework and lib的?

      因为每个人都工作经验不一样,理解程度不一样,可能会给出不同层次的答案,当然我认为没有优劣,只是视角,谈论对象的问题。

首先:以每个概念为对象来进行思考。

     1)在我们设计程序架构的时候,肯定自然而然的就会考虑进一些框架性的,模板性的,可复用性的东西;

     2)以framework为主体时,开发一个framework时肯定也是用来某种的架构方式,并且这个framework最终还会以lib的形式来呈现,共他人使用。

     3)每一个实现特定功能的lib必然包含了一种架构和引用了或是自己设计的框架(为了让思路更清晰,便于日后的维护)。

其次:如果要是以自我为中心(以自己写程序的角度),会有另一番景象。

扫描二维码关注公众号,回复: 657091 查看本文章

      我们自己写的软件要有一个总的架构,而其他的一切都是要为我这个架构服务的;

      而framework只是帮助完善,我的部分架构;在这种情况下,很多事情都会交给框架去处理,它会去调用你写的代码函数,这个时候,框架是主角,而你的代码是供框架调用的配角。

      lib帮助我实现了某些功能点;具体使用的时候是我的代码去调用这些lib。

最后:打个比方实现一个B/S架构的项目:

       对这个项目你会有一个自己的架构,然后针对架构的不同部分你可能会用不同的框架来帮你完成

       你可能会采用  ExtJS+Struts+Spring+Hibernate+DB 在这期间你可能还会引用很多第三方的lib来实现某些功能点,比如用log4j来写日志。

猜你喜欢

转载自cuizhihua.iteye.com/blog/1714964
lib