自考问答 自考本科自考百科
  • 回答数

    3

  • 浏览数

    222

老幺2010
自考问答 > 自考本科 > 自考软件开发工具心得体会

3个回答 默认排序
  • 默认排序
  • 按时间排序

福建不吃辣

已采纳

随着计算机世界的高速发展,软件事业的增强,软件在我们生活中的运用随处都是,但软件业也因此兴起,但作为IT业内人士则考虑的不是这些问题,而是如何用一个好的软件开发方法去开发好一个软件。现在,在众多的软件开发方法中,选择了面向对象的的方法来谈谈我的个人见解。为什么要选它呢,因为这种方法在现在是最常用的一种,大多数的开发商都采用了面向对象的方法。 谈到面向对象,这方面的文章非常多。但是,明确地给出对象的定义或说明对象的定义的非常少——至少我现在还没有发现。其初,“面向对象”是专指在程序设计中采用封装、继承、抽象等设计方法。可是,这个定义显然不能再适合现在情况。面向对象的思想已经涉及到软件开发的各个方面。如,面向对象的分析(OOA,Object Oriented Analysis),面向对象的设计(OOD,Object Oriented Design)、以及我们经常说的面向对象的编程实现(OOP,Object Oriented Programming)。许多有关面向对象的文章都只是讲述在面向对象的开发中所需要注意的问题或所采用的比较好的设计方法。看这些文章只有真正懂得什么是对象,什么是面向对象,才能最大程度地对自己有所裨益。这一点,恐怕对初学者甚至是从事相关工作多年的人员也会对它们的概念模糊不清。 面向对象是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。 不论采用哪种方法来开发软件,分析的过程都是提取系统需求的过程。分析工作主要包括3项内容,这就是理解,表达和验证。首先,系统分析员通过用户及领域专家的充分交流,力求完全理解用户需求和该应用邻域中的关键性的背景知识,并用某种无二义性的方式把这种理解表达成文档资料。分析过程得出的最重要的文档资料是软件需求规格说明(在面向对象分析中,主要由对象模型,动态模型和功能模型组成)。 由于问题复杂,而且人与人之间的交流带有随意性和非形式化的特点,上述理解过程通常不能一次就达到理解的效果。因此,还必须进一步验证软件需求规格说明的正确性,完整性和有效性,如果发现了问题则进行修正。显然,需求分析过程是系统分析员与用户及领域专家反复交流和多次修正的过程。也就是说,理解和验证的过程通常交替进行,反复迭代,而且往往需要利用原型系统作为辅助工具。面向对象分析(OOA)的关键是识别出问题域内的类与对象,并分析它们相互间的关系,最终建立起问题域的简洁,精确,可理解的正确模型。在用面向对象观点建立起的3种模型中,对象模型是最基本,最重要,最核心的。 下面我们来看看面向对象的开发方法。 一 .首相让我们来了解什么是面向对象: (1)对象:对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。 (2)对象的状态和行为。 对象具有状态,一个对象用数据值来描述它的状态。 对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。 对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中 (3)类:具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。 (4)类的结构:在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般--具体结构关系,整体--部分结构关系。 ①一般——具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。 ②整体——部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。 (5)消息和方法:对象之间进行通信的结构叫做消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加以说明,参数可以是认识该消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。 二. 下面让我们来认识一下面向对象的特征和几大要素: (1)对象唯一性。(2)分类性。(3)继承性。(4)多态性(多形性)面向对象的要素:(1)抽象。 (2)封装性(信息隐藏)。(3)共享性 三. 面向对象和基于对象的区别: 很多人没有区分“面向对象”和“基于对象”两个不同的概念。面向对象的三大特点(封装,继承,多态)却一不可。通常“基于对象”是使用对象,但是无法利用现有的对象模板产生新的对象类型,继而产生新的对象,也就是说“基于对象”没有继承的特点。而“多态”表示为父类类型的子类对象实例,没有了继承的概念也就无从谈论“多态”。现在的很多流行技术都是基于对象的,它们使用一些封装好的对象,调用对象的方法,设置对象的属性。但是它们无法让程序员派生新对象类型。他们只能使用现有对象的方法和属性。所以当你判断一个新的技术是否是面向对象的时候,通常可以使用后两个特性来加以判断。“面向对象”和“基于对象” 都实现了“封装”的概念,但是面向对象实现了“继承和多态”,而“基于对象”没有实现这些,的确很饶口。 从事面向对象编程的人按照分工来说,可以分为“类库的创建者”和“类库的使用者”。使用类库的人并不都是具备了面向对象思想的人,通常知道如何继承和派生新对象就可以使用类库了,然而我们的思维并没有真正的转过来,使用类库只是在形式上是面向对象,而实质上只是库函数的一种扩展。 面向对象是一种思想,是我们考虑事情的方法,通常表现为我们是将问题的解决按照过程方式来解决呢,还是将问题抽象为一个对象来解决它。很多情况下,我们会不知不觉的按照过程方式来解决它,而不是考虑将要解决问题抽象为对象去解决它。有些人打着面向对象的幌子,干着过程编程的勾当。在对面向对象方法学有了一定的理解后,我们可以知道,面向对象方法学的出发点和根本原则,是尽量可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问题空间(也称为问题域)与实现解决的解空间(也称为求解域)在结构上尽可能一致。 四 .面向对象方法学和传统方法学较之有了很大的优点: 1.它与人习惯的思维方法一致。 传统的程序设计技术是面向过程的设计方法,这种方法以计算为中心,把数据和过程作为相互独立的部分,数据代表问题空间中的客体,程序代码则用于处理这些数据。而面向对象的方法学是以对象为核心,用这种技术开发出的软件系统由对象组成的。 2.稳定性好。 传统的软件开发方法以计算法为核心,开发过程基于功能分析和功能分解,所以它很不稳定。而面向对象的方法学是基于构造问题邻域的对象模型,以对象为中心构造软件系统,它的基本做法是对象模拟问题邻域中的实体,以对象间的联系刻画实体间的联系。由于现实世界中的实体是相对稳定的,因此,以对象为中心构造的软件系统也是比较稳定的。 3.可重用性好。 传统的软件重用技术是利用标准函数库,也就是试图用标准函数库中的函数作为“预制件”来建造新的软件系统,但是,标准函数缺乏必要的“柔性”,不能适应不同应用场合的不同需要,并不时理想的可重用的软件成分。而在实际开发一个新的软件系统时,通常多数函数是开发者自己编写的,甚至绝大多数的函数都是新编的。 面向对象的软件技术在利用可用的软件成分构造新的软件系统时,有很大的灵活性。它有两种方法可以重复使用一个对象类:一种方法是创建该类的实例,从而直接使用它,另一种方法是从它派生出一个满足当前需要的新类。它所实现的重用性是自然的和准确的,不像传统的方法是刻意的。 4.较易开发大型软件产品。在开发大型软件产品时,组织开发人员的方法不恰当往往是出现问题的主要原因。用面向对象方法学时,构成软件系统的每一个对象就像一个微型程序,有自己的数据,操作,功能和用途,因此,可以把一个大型软件产品分解成一系列本质上相互独立的向产品来处理,故它比较容易开发大型软件。 5.可维护性好。用传统的方法和面向过程语言开发出来的软件很难维护,然而面向对象的方法由于存在下面几种原因故维护性好。因素:面向对象的软件稳定性比较好。面向对象的软件比较容易修改。面向对象的软件比较容易理解。面向对象的软件易于测试和调试。最后: 目前,面向对象开发方法的研究已日趋成熟,国际上已,有不少面向对象产品出现。我相信这种方法在不断地完善下不仅现在适用,就算再将来,它也会被相当多的开发商使用的。

224 评论(11)

Oicdlljjgff

兄弟,趁早回头吧!软件行业苦海无边啊,当然你如果执迷不悟也是没办法的事情。我就在一家软件公司工作,怎么说呢?

我简单点点:

1、选择一个语言平台,如C/C、Java、.NET中的个人认真的去研究它,不要什么都学什么都学不好,当然语言平台只是一个实现工具,选择的目的是检验自己相关软件开发方面的掌握状况。

2、掌握软件开发的一些基础性知识,如:数据结构(重点)、软件工程、离散数学等。

3、进阶一点:设计模式、软件架构等这些才是软件的核心、灵魂。

4、实践,有机会的话一点要参与项目实践。

193 评论(11)

夏日风清凉

当你完了一次课程设计的时候,心情是怎样的呢?开心的还是喜悦的,下面是由我为大家整理的“计算机课程设计心得体会500字”,仅供参考,欢迎大家阅读本文。

这次数据库课程设计做的还是很成功的,功能全部基本都实现了。在做的过程中出现过几次小问题,搞了很长时间才做通的。做完这次课设之后,回顾起来,数据库课设其实挺简单的。只不过以为我们以往的不深入的探究,只看表面一堆堆的代码就感觉很难很难,实际上代码不要我们写,照着模板做,一通百通,就ok了,正是因为我们的这种畏惧的敬而远之的心态导致我们数据库课程始终都是初学状态,没有一点长进,我想经过这次系统的做了这个企业进销存数据库,部分的数据库结构、功能、使用等方面与以前相比有了长足的进步,虽然知道的依然很少,但有进步都是可喜的。

在本次课程设计的软件开发的过程中,我全面实践一个面向数据库的应用系统的开发过程,学习了很多有关的知识。这样的项目对我学过的数据库课程是一个综合性很高的实践。一些以前没有学得很杂实的课程的内容,由于需要在实践中运用,刚开始我也感到很头痛。但回过头再去看教科书,经过一段时间的钻研,对与这些知识点的相关的背景,概念和解决方案理解得更透彻了,学习起来也越来越有兴趣,越来越轻松。差不多熟悉了数据库设计的每一个过程。

另外我还充分体会了从事软件开发工作需要特别严谨认真的态度和作风,一点都马虎不得。每一个细微的细节都必须十分的注意,如果不认真思考决策,就会出现或大或小的错误,如果早期的错误隐藏下来,对后面的工作影响就会很大,甚至有时要推倒很多前面做的工作重来。有时候,我自己觉得我写的程序非常的正确,但是就是编译通不过,在查找错误的过程中,面临着否认自己的过程,非常的痛苦,只有不断地向老师提问,有时提问的问题特幼稚,可就是不懂,很是郁闷。

在反反复复的学习及询问之下,我的辛勤努力有了回报,终于做出了一个简单的软件,虽然这个软件的功能非常的简单,而且我想,在实际的运用中,还有些不足。因为企业管理牵涉的内容非常很多,我涉及到的仅仅是企业管理的一部分简单内容,离实际的客户需求肯定还有一定的差距。

由于我的知识浅薄,经验不足及阅历颇浅,因此,在该系统的设计方面还有很多不足,比如功能过少,界面不够醒目等问题,我会在工作的使用过程中,根据工作的具体要求不断的修改,完善,争取使该系统慢慢趋向完美。

在本系统的设计过程和课程设计报告的编写过程中,老师和同学都给予了我许多无私的帮助,尤其是我的指导老师x老师给我的系统设计提出了很多宝贵的修改意见,在这里,我向这些无私帮助我的人表示衷心的感谢。

总的来说,这次实训过程唯一的遗憾就是天气太热,不过精神上却是收获很大,算是圆满结束吧!

实训近一周了,实训给我最深刻的体会是有点累,但在这过程中可以学到很多知识!尤其是对于像我这样当初在课堂上几乎没有学到什么知识的人来说,实训真的让我受益匪浅!

通过此次课程设计,使我更加扎实的掌握了有关高频电子线路方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。

过而能改,善莫大焉。在课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获龋最终的检测调试环节,本身就是在践行“过而能改,善莫大焉”的知行观。这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可!

课程设计诚然是一门专业课,给我很多专业知识以及专业技能上的提升,同时又是一门讲道课,一门辩思课,给了我许多道,给了我很多思,给了我莫大的空间。同时,设计让我感触很深。使我对抽象的理论有了具体的认识。通过这次课程设计,我掌握了常用元件的识别和测试;熟悉了常用仪器、仪表;了解了电路的连线方法;以及如何提高电路的性能等等,掌握了焊接的方法和技术,通过查询资料,也了解了收音机的构造及原理。

我认为,在这学期的实验中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的`是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变的更加成熟,会面对需要面对的事情。

回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,但可喜的是最终都得到了解决。

实验过程中,也对团队精神的进行了考察,让我们在合作起来更加默契,在成功后一起体会喜悦的心情。果然是团结就是力量,只有互相之间默契融洽的配合才能换来最终完美的结果。

此次设计也让我明白了思路即出路,有什么不懂不明白的地方要及时请教或上网查询,只要认真钻研,动脑思考,动手实践,就没有弄不懂的知识,收获颇丰。

356 评论(15)

相关问答

  • 自学考试软件开发工具

    自考软件工程科目:软件工程与实践、信息安全、软件开发工具与环境与实践、高级数据库技术(证书课程)、软件项目管理、计算机网络技术(证书课程)、网络应用程序设计;英

    柠檬朱古力 2人参与回答 2024-09-20
  • 自考03173软件开发工具

    四川自考课程学分一般为1-7分,最高的学分为英语14分。具体每门课程学分考生可以登录自考管理系统查询。 自考学分是自考生成功地完成某项科目所获得的分值单位,用于

    浅浅浅浅灰 2人参与回答 2024-09-20
  • 自考本科软件开发工具

    自考本科有软件工程专业。自考本科软件工程专业课程有中国近现代史纲要、马克思主义基本原理概论、英语(二)、计算机网络技术、软件工程、软件工程(实践)、网络应用程序

    大大大华哥呢 3人参与回答 2024-09-21
  • 自考软件开发工具

    你好,自考课程考试看考试大纲,按照教材有重点的章节,看看历次试题,自考学习以自学为主,关于学习网上有资料视频,有些社会教育机构有课程培训,有的自考助学有学校组织

    O小魔女O 2人参与回答 2024-09-20
  • 自考软件开发工具心得体会

    随着计算机世界的高速发展,软件事业的增强,软件在我们生活中的运用随处都是,但软件业也因此兴起,但作为IT业内人士则考虑的不是这些问题,而是如何用一个好的软件开发

    老幺2010 3人参与回答 2024-09-21

自考地区