软件真谛

用水云般自在的禅心,书写诗情画意的程序人生...
  博客园  :: 首页  :: 新随笔  :: 联系 :: 管理

2008年5月7日

摘要: 有一位AJAX程序员遇了到一个非常奇怪的问题。尽管经过几个昼夜的煎熬,依然没有能找出问题的原因。他在网上查了几天,也没有找到有关此类问题的网页。又咨询过许多资深的技术专家和顾问,也大都泛泛而谈,没人能给他具体的明示。 最终,由于这个问题实在太奇怪,程序员相信自己遇到了还没有人遇到过的新问题。他听说山里的观音庙很灵验,而这样的问题恐怕也只有求大慈大悲的观音菩萨才能解决。于是,他放下手里的事情,打点行装,前往山上的观音庙烧香。 程序员来到观音庙之后,庙里并没有什么人,只有一位年轻美貌的女子在向观音像参拜。细心的程序员突然发现这位女子的身形和着装,竟然与莲花座上的观音像非常地相似。于是,他就小心翼翼地走上前去。仔细一看... 阅读全文

posted @ 2008-05-07 10:30 李战 阅读(7677) 评论(66) 推荐(0) 编辑

2008年5月1日

摘要: 今天是2008年5月1日。为了完成《悟透JavaScript》一书的最后几个例子,俺象往常一样去MSDN网站查需要用到的类资料。于是,习惯性地打开了http://msdn2.microsoft.com这个网站。我发现浏览器的最后地址停在了http: //msdn.microsoft.com/zh-cn/default.aspx这个位置,显然MSDN网站执行了域名重定向。 以前http://msdn.microsoft.com/网站是旧版本的MSDN网站,以蓝色为主色调的。而http: //msdn2.microsoft.com/是微软新搞的MSDN网站,以橙色为基调的。很长一段时间,俺经常在两个网站间跳转查阅需要的技术资料,后来主要在第二版网站上查资料了。 今天,微软正式废弃老版的MSDN网站,全面切换到MSDN网站的第二版,网站有统一到http://msdn.microsoft.com/了。 微软这种网站平滑过渡和切换的方式还是值得借鉴和学习的。 阅读全文

posted @ 2008-05-01 16:23 李战 阅读(5414) 评论(35) 推荐(1) 编辑

2008年4月22日

摘要: 在ASP.NET页面中,我们编写JavaScript脚本附加有注释时,这些注释也往往会随JavaScript脚本一起送到客户端。访问者只要在浏览器里查看HTML源文件就可以看到这些注释。 当然,我们可以选择放弃使用注释。然而,有些JavaScript代码又是必须有注释的。比如有些代码故意写得很乱,以用来迷惑恶意攻击者。如果没有注释,恐怕也把自己给迷惑进去了,但加了注释,岂不又给了攻击者一个指路标。 有没有办法让JavaScript的注释在客户端不可见呢? 阅读全文

posted @ 2008-04-22 08:02 李战 阅读(10067) 评论(61) 推荐(2) 编辑

2008年3月24日

摘要: 今天是情人节,无聊中就把以前写的这个程序发一下: class writeme{static void Main(){string s="class writeme{{static void Main(){{string s={0}{1}{0};System.Console.Write(s,(char)34,s);}}}}"; System.Console.Write(s,(char)34... 阅读全文

posted @ 2008-03-24 20:34 李战 阅读(15801) 评论(10) 推荐(0) 编辑

2008年2月25日

摘要: 各位老师和同学: 多谢朋友们的鼓励和支持,也接受各位老师的批评,我会尽力改正错误。几处笔误已刚刚修改。 阅读全文

posted @ 2008-02-25 15:38 李战 阅读(16698) 评论(23) 推荐(1) 编辑

摘要: 在五祖弘忍讲授完《对象真经》之后的一天,他对众弟子们说:“经已讲完,想必尔等应该有所感悟,请各自写个偈子来看”。大弟子神秀是被大家公认为悟性最高的师兄,他的偈子写道:“身是对象树,心如类般明。朝朝勤拂拭,莫让惹尘埃!”。此偈一出,立即引起师兄弟们的轰动,大家都说写得太好了。只有火头僧慧能看后,轻轻地叹了口气,又随手在墙上写道:“对象本无根,类型亦无形。本来无一物,何处惹尘埃?”。然后摇了摇头,扬长而去。大家看了慧能的偈子都说:“写的什么乱七八糟的啊,看不懂”。师父弘忍看了神秀的诗偈也点头称赞,再看慧能的诗偈之后默然摇头。就在当天夜里,弘忍却悄悄把慧能叫到自己的禅房,将珍藏多年的软件真经传授于他,然后让他趁着月色连夜逃走... 后来,慧能果然不负师父厚望,在南方开创了禅宗另一个广阔的天空。而慧能当年带走的软件真经中就有一本是《JavaScript真经》! 阅读全文

posted @ 2008-02-25 13:32 李战 阅读(162843) 评论(450) 推荐(116) 编辑

2008年2月12日

摘要:   构造函数和析构函数分别管理对象的建立和释放,负责对象的诞生和死亡的过程。当一个对象诞生时,构造函数负责创建并初始化对象的内部环境,包括分配内存、创建内部对象和打开相关的外部资源,等等。而当对象死亡时,析构函数负责关闭资源、释放内部的对象和已分配的内存。   在对象生死攸关的地方,如果程序代码出现问题,常常会发生内存泄漏,从而产生可能危害系统运行的孤魂野鬼。大量的事实表明,业务逻辑代码写得非常严谨的程序在运行中仍然发现存在内存泄露,大都是构造和析构部分的代码存在问题... 阅读全文

posted @ 2008-02-12 21:25 李战 阅读(15562) 评论(2) 推荐(2) 编辑

摘要:   哲学家说:有什么样的世界观,就有什么样的方法论!   辩论家说:立场决定观点!   世界之所以有技术思想和观点之间的争论,完全与瞎子摸象的场景一样... 阅读全文

posted @ 2008-02-12 21:24 李战 阅读(11795) 评论(8) 推荐(1) 编辑

摘要:   从前,有一个A型血的程序员和一个B型血的程序员去登山。显然A和B有着不同的登山方法。 A 到了山脚下,总是先停下来,仔细打量山势。接着,围着山脚转转,看看哪些是小山包,哪个是主峰。然后,设计几条不同的登山线路,并选择出最好的登山线路作为首选计划。同时,他还考虑到如果首选计划出现问题,则可以启用第二计划或第三计划... 阅读全文

posted @ 2008-02-12 21:22 李战 阅读(2668) 评论(19) 推荐(1) 编辑

摘要:   在用Transact-SQL编写程序过程中,经常会遇到针对某个查询的每一行记录进行某种迭代运算的操作。通常情况下,我们都会定义一个该查询的游标,然后用循环语句来取出每一行进行迭代处理。但对于某些计算性质的迭代,巧妙使用SELECT @local_variable = expression的形式却能取得更好的效果... 阅读全文

posted @ 2008-02-12 21:20 李战 阅读(1690) 评论(5) 推荐(0) 编辑