荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: Second (石开), 信区: Program
标  题: [转载]什么是OO思维
发信站: 荔园晨风BBS站 (Fri Jun 29 01:19:35 2001), 转信

从ASP或者VB转来的程序员,肯定以前对于OO思维不太熟悉,开心特从重粒子空间转来
此文,希望对大家有所帮助。
   采用OO软体开发方法的过程中﹐许多人自然而然偏重于技术层面﹐例如﹐使用OO分解
(object-oriented decomposition) 来进行模组化﹐运用继承功能来建立类别体系(cla
ss hierarchy) 等等。不过﹐偏好于技术者﹐往往会忽略这些技术背后的心理因素﹔也
就是OO思维模式(object-oriented thinking)﹐这是许多人采用OO方法过程中﹐不断产
生挫折感的重要因素。
    OO思维是软体师的心智(mental)运作过程﹐包括对问题(problem)的看法,以及如何
藉由对问题的了解而导出解决方案(solution)﹐然后以可执行的软体系统(working sys
tem)来表达之。虽然每个人的思维模式并不尽相同﹐但下述各项是OO软体师的常见思维
模式﹕
(1) 实体对应(entity mapping)
      首先专注于了解问题领域(problem domain)中的各实体(entity)﹐并认识各实体
的结构本质﹐然后对应到软体中的物件(object)。例如﹐图书馆的购书清单、书本等等
。此外还可延伸到其它实体,如出版商、学生课程等。OO软体师常用心体会这些实体的结
构﹐以及有关的资讯﹐然后藉软体物件表达之﹐成为软体中的重要组件(key component
) 。
      这一点与传统的程序式(procedural)思维有极大区别。传统思维着重于软体系统
的功能(function)上﹐努力思考系统应提供那些功能﹐以及使用者使用这些功能的顺序
。并不常深入去了解各实体的结构。例如﹐会优先思考如何处理「购书」功能﹐而少去
探究购书单的结构及相关资讯。
(2) 抽象(abstraction)
    问题领域中的具体实体(concrete entity) 常激励软体师去发掘更具通用性的抽象
物件(abstract object) 。例如﹐从购书清单可推导出该图书馆主题(focus subject)
﹐以及学生的阅读偏好等等。
    无论是具体实体或抽象物件﹐在对应到软体物件时﹐皆得再运用抽象能力﹐将实体
的结构(structure) 隐藏起来﹐同时定义出抽象的介面(abstract interface)﹐让其它
物件了解如何使用其引藏之结构与资料。亦即﹐抽象介面说明该物件的服务项目﹐或称
为行为(behavior)。
    于是软体师就能确实了解各实体的内部结构及其行为﹐然后藉由OO语言中的抽象资
料型态(abstract data type)﹐来表达之﹔此时﹐就顺利将实体完整地对应到软体物件
之中了。
(3) 拟人化(anthropomophizing)
      物件具有行为﹐使得物件能为其它物件提供服务﹐也能在团队或组织(organizat
ion)中扮演特定之角色(role)。经由拟人化的思维﹐可把实体或物件看成像人们一样有
智慧、善沟通、可互助合作的东西。如此﹐可赋予软体物件更多更多的角色(即行为)
﹐并呈现于物件的抽象介面之中。例如﹐购书清单内含一串待购之书本项目(book item
) ﹔在赋予人性、视其为有智慧之实体后﹐您就可问清单﹕购书总金额多少﹖清单会再
问各书本项目﹕单价为何﹖购书清单累计而得总金额﹐再传回答案给您。
       软体师经由拟人化思维来厘清软体物件之合作关系﹐安排物件之角色﹐定义物件
之介面与行为。
    OO思维有助于厘清问题(problem) 与软体解决方案(solution)之间的对应关系﹐让
问题领域专家(domain expert) ──使用者(end user)能藉其对问题的了解而轻易理解
软体的组织与使用方式﹐也让使用者热衷参与软体的开发工作。
参考书籍
1. Rosson M.B. and Gold E., "Problem-Solution Mapping in Object-Oriented Des
ign", OOPSLA '89 Proceedings, PP.7-10.

--
                            既然热爱生命
                            那么,
                            一切都在意料之中。

※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.28.190]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店