Titan专栏

用文字来整理生命

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  44 随笔 :: 49 文章 :: 19 评论 :: 0 Trackbacks

2009年3月12日 #

声明:本博客已搬至
http://blog.csdn.net/pan_tian
posted @ 2009-03-12 02:44 Titan 阅读(101) | 评论 (0)编辑 收藏

2006年3月20日 #

        高明的程序员善于通过阅读程序来发现有价值的东西,并不断地提高自已的水平。
 
我们很多的学习都是从阅读开始,学一门语言,学一门技术,一般都会先选择好的老帅或好的教材,去听,去阅读,然后慢慢地理解并掌握,阅读在我们的学习与生活可以说无处不在,阅读是我们学习知识增长见识扩大视野的关键环节。
      
       在大四之时,我开始感觉到课本知识的局限性,特别是在我领悟到自已不得不干技术这行当时,我就更加迫不急待地去学习很多的编程技术,我开始不断地阅读各种各样的编程书籍,也开始被一行又一行的代码所吸引,每当理解到一段代码的作用时,心里就特别的愉悦与富有成就感,当我用DELPHI写出第一个象样的程序时,激动与兴奋了好几天,同学们都在兴高采烈地描绘着毕业后到某某政府机关或金融机构大显身手的宏伟蓝图,我是羡慕的,也是无奈的,我不得不零时抱佛脚,疯狂地阅读,努力学好一门技术,为的是能找到工作混口饭吃,先生存再谈发展。
 
   温伯格大师在《程序开发心理学》里认为程序开发也是写作的一种形式,它与其它的写作形式没有什么两样。众所周知,作家能写出好书,大都博览群书,可以说阅读是提高写作水平的一条重要途径,同样的,程序员学习程序开发,阅读程序对水平的提高也有很大的促进作用,程序员通过阅读程序,可以发现与总结出有价值的东西,比如一段代码之所以如此编写,是由各种因素决定的,有的是因为计算机的局限,有的是因为程序语言的局限,有的是因为程序员本身的水平,而有的则可能是因为标准规范的约束,通过仔细地阅读程序,你会发现并理解到这些因素,并从中受益匪浅。
 
那么,我们应如何来阅读程序呢?
 
温伯格不愧为大师级的人物,不仅知识渊博,而且字里行间还非常地幽默风趣,他认为“阅读程序与阅读小说是不一样的,阅读程序的最好方法并非是依次从头到尾。程序不像迷语,我们无法从末尾几页找到答案,也不像一本引人入胜的书籍,只需直接翻到褶皱最多的那几页,我们就能找到最精彩的片断。”简而言之,程序中最好的部分所出现的位置是不确定的,因此我们在阅读程序时,最好逐一考察研究每一段代码,搞清楚每一段代码的来龙去脉,理解每一段代码在程序中所起的作用,“进而形成一个虚拟的程序结构,并以此为基础来进行阅读”。
 
我开始学习VC++的时候,每学到一个知识点,先从理解概念开始,然后找一段别人已写好的程序来阅读,理解每一行代码在整个程序中的作用,如果这行代码错了会有什么样的结果,如果没有这行代码又会怎么样,阅读后再去上机操作,验证自已的理解是否正确,这样学习虽然较花时间,但有所收获,有的初学者很急躁,不到一个月的时间,就吹牛自已看了多少本书,但学到的只是一些表皮的知识,没有什么用的,还不如认真地钻研一本书,效果可能更加显著,其实你也会慢慢发现,书店里的书虽然多如牛毛,但都大同小异,这很是悲哀!
 
综上所述,我们需要理解点:一是程序被编写成什么样子,取决于众多的因素;二是阅读程序不能象阅读小说,程序中精彩的部分出现的位置是不确定。另外,阿蒙建议同行们善于通过阅读程序来学习程序开发,每学一个知识点,先去阅读与分析现有的程序,相信对你的学习是有促进作用的。
posted @ 2006-03-20 16:18 Titan 阅读(294) | 评论 (1)编辑 收藏

2006年2月19日 #

纯真的双眼已被世俗掩埋
眼里的纯洁已蒙上了尘埃
长大了的我们
懂得了更多的是无奈
快乐的心情已很少再来
岁月似流水一去不再回来
好怀念童年那个天真的小孩
一个玩具就能乐得开怀
受了委曲 流下眼泪就云散雾开
忙碌的人们忽略了平凡的精彩
每个人心里都在轻轻 轻轻的问
幸福在哪里
朋友哇告诉你
它不在月光下
也不在温室里
幸福在那里
朋友哇告诉你
它在你的理想中
它在你的汗水里
posted @ 2006-02-19 01:40 Titan 阅读(322) | 评论 (2)编辑 收藏

今天看了中央电视台的一个节目,叫做"幸福在那里",记者随机的采访一些人,询问他们两个问题,第一个问题:你幸福吗?第二个问题:幸福是什么?
不同的人给出了不同的答案.有的人回答的很朴实,有的人回答的很有深度.那么假如那个记者问我,我该怎么作答呢?
我幸福吗?幸福是什么?
这两个看似简单的问题,一时我竟不知道如何作答,简单的回答幸福或者不幸福都不能充分的表达我的真实感受.那么在我的人生词典里到底什么是幸福.仔细思考后我也不能给出自己一个满意的答复.索性把这个问题放在这里,也许有一天我能来解开这个谜底.....
posted @ 2006-02-19 01:38 Titan 阅读(170) | 评论 (0)编辑 收藏

突然想让自己换个活法.从大学到现在,对于技术的追求始终没有停止过,一直以来都希望自己在技术的道路上有所成就,但一路走来做的都非常辛苦,必须承认在一些时候自己是不快乐的.但这是为什么呢?以前始终没有思考过这个问题,总是在潜意识中认为"结果会是快乐的,过程会是痛苦的"这一道理,而且对于"台上一分钟,台下十年功","要想人前显贵,必得人后受罪"等生活中流行的俗语基本是持认可态度的,但一路走来的辛酸让自己不得不重新审视这些东西.
"过程真得非是痛苦的吗?"
"为什么我不能在过程中就享受到快乐呢?"
"为了短暂而又瞬间的快乐值吗?"
"我为什么不能享受这一过程呢?"
答案:毫不谦虚的说我是一个非常上进的人,而正是由于我对成功迫切的渴望,造成了我一些比较功利的心态---为了成功而成功.正是由于这个原因,使我不能细细的品味整个"过程".一些所谓的成功技巧充斥着我的生活,这些技巧构架起了我这个人.而我呢?依旧不断的再寻找新的技巧来取得成功.没有成功,我彷徨,于是继续再找着所谓的成功技巧....不断的恶性循环
一直一来我忽视(或者说小视)了人生中最真,最朴实的东西---爱,发自内心的真爱
别再想什么技巧了,只要爱就可以了,没有什么比这个更具有力量的了.
posted @ 2006-02-19 01:21 Titan 阅读(136) | 评论 (0)编辑 收藏

2006年2月18日 #

非常喜欢王朔得痞子文学,曾经也非常希望自己成为王朔笔下的那种痞子--一颗善良的心加上毫不讲理的痞子性格,无奈天赋有限,怎么着都学不的不像,于是索性就当起了好人...无奈...
王朔这小老儿最近也不出新书了,该不会也下海了吧,赶快出书啊
posted @ 2006-02-18 02:29 Titan 阅读(198) | 评论 (1)编辑 收藏

2006年2月15日 #

这两天精神状态不太好,工作效率非常低,一天下来做不了几件事情,而且对对老大的一些做法也有些看法,产生了一些抵触情绪.
现在最需要的是冷静下来,心平气和的想想到底发生了什么和如何解决这些问题
1.工作量过于大,搞的自己每天都是疲惫不堪,没有时间去学习自己想要学的东西
2.老大没有原则的下达任务
3.身体上很疲劳,而且经常和同事出去喝酒
4.下周的技术交流,准备的还不充分,心里不踏实
5.妹妹的学习状况还不太明了
6.感情上的一些波动

按照事情轻重缓急排序及解决方法:
1.下周的技术交流,准备的还不充分,心里不踏实
大概还有8天的时间,准备的是还有些欠缺,但老大也没有期望你在短时间内成为又一个郭文瑞,再说自己在数据库索引下的功夫是比较多的,只要把自己所掌握的东西表达出来就可以了,没必要给自己太大的压力.而且在索引调优方面,他们对于这方面的了解应该说远没有我了解的多,他们来是向我学习的,怕个什么.

2.工作量过于大,搞的自己每天都是疲惫不堪,没有时间去学习自己想要学的东西
从一个角度来看,现在的环境是一个"逆境",但是能不能把这个"逆境",变为"顺境"呢?
可以试试用另外的一种心态来工作,我现在做的是怎么样的事情?每天无休止的测试着各项性能的数据,那么如何让这些数据给你带来更大的快乐---答案:对于可能有问题的脚本进行跟踪,给予开发的我的个人建议,体现出个人价值来,成为真正的性能调优专家,而不仅仅是一个测试者

3.感情上的一些波动
感情真的是难以琢磨的东西,当你不理睬它的时候,你总是可以非常理智的看待其他人的感情生活,还经常以一种局外人的身份去教导别人应该如何如何,其实现在想想自己是多么的幼稚.不过想想也是,如果在感情世界中还能保持沉着,理智的话,那么这个感情世界就太缺少"人味"了,所以不必想的太多,跟着感觉走就行了

4.老大没有原则的下达任务
这个是你无法控制和改变的,任何抱怨只会对你不利,更不要产生抵触情绪,认认真真的做好应该做的事情才是硬道理.年轻的时候吃亏是福

5.身体上很疲劳,而且经常和同事出去喝酒
以后是得少喝点酒,少抽点烟了,现在年轻可能不觉的什么,要是年龄大了,毛病也就出来了.以后是得加强锻炼.

6.妹妹的学习状况还不太明了
明天打电话,了解一下最近的学习情况

posted @ 2006-02-15 23:52 Titan 阅读(170) | 评论 (0)编辑 收藏

2006年2月12日 #

工作的"繁忙",人际的交往,生活的压力很容易让人变得浮躁,但浮躁对于一个胸无大志的人来说可能算不了什么,但对于有些理想,有些上进的人来说是一件非常痛苦的事情,他们迫切渴望成功,但又讨厌漫长的积累过程,不断的寻找捷径,可又一次一次的失败,他们彷徨,他们失败,他们痛苦,恶性循环下不断的积压着心中的闷气,如果有幸还能够冷静下来,清晰的审视一下自己,发现自己的所谓的捷径不过都是一时的自作聪明而已,而小聪明在人生这样的大战役中,是一无是处的.
在学校的时候,环境比较的单一,人还能够比较冷静的对待人与事,还能够比较冷静的规划自己人生的路,明白成功非一日之功,只有日复一日的积累,才有最终的收获.但社会呢.......忙碌的工作和生活,让人缺少时间,去审视自我(真的是没时间吗?)
想起候捷说得一句话:能够在资讯世界里悠然自得,真令人羡慕(虽然那些人,包括我,其实也都是鸭子划水,水底下忙碌得很)。悠然自得的境界需要按部就班地训练才能到达。
posted @ 2006-02-12 23:37 Titan 阅读(147) | 评论 (0)编辑 收藏

    B+树可以看作是B树的变形,对于存放在外存贮器上的字典,B+树比B树更为常用。

一个m阶的B+树满足下列条件∶

(1) 每个结点至多有m棵子树。

(2) 除根结点外,其它每个分支至少有 棵子树。

(3) 非叶结点的根结点至少有两棵子树。

(4) 有n棵子树的结点有n个关键码,叶结点中至少包含 个关键码。

(5) 叶结点都在同一层中,其中存放数据文件中记录的关键码及指向该记录的指针,或存放数据文件分块后每块的最大关键码及指向该块的指针。叶结点按关键码值大小顺序链接。可以把每个叶结点看成是一个基本索引块(直接指向数据文件中的记录)。

(6) 所有分支结点可看成是索引的索引。使结点中仅包含它的各个子结点中最大(或最小)关键码的分界值及指向子结点的指针。

posted @ 2006-02-12 16:58 Titan 阅读(1432) | 评论 (0)编辑 收藏

B-树,B-树是一种非二叉的查找树。它除了要满足查找树的特性,还要满足以下结构特性:

    一棵M阶的B-树,(1) 树的根或者是一片叶子(一个节点的树),或者其儿子数在2和M之间。(2) 除根外,所有的非叶子节点的孩子数在M/2和M之间。(3),所有的叶子节点都在相同的深度。

要注意的是,B-树中,所有的数据都存放在叶子节点。而在叶子节点上存放的数据量是有限的。

B-树的插入与删除,唯一要考虑的问题是,让插入或删除以后的树,依然满足B-树的特性。在某些情况下,这也是一个比较复杂的过程。说不清楚,看书中的例子。书中的方法其实也都是定式。因为计算机本身不会思考。所以当我们思考计算机要做的工作时,我们要学会像计算机一样机械的考虑问题。说白了就是if。。。then。。。else。

B-树的平均深度为logm/2N。执行查找的平均时间为O(logM)。

B-树应用在数据库系统中。具体指的是应该是索引。它加快了访问数据的速度。

书中提到这一种流行的定义B-树的方法。还有一种定义的方法是允许把数据存放在内部节点中。而没有提到B+树。而我在google上找出的B+树的定义和以上对B-树的定义很像:“A B-Tree in which keys are stored in the leaves. ”。这让我很困惑。究竟那个是B+树哪个是B-树。

posted @ 2006-02-12 16:29 Titan 阅读(2916) | 评论 (3)编辑 收藏

仅列出标题  下一页