DBMS实现——疯狂的开始

来源:互联网 发布:php教程下载 编辑:程序博客网 时间:2024/05/16 03:27

我想我一定是疯了,准备在这样一个毫无技术、毫无经验、毫无思想的时候开始我编写DBMS的工作。这一定意味着痛苦的开始,会有无数人嘲笑你的无知,会有无数人期待着你的失败,会有打击,会有挫折,会有伤痛,但我仍然希望,这一段经历,能够带给我一样东西——成长。——LinSanpie

一、疯狂想法的由来

凡事必有因,而后有果。
我相信大学是很多人最美好的一段时期,逃课、泡吧、社团活动、聚餐、郊游,等等等等,是不是充斥了你的整个大学生活呢?然后,等到即将毕业的时候发现还有些科没有过,还有些该做的实验没搞定,甚至于还有庞大的毕业论文、毕业设计不知道该怎么办。
我也一样,那段时期也参加了很多很多的娱乐活动,然而比较尴尬的是,学校在我们玩的时候开设了一门门课程,有古老而神秘的,也有新奇而有趣的(这里省略500W字,用来赞美我伟大母校)。然而事实是,在这样一个刚刚毕业不久的时候,我基本上已经忘记了我究竟在大学学会了什么,是C语言?C++?还是数据结构?算法?我只能说,我学过很多的课程,到如今记得的也仅仅是一个名字。尴尬
大学时期,尤其让我耿耿于怀的是编译原理和数据库原理。这两门课程不仅有很多晦涩难懂的理论,也包含了大量的实践内容。时至今日,我仍然觉得,编译原理和数据库原理是一个程序员必备的修养。然而,遗憾的是,我修养不足,已经只记得这样一个名字了。。。
孔子曰:温故而知新,可以为师矣。于是有了自己动手写一个属于自己的DBMS的想法,希望借此能够将那些不曾掌握的和掌握不充分的理论知识和实践技能掌握在手中,当然,这仅仅是我的妄想,未来,谁知道呢!奋斗

二、疯狂想法的准备

千里之行,始于足下。
这是一个庞大的工程,并不是我嘴里这样简单的说一说,然后大家讨论一下,就可以动手编码了。那么我们需要的是什么呢?技术知识的储备,软件工程的基本套路,当然因为需求比较明确,而且自己用的话,也不会有特别大的需求改动,所以瀑布模型最好啦。
首先我需要的是技术知识的补充,因此在这里,我准备了几本书,为自己实现提供原动力,也为大家作一个简单的推荐。
《编译原理 英文版 第二版》
这本书被无数的前辈称为紫龙书,里面包含大量的编译原理的知识。为数据库管理系统的编译器部分实现提供了大量的技术支持。
《数据库实现 第二版》
这本书从理论上对数据库管理系统的实现提供了巨大无比的支持,使数据库管理系统的样子清晰的展现在眼前。
《C语言核心技术》
这本书对C语言有一个较为深刻的剖析,使得大家清楚的了解到C语言的强大之处,准备膜拜我大C语言吧。偷笑当然,C语言未必是这版DBMS的全部实现语言,不要因此而放弃其他语言的学习啊,用大神的话说,思想才是重要的,语言都是共通的,一通百通,遗憾的是,我至今一门不同。。。
《SQL基础教程》《SQL入门经典》
这两本书,主要是用来研究SQL语言的,因为我们主要处理的输入就是SQL语句或者类SQL语句,写到这里,突然想到,UNIX,LINUX,那我这里是不是可以给自己的SQL语句起个名字,叫LSQL?偷笑(净整没用的)
等等。。。
然后需要做的就是软件工程的一套了啊,从问题定义,到需求分析一直到最后的编码、测试、需求验证等等等等,需要我做的,还真是有点多呢。那这里就需要再添加一本书的学习了啊,《软件工程导论》,感觉我像是再推销书籍。。。安静

三、疯狂想法的实施

既然疯狂的想法已经产生,而且好像也不是很容易熄灭的样子,管它做出来有没有用呢,那就可以考虑这个想法的具体的实施方案了。
初步的实施方案是这样,首先开启软件工程之路,在这个分析、设计、实现的过程中进行技术知识的填充,并不断利用技术将过程变得简单易懂,当然,我也准备将这整个过程通过博客的形式分享出来,期待大家的批评、指点。
写到这里,怎么感觉到失败是必然的呢?错觉吧,我想这是错觉。。。吐舌头
这次就到这里,下次的博客就开始这些工作了,所有看热闹的同志们来吧,让我感觉到这个世界无比的寒意。哭
当然,有人愿意指点最好了,期待大家的回复。大笑
0 0
原创粉丝点击