• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






高煥堂.EIT

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

OOAD-Sec-02

    By 高焕堂 2010/10/29 

[Go Back]

[請指教:高老師的免費on-line教學視頻]  

                                                                                                               

 Android_从需求分析到设计

 

 

需求分析:如何表达接口(Interface)?

1. 抽象类别与接口(Interface)

    如果一个类别,它的某些函数是抽象函数的话,就称之为「抽象函数」(Abstract Class)。如果一个抽象类别,它的所有的函数全部都是抽象函数的话,就称之为「纯粹抽象类别」(Pure Abstract Class);这种类别又称为「接口」(Interface)。例如,下图1里的Counter就是一个抽象类别,它含有一个抽象函数:getN()。 

 

 图1、Counter是抽象类别

 

2. 以Sequence表达抽象类别的互动行为

    以上是凸显系统的结构(Structure)层面。现在,以Sequence图表达其执行和互动行为(Behavior)面,如下图:

  

  图2、呈现Counter抽象类别与其它类别的互动

    如果Counter类别只含有抽象函数的话,就成为纯粹抽象类别,如下图:

 

  图3、AbstractCounter是纯粹抽象类别

     以Sequence图表达AbstarctCounter纯粹抽象类别的执行和互动行为面,如下图: 

 

  图4、呈现AbstractCounter纯粹抽象类别的互动行为

 

3. 以Sequence表达Interface

    由于「纯粹抽象类别」就是「接口」,所以上图3就相当于下图5:

  

  图5、AbstractCounter纯粹抽象类别可化身为ICounter接口

      这个ICounter接口是定义于小框架里,然后由myCounter来实作(Implement)它。 

 

  图6、呈现ICounter接口的互动行为

    上图5和图6里,只有一个接口。[歡迎光臨 高煥堂 網頁: http://www.cnblogs.com/myEIT/ ]

    请继续看含有较多个接口的情形,如下图:

 

  图7、多个接口的范例

  接着,以Sequence图来呈现出小框架与应用程序之间的互动顺序,如下:

 

 图8、以Sequence图来呈现出小框架与应用程序之间的接口行为

     上图的ICoubter和IA接口是定义于小框架里,有些其它的接口可能会定义于应用程序里,如下图:

 

  图9、定义于应用程序里的IB接口

       此时,可以表达如下:

  

  图10、表达应用程序里的IB接口

 

4. 结语

      在Framework-based的Android平台里,API扮演着关键的角色。所以如何在UML里呈现界面(尤其是API),变得极为重要。希望本文能带给你一个新的体验,让你自由自在的呈现你的创意和设计,不满足以「适度的设计」,而是要力求气象万千、瑞气千条的高度设计。◆

[Go Back]

 

 

发表于 2013-10-30 16:53  高煥堂.EIT  阅读(195)  评论(0)    收藏  举报
 
刷新页面返回顶部