欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    二级公共基础知识辅导讲义修订版.docx

    • 资源ID:1670415       资源大小:105.21KB        全文页数:43页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    二级公共基础知识辅导讲义修订版.docx

    全国计算机等徽考试一二锻公共谢学问俄程1.1 Htt1、圆是指解题方案的椅前而完整的描述,、换句话说,算法是对特定问题求解步睬的一种描述,Btt1.MXi:.>J片后时笈列HOMW我均。峪境的取川也存的第出史号啰攸方法和什H1.儿大传M南丹节“履*:算法不等于程序,也不等于计算方法帕序的熔剖不行能优于算法的设讯.2、算法的她本特征(D可行性针对实际问陷而设计的算法,执行后他弊得到港足的结果.(2)确定性“珏一条指令的含义明确,无二义性,并且在任何条件3算法只有唯一的一条执行路径,即相同的W1.人只能得H1.相同的输出.(3)有穷性“算法必阖在有限的时间内完成仃两承含义,一是算法中的操作步骤为有限个,二是辟个步报都傕在有限时间内完成。(4)搦行足够的情报。算法中各种运和:总是要施加到各个运算对象上,而这些运算时象又可能具有某种初始状态,这就是算法执行的起点或依据因此,一个算法执行的结果总是与输入的初始数据行关,不同的输入将会有不同的结果输出。当输入不扬或输入锚快时,算法将无法执行或执行有希。一般说束,当算法拥有足蟒的情报时,此算法才是仃效的;面当供应的情报不够时,柒法对能无效,*:综上所述,所训尊法,是一纸严闹堆定义运算依次的规则,并且每一个规则都是行效的,且是明确的,此依次将在存限的次数卜终止,3、算法用般度主耍包括时间出难度和之间困难度,(1)算谢时间附玻度!是指执行修法所须要的让签工作此可以用执行算法的过程中所需龙本运坪的执行次数来度M。(2)尊蟠画碣居指执行这个算法所须要的内存空向1、数据结惭是指相互有关联的数据无素的集合.2、数据结构主要探讨和探讨以下三个方面的问1.:(1)数楙集合中各数据无奈之间所固有的逻辑关系,印数据的逻辑结构.BeiMX1.J=I;TX<.%"灰匕KfychW征的欺我。京批台中.各个收MA盒ZfH存在M力於6(R>.运小美展位统一看名令中的IWK无点所尚”的书结构ftt2JX4iIKM.£;,把HIX无米之刘国方闷”的美杀的3嫂H幢M件大/IMMfett>STMC三M)来战达数据的茂相结构包含:D表示数据元索的信息;2)表示各数据元素之间可前后件美戏.(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的在储结构.数树的存储结梅竹依次、鼓按、索引等。D依次存储它是把遗辅上相邻的结点存储在物理位置相邻的存他除元里,结点前的逻辑关系由存储单元的然接关系来体现由此得到的存储友示林为依次存储结构.2)的接存储它不要求爱轼上相知的结点在物理位置上亦相邻,结点间的设轼关系是由附加的指针字段表示的由此得到的存储表示标为链大存储结构3)索引存储:除建立存偏结点信息外,还建证附加的索引表来标识站点的地址.*:数据的逻辑结构反映数据元索之间的避辑关系,数据的存储结构(也称数据的物理结构)是数据的茂林结构在计算机存储空间中的存放形式.同一种理粒结构的数据可以接受不同的赤M结构,(H影响数据处理效率(3)对各种数据结构进行的运算。3、数据结构的图形表示个数据结构除了用二元关系表示外,还可以我爬堆用图形粒示。在数据结构的图形表示中,对于数据集合D中的杼一个数据元就用中间玩有元求偿的方框表示,一般称之为数据结点,并简称为结点;为了进一步友示各数据元家之间的前后件关系,对于关系R中的好一个二元蛆,用一条有向线段从前件结点指向后件结点,4、数据结构分为两大类型:线性结构和非贱性结杓.际丽(非空的数据结构)条件:D有且只有-个忸结地2)脩一个结/"2M"a-有为侬点鼓多科个前件,也鼓多有一个后件。:常见的线性结构有或性表、栈、队外和级性鞋表等.(2)线性结面:不满足线性结杓条件的数IK结树,*:常见的1战性结构行树、:叉树和图等。1.3性表If其依次神MA,1、倒翎由一蛆数据元末构成,数据元素的位置只取决于自己的序号,元索之间的相对位双是姣性的”线性衣是由n(n,O)个数据元素组成的个有限序列,相中的海一个数据元京,除了第一个外,有且只有一个第件,除了最终一个外,有且只有一个行件或性衣中数据元索的个数称为线性衣的长度.今件件Ur以为空中,* :畿性表是一种存储结构,它的存储方式:依次和战式.2、线性式的依次存储结构其彳j两个基本特点:(1)线性衣中全郃元索所占的存储空间是连犊的;(2)战性表中各数据元素在存环空间中是按逻捌依次依次存放的* :由此可以看出,在线性表的依次存储结构中,其的后件两个元素在存储空间中是紧邻的,且前件元素偷定存储在后件元素的前面,可以通过计算机干脆确定第i个结点的存镭地址,3、依次我的插入、JH除运算(1)依次表的插入运算:在一JR状况3要在第i(IVIVn)个元索之前蜻入一个新元素时,首先Ie从奴烬一个(即笫n个)元素起先,直到第i个元家之间共n-i+1个元索依次向后移动一个位置,移动结束后,第i个位置就被空出,然后将新元素插入到第i项.播入结束后,然性我的长度就增加了1,* :喷性表的拓入运算时须要移动元素,在等撇率状况卜.,平均须要移动n2个元索。(2)依次表的也除运尊:在一般状况下,要删除第i(IWiVn)个元京时,则要从第i+1个元素起先,白:到第n个元素之间共n-i个元素依次向前移动个位段,、M除结束后,线性表的长度就M小了1* :迸行IW性衣的明除运竟时也须要移动元素,在等概率状况F,平均须要移动(n-1.)/2个元素。插入、制除运算不便利.* .4栓利"1、栈与其茶本运算险是限定在调进行插入与耐除运算的线性衣。在校中,允许钻入与制除的擀称为栈顶,不允许插入与IH除的另一端称为栈底。栈顶元素总是被终被插入的元素,栈底元素总是最先被插入的元素即栈足依据“先进后山”或“后进先出”的版财蛆织数据的.栈R仃记忆作用,枝的基本运算:D插入元泰称为入校运尊;2)翻除元泰称为退栈运算;3)谟枝演元素是将桎顶元素IW绐一个指定的变址,此时指针无变更。校的存储方式和线性表类似,也少两种,即依次栈和链式栈-2、队列与其葩本运算画是指允许在-端(队尼)进入插入,而在另一端(队头)进行删除的我性表。尾指针(Rear)指向队尾元索,头指针(front)指向找头元索的的一个位置(队头)队列是“先进先出”或“后进后出”的能性表。队列运律包括:D入队运律:从队尾插入一个元求;2)退队运算:从从头BH除一个元和循环队列与其运算;所谓循环队列,就是将队列存W1.空间的最终一个位置绕到第一个位置,形成返物上的环状空间,供队列循环运JM在循环队列中,用队后指针rear描向队列中的队尾元索,用排头指针front指向拄头元素的前一个位置,因此,从头指针Tront指向的后一个位置直到队尾指针rear指向的位置之间,全部的元或均为队列中的元素*:循环队列中无末的个数rear-front.* .51、然性表依次存储的缺点:(1)插入或删除的运算效率很低"在依次存皓的税性衣,I,插入或耐除数据元素时须耍移动大地的数据元素;(2)找性衣的依次存储结构下,现性表的存储空间不便F扩充;(3)级性表的依次存储结构不便户对存防空间的动态安排。2、线性链表:或性表的歧式存储结构称为线性链表,是一种物理存福季元上花迩嬖、J1.呸次的存储结构,数据元素的逻辑依次是通过链衣中的指针链接来实现的,因此,在快式存储方式中,郁个结点由两部分组成:一部分用于存放数据元素的值,称为数(域;另部分用于存放指针,称为指针域,MT指向该结点的前一个或后一个结点(即前件成后件)线性摄表分为单健表、双向健表和循环班表三种突型,在单中,每一个结点只有一个指针域,由这个指针只能找到其后件结点,而不能找到宾触件结点。闪此,在某些应用中,对线性箍表中的衽个结点设置两个指针,一个称为左指针,指向K前件结点;另一个称为右指针,指向其后件结点,这种族衣称为双向健表3、然性链衣的基木运算(1)在线性罐表中包含指定元东的结点之倒插入一个新元素,*:在线性集袅中插入元素时,不须要移动数据元泰,只须要修改相关结点指针即可,也不会出现IibW现皎(2)在我性例收中翻除包含指定元素的结点C-t个壮&笈川仪之存X姑恂,式如山瓒筑性&的M'2Me族,但江柒至M人新善无:»t.收分发饯上酒现配*:在线性鞋表中IM除元素时,也不须要移动数据元素,只须要修改相关结点指计即可。(3)将两个戡性筑表按要求合并成个线性蜷表.(4)将一个线性锌衣按要求进行分解(5)逆转线性蛀表.(6)复制蛭性处表。(7)畿性性表的博序.(8)线性能衣的查找,MfcISrI:44.WttJjIifittttH?'t¾VI虹不信傥依次发中惕“1黑懂序号IUMfAA-H只偷从垃代的公!?找皿个拈力仕卜豉J9.4Mi个站A,为HW.3兴军41机在仪始M1.:、性域表不能随机存成.4、循环跳去与其艇本运算在我性域表中,孜插入与IM除的运算虽然比较便利,但还存在一个问题,在还算过程中对于空表和对第一个结点的处理必尚单独多虑,使空表与IF空表的运算不统一。为了克服设性集收的这个缺点,可以接受另一种斑接方式,即循环,袅,与前面所探时的线性箍表相比,循环缝表具行以卜两个特点:1)在矮表中增加r一个发头结点,其数据域为随意或者依据缅耍来设?¢,指针域指向或性我的笫一个元求的结点,而循环健我的头指针指向表头结点;2)循环健衣中最终一个结点的指针域不是空,而足指向农头站点,印在新环锤衣中,全部结点的指针构成了一个环状修循环京及的优点主嘤体现在两个方面:一是在箱环维表中,只耍指出董中任何一个结点的位置,就可以从它动身访问到表中其他全郃的结点,面线性冷健表做不到这一点;二是山子在他环集我中设世了一个表头结点,在任何状况下,Wi环链表中至少有一个结点存在,从而便空表与空衣的运算统J:循环短表是在单独表的旅础上增加了一个表头结点,J1插入和IH除运算与的班表相同但它可以从任一结点动力来访问去中其他全部结点,并实现空农与非空去的运算的统一1.6 #电二又1、树的基本概念区足种简洁的非线性结构,在树这种数抠结构中,全部数据无索之间的关系具有明显的层次特性.在树结树中,每个结点只有一个前件,称为I父结就没有前件的结点只有个,称为树的根结点,简称树的根.经一个结点可以有多个后件,称为该结点的子结点.没有后件的结点林对亚邈。在树结树中,一个结点所拥力的后件的个数称为该的点的阂,全部结点中以大的度称为树的应树的最大层次称为期迹。2、二叉树与其成本性质(1)什么是二叉树鱼区是一种很有用的非战性结构,它共有以下两个特点:1)非空二叉树只有一个根结点;2)插一个结点最多有两棵千树,且分别称为该结点的左子树与右子树 :依据二文树的概念可知,二又树的度可以为O(叶结点)、1(只有一棵子树)或2(有2棵子树)。I-1.j1(2)二叉树的蜃木性质WR1.在二叉树的第k层上,最多方个结点,ttA2深度为m的二又树厚个个结点,IMt3在随意一株二叉树中匚宜了的值?叶子律*比度为2的结点多一个性质4具有n个结点的二叉树,其深度至少为,咒中表示取的修数部分.3、湎.叉树与完全:叉树满二又树:除此终层外,每一层I:的全部结点都有两个子结点。完全:叉树:除最终一层外,征一层上的结点数均达到最大值;在最终一层上只缺少右边的片干结点。 :依据完全,叉树的定义可得出:度为1的结点的个数为。或I-先金二又程其枷下两个性:ttM5具有n个结点的完全二叉H.tt*6设完全二叉树共有n个结点,假如从根结点起先,按层序(海层从左到右)用自然数1,2,n给结点进行编号,则对于编外为k(k=1.,2,n)的结点有以下结论:若kZ,则该结点为根结点,它没右父结点;若k>1.,则该结点的父结点的编号为INT(k2h若2kVn,则编号为k的左子结点编号为2k;否则该结点无左子结点(明显也没行右子结点)。若2k+14n,则俄汁为k的行子结点tt号为2k+1.;否则该结点无右子结点。4、二文树的存仪|结构在计算机中,二叉树通常接受链式存储结构与线性矮表类似,用于存储二叉树中各元索的存储结点也由两部分组成:数据域和指针域但在二叉树中,由于每一个元素可以有两个后件(即两个子结点),因此,用于存RI二叉树的存储结点的指针域仃两个:一个用于指向该结点的左子结点的存储地址,称为左指什域;另一个用于指向该结点的右子结点的存储地址,称为右指针域 :-:叉树通沿接受域式存储结构,对于济,.又树与完全二叉树来说,可以依层序进行依次存储1.5、.叉树的遍历<<11r-,U,M,>f>WM一个姑总的父姑点。K.(if-V,M)(Xt(.FU&次frMtt*fi-mtnXWu11.二叉树的沮厉是指不重发地访间二叉树中的全部结点,二叉树的遍历可以分为以下三种:(1)前序遍历(D1.R):若二叉树为空,则结束返回,否则:背先访问根结点,然后遍历左子树,最终遍历右子树;并且,在遍防左右子树时,仍旧先访问根结点,然后遍历左子树,最终遍历右子树,(2)中俘遍历(1.DR):若:叉树为空,则结束返回.否则:首先通防左子树,然后访问根结点,破终谓历右子树;并I1.在洛历左、右子树时,仍旧先沮历左子树,然后访问根结点,最终遍历右子树.(3)后序沟厉(1.RD):若二叉树为空,则结束返回,否则:首先遍历左子树,然后遍历右子树,收终访问根结点,并且,在阻历左、右于树时,仍旧先遍历左子树,然址遍历右子树,最终访问根结点,1.7 M技术查找:依擀给定的某个值,在查找表中确定一个共关位字等于蛤定值的数据元素杳找结果:(找胜利:找到;i找不胜利:没找到.)平均位找尺度:位找过程中关进字和绐定值比较的中均次数1、依次我找基本思想:从表中的第一个元求起先,将给定的你与式中逐个元索的关键字进行比较,ft:到两者相符,杳到所要找的元素为1E否则就是"中没何要找的元素,找不胜利。在平均状况F,利用依次仪找法在段性农中i找一个元素,大妁要与我性置中一半的元素进行比较,最坏状况卜.须要比较n_次依次看找一个具有n个元素的税性表,其平均附现度为O(n).下列两种状况下只能接受依次杳找:D核如或性表是无序表(即表中的元附是无序的),则不管是依次存储结构还是健式存储结构,都只能用依次杳找,2)即使是有序般性表,假如接受蚯式存储结构,也只能用依次查找。2、二分法杳找思想:先确定待置找记录所在的他阐,然后逐步缩小范阴,直轲找到或埔认找不到馁记录为止.前梃:必需在其右依次存储结构的有序表中进行.杳找过程:D若中间项(imid三(n-1)2,mid的值四舍五人取侬)的值等于x,则说明已查到;2)若X小于中间项的值,则在线性表的前半部分食找;3)若X大T中间项的值,则在线性表的后半部分IS找,特点:比依次杳找方法效率宓,取坏的状况F,须要比较k>g2n次.*:二分法IS找只适用F囱翅Mfi的线性表,H表中元索必需国谢M1.%(升序)博列Ir对于无济然性&和线性束的链式存储结构只使用依次。找.在长度为n的仃/'1tt"i:吁CcK;序线性表中进行二分法查找,其时间困难度为0(10R2n).1.8排序是Ift将一个无序序列整理成按值遂K依次排列的行序序列,即是将无序的记业序列W整为有序记录济列的一种黑作,1、交换类排序法(方法:冒泡技序,快速作序)。2、插入类排序法(方法:简沾插入排序,希尔排序)。3、选择类排序法(方法:筒洁选择排摩,堆排序)。AM:各种排序法比较:»用X淞力男序9VS”Ittf1.Xii*ttW.7IUSttft7H惮速”早MS>tX*.11)9».3f1.U1*孑用和>©r*,算MK"tY斗At初幡初中UJiAiHr序哀中“mt千*Mfttto息等Wana!BMI个.从中&比,啰山.桂2爻“g。中AM矣"*BX"-TUM».S*t本笊应考点按:本僧内容花笔试中会出现56个君目,是公共基础学问部分出的玳比较多的一章,所占分值也比较大,约10分。其次件程序设计疑础2.1 啮计以橹O程序i殳计的风格上嬖怎调:|“清罐第一,效率其次1,主要应用意和多出卜述一些内ta'"xn工I-'J,«ZI'*.?>索:(1)源程序文档化,D符号名的命名,符号名使反映它所代表的实际东西,应有确定的实际含义-2)程序的注择“分为庄宣拄注拜和姬性注林序言性注称:位于程JF开头部分,包括程序标题、程序功傕说明、主要算法、接U说明、程序位置'开发信历、程序设计杆、复审看、复审H期与修改H期等,功能性注睬:嵌在双程序体之中,用于描述其后的语旬或程JK的主暨功傕3)视觉组织利用空格、空行、缩进等技巧使程序层次浦楚,(2)数据说明“D数据说明的次序规葩化;2)说明语句中变kt支配有序化;3)运用注绛来说明困难数据的结构,aw*trte电W1.im拔"“技木,力枚雄wsmawurae*.Ktt><*11f.««rtSifKi*<Hnf.k»-个板她内a*的信&,过«!<&«<>>HrKjf1.Ie1.i线%&的“直程!*诵.,nTMM.(3)语句的构。1)在一行内只写一条语句;2)程序编写应优先考虑清鹿性;3)程序编写要做到清楚笫,效率共次;4)在保证程序正确的基础I:再要求掘高效率;5)避开运用临时变盘而使程序的可设性下降;6)避开不必要的转移;7)发H运用昨函数;8)避开接受困堆的条件语句;9)尽贵削减运用“否定”条件语句;10)数据结构要有利于程序的简化;11)要模块化,使模块功能发可傕单一化;利川1(;息做前,确保年个梗块的¾1汇件;13)从数据动,去构造程.序;141不要修料不好的程序,要取新编(4)输入和输出.1)对输入数据检物数抠的合法性;2)检杳输入项的各种重要如合的合法性;3)埔入格式要简洁,使得输入的步骤和操作尽可能简洁;4)输入数据时,应允许运用自由格式;5)应允许缺省值;6)输入一批数据时,最好运Jn输入结束标记;7)在以交互式输入/输出方式进行输入时,要在屏箱上运用梃示符明确提示输入的恩求,同时在数tK输入过程中和输入结束时,应在屏幕上给出软态信总;8)当程序设计曙占对输入格式有严格耍求时,应保持编入格式与修入语句的一样性;给全部的输出加注群,井设计输出报表格式,2.2 储濯*设计即明煌的程方设计方脚1、结构化程序设计方法的主要原则可以概括为:自质向卜,逐步求精.模块化,限制运用got。语句,(1)自值向F。程序设计时,应先考虑总体,后考虑细微环节;先考虑全局口标,后号虑储都门标,不嘤一起先就过多追求众多的细微环节,先从坡上层息目标起先设计,逐步使问题具体化逐步求精.对困睢问的,应设计一些子目标作过渡,逐步细化.模块化一个困难问题,确定是由芥稍简洁的问题构成.模块化是把程序要解决的总目标分解为分目标,再进一步分解为具体的小目标,把征个小目标称为一个校界(4)限制运用got。语句.2、结构化程序的基本结构:依次结树,选择结树,术总结树D依次结构“一种筒沽的程序设计,即依据程序语句行的白然依次,一条语句一条语旬地执行程序,它是最基本、鼓常用的结构.2)选扑结构.又椽分支结构,包括筒沽选挣和多分支选挣结构,可依据条件,推断应当选择哪条分支来执行相应的语句序列,3)ft1.1.,乂称循坯M构,可依据给定的条件,推断是否须要皿执行某一相同的或类似的程序段-仅仅运用依次、选挣和循环三种战本阳制结构就足以表达各种其他形式结构,从而实现任何单入口/生出口的程侪。2.3IfIm的程序设计客现世界中任何一个'振物都可以被看成是一个对象,面对对软方法的本收就是指如理解和搞述现小物.强调最终建让的系统能第映射向翘域,也就是说,系统中的野象与对望之间的关系能够照实地反映问题域中向有的作佝与其关系“面对对象方法的主要优点:(1)与人类习惯的思维方法一梯;(2)依定性好;(3),力dj好;(4)步于开发大型软件产品;(5)可维护性好./林:鬻黑;:;:;州1.W* :面对对象的程序设计主要多虑的是提岛软件的可承阴性,叵触½百对对象方法中最乂木的段念,可以用来收示客观世界中的任何实体,对象是实体的抽象。面对对软的程序设计方法中的对象是系统中用来描述客观*物的一个实体,是构成系统的一个基本单位,由T1.我示共静态辨征的M性和它可执行的一细操作蛆成。对象是收性和方法的封装体,师即时余所包含的信息,它在设计对象时确定,一殷只他通过执行对象的操作来变更。丽述/对缺执行的功能,操作也称为方法或服务”探作是对余的动态M性.* :个对较由对象名、M性和排作三部分组成对型的基本特点:标加册二姓,分类姓,多态性,时装性,怏块独立性好,标识惟性,指对熊是UJ区分的,井I1.由对象的内在本质来区分,而不是通过描述来区分.(2)分类性,指可以将只有相同属性的操作的对象抽象成类,(3)多态性“指同一个操作可以是不同环敏的行为.(4)封装性,从外面C只能看到对象的外部特性,印只需知道数据的取值更附和Ur以对该数据施加的掇作,根本无需知道数据的尽体站相以与实现振作的算法,对象的内部,即处理实力的实行和内部状态,对外是不行见的从外面不能脆运用对融的处理实力,也不能干施修改其内黄口状态,对软的内部状态只能由其自身变更。* :信息隐藏是通过对象的时范性来实现的(5)模块独立性好.对象是而对对象的软件的基本模块,它是由数据与可以对这些数据施加的搽作所纲成的统体,而且对象是以数据为中心的,撩作圉绕对其数楙所需做的处理来设钳,没有无关的操作.从模块的独立性号虑,对余内部各种元素彼此结合徨很常密,内聚性覆,因是指J!有共同M性、共同方法的双鱼的集合,所以类是对攸的抽余,对敛足对应类的个实例。画½一个实例与另一个实例之间传递的信息”消息的如成包括:(D接收消息的对软的名称;(2)济息标识特,也称消息名;(3)零个或多个参数*:在面对对象方法中,一个对象思求另一个对余为其服务的方式是通过发送消息睛不是桁能第I嚏获得已有的性收和特征,而不必由父定义他们。继承分也继承和多正继承.单继承指一个类只允许有一个父类,多爪堆承指个类允许有多个父类.*:类的绕承性是类之间共享阳性和操作的机制,它提高了软件的可重用性,旃图是指同样的消息被不同的对望接受时可导致完全不同的行动的现象本天鹿方«我:本拿在”中会出MIH1.目,所占分M大箝占2分,是出Xuk接小的一率.本章内客比较少,MWH,R&住取031可以较检虚对物T,所K在这蛆法分,比较HHt第三章软件工基3.1aTS三*9tt1、软件的相关慨念计售机软件是包括是注、数抠与相关2茸的完犍集合,Bttmx1.1.1.;MMffJ6>n,',22iJK1.rr.室G匕切黑的期8人旬H以狗忘记”C“介If1.匕似总无法打到歌t本。的“方.名禽碧H'“、分析«».才能了H比的均修.怜纥等曲ttBtt*X2:*赋科开&加”.4&IWaPMiww.体”fd1.以以仟。方式筑.“济词及到人门例A2和</软仆不“产女反&检等向8一学七学软件的辨点包括:1)脓件是一种以辑实体,而不是物理实体,具物抽象2)软,件的生产与硬件不同,它没有明显的M作过程;3)软件在运行'运用期间不存在磨投、g化同胞;4)软件的开发、运行对计算机系统具有依靠性,受计好机系统的限制,这导致r软件移植的间里;5)软件困难性航成本却费;6)钛件开发涉与访多的社会因叫.2、软件危机与软件工程软件工程限门软件危机.所谓软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严峻向的。具体的说,在软件开发和维护过程中,软件危机主要表现在:1)软件儡术的增长得不到满足:用户对系统不满足的状况常阴发生。2)软件开发成本和进度无法限制。开发成本超出国算,开发周期大大超过规定H期的状况常常发生。3)软件质僦难以保证.4)4件不行维护或维护林度特别抵.5)软件的成本丕断提高6)软件开发生产率的提跟不I:硬件的发展和阳H需求的增长.息之,可以将软件危机可以归结为成本、庾收、生产率等问的,的红是是应用于计算机软件的定义、开发和维笊的犍杳方法、工具、文档、实践标准和工序.软件工程的目的就是要建让一个优良的软件系统,它所包含的内容概括为以下两点:D软件开发技术,主要有软件开发方法学、软件工具、软件工程环境,2)软件工程管理,主要有软件管理、软件工程经济学,软件工程的主要思想是将工作化原则运用刎软件开发过程,它包括3个要素:方法、工具和过程,方法是完成软件工程项目的技术F段;工具是支持软件的开发'管理、文档生成;过程支持软件开发的各个环号的限制、管理.软件工程过程是把婚转化为物曲的一细彼此相关的资源和活动。3、软件生命周期然性生创Ai期:软件产品从提出、实现、运川维护到停止运用退役的过程软件生命周期分为软件定义、蚁件珏发与软隹运行雄护三个阶设:D软件定义阶段:包括制定支配和需求分析制定支配:确定总目标;可行性探讨;探讨解决方案;制定开发支配.需求分析:对待开发软件提出的出求进行分析并绐出具体的定义。2)软件开发阶段:软件设计:分为概要设计和具体设计两个部分.软件实现:把软件设计转换成计算机可以接受的程TF代利,软件浏试:在设计测试用例的基础匕柏验软件的多个蛆成郃分,3)软件运行愎护阶段:软件投入运行,并在运用中不断地维护,进行必要的扩充和Mo*:软件生命周期中所花伊最多的阶段是软件运行维护阶段4、软件工程的目标和与原则(1)软件工程目标:在给定成本、进度的前提1.开发出具有有效性、率依性、可用斛性、可施护性、可禾用性、可适应性、可移植性、可追踪性和可互操作性H满足用户需求的产品,(2)软件工程须要达到的基本目标应是:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;须瞿较低的堆护费用;能按时完成开发,与时交付运用.(3)软件工程师则:抽象、信息除藏、模块化、局部化、硼定性、样性'完备性和可的证性.1>:抽象是犷物最葩本的特性和行为,忽视?本质细微环%,接受分层次抽缺,门顶向下,逐层细化的方法限制软件开发过程的困唯性a2)息庖回:接受封装技杷将程序模块的实现绢微环B1.a藏起来,使模块接口尽做简洁。3)模块化I:模块是程序中相对独立的成分,一个独立的编程单位,应行良好的接口定义,模块的大小婴适中,模块过大会使模块内部的困堆性用加,不利于模块的理解和修改,也不利模块的网试和水用;模块太小会导致整个系统表示过困建,不利于限制系统的阚堆性一4)局部化:保证模块间尺仃松散的稠台关系,模块内部行较1的内聚性,5)确诞:软件开发过程中全都做念的农达应是|定、无歧义且嫌抢的,6)三丽i:程序内外部接口应保持一样,系统规格说明与系统行为应保持一样,7)先价性:软件系统不丢失任何女婴成分,完全实现系统所方的功能8)“留证性|:应遵循前清松查'测评、评审的原则,以确保系统的IEe性。5、软件开发工具与软件开发环境(1)软件开发工具软件开发工具的完警和发展将促使软件开发方法的进步和完善,促进软件开发的离遑度和高颁V软件开发工具的发展是从单项工具的开发逐步向集成工具发展的,软件开发工具为软件工程方法供应了自动的或半自动的软件支撑环境.同时,软件开发方法的有效应用也必葡得到相应工具的支持,否则方法将推以有效的实施(2)软件开发环境软件开发环境(或称软件工程环境)是全面支持软件开发全过程的软件工具集合。I计算机例助软件工©(CASE,ComputerAidedSoftwareEngineering)将各种软件工具、开发机器和个存放开发过程信息的中心数据库蛆合起来,形成软件工程环境.它将极大降低软件开发的技术燃度并保证软件开发的随收.3.2 的,化分析方法结构化方法的核心和基础是结构化程序设计理论.1、需求分析需求分析方法有:D结构化借求分析方法;2)面对对象的分析方法.* :恒遮园的任务就是导出目标系统的逻辑模型,解决“做什么”的问胆,* :俯求分析一般分为借求快得、需求分析、编号需求规格说明15和需求评审四个步骤进行。2、站构化分析方法结构化分析方法是结构化程序设计理论在软件需求分析阶段的应用,结构化分析方法的实质:着限于数据液,11I¾I¾逐层分解,建立系跣的处理灌程,以数据流图和数据字典为主要工具,建立系统的逻辑模型,结构化分析的常用工具:D数据流图(DFD);2)故推字典(DD);3)判定树;4)判定表,数据流图以图形的方式描绘数据在系统中流淌和处理的过程,它反映r系统必偏完成的逻辑功怅,是结构化分析方法中用于去示系统逻辑模型的种工具。一=Utic秋检r>mxH».B上图是数据流图的基本图形元末:jj(转换):输入数据经加工变换产生输出.同据园沿简头方向传送数据的通道,一般在旁边标注数据流名.存储文件I(数据源):去示处理过程中存放各种数据的文件。源T闻:表示系统和环境的接11,属系统之外的实体,画数据流图的基本步骤:自外向内,自顶向3逐层绢化,完裨求精,数族字典:对全部与系统相关的数据元素的一个有蛆织的列表,以与精偷的、产格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果行共同的理解* :数擀字典的作用是对数据流图中出现的被命名的图形元索的准嫡说明,* :数据字奥是结构化分析方法的核心.3、软件需求规格说叨书(SRS)版件借求规格说明叫是需求分析阶段的奴络成果,通过建止完整的信息描述、“体的功能和行为描述、性能需求和设计约束的说明、合适的验收标准,给出对目标软件的各种需求3.3 脩树设计方法1、软件设计的M砒* :力求分析主要解决“做什么”的问图,而软件设计主要解决“怎么做”的问甩。从技术观点来看,软件设计包括软件结构设计、数据设计、接11设计、过程设计.脑构设用:定义软件系统件£夏部件之间的关系Itt据设讯:将分析时创建的模型找化为数据结构的定义版口设曲描述软件内部、软件和例作系统之间以“软件与人之间如何通信.M程设计把系统结构邮件转换成软件的过程性描述,从工程角度来看,软件设计分两步完成,即概耍设计和具体设计,何要设计:乂林结构设计,将软件候求转化为软件体系结构,确定系统彼接H、全局数据结构或数据库模式,卜工体诙计:确定斑个模块的实现尊法和局部数据结构,用适当方法表示算法和数据结构的细微环节,软件设计的基本M理包括:抽能、模块化、信息电僦和模块独k性.D抽象:抽象是一种思维工具,就是杷事物本收的共同将性提取出来而不考虑其他如微环W,2)模块化,解决一个困难间包时自顶向F逐步把软件系统划分成一个个较小的、相对独立但又不相互关联的模块的过程,3)信息脍藏修个模块的实施细微环对其他模块来说是脍截的4)校埃独立性.软件系统中年个模块只涉与软件耍求的具体的了功健,而和软件系统中其他的模块的接口是筒清的,* :2块分解的主耍指导忠也是信总1.和模块独立性.模块的耦合性和内聚性是衡啜软件的模块独立性的两个定性指标,画性:是一个模块内部各个元案间彼此结合的紧密程度的度ht* :按内索性由强到强?I列,内聚可以分为以下几种:儡然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、依次内聚与功能内聚.t:是模块间相互连接的紧密程度的度所。*:按限合性由离到低排列,隅台可以分为以下几种:内容助合、公共用仆、外部瑞合、限制用合、标比羯合、数据施分以与非干脆«u台,一个设计良好的软件系统应具有高内聚、低辅台的特征.在结构化程序设计中,模块划分的康娜是:桢块内具有高内聚度,模块间H有低儒合度.2、总体设计(概要设计)和具体设计(1)总体设计(概要设计)软件概要设计的基本任务是:1)设计软件系统结构;2)数据结构与数据库i5tH;3)编写概要设计文档;4)概要设计文档评审.常用的软件结构设计工具是结构图,也椽程序结构图程序结构图的基本图符:模块用一个矩形表示,箭头表示模块间的调用关系.在结构图中还可以用带注林的筋头表示模块调用过程中来回传递的信息,还可用帚实心W1.的箭头表示传递的是限Mf.J.Ci.空心两篇心农示传递的是数据信息1S:表示限制的层数上俄模块、从M模块:上、下两层模块a和b,且由3黑用b,则a是上级模块,b是从属模块,倭体限制莉度(取大模块数的层)的&示.幽:调川一个绐定模块的模块个数。丽一个模块干脆叫用的K他模块St原子模块:树中位于叶子结点的模块。而对数据源的设计方法定义了一些不同的映射方法,利用这些方法可以把故推流图变换成结构图表示软件的结构,数据流的类型:大体可以分为两种类型,变换型和事务型.A、变换型:变换型数据处理问越的工作过程大致分为三步,即取得数据、变换数据和嫡出数据.变换型系统结构图由输入、中心变换、和出三部分的成.B、M务型:*务型数据处理问题的工作机理是按殳一项事务,依据M务处理的特点和性质,造捶分流一个适当的处M单元然后天出结果./川.K;?心(2)具体设计具体设计是为软件姑构图中的每一个模块偷定实现算法和局部数据结构,用某种选定的友达工具衣示算法和数据结构的细微环节,:具体设计的任务是俺定实现算法和局部数据结构,不同于编码或编程.常用的过程设计(即具体i殳计)工具有以下几肿:图形工具:程序流程图、N-S(方众图)、PAD(何1.分析图)和H1.PO(层次图+输入/处理/出国).nN>H:r<.vetMftttnWMaii:m.表格工具:月定表“语言工具:PD1.(伪码)3.4象件,试U软件测试定义:运用人r成白动手段来运行或渊定某个系统的过程,其目的在于检整它是否满足规定的偏求成是弄清预期结果与实际结果之间的弟别。*:软件测试的目的:尽可能地多发觉程序中的杨送,不能也不行能证明程序没有情圉软件测试的关犍是设计海试用制,一个好的潮试用例傕找到迄今为止尚未发觉/彳心-IXMUn-*fFj>i*,4Je惠.*、刁注、.%n*B.的侨误。2、软件测试方法:静态测试和动态测试,方翎火:包括代码检15、静态结构分析、代码腹属度H不实际运行软件,主要通过人工进行恸态流词:是拓于计算机的测试,主要包括HAa域方法和照会遵送方法,(D

    注意事项

    本文(二级公共基础知识辅导讲义修订版.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开