《程序员》5期上市:调试还是测试?
Posted 程序员编辑部
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《程序员》5期上市:调试还是测试?相关的知识,希望对你有一定的参考价值。
2007中国软件技术英雄大会在欢呼声中落下了帷幕,很多人评价说,“余音绕梁,三日不绝”。《程序员》5期推出技术英雄大会特别报道,为读者奉上技术英雄会经典内容回顾及深度报道。简洁地概括大会的特征,就是“交流”与“分享”,英雄与英雄之间,嘉宾与观众之间,无论是技术趋势、还是行业探讨,甚至是人生感悟,通过英雄大会这个平台,其思想的火花,进行广泛的碰状。因此本次“英雄聚会”的范畴,还包括英雄们随后在“红色经典”餐厅里的开怀畅饮、包括宾馆里的彻夜长谈、甚至包括英雄们4月7日爬上长城时嘹亮的欢笑……
然而会后纵览参会者发表的参会感受,发现大家一致表达了同样的情结:觉得这样规模的会议以前办得太少了。这侧面反映了自古英雄们普遍的心灵状态——由于卓越而造就的孤独,无论是技术还是心灵,平日难觅知音。这背后其实也是一种诉求:如今的信息时代,迫切需要这样一个平台,这个平台上,英雄们再也不是“月下独酌,对影成三人”,而是抱成一团,能充分交流彼此的知识技术和各种心得,进而促进整个中国软件产业的水平。
伴着大会的结束,我们迎来了炎热的夏天,无论你欢迎与否,春天与夏天都是必经的季节。而调试与测试,也正是每个开发者必经的历程,但是在软件开发的变迁中,这二者的受重视程度,也发生了无数的变化。在软件开发中,二者到底孰轻孰重?《程序员》5期特别策划,将与您共同探讨这个问题。
在一次对“超级解霸”作者梁肇新的采访当中,他曾提到,程序是一行一行调通的,任你读过再多代码,拥有再高深的思想,没有调试程序的实践都是空谈。另外一位有着相似观点的人是江民软件的王江民,尽管他从四十岁才开始撰写代码,但是他仍然自信到从不写测试代码。
另外一边则是高举着敏捷开发旗号的新一代程序员。Java的核心开发人员Alberto Savoia在谈到有关调试和测试的时候也提到:“假如程序员不使用调试工具是因为他们的测试能够帮助他们更快更好的避免和消除bug,那我没什么好说的。”至于另外一个在国内大力推动敏捷开发的程序员熊节,更是告诉我们:“我已经几个月没开过调试器了。”
当然,上面的这些例子是比较极端的,但相信一定有人要问:“为什么要把调试和测试对立起来?为什么不能同时拥有调试和测试两件法宝?”
调试和测试其实并非对立。多数开发人员通常并不会因为采用一个而放弃另外一个。然而,商业代码的开发周期毕竟有限,到底选用哪一种方法才能又快又好地写代码呢?
组织这个专题的目的,不是让开发人员二者选其一,而是根据实际情况,找到更加合适你自己的方法。只有这样,才能真正达到提高开发效率和开发品质品质的双重目的。
在遇到难题的时候,大家往往期望听到来自业内专家的声音。本期内容或许能够帮您解答疑惑:
现代软件之父、UML创始人之一Ivar Jacobson在“项目&实践”栏目中奉上《够了,让我们实践吧!》;
C++大师Herb Sutter在“专栏”中为您解读《片上系统的发展趋势》;
台湾知名技术作家侯捷深入解析《Boost运用与源码剖析之Boost.Pool》;
台湾知名软件设计大师高焕堂提出《做软件要“以物为本”》的思想;
旅美多年、一直从事计算机教育工作的袁传宽博士提出《备好“金刚钻”,发展欧美外包业务》。
另外,正逢Visual Studio发布十周年之际,本刊策划了工具专题,为读者展示Visual Studio十年来的发展历程、未来发展趋势。几位资深开发者分别结合开发经验,对该工具进行了点评,颇具借鉴意义。本期“工具”栏目为您奉上《Visual Studio十年磨一剑》。
《程序员》5期,精彩不容错过!
附《程序员》5期目录:
调试还是测试?
调试和测试其实并非对立。多数开发人员通常并不会因为采用一个而放弃另外一个。然而,商业代码的开发周期毕竟有限,到底选用哪一种方法才能又快又好地写代码呢?组织这个专题的目的,并不是让开发人员二者选其一,而是根据实际情况,找到更加合适你自己的方法。只有这样,才能真正达到提高开发效率和品质的双重目的。
2007技术英雄大会特别报道
4月5日-7日,随着2007年中国软件技术英雄会暨CSDN社区英雄榜颁奖典礼隆重开幕,来自CSDN 各板块百名专家、各个领域的顶尖开发高手,来自百位各大IT公司的CTO和技术主管和数百名网友一起实现了软件史上规模最大的“群英烩萃”,他们中有谁?他们碰撞出了哪些激情四射的思想火花?本报道将对此一一做全程展示。
2007,安全先行——访Fortify Software公司CTO Roger Thornton
Roger Thornton,Fortify Software创始人兼CTO,具有二十年软件开发经验。2002年,Roger创建了Fortify Software公司。本文是即是知名安全专家Roger的安全箴言。
黄金周的黄金利用法则
阅读此文前,请仔细回想曾经的长假是如何挥霍的——是否印象稀疏?那么请参考本黄金法则,遵循时间充分利用原理,给自己留下一个难忘的五一长假。
从架构师的观点来看软件开发流程
作者从一个软件架构师的角度来分析了软件开发的变化无常以及开发流程中的诸多问题点,并提出了以架构为中心的开发模式。
Web应用的性能分析
文中从分析性能问题的构成着手,提出了性能分析策略——系统整体分析法,并阐述了如何实施系统整体分析,最后归纳了一系列解决系统瘫痪的策略规划步骤。
GIS项目实践中的开放源代码选择
开源是一种特殊的商业模式,因为开放和自由同样也可以带来商业利润和价值。在开源地理空间信息这个逐渐升温的领域中,同样活跃着令人兴奋确往往又不知如何选择的众多开源项目,本文将把最具前瞻性和普适性的开源GIS项目推荐给读者,让这些优秀的代码真正成为项目实践成功要素中的定海神针。
够了,让我们实践吧!
众多的软件开发过程到底是为我们解决的问题多,还是造成的问题更多?它们是否真的能够为改进团队的工作方式提供深刻的见解和所需的指导?现代软件之父、UML创始人之一Ivar Jacobson对当代软件开发过程所面临的问题做了深刻的分析,并指出为什么我们现在拥有如此多的过程。
管理百人研发团队的烦恼(下)
承接上期的“团队故事”报道,本刊记者针对软件研发团队管理的问题与多家软件公司的CTO及技术总监进行了访谈,并总结出一些颇具借鉴意义的看法和观点。
Boost.Pool
许多大型C++程序库都有自己的内存管理机制,包括MFC, STL, Loki都如此,Boost自然也不例外。台湾知名技术作家侯捷为您说明前三者的实现,然后集中探讨Boost的实现与设计细节。
交互设计
WPF精粹(三)
台湾知名技术作家蔡学镛解析:WPF能够让XAML描述出来的GUI轻易地使用animation、data binding trigger、template、style等特色,为了要采用一致的行为来处理这全部的特色,有了全新的事件模型和全新的property——dependency property。
开源技术
Mozilla的架构设计
基于浏览器端的开发是最近的技术热点,同时桌面应用技术也因VISTA的出现而再次使人关注,基于这两点原因,我们选登了本文,它分析了开源领域著名的浏览器Mozilla的架构特点。
php沉思录
PHP在网站开发方面一直与SUN的J2EE和微软的.net并驾齐驱,不过与后两者相比,PHP完全来自于开源社区,这使它具有一些特殊之处。本文对这些特殊之处所做的思考,会使我们对PHP有一个更好的理解。
基于OSGI的Cache组件的实现
在运行期替换一些业务实现,而且不需要重起服务器,这种无间断的运行期替换通常对于网站十分具有吸引力。本文在这一功能的实现中所展示的技术,再次使我们感受到Eclipse插件体系的构造性价值。
SOA十原则
随着SOA标准的不断建立和完善,SOA早已成为各大软件厂商的共识,那么SOA的学习和实施有哪些基本原则可循呢?本文作者结合自己个人理解,为您一一道来。
Visual Studio十年磨一剑
正逢Visual Studio发布十周年之际,本刊策划了工具专题,为读者展示Visual Studio十年来的发展历程、未来发展趋势。几位资深开发者分别结合开发经验,对该工具进行了点评,颇具借鉴意义。
专栏
片上系统的发展趋势
C++大师Herb Sutter认为,下个十年中,更可能居主导地位的趋势是将目前独立的部件移至CPU上,而不是移出。
做软件要“以物为本”
来自台湾的软件架构专家高焕堂老师结合十几年的从业经验,以及孔子的“五至”理论,提出了做软件要“以物为本”的观点。
备好“金刚钻”,发展欧美外包业务
当我们的一些软件企业为外包项目的持续增加而沾沾自喜的时候,我们的外包产业与印度的差距也在逐渐拉大。令人困惑的是,为什么花了如此大的力气,我们还是做不好?具有多年国外教育经验的袁传宽博士提出了自己的见解。
请加入我们的读者俱乐部:http://groups.google.com/group/2programmers;
或者通过添加《程序员》编辑专用MSN账号editor@csdn.net,与编辑即时交流。
《程序员》杂志订阅电话:010-51661202——262
订阅方式:
电汇请汇至:
开户行:中国银行将台路支行 户名:北京创新乐知广告有限公司
帐号:802119627508091001
网上订阅请登陆:www.dearbook.com.cn/programmer2007/
邮局汇款请汇至
北京市朝阳区酒仙桥路14号兆维工业园B3区2门1层《程序员》读者服务部收
邮编:100016
以上是关于《程序员》5期上市:调试还是测试?的主要内容,如果未能解决你的问题,请参考以下文章