中科院高级软件工程期末题库
文档是期末考试的题库,老师出的题目都是从这里面出的。目录概念解释.二、选择题、设计题四、简答题……………23概念解释1.敏捷开发方法与 Scrum方法2.基于计划文档开发方法(Pan-and- Document based Development)3.DRY( Dont repeat yourself)尢重复代码4.MVC(软件作为服务的开发框架)5. SMART用户故事6. TDD and红绿重构7.F|RST测试原则8.代码味道及类内方法SOFA原则(说明S、O、F、A分别代表什么?违法该原则的代码的不好特征、重构和修复的方法)9.类间关系的SOLD原则(说明每个原则的意义、违法该原则的代码的不好特征、重构和修复的方法)(1)单一责任原则(2)开闭原则(3)里氏替换原则(4)依赖注入原贝(5)迪米特法则10.持续集成及开发11.文档对象模型(DoM)和 jQuery12. JavaScript函数特点13. HTML14.ruby面向对象15.ruby访问控制 public、 private和 protected16.CSs规则构成17.ruby中的数组18.Ruby哈希(Hash)19.Ruby迭代器:each和 collect20.Git工作流程、选择题21工具/语言1.下面哪个git命令用来帮助跟踪谁修改了什么文件和什么时候修改的?A. git listB. git manageC. git pushD. git blame2.如何比较两个文件或当前文件和以前版木的修订?A. git diffB. git compareglt cloneD. git checkout3.如果提小提交内容为空、不能提交,则最为合适的处理方式是a)执行 glt status查看状态,再执行 git add命令选择要提交的文件,然后提交。b)执行 glt commit- allow- empty,允许空提交。c)执行 glt commit-a,提交所有改动。d)执行 glt commit- amend进行修补提交4.如果把项目中文件hel1o.c的内容破坏了,如何使其还原至原始版本?0 git reset--hellocb) git checkout HEAD--hellocc) git revert hello.cd)git update hello.c5.修改的文栏 meeting.doc尚未提交,因为错误地执行了 glt reset-hard导致数据丢失。丢失的数据能找回么?a)不能。执行硬重置使工作区文件被覆盖,导致数据丢失无法找回。b)能。可以通过 git checkout hEAD@{1}- meeting.doc找回。c)不确定。如果在重置前执行∫ git add命令将 meeting.doc加入了暂存Ⅸ,则可以在对象厍中处于悬空状态的文件中找到d)不能。因为未提交所以无法找回。6.仅将工作区中修改的文件添加到暂有区(新增文件不添加),以备提交,用什么命令标记最快?a) git add -Ab) git add→pc git addd git add下面哪一个命令不会改变提交历史?a) git resct --hard HEAD1b) git checkout HEADc) git rebase -i HEADd) git commit --amend8.下面的描述中不属于Ruby特性的是A.Ruby是一种功能强大的面向对象的脚本语言B.Ruby遵守GPL协议并且是免费的。C.Ruy具有自动内存管理机制。D.Ruby是基于MVC架构的。9.下面的描述中不属于 Rails特性的是A. Rails是一个使用Ruby语言写的开源网络应用框架。B. Rails具有强大的反射札制与后设编程C.“不要重复自u”和“约定胜丁配置”是 Rails的设计原则。D. Rails具有实时映射技术和模板编程技术。10.Ruby提供了多种字符串的表示方法,下面哪一种是错误的?A.str=在线学习乐园”B.str-niwww.itzcn.comlC.str=%/t免费教学和视频D.str="窗内网11.在命令控制台要查看Ruby的版本应该使用命令A. rubyB. ruby versionC. ruby -hD. ruby /12.下列不属丁 Ruby Gems提供命令的是A. gem listB. gem install railsC. gemD. gem -update rails13.下面关于Ruby编译器的使用方法,错误的是A. ruby hi. rbB. ruby -e print hC. ruby -h hi. rbD. ruby -c hi. rb14.调用方法可以去除用户输入的换行符。A. chompB. trC.D. to i22需求分析15.下面哪些用户故事描述是满足的 SMART原则要求的?A.用户能用影片名查找电影信息。B.作为一个用户,我想看前10个按价格从低到高排序的影片列表,以便我买到最便宜的电景票。C. Rotten potatoes app应该有好的用户界面D. Rotten potatoes app应该有好的用户界面和快的响应时间6.下面哪个是对,就用户故事而言?()它们应该措述该应软件是如何使用的。()它们应该有业务价值。(i)它们不必要是可以测试的。它们应该在敏捷软件开发生命周期的各阶段都能实施或实现。A. ionlyB. i and iic, i and iyD, i iii, and iv7.相对强调过程的场景描述而言,声眀性场景描述特点是:A.有更复杂语句和步骤。B.个是DRY。C.史段、易理解和维护。D.关注在低层步骤上,这些步骤需要初始化设置和执行测试。8.对隐性和显性需求而言,下面哪些说法是对的?A.无论隐性和显性需求,你都不能写用户故事。B.隐性需求更简洁,而显性需求更啰嗦。C.隐性需求是显性需求的逻辑结果,通常对应于综合性测试D.显性需求通常可以用场景化过程性语言描述,而隐性需求通常用声明性语言描述。19.为什么很多软件项目失败?软件不是用户所要的。(i)延迟交付。(i)软件超出预算。(y)软件演化后容易维护和升级A. i andB. iii and iyC. i ii and iiiD. i, ii, iii, and iv20.下面哪些是表达了BDD的不足。.与客户交互沟通的成本。i.客户满意不等于该软件有一个好的架构。ⅲ编写功能代码前,先写测试代码。.缺乏相关工具。A. i and iiB. iii and ivC. ii and iiiD. i ii, iii, and iy21.需求分析最终结果是产生()A.项目开发计划B.可行性分析报告C.需求规格说明书D.设计说明书22.需求分析中,开发人员要从用户那里解决的最重要的问趣是()A.让软件做什么B.要给软件供哪些信息C.需求软件工作效率怎样D.让软件具有何种结构23.需求规格说明书的内容不应包括对()的描述。A.主要功能B.算法的详絀过程C.用户界面的运行环境D.软件性能24.软件需求分析阶段的工作,可以分成4个方面:需求获取,需求分析,编与需求规格说明书以及()A.用户B.需求评审C.总结D.都不正确25.在原型法中,开发人员根据()的需求不断修改原型,直到满足客户要求为止A.用户B.开发人员C.系统分析员D.程序员26.需求验证应该从下述几个方面进行验证:A.可靠性、可用性、易用性、重用性B.可维护性、可移植性、可重用性、可丬则试性C.一致性、现实性、完整性、有效性D.功能性、非功能性22设计27.敏捷开发者崇尚的价值点是A.过程和工具胜于个人与团队交流B.可工作的软件系统胜于全面的文档C.合同谈判胜于与客户协作D.遵循计划胜于响应需求变化28.瀑冇软件开模型与螺旋软件开发模型的区别?A.瀑布模型包括了大量的计划文档和时间跨度大的可匚作软件版本,而螺旋模型小量的计划文档和时问跨度小的可工作软件版本。B.瀑布模型从开始就写全所有的需求文档,而螺旋模型按迭代阶段写需求文档.C.瀑布模型有教长的迭代周期,而蠓旋模型有较短和快的迭代周期。D.瀑布模型的在每个阶段完成后进行保障测试,最后验证阶段包括了验收测试;而螺旋模型的侏障测试在每2个月内进行。29.哪种类型的代码是最坏的?A.遗留代码( legacy code)B.静态代码( static code)C.与期望不一致的短命代码( unexpectedly short-lived code)D.优美代码( beautiful code)30.“系统中的每一个知识(功能或特性)必须有单一的、无二义和明确的表示。”是对下面的哪条原则的表达?RESTBSAASC. SOADDRY31.如果一个项日延期后,为什么说增加人于不是一个好主意。因为:A.程序员太贵B.不能用大团队来承建SaS软件C.交流成本会下降D.让新程序员上手需要较多时间32. Model- View-Controller(Mvc)架杓/设计模式有什么好处?A.支持多用户存取和更新模型数据,对每个用户提供各自的视图。B.确保模型与视图有一对一的映射。C.为了调试日的,提供模型和控制器的调试窗口。D.像其他设计模式一样,遵循这类架构可以得到更简洼的代码。33.下面哪一ˉ种提晑软件生产效率的方法比较能体现面向服务架构的软件?A.通过简洁达到清晰( Clarity via concisenessB.代码合成( Synthesis)C.可重用( Reuse)D.自动化和工具( Automation and tools)34.一个服务直接访问另外一个服务的数据时可能出现不稳定的情况一般是以下哪一种情况的特点之A. Rails应用框架B.面向服务的架构C.面向对象编程D.敏捷开发过程35.假设有两个HTTP请求的URI是·样,但调用的方法(GET与POST)不同。对于Rails路由而言,卜面哪个说法是对的。A.两个请求可以对应不同控制器的方法,但不是必须的。
- 2020-12-08下载
- 积分:1
基于STM32的双向DC-DC变换器的设计与实现
本系统主要由 BUCK 降压模块、BOOST 升压模块、测控模块、辅助电源模块组成。其中BUCK 降压模块和BOOST 升压模块的驱动选用具有波形互补的可编程芯片IR2104、电流采样选用TI 公司专用高边电流采样芯片INA282;测控模块采用低功耗单片机STM32 对输出电压、输出电流实现闭环PI 控制。系统可以实现:在充电模式下,充电电流在 1~2A范围内步进可调且步进值为 0.05A,电流控制精度 1.30%左右;充电电流变换率为 0.87%;充电效率可达到 97.11%,具有测量、显示充电电流以及过充保护功能。在放电模式下,放电效率可达到96.54%且电压能保持在 30V目录第一章绪论1.1课题背景·*······*···*·····*···‘1.2双向DC-D变换器的研究意义1121.3国内外研究和应用现状1.4论文主要的研究内容.第二章双向DG-DG变换器拓扑结构的硏究.34662.1双向DC-DG变换器的基本原理与类型2.2双向DC-DG变换器的电路拓扑2.3双向DCDC变换器方案的设计10第三章双向DC-DC变换器硬件电路分析及参数设计.3.1双向DG-DG变换器的硬件电路分析.…123.2BUCK-B00sT电路器件的选择及参数设计3.3电流采样电路分析及参数设计173.4 MOSFET管驱动电路设计183.5辅助电源设计.19第四章双向DG-DG变换器的软件设计4.1软件设计方法214.2主函数程序设计4.3按键模式的识别.224.4恒流恒压模式的设计……第五章双向DG-DG变换器调试、实验结果与分析255.1测试仪器∴255.2测试方法255.3测试实验数据5.4测试结果分析…27第六章总结与展望6.1总结286.2展望.28[参考文献]附录(一):项目课题获奖情况及总体实物图….31附录1.1项目课题获奖情况31附录1.2双向D-DC变换器的总体实物图,34附录(二)程序清单…..35第一章绪论1.1课题背景航天器由若下分系统组成,分为有效载荷和航天器平台两大类。有效载荷主要是直接执行特殊的航天任务,而航天器平台主要由航天器结构和服务与支持系统构成。服务与支持系统主要包括电源裝置、姿态控制裝置、轨道控制装置、无线电测控装置、数据保管等等。因此,电源分系统是极其重要的,它是航大器所有能源供给装置。若电源部分工作不止常,则整体就将失去作用,变为毫无用处,电源重量占航天器重量的15%~25%。分为化学电源、太阳电池电源和核电源三类。日前世界上90%以上的航天器都采用太阳能电池阵构成的光伏电源发电系统。主功率供电回路的额定电压(母线电压)三个等级:(1)低压—28V,适用功率等级:1200W(2)中压——42或50V,适用功率等级:200水平(3)高压—100V或以上,适用功率等级:4000V水平。载人飞船氿道运行高度为300~400Km,轨道周期约为9lmin,其中轨道最长,阴影吋间37min,最短光照时间54min。飞船屯源分系统组成部分如表1所表1飞船电源分系统组成电源名称电源类型配置舱段用途备注太阳电池阵-镉镍待发段、发射段、自主主电源推进舱蓄电池系统运行段向整船供电有留轨仁务需要时,飞留轨电源太阳电池镉都轨道舱留轨使用期间船配置留轨电源,否电池系统不配置返回/着陆返回、着陆、等待期旧锌银蓄电池组返回舱电源供电补充峰值功率、应急飞应急电源锌银蓄电池组推进舱行供电目前,我国的航天电源部分调节器主要依赖于从欧洲等国家进口,需要耗费巨资,对我国载人航天的航天器产生极其不利的影响。因此,具有自主知识产权的电源部分调节器的研制,具有很重要的意义和深远的影响1.2双向DDG变换器的研究意义在传统的太阳能电池阵构成的光伏电源发电系统,传统的蓄电池充、放电模块很难保证太阳能阵在太阳光线充足时产生多余的能量不会导致航天器的过热以及储能装置蓄电池组的过允电,而且功率密度点较大,成木高,系统结构相对复杂。太阳能光伏电源发电系统是将太阳能转换成电能的发电系统,它的主要部件是由太阳能电池组、太阳能控制器、储能装置蓄电池(组)和太阳跟踪控制系统组成。其特点是高可靠性、寿命长以及对环境不产生污染、能独立进行发电且并网运行,受到世界各国电网公司的喜欢,发展前景十分广阔。太阳电池的发电功率通过“分流调节”全部变换为母线功率,一部分直接给负毂供电,另一部分则通过“充电调节”变换为充电功率为储能装置蓄电池组充电;蓄电池组功率通过“放电调节”变换为母线功率。对太阳电池发电功率的使用优先级依次为供电、充电、分流。充电功率可以视作母线的可调负载。太阳能电池光伏电源发电系统工作原理如图1所示。正丹线充电控制放电调节负载太阳能电池太阳能电池分流控制蓄电池组充电阼供电阵负母线图1光伏电源发电系统工作原理双向DC-DC转换器是连接正负母线电压与储能系统(如储能装置蓄电池组)的关键,所以使转换器的效率变髙极其重要。本文提出了一种降低功耗,提高整机效率的方案,使得对双问DCDC转换器的探讨变得更加具有意义。1.3国内外研究和应用现状20世纪后期,太阳能电池阵-储能装置蓄电池组构成的光伏电源发电系统的休积和重量庞大,著名外国学者提出了一种基于BCK/B0OST双向DCDC直流转换器来代替原有光伏电源发电系统的允电、放电模块,从而实现电压的稳定20世纪90年代,中国工程院院士陈清泉教授将基于BUCK/ BOOST双向DC-DC变换器在电动车领域使用,同年,外国专家研制了用大功率的水冷式DC-DC变换器即基于BUCK/ BOOST双向DC-DC直流转换器来驱动电动车,由于基于BUCK/BO0ST双向DC-DC变换器的输入输出电压的忙负极相反,不适合在电动车上应用,因此,他提出了一种基于BUCK-BO0ST级联型的双向DC-DC变换器,变换器的电源输入端与电压输出端的负端共用。经过4年时间,美国著名大学-弗吉尼亚大学教授李泽元开始研究在燃料电池上双向DC-DC变换器的配套应用。由此可见,用于载人航天的航天器电源和电动车辆的技术更新对双向DC-DC变换器的发展具有巨大的推动作用,随着开关直流变换器技术即脉宽调制技术的实现,给双向DCDC变换器的发展带来了曙光。1994年,有一位著名的澳大利亚学者发表论文,总结出几种非隔离型双向DC-DC变换器拓扑结构,主要是在CM0S开关管上反向并联具有快速、低功耗的二极管,且在二极管上反并联CMOS开关管,从而构成非隔离方式的双向DC-DC变换器种类有:BUCK-B0OST变换器、BUCK/B0OST变换器、CUK变换器和SEPI-ZETA变换器2004年,由我国学者张方华博士对推挽正激移相式、级联式、正反激组合式双向DC-DC直流变换器做了深入的研究。提出∫很多新型的应川电路,研究∫其控制模型,采用PI补偿环节的单电压闭环实现了系统闭环稳定。双向DC-DC变换器的硏究是近年来开关电源技术研宄的一个热门话题。2006年梁永春博士探讨了由反激式并联输入、串联输出构成的反激逆变器,提出了种同步整流的控制方案,极大地简化了髙频链逆变器的控制,使得整流二极管的导通损耗大幅度降低,整个电源系统的效率提高到85.8%。1.4论文主要的研究内容要求:设计一种双向DC-DC变换器,实现电池组的充电、放电功能。系统结构如图2所示,电池组由5节18650型、容量2000~3000mAh的锂离子电池串联组成。所用电阻阻值误差的绝对值不大于5%辅助电源测控电路3BS1 Rs-5Q2电双向DCDC池变换电路组RL=302直流稳压电源图2电池储能装置结构框图1.基本要求接通S、S3,断开S2,将装詈设定为充电模式(1)U2=30V条件下,实现对电池恒流充电。保障充电时电流l在1~2A范围内能够步进可调,步进值应≤0.1A,电流的控制精度≥5%。(2)设定1=2A,调整直流稳压屯源输出电压,使U2在2436V范围内变化时,要求充电电流I的变化率不大于1%(3)设定l1=2A,在U2=30V条件下,变换器的效率n1≥90%(4)测量并显示充电电流,在I-1~2A范围内测量精度不低于2(5)具有过充保护功能:设定l1=2A,当U1超过阈值U=24±0.5V时,停止充电。2.发挥部分(1)断开S1、接通S2,将装置设定为放电模式,保持U2=30±0.5V,此时变换器效率n2≥95%(2)接通S1、S2’断开S3’调整直流稳压电源输出电压,使直流电源电4压U在32~38V范围内变化时,双向DC-DC变换器能够自动切换工作模式即可自动切换充放电模式并保持输出电压U2=30±0.5V。(3)在满足要求的前提下简化结构、减轻重量,使双向DC-DC变换器、测控电烙与辅助电澒三部分的总重量不大于500g。(4)其他第二章双向Dc-D变换器拓扑结构的研究2.1双向DCDc变换器的基本原理与类型2.1.1双向DC-DG变换器的基本原理双向DC-DC变换器是把育流电压转换成另一个数值的电压,它是由软件控制导通的CW0S开关管、储能电感、续流二极管、具有滤波作用的电容、负毂等构成的,通过具有滤波功能的负载电路和直流电压时而使开关管时而接通或者时而关断,仗得另一端即负载上得到另一个直流电压2.1.2D0DG变换器的类型目前,国内外将双向DCDC变换器的拓扑结构主要划分为非隔离式和隔离式两大类。非隔离型拓扑的主要有:BUCK降压式、 BOOST升压式、BUCK- BOOST升降压型等拓扑。非隔离型拓扑如图3所示。隔离型拓扑的主要有:止激、反激、推挽、半桥、全桥型变换器(1)隔离型变换DYYYCD(a)BUCK变换器拓扑(b) BOOST变换器拓扑DL(c)BUCK- BOOST变换器拓扑图3非隔离型变换器拓扑以最基木的BUCK降压式变换器和BO0ST升压式变换器为例,介绍其工作原理。BUCK降压式变换器:当CMOS开关管Q接通时,电源Vin通过电感L给电容C充电;当开关管断开时,电感L通过快速、低功耗二极管D续流,电压逐渐降低。此时,电容上的电流由正逐渐降为零,最后变成负向,进而使开关管又一次导通,使得电感上电流增加。其储能电感L上电流波形如下图4所示tImar1-min(a)BUCK电感电流连续时波形(b)BUCK电感电流断续时波形图4BUCK电感电流波形BO0ST升压式变换器:当开关管Q导通吋,电源向电感L储能,电感L电流增加,负载由电容C供电;当开关管Q关断时,电感电流减小,电感电势与输入电压叠加,迫使二极管D导通,一起向负载供电,并同时向电容C充电。其电感电流波形如图5所小7
- 2020-12-05下载
- 积分:1