使用window.history.back();返回时保留表单值

8月 20th, 2008 by Scott

以前遇到这种情况都是改成iframe提交,今天发现原来就是几行代码的事

<HTML><HEAD>
<META content="history" name="save">
<STYLE>
input {behavior:url(#default#savehistory);}
</STYLE>
</HEAD>

Posted in 技术 | No Comments »

程序设计中的分散集中思想

8月 19th, 2008 by Scott

“话说天下大势,分久必合,合久必分。周末七国分争,并入于秦。及秦灭之后,楚、汉分争,又并入于汉。汉朝自高祖斩白蛇而起义,一统天下,后来光武中兴,传至献帝,遂分为三国。”(《三国演义》卷首语)

天下大势,分久必合,合久必分。 程序架构同样也讲究分合之道。

面向对象(Object-Oriented)、分层(Layered)构架、IceGrid等都体现了某种分散集中的思想。一种典型的分散到集中的变化历程就是面向 对象设计模式的流行。程序设计由过程式、函数式、面向对象式一路发展而来,基本的发展思路就是抽象、整合,由特殊而一般,在抽象的基础上实现了合的要求,从而 使程序设计具有了可复用、易理解性等特性。有人说过在面向对象之前,程序员是象计算机一样思考,而现在可以象人类一样思考了。

可是天下大势总不能像广大情侣们寻求刺激一样分分合合,让人摸不着头脑,这样的话上帝也太随意了^_^。其实,由分而合,合并没有替代分,只是在一些方面取代了分的形式,反之亦然。就像“统一管理,分散经营”,《大话设计模式》中的活字印刷例子用在这里最合适了:

大 鸟:“话说三国时期,曹操带领百万大军攻打东吴,大军在长江赤壁驻扎,军船连成一片,眼看就要灭掉东吴,统一天下,曹操大悦,于是大宴众文武,在酒席间, 曹操诗性大发,不觉吟道:‘喝酒唱歌,人生真爽。……’。众文武齐呼:‘丞相好诗!’于是一臣子速命印刷工匠刻版印刷,以便流传天下。”

“样张出来给曹操一看,曹操感觉不妥,说道:‘喝与唱,此话过俗,应改为‘对酒当歌’较好!’,于是此臣就命工匠重新来过。工匠眼看连夜刻版之工,彻底白费,心中叫苦不迭。只得照办。”

“样张再次出来请曹操过目,曹操细细一品,觉得还是不好,说:‘人生真爽太过直接,应改问语才够意境,因此应改为‘对酒当歌,人生几何?……’当臣转告工匠之时,工匠晕倒……!”

“小菜你说,这里面问题出在哪里?”大鸟问道。

小菜说:“是不是因为三国时期活字印刷还未发明,所以要改字的时候,就必须要整个刻板全部重新刻。”

大鸟:“说得好!如果是有了活字印刷,则只需更改四个字就可,其余工作都未白做。岂不妙哉。”

“第 一,要改,只需更改要改之字,此为可维护;第二,这些字并非用完这次就无用,完全可以在后来的印刷中重复使用,此乃可复用;第三,此诗若要加字,只需另刻 字加入即可,这是可扩展;第四,字的排列其实可能是竖排可能是横排,此时只需将活字移动就可做到满足排列需求,此是灵活性好。”

“而在活字印刷术出现之前,上面的四种特性都无法满足,要修改,必须重刻,要加字,必须重刻,要重新排列,必须重刻,印完这本书后,此版已无任何可再利用价值。”

小菜:“是的,小时候,我一直奇怪,为何火药、指南针、造纸术都是从无到有,从未知到发现的伟大发明,而活字印刷仅仅是从刻版印刷到活字印刷的一次技术上的进步,为何不是评印刷术为四大发明之一呢?原来活字印刷的成功是这个原因。”

把底层可复用的结构分散,最终整合应用,这也是最常见的程序设计方法了。

分合变化其实是在无形中实现着高阶系统的重新构造,分不是趋势,合也不是趋势,真正的趋势或许是在结构上趋于集中(平台),在应用上趋于分散。

Posted in 技术 | 1 Comment »

阅读代码的格言

8月 14th, 2008 by Scott

来自《代码阅读方法与实践》,可以说是这本书的精髓了,早前给苏州的新员工培训时引用了上面的很多方法,对阅读代码确实很有帮助。

下面是引用的内容
==========================================

阅读全文 »

Posted in 技术 | No Comments »

不工作的大脑?

7月 30th, 2008 by Scott

0918230.jpg

最近好像相当的词穷,很多想法都想一吐为快,可每次写了几十字就再也写不下去了,难道最近大脑某部分停止工作了?

还有一个可能性就是阅读量少了,没有原始素材再强悍的逻辑思维也是白搭,大概思维敏捷的人都保持着很大的阅读量,是该学习学习了。

最后,还有一点要注意的:对任何事情都要有自己的“态度”,不要轻易被别人的观点影响。

Posted in 未分类 | No Comments »

即心即佛

6月 28th, 2008 by Scott

即心即佛:一样的事情发生,是喜?是忧?全在于你是站在哪一个角度去看它。

智慧和知识不同,无法由智力去传授,它必须用你整个的身心去经验,去实践。

不必去计较云将变成水,或水将变回云;是云就以云的立场在天空逍遥,是水就以水的姿态安逸自在。

Posted in 生活 | No Comments »

手指受伤了

6月 18th, 2008 by Scott

晚上抱石做一个大动态时把手指给搞残了,估计要休息好几天了,不幸!!!

Posted in 户外 | No Comments »

代码高亮 SyntaxHighlighter

5月 6th, 2008 by Scott

Snow那里学了一招,一个很酷的代码高亮插件,有兴趣的朋友可以尝试一下。

<?php
require '../config.php';
require_once 'global.php';

/* retrieve blocks */
$blocks = $db->GetValue("select index_blocks from templates where dir='".$data['site']['template']."'");
$blocks = explode('|',$blocks);
foreach ($blocks as $block) {
	$data['blocks'][$block] = $pageBuilder->retrieveBlock($block);
}

$tpl = new QuickSkin($data['site']['template']."/index.html");
$tpl->assign($data);
$tpl->output();
?>

Posted in 未分类 | 2 Comments »

思维(1):历史惯性

4月 18th, 2008 by Scott

美国现代铁轨的宽度标准宽度是4.85英尺,这个非常奇怪的数字究竟从何而来?这是最近在看有关思维的书时的一个故事,答案是这样的:

原来这是英国的铁路标准,因为美国的铁路最早是由英国人设计建造的。那么,为什么英国人用这个标准呢?原来英国的铁路是由建电车轨道的人设计的,而这个四点八五英尺正是电车所用的标准。电车轨标准又是从哪里来的呢?原来最先造电车的人以前是造马车的。而他们是用马车的轮宽做标准。好了,那么,马车为什么要用这个一定的轮距离标准呢?因为如果那时候的马车用任何其他轮距的话,马车的轮子很快会在英国的老路上撞坏的。为什么?因为这些路上的辙迹的宽度为四点八五英尺。这些辙迹又是从何而来呢?答案是古罗马人留下的,四点八五英尺正是罗马战车的宽度。如果任何人用不同的轮宽在这些路上行车的话,他的轮子的寿命都不会长。我们再问:罗马人为什么用四点八五英尺为战车的轮距宽度呢?原因很简单,这是两匹拉战车的马的屁股的宽度。

对待历史,要批判地继承

历史惯性的力量是如此的强大,以至于现在的铁轨宽度都是取决于两千年前两匹战马的屁股宽度,而现在要改变这个规则的难度可以想象是多么巨大。“约定俗成”的东西太多了,久而久之就形成了历史惯性。

历史是一种财富,但我们在继承这笔财富的时候一定要去伪存真,权衡利弊。遇到历史的规则不适应现在的发展时,我们也要勇于突破历史的束缚。

要有历史的眼光,长远地看待问题

同样,回到程序员的思维上,我们做系统设计的时候也要做一个全局的考虑。一套用户系统可能初期只有几万人的容积,但我们的系统设计却不能局限在几万人的容积上,要充分考虑到扩展的需要,否则随着时间推进,系统负载的不断提升,就会让开发人员疲于不断地升级,维护成本也会不断升高。同时,系统的设计也是有阶段性的,初期的设计没法做得非常完美,这就需要权衡当前的情况和后期可能的扩展,这样才是一个优秀的设计。

Posted in 工作 | No Comments »

凡人

4月 6th, 2008 by Scott

最近开始喜欢研究一些貌似的东西,从方法论到逻辑学,再到辨证法。下午到南京书城准备搞几本书回来恶补一下,哪知刚到就有人叫去土人攀岩……※

于是匆匆翻了几本书就赶去土人,让别人久等可不是我的作风^_^

练了一下午的抱石,晚上回家想看会禅道,可是最近总是被一些人一些事搅得心神不灵,始终无法定心,罢了,自己也终究不是得道之人。

Posted in 未分类 | 1 Comment »

苏州攀岩赛归来!

3月 25th, 2008 by Scott

1.jpg

Posted in 户外 | 5 Comments »

« 前一页