nofeel编程思考-引言

作为一个程序员已经不少时间了,在工作开发、业余编程、学习、阅读代码、与别人讨论等等过程中,慢慢也形成了一些个人的思考观点。这些观点潜伏在与同事的对话中,工作的邮件交流中,我常常有要写下来的冲动,但是又感觉只是些零碎想法,形成不了有篇幅的内容,加之个人并不爱好写作,所以一直未付诸行动。

 

大约一年前某日偶然读到了精彩博文“书写是为了更好的思考”后,深感应该找时间梳理自己的观点形成文字,虽然不成系统,相信还是有胜于无,也是对自己编程生涯的进一步反思。

 

另一个促进我动手的原因是,我在工作中注意到一个现象,在寻找编程时问题的答案时:眼睛>耳朵。就是,相对于口头的交流,人们似乎更容易接受或相信眼睛看到的文字表达的观点、结论,即使同样缺乏分析过程。当然我不是在说正式的书本,而是网上的各种文章和帖子。我不止一次碰到过,周围的同事在口头交流时很具备怀疑精神,而偶然在网上看到了别人写的某段话,会自然的接受并引用来作为争论依据或行动指导。他们会说“网上有人说了,。。。。这样的。。。 ”,即使他们往往并不知道作者的真实身份、经历、专业背景、擅长领域等。

 

我记得一个例子是很久前一位同事告诉我.NET中判断string为空时最好用s.Length == 0 来判断,不要用string.IsNullOrEmpty(s)的方式,后者性能会差非常多,当然这个结论是他在网上看到有人说的。我当时并没有在意,因为即使确实是这样,我认为这个东西性能差异造成的负担在实际程序运行中也几乎不大可能有机会表现出来。直到后来的一天,不知为什么想起这个,于是随手用Reflector看了下string.IsNullOrEmpty(s)的代码,再简单不过,就是判断s是否为null及s.Length是否为0。我相信Release模式下当CLR对这样的函数用inline去除函数调用的开销后,完全没有什么理由会比自己直接检查Length为0慢很多倍。看到这里也许你会想这样简单的事稍加调研不就清楚了吗,这个程序员是不是能力很差呀。可是恰恰相反,他是能力非常强的开发人员,相比大部分同龄的毕业两三年的人优秀的多。

 

其实对这种情况一方面我不觉得奇怪,不可能事事都去花时间深入研究,即使像例子中提到的这种问题,只要数量多了,大部分总是要找现成的答案而不是自己动手。另一方面,我感到有趣的是读到的文字比听到的话语要强大,往往即使听到一个答案,也不放心,要去网上求个验证,反之不然。对此我归结为一种人的心理效应,似乎对越是熟悉了解的人,大家越不会轻易相信或深入思考其观点。

 

所以,我想如果我的观点变成文字,是不是更容易被说服别人呢?动笔(动手?)的另一好处是集中火力,要把想法变成思绪清晰的文字,达到说服别人的目的,颇不容易。而口头争论倾向于随意化,经常说着说着变成争论另一件事了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值