接口编程那点事

我是一个大三还没毕业的学生,没写过什么大的项目,所以没什么经验,论资历,可能连初生牛犊都不如。这几天一直在想接口编程的问题,在网上看了很多人的说法,这是自己的一点看法,由于看得很肤浅,写这篇文章只是为了抛砖引玉。所以如果有什么不对的地主,希望大家评论一下,指教一下,就当是帮帮我们这些初学者,最后还请大家多多包涵。

 

个人觉得编程主要是在设计上的那点事,大家应该都同意设计这个事,是仁者见仁智都见智,设计方式思想不同,应用的东西也各不相同,知识也就不一样。反过来也一样,东西不同,设计的方式也不相同。

 

接口编程,我们首先关注的当然就是为什么要用接口编程,接口编程有什么好处,什么优点?用在什么时候?

看了这么多人的看法,我想接口编程应该是在大家编程的生活帮了不少忙,省下了不少的事。继而推之它应该是一种程序员现在常常接触的一种编程方式,也是现在大多数设计模式中,不会欠缺的一个部分。

我看了一下各位的看法,我简单的理解为,接口编程它就是一种实现java封装、多态、的一种途径。它有以下几个好处:

1、  便于规范

首先,对于规范,这应该是一个团队合作必须的东西。对一个公司的专有的东西,或者说一个系统专有的东西,就应该具有一个独特的该公司或该软件专有的一个规范,这样有利于对组员编程约束。借用一下一个网上的说法:

就像一个MP3它有播放、重播、暂停一个。所以就定义了一个这样的接口,

Interface  MP3    {

           public void play (String  song);

     public void replay(String  song);

     public void stop();

}

所以索尼、三星等所有的MP3就以这个模板来实现。在各个公司实现这些功能时,自行发挥,可以添加一些具有自己特色的MP3。和MP3一样,每个软件都有应有自己的模板。所以在做设计时,公司的项目经理除了做好一个设计的分析详细文档之外还要搭好一个程序的框架(不知道是不是这样?希望有人可以透露一下,呵呵)。这我理解为规范,不知道可不可以这样认为?

2、  便于扩展

扩展,应该是这个社会的一个潮流——循环利用,现在所有的都不喜欢一个东本一成不变,一次性的东西,因为这耗时、耗力在企业中还耗钱。这是谁都不想做的事。所以扩展是算是程序员对程序的一个期望,而Interface的多继承的特性恰好给了这么一条途径。比如一个公司开发的一个项目,这个项目适合多个客户,而每个客户又有自己个别的要求。这个时候,如果不是用接口编程的话,我想很难实现或者说不可能实现一个面向多客户的系统,这时候这小部分的代码则好像牵制了那大部分代码,并且开发出来明明就像是一个项目的工作,显得像几个项目的工作,这样明显就降低代码的重用性。而如果用接口,可以开发一个包含所有客户需求的系统,然后通过配置(spring)来选择每个客户特别要求,并屏蔽那些客户不须要的功能。再如就是如果要对系统进行升级添加某一些功能,我感觉是用接口好一点。例子我举不出来,希望各位高手能够替我举两个,越详细越好,多谢了!

3、  便于维护

维护,与开发有关。开发一个好的东东,不但是要适用,还有一个重要的就是要便于维护。与上面相关,统一开发,统一维护,可以省很多事。这方面我不太了解,靠自己想想 的,所以有待各们补充。谢谢。。。

我在网上看了这样的说法,大意就是说用接口多此一举,因为接口也要通过现实写具体的代码,何不直接用类更方便?

我个人觉得吧,这应该就是设计问题,一般的小程序小系统,可以不需要。因为他的工作量不大,面向可能需求也不大。当是这类情况的时候,用与不用都没什么很大的区别。呵呵,不知道对不对?有独到见解的希望提出,帮助一下我们这些初学者。。。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值