- 浏览: 2828228 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (1173)
- 名言警句 (5)
- 心情随笔 (50)
- 数据库 (57)
- Java基础 (241)
- J2EE框架 (91)
- 数据结构 (12)
- 程序设计 (21)
- WEB技术 (128)
- 网络日志 (12)
- IT资讯 (247)
- linux (64)
- solaris (2)
- 其它 (143)
- WebService (4)
- 日语学习 (2)
- 机器人 (5)
- Android (5)
- cgywin (3)
- Game (1)
- DWR (1)
- spring (8)
- canvas (1)
- Guava (3)
- Modbus (5)
- 测试 (6)
- mongodb (9)
- Quartz (2)
- Cron (1)
- windows (2)
- 持续集成 (1)
- bootstrap (3)
- 结对编程 (1)
- nodejs (1)
- Netty (1)
- 安全 (3)
- webstorm (2)
- sparkline (1)
- Job (1)
- git (3)
- Maven (3)
- knockout (5)
- jquery (1)
- bower (1)
- docker (1)
- confluence (4)
- wiki (1)
- GoogleMap (1)
- jekyll (10)
- ruby (2)
- npm (3)
- browserify (1)
- gulp (3)
- openwrt (1)
- discuz (3)
- 输入法 (1)
- JPA (1)
- eclipse (2)
- IntelliJ (1)
- css (1)
- 虚拟机 (1)
- 操作系统 (1)
- azkaban (2)
- scrum (1)
最新评论
-
pangxiea_:
你好, 想请问一下 Linux下 这么使用rxtxcomm 在 ...
使用Java进行串口通信 -
abababudei:
请教一下,这个您是怎么解决的:/dev/ttyS2enteri ...
Java应用程序的MODBUS通讯 -
xuniverse:
hannibal005 写道楼主,我问下 request.se ...
用javascript与java进行RSA加密与解密 -
atxkm:
找了一下午,终于找到了
gulp 拷贝文件时如何移除文件目录结构 -
kalogen:
gtczr 写道非常感谢,经过我自己的修改,已经完美实现。发出 ...
用javascript与java进行RSA加密与解密
成为一个有效率的程序员首先要知道如何正确的支配自己的时间。对时间最大的浪费莫过于去做那些没有用处或者永远不会上线的项目。而导致这种结果的根源往往是对需求理解的偏差。
要最大程度避免这种情况的发生,最好的办法是快速建模,尽可能让演示系统早点出来。对于客户来说,只有看得到摸得着的产品摆在面前,他们才会有 兴趣去试用观察,才会在实际的操作中发现供需双方在需求理解上的偏差。否则即使你写上几百页的需求分析文档也只能是自己的一面之词,客户可没耐心去检查这 些文档写的是否准确。
另一方面,你应该让每一个阶段的开发成 果都能够尽早的提交给客户。让他们以完全不考虑操作合理性和业务逻辑性的傻瓜级操作来发现程序员编程中的固有思维局限。尤其必须让QA尽早的介入到项目开 发中来。如果能够每天提交一份测试版本给QA自然是最理想的了,但大多数项目开发做不到这样的粒度,那么就争取每周提交一份可测试版本。重要的是应该让 QA和开发能够保持交错并行状态。只有这样,才能让QA尽早发现bug,降低每个bug的修复成本,同时缩减独立测试周期的跨度。
程序员往往不愿意把半成品代码交付给测试人员,相反他们更喜欢在所有代码都完工,达到自己满意的程度之后再让别人来测试。因为在这之前的代码往 往存在很多程序员自己知道需要修改(或者故意留待后续补全)的流程缺失和Bug,测试人员并不知道哪些是真正的Bug,哪些只是临时性的运行错误,每次都 会一股脑儿作为Bug反馈给程序员。这往往让程序员们心烦。同时测试人员有时候也不喜欢测试这种很多分支都走不通的中间版本。
但不管喜不喜欢,测试并发现问题是测试人员的工作;程序员则应该认识到,Bug反馈得越早就越是件好事情。QA和开发之间的关系往往很敌对,可 实际上双方的目标是一致的。“忠言逆耳”古训有之,对于程序员来说就应该“有则改之,无则加勉”。总好过项目完成之后才发现一堆的问题,到那时候再要做修 改,基本上都会牵一发而动全身,痛苦的还是程序员自己。
2.保持真实性
尽可能让你的系统运行在最接近真实环境配置下面,使用有实际意义的数据和真实的编译版本,并经常性进行模块整合。如果你的测试环境使用的数据都 是些胡乱添加的东西,那么将来和测试数据大相径庭的真实数据这块大冰山早晚会撞沉你的程序。另一方面如果你只在开发环境来编译运行测试,会发现正式发布之 后有各种各样莫名其妙的问题产生,到最后原来都是因为环境配置与开发环境有些不起眼的差异所导致。把所有模块整合进行编译联调,看上去应该是最后作的一项 附加工作,但实际上这是一项需要在开发过程中经常性进行的工作。只有这样QA才能有最完整的东西拿来测试,得到更多的Bug反馈,同时降低模块整合的难 度。
3.理解你的代码
书写规范的代码,并保持代码的整洁。Coding是一门艺术。正如写作一样,同样的文字在文豪的笔下就能够熠熠生辉,读起来赏心悦目;在普通人的笔下大概就只是词能达意的效果了; 在某些人的笔下或许就需要研究半天才能猜出个大概来。当然不可能人人都成为艺术家,但至少你可以学会欣赏艺术、学习艺术。书写漂亮的代码是对自己工作的尊 重,也是对其他程序员的尊重。如果你的代码中间充斥着大段过时的注释、可读性差的变量/函数,怎么去要求别人或者自己以后能够理解它们?
4.最优编程
把你的时间花在代码的功能上, 而不是去把现有的代码改得对自己胃口(尤其对于那些copy/paste过来的代码);要找到系统的瓶颈进行优化,而不是对那些无益于系统整体性提高的地方做无用功。
5.管理好你自己
也许有人会说计划和进度控制是PM的事情,但一个好的程序员应该比PM更了解自己目前工作的进度。不论上头给的进度计划是否合理,你都应该有自己的原则和概念,清楚知道每天该做什么怎么去做。
6.持续教育
只有不断的学习、实践、犯错误,你才会真正有所提高。在我看来,对于程序员来说最好的老师不在学校,而在书本、网络、社区。学会自我学习才能保持与时俱进。
7. R-E-S-P-E-C-T
互相尊重是一切的基础。
发表评论
-
一些可能有用的开源项目
2010-10-15 18:33 1397Google Code Pretiffy 这是一个Javas ... -
编程趣闻
2010-10-15 11:43 1420下面是一些在编程中可能会让人感到诧异的事情: • 一个程序员 ... -
调查发现程序员大多数时间在思考
2010-09-21 14:43 1345下面是一个程序员coding的时间分配图。 思考会是 ... -
一个程序员英雄的远去
2010-04-08 22:31 10784月5日,清明节,微博上的众多好友转来同一条消息:王江民老师因 ... -
培养管理意识,增强执行力(摘录)
2008-07-13 10:14 2102我置身IT行业 ... -
十句话,珍藏一辈子(转)
2008-05-05 00:39 1654第一句 如果我们之间有 ... -
坚持梦想,保持激情!
2008-04-24 09:37 1369为梦想而奋斗! -
成熟男人与24岁女孩精彩对白(转)
2008-04-22 10:32 1607烛光晚餐。桌两边,坐了男人和女人。 “我喜欢你。”女 ... -
开发及软件工程:软件最大的追求是什么
2008-02-01 09:38 1601这段时间,Java世界有两件事情值得关注:工业界力推SOA;在 ... -
IT研发人员:不能说的秘密
2008-01-30 09:45 3070国内某大城市的机场出 ... -
【转帖】一个不喝中国水的日本人
2008-01-25 13:25 1691公司最近接了一批日本 ... -
一个游戏开发者的反思:缺陷与出路(转)
2008-01-24 09:37 2063阅读提示:本文是作者长期身处游戏开发行业、 亲历游戏行业痼疾后 ... -
实施ERP,缘何保持高失败率?(转)
2008-01-23 13:20 2060【IT168 评论】“找死不 ... -
开发人员如何培养自己(转)
2008-01-23 13:04 1495计算机科学是少数最 ... -
Java程序员需要了解的几个开源协议
2008-01-18 09:16 1475Mozilla Public License M ... -
如何识别真正的程序员
2008-01-18 09:10 12961,激情。 我曾经遇到许多“职业程序员”,他们从事IT是因为觉 ... -
老乔语录
2008-01-16 16:25 13591.很多公司选择缩减, 那可能对于他们来说是对的。 我们选择了 ... -
每日电脑前工作3小时以上者90%有眼病
2008-01-11 10:01 1381在信息化的今天,电脑已成为白领日常工作不可缺少的,然而,医学专 ... -
CIO如何防止春节后IT骨干流失
2008-01-11 09:20 1409随着春节的临近,节日的气氛正慢慢浓郁,而令公司高层最苦恼的是: ... -
如何提高你的工作效率?
2008-01-09 10:22 1492你是不是每天都很忙, ...
相关推荐
要成为一个有效率的程序员要知道些什么?正确的支配自己的时间。。。
高效程序员的10个习惯,养成好习惯,工作效率高
Phil Chu根据自己的经验提出了高效程序员应该养成的七个习惯。
养成良好的编程习惯对软件的开发、维护与再开发至关重要。本文根据作者多年软件开发的经验,针对初、中级C++语言程序员和初涉C++语言的有经验的C语言程序员,从自学、教学、软件开发的角度阐述并列举了提高程序代码...
本书简明实用、见解深刻,总结了高效程序员在开发过程中的45个个人习惯、思想观念和方法,有助于开发人员在开发进程、编码工作、开发者态度、项目和团队管理,以及持续学习等5个方面积极修炼。通过学习这些内容,...
对于程序员,在这个软件质量越来越被重视的时代,要想短期内提升你的竞争力,那么,掌握单元测试技能,养成单元测试习惯可能是最好的选择。 单元测试难不难?单元测试烦不烦?关键在于工具好不好! Visual ...
许多程序员凭直觉来编程,这些直觉来自于他们早期养成的习惯和风格。这样写出的程序似乎自然、直观,而且看起来也很不错。但是,如果你想严肃地对待程序员这份职业,那么直觉就远远不够了。《Perl最佳实践》讲述了...
许多程序员凭直觉来编程,这些直觉来自于他们早期养成的习惯和风格。这样写出的程序似乎自然、直观,而且看起来也很不错。但是,如果你想严肃地对待程序员这份职业,那么直觉就远远不够了。《Perl最佳实践》讲述了...
许多程序员凭直觉来编程,这些直觉来自于他们早期养成的习惯和风格。这样写出的程序似乎自然、直观,而且看起来也很不错。但是,如果你想严肃地对待程序员这份职业,那么直觉就远远不够了。《perl最佳实践》讲述了...
许多程序员凭直觉来编程,这些直觉来自于他们早期养成的习惯和风格。这样写出的程序似乎自然、直观,而且看起来也很不错。但是,如果你想严肃地对待程序员这份职业,那么直觉就远远不够了。《Perl最佳实践》讲述了...
层层揭示了Python这一程序设计语言的强大功能,并通过穿插在全书各处的屏幕输出和编程技巧与提示,帮助读者搭建良好的知识结构、养成良好的编程习惯、避免常见的编程错误以及写出高效、可靠的应用程序。python编程...
贯穿全书,我们都在强调好的风格:我们想帮助读者直接养成好的习惯,而不是在获得很多很复杂的知识后再去忘掉那些坏习惯。我们特别强调那些棘手的问题,并对常见的错误想法和陷阱提出警告。 我们还注意解释规则...
第三章 编写第一个应用程序 .20 3.1 Welcome 程序 .20 3.2 代 码 分 析 .20 3.3 运 行 程 序 .23 .4 添 加 注 释 .25 3.5 小 结 .27 第二部分 C#程序设计基础.28 第四章 数 据 类 型 .28 4.1 值 类 型...