Chinaunix首页 | 论坛 | 博客
  • 博客访问: 65943
  • 博文数量: 24
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 11
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-01 20:32
个人简介

知己三千俱欢颜,杜康百饮方知醉。沙场驰骋数十载,一笑只为红颜开。前世觞咏烟已改,今生百苦从头来。若无Bug千八百,生生相好世世爱。

文章分类

全部博文(24)

文章存档

2016年(3)

2015年(1)

2014年(20)

分类: 架构设计与优化

2014-07-05 09:50:15

原文地址:谈抽象接口的重要性 作者:aquester

.pdf
    
抽象是架构师最基础最重要的能力之一。一名程序员要成长为架构师,首先要理解接口的重要性。但是对一个没有经验的人来说,他心中可能无法体会“接口”这两个字的含义。

接口就是规范,接口就是协议。为了便于理解,我们可以把它和生活中的事务类比起来,这样就非常容易理解了。

假设在工作中,两个不同部门间有业务来往,如果两个部门间没有定义任何规范,全凭双方的接口人自个做主沟通。这就埋下了很大隐患,一旦其中有某个人变动(如离职),则会严重影响两个部门间的活动。原因就是,这两个部门间的活动太依赖于具体的个人了。

怎么去解决这个问题了?方法非常简单,就是定义好双方的规范或协议,让双方接口人按钮规范来沟通,这样不管人员如何的变动,新人都可以很快的去接手。

规范和协议本身是没有用的,它需要后面的人去执行。

软件开发同样如此,去了解耦合,需要定义规范和和协议。在OO中,接口就是种协议,它屏蔽了可能发生的变化

只要协议不变,和平就在。因此定义一个具有一定前瞻性的协议是架构师的职责,著名的TCP/IP协议几十年来未有变化,是一个非常好的案例ProtocolBufferThrift等,为了应对协议变化,增加了optionalrequired两个性特。

有关如何设置具有前瞻性的接口,不在本文探讨范畴之内,这个需要一定的经验积累。

接口就是协议,就是规范,就是制度,它好比生活中的法制;类是角色,好比生活中的人。
有不少人说OO不好,但就我的感觉来说:觉得一切很自然,优雅,没有别扭的地方,如同生活的写照。

阅读(559) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~