面向接口编程好处
❶ 为什么要面向接口编程
在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的对系统设计人员来讲就不那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都是要着重考虑的,这也是系统设计的主要工作内容。面向接口编程就是指按照这种思想来编程。 写小的应用程序看不到接口的优势,写大点的程序马上就显示出接口的优势,越大越明显.所以还是从现在开始养成面向接口编程的习惯.写多了程序就会觉得优势显而易见.
据不同含量按说明书使用。初次喷雾在团棵期进行,
❷ java面向接口编程有什么特殊的用处
好处很多,说一个,比如两个系统通讯,今天A系统想查B系统的C信息,你写一个完全独立功能,明天A又想查B的D信息你又得写一个功能。如果定义一个接口,接口功能就是系统通讯,把一些共用的逻辑写在接口里,你查C查D可以实现这个接口,一些什么系统之间通讯之类的代码就不用重复写了他在接口里就完成了,C和D可以只关注自己个性化的逻辑
❸ 面向接口编程的好处
1.更加抽象,更加面向对象
2.提高编程的灵活性
3.提高可维护性
❹ 面向接口编程到底有什么好处
1.最简单的方法:
publicstaticStringreverse1(Stringstr)
{
returnnewStringBuffer(str).reverse().toString();
}
2.最常用的方法:
publicstaticStringreverse3(Strings)
{
char[]array=s.toCharArray();
Stringreverse="";//注意这是空,不是null
for(inti=array.length-1;i>=0;i--)
reverse+=array[i];
returnreverse;
}
3.常用方法的变形:
publicstaticStringreverse2(Strings)
{
intlength=s.length();
Stringreverse="";//注意这是空,不是null
for(inti=0;i<length;i++)
reverse=s.charAt(i)+reverse;//在前面连接,而非常见的后面
returnreverse;
}
4.C语言中常用的方法:
publicstaticStringreverse5(Stringorig)
{
char[]s=orig.toCharArray();
intn=s.length-1;
inthalfLength=n/2;
for(inti=0;i<=halfLength;i++){
chartemp=s[i];
s[i]=s[n-i];
s[n-i]=temp;
}
returnnewString(s);//知道char数组和String相互转化
}
❺ java 面向接口编程,好处在哪
好处:
接口和实现分离了,适于团队的协作开发。
更具体的优点:可以参看IDP原则。J2EE中的API规范基本上都是接口,由各应用服务器来实现,比如:WebSphere按照这个接口实现自己的,WebLogic也按照这个接口实现自己的,作为开发者来说我们根本就不用去管谁是怎样实现的,只要按照J2EE的API
来写就可以了,根本用不着导入它们的实现包,实际上具体的是由它们自身完成了。
接口说白了,也就是定死了一个框,具体的是糊红纸还是糊黑纸我们都用不着去管的,我们只要知道它是个框,提供
了哪些方法就够了。举个简单的JDBC的例子吧,比如有个BaseDao接口,现在有MysqlDao实现了一个(我们可以把具体的实现类配在配置
文件中,再通过反射进行实例化),也就类似这样的:
BaseDao=(BaseDao)(Class.forName(Config.getDaoName()).newInstance());
.其中Config.getDaoName()可以获得配置文件中的配置,比如是:com.bao..impl.MySQLDao。
要改用Oracle了,这样我们只要按BaseDao的定义,再实现一个OracleDao就可以了,
再将配置文件中的配置改为:com.bao..impl.OralceDao就可以了,而在已经写好的代码中,我们可以一行不
改的进行了数据库移植,这个就是面向对象设计原则中的“开-闭原则”(对增加是开放的,对修改是封闭的)但这只是理论上的,现实中很难做到的。
❻ 什么是面向接口编程
什么是接口?
-- 在表面上是由几个没有主体代码的方法定义组成的集合体,有唯一的名称,可以被类或其他接口所实现(或者也可以说继承), 由关键词 interface 修饰。
什么是面向接口编程?
-- 在系统分析或架构设计中,每个层级的程序并不是直接提供程序服务,而是定义一组接口,通过实现接口来提供功能。面向接口编程实际是面向对象编程的一部分。
面向接口编程的优点?
1、接口的定义和实现分开(分开有什么好处呢?)
首先,项目一般是由团队共同开发来完成的,在其中,接口的定义一般是由架构师来设定,然后又编程人员来实现完成,架构师根据架构、设计规则来设定接口,把握项目的整体视图和编写规范,编程人员实现具体业务逻辑,分工明确,程序清晰。
其次,从实现上看,接口的定义时间很短,但接口的实现周期相对较长,若一个编程人员需要调用其他人员编写的某个方法时,可以采用多态的方式获取接口对象,来调用方法,这样保证团队共同完成开发。
2、接口可以有多个实现类,便于以后的业务扩展
什么意思呢?
-- 比如实现类的业务需要扩展功能,此时可以采用重新实现接口的方式,这样降低了程序的冗余 和 一个类写太多行代码的尴尬。
另外,接口的多实现易于通过配置文件的方式配置接口的实现类(这个是指在spring中管理对象的时候)。
❼ 有谁帮我阐述一下:面向接口编程的思想,及其优点
首先你要知道软件工程的概念是什么!简单的说软件工程就是让程序模块化,把特定的代码逻辑独立封装,只传入参数和返回参数,外部集中调用。这也就是C、c++、java、c#中的方法、函数、类库头文件等体现。
而接口也是基于这个目的产生的。首先说说为什么要用到接口,我是学java的,所以以java举例,前面说了把代码逻辑独立的封装确实能增加代码的重用性,具有更好的性能。
但是同样的问题也产生了,如果系统结构很复杂,多个开发人员就不能做到有效的协作了。就像用零件拼装一辆汽车一样,很多工人一起工作,他们怎么知道哪2个零件之间结合在一起,怎么耦合。这和软件工程很类似,多个开发人员一起开发不同的模块,他们同样也会遇到程序结构耦合的问题,这都是在开发时很令人头疼的问题。
接口就是为解决这个问题诞生的,他把方法和类封装的更彻底,只显示入口参数和返回参数,而具体的实现类,和方法实现都可以完全隐藏起来,这样做就可以制定一个统一的标准,即使因为开发人员人多脑杂,模块间的代码风格和思路不同,也完全不影响整个系统的架构,这样使得系统的复杂性得到有效控制,降低开发的难度和成本。举个生动的例子就是电脑主板的生产商他无法知道他生产的主板上将要用的CPU是什么型号的,用的内存是什么规格的。但是只要制定统一的行业标准,他就可以预留指定的接口,无论你CPU是基于什么工作原理,也无论你内存多大,只要符合此接口的标准,各个原件就能有效协作组成一台电脑。
❽ 面向接口编程和面向实现编程的区别
这个涉及到设计上的原则,也就是依赖倒转原则。举个简单的例子,我们经常用的操作数据库的方法,在jdk中定义的都是接口,由不同的数据库厂商实现,比如mysql的驱动,oracle的驱动,都是实现了jdk中定义接口标准。jdk中的设计就是面向接口的,而不同的数据库厂商就是面向实现的。
面向接口的好处就是,定义好接口标准,不管是谁只要按定义好的标准来实现,都可以无缝的切换,所以您应该发现,不管是用mysql也好,还是用oracle也都,您都是在使用jdk的api。
❾ 面向接口编程到底有什么好处
在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的对系统设计人员来讲就不那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都是要着重考虑的,这也是系统设计的主要工作内容。面向接口编程就是指按照这种思想来编程。 写小的应用程序看不到接口的优势,写大点的程序马上就显示出接口的优势,越大越明显.所以还是从现在开始养成面向接口编程的习惯.写多了程序就会觉得优势显而易见.