这两天将系统敲完了,该总体调试了,调试的过程中,发现了一个非常大的问题,就是自己的凝视写的不够,有时候不明确U层这个事件是做什么的,有时候不知道这个事件传递的是什么參数,有时候不知道相应的B层和D层是哪个,相应的B和D各做了什么工作。………….所以有的时候就须要自己从头到尾在看一遍代码,看一下传递了什么參数。看这些參数,是做什么用的,看一下,相应的B层对返回的数据做了什么处理,看一下相应的D层。起了什么作用。

这个时候这个过程真的非常浪费时间,让自己有一种非常厌烦的感觉。

这是自己的代码,自己编写,自己调试。就有这种感觉了,假设让你去调试别人的这种代码,那别人又该有什么样的感觉那??是不是要吐了啊??

所以说在这个小程序中我是深深的体会到了代码凝视的重要性。

想了一下当时自己为什么没有编写凝视,结合曾经米老师讲的课。整理了一下。

①写凝视太费时间。

实际上,在编写代码时加上凝视根本不须要多少时间。当时是趁热打铁,对于那些代码理解比較通透,写一句凝视就是敲那几个字的时间。

可是假设后来在加入凝视,就不只要敲那几个字,还要在从新理解一下这一块的代码。甚至相关的代码。假设后来不谢凝视,那么等到调试的时候就会像上面说的一样了啊。

②有些过程非常难凝视。

通常而言,假设代码的一个部分非常难凝视,那么假设没有凝视,其它人就更难理解你的代码。自己理解不清楚。怎么会使别人也理解清楚那。

③复杂而非常难凝视的代码或许不是什么好代码。假设你发现难以给所有或部分过程加上凝视,那么请回头好好观察一下你的代码,你会发现更好的解决的方法。

所以,凝视不是代码的附属品,它与代码是共存的关系。

凝视就是对代码的解释和说明。

目的是为了让别人和自己非常easy看懂。为了让别人一看就知道这段代码是做什么用的。代码凝视有几类

①行尾凝视

就是每行代码末尾的凝视。这些凝视仅仅能用于较短的描写叙述。比方变量。

②内部凝视

内部凝视是最经常使用和最重要的凝视。使用内部凝视可以说明过程的实现方法。使读者可以顺利通过各个不同的转折。

如:IF语句、Select Case语句、循环语句、全局变量、重要的变量。内部凝视将故意于理解这些代码。

③凝视标头。

在模块、类、属性、方法前一行加入凝视,以便调用的时候提示用户。凝视标头能够包括多个文字项,比方输入參数、返回值、原始作者、最后编辑该过程的程序猿、上次改动日期、版权信息,甚至包括程序猿喜欢的颜色。

每一个凝视表头应该有统一的格式。这个我们的net代码规范中已经做了规范了。

当然为了使我们的凝视看起来不是非常乱,增强凝视的可读性。

①易理解-----凝视是供人阅读的,而不是让计算机阅读的。应该使凝视便于人们理解。难以理解的凝视不如不写。

②另外,凝视属于文字信息。(用汉语翻译过来,自己的话说出来)---正如应用程序的文字信息,必须清楚地书写一样,代码凝视也应该遵循好的书写规则。比方:使用比較完整的语句来描写叙述。不要使用缩写。

③书写---凝视通常位于它们要说明的代码的前面。为了从视觉上突出凝视与它的代码之间的关系,请将凝视缩进,使之与代码处于同一个层次上。

上面已经写了,凝视的种类,凝视的格式。那么应该对什么进行凝视那?

种类

说明

类、过程、方法

描写叙述其的用途(而不是事实上现方式)、參数、返回值

输入

输入參数的作用

输出

说明过程返回的值,及其代表的意义

变量

尤其是全局变量,作用范围

这些凝视的种类自己在写程序中觉得应该加入的。如有什么不足,请指出。

用文字说明代码的作用,简单地反复代码做些什么。这种凝视差点儿不能给代码添加什么信息,(这句感觉自己理解不是非常到位)

凝视能使代码更加easy理解。更加easy跟踪。出色的凝视就像一幅好的设计蓝图,可以引导阅读者通过你的应用程序的曲折之处,可以说明预期的执行结果和可能出现的异常情况。

当然眼下自己还是没有达到这样的程度,越写感觉自己越不懂。哎…………….

IT人士的职业规范——凝视的更多相关文章

  1. [转载]在澳洲做IT人士的收入差别

    澳洲跟中国一样高税收,但最大的好处是,福利返还很多:1.如果家里有孩子,每2周会有各种税收福利,就是所谓的family tax benefits (a/b):2.每财年结束还有退税:3.看病不用钱,因 ...

  2. iOS开发- Xcode插件(一)-规范凝视生成器VVDocumenter

    分享几个经常使用的Xcode插件. 第一个, 规范凝视生成器VVDocumenter. 顾名思义, 它能够非常方便的为你自己主动加入�凝视 使用效果例如以下: 下载链接:https://github. ...

  3. 免费申请 Github 私有仓库--学生和教育人士的福利

    免费申请 Github 私有仓库 -学生和教育人士的福利 Github 是全球知名的软件项目托管网站.在 Github 创建私有仓库是需要收费的,收费方案有多种,费用最小的方案是每月 7 美元的“微型 ...

  4. CSDN日报20170312——《成功人士的七个习惯》

    [程序人生]成功人士的七个习惯 作者:liumiaocn 所谓温故而知新.重读往往会带来新的收获,即使没有新的收获,可以带来新的思考也是非常不错.在个人成长的历程中.习惯所扮演的角色不言而喻,Step ...

  5. 用象棋的思维趣说IT人的职业发展和钱途

    最近我花了不少功夫在学习象棋,也学习了王天一等高手的棋路,感觉IT人的职业和下棋一样,往好了讲,争主动权争实惠只争朝夕,往坏了讲,一步走错得用多步来弥补,如果错误太大未必能弥补回来.在本文里,就用下棋 ...

  6. 高效能Windows人士的N个习惯之一:启动篇

    接触电脑十多年,经历了各种折腾阶段,这几年开始沉静下来,不再追求花哨的界面与应用,只注重工作的效率,逐渐养成了一套自己的操作习惯,感觉不错,特撰文分享.标题借用了一下<高效能人士的七个习惯> ...

  7. 怎样学好C语言,一个成功人士的心得!

    今天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生,都要感谢两个人:克劳德.香农和约翰.冯.诺依曼,是他们发现了全部的数字化信息,不论是一段程序,一封email,一部电影都是用一连串的 ...

  8. (转)如何学好C语言,一个成功人士的心得!

    zidier111发表于 2013-1-26 08:59:05   今 天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生,都要感谢两个人:克劳德.香农和约翰.冯.诺依曼,是他们发现了所 ...

  9. 一个IT人士的个人经历,给迷失方向的朋友

    这些日子我一直在写一个实时操作系统内核,已有小成了,等写完我会全部公开,希望能够为国内IT的发展尽自己一份微薄的力量.最近看到很多学生朋友和我当年一样没有方向 ,所以把我的经历写出来与大家共勉,希望能 ...

随机推荐

  1. 利用ant进行编译和发布项目

    本文通过一个示例来解说如何通过ant进行编译和发布项目.本例按如下目录结构来组织项目. D:/web/antsample项目根目录 D:/web/antsample/src源代码目录 D:/web/a ...

  2. freemarker报错之三

    1.错误描写叙述 Expression students is undefined on line 30, column 24 in student.ftl. The problematic inst ...

  3. Ubuntu 系统 文件操作命令

    文件和目录的操作 用户主目录下有一个 Desktop (对应,桌面)mkdir dir1 建立一个目录cd 不添加参数,默认回到主目录(用户目录)touch a.txt 建立一个文件mv a.txt ...

  4. kaggle之泰坦尼克的沉没

    Titanic 沉没 参见:https://github.com/lijingpeng/kaggle 这是一个分类任务,特征包含离散特征和连续特征,数据如下:Kaggle地址.目标是根据数据特征预测一 ...

  5. linux中萌翻了的cowsay命令

    想要让你的linux萌翻吗? 首先需要安装cowsay软件 命令如下:sudo apt-get update;sudo apt-get install cowsay 然后对其输入命令,默认情况下,动物 ...

  6. CPU性能测试

    用计算圆周率的办法来测试cpu性能 4*a(1) 是 bc 主動提供的一個計算 pi 的函數,至於 scale 就是要 bc 計算幾個小數點下位數的意思.當 scale 的數值越大, 代表 pi 要被 ...

  7. asp.net在后台弹出confirm确认对话框并获取用户选择的值做出相应的操作

    在asp项目中,这种情况是经常出现的,前段时间通过查找资料以及自己尝试,找到一种解决方案,但是不知是否有更好的方案,以后发现再进行记录. 一.思路 在本次项目中,在一个函数中需要让用户判断,并根据用户 ...

  8. SQL Server 2008 geometry 数据类型

    摘自SQL Server 2008帮助 平面空间数据类型 geometry 是作为 SQL Server 中的公共语言进行时 (CLR) 数据类型实现的.此类型表示欧几里得(平面)坐标系中的数据. 注 ...

  9. [转] SQL Server游标的使用

    游标是邪恶的!        在关系数据库中,我们对于查询的思考是面向集合的.而游标打破了这一规则,游标使得我们思考方式变为逐行进行.对于类C的开发人员来着,这样的思考方式会更加舒服.        ...

  10. Linux中oracle的安装,亲测

    一.下载oracle的软件包 地址: http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-li ...