软件技术技能抽查 考试标准第10版.docx

上传人:b****8 文档编号:10951375 上传时间:2023-02-23 格式:DOCX 页数:32 大小:73.17KB
下载 相关 举报
软件技术技能抽查 考试标准第10版.docx_第1页
第1页 / 共32页
软件技术技能抽查 考试标准第10版.docx_第2页
第2页 / 共32页
软件技术技能抽查 考试标准第10版.docx_第3页
第3页 / 共32页
软件技术技能抽查 考试标准第10版.docx_第4页
第4页 / 共32页
软件技术技能抽查 考试标准第10版.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

软件技术技能抽查 考试标准第10版.docx

《软件技术技能抽查 考试标准第10版.docx》由会员分享,可在线阅读,更多相关《软件技术技能抽查 考试标准第10版.docx(32页珍藏版)》请在冰豆网上搜索。

软件技术技能抽查 考试标准第10版.docx

软件技术技能抽查考试标准第10版

第一部分抽查考试标准3

一、适用专业3

二、抽查对象3

三、抽查目的3

四、抽查方式3

五、引用的技术标准或规范3

六、抽查内容与要求3

1程序设计3

2数据库应用开发4

3桌面应用开发4

4Web应用开发5

5素养要求6

七、程序设计与应用开发规范6

1代码组织与风格6

2注释规范7

3命名8

4声明9

5类与接口10

6方法10

7表达式与语句10

8错误与异常10

9文件目录组织10

第二部分试题选编12

第一章程序设计试题12

一、评分细则12

二、实施条件12

三、答题文件提交要求12

四、试题12

第一部分抽查考试标准

一、适用专业

本标准适用于湖南省高等职业院校软件技术(590108)、计算机信息管理(590106)、游戏软件(590113)、软件开发与项目管理(590116)等专业。

二、抽查对象

高等职业院校全日制三年一期在校学生。

抽查样本按该年级在校学生人数的10%随机抽取,样本不足10人的取10人、超过30人的取30人。

三、抽查目的

测试学生使用面向过程或面向对象方法进行程序设计的技能;按照数据库设计开发数据库应用的技能;按照软件工程规范、依据软件设计开发桌面应用和Web应用的技能。

同时对学生在实际操作过程中的职业素养表现进行综合评价。

四、抽查方式

试题由考试系统随机抽取;要求被测学生在规定时间内独立完成测试任务;考试时长180分钟;评分采用百分制。

五、引用的技术标准或规范

GB/T11457-2006信息技术软件工程术语;

GB/T8566-2007信息技术软件生存周期过程标准;

GB/T8567-2006计算机软件文档编制规范。

六、抽查内容与要求

抽查内容包括程序设计、数据库应用开发、桌面应用开发、Web应用开发四个最基本的通用模块。

要求学生能按照软件工程规范独立完成,并体现良好的职业精神与职业素养。

1程序设计

本模块测试学生运用程序设计语言和开发工具进行程序设计的能力。

要求会描述算法;能使用程序控制结构与语言机制解决程序逻辑问题;能对常用数据结构进行存储和操作;能实现一些基本算法。

1.1技能要求

●能编写、编译、调试、运行程序;

●能将流程图转化为程序代码,会使用流程图描述算法;

●能使用数据类型、变量、常量、运算符、表达式编程;

●能进行顺序、分支、循环三种控制结构的程序设计;

●能使用函数实现程序功能;

●能使用文件和标准设备,实现数据的输入和输出;

●能对数组、链表、堆栈、队列等基本数据结构进行存储和操作;

●能实现递归、查找、排序等常用算法;

●会使用封装、继承、多态、类、接口、对象等语言机制,进行面向对象程序设计。

1.2评价标准

评价内容、配分及考核点见表1,总成绩满60分为合格。

表1程序设计模块评价标准

评价内容

配分

考核点

语法正确

30分

源程序符合程序设计语言的语法规则,能通过编译或解释。

功能实现

60分

能利用程序控制结构与语言机制、常用数据结构与算法,实现各任务的业务逻辑。

代码规范

10分

程序代码符合程序设计与应用开发规范。

2素养要求

遵纪守法,尊重知识产权,爱岗敬业,严守保密制度;实事求是、工作认真、尽职尽责、一丝不苟、精益求精、具有良好的团队精神。

编码和注释能遵照本标准中的“程序设计与应用开发规范”;能根据配置管理要求进行源代码版本控制;能按时完成项目文档的编写;能按时完成程序Bug报告的提交;能按时完成程序功能的实现与测试;能及时汇报负责任务的进度。

对问题的答案具有强烈的渴求,不拘泥于固定的解题思维方式,具有丰富的想象力;保持最简单的就是最好的编码准则;善于总结,具有良好的学习能力。

爱护财产,具有安全意识。

二、程序设计与应用开发规范

本规范的目的是使软件开发人员能以标准的、规范的方式进行程序设计和应用开发。

通过建立此规范,使每个开发人员养成良好的编码风格和习惯;并以此形成开发编码约定,提高程序的可靠性、可读性、可维护性和一致性等,增进团队间的交流,并保证软件产品的质量。

1代码组织与风格

1.1基本原则

1.1.1代码的组织和风格的基本原则是:

便于自己的开发,易于与他人的交流;

1.1.2因个人习惯和编辑器等可以设置和形成自己的风格,但必须前后一致,并符合本规范的基本要求和原则;

1.1.3如果程序设计语言的通用编码约定与本规范有相冲突的地方,则以程序设计语言的通用编码约定为准。

1.2缩进

1.2.1子功能块应当在其父功能块后缩进;

1.2.2当功能块过多而导致缩进过深时,应当将子功能块提取出来作为子函数;

1.2.3代码中以tab键(4个字符)缩进。

1.3长度

1.3.1为了便于阅读和理解,单个函数的有效代码长度应当尽量控制在100行以内(不包括注释行);

1.3.2当一个功能模块过大时往往造成阅读困难,因此,应该使用子函数等将相应功能抽取出来,这也有利于提高代码的重用度;

1.3.3单个类也不宜过大,当出现此类情况时当将相应功能的代码重构到其他类中,通过组合等方式来调用,建议单个类的长度包括注释行不超过1500行。

尽量避免使用大类和长方法。

1.4行宽

1.4.1页宽应该设置为80字符,否则会导致在某些机器中无法以一屏来完整显示,但这一设置也可以灵活调整;

1.4.2在任何情况下,超长的语句应该在一个逗号后或一个操作符前折行。

一条语句折行后,应该比原来的语句再缩进一个tab键,以便于阅读。

1.5间隔

1.5.1类、方法及功能块间等应以空行相隔,以增加可读性,但不得有无规则的空行;

1.5.2操作符两端应当各空一个字符以增加可读性;

1.5.3相对独立的功能模块之间可使用注释行间隔,并标明相应内容。

1.6对齐

1.6.1关系密切的行应对齐,对齐包括类型、修饰、名称、参数等各部分对齐;

1.6.2连续赋值时,应当对齐操作符;

1.6.3当方法参数过多时,应当在每个参数后(逗号后)换行并对齐;

1.6.4当控制或循环中的条件比较长时,应当换行(操作符前)、对齐并注释各条件

1.6.5变量定义最好通过添加空格形成对齐,同一类型的变量应放在一起。

1.7括号

1.7.1{}中的语句应该单独作为一行;

1.7.2当左括号"{"紧跟其语句后,右括号"}"永远单独作为一行且与其匹配行对齐,并尽量在其后说明其匹配的功能模块;

1.7.3较长的方法以及类、接口等的右括号后应使用//end...等标识其结束;

1.7.4不要在程序中出现不必要的括号,但有时为了增加可读性和便于理解,可以使用括号限定相应项。

2注释规范

2.1基本原则

2.1.1注释应该增加代码的清晰度。

代码注释的目的是要使代码更易于被其他开发人员理解;

2.1.2避免使用装饰性注释内容;

2.1.3保持注释的简洁;

2.1.4注释信息不仅要包括代码的功能,还应给出原因;

2.1.5不要为注释而注释;

2.1.6除变量定义等较短语句的注释可用行尾注释外,其他注释当避免使用行尾注释。

2.2文件、包或命名空间注释

在每个文件、包或命名空间的头部都应该包含该文件的功能、作用、作者、版权以及创建、修改记录等。

2.3类、接口注释

在类、接口定义之前应当对其进行注释,包括类与接口的目的、作用、功能、继承于何种父类、实现的接口、实现的算法、使用方法等。

2.4方法注释

2.4.1对方法进行注释,以明确该方法功能、作用、各参数含义以及返回值等;

2.4.2复杂的算法用/**/在方法内注解出;

2.4.3参数注释时,应当注明其取值范围等;

2.4.4对于返回值,应当注释出失败、错误、异常时的返回情况;

2.4.5对于异常,应当注释出什么情况、什么时候、什么条件下会引发什么样的异常。

2.5其他注释

2.5.1应对重要的变量加以注释,以说明其含义等;

2.5.2应对不易理解的分支条件表达式加注释;

2.5.3不易理解的循环,应说明出口条件;

2.5.4过长的方法实现,应将其语句按实现的功能分段加以概括性说明;

2.5.5对于异常处理,应当注明正常情况及异常情况或者条件,并说明当异常发生时程序应当如何处理;

2.5.6在switch语句中,每当一个case顺着往下执行时(因为没有break语句),通常应在break语句的位置添加注释。

3命名

3.1基本原则

3.1.1规范的命名能使程序更易阅读,从而更易于理解。

它们也可以提供一些标识功能方面的信息,有助于更好的理解代码和应用;

3.1.2使用可以准确说明变量、字段、类、接口、包或命名空间等的完整的英文描述符。

严禁使用汉语拼音及不相关单词命名;

3.1.3采用该领域的术语;

3.1.4采用大小写混合,提高名字的可读性。

一般应该采用小写字母,但是类和接口的名字的首字母,以及任何中间单词的首字母应该大写;名或命名空间全部小写;

3.1.5尽量少用缩写,但如果一定要使用,当使用公共缩写和习惯缩写等,避免使用长名字(最好不超过25个字母)

3.1.6避免使用相似或者仅在大小写上有区别的名字;

3.1.7避免使用数字,但可用2代替to,用4代替for等。

3.2文件、包或命名空间

3.2.1文件名当与其类严格相同,所有单词首字母大写;

3.2.2包名或命名空间一般以项目或模块名命名,少用缩写和长名,一律小写;

3.2.3包名或命名空间按如下规则组成:

[基本包/命名空间].[项目名].[模块名].[子模块名]...。

3.3类、接口

类和接口的命名一般采用能确切反应该类、接口含义、功能等的名词,接口名可带I前缀或able、ible、er等后缀,类和接口名中所有单词首字母都必须大写。

3.4字段

3.4.1常量

采用完整的英文大写单词,在词与词之间用下划线连接,如:

DEFAULT_VALUE。

3.4.2变量和参数

对不易清楚识别出该变量类型的变量应使用类型缩写作其前缀,如字符串使用strXXX,boolean使用isXXX,hasXXX等等。

除第一个单词外其余单词首字母大写。

3.4.3组件/部件

应采用完整的英文描述符命名组件(接口部件),遵循匈牙利命名法则。

3.4.4集合

一个集合,应采用复数命名来表示集合中存放的对象类型。

命名应采用完整的英文描述符,名字中所有非开头的单词的第一个字母应大写,适当使用集合缩写前缀。

3.4.5其他

命名时应使用复数来表示它们代表多值。

如:

orderItems。

3.5方法

3.5.1方法的命名应采用完整的英文描述符,大小写混合使用:

所有中间单词的第一个字母大写。

方法名称的第一个单词常常采用一个有强烈动作色彩的动词。

取值类使用get前缀,设值类使用set前缀,判断类使用is(has)前缀;

3.5.2方法参数建议顺序:

(被操作者,操作内容,操作标志,其他⋯)。

3.6异常

异常类名由表示该异常类型的单词和Exception组成,如ActionException。

异常实例一般使用e、ex等,在多个异常时使用该异常名或简写加E,Ex等组成。

3.7数据库命名规范

3.7.1所有数据库表名均以T开头,各单词之间使用“_”相连,各单词小写,如T_user_func_distribute;

3.7.2字段名第一个字符必须是字母且为大写,各单词之间使用“_”相连,各单词小写。

如Func_name;

3.7.3所有表名与字段名最多可以包含30个字母数字字符,不能包含空格或特殊字符(如“!

”),但可以包含“$”、“#”和“_”。

4声明

4.1基本原则

声明的基本原则是遵守各种程序设计语言规范,并遵从习惯用法。

4.2包或命名空间

4.2.1在导入包或使用命名空间时,应当完全限制代码所使用的类的名字,尽量少用通配符的方式;

4.2.2如果导入一些通用包或命名空间,或用到一个包或命名空间下大部分类时,则可使用通配符方式;

4.2.3同一包或命名空间中的类导入时,应当声明在一起,可由编辑器自动完成此功能;

4.2.4重要的包或命名空间当添加注释。

4.3类、接口

类、接口定义遵守各种程序设计语言规范。

4.4方法

尽量限制成员函数的可见性。

4.5字段

4.5.1公共和保护的可见性应当尽量避免,所有的字段都建议置为私有,由获取和设置成员函数(Getter、Setter)访问;

4.5.2不允许“隐藏”字段,即给局部变量所取的名字,不可与另一个更大范围内定义的字段的名字相同(或相似)。

5类与接口

5.1基本原则

5.1.1类的划分粒度,不可太大,造成过于庞大的单个类,也不可太细,从而使类的继承太深。

一般而言,一个类只做一件事;另一个原则是根据每个类的职责进行划分;

5.1.2多使用设计模式,随时重构;

5.1.3多个类中使用相同方法时将其方法提到一个接口中或使用抽象类,尽量提高重用度。

5.2抽象类与接口

5.2.1一般而言:

接口定义行为,而抽象类定义属性和公有行为,注意两者间的取舍,在设计中,可由接口定义公用的行为,由一个抽象类来实现其部分或全部方法,以给子类提供统一的行为定义;

5.2.2多使用接口,尽量做到面向接口的设计,以提高系统的可扩展性。

5.3继承与组合

尽量使用组合来代替继承,一则可以使类的层次不至于过深,而且会使类与类,包与包或命名空间与命名空间之间的耦合度更小,更具可扩展性。

6方法

方法只完成一项功能,在定义系统的公用接口外的方法应尽可能的缩小其可见性;避免定义静态方法。

7表达式与语句

7.1基本原则

7.1.1表达式和语句应当清晰、简洁,易于阅读和理解,避免使用晦涩难懂的语句;

7.1.2每行至多包含一条执行语句,过长应当换行;

7.1.3避免在构造方法中执行大量耗时的初始化工作,应当将这种工作延迟到被使用时再创建相应资源,如果不可避免,则应当使用对象池和Cache等技术提高系统性能;

7.1.4避免在一个语句中给多个变量赋相同的值;

7.1.5尽量在声明局部变量的同时初始化。

唯一不这么做的理由是变量的初始值依赖于某些先前发生的计算;

7.1.6一般而言,在含有多种运算符的表达式中使用圆括号来避免运算符优先级问题。

7.2控制语句

7.2.1判断中如有常量,则应将常量置于判断式的右侧;

7.2.2尽量不使用三目条件判断;

7.2.3所有if语句必须用{}包括起来,即便是只有一句;

7.2.4当有多个else分句时应当分别注明其条件,注意缩进并对齐;

7.2.5过多的else分句当将其转成switch语句或使用子函数。

8错误与异常

8.1基本原则

8.1.1对于经常发生的可预计事件不要采用异常;

8.1.2不要使用异常实现控制结构;

8.1.3若有finally子句,则不要在try块中使用return语句,也不要在finally中使用return语句。

8.2异常的捕捉与处理

8.2.1每个捕捉到的异常都应该调用输出语句,打印出异常信息,避免异常的湮没;

8.2.2多个异常应分别捕捉并处理,避免使用一个单一的catch来处理。

9文件目录组织

由于各模块所要求的文件目录结构不一样,有关内容见“第二部分试题选编”中各章的说明。

第二部分试题选编

第一章程序设计试题

一、评分细则

程序设计试题从语法正确性、功能实现、代码规范性三个方面进行评分,评分细则见表1.1。

表1.1程序设计试题评分细则

评价项

分值

评分细则

语法正确性

30分

共3个子任务,每个子任务的语法部分分值为10分,共30分。

程序能正常编译或解释,为满分;每有一处语法错误扣2分,扣完为止。

功能实现

60分

共3个子任务,每个子任务的逻辑实现部分的分值为20分,共60分。

能完成各子任务的逻辑功能,则为满分;没有完成的功能点按照比例扣分。

代码书写格式规范

4分

代码缩进不规范扣1分;方法划分不规范扣1分;语句结构不规范扣1分;使用空行不规范扣1分。

类名、变量名、方法名命名规范

4分

类名命名不规范扣1分;变量名命名不规范扣1分;方法名命名不规范扣1分;类名、变量名、方法名没有实际意义扣1分。

注释规范

2分

整个项目没有注释扣2分;有注释,但注释不规范扣1分。

二、实施条件

测试所需的软硬件设备见表1.2。

表1.2考点提供的主要设备及软件

序号

设备、软件名称

规格/技术参数、用途

备注

1

计算机

CPU奔腾4以上,内存1G以上,XP操作系统。

用于软件开发和软件部署,每人一台。

2

MicrosoftVisualStudio2008或以上、NetBeans6.8或以上、Eclipse3.2或以上

软件开发

参考人员自选一种开发工具

3

MSDN或者JDK1.6帮助文档中文版

帮助文档

参考人员可以使用帮助文档

三、答题文件提交要求

答案以“答题文件”的形式提交。

请按以下要求创建答题文件夹和答题文件:

1创建答题文件夹

建立以“所属学校名_身份证号_姓名_题号”命名的文件夹,存放所有答题文件,如:

“湖南科技职业学院_340103***********_李维_A_1\”

2创建答题文件

创建三个子文件夹task1、task2、task3,将三个任务的源代码和可执行文件保存至相应文件夹。

即文件夹“湖南科技职业学院_340103123123121_李维_A_1\task1\”,用于保存任务1的源代码和可执行文件;文件夹“湖南科技职业学院_340103123123121_李维_A_1\task2\”,用于保存任务2的源代码和可执行文件;文件夹“湖南科技职业学院_340103123123121_李维_A_1\task3\”,用于保存任务3的源代码和可执行文件

3提交答题文件

将“所属学校名_身份证号_姓名_题号”文件夹打包,形成“所属学校名_身份证号_姓名_题号.RAR”文件,如:

“湖南科技职业学院_340103***********_李维_A_1.rar”,将该文件按要求进行上传。

四、试题

【试题1】

任务一:

输入某年某月某日,判断这一天是这一年的第几天。

例如,2001年3月5日是这一年的第64天。

要求:

使用分支结构语句实现。

任务二:

输出阶梯形式的9*9口诀表,如图1.1所示。

1*1=1

1*2=22*2=4

1*3=32*3=63*3=9

1*4=42*4=83*4=124*4=16

1*5=52*5=103*5=154*5=205*5=25

1*6=62*6=123*6=184*6=245*6=306*6=36

1*7=72*7=143*7=214*7=285*7=356*7=427*7=49

1*8=82*8=163*8=244*8=325*8=406*8=487*8=568*8=64

1*9=92*9=183*9=274*9=365*9=456*9=547*9=638*9=729*9=81

图1.1阶梯形式的9*9口诀表

要求:

使用循环结构语句实现。

任务三:

编程实现判断一个整数是否为“水仙花数”。

所谓“水仙花数”是指一个三位的整数,其各位数字立方和等于该数本身。

例如:

153是一个“水仙花数”,因为153=13+53+33。

要求:

用带有一个输入参数的方法或函数实现,返回值类型为布尔类型。

【试题2】

任务一:

已知某字符串数组,包含如下初始数据:

a1,a2,a3,a4,a5已知另一字符串数组,包含如下初始数据:

b1,b2,b3,b4,b5,做程序将该两个数组的每一对应项数据相加存入另外一个数组,并输出。

输出结果为:

a1b1,a2b2,a3b3,a4b4,a5b5。

要求:

●定义2个数组,用于存储初始数据。

定义另外一个数组,用于输出结果。

●做循环将两个初始数组的对应项值相加,结果存入另外一个数组。

(不要边加边输出)

●做循环将结果数组中的值按顺序输出。

任务二:

写出一个函数:

将某已知数组的奇数项组合成一个新的数组。

在主函数中调用该函数,并循环输出新数组的内容。

要求:

●主函数定义一个初始化的数组,该数组中的值为:

1,2,3,4,5,6,7,8,9,10,11

●写出一个函数,该函数的函数名为:

OddArray,函数需要的参数个数1个,参数数据类型为数组。

函数的返回值为数组。

函数体实现功能:

将参数数组中的奇数项存入另外一个数组,并返回该数组到主函数中。

●在主函数定义一个新的数组,用于取得函数OddArray的返回值,然后循环显示数组的值。

(显示出来1,3,5,7,9,11)

任务三:

现有学生类,有2个属性:

学号,姓名。

有大学生类继承此学生类,新增一个属性:

专业。

写出学生类,以及大学生类。

实例化大学类为一个对象并给大学生类的所有属性赋值。

要求:

●学生类,属性均为字符串类型;

●写出大学生类,继承学生类(专业的数据类型也为字符串)。

●在主函数中实例化大学生类为对象,并给该对象的每个属性赋值。

【试题3】

任务一:

已知某个班有M个学生,学习N门课程,已知所有学生的各科成绩,编程:

分别求每个学生的平均成绩,并输出。

要求:

●定义一个二维数组,用于存放M个学生的N门成绩。

定义一个一维数组,用于存放每个学生的平均成绩。

●做二重循环,将每个学生的成绩输入到该二维数组中。

●做二重循环,对已经存在于二维数组的中的值进行平均分计算,将结果保存到一个一维数组中。

●做循环输出该一维数组(即平均分)的值。

任务二:

利用递归方法求5!

用递归方式求出阶乘的值。

递归的方式为:

5!

=4!

*5

4!

=3!

*4

3!

=2!

*3

2!

=1!

*2

1!

=1

即要求出5!

先求出4!

要求出4!

先求出3!

......以此类推。

要求:

●定义一个函数,用于求阶乘的值;

●在主函数中调用该递归函数,求出5的阶乘,并输出结果。

任务三:

有一分数序列:

2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

要求:

利用循环计算该数列的和。

注意分子分母的变化规律。

【试题4】

任务一:

计算算式:

1+21+22+23+…+2n 

要求:

n由键盘输入。

任务二:

输入一批学生成绩,以-1作为结束标记 。

统计这批学生中,不及格(score<60)、及格(60<=score<70)、中等(70<=score<80)、良好(80<=score<90)、优秀(90<=score<=100)的人数。

要求:

使用分支结构语句实现。

任务三:

创建5个学生对象给一个学生数组赋值,每个学生属性有:

学号、

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 经济学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1