概述
为提高员工 (特别是新员工) 的编程技术水平,各组应推行内部模块测评制度。针对每个工作项目,有模块编程任务的员工至少要在组内集体测评一个模块。
那么如何测评呢?我们经过实践总结,发现测评过程与射击练习非常相似。无论是编程测评还是射击练习,都大体归纳成三个阶段:树靶子、擦枪械、瞄准射击。
下面详细解释一下这三个阶段的具体测评内容。
树靶子
我们把测评过程的第一阶段形象地比喻成树靶子。原因在于,无论是模块编程还是射击练习,都需要很明确的目标。对于射击来说,靶子就是它的目标;而对于模块编程来说,模块的功能定义就是它的目标。如果没有靶子,射击将无法评价水平高低;如果没有准确的模块功能定义,模块编程质量将无从评价。
因此,在编程测评的第一阶段,编程人应先准确、精炼地描述出模块的功能定义,作为后续窗体界面设计、C# 代码的评价标准。具体来说,编程人应借助《模块功能描述》文档,给测评人讲解清楚模块的具体功能;讲解过程中,测评人应积极思考分析模块功能的合理性,发起讨论,力争解决模块功能定义阶段的问题。经过激烈的讨论,测评人充分了解了模块功能,编程人也加深了对模块功能的理解,双方共同解决了很多模块功能定义不准确、不合理的问题。
经过这个阶段的测评,我们的射击标靶将无比清晰。既不会像庐山瀑布一样,只闻水声,不见其形;也不会像狙击手一样,藏匿行踪,静默遁形。它将静静地树立在那里,等着你擦枪射击。是不是很激动呢?下面我们赶紧进入第二阶段。
擦枪械
标靶已经树立好了,下面我们就该仔细地擦拭枪械。屠户都知道 “磨刀霍霍向猪羊” 呢,何况我们爱枪如命的神枪手们呢。在进行正式的射击练习前,神枪手们一定会百般仔细地检查擦拭自己的枪械,万一等会不小心破了世界纪录呢;在进行正式的 C# 代码讲解前,编程人一定要仔细地介绍展示自己的窗体界面,测评人要全面细致地查找窗体界面的问题,力争做到用户体验世界第一。
那么窗体界面测评阶段应该怎么进行呢?具体来说,编程人应运行起具体的模块界面,测评人按照从上到下、从左到右、从前到后的顺序仔细地检查窗体界面上的问题。
首先,测评人仔细检查窗体标题、菜单栏、Grid 控件等内容:
(一)对窗体标题来说,具体检查标题是否准确。
(二)对菜单栏来说,具体检查项包括:菜单栏控件是否有缺失,菜单栏控件排序是否合理。
(三)对 Grid 控件来说,具体检查项包括:
1、字段显示是否全面,该隐藏的字段是否隐藏;
2、字段排序是否合理;
3、字段宽度是否合适;
4、字段标题是否准确,该加 * 的加星号,该加 # 号的加井号;
5、字段只读属性设置是否准确;
6、字段是否应该设置冻结属性。
7、是否有行排序,排序规则是否合理;
8、是否有字段需要添加汇总栏。
第二,如果模块中有 FormLookup、GridLookup 配置,测评人应仔细地检查 SQL 数据源是否合理,是否需要优化,检查查询界面的字段布局是否合理。
第三,作为编程界的神枪手一定不要忘了检查数据集定义,测评人应仔细地检查数据集定义的各段 SQL 语句,评估其合理性,提出优化建议。
瞄准射击
树靶子、擦枪械都做完了,下面进入激动人心的瞄准射击阶段啦。就像射击练习一样,如果枪枪都打中 10 环,那说明你的射击水平太高了,可以参加奥运会了;如果你的每段 C# 代码都准确无误地实现了模块的每个功能,那说明你的编程水平逆天了,可以 PK 比尔盖茨、阿尔法狗的主人了。
保持规范、优雅地书写习惯,对每段代码都精雕细琢,对每个算法都力求最优,那你一定会像神枪手一样,枪枪命中 10 环,书写编程的传奇。
好的,就写到这里吧。再见,未来的传奇!