代码改变世界

随笔分类 -  编程心得经验

程序命名规则

2013-03-29 16:48 by youxin, 1201 阅读, 收藏, 编辑
摘要: 标识符主要包括变量名、函数名和宏名。1 常见命名规则比较著名的命名规则首推匈牙利命名法,这种命名方法是由Microsoft程序员查尔斯·西蒙尼(Charles Simonyi) 提出的。其主要思想是“在变量和函数名中加入前缀以增进人们对程序的理解”。匈牙利命名法关键是:标识符的名字以一个或者多个小写字母开头作为前缀;前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。例如:lpszStr, 表示指向一个以'\0'结尾的字符串(sz)的长指针(lp)变量。骆驼(Camel)命名法近年来越来越流行,在许多新的函数库和Java这样的平台下使用得当相多。骆 阅读全文

好程序需要你写(至少)两遍

2011-11-01 13:01 by youxin, 560 阅读, 收藏, 编辑
摘要: 最近这些年,越来越多的人开始转向敏捷开发。各种敏捷开发技术并不新鲜,大多是在80和90年代发展形成。但只是在最近这些年,程序员和(更重要的是)一些商业顾问,架构师,客户开始变得喜欢和拥抱敏捷开发。进化中的需求现在的一种普遍的认识是,在开始编码前,你不可能把所有的需求都写完备。这些需求的确定是一个逐渐发展进化的过程。使用短开发周期/springts,我们一步步的开发程序,使用多次迭代的方式完成从客户方得到的最新需求。这些都是基于一个进化的思想。就像生活中,我们总是通过一步步的改进来达到最好一样。进化中的代码!可是,这就完事了吗?如今大部分的程序员都认识到了需求必定是一步步的挖掘出来的。但他们却忘 阅读全文

多些时间能少写些代码

2011-10-28 20:35 by youxin, 298 阅读, 收藏, 编辑
摘要: 我在我的微博上说过这样一段话,我想在这里把我的这个观点阐述地更完整一些。 聪明的程序员使用50%-70%的时间用来思考,尝试和权衡各种设计和实现,而用30% – 50%的时间是在忙碌着编码,调试和测试。聪明的老板也会让团队这样做。而傻/逼的老板,苦逼的程序员会拿出来100%-150%的时间来忙着赶进度,返工,重构,fix 大量的bug… 所以, 越差的团队一般会越忙,而且还忙不完。 在现在这个浮躁的时期,再加上敏捷咨询师们念的歪经,他们让人感觉上就像是软件产品是可以在很短的时间内高质量的完成的,这令那些管理者们很兴奋,就像巴甫洛夫的条件反射实验中的狗看到了肉就像流口水那样兴奋。他们使用... 阅读全文

算法之道—形而之上谓之道

2011-10-28 20:34 by youxin, 381 阅读, 收藏, 编辑
摘要: 注:本文转载自程序员 1966年3月的一天,美国加州大学洛杉矶分校的Andrew J. Viterbi教授在给研究生讲解缠绕编码的时序译码算法SDCD。但不管他如何讲解,学生就是听不明白。思来想去,Viterbi觉得学生不能理解的原因是该算法的证明过于复杂。于是他开始考虑如何简化这个证明。在经历了持久的烦躁和困惑后,他灵感顿现:需要简化的不是算法的证明,而是算法本身。于是Viterbi对SDCD算法进行了少许修改,提出了基于Trellis的概率译码算法。这个算法就是后来著名的CDMA技术的基石。Viterbi也因此而身价暴涨(创立了高通公司,赚取了数十亿美元)。 一种新算法引来革命性的技... 阅读全文

我X,你不会Google么?

2011-10-28 20:30 by youxin, 489 阅读, 收藏, 编辑
摘要: 下边这张图片是几天前在推上看到的,一个小朋友在黑板上抄写完N遍“我以后会在问愚蠢问题之前用Google”后,用幽怨的眼神看着你,这让我无法不会心 一笑,我曾今是,以后也还是偶尔会成为这个小朋友,但更常见的情况是,我每天会遇到不少朋友问一些简单到Google一下就能立刻获得答案的问题。 上述图片来自于一个域名为http://justfuckinggoogleit.com/的网站,除了这张图,还有一段非常有意思的话,翻译后大概是这样: Google是你朋友 所有聪明人都会用Google 不过看来你不是聪明人 (图,抄写“我以后会在问愚蠢问题之前用Google”一百遍) 有人觉得你是笨蛋... 阅读全文

明星软件工程师的10种特质

2011-10-28 19:27 by youxin, 316 阅读, 收藏, 编辑
摘要: 如今,每家公司都似乎成了科技公司。从软件创业公司到投机性投资公司、制药巨头和媒体巨头,它们都越来越多地加入到软件业务行列。 代码质量不仅成为了一个必需品,更成为了一个竞争优势。因为众多公司围绕软件而竞争,开发软件的人——软件工程师正显得越发重要。但是,你该如何发现那种百里挑一的程序员呢?在本文中,我们简明扼要地列出了明星开发人员的10种特质。1. 热爱编程2. 完成事情3. 持续重构代码4. 使用设计模式5. 编写测试6. 善用现有代码7. 专注可用性8. 编写可维护的代码9. 能用任何语言编程10. 知晓基本的计算机科学 1. 热爱编程 编程是一种为了满足兴趣而心甘情愿去做的劳动(P... 阅读全文

想写代码?离开你的电脑吧!

2011-10-25 19:29 by youxin, 469 阅读, 收藏, 编辑
摘要: 导读:本文由《Want to write some code? Get away from your computer!》编译而来,译文来自伯乐在线《想写代码?离开你的电脑吧!》。文章内容如下:最近我认识到一些事情。写代码的最好地方不是在电脑前用你的编译器、集成开发环境和各种工具来写。写代码最好是远离所有这些工具,去到你能够正确思考的地方。你相当熟悉一种语言了,你很容易就能把你心中的程序翻译成编译器可以编译(或解释器可以解释)的程序,不过,难就难在心中形成程序。前几天我坐火车去旅行。我带了电脑,但没有网络。很不幸,我正要用一个商业编程语言(碰巧是IDL),为此我得用我们大学的网站许可。由于无法 阅读全文

多些时间能少写些代码

2011-10-25 19:03 by youxin, 196 阅读, 收藏, 编辑
摘要: 我在我的微博上说过这样一段话,我想在这里把我的这个观点阐述地更完整一些。@左耳朵耗子:聪明的程序员使用50%-70%的时间用来思考,尝试和权衡各种设计和实现,而用30% – 50%的时间是在忙碌着编码,调试和测试。聪明的老板也会让团队这样做。而傻逼的老板,苦逼的程序员会拿出来100%-150%的时间来忙着赶进度,返工,重构,fix 大量的 bug… 所以, 越差的团队一般会越忙,而且还忙不完。 在现在这个浮躁的时期,再加上敏捷咨询师们念的歪经,他们让人感觉上就像是软件产品是可以在很短的时间内高质量的完成的,这令那些管理者们很兴奋,就像巴甫洛夫的条件反射实验中的狗看到了肉就像流口水那样兴奋。.. 阅读全文

If the only tool you have is Java, everything looks like a class

2011-10-04 17:13 by youxin, 755 阅读, 收藏, 编辑
摘要: <rant>There’s a common phrase used within software development:If the only tool you have is a hammer, everything looks like a nailIt exists in various forms, but the original source is theLaw of the instrument, or Maslow’s Hammer.I started thinking about this while reading throughHead First De 阅读全文

梦寐以求的编程语言

2011-09-29 23:08 by youxin, 258 阅读, 收藏, 编辑
摘要: 文 / Paul Graham,译 / 阮一峰Paul Graham是公认的“硅谷创业之父”,对于许多技术问题,他有自己独到的见解。在本文中,他分享了何谓理想的编程语言。我的朋友曾对一位著名的操作系统专家说他想要设计一种真正优秀的编程语言。那位专家回答,这是浪费时间,优秀的语言不一定会被市场接受,很可能无人使用,因为语言的流行不取决于它本身。至少,那位专家设计的语言就遭遇到了这种情况。那么,语言的流行到底取决于什么因素呢?流行的语言是否真的值得流行呢?还有必要尝试设计一种更好的语言吗?如果有必要的话,怎样才能做到这一点呢?为了找到这些问题的答案,我想我们可以观察黑客,了解他们使用什么语言。编程 阅读全文

每天写出好代码的5个建议

2011-08-12 21:20 by youxin, 321 阅读, 收藏, 编辑
摘要: 每天写出好代码的5个建议2011-06-28 22:03:00|分类: program |标签: |字号大中小订阅http://www.makinggoodsoftware.com/;A blog by Alberto G (Alberto Gutierrez)每天写出好代码的5个建议5 Tips for creating good code every day; or how to become a good software developer成为一个优秀的程序员和成为其他优秀的专业人员一样,需要尽可能多的做一些有质量的工作。有句很流行的话可以总结:做,正确做事,立马就做。(Doit.Do 阅读全文

关于编程,大学没有传授的十件事

2011-08-12 21:05 by youxin, 288 阅读, 收藏, 编辑
摘要: 笔者依然记得当年完成学业时,深信自己已经准备好进入任何一家软件公司,并开始成为一个顶级的开发人员。显然,开始工作后没多久,笔者就意识到,还有很多事是我所不了解的。 在不断吸取经验的同时,笔者一直在努力学习那些我从来没有学过的,但却是成为优秀的开发人员所应了解的基本知识。以下是笔者希望自己能在学校就学到的十件事。 1. 我们总是错的 开发人员有着相当大的自我意识,包含了一些其他的非技术性缺陷,这也正是为什么我们很难发现我们做错了什么。我看到过很多无休止的设计讨论,开发人员不断地发表自己的想法……呵呵!猜猜怎样……我们都错了,唯一的区别就是我们犯错的离谱程度不同。 理解并接受这个事实非常重要,我. 阅读全文

程序员技术练级攻略 作者:酷壳

2011-07-26 08:15 by youxin, 497 阅读, 收藏, 编辑
摘要: 月光博客6月12日发表了《写给新手程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在本站的id是Mailper)告诉我,他希望在酷壳上看到一篇更具操作性的文章。因为他也是喜欢编程和技术的家伙,于是,我让他把他的一些学习Python和Web编程的一些点滴总结一下。于是他给我发来了一些他的心得和经历,我在把他的心得做了不多的增改,并根据我的经历增加了“进阶”一节。这是一篇由新手和我这个老家伙根据我们的经历完成的文章。我的这个朋友把这篇文章取名叫Build Your ProgrammingTechni 阅读全文

写给新手程序员的一封信

2011-07-26 08:10 by youxin, 264 阅读, 收藏, 编辑
摘要: 首先,欢迎来到程序员的世界。在这个世界上,不是有很多人想创造软件并解决问题。你是一名hacker,属于那些愿意做一些有挑战性的事情的人。 “当你不创造东西时,你只会根据自己的感觉而不是能力去看待问题。” – WhyTheLuckyStiff 对于下面的文字你不必完全接受,所有这些来自一个其貌不扬的程序员。我喜欢把事情做到最好,而不是对原来的东西修修补补。 仅仅是因为爱好开始做一些创新,这是一个很好的开始!如果你说“我要先学习一下再开始做”那么你永远不会真正开始。每个人都需要从某个地方开始,所以现在打开你的编辑器开始写代码吧。 下面是一些很重要的建议,虽然有人并不认同,但我保证你看完我的分析以. 阅读全文
点击右上角即可分享
微信分享提示