在我看来,现在的IT环境下做软件开发混的不错的必要条件不是掌握如何如何技能,个人内在的性格和习惯会占很大的因素,虽然《代码大全》这本书将个人性格放在第33章,讲的篇数不过寥寥十几页,但很久说性格其实无所谓。诚然个体间性格差异很大,但作为一个优秀程序员其优秀品质却是大同小异的。

假如你是软件工程师,基本的建造材料就是你的聪明才智,主要工具就是你自己。建筑工程师对建筑物机构进行详细的设计,然后将设计蓝图交给其他人施工:而你一旦从细节上对软件做好设计后,软件就生成出来了。变成的整个过程如同建造空中楼阁一样——这是人们能做的纯粹脑力劳动之一。

  • 求知欲

在开发过程中建立自我意识 你越了解软件开发过程,无论通过阅读还是通过自己对软件开发的观察,你就越能理解变化,使团队朝着正确的方向发展。

如果分配给你的工作净 是些不能提高自身技能的短期任务,你理应表示不满。如果正处于竞争激烈的软件市场,则目前工作用到的一般知识将在三年后过时。假如不持续学习,你就会落伍。

试验 如果小程序表现的特性与你设想不一样,怎么办呢?那正是你要研究的问题。最好通过小程序找出答案,而不要用大程序。有效编程的关键之一就是要学会迅速制造错误,并且每次都能从中有所收获,犯错不是罪过,从中学不到什么才是罪过。

        阅读解决问题的有关方法

        在行动之前做分析和计划

        学习成功项目的开发经验

        阅读文档

        阅读其他书本期刊

        同专业人士交往 和希望提高其软件开发技能的人为伍.参加某个交流会,假如某个用户群,或者参加网上讨论.

向专业开发看齐

  • 诚实

不是高手时不假装是高手

乐于承认错误

力图理解编译器的警告,而非弃之不理

透彻理解自己的程序,而不要只是编译看看能否运行

提供实际的状况报告

提供现实的进度方案,在上司面前坚持自己的意见.

承认自己的失误有的时候很困难,比如一个BUG没有弄清楚被反复的修改,要勇于跟测试人员、实施人员承认自己的问题,比如代码实现到一半发现不太对劲,要承认自己设计上没有做到位。在团队合作中,队友犯了错但自己跳出来承认,我想一般也不会去怪罪他的错误。

提供进度方案和进度反馈在我看来不容易做到,这需要丰富的经验,同时也需要对自我能力认知有比较准确的把握。

        我写过一些自己不完全理解的程序,但往往因此而吃亏。更糟糕的是,在过去一年后,同事跟你问起那段代码时,你会满心疑问,那究竟是我曾经写过的吗?更别说再去理解它了。

  • 交流与合作

真正优秀的程序员知道怎样同别人融洽地工作和娱乐。代码便于看懂是对团队成员的要求之一。计算机可能和别人一样频繁地读你的代码,但是它读质量差的程序可比人抢夺了。作为一项可读性原则,应该把修改你代码的人挤在心上。编程首先是与人交流,其次才是与计算机交流。

  • 懒惰

拖延不喜欢的任务

迅速做完不喜欢的任务,以摆脱之

编写某个工具来完成不喜欢的任务,以便再也不用做这样的事情了。

好吧,我承认我很懒,因为以上三点我同时具备。

  • 不如你想象中那样起作用的性格因素

坚持

多数时候软件开发中的坚持其实就是没有好处的“固执”。当在某段新代码上卡壳时,坚持很难让人称道。不放另辟蹊径,尝试重新设计类,或者绕过去,以后回头再试。

调试时,花四个小时干掉某一错误肯定会很有满足感;但通常最好只要有段时间没有紧张,比如说15分钟,就该放弃排错过程,让潜意识仔细品品。想个其他法子将问题绕开;从头编写有码放的代码段;理清思绪后再来做。和计算机错误斗气是不明智的,更好的方法是避开他们。

经验

在其他行业中,今天工作中的收获很可能有助于明天的工作;在软件行业中,如果不改掉使用先前编程语言时的思维模式,或者不放弃在旧机器上能用的代码性能优化技术,你的经验将还不如没有好。很多软件开发者花时间去准备应付上一次战争,却不花时间去准备下一场战争。如果你不能与时俱进,经验不但不会有所帮助,反而是个累赘。

  • 习惯

好习惯很重要,因为程序员做的大部分事情都是无意识完成的。例如,你曾想过该如何格式化缩进的循环体,但现在每当写信的循环体时就不再去想了,而以习惯的方式来做。对程序格式的方方面面个几乎都是如此。你上次质疑编程风格是什么时候?如果你有五年编程经验,最后提出这个问题可能是在四年半之前,其他时间都是按习惯编程的。

  • 要点

人的个性对其编程能力有直接影响

       最为关系的性格为:谦虚、求职欲、诚实、创造性和纪律,以及高明的偷懒。

       程序员高手的性格与天分无关,而任何事都与个人发展有关。

       出乎意料的是,小聪明、经验、坚持和疯狂既有助也有害。

       很多程序员不愿意主动吸收新知识和技术,只依靠工作时偶尔接触新的消息。如果你能抽出少量时间阅读和学习编程知识,要不了多久就能鹤立鸡群。

       好性格与培养正确的习惯关系甚大。要成为杰出的程序员,先要养成良好习惯,其他自然水到渠成。

转载于:https://www.cnblogs.com/xiaopang2010/archive/2012/05/22/2512676.html

《Code Complete》之个人性格相关推荐

  1. 终于读完Code complete 2nd edtion

    从五一节前开始,我读完了三本书 <企业级应用开发--使用VS.NET.UML和MSF> <Ajax in action> <Code Complete 2nd editi ...

  2. Code Complete《代码大全》读书笔记

    最近拜读了 Code complete<代码大全>,这部大块头确实经典,涉及到了软件开发的方方面面.有点后悔没有早些阅读,值得推荐给还没读过的朋友.它并不是针对某种语言的武林秘籍,应该可以 ...

  3. 代码大全(Code Complete)-- 目录和关键点

    读后感 <代码大全>是一本指导"代码构建"的书,指导我们如何写出优秀的代码,如何成为优秀的程序员. 这样一本900多页的大部头书,当我们基于既往的编程经验,在读每一个部 ...

  4. 【Code Complete】《Code Complete 》

    良好编程实践的百科全书,完善编码聚焦于个人技能--所有的内容都来说明我们称之为"编写巧妙的代码"(write clean code,clean可以翻译多种意思,只能意会了,有些英语 ...

  5. Code Complete

    一.<代码大全>优先阅读参考顺序: 自学编程人:第07章 高质量的子程序 低年级学生:第11章 变量命名的力量 高年级学生:第08章 防御式编程 初级程序员:第18章 表驱动法 高级程序员 ...

  6. 《CODE COMPLETE 2(代码大全2)》警句

    阅读<代码大全2>,记录了一些经典标语,直抵内心,颇有感触.望与大家共勉,有些路走过了,才知道路不好走,但希望后来者能够避免,不重蹈覆辙.这些努力就是没有白费,希望您能够打印一份,放在案头 ...

  7. 《Code Complete 代码大全》中用到的英文

    我觉得自己读英文书的时候还算顺利,但是给我一篇技术文档让我翻译得很地道时,我就总是到处乱翻乱查,积累一下老外的用法,中翻英的时候用处比较大 Part I. Laying the Foundation ...

  8. 《Code Complete》ch.15 使用条件语句

    WHAT? 条件语句指if.else.case.switch,循环语句指for.while WHY? 不用条件语句你写得出代码吗? HOW? if-then 正常情况放在异常情况之前 执行频率高的情况 ...

  9. Metaphors for a richer understanding of software development -- Code complete reading notes(2)

    隐喻是什么? 人们常常利用隐喻来利用了解的事物理解不了解的事物,如,我们在用鸡蛋来理解地球的结构,认为它由地壳(蛋壳),地幔(蛋白),地心(蛋黄)组成. 在软件开发中,隐喻是一种启发,而不是一种算法. ...

最新文章

  1. 【鉴轻尘】你说你炒的了币,开发得了项目,然而这些你都知道吗?
  2. Python 进阶_函数式编程
  3. 有源降噪装置专利(转)
  4. SQL server判断字符串是否包含某个字符串
  5. 小甲鱼python的课后题好难_小甲鱼《零基础学习Python》课后笔记(二十六):字典——当索引不好用时2...
  6. 用python画一只可爱的皮卡丘_用python画一只可爱的皮卡丘实例
  7. 信息学奥赛一本通(1009:带余除法)
  8. 腾讯“狠心”出手了,这款游戏,未成年人每天限玩1.5小时
  9. 分布式红锁的leaseTime的设计原理
  10. matlab进化树的下载,mega(进化树构建软件)下载 v7.0.14免费版
  11. 第七篇,LQR、MPC工程化总结
  12. 机械臂速成小指南(二):机械臂的应用
  13. 编程狂人|后台服务架构高性能设计之道
  14. ultravnc download windows 7,ultravnc download windows 7软件的4大优势
  15. 宏和js实现word内容替换
  16. 古诗三百首(html)
  17. 公历转农历linux C程序
  18. 数据仓库主题域如何划分
  19. 把数字翻译成字符串python_把数字翻译成字符串
  20. java改变鼠标图片_Java 将鼠标改为图片的两种方法

热门文章

  1. 腾讯文档如何设置保护单元格与工作表?
  2. 玩客云刷ARMBIAN当服务器过程记录
  3. 使用WebGL绘制流动虚线
  4. 编译错误/usr/bin/ld: cannot find -lz
  5. 苹果手机电池怎么保养_苹果手机信号差是网络问题还是手机问题
  6. 中集集团高科技企业中集飞瞳,贯彻国家人工智能与实体经济深度融合战略,成熟AI产品智能航运智能化港航智慧港口智能铁路智能多式联运
  7. python如何将数组里的数提取出来_python [:3] 实现提取数组中的数
  8. mysql将多行结果合并
  9. 002 - new javascript 基础
  10. python crypto安装_python3.7安装Crypto