zoukankan
html css js c++ java
一个实例来简单的说明接口
很多时候在考虑设计而不是考虑编码的时候,接口才真正清晰,明朗的把它的原理展现给你。举个简单的例子,计算机的主板和显卡,他们之间有统一的约定,只要符合PCI扩展的标准,那么你的显卡肯定能插上主板,并能访问主板来的信息。这个约定就是接口。很多时候,在软件开发领域,接口设计应该是系统分析者的事情,也就是Team Leader的是事情了。Team Leader根据需求设计出Schelable的接口和Architecture,程序员根据他的Architecture去编码,最后开发,测试等等。其实,很多时候,你不用接口也能实现相同甚至更完备的功能。但是,有了接口,会使整个设计变得清晰,明朗。如果从软件的扩展性和重用性上看,接口的设计更显的举足轻重。所以说,理解和认识接口应该从设计的角度看,而不是编码的角度。
附:A Sample
需求:在一个表格(已有的Table类)里面我要显示这样一些数据:
1 文本信息: 显示文本
2 图片信息:显示图片
3 视频信息:播放视频
设计如下:
interface
IDisplayable
{
void
Display(Table table);
}
public
class
Text:IDisplayable
{
public
void
Display(Table table)
{
//
implements the text display method
}
}
public
class
Picture:IDisplayable
{
public
void
Disply(Table table)
{
//
implements picture display here
}
}
public
class
Vedio:IDisplayable
{
public
void
Disply(Table table)
{
//
implements vedio play
}
}
public
class
Test
{
Text t
=
new
Text(
"
Hello
"
);
Picture p
=
new
Picture(
"
1.jpg
"
);
Vedio v
=
new
Vedio(
"
sample.avi
"
);
Table table
=
new
Table();
Table.Add(t);
Table.Add(p);
Table.Add(v);
Table.Show();
foreach
(IDisplayable disp
in
Table.Items)
{
disp.Display(
this
.table);
}
}
查看全文
相关阅读:
JAVA基础学习(7)之函数
人与神话阅读笔记03
学习进度八
人月神话阅读笔记02
NABCD原则
人月神话阅读笔记01
学习进度七
学习进度六
梦断代码阅读笔记03
地铁系统初步思路
原文地址:https://www.cnblogs.com/aowind/p/615193.html
最新文章
[转]SparkSQL的自适应执行---Adaptive Execution
记账本开发(4)
记账本开发(3)
记账本开发(2)
人月神话阅读笔记02
记账本开发(1)
人月神话阅读笔记01
javaservlet网页信息
java之文件与流
java之重构四则运算
热门文章
java之异常处理
Java进阶学习(3)之对象容器(下)
Java进阶学习(3)之对象容器(上)
Java进阶学习(2)之对象交互(下)
JAVA(5)之关于main函数的默认放置位置
Java进阶学习(2)之对象交互(上)
人工智能、机器学习及深度学习的起源和发展
Java进阶学习(1)之类与对象(下)
Java进阶学习(1)之类与对象(上)
JAVA(4)之关于项目部署在tomcat
Copyright © 2011-2022 走看看