qishi821的个人博客分享 http://blog.sciencenet.cn/u/qishi821

博文

面向对象(一)

已有 1930 次阅读 2016-6-29 10:35 |个人分类:计算机科学与技术(编程学)|系统分类:科研笔记| 面向对象

 近来有时间,想学些自己想学的,觉得自己应该学的一些东西。

 面向对象(C++&&Java)

 1.何为抽象?(抽出像的东西)

软件设计的难度随着问题的规模和复杂程度而不断加大,抽象是人类在认识复杂现象的过程中使用的最强有力的方法。人们通过实践认识到,现实世界中的事物、状态或过程之间总存在着某种共性。把这些共性集中和概括起来,暂时忽略他们之间的差异,这就是抽象。即抽象就是抽出事物的本质特征而忽略它们的细节。

2.何为程序?

由于人类的思维能力的限制,面对复杂问题,是不可能做出精确思维的。一般处理复杂系统总是将注意力集中在某一层次上考虑,采用层次构造和层次分析的方法分析它。因此我们说软件设计过程应该是在不同抽象级别考虑和处理问题的过程。最初,应在最高抽象级别上面使用问题域的语言叙述“问题”,以概括的方式叙述“问题解”,然后不断的具体化,不断地用面向过程的语言描述问题,最后在最低层抽象级别上给出可直接实现的“问题解”,即程序

3.业务建模是以软件模型方式描述企业管理和业务所涉及的对象和要素以及它们的属性、行为和彼此关系,业务建模强调以体系的方式来理解、设计和构架企业信息系统。

 业务建模是需求分析中最初试的阶段,也就是整个项目的初始阶段。需要指出的是,业务建模时间的跨度在不同的项目中有很大的差别的。在有些项目中,例如大型ERP系统,可能需要几个月的时间。而对于普通的项目,业务建模的时间可能仅仅需要几天的时间,也有的忽略这一阶段,或是以有限的方式执行。

4.需求是技术无关的。在需求阶段讨论技术是没有任何意义的,只会分散注意力。技术和实现细节是在后面的分析、设计阶段才需要考虑的事情。而在业务建模阶段,不但需要保证需求的技术无关性,还要保证需求不雅深入细节,因为在业务建模阶段,最重要的事情就是要了解业务的全貌,深入细节会浪费时间和精力。要知道,讨论一个企业里的业务细节,就算花费一个月也未必能够结束。

5.建模是软件开发中用到的基本工具之一,建模时了解建模的重要性和模型的作用是很必要的。模型是对一个系统的一些描述,可能是像大楼设计图一样,也可能是像建筑物施工图对大楼的详细描述,还可能是某种原型,例如同大楼的立体模型。模型是软件系统构建中一个必要的部分,在构建开始前,除了很琐碎的开发以外的所有开发都会包含建模。在任何软件开发的方法学中,任何一个阶段的输出都是一个模型的集合,并用作后续阶段的输入。统一建模语言是对模型表示的符号系统,已经成为当今建模广泛使用的标准。

  模型是什么呢?模型不是它所描述的事物,而是对这些事物的表示。但是,在某些实际的感觉中,它看起来就像是所描述的事物,任何一门学科中几乎都能找到模型。设计师有大量不同的建筑模型,比如设计图和蓝图。工程师有桥梁的模型,包括图纸和数学模型。城市规划师有街道布局的图纸和模型。政府规划人员提供像医院这样复杂的可能涉及金融和社会的模型。当然,在建立系统之前,计算机系统开发人员要构建系统模型。

  我们为什么要建模呢?是因为建模会比建造真实的事物更容易也更廉价,或者是因为实际的事物难于实现。一个设计者给一幢房屋草拟设计图,以便让购买者在建造之前就看到设计样式--当发现购买者不喜欢这样的布局之时,在设计图纸上花费一千多元远比在建筑上花费十多万元要好得多。因为在构建一个模型时,与建设阶段相比,建模阶段所遇到的问题会更容易解决。例如在建桥之前,工程师能够在一个模型上计算出压力并选择合适的建筑材料,而不是建造一座桥来观察它是否能够承载负荷。同理,在两个小组合作构建软件系统的不同部分时,他们需要一些计划来确保不同的部分能够相互结合在一起。

   模型在信息传递、信息交流的过程中起着非常重要的作用,一个复杂的大型系统建设需要很多小组、很多人员共同工作,如果他们按照能够相互结合的模型工作,那么,他们制造出来的产品也能够结合起来。另一方面,模型被用来描述你想要的东西,在软件开发中,有很多角色和责任,项目成员和项目外系统的各类用户之间的信息交流,对于项目的成功是极为重要的。

  模型对计划也十分有用。当知道了事物是如何组合的,需要完成什么,就能开始筹划构建过程了。此外,还需要模型来应对变化,如果某个人想要为一栋大的建筑重新布局,就需要一张已布线路的图纸。在软件开发过程中,一个阶段的输出通常是一个模型,这个模型又用于另一个阶段的输入。

  模型并不总是必需的。有时候人们迷恋于建模,并未所有事物建模,这样并不必要。需要给出的忠告是,只在有用时才建立模型。





https://blog.sciencenet.cn/blog-2355761-987438.html

上一篇:软件工程(八)
下一篇:需求说明书
收藏 IP: 120.15.174.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-24 06:15

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部