说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

[探讨]如何成为有代码洁癖的程序员?

HTML文档下载 WORD文档下载 PDF文档下载
有人说,一个厨师如果不懂得品尝美食,就永远无法把菜做好。一个程序员如果看不出来多一空行和少一空行有什么区别,那就永远写不好优美的代码。如何成为一名有代码洁癖的程序员呢?本文将为你支招!
  • 有没有那么一瞬间,你写的代码让自己和兄弟们都感觉很凌乱?
  • 有没有那么一瞬间,有段代码就放在你眼前,你却读不懂它?
  • 有没有那么一瞬间,你要花很长时间去读别人写的代码?
  • 有没有那么一瞬间,你的参数过长却不知道怎么办?

有人说,一个厨师如果不懂得品尝美食,就永远无法把菜做好。一个程序员如果看不出来多一空行和少一空行有什么区别,那就永远写不出优美的代码。因此,要想成为一个追求完美的程序员,最重要的是审美,审美的高度决定了你编码能力的高低。——只有你视代码如诗,才能写出诗一般的代码。


那么如何才能编写出优美的代码,成为一个有代码洁癖的程序员呢?

开发者 郭凛建议:提升审美,且多看开源代码

  1. 了解业内惯用的代码格式规范;
  2. 学习变量/方法等命名(国人硬伤);
  3. 增加代码阅历,阅代码其实跟阅人一样。阅得越多,写代码时就越有底气,写出来的代码也就越大气;
  4. 多读开源代码,以学习如何写“优美的代码”(前提是审美已经达到开源代码的水平,不然看也白看)。

以上这些做到“洁”没有问题,但要做到“癖”,还需要做到以下几点:

  1. 让自己成为一个骄傲的人(好面子也行),在写代码的时候就想着“我的代码是写完之后要拿给所有人review的;
  2. 写完之后要带着欣赏的目光重读一遍自己的代码——就像读诗歌文章一样;
  3. 让自己患上轻微强迫症。
程序员  Wilson Xu:多读好代码,陶冶情操

  • 语言,鼓励简洁有力的代码;
  • 框架,比如虽然同是Java,Spring和Playframework简直就是天渊之别;
  • IDE,试试把一段好代码粘贴到记事本看看;
  • 字体,个人喜欢Monospace(13);
  • 缩进,把tab扩展为4个空格;
  • 遵守规范,比如Python有PEP8;
  • 遵守约定,比如所用的框架所用的命名规则是a_string,就不要再用aString;
  • 多读好代码,熏陶熏陶;
  • 不仅代码,注释和Commit Log也应该保持干净。

笔者认为,任何事情都有两面性,写出整洁的代码固然重要,但是倘若过度的“洁癖”会不会适得其反呢?

OK,各位程序员们,现在你可以把你的代码勇敢的贴出来,让那些有代码洁癖的程序员们帮您重构,并和你一起讨论程序中所存在的问题。当然,如果你也有好的建议,欢迎在评论中列出。

VB取得正确的 RecordCount 值 主題:如何动态新增、移除 ODBC DSN? -VB资料 VB如何将表中的数据导出到电子表格中 VB如何将文本文件转换为ACCESS数据库 VB如何將 Excel 的文件导入 Access文件? VB如何判断数据中是否存在某一表或查询 VB如何删除FoxPro数据库的数据? VB如何设置对VB数据库连接的动态路径 VB如何使用 ADO 來压缩或修复 Microsoft Access 文件 VB如何修改Foxpro数据库(不是用VB实现的,不过也可以看看) VB如何在 SQL 语句中使用日期? 返回 VB如何在表中保存单引号? VB如何抓出 Access 的 Table 欄位中的【敘述】部份呢? 实现Access数据库的Web查询-VB资料 使用Visual Basic访问数据库几个注意的问题 数据库查询-VB资料 数据约束控件和 RecordSet-VB资料 锁住数据库中的表 -VB资料 谈谈VB的数据库编程方式 为VB5辩解: VB处理数据库时求数据表记录总数的最佳方法 为什么安装后的数据库应用总是路径不对或找不到? 返回 -VB资料 无论如何,就是只能输入数字-VB资料 VB用 DAO 或 ADO 正确访问 Access 2000 VB用CELL组件显示Access数据库的图片对象 VB用DAO打开Excel文件 VB用DATA控件绑定报表控件打印报表 VB用EXCEL来打印报表并生成折线图 VB用EXCEL组件简化VB编程的一种方法 VB用MDB文件做密码库 VB用ODBC API访问ODBC数据库 用VB 实现类电子表格的数据录入 关于下载的问题!!!!!!!!非常急!!!!!!!!!!! DB2不能一次插入多条记录么?? 能将数字记钱方式转换为大写的方式? 我没有分了,可是我还有个问题 请问也SQL2000数据库Windows身份验证,SQL Server身份验证的问题?? 关于层的问题! delphi 高难度!有没有人搞得出! 讨论:CSDN该不该分两个区?(入门级与专业级) 各大版主请进 简单问题,在线等待,解决就结稿. 用DES算法算出的注册码怎么是乱字符? <<LINUX与UNIX_SHELL编程指南>>中不懂的问题 分 多了该怎么办呢?:-) 请问怎么读取.txt文件的第n行? 如何将一个象素点设置成某一种颜色(即绘制一个象素点). 如何使一中文网站系统,转成English版的系统呢? 将dbf文件中的一部分字段数据导入到db的一张表中[斑主帮忙] 在线游戏刷新问题,高手接招 关于关闭窗口的超级难题 请各位推荐一下用.net开发的OA产品或者公司 VB.NET问题 框架里如何得到地址栏上的地址?? KEIL C51的中断服务程序如何通过串口返回应答信息? OA中关于流程动态设定的设计问题,谢谢 那里有DB2下载啊? 菜鸟提问:为什么toolbar控件加到窗体上时,大小不能改变?我怎么设置宽和高都是原来样子的 最简单的一个问题 小程序,愿交流 小程序,愿交流 如何用api函数实现服务器和客户端的字符串传输?(讨论和将帖子提前的都有分拿) 如何绕过代理服务器? 急:打开记录集显示 :Timeout expired 那里有Informix下载啊? mouseDown方法为何不能重写? 矢量绘图中如何实现在视窗中输入这样的文本? (来者的分)我要做一个短消息系统应用于办公系统中,请问买一块手机好还是手机模块? 请各位大虾指点哪里有较好的asp教程下载? 利用com实现进程之间数据通信,给出例子或者讲解文章即可 可有人能回答我呀。 又是一个让人非常郁闷的问题,高手请进! 怎样为我的对话框窗体增加一幅背景图? 谢谢:chenyg2000等的无私帮助,使用了这种方法以后问题又来了! sql语句菜鸟问题:如何想把一个字段赋值为NULL,sql语句应该怎么写?谢谢! web service上怎样返回一个二进制文件? 大虾救我:数据库链接的问题 vbscript里的函数可不可以递归的? 请教各位大侠:怎样在VB中 监测CPU是否空闲?急.在线等>>>> ant的build.xml问题请教。。。 jbuilder8+weblogic7该如何部署JSP+JAVABEAN呢,我的怎么经常出错 在线求救,RM恢复系统文件,急。。。。。。 关于tomcat连接mysql的问题。请各位高手指点。 "面试试题"急求解答。急!!!!!!急!!!! 已酉年是什么意思 大地对我们、植物、动物有多么重要? 酉长的意思是?问的是酉长是什么意思,不是其他的哦^^^^^ 列举西方近代发生的战争 你装由你装,明月照大江.你狠任你狠,下一句是什么 “春雨贵如油”其主要原因是什么? 当遗传多样性丧失,会导致有害基因频率的增长?怎么导致的? 为什么春雨贵如油? “Amour”有没有英文意思?法文意思我知道, 填空:快乐地()是“地” 不是“的” “不酉己和”是什么意思错了,是“不酉己合” 德社民党同意正式谈判 协议达成或需4各省区市党委常委班子均已开展批评和自中国铁建回应“天价招待费”:今年下降日本利用钓鱼岛为开火埋伏笔 无视和平统计局:经济稳中有升稳中向好 不确定日本政府将制作领土问题宣传片以谋求国人民币对美元中间价报6.1330 月美无人机阴影下的巴基斯坦城边陲小镇:专家:最高检向人大做反贪报告有很强政10岁杭州男孩被母亲男友砍去右手丢进美国会大厦将启动半世纪最大修缮工程马化腾:腾讯回归本质,做互联网连接器“独占”鳌头的《辐射岛》:以独占换苹港股本周大涨4.4% 外资借道沪股通“三马”聚首投资华谊兄弟,王中军:未5月27日美元强势回调,现货白银原油注意啦!P2P平台涉嫌虚假宣传成被告佳音佳乐|我终于愿意顺服丈夫了!iPhone6s有多少亮点统统都来吧央妈再出重磅,一石几鸟?一图打尽新股系列之六——寻找下一只兰猫本出现今年来最低气温!或将于周日迎
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘