代码改变世界

随笔分类 - All About Soft

PHP菜鸟手记——如何解决无法装载动态链接库的问题

2010-11-15 14:26 by FantasySoft, 3455 阅读, 收藏, 编辑
摘要:为了兑现“做最懂技术的产品经理”的诺言,我上周开始捣腾PHP了。虽然早在大学读书的时候,我也曾经玩过一小段时间的PHP,不过到如今,也忘得一干二净了。所以,偶和一个PHP菜鸟无异。既然是菜鸟,自然先从搭建PHP开发环境开始了。首先,从PHP的官方网站下载了PHP 5.2.14 For Windows的压缩包,解压至D盘的PHP目录;随后下载了Apache HTTP Serv... 阅读全文

团购之道——双赢才是核心

2010-08-29 23:08 by FantasySoft, 1941 阅读, 收藏, 编辑
摘要:有关团购的话题,在今年以来就一直都没有消停过。从Groupon获得巨额风投到王兴创办美团网,从百“团”大战再到团购网站抄袭成风,团购网站以闪电般的速度占据了所有互联网人士聊天的话题。Michael在上个周末和两位IT资深人士一起聊天,就团购的话题足足谈了四个小时,小有心得,遂与大家分享之。团购模式之所以得到众多互联网创业者的青睐,最重要的就是良好的现金流。搞互联网创业的,有... 阅读全文

Demand Media——深谙中庸之道的新媒体

2010-08-24 14:06 by FantasySoft, 1651 阅读, 收藏, 编辑
摘要:Demand Media之所以吸引了我的眼球,除了月初它向美国证券交易委员会(SEC)提交了IPO申请,很有可能成为继Google之后科技公司里首个10亿美元级的IPO,更重要的是它的商业模式。如果说Twitter以及SNS网站在某种程度上解决了信息传播的问题,那么,Demand Media则是从内容的生产以及组织入手去解决信息去噪音化的问题。我们都知道,随着互联网的普及,各种各样的新媒体不断涌现... 阅读全文

云中谁寄锦书来,盛大也!

2010-08-23 22:58 by FantasySoft, 867 阅读, 收藏, 编辑
摘要:今天中午,盛大公布了万众瞩目的锦书(Bambook)的最终售价——999元!这个价格让总算没有辜负Michael对其的喜爱,于是第一时间到锦书的官网上排队预订,凑个热闹,排到了第1328位。就在完成支付的两三分钟之内,在Michael的后面又多了23位同好者参与排队,锦书的受欢迎程度可见一斑了。(截止本文发布,已有6600多人参与了锦书预订。您可以通过点击之里查看现在的排队... 阅读全文

《黑客》月刊中文版第一期正式发布,很给力!推荐围观!

2010-08-19 23:43 by FantasySoft, 2275 阅读, 收藏, 编辑
摘要:[注:]首先说明一下,这不知道算不算广告贴,但是所介绍的月刊,不管中英文版都真的很给力,推荐大家下载阅读!您听说过《黑客》月刊么?这是一本在今年六月份才创刊的杂志,虽然只是初出茅庐,但是它的来头可不小哦!《黑客》月刊的内容正是来自著名的创业孵化公司Y-Combinator旗下的一个类似Digg的分站点——Hacker News。在国外,Hacker News是一个在程序员以... 阅读全文

CaptureDeviceManager.getDeviceList方法返回null对象问题探究

2010-07-10 23:49 by FantasySoft, 5095 阅读, 收藏, 编辑
摘要:最近由于项目的需要,偶开始倒腾Java的媒体框架——Java Media Framework(缩写为JMF)。在编写一个实时语音聊天的程序的时候,需要使用以下方法获得音频采集设备的列表:CaptureDeviceManager.getDeviceList(Formatformat) 这是一个很简单的方法。但是,当我在Eclipse中将代码编译完毕并且运行之,这个方法却返回了... 阅读全文

为了生活更美好,玩游戏吧!

2010-06-20 11:05 by FantasySoft, 2462 阅读, 收藏, 编辑
摘要:[注:] 本文首发Metaidea.cn在Tony之前发表的一篇题为《TED怎么应用于课堂》的文章中,我们可以看到台湾的一位设计师在课堂上将TED演讲的视频应用到了教学上。这是一件非常有意义的事情,值得每一位老师去借鉴与学习,因此,Tony在文中讲述了“基于TED演讲的课堂”的构思。这是一篇引人入胜的文章,除了Tony漂亮的构思之外,还有那被作为典范的TED演讲&#8212... 阅读全文

三言两语话委托

2010-05-16 16:18 by FantasySoft, 3277 阅读, 收藏, 编辑
摘要:几天前,Michael向大家推荐了刚发布的IronPython Tools for Visual Studio。不知道这个消息是否能够为大家学习IronPython注入少许动力呢?有了IDE的支持,Michael的学习热情也随之高涨了,把若干年前的随笔翻箱倒柜的看了个遍,那个感慨啊……对技术充满激情的岁月或许再也回不去了。咳,别感春悲秋嘛,这可是在写技术随笔哦!好吧,让我们... 阅读全文

IronPython Tools——为IronPython度身定做的IDE

2010-05-11 09:26 by FantasySoft, 21829 阅读, 收藏, 编辑
摘要:虽然对于IronPython的开发者来说,打开一个命令行窗口(Console)噼里啪啦地往里写代码是一件很Cool的事情,但是,要让IronPython成为.NET上一等公民,没有IDE的支持多少有点痴人说梦的感觉。Visual Studio 2010在上个月12号全球同步发布了,一直用着Beta 2版本的Michael还指望着正式版能够提供对IronPython的支持,结果希望落空了。在Iron... 阅读全文

从博客园口水仗想到的

2010-05-08 08:51 by FantasySoft, 4800 阅读, 收藏, 编辑
摘要:作为博客园最老的一批注册用户,Michael在这里安家已经整整六年了。六年来,我一直都有个小小的习惯——每天都上园子来看看。可以毫不夸张的说,博客园陪伴着我成长,而我也见证了博客园的发展。最近,园子里的口水仗此起彼伏,甚至有愈演愈烈的态势,我们从上周的热点随笔就能看出这样的端倪。本星期也不例外,这样的文章并没有减少,连博客排名机制也成为了“罪魁祸首”... 阅读全文

由XML Literal引发的思考

2010-04-24 00:21 by FantasySoft, 1796 阅读, 收藏, 编辑
摘要:一年多没在首页露脸了,昨天凌晨写就了一篇有关IronPython的随笔,发布的时候我确实有点诚惶诚恐。不过还好,至少引得几位朋友的围观,还能碰上老朋友木野狐,我心足矣!木野狐在评论中给我留下了一个非常棒的问题:“IronPython能否模拟或者接近vb.net的xml literal那样的语法?”尽管我对IronPython处理XML的能力自信满满,但是,面对XML Lit... 阅读全文

作为.NET程序员,您需要IronPython么?

2010-04-23 02:00 by FantasySoft, 8740 阅读, 收藏, 编辑
摘要:.NET作为一个成熟的开发平台,为很多语言的发展提供了肥沃的土壤:历史相对久远的有Managed C++、C#、VB.NET、J#,正值壮年的则有IronPython、IronRuby,而老赵极力推崇的F#则是后起之秀了。面对那么多的语言,选择自然也是一个难题。在大部分开发人员眼中,C#是最为正统的.NET语言,它几乎是为.NET而生的,语言版本更替的速度与.NET Framework相比,一点都... 阅读全文

静态注册BroadcastReceiver的注销问题

2010-04-17 13:46 by FantasySoft, 6137 阅读, 收藏, 编辑
摘要:[写在前面:距离上次发布有关技术的文章已经整整一年了,人也奔三了,NBA季后赛也开打了,朋友都当爹当妈了,我也该回归了。是的,it's time! ] Android和OPhone是什么,我想我不需要再花什么时间去介绍了,跟着3G的潮流,这些名词已经变得炙手可热。Michael(Perhaps is my nickname. )也开始关注起Android/OPhone上的开发了。如果您也和我一样刚... 阅读全文

大道至简——Michael看iPad

2010-04-06 18:42 by FantasySoft, 444 阅读, 收藏, 编辑
摘要:[注:本文首发MetaIdea.cn]2010年4月3日,吊足了苹果粉丝们胃口的iPad终于在美国正式发售了。自今年1月27日乔布斯向世界展示了iPad以来,有关这个新产品的评论就没有间断过。一时间,唱好或是唱衰iPad的声音纷至沓来,好不热闹。在这场口水大仗当中,苹果才是真正的赢家,因为iPad站在了电子产品市场的风头浪尖,赚足了眼球,为正式发售卯足了劲。这不,首日销量预计都已经从原来的20万至... 阅读全文

IE8自定义加速器尝鲜

2009-03-30 12:31 by FantasySoft, 3725 阅读, 收藏, 编辑
摘要:微软在北京时间3月20日凌晨发布了最新版本的浏览器IE8,这已经不是什么新闻了。听了由Ocean主讲的“Microsoft Internet Explorer 8,Windows 7”之后,极少“追新”的我还是忍不住下载来试用了一番,毕竟IE8真的太吸引人,IE6也太古董了。用了几天,感觉IE8相比以前的版本来说,有了质的改变。除了园友玉开兄提到的IE8开发人员工具之外,IE8的另外一个特性——加速器(Accelerator)同样让人为之倾倒。 阅读全文

桌面电话的进化到统一通信

2009-03-29 01:44 by FantasySoft, 550 阅读, 收藏, 编辑
摘要:[注:] 原文首发个人博客FantasySoft随着3G牌照的发放,大家对移动通信的关注达到了前所未有的高度,大街小巷讨论的话题都是iPhone到底会由哪个运营商引进到中国,哪种3G标准会在这场标准大战中胜出,还有就是手机系统的竞争会鹿死谁手。移动通信领域的竞争确实是一场大戏,颇为引人入胜。就在移动通信领域狼烟四起的时候,被人们所遗忘的桌面电话也正在悄悄地发生进化。 Avaya公司日前推出了Ava... 阅读全文

Blaise Aguera y Arcas演示Photosynth

2009-02-04 16:19 by FantasySoft, 545 阅读, 收藏, 编辑
摘要:第512期《三联生活周刊》的封面故事——《虚拟世界博物馆》是一个非常引人入胜的专题。在里面,我看到了很多非常新鲜的观点和词汇,Photosynth就是其中一个。很巧合的是,今天在浏览TED.com视频的时候,看到的正是Photosynth的Demo。 原文首发TED推广站 -- TED Show 阅读全文

又见"Windows"——我看新版HelloChina.com

2008-11-06 16:50 by FantasySoft, 1004 阅读, 收藏, 编辑
摘要:乍一看这样的标题,你会不会给我扔几块板砖呢?HelloChina.com这个网站怎么跟大名鼎鼎的Windows拉上关系了呢?稍安毋躁,这里的Windows是窗口的意思,不是说着您用的操作系统哦。不过,话说回来,微软当年为啥要为这个GUI操作系统起个这样的名字呢?我想,所有的软件的表现形式都是一个个窗口,还有很重要的一点,操作系统也正是连接用户与计算机之间的窗口吧。让我们言归正传。最近的十多年来,我... 阅读全文

“体验经济”初体验

2008-10-21 00:46 by FantasySoft, 588 阅读, 收藏, 编辑
摘要:[注:]原文首发个人博客Fantasysoft 第29届奥运会在一片赞美声落下帷幕了,大家还沉浸在对中国首次问鼎金牌榜的兴奋之中,奥运英雄的故事充斥着各种媒体,着实让人看了很亢奋。虽然奥运在家门口举办让我们更加关注其中的每一个细节,而事实上正是技术的进步才让我们对奥运有了新的体验。4年前,你是否想过通过手机那方寸屏幕来观看奥运实况呢?4年前,你是否想过自己在出租车、地铁上都可以不错过精彩赛事呢?... 阅读全文

草根化进程

2008-04-25 13:42 by FantasySoft, 741 阅读, 收藏, 编辑
摘要:[注:]原文首发个人博客Fantasysoft 还记得2006年,时代周刊把You选为了年度人物。对此,《时代》周刊给出的解释是:现代社会正在进入“新数字时代的民主社会”,社会的重心正在由机构向个人转移,因此当选者是正在使用互联网或创造互联网内容的每一个人。而就在那一年,三大门户之一的网易跟随新浪、搜狐之后推出了博客,也标志着网民为互联网创造内容的热情达到了顶峰。尽管博客的光... 阅读全文

若干域名赠送并结识各路英雄

2007-07-28 01:05 by FantasySoft, 827 阅读, 收藏, 编辑
摘要:之前的几个域名到期之后,一眨眼就被别人抢注了,摆上了一些垃圾页面,感觉很可惜。譬如,www.fomod.com、www.exspace.cn和www.exwiki.cn等等。今天再次整理自己的域名列表,忽然间想到了ted.com的理念:idea本身一钱不值,但是我们可以不用花费分文去传播自己的idea。当idea遇到了prepared brain,idea就能产生巨大的价值。既然如此,又何必抓着这... 阅读全文

压箱底的几个域名出售

2007-06-22 22:54 by FantasySoft, 838 阅读, 收藏, 编辑
摘要:再次念叨一下丘吉尔的名句 —— "It is not even the beginning of the end. But it is, perhaps, the end of the beginning.",好,清仓甩卖开始! 1、XPEye.com:xpeye定位为技术类网站。因为全世界的人都知道Windows XP。至于eye,则源自国内著名的技术网站JavaE... 阅读全文

重新定义旅游网站,米胖新版发布

2007-06-18 16:53 by FantasySoft, 1503 阅读, 收藏, 编辑
摘要:还记得一年多之前,我在web 2.0 网站推荐这篇博客中提到了米胖。没多久,我认识了米胖的两位帅气又有才气的当家人。在多次聊天之后,我被他们的激情与专注深深地折服了,在那时我就坚信米胖一定能够发展得很好,走出一条属于自己的路。 一眨眼,一年多过去了,米胖也在两位当家人的努力下得到了长足的进步,除了用户数量、访问量不断增加,米胖网站本身的功能也在不断增强,外界对它的好... 阅读全文

有关核心竞争力

2007-04-24 22:30 by FantasySoft, 13767 阅读, 收藏, 编辑
摘要:什么是“核心竞争力”呢?虽然写下了这样的标题,但是我对它的概念却不甚了了。凭着自己肤浅的理解能力,我对这个词汇的认识就是:能够为自己、企业实体乃至社会带来价值的能力与优势。这是偶说的,当然不能算数了。还好我们可以Google一下,于是乎,我们能找到这样的解释:核心竞争力(Core Competence)是企业竞争力中那些最基本的能使整个企业保持长期稳定的竞争优势、获得稳定超额利润的... 阅读全文

DreamHost优惠码——PERHAPS

2007-04-22 14:29 by FantasySoft, 666 阅读, 收藏, 编辑
摘要:中华维客自去年建立到现在,已经正常运行一年多了,而网站就架设在DreamHost的虚拟主机上。早期的时候,由于DreamHost并不是让我非常满意,所以就没有在Blog上对它进行推荐。但是在最近的几个月里,不管是访问速度还是稳定性上都有了很大的提高,再加上DreamHost虚拟主机产品本身就有极大的优势,而且我自己本身又创建了优惠码,让大家可以从中获得折扣优惠。于是乎,还是写篇简单... 阅读全文

若干域名转让

2007-04-21 23:54 by FantasySoft, 773 阅读, 收藏, 编辑
摘要:今天在整理自己的域名列表的时候,发现有几个域名被自己荒废了,真是可惜。我将这几个域名列示如下,有兴趣的朋友可以和我联系: 1、xpeye.com:xpeye定位为技术类网站。因为全世界的人都知道Windows XP。至于eye,则源自国内著名的技术网站JavaEye; 2、exmap.cn:地图类网站。去年的时候,就电子地图有过一些想法,... 阅读全文

不谈模式,只谈实现

2007-02-07 01:01 by FantasySoft, 3322 阅读, 收藏, 编辑
摘要:回到家已经很晚了,还是很习惯性的上上博客园,看看大家一天精彩的文章,以求擦出些智慧的火花,让不太灵光的脑袋能够变得聪明些。这不,Justin兄的文章让我惺松的睡眼有了亮光。Justin的文章讲的是Strategy Pattern(策略模式),内容十分生动,让人看了之后对这个模式有了清晰的认识。而我也心痒痒的,想写些读后感什么的,咔咔~~ 说句实在话,我对模式了解得很少... 阅读全文

一切变得越来越有趣了

2006-12-17 01:52 by FantasySoft, 3497 阅读, 收藏, 编辑
摘要:之所以写下这样的标题,是因为最近的两则新闻。一是Google宣布GWT(Google Web Toolkit)开源;二是Java 6的发布。这两条新闻本身确实平淡无奇,特别是对于.NET社区而言。新闻始终还是新闻,最大的作用就在于吸引眼球。不同的新闻有不同的效果,有的会让你两眼放光,目不转睛,有的则会让你眼睛咕噜一转,脑筋开窍。我想这两则新闻都属于后者,眼睛咕噜咕噜转的同时,还会让人喜上... 阅读全文

《WebWork in Action》中文版终于如期面市了

2006-11-11 19:12 by FantasySoft, 1970 阅读, 收藏, 编辑
摘要:今天很开心,因为今天是我的节日——光棍节,哈哈~~ 更重要的,春雷兄给我带来了好消息,他在书店里看到了《WebWork in Action》中文版!虽然出版社的编辑告诉我面市是这一两个星期的事情,但是春雷兄的消息依然让我感到莫名的惊喜。在知道了这个消息之后,我马上告诉了另外一个合译者——张云飞(估计他的网名“飞云小侠”更加为人所熟知),开心的事情就是要第一时间与别人分享。 掐指一算,... 阅读全文

Google收购了JotSpot

2006-11-01 12:59 by FantasySoft, 2233 阅读, 收藏, 编辑
摘要:今天一早,小熊在线发布了Google将Jotspot收至麾下的消息。我随之访问JotSpot.com,果然熟悉的主页换了新颜,可爱的Google标志伴随着Jotspot一同跃入眼帘。小熊在线的报道中写道:“JotSpot公司联合创始人兼首席执行官Joe Kraus在本周二宣布了上述消息,他表示,成为Google的一部分令JotSpot获得了通往世界级数据中心和工程队伍的途径。”也许消息还足够... 阅读全文

我的选择——Prototype

2006-10-18 00:00 by FantasySoft, 1576 阅读, 收藏, 编辑
摘要:由于项目的需要,偶终于也要跟上时代潮流来拨弄一下Ajax了。遵循Java开发的惯性思维,第一步就去找有没有好用的框架。结果发现Ajax框架世界的纷扰程度丝毫不亚于Java。最后,在Google和几位Ajax达人的帮助之下,我选择了dojo。选择的原因很简单,有丰富的文档,也有很丰富的UI 组件(特别是它的Rich Editor十分吸引人),当然在事件处理的机制方面,dojo也有它过... 阅读全文

与.NET以及微软产品相关的域名出售

2006-09-22 01:41 by FantasySoft, 853 阅读, 收藏, 编辑
摘要:抱着对.NET的喜爱之情,我在去年很冲动地一口气注册了五个与.NET以及微软产品相关的域名。原来打算基于这一系列域名做一些产品,但是由于种种原因,计划最终还是搁浅了。从那之后,这几个域名就束之高阁了。为了让这几个域名能够找到好的东家,特此发贴出让这些域名。 这五个域名分别是:www.dotnetXP.com、www.sqlserverXP.com、www.sharepoint... 阅读全文

IronPython团队宣言

2006-09-18 01:55 by FantasySoft, 4218 阅读, 收藏, 编辑
摘要:[前言]:在自由、创新、研究、探索……以及木野狐两位兄台热情的敦促之下,懒惰的我也该有所行动了。:) 在九月十八日这个特殊的日子,IronPython团队成立了。在为我们团队做宣言之前,让我们铭记七十五年前的“九·一八”事变,勿忘国耻,牢记“落后就会挨打”,为振兴中华而努力奋斗! IronPython是Python在.NET平台上的实现,其创造者是Jim Hug... 阅读全文

蓦然回首,IronPython却无团队博客

2006-09-16 00:55 by FantasySoft, 2013 阅读, 收藏, 编辑
摘要:在看到自由、创新、研究、探索……以及木野狐两位兄台写就的有关IronPython的文章之后,俺也有些跃跃欲试了,毕竟也有一段时间没有写有关IronPython的文章了。之前减少了对IronPython的关注,原因(也可以说是借口)很简单——IronPython 1.0一直都处于beta状态,版本更替很频繁,希望等到正式版发布再说。2006年9月6日,在经过了9个beta之后,Iron... 阅读全文

在Ubuntu中使用Tomcat的小tips

2006-09-05 15:10 by FantasySoft, 2629 阅读, 收藏, 编辑
摘要:上个星期,从Windows转到了Ubuntu这个很cool的Linux平台上,用了一个星期,感觉还真不错。使用Gaim上MSN,使用Firefox浏览网站,还装了个LumaQQ来玩,整体跟Windows就没啥区别了。即使是Word文档的操作,使用OpenOffice的Word Processor也能够胜任,当然它的功能与MS Word还是有很大的差距,这也令我切实感受到为什么Offic... 阅读全文

体验Ubuntu

2006-09-03 17:23 by FantasySoft, 1420 阅读, 收藏, 编辑
摘要:九月份,又是开学的日子。回想7年前跨入厦门大学的那一刻,虽然已经十分久远,但当时憧憬的心情依然历历在目。既是九月份,新的征程也随之开始了,这不仅对于朝气蓬勃的学生们,也对于我这位永远的“学生”。:) 接下的日子里,由于要使用WebWork去开发一个系统,所以大部分的时间都会花在Java上了。以前都是在Windows上做Java的开发,也曾经被朋友说过自由得不够纯粹。这一次为了跟开发团... 阅读全文

有关Wiki的三个应用

2006-08-24 23:13 by FantasySoft, 3257 阅读, 收藏, 编辑
摘要:8月12日的首届中文维客已经落幕多日了,而我的心依旧难以平静。Wiki是一种崇尚平等、分享以及积累的文化,其价值自然不言而喻,但是它要真正得到广大网民的接受和认可,则还有很长的一段路要走。 Wiki作为一种信息发布的方式,其复杂性相对于Blog、BBS和论坛而言要高得多。这个复杂性不仅是对于Wiki系统的维护者而言,更重要的是对于Wiki的使用者。很多人进入Blog或... 阅读全文

首届中文维客年会杂记

2006-08-14 01:14 by FantasySoft, 1360 阅读, 收藏, 编辑
摘要:8月12日,首届中文维客年会在上海顺利召开了。这是一次中文维客们的盛会,而我作为中华维客的站长也有幸参与其中。 阅读全文

ASP.NET的错误处理机制

2006-08-02 01:38 by FantasySoft, 9625 阅读, 收藏, 编辑
摘要:对于一个Web应用程序来说,出错是在所难免的,因此我们应该未雨绸缪,为可能出现的错误提供恰当的处理。事实上,良好的错误处理机制正是衡量Web应用程序好坏的一个重要标准。试想一下,当用户不小心在浏览器输入了错误的URL或者当用户提供了一些信息导致程序出错的时候,如果我们没有对这些情况进行处理,而是任由404或是500的错误页面甚至出错的堆栈信息呈现在用户面前,这无疑会把一些用户给吓跑。所以,在我们开发Web应用程序的时候,应该对错误处理机制有充分的了解。 让我们回到ASP.NET上来,先提两个问题让大家思考一下:ASP.NET为我们提供了几种错误处理机制呢?如果同时采用了几种错误处理机制,它们之间是否存在一定的优先级呢? 阅读全文

内外兼备的企业blog

2006-07-19 13:55 by FantasySoft, 707 阅读, 收藏, 编辑
摘要:几天前,我从laolu的space上看到了一篇题为《企业blog的用处》的文章,而我也第一次听说了企业blog的概念。从laolu的文章追本溯源,也就找到了与企业blog相关的两篇文章:How blogging can help your business以及Business blog applications,其中的观点也颇有见地。其实,企业blog的概念在国外乃至国内都不是什么... 阅读全文

所谓气质

2006-07-17 23:22 by FantasySoft, 837 阅读, 收藏, 编辑
摘要:昨天TerryLee的文章如一石激起千层浪,引发了大家对技术重视问题的讨论,而自己写了一篇文章以附和之,回复也是很多。可见,这个问题在大家心目中占据着重要的位置或者说大家都感到了这个问题的严重性,也有了不少的思考。其实,网络上不乏类似的文字,而今天在网上晃荡的时候,也再次看到了国内外之间的比较,不过这次不是对技术重视程度的比较,而是气质。 这篇题为《TMT评论:有关... 阅读全文

二刻拍案惊奇之——国人为什么那么轻视技术

2006-07-16 13:33 by FantasySoft, 4815 阅读, 收藏, 编辑
摘要:国人为什么这么轻视技术?这个确实是老调重谈了。卢彦兄在文中流露出的激情与担忧,我也同样感同身受。TerryLee兄对这篇文章也作了进一步的延伸,也提到了国内技术发展的两大怪现状:一是技术无用论的抬头;二是技术工作者对于职业生涯发展的困惑。在看过两位兄台的文章之后,我也颇有感触,想从另外一个角度分析一下这个老大难问题,以博各位一哂。 阅读全文

Google的使命与信息组织

2006-07-06 23:53 by FantasySoft, 1095 阅读, 收藏, 编辑
摘要:说起Google,可以说是无人不知,无人不晓了,那么Google的使命呢?如果您是Google的忠实拥趸,就不仅仅对Google各色各样的新产品望眼欲穿,图个一试为快,而且应该对Google的盈利模式、发展史等等各个方面了如指掌,说起Google的使命,自然也能够说出个所以然来。那么,您是Google的拥趸吗? 为什么要强调Google的使命呢?因为使命代表着... 阅读全文

我们为什么需要override关键字

2006-07-03 15:57 by FantasySoft, 5994 阅读, 收藏, 编辑
摘要:一直以来,我都觉得C#的继承体系结构太过繁琐,既要声明方法是否为virtual,又要使用new、override这样的关键字界定派生类方法在继承体系中的角色,远不如Java的继承实现来得简洁清爽。在Java当中,所有的类方法在默认情况下都是virtual的,所以就省下了将方法声明为virtual这个步骤。也许你会问,如果想声明一个非virtual的方法怎么办呢?所谓非virtual... 阅读全文

eBay Wiki 的启示

2006-07-02 23:59 by FantasySoft, 1002 阅读, 收藏, 编辑
摘要:早在6月14日,eBay Wiki就已经上线了。当时我通过chedong.com了解到这个信息,感到非常的开心与兴奋。因为像eBay这样一个全球最大的电子商务网站能够使用wiki促进会员之间的交流以及交易,这在很大程度上是对wiki在行业应用中的一个肯定。一直以来,包括Blog、Wiki、Tag与RSS在内的多种Web 2.0技术虽然引人注目,发展也是如日中天,但是它们并没有什么切... 阅读全文

思考Web 2.0

2006-06-30 15:05 by FantasySoft, 744 阅读, 收藏, 编辑
摘要:Web 2.0的概念在一年前悄然降临人间之后就一直吸引着无数人的眼球,一直受到无数风险投资的追捧。时至今日,Web 2.0的发展如日中天,众多的网站都给自己贴上了Web 2.0的标签,很多数码产品甚至是日用品也迫不及待地想沾沾财气,纷纷贴上2.0的铭牌。在整个互联网都为Web 2.0狂的时候,传统的媒体也没有错过机会,于是各种各样的相关报道也时常见于报端。这不,2006年6月26日... 阅读全文

浅谈HTTP的无状态性

2006-06-28 23:52 by FantasySoft, 10608 阅读, 收藏, 编辑
摘要:HTTP是Hyper Text Transfer Protocol的缩写,顾名思义,这个协议支持着超文本的传输。那么什么是超文本呢?说白了就是使用HTML编写的页面。通常,我们使用客户端浏览器访问服务器的资源,最常见的URL也是以html为后缀的文件。因此,我们可以说超文本是网络上最主要的资源。 既然HTTP协议的目的在于支持超文本的传输,更加广义一些就是支持资源的传... 阅读全文

事事总关“搜”

2006-06-27 11:19 by FantasySoft, 465 阅读, 收藏, 编辑
摘要:最近在看《搜》这本书——The search的中文版,书不算厚,内容本身很吸引我,而翻译也相当到位,阅读起来自然也就赏心悦目了。这本书的内容,我想就不需要作什么介绍了,估计十个朋友有九个都能猜出这本书大致的内容。对,就是一本讲述Google的书。Google的事业如日中天,与Google扯上关系的出版物也不在少数,像《搜主义:Google持续成长的秘密》和《Google成功的七堂课... 阅读全文

使用Word2007发布Post

2006-05-30 21:08 by FantasySoft, 587 阅读, 收藏, 编辑
摘要:整体而言,使用Word2007发布Post还是有点意思的。除了能够发布Post之外,你还可以使用Open Existing的功能打开已有的Post并且进行修改。虽然修改是可以完成,但是会造成原有的一些格式的丢失,例如分段;如果Post中本来就包含图片的话,也无法进行修改发布。 阅读全文

Google NoteBook发布了

2006-05-17 22:18 by FantasySoft, 791 阅读, 收藏, 编辑
摘要:发现自己越来越喜欢Google了,不仅因为Google功能强大的搜索,更是因为层出不穷的小玩意。在Google Trend盛装发布之后,Google NoteBook也于昨天下午发布了。早上在公司浏览网站的时候,我看到了这个小工具。当时我真的很兴奋:这不正是我想要的吗?可惜在公司无法下载.exe后缀的文件,到了晚上才能用上它,一用就真的爱不释手,忍不住到博客上推荐一番了。 ... 阅读全文

web 2.0 网站推荐

2006-04-24 10:22 by FantasySoft, 1570 阅读, 收藏, 编辑
摘要:web 2.0是一个很热的话题,作为一条小网虫,自然也会凑凑这个热闹。当然了,网上讲述web 2.0的文章可谓铺天盖地了,看了那么多,看了那么久,我也没有看出个所以然来。总之,所谓2.0就是1.0的升级版呗,1变成了2,内容的消费者也随之成为了内容的提供者,我想这或许就是web 2.0的本质特点吧。既然事事总关内容,那么如何评价一个web 2.0的网站,内容自然就是极其重要的一个指... 阅读全文

近期关注 & 博客推荐 - 2006年4月号

2006-04-05 12:13 by FantasySoft, 598 阅读, 收藏, 编辑
摘要:[写在前面]:在博客园中,除了写写Post之外,还喜欢四处晃悠晃悠——或浏览其他朋友的文章以增长见识;或关注一些讨论激励的Post,不仅凑凑热闹,还能感受各种精彩纷呈的观点。在过去近两年的时间里,我写了一些文章,跟园子的朋友们分享了很多成熟或不成熟的想法。但与此同时,我觉得更多的是收获,是提高,因为园子里有很多技术能力超群而且经验丰富的牛人。更重要的,他们很乐意将自己独到的见解与大... 阅读全文

努力做个Pragmatic Programmer

2006-03-31 15:35 by FantasySoft, 1097 阅读, 收藏, 编辑
摘要:在公司里,由于整个开发流程相对规范,整天都是拿着文档做开发,动脑筋也不太多了,久而久之难免会感到厌烦,还好有一些不需要循规蹈矩的小task可以调和一下。事实上,对于这些小task,Leader通常都会很头痛,因为都是一些如果手工完成都会让人抓狂的,繁琐而无聊的工作。每每接到这些看似很无聊的task,我都会考虑用较为聪明的方式将其完成。虽然俺的劳动力低廉,但是也不想被这些无聊的工作坏... 阅读全文

如何让WSAD的设置Workspace对话框重见天日

2006-03-16 10:06 by FantasySoft, 1357 阅读, 收藏, 编辑
摘要:在默认的情况下,WSAD启动的时候都会出现一个设置Workspace的对话框。如果workspace相对固定,为了节约时间,你可能会选中对话框中的checkbox,令这个对话框在下次启动的时候不再出现。然而当你需要改动workspace的位置时,你或许找不到办法让这个对话框重新现身了。别担心,本文告诉你解决的方法。 阅读全文

Python备忘录

2006-02-28 23:52 by FantasySoft, 3045 阅读, 收藏, 编辑
摘要:使用Python编程有一段时间了,但是Python并不是我最常用的编程语言,更重要的是Python与诸如Java、C#这类典型的OO语言在很多方面存在着差异。因此我那糟糕的记忆力总让我在编写Python程序的时候,不得不搜肠刮肚,挖空心思。俗话说得好:好记性不如烂笔头。因此,还是为我如漏斗般的记忆开个备忘录吧!Part 1 与OO概念相关 1、如何构造类实例? ... 阅读全文

无聊之胡思乱想 —— 关于CMM和CMMI

2006-02-27 16:43 by FantasySoft, 1178 阅读, 收藏, 编辑
摘要:春节长假结束之后回到公司,我参加了有关CMMI的training。整个课程总有7个部分,涉及的内容十分广泛:从基于风险的项目管理到软件生命周期,再到项目计划和跟踪等等。而到上个星期为止,课程已经过半,而我对于CMMI有了一点点的认识,也引发了一些思考。 还是先从认识开始吧。当你第一次看到CMMI这个名词的时候,或许你会不由得想起CMM。是的,CMMI就是CMM Int... 阅读全文

Why CMS and Wiki are helpful for project management?

2006-01-19 12:32 by FantasySoft, 2508 阅读, 收藏, 编辑
摘要:What's CMS? CMS stands for Content Management System. From the name, you may guess it can help you manage the content. In order to make you get the clear view about the CMS's advantage, I will com... 阅读全文

关注WebWork(五) —— 配置之美

2006-01-17 13:43 by FantasySoft, 3208 阅读, 收藏, 编辑
摘要:看到这样的题目,看到“配置”这个key word,你的脑海中是不是会呈现出一堆堆的XML、properties文件呢?是的,我说的配置,就是各位平常在做项目的时候经常碰到的配置文件。在一个项目中,配置文件是很重要的,不管它是简短的还是冗长的。配置文件指出了一个系统中可变化、可设定的部分,也就是说一个系统将其中一部分信息独立出来,将设定这些信息的权利交给了用户,这样用户就可以根据自己... 阅读全文

解读Hashtable

2006-01-06 14:16 by FantasySoft, 21693 阅读, 收藏, 编辑
摘要:昨天看到了叶漂兄的Post:《Hashtable的烦恼!》,文中提出有关Hashtable中键值对(key/value pair)排序的问题。其实所谓键值对的排序问题,实质上就是键(key)排序的问题。而一直以来,我都认为Hashtable中的键排序是随机的,因为自己有限的编程经验告诉我:键值对插入的顺序不同会影响键值对的输出顺序,实际上就是影响到键的输出顺序了。在和quitgam... 阅读全文

IronPython 1.0 Beta1发布了 —— 跨越2005的好消息

2006-01-03 00:46 by FantasySoft, 2086 阅读, 收藏, 编辑
摘要:在美国当地时间12月30日下午,北京时间则是12月31日凌晨,让人望眼欲穿的IronPython 1.0 Beta1版本终于赶在了2006年来临之前发布了!当时我正好参加公司Annual Dinner回到家中,原本已是十分开心,看到了这样的消息,更是让我激动不已。 在1.0版本的IronPython中,改动最大的地方莫过于去掉了LoadAssemblyBy*方法(包括L... 阅读全文

不可错过的MSDN TV —— IronPython: Python on the .NET Framework (下)

2006-01-02 21:15 by FantasySoft, 3588 阅读, 收藏, 编辑
摘要:在去年的Post中,介绍了Demo中有关WinFX的内容。那么今年呢,我们继续把这件做了一年的事情给做完。IronPython 1.0都赶在2005年的最后一天发布了,而这个系列的最后一篇Post竟然难产,成为2006年的新生儿,也真够FT的~~ Demo 6 与C#之间的互协作:Demo中使用ImageView的Sample来自Windows SDK中WinFX ... 阅读全文

不可错过的MSDN TV —— IronPython: Python on the .NET Framework (中)

2005-12-28 00:45 by FantasySoft, 3361 阅读, 收藏, 编辑
摘要:在上一篇Post中,我已经对前四个Demo做了简要的介绍,但那四个只是饭前的开胃小菜,好戏还在后头呢。嘿,上菜咯! Demo 5 使用WinFX:IronPython的开发从来都紧跟.NET Framework的升级,更重要的,它也十分重视IronPython在未来开发平台上的应用。而这个Demo则向大家展示了它运用WinFX的能力。 Demo 5.... 阅读全文

不可错过的MSDN TV —— IronPython: Python on the .NET Framework (上)

2005-12-27 01:16 by FantasySoft, 5563 阅读, 收藏, 编辑
摘要:最近忙得焦头烂额,都把IronPython晾在了一边,真的好愧疚。一眨眼的功夫,IronPython的version竟然来了个三级跳:11月初的时候,偶还在向大家报道0.9.4发布的消息,而早在半个月前(12月9日),0.9.6就已经发布了。进展真的神速啊!从0.9.6的release memo可以了解到:0.9.7可能是不会出现的了,因为会直接发布1.0版本!看来,盼望已久的Ir... 阅读全文

说的都是概念——有关编程范式

2005-12-17 17:41 by FantasySoft, 4862 阅读, 收藏, 编辑
摘要:在Python中,lambda是一个有趣的关键字,它用于定义简单的匿名函数。匿名函数的概念,是指没有与特定变量绑定的函数。也就是除了定义的那一刻可以引用该函数之外,你无法通过任何方式再次引用它了。这类似于我们熟知的立即数,因此我给由lambda语法定义的匿名函数起了个新名字:立即函数。存在即是真理,Python中引入了lambda语法,引入了匿名函数的概念,它所坚持的真理又是什么呢... 阅读全文

Sharepoint Newbie's Diary - 1st Entry

2005-12-12 23:59 by FantasySoft, 553 阅读, 收藏, 编辑
摘要:Hey,everybody. This is my first English entry for my blog. Although I read some English articles everyday, my English is still not good enough to let me express all my thought. Anyway, Rome was bu... 阅读全文

今天真的很Perfect

2005-12-01 23:30 by FantasySoft, 625 阅读, 收藏, 编辑
摘要:一眨眼的功夫又快到岁末了,原本早上的时候还在为时光的流逝而有所戚戚焉,谁知接二连三的好消息蹦出来,完全冲掉了我无聊的感春悲秋心情。 首先是来自Java社区的消息:致力于统一Java社区的Framework的组织——Java Web Alignment Group于近日成立了!在Java社区中,Framework的作用可谓是举足轻重,每一个开发者都或多或少从Framew... 阅读全文

真实的谎言——Upcasting的戏法

2005-11-29 01:35 by FantasySoft, 2117 阅读, 收藏, 编辑
摘要:0.继续Allen Lee的大片激赏: Allen Lee在我是谁一文中探讨了Interface选择性透过的问题,可谓是绘声绘色,精彩纷呈。我虽言辞拙劣,只因自己还有几下C/C++的三脚猫功夫,又被曾经风靡一时的大片所动,遂延续Allen Lee的精彩,斗胆跟Allen抢抢生意。嘿,开场时间到了,帷幕拉开…… 首先出场的是一位长者——Michael: publi... 阅读全文

关注WebWork(四)

2005-11-23 15:11 by FantasySoft, 1521 阅读, 收藏, 编辑
摘要:时间过得很快,《WebWork In Action》第三章的翻译工作也接近尾声了。这一章的标题是Setting up WebWork,主要讲述了与WebWork紧密相关的配置以及如何运用这些配置让我们的应用程序组织得更为模块化,让我们在设计上可以更加灵活机动。 在这一章中,我了解到了很多之前并不熟悉的配置,而这些配置所带来的影响,我不得不为之赞叹。以action为例,... 阅读全文

共性的缺失——由博客想到的

2005-11-16 17:08 by FantasySoft, 1911 阅读, 收藏, 编辑
摘要:本文讲述了对博客,论坛以及wiki的看法。与技术并无关系,发于首页,战战兢兢,只求能与各位同好者共思索。若有不妥之处,敬请告知。 阅读全文

关注WebWork(三)

2005-11-11 12:20 by FantasySoft, 2620 阅读, 收藏, 编辑
摘要:在昨天所写的关注WebWork系列的第二篇中,留下了一个问题:在使用WebWork自定义UI标签的时候,为标签的属性赋值是否要加上单引号。现在这个问题有了答案。在讲述这个问题之前,我不得不再次为自己不严谨、不细心做一个自我检讨,但愿下次不要在犯这样的错误了。 其实,这个问题的解决方法很简单,书中的代码也没有问题,而且我使用的单引号方式也没有错。让我迷惑的根本原因是我漏... 阅读全文

关注WebWork(二)

2005-11-10 18:22 by FantasySoft, 4116 阅读, 收藏, 编辑
摘要:时间过得真快,重新关注WebWork已经有一个多月了,那篇极具潜力的Post——WebWork初体验也终于如我所愿,爬上了阅读排行榜的榜首,而《WebWork In Action》的翻译工作也进行到了第三章。在这段时间里,我收到了不少朋友热情的回复以及诚挚的建议,在这里向各位表示我最衷心的感谢了! //Bow~~~ OK,鞠躬完毕,我要继续耍嘴皮子了,各位朋友准备豆腐板砖啦!:) ... 阅读全文

IronPython0.9.4发布了 —— 实现静态编译并提供官方Tutorial

2005-11-06 21:54 by FantasySoft, 3268 阅读, 收藏, 编辑
摘要:本篇blog缺少相应的思考,仅做信息发布及宣传之用。如果您有其他重要的事情做,看过本篇blog的标题即可。 阅读全文

关注WebWork(一)

2005-10-21 23:57 by FantasySoft, 2279 阅读, 收藏, 编辑
摘要:大约一年前,我为一个小型项目选择框架的时候,WebWork第一次进入了我的视野,它优美的设计以及强大的功能,再配以平缓的学习曲线深深打动了我。在一番比较过后,我毫不犹豫地选择了WebWork并用它顺利完成了这个项目,并且在开发过程中写了不少总结性的文章。尽管WebWork有着这样那样的优势,但是它本身仍然存在着诸多的不足,社区不够活跃,更新速度太慢,最糟糕的就是文档太少且质量参差不... 阅读全文

IronPython0.9.3发布了 —— 介绍一下Decorator

2005-10-17 15:44 by FantasySoft, 2059 阅读, 收藏, 编辑
摘要:上周五就已经从IronPython Team发出的Mail中得知IronPython又发布了新版本——0.9.3。慵懒的周末让偶怠慢了跟踪报道,真不好意思了。不过也正好有了时间来酝酿一下这篇Post该写些什么,而不致于空洞无物。 在短短的不到一个月的时间里就发布了新的版本,改动果然如我猜想的那样并不是很大,主要是集中在修复与Closure相关的bugs。大家从Iron... 阅读全文

吹响反击Ruby On Rails的号角

2005-10-14 11:27 by FantasySoft, 9015 阅读, 收藏, 编辑
摘要:最近Ruby On Rails(ROR)的火热程度真的让人很惊讶,九月份的《程序员》也用了大量的篇幅来介绍这个新兴的Web Application快速开发框架。对新鲜东西向来都很好奇的我却对ROR提不起兴趣,也许是因为Ruby由日本人创造的缘故吧,我对Ruby一直有着抗拒感,尽管ROR是丹麦的小伙子David开发的。 抗拒归抗拒,ROR的成功着实是一种促使我去思考的动... 阅读全文

Portal应用点滴(三) —— Pluto与HelloWorld Portlet

2005-10-13 10:41 by FantasySoft, 3489 阅读, 收藏, 编辑
摘要:在上一篇Post中,我提到要开始实践了,但是酝酿一篇与实践密切相关的Post还真的很费劲。毕竟建立一个portlet的方法有很多种,而且还会因使用的工具不同而方法迥异。平常在工作当中都是使用IBM提供的Portal Toolkit进行Portlet开发,打开Create New Portlet Wizard,跟着提示点几下按钮,一个漂亮的Portlet就在弹指之间完成了。如果我把这... 阅读全文

IronPython0.9.2发布了 —— Generator Expression简介

2005-09-26 11:20 by FantasySoft, 2110 阅读, 收藏, 编辑
摘要:又是时候来关注一下IronPython开发的进展了。上个星期四(9月22日),IronPython0.9.2发布了,大家可以在Workspace中下载到这个最新的版本。我们从Workspace首页上那长长的List of fixed bugs可以看出,这次新版本的发布可谓进步不小啊!IronPython0.9.2除了修复了很多bugs之外,还有两个非常重要的改进:支持了Genera... 阅读全文

Portal应用点滴(二) —— Portlet简介

2005-09-23 17:22 by FantasySoft, 2180 阅读, 收藏, 编辑
摘要:在昨天的Post中,偶已经对Portal进行了简单的介绍,不知道各位对Portal是不是有一点点认识了呢?如果还是云里雾里的话也没有关系,毕竟Portal所涵盖的内容是很广博的,掌握它需要时间,了解也是需要时间的。在初步介绍了Portal的概念之后,今天我们来探讨一下Portal的核心——Portlet。 首先,Portlet在表现形式上就是我们所看到的页面上一个个小... 阅读全文

Portal应用点滴(一) —— Portal简介

2005-09-22 11:52 by FantasySoft, 6112 阅读, 收藏, 编辑
摘要:[引言] 早在2003年底,Portal这个名词第一次出现在了我的技术辞典中。当时对Portal的理解仅仅限于“页面上的几个可以随意摆放的小窗口”,觉得没有什么特别的,也没有把这项技术放在心上了。2004年底,我参与了一个基于Portal的项目开发。在过去将近一年的时间里,一直都在和IBM WebShpere Portal打交道,这给了我认识并学习Portal的好机会。Daily ... 阅读全文

让我们一起来开发FantasyPython吧

2005-09-19 14:23 by FantasySoft, 3238 阅读, 收藏, 编辑
摘要:自从我把FantasyPython雏形的雏形摆上博客园之后,我一直都在努力学习着多线程开发,争取早日发布FantasyPython0.0.1。但是由于自己天资愚钝,再加上工作比较繁忙,精力有限,研究多日仍然未有进展。Sigh,书到用时方恨少啊!看着时间在我的碌碌无为中一天一天过去,我真的很着急,希望能够找到一个更好的开发策略,让FantasyPython能够顺利发布并茁壮成长,而不... 阅读全文

初探.NET多线程

2005-09-09 18:15 by FantasySoft, 4152 阅读, 收藏, 编辑
摘要:好多天没有更新Blog了,一直都在忙着寻找如何将IronPython集成至GUI中的方法。一开始我把问题看得太简单了,因为我看了来自CodeProject的ShellControl - A console emulation control这篇文章之后,很幼稚地认为只需要把源代码中的cmd.exe换IronPythonConsole.exe 就可以大功告成了,然而事实证明我的想法... 阅读全文

IronPython编辑器 —— FantasyPython雏形的雏形

2005-09-04 23:54 by FantasySoft, 3079 阅读, 收藏, 编辑
摘要:在看了鹰翔兄写的Post以及他开发IronPython的小代码编辑器之后,我发现心有灵犀真的如此之奇妙。开发一个IronPython的代码编辑器也是我在这个月的计划之一啊,鹰翔兄已经走在了我的前面,看来我也要快步赶上了。 还记得小的时候在农村,父母都会给自己的孩子起个阿猫、阿狗这样的名字,希望孩子能够容易养活,并且茁壮成长。而爱幻想的我,在IronPython编辑器还... 阅读全文

继续探索动态代理

2005-09-02 23:30 by FantasySoft, 831 阅读, 收藏, 编辑
摘要:在昨天的Post中,三言两语把动态代理(Dynamic Proxy)大致介绍了一下并给出了一个例子,我想大家应该和我一样对Dynamic Proxy有一定认识了吧。然而Dynamic Proxy这个宝藏的底蕴是深厚的,三言两语又怎能发掘到精华呢?于是,偶带着很多疑问,对Dynamic Proxy来一次更全面的探索。 在Dynamic Proxy中,最有意思的应该是Pr... 阅读全文

三言两语话动态代理

2005-09-01 23:28 by FantasySoft, 3128 阅读, 收藏, 编辑
摘要:在之前的一篇关于Decorator模式的Post中,曾经提到了动态代理(Dynamic Proxy)简化了Decorator模式的实现。作为例子的代码很容易理解,但这个简化的背后仍包含着很多值得去发掘的内容。 首先我们来明确一下动态代理的定义:一个动态代理类在运行期implements一组interface,使得interface实现类的方法调用被分派至其他的类(另外的i... 阅读全文

关于Metaclass Programming (一)—— 动态创建Class

2005-08-30 23:53 by FantasySoft, 1071 阅读, 收藏, 编辑
摘要:前几天写Python中的Class这篇Post的时候,犯下了一个十分低级的错误,让我感觉十分惭愧。看来还是得继续努力,坚持大胆假设,细心求证的基本原则哦,呵呵~~~ 言归正传,Qiangning Hong兄的Feedback不仅纠正了我犯下的错误,也促使了我去作进一步的思考。我原本希望通过Google去搜索Python中关于函数重载的内容,却很意外地发现了这样一个与... 阅读全文

IronPython0.9中的Examples

2005-08-29 23:58 by FantasySoft, 2049 阅读, 收藏, 编辑
摘要:自从IronPython加入了与.NET 2.0一齐发展的行列之后,我的SharpDevelop就不好使了。没有办法,为了能够把IronPython0.9自带的几个Sample跑一跑,花了几天的时间,终于把Visual C# 2005 Express Edition Beta装上了。在聊聊IronPython0.9自带的Example之前,真的忍不住对Visual C# 2005赞... 阅读全文

.NET和J2EE该相互学习什么

2005-08-26 12:21 by FantasySoft, 9399 阅读, 收藏, 编辑
摘要:[前言] 写这篇Post源于我既做过.NET开发又做过J2EE开发的经历。在这样的转变过程中,我对单一平台开发所带来的思维局限性有了很多清晰却零散的想法。在看了振河兄的页面间传递变量的方法及使用范围的讨论之后,我更能体会到在不同的平台进行开发,思维方式会是如此之不同,原来那些零散的想法也随之不断在脑海中涌现,让我有了写下这篇Post的冲动。其实我一直都在宣扬一种观点:技术之间是相通... 阅读全文

Python中的Class

2005-08-25 23:06 by FantasySoft, 18743 阅读, 收藏, 编辑
摘要:尽管Python在Function Programming中有着其他语言难以企及的的优势,但是我们也不要忘了Python也是一门OO语言哦。因此我们关注Python在FP上的优势的同时,还得了解一下Python在OO方面的特性。 要讨论Python的OO特性,了解Python中的Class自然是首当其冲了。在Python中定义class和创建对象实例都很简单,具体代码... 阅读全文

让我最后罗嗦一下Visitor模式——关于双重分派

2005-08-20 13:21 by FantasySoft, 3832 阅读, 收藏, 编辑
摘要:昨天罗嗦了一下Visitor模式,idior以及Cavingdeep兄都写下了很多促使我进一步去思考的Feedback,在这里谢谢两位了!感谢的话说完了,让我们言归正传——开始罗嗦,呵呵。 在昨天的Post中我提到了Visitor模式中最重要的一点是:double-dispatch(双重分派)。说来惭愧,昨天在写post的时候,我仅仅在震宇兄的Post中对double... 阅读全文

让我再罗嗦一下Visitor模式

2005-08-19 14:13 by FantasySoft, 5704 阅读, 收藏, 编辑
摘要:昨天看了idior兄的Visitor模式全解之后,思考了很久,同时自己也摸索着写了些代码,对Vistor模式有了进一步的理解。 1、使用Vistor模式最大的好处就是增加对数据对象的操作却不需要改变数据对象本身,不需要对数据对象进行重新编译。在这里的数据对象以及所增加的操作都应该满足一定的条件的,如果你所操作的数据对象仅仅是一个或者所增加的操作仅仅作用一个数据对象集合... 阅读全文

J2EE与.NET在Transaction Scope上的比较

2005-08-17 15:03 by FantasySoft, 4093 阅读, 收藏, 编辑
摘要:在拜读了idior兄的Transaction in ADO.net 2.0之后,对J2EE与ADO.net下Tranaction Scope的定义及控制进行了比较。请点击这里阅读全文。 阅读全文

关于J2EE Tranaction的几个基本概念

2005-08-16 22:12 by FantasySoft, 4002 阅读, 收藏, 编辑
摘要:Transaction不管在J2EE还是.NET领域中都是相当重要的一个组成部分。尽管很多与Transaction相关的概念在两个不同的平台中都是相通的,但是它们在Transaction的实现方面却有着很多的不同。想对.NET下的Transaction有更深入了解的朋友,可以参考idior兄写的Transaction in ADO.net 2.0。在以下的篇幅里面,我就J2EE中与... 阅读全文

关于数据访问模式(八)—— Resource Pool模式

2005-08-12 12:01 by FantasySoft, 3052 阅读, 收藏, 编辑
摘要:Resource Pool(资源池)模式已经在上一篇Post中露过脸了,这次让我们再对其看个仔细吧。Resource Pool模式是在应用程序开发中十分常见的一种模式,如果你使用过任何一个主流的应用服务器,如Tomcat,Weblogic,Websphere,Resin等等,对连接池(Connection Pool)的配置一定都不会陌生。我们从几乎无处不在的连接池就可以知道Reso... 阅读全文

关于数据访问模式(七)—— Resource Decorator模式

2005-08-10 16:25 by FantasySoft, 1810 阅读, 收藏, 编辑
摘要:当你希望为数据库资源接口增加新功能的时候(例如调用Connection的close方法并非真的将Connection给关掉,而是将Connection放回连接池),你会打算怎么办呢? 该使用怎样的模式去实现这个功能呢?请点击这里阅读全文。 阅读全文

关于数据访问模式(六)—— 资源管理模式的重要性

2005-08-08 01:12 by FantasySoft, 1343 阅读, 收藏, 编辑
摘要:随着硬件的日新月异,现在设计软件已经不再像十年前那样对软件占用的内存、软件运行消耗的CPU斤斤计较了。如果你有在DOS下写程序的体验,那么当年经常为物理内存不够而头痛的经历或许到现在还历历在目吧。还记得十年前会有很多书籍是专门讲述如何去优化程序,使其占用更少的内存。但是到现在,恐怕都难觅这类书籍的芳踪了。硬件厂商现在似乎为我们程序员创造着一个资源永动机,为我们的软件提供永远也用不完... 阅读全文

IronPython0.9 release

2005-08-03 23:59 by FantasySoft, 1086 阅读, 收藏, 编辑
摘要:晚上上网Check Mail,很意外也很开心的发现IronPython0.9发布了!当我看到EMail的title的时候,我着实有点惊讶,怎么是0.9,而不是0.7.7或者0.8呢?原来是因为新版本的开发比预期的时间多了两个星期,而与此同时,O'Reilly Open Source Convention又临近了,因此IronPython Team决定再奋战多一个星期,直接越过0.8... 阅读全文

也说Type Inference

2005-08-02 15:12 by FantasySoft, 3540 阅读, 收藏, 编辑
摘要:看了Cavingdeep兄的Post,还有idior老大的comment,我又忍不住想说上两句了,因为Boo总能让我想起可爱的Python,还有正在茁壮成长的小小IronPython。:) 说到Type Inference,有一个概念是不得不提的,就是Dynamic Type(动态类型)和Static Type(静态类型)。静态语言就不必多说了,C++、Java和C... 阅读全文

关于数据访问模式(五)—— Layers模式

2005-07-31 23:50 by FantasySoft, 1716 阅读, 收藏, 编辑
摘要:Layers(层)模式,我想大家应该都不会陌生了。不管是硬件驱动程序、TCP/IP协议,还是J2EE应用软件的架构,层的应用几乎无所不在。我们专注到Web Application上来,三层以及多层结构的应用更是遍地开花。那么,层的强大之处在哪里呢?我们是否真的了解层的划分呢? 我们面对一个复杂问题的时候,都会想着将这个问题化整为零,分为一个个子问题,然后逐个击破。相应... 阅读全文

IronPython小事记

2005-07-28 11:55 by FantasySoft, 1147 阅读, 收藏, 编辑
摘要:前天收到IronPython Team发来的邀请函,大致内容是说:O'Reilly Open Source Convention将于8月1日至8月5日在波特兰举行。届时,Jim Hugunin将与会做两次演讲,一次是长达三个小时的IronPython Tutorial,而另一次则是不到一个小时的IronPython 1.0的简单介绍。面对这样诱人而遥远的技术盛宴,我只能看着直咽口水... 阅读全文

关于数据访问模式(四)—— Active Domain Object模式

2005-07-26 17:58 by FantasySoft, 2596 阅读, 收藏, 编辑
摘要:古人云:温故而知新。在讨论新的数据访问模式之前,我们先来回忆一下上一篇Post中提到的Data Accessor模式吧。 Data Accessor提供了一种解耦合的策略:将数据库访问的细节进行逻辑抽象并封装于单一组件中,从而降低数据访问和数据模型之间的耦合性。对于应用程序而言,它并不了解具体的数据访问操作,如建立数据库连接和执行SQL语句等,但是它仍然了解数据模型的... 阅读全文

关于数据访问模式(三)—— Data Accessor模式

2005-07-25 18:34 by FantasySoft, 3206 阅读, 收藏, 编辑
摘要:拐弯抹角了两篇Post,说了一下重要性和很常见的一个词汇:Metadata,终于都到言归正传的时候了。今天我们先来看看数据访问模式当中使用得很频繁的一种模式——Data Accessor(也称为DAO,数据访问器)。 不管你是用着ADO.NET还是JDBC,你都可以直接使用SQL(在ADO.NET中使用SqlCommand,JDBC则是使用Statement)去访问数... 阅读全文

关于数据访问模式(二)—— 说说元数据

2005-07-22 15:59 by FantasySoft, 2369 阅读, 收藏, 编辑
摘要:[前言] 在这个系列的第二篇,我依旧不务正业,只字不提具体模式。元数据是一个很基本的概念,如果大家看到有关O/R Mapping的文章,都可能会看到元数据这个的名词。因此,在这篇中,还是先说说元数据吧。 提到元数据(Metadata),在IT行业中,应该是无人不知无人不晓了。即使你不是在IT行业里面耕耘,也会或多或少的元数据打过交道,因为在Web的世界中,元数据几乎是... 阅读全文

关于数据访问模式(一)—— 数据访问模式的重要性

2005-07-21 18:23 by FantasySoft, 3873 阅读, 收藏, 编辑
摘要:在企业级应用当中,数据是企业资源的重要组成部分。应用程序的开发也是围绕数据的组织和存储、数据的访问、数据的处理、数据的表示进行的。由于这几个方面为整个应用程序系统提供了服务(Service),因此我们可以把这几个方面统称为数据服务(不知道用这样的名词去概括是否恰当)。 我们从企业应用程序常用的三层或者多层结构可以看出,每一层都无法离开数据,每一层都拥有一个独有的关注点。正是由于数据... 阅读全文

也说Functional Programming

2005-07-20 12:33 by FantasySoft, 2903 阅读, 收藏, 编辑
摘要:看了Lu Feng兄写的4个程序员的一天以及很多朋友对此post的回复,不禁让我兴奋不已。因为我想起了Python,毕竟在Functional Programming方面又怎么能少了Python这条可爱的小蟒蛇呢? 偶没有Lu Feng兄那么强的表达能力,能够将语言的特性如讲故事一般娓娓道来,只能随手写两行代码来展示一下Python在Functional Progra... 阅读全文

Cached JSP引发的问题与思考

2005-07-15 18:59 by FantasySoft, 949 阅读, 收藏, 编辑
摘要:在最近的Project中遇到了一个表面上看起来蛮奇怪的问题。具体问题是这样的,在Project中,所有跨模块的constant都会定义在一个名字叫Constants的interface中,然后在JSP里面,我们也会相应地使用到这些constant。 每当更改了Interface里面某一个constant的值的时候,在JSP中并不会反应出来,从而引起了很多混淆。由于Constants是... 阅读全文

可爱的Ant——利用Ant获取文件列表

2005-07-15 14:47 by FantasySoft, 4167 阅读, 收藏, 编辑
摘要:提到Ant,你一定会想到它在自动构建方面有着举足轻重的地位,于我而言,也仅仅是将其作为一个自动构建的工具来使用。由于各个流行的IDE都内部集成了对Ant的强大支持,因此,我使用Ant的方式就真的简单得不能再简单了:在网上找一个build file,然后针对自己的project稍作修改。这样,我就可以在IDE窗口中拖动鼠标点两下,就可以很方便地完成 project的构建了。真的太简便... 阅读全文

从onfocus方法看浏览器的兼容性

2005-07-12 22:01 by FantasySoft, 4959 阅读, 收藏, 编辑
摘要:在Web Application的开发测试当中,由于存在不同的访问终端——浏览器,因此需要在不同浏览器下运行应用程序,以检验应用程序在不同的浏览器下的外观及功能上是否保持一致。尽管现在的浏览器之间的兼容性已经是相当不错,但是在对Javascript的支持上就有相当大的区别。今天就在onfocus方法上碰到了钉子。具体的代码是类似这样的: ... 阅读全文

也谈代码规范

2005-07-07 21:35 by FantasySoft, 5602 阅读, 收藏, 编辑
摘要:看了湘南和也写的程序编码应保持良好的规范(C#) ,我也忍不住要说上两句。这两年来,做了几个项目,技术没有长进多少,对于规范倒是有了不少的体会。 湘南和也提到的四点规范是比较重要的,我再补充几点。 1、常量的命名:常量使用大写字母,各个单词之间通过下划线的划分。譬如BASE_SALARY; 2、变量的命名:变量的首字母小写,之后的单词的首字... 阅读全文

也说魔数与魔字符串

2005-07-06 23:22 by FantasySoft, 2182 阅读, 收藏, 编辑
摘要:看了叙远兄写的.net中的魔字符串,还有birdsome的评论,颇有启发。 所谓魔数和魔字符串就是在代码中直接使用某一个数字或者字符串,而不是常量。譬如一个很简单的根据职位计算薪水的方法: public int getSalary(String title, int grade) { if ("Programmer".equals(title)) ... 阅读全文

体验模式的乐趣(二)—— 连接池与Decorator模式

2005-06-30 22:26 by FantasySoft, 1663 阅读, 收藏, 编辑
摘要:在《深入浅出Hibernate》的第一章中,作者讨论了设计一个面向应用的持久层所涉及到的方方面面,其中一个重要的方面就是Connection Pool(连接池)的使用。以JDBC为例,当你需要对数据表中的数据进行操作的时候,你必须通过Driver去建立与Database的 Connection。由于建立Connection的过程的开销是相当可观的,如果仅仅是在执行了几个简单的SQL... 阅读全文

美妙的Python又来了

2005-06-22 02:08 by FantasySoft, 2545 阅读, 收藏, 编辑
摘要:今天继续去了解小蟒蛇的可爱特性,在函数定义和调用方面,有三个地方让我觉得蛮有意思的。 第一个有意思的地方是缺省实参, 也就是在Python中定义函数,你可以为参数设定缺省值(默认值),这个特性在C和C++中也是有的,但是在Java中却没有,至于C#中有没有,就不清楚了。如下所示: def test(a, b, c=3): print a, b,... 阅读全文

IronPython的第十块鳞片

2005-06-19 00:53 by FantasySoft, 1521 阅读, 收藏, 编辑
摘要:IronPython0.7.6于6月14日发布了, 版本升级的速度确实让人满意啊! 然后再看看自己的鳞片系列的速度,真的好惭愧,看来得好好加把劲了。 这一次的升级动作可谓之巨大,至少我得把原来.NET Framework 2.0.40607.42卸载掉,装上最新的.NET Framework 2.0.50215.44,IronPythonConsole才能运行起来,... 阅读全文

Openning Day

2005-06-17 01:28 by FantasySoft, 663 阅读, 收藏, 编辑
摘要:在Java的世界里,Open并不是一个新鲜或者是很Hot的词语了,那么在操作系统方面呢?6月14日这一天,OpenSolaris的横空出世,无疑在操作系统领域中投下了一枚重磅的炮弹。让我们来看看引自TechNewsWorld网站的一段话吧: Sun Microsystems has officially released the source code of its Solari... 阅读全文

MySql与Tomcat的两个小Tips

2005-06-04 00:38 by FantasySoft, 1264 阅读, 收藏, 编辑
摘要:第一个Tip是与数据库有关。通常,数据表在创建了之后都不可避免的需要增加或者删除表中的列(Column),那么我们通过什么方式去做呢?重新创建一张表再将数据导入恐怕是一个很笨的办法了,费时又费力。事实上,只要使用一句简单的SQL就能实现我们所想要的了,这个就是ALTER TABLE。ALTER TABLE的功能很强大,它几乎可以改变与表结构相关的一切信息,譬如增加删除列,修改列名,... 阅读全文

IronPython的第九块鳞片

2005-04-15 00:29 by FantasySoft, 1802 阅读, 收藏, 编辑
摘要:IronPython这次又给我们带来了惊喜,IronPython0.7.2发布了!这距上一个版本的发布只有十天时间,速度真的让人吃惊!这主要得益于广大程序员对IronPython的关注,从workspace上的active bugs在不断的增多就可见一斑了。我相信问题发现得越多,则完善得越快,1.0版本也就越完美,越值得期待。 这一次新版本的发布主要还是修改了一些bu... 阅读全文

IronPython的第八块鳞片

2005-04-09 17:16 by FantasySoft, 2358 阅读, 收藏, 编辑
摘要:当我在IronPython的Message Borad中提出了关于Dictionary的问题之后,Jim对这个问题作了回复,并且指出,将属于.NET的类型引入到IronPython,会带来不少的问题。随后,有另外一个朋友对是否应该引入.NET中的类型,提出了他自己的疑问:Why does IronPython need the types in System.Collections... 阅读全文

IronPython的第七块鳞片

2005-04-03 01:29 by FantasySoft, 1379 阅读, 收藏, 编辑
摘要:时间跨入了2005年四月,而昨天我度过了迄今为止最伤感的愚人节,恼人的细雨与压抑的情绪充斥着昨天的每一分每一秒。还以为这样的天气会延续很久,但是早上起来却发现外面阳光灿烂,而我的心情也随之好了起来。于是,我穿着短袖到外面闲逛,感受春天的气息。来到珠江边,想起昨日的阴霾,再望望今日满眼的翠绿,我发现,阳光总在风雨后,而希望总是会在绝望中萌生。带着好心情回到家中,上网的时候竟然发现Ir... 阅读全文

感受Python的美妙

2005-04-02 01:47 by FantasySoft, 3234 阅读, 收藏, 编辑
摘要:最近上班的时候忙里偷闲,仔细研读了DiveIntoPython中关于Python特殊数据类型的章节。而我再一次被Python的简约之美深深打动了。 List是Python的三种特有数据类型中的一种,跟数组很像,支持直接利用下标的访问方式;同时List的size是可变,这一点又跟ArrayList是十分类似的。但是List就像是包罗万象的万花筒,不仅能够容下对象,同时... 阅读全文

IronPython的第六块鳞片(续)

2005-03-31 00:44 by FantasySoft, 1245 阅读, 收藏, 编辑
摘要:在上篇Post中,我提到了IronPython0.7的一个问题:通过key来获取Dictionary类型变量的value,如果key不存在,Console将不会有任何的提示,而CPython则会有相应的KeyError的提示信息。后来,我在IronPython的MessageBoard上发了一个帖子来说明这个问题。结果第二天,IronPython的老爸——Jim Hugunin给予了... 阅读全文

IronPython的第六块鳞片

2005-03-28 01:04 by FantasySoft, 1439 阅读, 收藏, 编辑
摘要:或许是对IronPython这条小蟒蛇的想念,或许是对自己的懒惰开始变得无法容忍,今天不知怎的就到那极其冷清的IronPython的Mail List去瞧了瞧。哈哈,还真的让我看到了一条让我兴奋不已的消息——IronPython0.7于3月23日发布了!但是有意思的是,在Mail List中第一个公布这条消息的人竟然不是IronPython的老爸Jim Hugunin。当然紧跟其后... 阅读全文

从银行ATM机取款失败说起

2005-02-05 23:49 by FantasySoft, 7991 阅读, 收藏, 编辑
摘要:昨天晚上,我到中国银行的一台ATM机上取钱。插卡,输入密码,接着可供选择的操作出现:人民币提款,查询余额以及退卡。因为人民币提款选项的出现,所以我可以得知该ATM机是有现金可以提取的。于是很自然的,我先查询了余额,然后根据余额取相应的钱。当我选择了人民币提款,输入需要提取的金额之后,ATM机似乎开始罢工了,因为半晌都没有什么反应。大约两分钟左右,屏幕赫然显示出“通讯故障,操作无法执... 阅读全文

体验模式的乐趣(一)—— Command模式

2005-01-08 23:53 by FantasySoft, 1502 阅读, 收藏, 编辑
摘要:模式是什么?说实在的,对于模式,我了解得很少。但是,我知道,模式是用来解决软件设计问题的,是用来增加软件设计的灵活性和可维护性的,总之,它应该是程序员经过大量开发工作之后,对于解决问题的经验总结;模式不是用来生搬硬套的,也不是拿来故弄玄虚的,它是用来解决问题,从而让我们更加享受编码的乐趣。我无意直接去讲解什么模式,因为我还没有那样的实力,我能够讲的就只有模式给我带来的顿悟了。咦,怎... 阅读全文

三周谈

2005-01-07 22:00 by FantasySoft, 1057 阅读, 收藏, 编辑
摘要:不知不觉中,在HSBC PDC上班已经三个星期有余了。现在再来谈谈对PDC的感受,尽管很多还不甚清晰,但是也比初来咋到时候的认识要成熟多了吧。 这三个星期的工作相对其他员工而言,真的是非常轻松。因为只是self-study和上一些Java和J2EE的training course,而我自己在过去的一年里一直都是做着与Java和J2EE有关的项目,这些需要掌握的内容虽然... 阅读全文

一个关于继承和多态的问题(思索篇)

2005-01-06 22:55 by FantasySoft, 959 阅读, 收藏, 编辑
摘要:在上一篇Blog中给大家留了一个问题,如果大家有上机去尝试一下,就会知道答案是1了。虽然代码用的是Java,但是这个问题是具有同性的,即使换了C#去写,也会让我们思索一番。下面先从Java的角度去阐述一下这个问题。 对于这个答案的解释,我们可以从两个方面去看:一是从语义的角度;首先,g这个方法对于类C而言是继承自类B,那么就应该与类B中的方法g的行为完全一致,而方法g... 阅读全文

一个关于继承和多态的问题(提问篇)

2004-12-28 00:00 by FantasySoft, 1273 阅读, 收藏, 编辑
摘要:这个问题是我自己的一个盲点问题,因为当我看到以下的代码以及选项的时候,我做出了错误的选择。后来,我知道了原因所在,但是我想应该会有很多不同的解释,特将问题列示如下。首先,先看一下代码: public class Test { public static void main(String[] args) { A ref1 = new C(); B ref2... 阅读全文

Java基础知识的十个盲点

2004-12-25 11:57 by FantasySoft, 1908 阅读, 收藏, 编辑
摘要:连续三天的Java Language Fundamental Knowledge培训,整体是会让那些有经验的Java程序员哈欠连天的。原本也想坐到Training Room的后排敷衍了事,不过想想自己的基础,最后还是选择了坐到第一排。 三天的课程平淡无奇,讲的无非是任何一本Java语言速成类的书籍都会讲到的内容。不过,当面对着这么多纷繁复杂的基础知识时候,我还是发现不... 阅读全文

再谈字符串比较

2004-10-30 18:16 by FantasySoft, 5558 阅读, 收藏, 编辑
摘要:最近看到了不少文章[1]都在讨论字符串之间比较的问题,问题的讨论似乎可以更深入一些。请看以下代码: Java:Stringta="ab";Stringtb="cd";Stringt1="abcd";Stringt2="abcd";Stringt3="ab"+"cd";Stringt4=ta+tb... 阅读全文

GDI+实践之路(二)

2004-10-25 22:42 by FantasySoft, 2570 阅读, 收藏, 编辑
摘要:在上一篇post中,我们已经通过建立一个简单的程序对GDI+有了一些初步的了解。接下来,为了能够提高开发效率,我打算将GDI+的API进行封装,提高代码的重用性。结果,我遇到了一个极其讨厌的问题。通常,我们都需要将class的定义写在.h头文件中,那么很明显就要将gdiplus.h包含在头文件中了,但是,不知道为什么,我认为OK的代码却编译不过,例如: #includegdi... 阅读全文

GDI+实践之路(一)

2004-10-19 01:33 by FantasySoft, 2124 阅读, 收藏, 编辑
摘要:当我写下这个标题的时候,你是不是会觉得我很花心呢?一项技术都没有摸透,就去看其他的技术了。我又何尝不想专注于一个方面呢?不过,跟着需求走就意味着“一日看尽长安花”了,目不暇接无所谓,脑袋瓜跟上了就好,你说呢? 实践之路的第一步是急着动手去做吗?不是的,应该对GDI+有个概括的了解才行。GDI+是GDI(Graphic Device Interface)的扩展版本,也是... 阅读全文

偶的第一篇译文(下):Data Types in C#

2004-10-17 12:13 by FantasySoft, 1286 阅读, 收藏, 编辑
摘要:预定义类型CTS定义了很多能够被C#编译器识别的数据类型,譬如整型,浮点型,字符型和布尔型。我们可以简单的通过为一个对象起个名字的方式去声明一个值类型变量,例如声明了一个布尔类型变量,如下代码所示: bool b; //This declares a Boolean b on stackb = false ; //This assign the value fals... 阅读全文

偶的第一篇译文(上):Data Types in C#

2004-10-16 12:53 by FantasySoft, 1335 阅读, 收藏, 编辑
摘要:[前言]:昨天在看小新0574的一篇post的时候,发现自己对于数据类型的了解还是很肤浅的,于是搜索了一下,找到了这篇来自DotNetJunkies文章。个人觉得文章写得很不错,条理清晰而且有一定深度,故将其翻译,以搏诸位一哂了。原文:Data Type in C#作者:Wajahat Abbas ... 阅读全文

自动更新功能的实现尝试 之 更新

2004-10-15 23:58 by FantasySoft, 1719 阅读, 收藏, 编辑
摘要:随着网络的极大发展和普及,很多软件都增加了自动更新的功能,首当其冲的就是Windows了,对于网络游戏的客户端更是必不可少。最近要为一个软件实现自动更新的功能,正好有机会去思考一下这个功能实现起来需要做什么。 光从字面上看,自动更新至少包含两个方面:一个是更新,一个就是自动了。那么更新的话,我们可以认为是客户端通过HTTP、FTP或者其他连接从服务器上获得需要的资源。... 阅读全文

IronPython的第五块鳞片

2004-10-12 23:59 by FantasySoft, 1712 阅读, 收藏, 编辑
摘要:不知不觉就到了十月份,IronPython这条小蟒蛇也很久没跟大家say Hi了,不过与它老爸Jim从Mail List乃至他的个人blog中消失的时间相比,确实是算不了什么。今天去看了一下Mail List和Jim的blog,很意外的在Mail List中看到了Jim熟悉的名字。 在这篇久违的Message中,Jim也承认自己自从加入了MS之后,很多事情让他费神以致... 阅读全文

Mysql的数据备份问题

2004-10-05 13:54 by FantasySoft, 1708 阅读, 收藏, 编辑
摘要:几乎一切的Web应用程序都离不开数据,而数据库又是数据的集中地,其健壮性和安全性是十分重要的。如果把整个应用程序比作大脑,那么数据库就像是大脑的记忆一样,一旦完全失去了记忆,大脑无疑也就瘫痪了。为了保证数据的安全性,一个健壮的Database Server是十分必要的,但是,再健壮的server也难免会有crash的时候,从而导致数据丢失,在这个时候,及时而有效的数据备份也显得格外... 阅读全文

你今天Python了吗?(下)

2004-09-28 17:02 by FantasySoft, 3119 阅读, 收藏, 编辑
摘要:在体验了wxPython的强大之后,让我们把注意力集中到Twisted上来。在C++的世界里,你会发现一个很棒的网络应用框架,那就是ACE了;在Python的地盘,Twisted则是在网络应用框架中当之无愧的老大。 Twisted是一个纯Python的网络应用框架。由于Twisted社区十分的活跃,你可以从网站上得到充分的文档,让你轻松上手;Twisted是开源的,你... 阅读全文

你今天Python了吗?(上)

2004-09-28 12:05 by FantasySoft, 10548 阅读, 收藏, 编辑
摘要:你今天Python了吗?为了提高你的生产效率,赶快去关注一下小蟒蛇的成长吧!别再把Python当作你的业余爱好了,她能为你做手头上几乎所有的工作,而且能做得更好,也让你把写代码看成是一种真正的乐趣。为什么我们就一定只将注意力盯在C++、Java、C#这些所谓正统的语言上呢?我们的目标不是Be a pragmatic programmer吗?C++、Java乃至C#都可以看做是同一类... 阅读全文

IronPython的第四块鳞片

2004-09-27 21:57 by FantasySoft, 1138 阅读, 收藏, 编辑
摘要:尽管每天都会关注Jim的blog,关注IronPython的Mail List,但是这几天来都没有什么收获,不仅Jim的blog都快发霉了,Mail List这两三天竟然也没有新的Mail,让我好生失望。看来一切的东西都得靠自己去摸索了,原本想拿着IronPython的源代码研读一番,怎奈天生愚钝,《Code Reading》那本好书又没有带在身上,看代码如同在蜀道行走一般。看来从... 阅读全文

关于测试和调试

2004-09-26 23:59 by FantasySoft, 651 阅读, 收藏, 编辑
摘要:没有想到《数据结构、算法与应用》一书如此之强调测试,曾经以为只有在Kent Beck的书中,才会将测试摆在一个极其重要的位置。尽管书中对于测试与调试的讲述并不是太多,却将要点讲述得特别的清楚,让自己对于测试和调试有了些许的顿悟。 测试是为了尽可能的发现错误,这个是一定要牢记的。为了实现这个目标,测试数据的选择就显得尤为重要了。毕竟能够作为一个函数的输入条件的数据集合实... 阅读全文

恶补算法与数据结构(一)——排列问题

2004-09-26 13:36 by FantasySoft, 2087 阅读, 收藏, 编辑
摘要:上次朋友的一个问题,让我重新翻开了那本尘封已久的《数据结构、算法与应用》。仅仅重读了第一章,我不得不再次为专注数据结构与算法研究的科学家们佩服得五体投地。 让我佩服的问题其实很简单:生成一个list中的元素的全排列,也就是说input为:[a, b, c],output则是[abc, acb, bac, bca, cab, cba],当然list中的元素个数是不定的。... 阅读全文

读《C++大师Lippman:我对中国程序员的忠告》有感

2004-09-24 10:29 by FantasySoft, 2276 阅读, 收藏, 编辑
摘要:读了《C++大师Lippman:我对中国程序员的忠告》,让我获益良多,同时也多少有些感慨。 首先,Lippman对于软件开发的理解是很有深度的:“软件是脆弱的……开发软件所需要的时间太长了,并不是说我们的编程人员不合格,是因为这个工作不符合人类的自然本性,因为你必须像计算机那样进行线性的思索。”纵观计算机语言的发展,从最原始的机器码到现在的支持Object-Ori... 阅读全文

IronPython的第三块鳞片(补充)

2004-09-23 16:47 by FantasySoft, 1075 阅读, 收藏, 编辑
摘要:在9月份的Mail List中还有一个message也是很有价值的。在Interactive的方式下,键入如下两行代码: >>>from System.Console import *>>>WriteLine("Hello,world!") 屏幕上并不会出现我们所期待的Hello,world! 倒是出现了一个True。如果将第二行改为WriteLine("{0}","Hello... 阅读全文

wx.NET——wxWidget大树的一片绿叶

2004-09-21 17:51 by FantasySoft, 8022 阅读, 收藏, 编辑
摘要:在关注IronPython的Mail List的时候,无意中看到了一个开源项目:wx.NET。这个项目致力于开发一个基于.NET的GUI库。或许大家对这个项目还不是很了解,但是作为这个项目的基础类库——wxWidget可是大名鼎鼎了。在wxWidget基础发展起来的GUI库也是数不胜数,有Java的实现版本wxJava,Perl的实现版本wxPerl,还有在Python社区中也十分... 阅读全文

比基础更基础的问题——关于二进制文件

2004-09-20 23:56 by FantasySoft, 1734 阅读, 收藏, 编辑
摘要:二进制文件,这个再基础不过的名词,正因为它的无处不在,或许没有人会关注它背后隐含的内容。其实我也一样,在写下这些文字之前,我也是认为二进制文件就像空气一样,平常得让人完全忽略了。 很偶然的,今天在写代码的时候使用了fopen函数: FILE * fopen (const char * filename, const char * mod... 阅读全文

IronPython的第三块鳞片

2004-09-18 15:54 by FantasySoft, 1503 阅读, 收藏, 编辑
摘要:已经两天没有见到IronPython那条小蟒蛇,你想念它了吗?今天就再跟大家说说它的事情吧。由于IronPython的老爸Jim的blog半天都不会更新一次,Mail List就成为所有的信息的来源了。9月份的Mail依旧热闹,而且很多热心的程序员对一些bug给出了自己的解决办法。 1、对于Interactive方式下class的定义,如下 >>> class Fa... 阅读全文

我的基础算糟糕得可以了

2004-09-17 20:50 by FantasySoft, 963 阅读, 收藏, 编辑
摘要:晚上正在津津有味地看着DirectX的文章,朋友通过MSN给我发来一个问题: 1 + 1/2 + 1/3 + 1/4 + ...... + 1/n怎么计算? 看到这个问题,我愣住了,好象曾经在什么地方看到过这样的一个问题,当时还看到了解答。可是现在怎么都想不起来了。我只好很不好意思地告诉我的朋友,我不知道该怎么计算。当我回复这条信息的时候,着实有点沮丧,... 阅读全文

IronPython的第二块鳞片

2004-09-15 23:54 by FantasySoft, 1573 阅读, 收藏, 编辑
摘要:今天花了两个小时的时间把users-ironpython.com Archives中8月份的Mail仔细的看了一遍,整体的感觉就是IronPython这条小蟒蛇真的太幼小了,确实需要一段很长的时间才能成长起来。当然,我们可以从它的主人Jim的Mail中体会到他抚养这条小蟒蛇所承受的压力以及他的决心。 8月份的Mail长达3900多行,在这些Mail当中,有提问的,有b... 阅读全文

MySql中的事务问题

2004-09-15 16:03 by FantasySoft, 2419 阅读, 收藏, 编辑
摘要:今天非常开心,因为终于将昨天一个让我很郁闷的问题解决了。事情是这样的,根据业务逻辑的要求,需要对两张数据表进行更新,为了保证数据的完整性,就需要使用transaction的概念了。如以下代码所示: conn.setAutoCommit(false);try { PreparedStatement insertStatement = conn.prepareStatement(... 阅读全文

一步一步的接近线程同步

2004-09-13 23:55 by FantasySoft, 912 阅读, 收藏, 编辑
摘要:前几天,我尝试着建立了第一个基于SDK的窗口之后,那个窗口就像是通向一片未知世界的通道一样。我推开窗,发现外面的世界真的很精彩,同时也很无奈,因为我依旧有着很多的迷惑。"问题男"老大指出我的程序应该使用GetMessage方法,这样会在没有消息的时候,线程会被Suspend。如果使用PeekMessage则会几乎耗尽所有的CPU时间。老大的回复促使我重新去看了一下MFC的框架中处理... 阅读全文

IronPython的伙伴——Boo

2004-09-12 21:59 by FantasySoft, 4966 阅读, 收藏, 编辑
摘要:带着IronPython和Python之间兼容性的问题,我拜读了Jim的blog,也查阅了很多资料。结果是没有找到答案,倒是有一个意外惊喜,因为发现了在.NET上IronPython并不孤单,除了先前就曾关注过的Python. For NET之外,现在又多了一个更Cool的伙伴——Boo。Boo这个项目来头也不小,她是开源社区CodeHaus在Language方面的两个项目之一,而... 阅读全文

IronPython的第一块鳞片(补充)

2004-09-12 13:16 by FantasySoft, 2319 阅读, 收藏, 编辑
摘要:昨天,带着坚定的决心开始去摸索IronPython身上的每一块鳞片了,而在前一篇post当中有一个最经典的例子——HelloWorld。如果你有尝试着在>>>提示符下敲入所有代码的话,你会发现代码输入至第三行,然后再按回车之后,出现了Exception,以致于无法继续下去。事实上,这样的操作在Python上面是一切OK的,另外一方面,如果你将那几行简单的代码写入一个.py文件(譬如... 阅读全文

MFC全接触(三)

2004-09-11 23:44 by FantasySoft, 2721 阅读, 收藏, 编辑
摘要:昨天"问题男"老大给我的那篇post:噢,我的第一个基于SDK的窗口写了回复:“为何要PeekMessage呢?这样会令你的程序占用能占用的所有cpu时间,不如GetMessage,在没有消息时线程将被suspend。”这个回复让我思考了很久,也让我有了更多收获。真的很喜欢这种感觉,自己写下了一些简单而不成熟的想法,高手看到了又不吝赐教,正是大家这种知识共享的精神让我每天都有莫大的收... 阅读全文

IronPython的第一块鳞片

2004-09-11 03:35 by FantasySoft, 2417 阅读, 收藏, 编辑
摘要:今天在写blog的时候,我看到了链接栏上的两位已经被冷落了好久的朋友:Python和Twisted。回想一下自己的计划,既然已经付出了学习的努力,为什么不坚持下去呢?我想是时候重新去关注Python,关注Python与.NET平台的联姻了。首先自己是一个动态脚本语言的疯狂爱好者,javascript就是自己很喜爱并且使用得比较熟练的语言之一,虽然大家对她有着或多或少的偏见;其次,自... 阅读全文

噢,我的第一个基于SDK的窗口(续)

2004-09-10 23:59 by FantasySoft, 784 阅读, 收藏, 编辑
摘要:首先,我要自我检讨一下,在学习的过程对于细节问题没有足够的重视,以致于忽视了问题产生的根源,同时也对自己解决问题的方法感到惭愧。期待自己能够尽快改正这些缺点,取得更大的进步。 我想,通常一个问题存在的原因不仅仅是单个方面的,它有可能是多个因素共同影响产生的结果。在面对问题的时候,应该冷静下来列举出导致问题发生的几种可能性,接着逐个排除,如果可... 阅读全文

噢,我的第一个基于SDK的窗口

2004-09-10 18:14 by FantasySoft, 3662 阅读, 收藏, 编辑
摘要:昨天看WinMain函数的修饰符WINAPI,看得眩晕,今天专注于WinMain函数的过程也不轻松。为了弄明白一个窗口从创建到销毁的过程,也是大费周章。不过还好,能够看到自己建造的第一个最原始的窗口,总算有了点满足感。 创建一个窗口涉及了几个概念:HWND、WNDCLASS(WNDCLASSEX)、RegisterClass(RegisterClassEx)和Crea... 阅读全文

一发不可收拾的学习

2004-09-09 22:12 by FantasySoft, 820 阅读, 收藏, 编辑
摘要:昨天还在感叹自己面对Windows开发就像一个傻瓜,今天随便找了个突破口,期待能够将自己掌握的知识联系起来,结果就是一发不可收拾,越看越迷糊,越想越凌乱。不管怎么样,先将今天看到的新面孔记个流水帐吧。 首先,突破口就是WinMain函数的修饰符WINAPI。从WINDEF.H这个头文件中,我得知WINAPI实质上就是__stdcall。那么什么是__stdcall呢?... 阅读全文

无以规矩,不成方圆

2004-09-09 01:37 by FantasySoft, 1788 阅读, 收藏, 编辑
摘要:虽然,我相信技术之间有很多相通的地方,但是我不得不开始承认从Java到C++,从J2EE到DirectX,从高层应用开发到底层开发,这个跨度太大了。不论从WinMain函数的两个修饰符PASCAL和WINAPI中,还是从可以通过数种方法获得一个DirectDraw7接口中,我都发现了我所面对的世界是那样的无序,或者说,是有非常非常多的规则,我还没有办法及时去follow。不管怎么样... 阅读全文

由QueryInterface方法想到的

2004-09-08 17:22 by FantasySoft, 2493 阅读, 收藏, 编辑
摘要:昨天向COM的世界迈出了第一步,虽然没有想象中那样举步维艰,却也走得不轻松。在初步了解DirectX的基础——COM之后,再次将注意力转到DirectX上来。正如一篇介绍COM的文章所说的,使用COM远比了解COM要简单得多。确实,在DirectX中使用COM都是那样的自然,跟一般函数的调用并无二致。但是,使用起来很自然还是没有阻止自己脑袋瓜中不断涌出的问号。大家看以下代码: L... 阅读全文

关于虚函数的两个例子

2004-09-07 23:57 by FantasySoft, 1206 阅读, 收藏, 编辑
摘要:晚上看了半天的COM,而里面又是满篇的虚函数。尽管自己对于虚函数有一定的了解,但是远离C++也有一些时日,看来补补课是很有必要的了。 打开自己收藏夹,目光停留在周星星老大经常出没的地方:vcKBase。于是,从这个宝库中找到了自己需要的两篇文章:C++中的虚函数(一)和C++实践系列>C++中的虚函数(virtual function)。 两篇文章都写得... 阅读全文

跨入COM世界的第一步

2004-09-07 21:11 by FantasySoft, 740 阅读, 收藏, 编辑
摘要:我们都知道.NET被称为更好的COM,而OLE、ActiveX等技术是以COM为基础的,大名鼎鼎的DirectX也大量使用了COM。尽管.NET战略让COM的地位日益下降,我们还是需要将足够的注意力放到COM的上面。由于工作的需要,我要开始关注DirectX的内容了,而COM又是基础,了解COM就成了首要的任务。 以前觉得COM很神秘,只是知道一些基本的概念:COM是... 阅读全文

MFC全接触(二)

2004-09-05 23:56 by FantasySoft, 2173 阅读, 收藏, 编辑
摘要:上一次和MFC邂逅,我和她谈得很投机。[1]分别的时候,她还依依不舍地对我说:“别忘了给我消息哦。”忙了一个月了,直到这几天,我才想起她告诉我的那句话。今天终于忍不住要给她发条消息了,但是我该怎么发呢?完了,她都没有告诉我怎么发呢?看来又得自己努力了。 我们都知道Windows应用程序是消息驱动(Message-Driven)的。而我们在编写应用程序的时候也是建立起消... 阅读全文

两天四疑问

2004-09-03 10:56 by FantasySoft, 1006 阅读, 收藏, 编辑
摘要:9月份的前两天,我仍然做着网站开发的工作。在开发的过程中,遇到了不少的问题,现在将典型的几个列示如下,供各位参考。 第一个疑问是关于Javascript的,大家看一下以下的代码: 代码很简单,如果按了"Click Me"按钮后,是否会如愿弹出一个对话框呢?事实上,是不会的。原因是button的... 阅读全文

搞笑的textarea标签

2004-08-31 18:17 by FantasySoft, 1873 阅读, 收藏, 编辑
摘要:很久没有用这个textarea玩意了,因为要设计一些页面,硬是从记忆的最底层挖出了这个标签,结果折腾了老半天,等到发现问题所在之后,真的令我哭笑不得。 一开始,由于习惯了写XML,就随手写下了这样的HTML代码: 结果是,textarea后面的HTML都当作内容出现在了文本域里面了。这是第一个搞笑的地方,不支持常见的标记结束方式; 接着,我给这个te... 阅读全文

对于ASP.NET与J2EE框架的一点想法

2004-08-27 20:01 by FantasySoft, 3074 阅读, 收藏, 编辑
摘要:没有用ASP.NET来开发Web Application也有一段时间了,虽然她的轮廓在我的记忆中已经开始模糊,但是她的美丽还是深深烙在我的心中,不曾磨掉。 让我再一次想念ASP.NET源于在Web Application要实现的一个功能:从数据库中筛选出一些数据,并显示出来。聪明的您或许会觉得这个功能很简单,是的,真的很简单,不管是ASP.NET还是使用JSP+Ser... 阅读全文

WebWork深度探索之Session

2004-08-26 15:38 by FantasySoft, 6590 阅读, 收藏, 编辑
摘要:昨天上午刚写完WebWork的Pitfall[1],特别提到了文档的问题,结果下午就深受其害了。其实,我想做的功能很简单,就是在页面上判断一下某个字段在Session中是否存在,如果存在则显示内容A,否则就显示内容B。原本以为可以很快的找到这个方面的参考资料,结果是找了一个下午都没有从官方文档中找到相应的说明,最终还是通过Mail-List Archive找到了解答。 ... 阅读全文

WebWork深度探索之Pitfall

2004-08-25 14:31 by FantasySoft, 3251 阅读, 收藏, 编辑
摘要:在使用WebWork进行开发的过程中,她的种种特性:简约为先的设计原则,IOC的实现,Interceptor的使用,Command模式的使用,利用OGNL作为其Expression Language,完备的类型转换,简便的配置以及完备的Validation都深深打动了我,让我将其列为开发Web Application的第一framework。然而,金无足赤,强大的背后却有着或多或... 阅读全文

URL与RequestDispatcher

2004-08-21 23:58 by FantasySoft, 2982 阅读, 收藏, 编辑
摘要:今天照例继续自己的网站建设之旅,原本以为可以大有进展,结果又是被一个问题弄得很郁闷。通常在一个表单元素(form)中,action属性值定义了接收及处理表单元素的URL,而这个URL是会被显示在IE的地址栏中的。特别的,在WebWork中是由.action去处理用户提交表单,如,那么当用户点击submit按钮提交了表单之后,register.action 也就出现在IE 的地址栏中... 阅读全文

建网站的小Tips

2004-08-20 23:58 by FantasySoft, 639 阅读, 收藏, 编辑
摘要:这几天都在忙着做一个小网站,从网页美工到后台处理程序都要自己来,弄得我晕头转向的。还好,已经接近尾声了。我也可以停下来,稍事休息一下,跟各位侃侃这几天建站的一些感受。 1、需要有一套好的配色方案;在网站的美工设计当中,最麻烦的当属配色了。一个网站是极少只使用一种颜色的,因此总会存在几种颜色搭配的问题。面对这个问题,或许真的是需要一些美工的天赋了,不过,我... 阅读全文

WebWork深入探索之初见端倪

2004-08-19 16:35 by FantasySoft, 2305 阅读, 收藏, 编辑
摘要:使用WebWork进行Web Application开发也有一个星期了,虽然对于WebWork框架本身的设计思路感觉还是一片模糊,但是我开始看到了一丝的光线。 虽然在前文提出的问题[1],现在并没有一个很好的答案,但是在WAF和WebWork的比较之中,我发现了越来越多的差别。尽管这些差别并不是完全由两者设计的差异造成的,我想或多或少会有一定的联系。就让我们继续在比较... 阅读全文

WebWork深度探索之标签库(续)

2004-08-16 15:58 by FantasySoft, 4314 阅读, 收藏, 编辑
摘要:昨日对WebWork的标签库进行了小小的研究[1],原本以为将问题解决了,谁知问题仍然是存在。如果我的代码是写成这样的话: //显示登陆界面 登陆成功! 运行的结果是什么都没有显示。开始有点蒙了,想了想这个结果应该是正常的,毕竟在一开始的时候,ValueStatck中确实没有hasLogined这个值,又如何去做条件判断呢?遂... 阅读全文

所谓的Dumb Question

2004-08-15 17:16 by FantasySoft, 1175 阅读, 收藏, 编辑
摘要:为了能够更好的理解WebWork中的处理机制,我拜读了几位牛人写的一本书《Java Open Source Programming With XDoclet, JUnit,WebWork, Hibernate》[1] 。几位牛人在Understanding Design and Deveopment Philosopies章节中提出了三条开发项目的principle: ... 阅读全文

什么是Law of Demeter

2004-08-15 14:22 by FantasySoft, 1962 阅读, 收藏, 编辑
摘要:今天一如昨日,继续对WebWork进行小打小闹式的研究。在听了Raimundo老大一番醍醐罐顶般的讲解之后,我觉得要理解WebWork(XWork)巧妙的设计,还是得从IoC看起。于是,我开始阅读WebWork官方文档中关于IoC的部分。 在阅读的过程中,我发现了一个有趣的短语:Law of Demeter。文档对IoC的优势的描述,有这样一条: Adh... 阅读全文

WebWork深度探索之标签库

2004-08-15 00:28 by FantasySoft, 6823 阅读, 收藏, 编辑
摘要:由于WebWork本身提供了一套自定义的标签库,而且该标签库支持OGNL,因而在做注册登陆功能的时候,也将其标签库体验了一把。 以前在使用WAF做Web应用程序的时候,会在HtmlAction中的doEnd方法将所要显示的内容使用SetAttribute方法存入request中,再dispatch(分发)到不同的页面,页面上或者通过getAttribute方法或者使用... 阅读全文

WebWork深度探索之号外

2004-08-14 09:03 by FantasySoft, 1865 阅读, 收藏, 编辑
摘要:昨天开始对WebWork进行了一些初步的探索[1],虽然进展缓慢,但是在阅读与分析其源代码的时候,还是有颇多的收获。这些所得并不属于探索WebWork本身,因而将此篇列为号外。 在ActionFactory类中,有如下代码: public abstract class ActionProxyFactory { static ActionProxyFactory ... 阅读全文

WebWork深度探索之盲人摸象

2004-08-12 23:54 by FantasySoft, 2791 阅读, 收藏, 编辑
摘要:昨天尝试着利用WebWork做了一个小功能[1]之后,对她有一点点的了解,但是她留给我的疑问实在太多了。于是,我决定从今天开始对WebWork来一次全方位的探索(因水平有限,这个探索的过程可能会很长)。 WebWork作为一个Web应用框架,拥有成百上千的类,想要对她有个整体了解,我该从哪里开始呢?还记得在Web.xml中定义的唯一的一个servlet吗?而这个ser... 阅读全文

WebWork初体验

2004-08-11 17:43 by FantasySoft, 12891 阅读, 收藏, 编辑
摘要:在这篇ASP.NET 中Session 实现原理浅析[2] 状态管理器Blog中,Flier老大向大家推荐了Java中几种Cache的实现,于是我就按图索骥,首先是找到OSCache的老家:OpenSymphony。哇,这里的资源真多啊,简直就是一个宝藏。为什么原来就没有发现呢?感谢Flier老大了! 在OpenSymphony的主页上,我看到了两个让我觉得很亲切的项... 阅读全文

我该怎样shuffle呢

2004-08-10 01:47 by FantasySoft, 1181 阅读, 收藏, 编辑
摘要:在STL的Algorithm中有着这样的一种算法:mutating algorithm,这一类算法的主要作用是改变Sequence Container中元素的顺序。而改变元素顺序的方法有好几个,如将元素反序(reverse),将元素位置循环旋转(rotate)等,而最吸引我的就是能够产生随机序列的方法了(random_shuffle)。 于是,我写了一段代码是试验一下... 阅读全文

让人头痛的Vector(思索篇)

2004-08-08 00:13 by FantasySoft, 1909 阅读, 收藏, 编辑
摘要:在让人头痛的Vector(提问篇)给大家留了一个问题,hyifeng老大说对了,如果使用vec[0] = 0这种方式的话,"The vector is empty!"是会被打印出来的。然而使用push_back(0),则不会打印出来。 这是为什么呢?首先,empty()函数的值就是布尔表达式vec.size() == 0的返回值,既然"The vector is em... 阅读全文

让人头痛的Vector(提问篇)

2004-08-07 16:55 by FantasySoft, 12228 阅读, 收藏, 编辑
摘要:在写完了此Vector非彼Vector这篇随笔之后,带着留下来的一个问题——Java中的Vector与STL中Vector的区别,我开始集中精力去了解STL中的Vector了。原本以为,有大名鼎鼎的好书《C++ Standard Library, The: A Tutorial and Reference》坐镇,进度应该会很挺快的,结果是被一个小问题绊倒,摔得满天星星,到现在还头痛... 阅读全文

模板——泛型和STL的基础

2004-08-07 01:01 by FantasySoft, 947 阅读, 收藏, 编辑
摘要:所谓泛型,从字面上可以猜想,就是泛化的类型(型别、type)。那么是在什么时候,类型被泛化了呢?我们知道,在编写一个函数的时候,通常都会知道参数(parameter)是什么类型的,很多时候这是理所当然的事情,连类型都不知道,怎么对传入参数进行操作呢?面对这样类似的疑问,C++总会展露出她迷人的笑容,让人消魂。这次,她用温柔的声线告诉我:“我可是能实现可以接受任何适当类型参数的函数哦。 ... 阅读全文

Javascript 日期校验完备全过程

2004-08-06 08:34 by FantasySoft, 6483 阅读, 收藏, 编辑
摘要:在原来公司的项目组工作的过程中,自己实现了一个用于校验用户输入数据合法性的Javascript Validation Framework。在这个Framework实现的过程中,在参考了一些网上资源之后,自己写了一个日期校验的函数,满心以为这个校验函数已经够完备了,结果还是经历了多次的修改。 function validateDate(year, month, day) { ... 阅读全文

此Vector非彼Vector

2004-08-05 15:51 by FantasySoft, 2981 阅读, 收藏, 编辑
摘要:在学习STL的过程中,我发现了一个熟悉的面孔——Vector。之所以熟悉,是因为Vector是Java核心类库中的Collection container的一种,然而在我近一年的开发历程当中,我从来都没有使用过Vector,甚至对其几乎是一无所知,只是知道这是JDK中遗留的Collection container,而且在开发过程中也不提倡使用它。花心的我在看着STL的Vector的... 阅读全文

MFC 全接触 (一)

2004-08-04 01:59 by FantasySoft, 3211 阅读, 收藏, 编辑
摘要:以前对于MFC的了解十分肤浅,只知道MFC = Microsoft Foundation Class,后来还道听途说了很多关于她的风流韵事。有人说她如维纳斯一般美丽,也有人说她和犹大一般丑恶。现在为了手头上的事情,我要从新认识这位也许风华不在的女子了,不管她长得如何,我都得去揭开她那对于我来说神秘的面纱。 还是从打招呼开始吧,以免把她吓着了。于是,我战战兢兢的跟MFC... 阅读全文

r-value(Rvalue) 和l-value(Lvalue)

2004-08-02 11:44 by FantasySoft, 3887 阅读, 收藏, 编辑
摘要:在写引用类型与指针的比较这篇随笔的时候,我写了一些试验性的代码以检验一些结论是否正确。 首先,引用是一个const的指针(注意不是指向const object的指针),所以在声明一个引用的同时必须对这个引用进行初始化。因此 int &b; 编译不能通过是自然而然的事情,错误信息是:references must be initialized。多事的我就想,既然是co... 阅读全文

朝得银弹,夕死可矣(续)

2004-08-01 15:33 by FantasySoft, 1194 阅读, 收藏, 编辑
摘要:[前言]:今天是7月30日,离开公司也正好一个星期。而今天也是我呆在深圳的最后一天,再过不到24小时就要踏上北上的征途了。离职之后,在深圳的窝里呆了几天,对于软件开发,尤其是项目的管理,有了一些新的想法,遂延续前篇[1],将项目中的不足之处记于此,以作日后警醒之用。 1、需求不明确;项目进行到现在,也有一年有余了,而进行需求分析和概要设计的时间也有近一年了。虽然我们... 阅读全文

傲慢与偏见

2004-07-29 23:30 by FantasySoft, 575 阅读, 收藏, 编辑
摘要:还记得三月份的时候,XML之父提出了.NET's three flaws。那时看了之后,写下了这样的文字:(别嫌它旧哦,呵呵~~~) theServerSide.com一直都是一个很热闹的地方,很多的thread都有长长的回复,尤其是一些牛人发起的thread。 最近最热闹的Thread应该当属关于XML之父Tim Bray 指出的.NET th... 阅读全文

引用与指针的比较

2004-07-28 19:14 by FantasySoft, 6009 阅读, 收藏, 编辑
摘要:在给函数参数传递方式作总结的过程中,让我对引用类型有了更进一步的认识。引用类型(reference)是在C++特有的一种新类型(与C相比较),在很多情况下,它提供了与指针操作同等的能力。而且在很多情况下,使用引用是更好的方式。 既然我们在这里要比较指针与应用,那么首先得清楚引用的具体含义。引用是一个const的指针,即一旦引用被赋值了,就不允许改变了,这... 阅读全文

ASP.NET 历险 (二)

2004-07-28 15:07 by FantasySoft, 958 阅读, 收藏, 编辑
摘要:既然都贴了第一篇出来丢脸了,就不介意将第二篇再贴出来了。毕竟这是自己在做实际开发遇到的一些问题,不过,这已经是一年前的问题了,呵呵~~ 首先,要感谢CSDN的编辑们,因为是你们让我第一次发表的文章的标题在CSDN的主页上呆了好几天,也让我感激涕零了好几天;接着,要感谢浏览过我的文章的三千多的朋友,不管您对我的文章报以怎样的态度,或者赞许认可,或者嗤之以鼻,毕竟您花费... 阅读全文

ASP.NET 历险 (一)

2004-07-28 13:56 by FantasySoft, 1298 阅读, 收藏, 编辑
摘要:这是我一年前写下的文章,最近再次看回来的时候,却有很多新的思考。虽然写得很烂,但是抱着敝帚自珍的想法,决定还是贴一下,以搏君一笑了。 第一次在CSDN发文章,感觉真的是诚惶诚恐。毕竟像我这样一个菜鸟级人物在众高手面前讲述自己的经验无异于班门弄斧,关公面前耍大刀。不过,这一系列文章记述的是我自己的一些经历,是自己在对ASP.NET了解甚少的情况下,接下了建设两个网站... 阅读全文

Summary of function parameter

2004-07-14 02:33 by FantasySoft, 3075 阅读, 收藏, 编辑
摘要:对C++这位入得厨房,出得厅堂的MM说爱你说了好几年,却从来没有为她真正献出我的真心;当我看到C#那青春而诱人的身段的时候,我毫不犹豫的拜倒在她裙角下,而狂热的关系仅通过ASP.NET 维系了几个月;花心的我随后跟如斯佳丽般简约唯美的Java度过了半年多疯狂开发的光阴。 身心疲惫的我重新回到了C++的怀抱,我发现她竟然是那样的Attractive,那样的风华绝代。我会... 阅读全文

在String的面前丢脸

2004-06-18 00:39 by FantasySoft, 2553 阅读, 收藏, 编辑
摘要:重返C++的世界,自然离不开标准库,首当其冲的是std::string了。而我这两天硬是在string的面前不断丢脸。sigh~~ std::string hello = "Hello"; std::string message = hello + ", world" + "!"; std::string anotherMessage... 阅读全文

朝得银弹,夕死可矣!

2004-06-04 00:49 by FantasySoft, 3376 阅读, 收藏, 编辑
摘要:孔子云:朝闻道,夕死可矣! 我想说,朝得银弹,夕死可矣!可是,有银弹吗?没有! 虽然我步入软件开发行业才半年有余,但是却有幸参与了一个开发团队有80多人的大型项目的开发。作为一个初出茅庐者,本该抱着学习的心态,学习项目成功的经验,可是我却在挫败的痛苦不断地总结,不断的幻想。通过这半年多的开发体验,我得出了一个结论:项目中的人的因素是最重要,而作为项目管理者,能够打造... 阅读全文

.NET上的Python

2004-05-25 20:30 by FantasySoft, 2510 阅读, 收藏, 编辑
摘要:最近对动态语言产生了不小的兴趣,尤其是Python和Ruby。想想Python在JVM上已经有了相当成熟的实现,那么在.NET上呢?注意力定位到了Zope.org还有activeState.com,两个很不错的产品:Python for .NET 和 Visual Python。 Python for .NET 是免费的,所以,我决定尝试一下。而Visual Pyt... 阅读全文