2008年09月27日

原创 IDE综合症收藏

前些日子猛然间接到开发POS机的任务。没有完整的IDE,索性就学着用vim,也算是技能锻炼吧。没几天,就看到了两位大牛在blog里展示无鼠标的魅力(这个,这个,这个,和这个,这个,这个,这个)。特别是风云,直接告诉我们不依赖于IDE的方法和好处。令人震撼。从另一个角度来看,不依赖于IDE带来的不光是方便、简洁,以及geeky。更重要的,它将使得我们打下更扎实的基础。而那些离了IDE就活不成的人,总存在着一些缺陷。阅读全文>

发表于 @ 2008年09月27日 10:50:00|评论(loading...)|编辑|收藏

2008年09月18日

原创 三只小猪收藏

小时候听说过三只小猪的故事,隐约记得故事是讲三只小猪用不同方法造房子,对抗老狼。这些天做软件,遇到一个无比简单的问题,但在三种不同的语言中,却有着截然不同的解法。阅读全文>

发表于 @ 2008年09月18日 19:16:00|评论(loading...)|编辑|收藏

2008年09月14日

原创 程序员应该学开车收藏

说实在的,过去从来也没有想到这辈子还会学会开车。没学会开车之前,有时做梦开车,只不过更像开飞机。现在学会开车了,结果经常做梦找不到车,或者找不到地方停车。:)
闲话少说,这会儿想说说开车和编程之间的关系。用我外公(抗战前就开车了,开了50年了)说:开车很简单,两分钟就能学会。但是要开好车,则需要一辈子。
几年前我学了开车,尽管不是两分钟就学会,但在同组的几个人中,学的是最快的(如果再早十年,就更快了,年纪小学东西快)。开车实际上是一个颇为复杂的并发操作,刚开始的时候总是让人手忙脚乱的(挨师傅骂,是非常正常的事)。
举个例子,开车到一个路口,打算右转弯。首先开方向灯,然后减速。但是不能随随便便地马上就能打把转向了。作为驾驶员,保证行人和自行车的安全是非常重要 的。于是,在打把之前,先得从右反光镜里观察右侧的非机动车。同时眼睛还要扫视车头右侧的人和自行车。在右前方没有阻挡的情况下,开始转弯。但这还没完, 因为减速,必须换档。如果垂直方向的道路是绿灯,那么还必须注意避让那个方向的车和人。还有一个小麻烦,驾驶室左前方的挡风玻璃立柱往往会影响视线,形成 盲区。阅读全文>

发表于 @ 2008年09月14日 13:58:00|评论(loading...)|编辑|收藏

2008年08月23日

原创 ANN vs BNN收藏

毋庸置疑,ann是对bnn的模拟。(也有人不这么认为,打算闹独立。且不说版权问题,认为自己能够牛过上帝他老人家,也是不应该的)。这两天奥运,心血来潮,想让ann和bnn PK一下,看看咱们人类同上帝他老人家之间还差多少。阅读全文>

发表于 @ 2008年08月23日 16:55:00|评论(loading...)|编辑|收藏

2008年08月02日

原创 GP技术的展望——C--收藏

C++的复杂是公认的,尽管我认为在人类的聪明智慧之下,这点复杂压根儿算不上什么。不过我得承认,对于一般的应用而言,C++对程序员产生的压力还是不小的。毕竟现在有更多更合适的选择。仅仅承认复杂,这没有什么意义。我不时地产生一个念头:有什么办法既保留C++的优点,而消除它的缺点和复杂。我知道 D语言在做这样的事情。但是,D更多地是在就事论事地消除C++的缺陷,而没有在根本上消除缺陷和复杂性。 一般而言,一样东西复杂了,基本上都是因为东西太多。很显然,C++的语言特性在众多语言中是数一数二的。于是,我便想到或许把C++变成“C--”,可以治好C++的复杂之病。在探讨这个问题之前,让我们先从C出发,看看C++为何如此复杂。阅读全文>

发表于 @ 2008年08月02日 20:47:00|评论(loading...)|编辑|收藏

2008年07月26日

原创 GP技术的展望——先有鸿钧后有天收藏

GP技术的展望——先有鸿钧后有天
莫华枫

    自从高级语言出现以来,类型始终是语言的核心。几乎所有语言特性都要以类型作为先决条件。类型犹如天地,先于万物而存在。但是,是否还有什么东西比类型更加原始,更加本质,而先于它存在呢?请往下看。:)

泛型和类型

    泛型最简短最直观的描述恐怕应该是:the class of type。尽管这样的描述不算最完备,但也足以说明问题。早在60年代,泛型的概念便已经出现。最初以“参数化类型”的名义存在。70年代末期发展起来的 恐龙级的Ada(我的意思不是说阅读全文>

发表于 @ 2008年07月26日 19:35:00|评论(loading...)|编辑|收藏

2008年02月26日

原创 C++的营养——swap手法收藏

上一篇《C++的营养——RAII》中介绍了RAII,以及如何在C#中实现。这次介绍另一个重要的基础技术——swap手法。阅读全文>

发表于 @ 2008年02月26日 15:13:00|评论(loading...)|编辑|收藏

2008年02月16日

原创 C++的营养——RAII收藏

C++可以看作一种成分复杂的食物,对于多数程序员而言,是无法完全消化的。正因为如此,很多程序员认为C++太难以消化,不应该去吃它。但是,C++的营养不可谓不丰富,就此舍弃,而不加利用,则是莫大的罪过。好在食物可以通过加工,变得易于吸收,比如说发酵。鉴于程序员们的消化能力的差异,也为了让C ++的营养能够造福他人,我就暂且扮演一回酵母菌,把C++的某些营养单独提取出来,并加以分解,让那些消化能力不太强的程序员也能享受它的美味。:) 阅读全文>

发表于 @ 2008年02月16日 08:11:00|评论(loading...)|编辑|收藏

2008年02月14日

原创 瓦格纳的排场收藏

瓦格纳的排场 这个春节过的实在无趣。走完亲戚,招待完亲戚,逛街买好东西,就没多少时间了。看书的兴致也没了。想写点什么,总是没法集中精力。实在腻味了,把以前下载的瓦格纳的歌剧《尼伯龙根指环》拿出来看看。自从下载,没怎么好好看过,这回算是补上了。阅读全文>

发表于 @ 2008年02月14日 11:24:00|评论(loading...)|编辑|收藏

2008年01月25日

原创 当GPL遇上MP收藏

当GPL遇上MP 莫华枫     GPL,也就是General Purpose Language,是我们使用的最多的一类语言。传统上,GPL的语法,或者特性,是固态的。然而,程序员都是聪明人(即便算不上“最聪明”,也算得上 “很聪明”吧:)),往往不愿受到语法的束缚,试图按自己的心意“改造”语言。实际上,即便是早期的语言,也提供了一些工具,供聪明人们玩弄语法。我看的第一本C语言的书里,就有这么一个例子,展示出这种“邪恶”的手段:      #define procedure void      #define begin {      #define end }    然后:  阅读全文>

发表于 @ 2008年01月25日 15:09:00|评论(loading...)|编辑|收藏

2008年01月06日

原创 GP技术的展望——道生一,一生二收藏

    长期以来,我们始终把GP(泛型编程)作为一种辅助技术,用于简化代码结构、提高开发效率。从某种程度上来讲,这种观念是对的。因为迄今为止,GP技术还只是一种编译期技术。只能在编译期发挥作用,一旦软件完成编译,成为可执行代码,便失去了利用GP的机会。对于现在的多数应用而言,运行时的多态能力显得尤为重要。而现有的GP无法在这个层面发挥作用,以至于我这个“GP迷”也不得不灰溜溜地声称“用OOP构建系统,用GP优化代码”。    然而,不久前,在TopLanguage group上的一次讨论,促使我们注意到runtime GP这个概念。从中,我们看到了希望——使GP runtime化的希望——使得GP有望在运行时发挥其巨大的威力,进一步为软件的设计与开发带来更高的效率和更灵活的结构。   阅读全文>

发表于 @ 2008年01月06日 17:15:00|评论(loading...)|编辑|收藏

2007年12月17日

原创 被误解的C++——汉尼拔收藏

被误解的C++——汉尼拔 by 莫华枫     公元前216年8月2日,意大利东部平原,一个叫做坎尼的地方,两支大军摆开阵势,准备决一死战。一方是由保罗斯和瓦罗两位执政官率领的罗马人,另一方则是伟大的军事天才汉尼拔*巴卡率领的迦太基军队及其同盟。罗马人超过8万,而迦太基仅有4万余人。然而到了傍晚,罗马人被彻底击败,7万人被杀,仅有少数得以逃脱。这就是著名的坎尼会战。经此一役,(外加先前进行的特利比亚和特拉西梅诺湖会战),罗马人元气大伤,成年公民损失达五分之一。部分城邦背叛罗马,西西里也发生起义。罗马已经到了摇摇欲坠的地步。     汉尼拔的这些胜利,完全得益于先前的一次异乎寻常的远征。公元前218年,汉尼拔率领军队,从新迦太基城(西班牙)出发,翻越比利牛斯山,进入南高卢地域。在他面前有两条路可走,翻越阿尔俾斯山,或者沿海岸进入意大利。但是,当时罗马人已在沿海地区部署了两支部队,准备拦截汉尼拔。而且,罗马人的海军优势,使得他们可以阅读全文>

发表于 @ 2007年12月17日 11:26:00|评论(loading...)|编辑|收藏

2007年12月06日

原创 OOP的黄昏收藏

本文来源于TopLanguage Group 上的一次讨论(这里 ,这里 和这里 )。pongba提出:C++的抽象机制并不完善,原因是为了性能而做的折中,未来随着计算能力的提高到一定程度,人们就能够忽略更好的抽象所带来的负面效应。就此诸老大各自提出高见,受益良多啊。经过讨论,我基本上理解了pongba的想法。但我觉得等待计算机的性能提高太消极了。我相信随着编程技术的发展,这种最优抽象造成的性能损失将会越来越小。这种途径将会更快地让人们接受最优抽象形式。阅读全文>

发表于 @ 2007年12月06日 17:09:00|评论(loading...)|编辑|收藏

2007年11月15日

原创 mfc大幅更新原因的推测收藏

vc2008中,mfc将大幅度地更新。我猜测更新mfc的原因,很可能mfc中的一些代码阻碍了vc的进一步发展,不得不加以更新。阅读全文>

发表于 @ 2007年11月15日 15:09:00|评论(loading...)|编辑|收藏

Csdn Blog version 3.1a
Copyright © longshanks