18 wingfiring

尚未进行身份认证

暂无相关简介

等级
TA的排名 1w+

启用新的博客地址https://icerote.net/blog/

转移到个人网站https://icerote.net/blog/。以后不会再到CSDN写blog了万一同步回来呢?。

2014-03-22 18:40:39

梦断代码--一个程序员的自白 (源代码)

源代码在此,代码还是有很多问题。欢迎指正和批评,但请勿人身攻击。https://github.com/wingfiring/xirangzip包

2012-11-02 10:52:09

梦断代码--一个程序员的自白(九 完)

本文谢绝转载 http://www.weibo.com/0x2b    Protein的性能瓶颈主要是在runtime,而runtime是基于FBX来写的。FBX已经停止开发,而且改动代价太高,因此,美国那边打算把把FBX从runtime中去掉。这是一个大工程。当时Protein的新经理M也刚来不久,我们都有点担心资源不够。这时,美国的架构师也忙于新的项目,也没时间给出Protein的新设

2012-10-29 13:03:43

梦断代码--一个程序员的自白(八)

本文谢绝转载 http://www.weibo.com/0x2b因为最初我只是想证明我的那个可扩展的类型系统,因此我给ADPLite改了个名字,叫“息壤”,喻意类型系统会像息壤一样,能够生长。到11年夏天的时候,息壤已经有了一些东西:    1.DBC库--这个是以前的工作。除了pre-condition,post-condition,invariant三个宏之外,允许用户自定义和设置

2012-10-18 14:30:37

梦断代码--一个程序员的自白(七)

本文谢绝转载 http://www.weibo.com/0x2b    大约是各方面对ADP的反响都不大好,ADP要想推销自己,必须找到新出路。最终,目标锁定到Protein,让Protein通过ADP来存储材质包。对于Protein项目,我至今也不知道最初的立项缘由。Protein后来被定位成一个内容(材质)管理库,为公司的所有产品提供统一的材质管理。最早,Protein是基于FBX(一

2012-10-15 10:37:41

梦断代码 --一个程序员的自白(六)

本文谢绝转载 http://www.weibo.com/0x2bPS:这一章水的比较狠,就当看盗版网络小说了吧。见谅。   我对公司有一个很不满意的地方,就是缺乏像样的职业培训。我来到这里之后一直是传授东西给别人--当然我对此并不抗拒,还很乐意--自身的水平却没什么提高。于是我打算还是学点东西。我把业余的时间都拿来玩Linux和开发板。我工作中接触的第一个操作系统就是Unix,

2012-09-27 22:02:54

梦断代码--一个程序员的自白(五)

本文谢绝转载 http://www.weibo.com/0x2b梦断代码--一个程序员的自白(五)    O同事给我的回复中,除了强调控制内存使用外,原来还指望通过扩展string的实现来支持数组。他真是太高估我的结果了。但是同时,他又提出了一些让我难以理解和接受的内容:不喜欢暴露新的接口,数据必须保持为char*形态,模板不能跨边界分配和销毁。站在他预设的,str

2012-09-22 16:43:09

梦断代码--一个程序员的自白 (四)

本文谢绝转载梦断代码--一个程序员的自白 (四)   一个周末过去,对于我所回复的,如何在运行时存储字符串的问题的解决方案,O也有了回应。O对我的方案非常不满,认为我的方案是他之前就考虑过的,我完全没有解决他所担心的问题。应该说,这次合作不愉快,我也是有很大责任的,主要是在沟通方面。在之前的一周时间内,我除了问他问题,他回答,就没有真正双向的交流。他所担心的问题之一是内存碎片化,而我对

2012-09-19 15:58:32

梦断代码--一个程序员的自白 (三)

本文谢绝转载梦断代码--一个程序员的自白 (三)    "程序员是工程师吗"?这是我在大约10年前初次接触敏捷方法时,让我有醍醐灌顶之感的一个问题。那个时候,称呼程序员为码农,IT民工,吃青春饭的,周围充斥着三十岁后能不能做技术的质疑。这个问题让我真正想明白自己从事的是怎样的一个职业。已经忘了最初在哪里看到这篇文章的,很幸运,我今天在Robert Martin的那本《敏捷软件开发》

2012-09-10 11:23:27

梦断代码--一个程序员的自白 (二)

本文谢绝转载梦断代码--一个程序员的自白 (二)    AIRMax是一个庞大的项目计划,需要3~5年的时间来完成。这个缩写是取公司的主打产品首字母和特征单词组成的,也意味着这个项目要影响到所有这些支柱产品。公司的这些产品都是不同领域的设计软件。这个项目计划在三个方面做资源整合,即为所有产品提供统一的程序库或者框架:程序外观(GUI),渲染(主要是3D引擎),和文件格式(保存设计成果)

2012-09-03 14:33:51

梦断代码--一个程序员的自白 (一)

本文谢绝转载梦断代码--一个程序员的自白 (一)                                 --当一个有价值的人或事物逝去,缅怀他的人便为之立碑,写下墓志铭。本文以此献给Protein。    看过一本同样叫做《梦断代码》的书,英文名叫《dream in code》 我总觉得翻译得不准确。 在那本书中,讲述了一个软件项目Chandler失败的前

2012-08-27 23:02:35

从设计模式到梁思成

Design Pattern已经成为软件设计中一个耳熟能详的词语了。并且,多半会联想到GOF的那本设计模式的名著。事实上,对我来说,尽管四位作者都是大牛,花边 新闻也关注了不少,但让我写出凭记忆写出四位作者的名字还是困难的。没办法,对老外的名字就是如此的不敏感。然而,GOF却很好记。 Gang of Four,第一次看到的反应,F4?F4挺有学问啊。起初,对于把GOF翻译成四人帮颇不以为然。干嘛搞

2008-01-06 20:18:00

f (p == NULL), if (p == 0) 还是 if(p) ?----再论空指针检测问题

转载请注明出处: http://blog.csdn.net/wingfiring某些C/C++编程的书中,曾经提到如何判断指针是否为空的问题.很显然,if (p == NULL), if (p == 0) 和if(p),都能够完成这一任务,差别在于可读性方面.我们分别加以讨论. 1. if (p == NULL) 相当多的文章建议采用,他们中的部分人甚至认为,其他做法都是错误的.这个形式一个变种是

2007-05-17 18:19:00

恐怖的代码,以及转载

项目中看到这样的代码:m_optimizedPolygons = false;if (gdi_compatible && (true == gdi_compatible->value().as_boolean()))        m_optimizedPolygons = true;看到什么问题了吗?有没有人吐血身亡?哦,对不起,朋友,帮忙打个120......无数C++的文章和书籍----至少

2007-02-09 18:26:00

haskell笔记

经典的快速排序的实现代码: quicksort  []           =  [] quicksort (x:xs)        =  quicksort [y | y                          ++ [x]                         ++ quicksort [y | y =x]嘿嘿,用C/C++来实现的话,需要多少行代码呢? 好像某个人说过:

2006-10-11 09:39:00

开始学习haskell

    曾经有人说数学是自然科学中的皇冠,而且总是尽力使自己和其他学科保持距离.而其他学科总是力求和数学搭上关系,如此便可以身价百倍.当年恩格斯曾经说唯一没有运用数学的学科生物学,最终也被孟德尔抓住了统计学的尾巴.    Functional Programing是厕身于象牙塔里的精灵,总是力图保持和现实的距离,并以纯粹的血统为荣,如今,也越来越多的被其他语言所攀附,Lambda演算似乎要成为一波

2006-10-10 11:35:00

模式批判之Singleton

               人们常说,模式是解决方案的重用,是经验的重用。借助已有的经验和典范,可以帮助我们少走弯路,还可以在更高的语言层次描述系统和相互沟通。然而,模式本身是如此的抽象,对于模式的理解和运用很大程度上依赖于程序员个人或团队的经验和技艺。模式是很好的东西,然而传授模式却是如此的困难。模式的适用性是一个非常重要的指标,错误地运用模式,将会加剧表达的不自然,恶化代码的可读性

2006-08-08 11:12:00

错误和异常处理

错误和异常处理参考关于编写健壮的通用组件的一些问题,下面的论文给出了很好的介绍:D. Abrahams: ``Exception Safety in Generic Components, 由M. Jazayeri, R. Loos, D. Musser (eds.): Generic Programming, Proc. of a Dagstuhl Seminar, Lecture

2006-07-06 10:23:00

**乌托邦式的接口和实现分离技术**

  《Imperfect C++》中展示了一种叫“螺栓”的技术,然而,这本书中的讨论并不足够深入。当然,我也相信Matthew是故意的,从而让我们这些“三道贩子”(Matthew自称是二道贩子)也能够获得一点点成就感。 非典型秃子http://blog.csdn.net/wingfiring/  考虑这样一个接口设计:    struct IRefCount;    struct IReade

2006-07-01 17:08:00

感慨:编写坚固的代码(2)

    我们要想写文章,最起码,要能认识足够多的字.但是,更重要的,是要知道我们想说什么。这两个方面都是不可或缺的。那么,是不是要等到认识了所有的字才能写文章?当然也不是。如果每写几个字就需要查字典恐怕也写不好文章--思路都被打断了。首先,我们应该在文字上自由了,然后就可以畅快地表达自己的思想、观点、感受,偶尔一两个成语典故需要查一查字典也无伤大雅。    就这方面来说,写文章和写程序是极其相似的

2006-06-26 15:04:00

查看更多

勋章 我的勋章
    暂无奖章