当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 本文选自由微软公司华人专家编著的《软件开发的科学与艺术》一书。
 

 

 ·求素数    »显示摘要«
    摘要:素数就是大于1,只能被1和它本身整除的正整数。100以内的素数共25个: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 #include <iostream.h>void main(){ int n = 100; int i = 3; int arr[100]; arr[0] = 2; int count = 1; while (i < ......
    摘要:第二章? 实时系统的相关研究 尽管现在的操作系统变得种类繁多,但是unix及其兼容的系统仍然是工业和学术领域标准的操作系统。一些非unix系统,比如windows nt,也是与posix.1003标准兼容,这个标准无疑是基于unix。这个系统的成功是由于它的开放性、稳定性和事实的标准。随着posix1003.1b实时扩展标准的发布,unix有机会成为分布最广泛的实时处理平台。linux作为一个类unix的系统,凭借其开放源码的优势,获得越来越广泛的应用。......


软件开发的科学与艺术--写好代码的十个秘决
本文选自由微软公司华人专家编著的«软件开发的科学与艺术»一书。全书透彻解析了微软软件开发的思想与过程。

     作为一个软件开发人员,必须测试自己的程序,使得代码做得更好,更加稳定。就我个人的经验来说,如果没有测试过代码,程序就不可能正确运行。 【相关文章:蛙蛙推荐:asp.net中的身份验证

 双手互搏, 无坚不摧 【扩展阅读:蛙蛙推荐:偶做的用户管理系统

     另外,在同一组的开发人员之间做得很多的一件事就是:别人来对你的代码进行检查,反过来你对别人的代码进行检查,这个过程不仅是希望检查的人来发现你的代码中的问题,或是你去发现别人代码中的问题,更重要的是在向别人讲解你的代码的过程中,可以发现自己遗漏的地方与问题,理顺自己思路。 【扩展信息:C#Windows控件的焦点事件顺序

 

 

     下面这段程序是我在开发exchange server时写的一段代码,当时写完以后我没有测试它。因为这段代码实在是太简单了,只有几行代码:取文件的长度,如果出错就返回。于是我仅仅是编译通过后就将其提交(checkin)到实际产品中了。

 

     结果第二天早上当我到办公室的时候,发现我的三位上司都已经铁青着脸在那里等我了。原来,整个exchange server都运行不起来了!因为我的这段代码被加在了exchange server启动代码序列中,当server启动时,由于我这段代码的错误,一启动就失败,导致了doa(dead on arrival)。

 

.

 

 

//

// get file size first

//

dword   dwfilesize = getfilesize( hfile, null );

if ( dwfilesize = -1 ) {

  // what can we do ? keep silent

  errortrace(0, "getfilesize failed with %d", getlasterror());

  return;

}

 

 

     注:getfilesize调用失败时将返回–1。

 

     这段代码的错误在于:if的判断条件写成了赋值,所以无论怎样都会出错,然后返回。

 

     其实改进的方法很简单:就是将-1移到前面。这样,如果你遗漏了一个“=”,编译时编译器就会发现错误。所以在if语句中,要把常量放在前面。

 

//

// get file size first

//

dword   dwfilesize = getfilesize( hfile, null );

if ( -1 == dwfilesize ) {

  // what can we do ? keep silent

  errortrace(0, "getfilesize failed with %d", getlasterror());

  return;

}

 

     这件事情给我的教训是很深刻的。

 


...   下一页
    摘要:1. 同一ip最大连接数的限制 使用balazs nagy的 periplimit patch 实现同一ip的最大连接数的限制。 相关地址: http://js.hu/package/ucspi-tcp/ 实现: ucspi-tcp-0.88-periplimit.6.patch diff -ru ucspi-tcp-0.88-orig/makefile ucspi-tcp-0.88/makefile --- ucspi-tcp-0.8......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE