下一个阶段(用C++重写Lucene的计划)
2009-11-27 17:26
267 查看
Lucene是一个非常优秀的开源搜索引擎框架,原语言是用的Java,现在已经被扩展到了各种语言上,如Python,C++,.Net,那为什么我还要重写呢?
其实重写代码是一个非常有价值的事情,对于代码的理解和看看代码是两码事,特别是对我这样的代码半吊子,我对于各种设计模式也只是一知半解,真正的应用起来还是觉得有点不是很流畅,之前重写过一个基于C#的3D引擎,感觉收获很大,很多之前没有理解的问题就很快的理解了,重写不仅是做无用功的。
下一个阶段主要想实现一下Lucene的一些核心架构,比如说Analyzer,Tokenizer,以及索引的建立和合并的过程,其中还涉及到一些文件操作的高级内容。
下一个阶段的计划是在半个月左右,完成Lucene的核心内容的编写,暂时可以不考虑中文支持的内容。
首先看一本C++的书,怎样才能把C++的代码写得安全,在算法方面进步的同时,也需要在代码的方面进步(2-3天,这个时间可能是穿插在平时的时间中的)
其次了解一下Lucene的构造,类方面的构造,用了哪些设计模式等等,这个就需要通读一下代码(3-5天)
然后需要重写一下IO类,构造一个方便的FileSystem,C++的IO一直是我很头疼的内容,需要好好掌握一下。(3-5天)
然后就是重写的事情了,在理解了代码的基础上重写倒是不算太麻烦。(7天)
更具体的心得,总结,计划将在之后给出
其实重写代码是一个非常有价值的事情,对于代码的理解和看看代码是两码事,特别是对我这样的代码半吊子,我对于各种设计模式也只是一知半解,真正的应用起来还是觉得有点不是很流畅,之前重写过一个基于C#的3D引擎,感觉收获很大,很多之前没有理解的问题就很快的理解了,重写不仅是做无用功的。
下一个阶段主要想实现一下Lucene的一些核心架构,比如说Analyzer,Tokenizer,以及索引的建立和合并的过程,其中还涉及到一些文件操作的高级内容。
下一个阶段的计划是在半个月左右,完成Lucene的核心内容的编写,暂时可以不考虑中文支持的内容。
首先看一本C++的书,怎样才能把C++的代码写得安全,在算法方面进步的同时,也需要在代码的方面进步(2-3天,这个时间可能是穿插在平时的时间中的)
其次了解一下Lucene的构造,类方面的构造,用了哪些设计模式等等,这个就需要通读一下代码(3-5天)
然后需要重写一下IO类,构造一个方便的FileSystem,C++的IO一直是我很头疼的内容,需要好好掌握一下。(3-5天)
然后就是重写的事情了,在理解了代码的基础上重写倒是不算太麻烦。(7天)
更具体的心得,总结,计划将在之后给出
相关文章推荐
- Lucene用c++重写的详细安排
- 按计划,进入下一个阶段
- C++ 阶段一(已完成)
- BZOJ1179_APIO2009_抢掠计划_C++
- 【C++学习】【阶段一】Essential C++ 第一章习题答案
- C++中重载、重写、重定义的区别
- 第五阶段计划
- C++学习笔记--继承的赋值兼容和函数重写
- java重载/重写(覆盖)/重构比较及其与C++差异
- C++的基础知识(六)--条件编译及编译预处理阶段
- 【C/C++】重载(overload),重写(override,或覆盖),隐藏
- C++ 重载(overload)、重写(overrride)、重定义(redefine)总结
- 20161220C++阶段班01_WhyC++
- 20161220C++阶段班02_C to C++
- C++插件平台开源计划
- 自动化测试的计划和实施第四阶段
- c++ 计划阅读书籍
- 阶段嵌入式硬件学习计划
- C++中重载与重写函数区别及虚函数(转载)
- c++ 重载、重写、重定义(隐藏)