• 回答数

    5

  • 浏览数

    141

牛奶荡糕
首页 > 自考本科 > 自考软件开发工具知识点总结大全

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

Lookiamycm

已采纳

在软件开发的过程中,软件开发方法是关系到软件开发成败的重要因素。 软件开发方法就是软件开发所遵循的办法和步骤,以保证所得到的运行系统和支持的文档满足质量要求,下面为大家分享了软件开发方法,一起来看看吧!

1 结构化开发方法

结构指系统内各组成要素之间的相互联系、相互作用的框架。结构化开发方法强调系统结构的合理性以及所开发的软件的结构的合理性,主要是面向数据流的,因此也被称为面向功能的软件开发方法或面向数据流的软件开发方法。结构化技术包括结构化分析、结构化设计和结构化程序设计三方面内容。

1.1 结构化分析的步骤

结构化分析是一种模型的确立活动,就是使用独有的符号,来确立描绘信息(数据和控制)流和内容的模型,划分系统的功能和行为,以及其他为确立模型不可缺少的描述。其基本步骤是:

(1)构造数据流模型:根据用户当前需求,在创建实体—关系图的基础上,依据数据流图构造数据流模型。

(2)构建控制流模型:一些应用系统除了要求用数据流建模外,通过构造控制流图(CFD),构建控制流模型。

(3)生成数据字典:对所有数据元素的输入、输出、存储结构,甚至是中间计算结果进行有组织的列表。目前一般采用CASE的“结构化分析和设计工具”来完成。

(4)生成可选方案,建立需求规约:确定各种方案的成本和风险等级,据此对各种方案进行分析,然后从中选择一种方案,建立完整的需求规约。

1.2 结构化设计步骤

结构化设计是采用最佳的可能方法设计系统的各个组成部分以及各成分之间的内部联系的技术,目的在于提出满足系统需求的最佳软件的结构,完成软件层次图或软件结构图。其基本步骤如下:

(1)研究、分析和审查数据流图。从软件的需求规格说明中弄清数据流加工的过程。

(2)然后根据数据流图决定问题的类型。数据处理问题有两种典型的类型:变换型和事务型。针对两种不同的'类型分别进行分析处理。(3)由数据流图推导出系统的初始结构图。也就是把数据流图映射到软件模块结构,设计出模块结构的上层。

(4)利用一些试探性原则来改进系统的初始结构图,直到得到符合要求的结构图为止。即在数据流图的基础上逐步分解高层模块,设计中下层模块,并对软件模块结构进行优化,最终得到更为合理的软件结构。

(5)描述模块接口。

(6)修改和补充数据词典。

(6)制定测试计划。

结构化设计可以将用数据流图表示的信息转换成程序结构的设计描述。

2 模块化开发方法

模块化程序设计方法就是把一个待开发的软件系统分解成若干可单独命名和编址的较为简单的部分,这些可单独命名和编址的部分称为模块。每个模块分别独立地开发、测试,最后再组装出整个软件系统。这种方法不仅可以将软件系统开发的复杂性在分解过程中降低,便于修改、维护,而且还容易实现同一个系统不同部分的并行开发,从而提高了软件的生产效率。

一般,将用一个名字就可调用的一段程序称为“模块”。在考虑模块化时,将模块定义为多大较合适,模块设计规则应如何制定成为关键,下面五条标准可供参考:

(1)模块可分解性:如果一种设计方法提供了将问题分解成子问题的系统化机制,它就能降低整个系统的复杂性,从而实现一种有效的模块化解决方案。

(2)模块可组装性:如果一种设计方法使现存的设计模块能够被组装成新系统,它就能提供一种不用一切从头开始的模块化解决方案。

(3)模块可理解性:如果一个模块可以作为一个独立的单位被理解,那么它就易于构造和修改。(4)模块连续性:如果对系统需求的微小修改只导致对单个模块而不是对整个系统的修改,则修改引起的副作用就会被最小化。

一般来说,对模块采用耦合和内聚两个准则进行度量。如模块内部具有高内聚和模块间低耦合,那这样的模块就具有独立性,模块设计得比较好。

3 面向对象开发方法

面向对象开发方法是以面向对象程序设计语言作为基础的,其核心思想是利用面向对象的概念和方法为软件需求建立模型,进行系统设计,采用面向对象程序设计语言进行系统实现,对建成的系统进行面向对象的测试和维护。

如果一个软件系统是使用这样4个概念设计和实现的,则可以认为这个软件系统是面向对象的。其基本要点可以概括为:

(1)数据的抽象,即类与子类的概念及相互关系。任何客观的事物和实体都是对象,复杂对象可以由简单对象组成

(2)数据及对它的操作的一体化,即封装的概念和方法。具有相同数据和操作的对象可归并为一个类,具有封装性,形成一个包装;对象是类的一个实例;一个类可以产生很多对象。

(3)属性与操作由父类向子类传递,即继承的概念与方法。类可以派生出子类,继承能避免共同行为的重复。

(4)客观事物之间的相互关系用统一的、消息传递的方法来描述。

目前广泛使用的面向对象开发方法包括Booch方法、Rumbaugh方法、Coad和Yourdon方法、Jacobson方法、Wirfs-Brock方法和统一建模方法等。

283 评论

董小小小姐

1、基础知识学习软件开发需要大量与数学、英语打交道,所以需要有一定的数学、英语基础。有了这个基础,学起来可以事半功倍。当然,对数学、英语的要求也没有想象中的那么高。2、基础编程语言编程语言是学软件开发的钥匙,初学者好根据自身的喜好或者职业规划选择语言。目前主流的编程语言包括Java、PHP、.net、C#语言等,新手建议从C语言开始,是基础也实用的语言,之后也可以慢慢扩展。其实很多编程语言之间有所互通,比如数据类型、变量、常量等。在学习实践过程中,了解编程内涵,养成编程思维,这样跨语言学习会非常快。3、数据库(SQL Server)知识除了基础学习,数据库相关的也是必不可少的。数据的存储、调用在软件开发运行过程中必不可少4、web相关知识主要分为HTML、CS经过这四个阶段,基本就掌握了完整的开发基础了。很多人可能会说,内容太多,无法全部掌握怎么办?不用担心,现在专业的软件开发公司,也是团队分工协作,跨语言、跨岗位非常少。如果有一些计算机编程基础,3个月就能打开软件开发的大门,如果是零基础,少需要一个月,而且软件开发更新速度比较快,需要跟着时代不断学习进步。软件开发必备技能1、熟练一门语言熟练一门语言可以帮助你看懂前人的代码,熟悉语言的特性,用更好的方式实现功能,同时避免一些意外并且你认为神奇的错误。总而言之,熟练一门语言是你进入开发的第一步。2、面向对象设计为了应对软件开发中的面向对象设计思想,开发人员也需要学习一种面向对象的语言。面向对象设计是一种设计复杂程序的方法,它将代码分成了单独的类和对象(类的实例),这些类和对象封装了一些特定的功能。3、Linux基础开发都是基于类Unix系统的,所以Lunix必定需要接触,命令通用;而且几乎所有的后端服务器用的都是Lunix系统,同时即使你只做前端,也需要很多的接触系统相关的东西。4、源代码管理管理源代码是任何软件开发项目不可或缺的组成部分。在使用源代码之前,应该有一个网络来共享项目的所有文件。源代码管理工具最基本的功能,是保留软件项目中对文件所做更改的历史记录。它还允许多个开发人员同时处理相同的代码, 并将这些处理代码融合在一起。中国的软件行业规模不是很大,有些软件企业在软件制作上,也只是采用了一些软件工程的思想,距离大规模的工业化大生产比较还是有一定的差距;原因有管理体制的问题,市场问题,政策问题,也有软件工程理论不全面和不完善的问题。所以软件工程的研究和应用,以及中国软件行业的进一步发展,都需要一定的既有软件工程的理论基础和研究能力,又有一定的实践经验的软件工程科学技术人员来推动。软件工程的前途是光明的。软件服务外包属于智力人才密集型现代服务业。大量著名外包企业落户宁波。主要就业去向包括软件外包与服务企业、信息产品与服务企业,担任程序员、软件测试员、项目经理等工作岗位。软件工程专业是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件比如有电子邮件,嵌入式系统,人机界面,办公套件,操作系统,编译器,数据库,游戏等。同时,各个行业几乎都有计算机软件的应用,比如工业,农业,银行,航空,政府部门等。这些应用促进了经济和社会的发展,使得人们的工作更加高效,同时提高了生活质量

90 评论

大V呀大V

软件开发专业主要学习下面知识点

1.编程接口就是对于某种逻辑写的一定规范的数据格式,就是宿主程序跟 Lu通讯用的一组 C 函数。 所有的 API 函数按相关的类型以及常量都声明在头文件 lua.h 中。2.虽然我们说的是“函数”, 但一部分简单的 API 是以宏的形式提供的。除非另有说明, 所有的这些宏都只使用它们的参数一次 (除了第一个参数,那一定是 Lu状态), 因此你不需担心这些宏的展开会引起一些副作用。3.C 库中所有的 Lua API 函数都不去检查参数是否相容及有效。然而,你可以在编译 Lu 时加上打开一个宏开关 LUA_USE_APICHECK 来改变这个行为。Lu使用一个 虚拟栈 来和 C 互传值。 栈上的的每个元素都是一个 Lu 值 (nil,数字,字符串,等等)。4.无论何时 Lua 调用 C,被调用的函数都得到一个新的栈,这个栈独立于 C 函数本身的栈,也独立于之前的 Lu栈。 它里面包含了 Lu传递给 C 函数的所有参数, 而 C 函数则把要返回的结果放入这个栈以返回给调用者。5.方便起见, 所有针对栈的 API 查询操作都不严格遵循栈的操作规则。而是可以用一个 索引 来指向栈上的任何元素: 正的索引指的是栈上的绝对位置(从1开始); 负的索引则指从栈顶开始的偏移量。 展开来说,如果堆栈有 n 个元素, 那么索引 1 表示第一个元素 (也就是最先被压栈的元素) 而索引 n 则指最后一个元素; 索引 -1 也是指最后一个元素 (即栈顶的元素), 索引 -n 是指第一个元素。

4.2 – 栈大小5.当你使用 Lu API 时, 就有责任保证做恰当的调用。 特别需要注意的是, 你有责任控制不要堆栈溢

希望能帮到你,谢谢!

356 评论

无形风9596

软件开发就是根据用户要求建造出软件系统或者系统中的软件部分的过程。一般是用某种程序设计语言来实现的软件开发的,像Java、Python、2C和C++等都是软件开发的需要的编程语言。看到那么多编程语言,同学又就开始犯嘀咕,这么多,到底学什么?今天听人说Java不错,想学;明天听人说Python前景广,想学;为什么会迷茫,还不是因为你不够了解他们。所以,今天信盈达小编先来给大家普及一下Java、C/C++、PHP、Python到底分别是用来开发什么的?用任何编程语言来开发程序,都是为了让计算机干活,比如编写一篇文章,下载一首MP3等,而计算机干活的CPU只认识机器的指令。所以,尽管不同的编程语言差异极大,最后都得“翻译”成CPU可以执行的机器指令。理论上任何语言干任何事情几乎都可以, 但是主要干什么那就不一样了。Javajava常常跟”企业”联系在一起,因为具备一些很好的语言特性, 以及丰富的框架,在企业应用中最被青睐,你总可以听到关于J2EE, JSP, Hibernate之类的东西的讨论。同时, java在手机领域也有一席之地,在普遍智能化之前,很多手机就是以支持java应用作为卖点的,而智能手机爆发之后,java手机主场变成了android, 作为安卓的标准编程语言而存。总结:Java主要应用在网页, 企业级开发,普通应用软,游戏后台。C/C++C/C++理论上说可以做任何开发,只要有合适的硬件驱动和API,特点是效率高,基本上是编译语言里面效率最高的。除非你的系统中连C/C++编译器都不具备。某些系统当中C++编译器是不具备的,但是C一般都具备。目前而言,C语言主要用来开发底层模块(比如驱动,解码器,算法实现),服务应用(比如web服务器)和嵌入式应用(比如微波炉里的程序。C++也可以做这些,不过由于C++的复杂性和标准问题,人们还是更愿意使用C来做。C++更适合比较复杂但又特别需要高效率的设施,比如大型游戏,一些基础库, 大型桌面应用。总结:C 主要应用在系统底层,驱动,嵌入式开发。C++主要应用在游戏开发,大规模,高性能,分布式要求的程序开发。

119 评论

万有引莉

学任何技术都是从零开始的,学软件开发也一样,不需要你有什么基础,具备初高中文化就可以去学的。现在,我们学软件开发主要是学一种编程语言,编程语言是学软件开发的钥匙,初学者好根据自身的喜好或者职业规划选择语言。目前主流的编程语言包括Java、PHP、.net、C#语言等,新手建议从C语言开始,是基础也实用的语言,之后也可以往慢慢扩展。其实很多编程语言之间有所互通,比如数据类型、变量、常量等。在学习实践过程中,了解编程内涵,养成编程思维,这样跨语言学习会非常快。

350 评论

相关问答

  • 2018自考专升本新政策

    统招专升本只限报考本省本科院校且是和你大专学校对口的本科学校的本科专业,不允许跨省报考。国家教育部政策法规司规定,普通高校统招专升本为国家统招计划普通全日制学历

    细细粒的宝贝 4人参与回答 2024-05-13
  • 2020年专升本新政策

    免试专升本政策是:根据教育部、中央军委国防动员部关于做好2020年大学生征兵工作的相关精神:“高职(专科)毕业生及在校生(含高校新生)应征入伍,退役后在完成高职

    让雪飞CXF 3人参与回答 2024-05-14
  • 2020自考专升本新政策

    2022年自考专升本新政策今天我们的教务老师给同学来讲讲以下这些问题,如果你觉得还不错,可以收藏我们网站哦,我们专注于自学考试教材购买服务网哦,接下来一起来阅读

    hereparadox 3人参与回答 2024-05-14
  • 2022专升本新政策

    【专升本快速报名和免费咨询: 】现已进入2022年了,距离一些省份专升本考试还有不到3个月的时间,各位考生的基础复习也已经完成。除了备考大家还需要了解考生所在省

    dt930014240 3人参与回答 2024-05-14
  • 2022年专升本新政策

    2022年专升本最新政策: 根据《教育部办公厅关于做好2022年普通高等学校专升本考试招生工作的通知》(教学厅〔2021〕8号)精神,为做好2022年全区普通高

    正在缓冲1234 3人参与回答 2024-05-14