我最新一直在和新手和入手级开发人员打交道,我注意到一些开发人员(甚至是老手)在粗心时常犯的错误。这些错误各不相同,从工具的使用到网络服务的适当应用都有。以下是六个主要的开发错误。
1.认为必须要用Visual Studio.NET来开发.NET应用
那些对微软.NET开发不了解的人误以为:利用.NET框架开发应用软件时必须要用到Visual Studio.NET。这并不正确。你只需安装可在微软网站上免费下载的.NET框架即可。
安装了.NET框架,你就可以应用你最喜爱的文本编辑器和.NET工具命令行来进行开发。而且,你还可以应用第三方开发工具,如SharpDevelop。
欲彻底了解Visual Studio.NET有关的讨论,请参阅以前的栏目。开发工具的选择因人而异,但许多开发团队进行标准化来简化工作。
2.独占信息
开发人员的显著特点之一即他们趋向于密藏信息。晓人所不晓的能力常常引起错误的优越感。相反,分享信息则有助于团队扩充知识。另外,随着其他团队成员的加入,分享的信息还可得到改进。最后,当你向另一个或一组开发人员解释一个观念或理念时,你的知识也得到扩充。
团队合作精神是Agile Software Development之类运动的驱动力。另外,许多团队利用同行代码评估(peer code reviews),即开发人员对其他开发人员的代码进行审查及评论,这种方法促进了双方的学习与理解。
3.忽略代码注释
给自己的代码加注释是一个简单而直接的方法,但为什么大家总是忽略这一点呢?一些开发人员错误的认为减少文件证明(任何形式的)能够改善工作安全。这与前面讨论过的独占信息一样,是一种谬误。
少量合理安排的注释能大大改善代码的可读性,并方便代码的管理。现在有一种过于使用注释的趋势。基本上来说,这些注释应对代码、变量、方法等作一简要描述。许多团队在对代码作出修改时喜欢插入注释。当(如果)出现问题,我们容易找出以前做过哪些修改。
4.没有看到版本控制系统的价值所在
大多数开发人员都十分熟悉这种情形:你推出一个重要网络应用的新版本,第二天一大早你的手机就响个不停,里面满是网站问题的叫声。
只要你愿意承认你可能犯过一两个错误,在这种情形下版本控制系统就是你最好的朋友。通过使用版本控制系统如CVS, IBM Rational ClearCase, 和Microsoft Visual SourceSafe,你就可以轻易地还原到以前版本的应用软件并进行生产。这让你有时间在生产地点已经准备好的情况下在开发环境中找出问题所在。这种方法比通过搜寻生产代码来找出问题要优越得多。
另外,源控制系统允许不同的团队成员同时开发相同的代码。当开发人员检查对系统所作的修改时,这些改变就结合起来。
一些开发人员不喜欢版本控制系统的原因之一是因为它给开发过程增加了一个步骤,这意味着向源控制系统提交代码并通过它来恢复代码的过程要减慢。这个额外等待的时间打击了一些开发人员的耐心。
5.认为所有项目都需要网络服务
由于对网络服务的过分宣传,许多开发人员认为在开发项目时必须以某种形式用到网络服务。尽管在开发过程中使用网络服务可能是必要或是恰当的,但并不是完全可能。你需要分析不同的情形,以决定是执行网络服务是否恰当。例如,另的技术如remoting可能更为恰当。
6.忽视了确认数据的重要性
在应用代码中,数据以不同的形式进行处理。因为这一原因,开发人员应该在开发过程中确认数据的完整性与有效性。这就是说,数据要通过可返回零字符的终端数据库读取。在执行前,就对数据进行检查,因为大多数的操作中都不能使用零值。
了解是成功的一半
不管你是开发新兵还是老手,你都要意识到开发人员有犯这六个错误的趋势。即使你发现自己没有这些坏习惯,你也要意识到你们团队中的其他开发人员可能会犯这些错误。对这些潜在的错误保持警惕,这样做可以防止这些错误阻碍你们团队的计划。
|
· 电脑一点通--如何查找.. · 网络基础知识讲座十二.. · 八大绝招查找和排除ADS.. · Active Directory中的.. · 双机MSCS安装配置手册(.. · 走近复杂数据库计算型.. |
· 拯救Excel文档方法全攻.. · 避免六个常见的开发错误 · 组建无线局域网的八项.. · “IIS配置401错误”完.. · outlook错误代码 · 网络开发 主要干什么 |
|
|||
| · OSPF路由协议专栏 · 思科路由器产品 · 华为路由器产品 · 路由器模拟器 · AIX操作系统管理应用(.. · 思科路由器配置 · 路由器组网解决方案 · 路由器密码恢复 |
· 无线路由器故障处理 · 路由故障处理手册 · 路由器访问控制列表(AC.. · 路由器的安全配置与安.. · 无线路由器配置 · 路由器技巧 · 华为路由器配置 · 路由器配置基础 |
||
|
|||
| · Java基础教程 · VPN技术 · SQL Server 2005全解 · ARP攻击防范与解决方案 · SOA 面向服务架构 · SQL Server 2005全解 · Java编程开发手册 · 三层交换技术专题 |
· SQL Server入门到精通 · Windows Server 2003企.. · Windows远程桌面应用 · C#技术开发指南 · VPN技术 · Solaris 10 配置管理 · C#技术开发指南 · Windows操作系统安装 |
||
|
|||
| · VPN技术 · ARP攻击防范与解决方案 · SQL Server 2005全解 · Java基础教程 · SQL Server入门到精通 · SQL Server 2005全解 · SOA 面向服务架构 · Java编程开发手册 |
· C#技术开发指南 · 三层交换技术专题 · C#技术开发指南 · Windows远程桌面应用 · Windows Server 2003企.. · 邮件服务器专题 · wimax技术与趋势 · Windows操作系统安装 |
||
| ·DB2 Viper快速入门 ·DB2 9数据库的镜像分割与.. |
·将XML应用程序从DB2 8.x.. ·DB2 9中的pureXML:如何.. |
| ·服务器中的“傻瓜机”在.. ·盖茨也喜欢登录Youtube看.. |
· · |
| · 职场冲浪(之八):让感.. ·职场冲浪(之七):潜心.. |
·人生如鞋 ·职场冲浪(之六):从离梦最.. |
| ·将职业教育职业化 - 各IT.. ·思科交换机上实现MAC地址.. |
·关于51CTO合作出书中的职.. ·OSPF动态路由协议入门简介 |
| · NGN:下一代网络 · 网络访问中断大排查 · FTTx光纤接入 |
· 平凡黑客讲述精彩人生(.. · 平凡黑客讲述精彩人生(.. · 平凡黑客讲述精彩人生(.. |
| · C++是垃圾语言?! · 2007年IT界七大抄袭事件 · Java实用开发全集 |
· 解析Ajax开发框架 走进A.. · 基于Google Maps与Ajax.. · 基于Google Maps与Ajax.. |
| · Ubuntu 中文开源频道 · Solaris基础知识入门 · 微软正式发布英文版Wind.. |
· 服务器基础知识入门 · Rambus第二?看全缓冲内.. · 服务器节能对比测试:AM.. |
| · 甲骨文Oracle 11g正式发.. · Oracle数据库开发之PL/S.. · Oracle数据库开发基础教.. |
· 存储2006,一个并购的大.. · IDC宣布浪潮蝉联存储市.. · 双机热备技术 |