Lucene KoreanAnalyzer : 사전 인터페이스 및 음절정보테이블 룩업 메서드 제작 완료

오랫동안 끌어왔던 한국어 사전 인터페이스를 완료 했다.

동적으로 커넥션 관리(품사별로 음절 길이에 따른)를 하게끔 제작을 했고 말이 많았던 Hash, Trie모듈을 이용한 메모리 로딩은 잠시 미루기로 했다.

Eclipse로 그려본 사전쪽 클래스 구조다. (품사 음절별 사전 객체는 무조건 하나만 생성된다. 그리고 그 사전객체의 커넥션은 접속을 끊기전에는 계속 연결시켜 놓았다.(색인시 종종 쓰기보다는 매우 자주 사용되기 때문이다.))
그리고 제공 메서드는 사전에 있는지 없는지만 확인하는 메서드만 제공했다. 그렇지만 필요한건 따로 확장이 가능하다.

사전쪽 구조

그리고 만들어 놓은 각 품사별 음절정보 테이블 룩업 메서드들을 제작한다.
객체를 생성해놓고 쓰기에는 자주 호출되고 좀 부담스러운 메서드 들이라서 static으로 모조리 정의해놓고 SyllableTableLookup 클래스에 넣었다. 테스트 해보니 유니코드 음절정보테이블이 예상대로 잘 만들어 졌음을 알 수 있었다.ㅎㅎ

이거 말고도 품사별 음절수별 사전을 검색하는 랩핑 메서드들을 제작해야 하는데 이건 정말 귀차니즘 이군. ㅜㅜ 이것도 역시 static으로 정의되어야 할지 아니면 따로 클래스를 만들어 줘야 할지 쫌만 고민해보고 담주에나 만들어 봐야겠다.

ps. 휴~~ 간만에 주말에 여유가 생겨서 형태소 분석기 코딩한거 같다. 이번주 개강이고 논문 세미나 준비에 논문 주제선정 등등 할일이 태산같기는 하지만 일단 또 한주 즐겁게 보네도록 하자!

CC BY-NC 4.0 Lucene KoreanAnalyzer : 사전 인터페이스 및 음절정보테이블 룩업 메서드 제작 완료 by from __future__ import dream is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.