zoukankan      html  css  js  c++  java
  • Clucene系列1--特点和难点

    y

    搜索是本身是一个偏重于算法和流程的东西。我感觉使用面向过程的编程模式反而更好理解一些,但Clucence使用C++的特性,高度面向对象化,到处是接口。反而加大了理解难度。

    clucene的特点:

    支持Ascii和unicode两种字符集。
    支持多线程并行查询。
    支持多种查询方式。
    代码组织结构清晰简洁。
    几乎不依赖第三方库,部署配置简单。
    索引文件格式独立于应用平台,程序可以跨平台编译运行。
    程序自带有多种分析器,并且很容易扩展。
    Clucene提供的api,比较简单易懂。
    Clucence的难点有:
    在代码中,使用了较多的设计模式。设计模式主要有职责链模式,工厂模式,组合模式,迭代器模式等。
    构建索引的过程。
    索引合并的过程。
    权重打分的算法。
    模糊查询的实现。
    Bool查询的实现。
    一些算法的实现(跳跃表的实现,边界距离的实现)。
    代码量比较大,但也没有日志,跟踪不到整个流程。
    ————————————————
    版权声明:本文为CSDN博主「聪明的狐狸」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/yuxin8000/java/article/details/52182157

  • 相关阅读:
    Java零基础学习(四)JSP与Servlet
    Java零基础学习(三)封装继承多态
    vsftpd+nginx搭建图片服务器的一些问题
    1003. 我要通过!(20)(两种语言的运行时间差异)
    acm 1108 java做法
    acm 2020 用java实现
    acm 2519 java做法
    acm 2040 java做法
    acm 2003 java做法
    acm 2041 java的做法
  • 原文地址:https://www.cnblogs.com/fengtai/p/11729723.html
Copyright © 2011-2022 走看看