建立面向对象的世界观.ppt
建立面向对象的世界观,对对象模型的通俗理解邱嘉文2002年3月5日,本教程的主要内容和作用,通过通俗简单的生活事例来演绎对象建模的基本概念。开阔学员视野,让学员轻松树立面向对象的世界观。让学员掌握用面向对象方法分析问题的要领。为学员学习对象建模方法热身。,本教程适应的人员,中级面向对象程序员初级业务设计员中级业务分析员初级系统分析员高级技术支持人员,建模就是认识现实世界,客观世界,世界,主观世界,认识世界,改造世界,世界是什么样的呢?,不同类型的人有不同的世界观,E=MC2,事物,运动矛盾,变化,发展,X+Y=Z1+1=?,类,关联,对象,持不同的世界观就会得到对现实世界的不同认识建立不同的世界模型。,只存在同一个现实世界,所以,模型没有对错、只有符合建模人目的多少之分。,软件人的目的,现代目的:在计算机中模拟现实世界的物和事。,传统目的:控制计算机运行。,站在六个角度来看待事物,A.这里面有什么东东?B.每个东东看上去是什么样的?C.每个东东能做点什么用?D.这些东东都呆在什么地方?E.这些东东之间有什么关系?F.这些东东是怎么成事的?,举例说明,默记一下!,A.这里面有什么东东?B.每个东东看上去是什么样的?C.每个东东能做点什么用?D.这些东东都呆在什么地方?E.这些东东之间有什么关系?F.这些东东是怎么成事的?,“昨天我的一个朋友结婚了”,这里面有什么东东?月老,小伙,姑娘,恋人,玫瑰花。每个东东看上去是什么样的?月老,看上去有些年纪了,挺热心的。小伙,看上去很强壮,很实诚的。姑娘,看上去好漂亮,还很温柔。恋人,看上去很黏糊,当然就结婚了。玫瑰花,火红火红的,难怪姑娘动情了。,本故事纯属虚构,如有雷同,请莫对号入座,每个东东能做点什么用?,月老:牵线搭桥,介绍认识。小伙:追求献花,表达爱意。姑娘:仰慕倾情,以身相许。恋人:拍拖结婚。玫瑰花:令姑娘头晕,传情示爱。,这些东东都呆在什么地方?,月老:婚介所,交友网站。小伙:软件园,住唐家。姑娘:人民医院,住新香洲。恋人:情侣路,电影院,玫瑰花:花店里,小伙手中,姑娘手中。,这些东东之间有什么关系?,这些东东是怎么成事的?,月老牵线搭桥,介绍小伙和姑娘认识;姑娘和小伙一见钟情,成为一对恋人;一对恋人开始拍拖;小伙追求献花,表达对姑娘的爱意;姑娘收到999火红玫瑰,激动得头晕目眩;小伙真心求婚,姑娘以身相许;一对恋人终于走入婚姻殿堂。,用面向对象世界观看事物的答案,A.这里面有些什么东东?答:这里面有的都是事物。注:如果大陆第一个翻译Object的人不翻译为“对象”,而是把它翻译为“事物”就好了,这样就可以省掉这个问题。台湾人的翻译就非常准确,叫做“物件”。如上例,有月老,小伙,姑娘,恋人,玫瑰等事物(对象),B.每个事物看上去是什么样的?,每个事物看上去都有自己的属性,在每个属性上都有一个特征值。如上例中:月老,有属性:年纪,特征值:较大;小伙,有属性:体格,特征值:强壮;姑娘,有属性:性情,特征值:温柔;恋人,有属性:关系,特征值:黏糊;玫瑰花,有属性:颜色,特征值:火红。,C.每个事物能做点什么用?,每个事物都具备某种能力;这些事物有什么用,就要看它有什么能力了。注:如果大陆第一个翻译Method的人就把它翻译为“能力”就好了,这样也可以省掉这个问题。台湾人的翻译好象也叫“方法”。如上例中:月老有牵线搭桥,介绍认识的能力(方法);小伙有“追求”的能力,姑娘有“嫁人”的能力;恋人有“拍拖”的能力,玫瑰有“示爱”的能力。,D.这些事物都呆在什么地方?,每个事物都会有它合理的或者必须的空间位置和逻辑位置。尤其当这些位置对事物的行为造成重要影响的时候,表明他们的位置是极其重要的。面向对象的世界观中叫事物的部署。上例列出的位置对故事主要情节没有太大的影响,本来是可以不列出来的。,E.这些事物之间有什么关系?,事物之间的关系非常多,面向对象的观点一般分为主要的三类:整体-部分关系,甲是乙的一个组成部分。如恋人和小伙,恋人和姑娘的关系。笼统-具体关系,甲是乙的一个特例。如人和小伙,人和月老,人和姑娘的关系。伙伴关系,甲会对乙做点什么。如月老和小伙、姑娘,小伙和玫瑰,小伙和姑娘的关系。,F.这些事物是怎么成事的?,每个事物都会尽量利用伙伴的能力;整体事物的能力依靠部分事物的能力;笼统事物的属性和能力就是具体事物的属性和能力;具体事物除了有笼统事物的属性和能力外,还可以有自己特殊的。事物分工协作,互通信息,共同完成整体的目标。,俗语对术语的映射,术语的图形符号,对象名,用术语来建模,还是问上述六个问题;可以打乱顺序问,同时问;顺着知道答案的问题问下去;把答案用术语的图形记下来。,用术语图形再次演绎古典浪漫爱情故事,“我的一个朋友结婚了”,A.这里面有什么东东?,我,我的朋友,我朋友的妻子,故事与“我”无关,去掉“我”,我的朋友是小伙,他妻子是姑娘,于是得到两个类:,他们怎么就成了?,他们已经拍拖两年了,如胶似漆,你情我愿,不就成了。拍拖必须是一对恋人所为,于是出来:,旁白:一对恋人是由一个姑娘和一个小伙组成,一对恋人能够拍拖,关系黏糊,也就能结婚了。,他们是怎么拍起拖来的?,两年前,姑娘的舅妈介绍他俩认识,他俩一见钟情,于是便拍起拖来了。舅妈是月老,可能撮合了好多对恋人,我朋友他们只不过是其中一对,于是得到:,促成,1.*,1,1,他们都喜欢对方什么?,姑娘喜欢小伙年轻,健壮,实诚;小伙喜欢姑娘年轻,漂亮,温柔。姑娘小伙都感谢月老的老到和热心肠。,发现共性.,他们都是普通人,月老,小伙,姑娘有共同的属性“年纪”和“性情”,虽然作为普通人还有很多其他的属性,但在此起重要作用的大概就这两条了,于是得到关系。,他们怎么拍拖的?,小伙不仅对姑娘甜言蜜语,而且经常送花给姑娘表达爱意,求婚那次一次就献了999朵火红的玫瑰。,使用,1.*,1,1,完整故事的静态模型,搞清过程的活动图,拍拖过程活动图,复述情节的顺序图,初次见面顺序图:,求婚过程顺序图,理清头绪的协作图,初次见面的协作图,定点观察的状态图,恋人的状态图,补充练习,“昨天我同事的儿子考上了大学”;“干旱了这么久了,请想个法子下场雨吧;”“上月去北京开会时老王遇到老同学老张;”“一到月底就手头急,钱都跑哪里去了?”“看大家忙忙碌碌的,可活不见长,到底咋回事?”,请每个听众回去模仿本教程选择以上其中一个故事进行演绎,作为对本人倾情演出的回报。,谢谢!,实践出真知,竞争长才干。Babituo,