这两天将系统敲完了,该总体调试了,调试的过程中,发现了一个非常大的问题,就是自己的凝视写的不够,有时候不明确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. XNOR-Net ImageNet Classification Using Binary Convolutional Neural Networks

    转载请注明出处: http://www.cnblogs.com/sysuzyq/p/6245186.html by 少侠阿朱

  2. Rotate It !!(思维)

    Rotate It !! Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit ...

  3. ThinkPHP视图查询详解

    ThinkPHP视图查询详解 参考http://www.jb51.net/article/51674.htm   这篇文章主要介绍了ThinkPHP视图查询,需要的朋友可以参考下     ThinkP ...

  4. Windows7 无法打开ASA SSL VPN和ASDM首页

    原文地址:Windows7 无法打开ASA SSL VPN 首页和无法打开 ASDM GUI 页面作者:futhy              windows 7 无法打开ASA SSL VPN 和AS ...

  5. Byte、KB、MB、GB、TB、PB、EB是啥以及它们之间的进率

    它们是存储单位 因为计算机存储单位一般用B,KB.MB.GB.TB.PB.EB.ZB.YB.BB来表示,它们之间的关系是: 位 bit (比特)(Binary Digits):存放一位二进制数,即 0 ...

  6. parentViewController

    获取创建自己的上一级视图 self.parentViewController 并且强制转换

  7. UGUI学习之InputField

    密码框在Context type 设置为Passwold 设置背景和调整字体颜色与透明度. 还有一个就是Toggle,(开关)要指定他的Graphic.

  8. Struts2中的ActionContext

    ActionContext(Action上下文) ActionContext介绍 通过上面用户注册例子的学习,我们知道Xwork与Web无关性,我们的Action不用去依赖于任何Web容器,不用和那些 ...

  9. C++中类的内存空间大小(sizeof)分析

    注意类大小与结构体大小还是有一些不同的,类里面还包含成员函数(特别是虚函数),结构体中一般只有数据成员. 首先明确各数据类型占多大的空间.例如int到底是占2字节还是4字节空间: 在TC里,int是2 ...

  10. JQuery easyui (2)Droppable(放置)组件

    所谓放置,就是将一个物体放入一个物体内,当然对于easyui来说触发各种效果是必不可少的,同时这个组件也不会依赖于其他组件. Droppable的加载方式 1,class  加载   一直不太喜欢cl ...