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);
}
}
查看全文
相关阅读:
最大流模板
大数相加
. Number throry
掷骰子 dp
Java常用类库2
简单注册功能(未连接数据库)
Java常用类库
人机猜拳
租车系统
Java一些概念
原文地址:https://www.cnblogs.com/aowind/p/615193.html
最新文章
POJ1741 Tree(树分治——点分治)题解
FJUT Home_W的gcd(乱搞)题解
FJUT 奇怪的数列(线性选择算法)题解
BZOJ 2292 永远挑战
BZOJ 1093 最大半连通子图
学军NOIP2016模拟赛1
BZOJ 4300 绝世好题
BZOJ 1060 时态同步
BZOJ 1816 扑克牌
BZOJ 4562 食物链
热门文章
BZOJ 4292 Równanie
BZOJ 1499 瑰丽华尔兹
BZOJ 3670 动物园
cursor:hand与cursor:pointer的区别介绍
投硬币
归并法求逆序对
欧拉的三角形问题
NK16
组合数的计算
HPU第一次团队赛
Copyright © 2011-2022 走看看