Thiết kế chi tiết lớp

Một phần của tài liệu Phân tích cú pháp trong tổng hợp tiếng nói tiếng việt (Trang 61)

4.1.3.Tổ chức lưu trữ dữ liệu

4.2.3. Thiết kế chi tiết lớp

Chương trình phân tích cú pháp được xây dựng với rất nhiều gói và các lớp rất phức tạp nên đồ án sẽ không nêu ra tất cả các lớp và các phương thức được sử dụng mà chỉ tập trung mô tả những gói chính của chương trình.

4.2.3.1. Gói RuleManager

Đây là gói được sử dụng để làm công việc quản lí và thac tác với luật cú pháp, gói này gồm có hai lớp chính là Rule và RuleSet.

Đây là class được sử dụng để quản lý thông tin về một luật cú pháp, mô phỏng một kiểu đối lượng luật cú pháp tiếng Việt.

Bảng 4-8. Bảng mô tả của lớp Rule

Thuộc tính

Phạm vi: private

Kiểu: String

Tên: left Vế trái của luật

Phạm vi: private

Kiểu: int

Tên: count

Số lần xuất hiện của luật trong tập VietTreeBank Phạm vi : private

Kiểu: String

Tên: right Vế phải của luật

Phạm vi: private

Kiểu: float

Tên: prob Xác suất PCFG của luật

Phươn g thức

Phạm vi: public

Kiểu: String

Tên + tham số: getLeft() Trả về giá trị của biến left Phạm vi: public

Kiểu: void

Tên+tham số: setLeft(String left) Gán giá trị cho biến left

Phạm vi: public

Kiểu: int

Tên+tham số: getCount() Trả về giá trị biến count

Phạm vi: public

Kiểu: void

Tên+tham số: setCount(int count)

Gán giá trị cho biến count Phạm vi: public

Kiểu: float

Tên+tham số: getProb() Trả về biến prob

Phạm vi: public

Kiểu: void

Tên+tham số: setProb(float prob)

Gán giá trị cho biến prob Phạm vi: public

Kiểu: String

Tên+tham số: getRight()

Trả về giá trị của biến right Phạm vi: public

Kiểu: void

Tên+tham số: setRight(String right)

Gán giá trị cho biến right

4.2.3.1.2. Lớp RuleSet

Là lớp để quản lý toàn bộ tập luật, cung cấp các phương thức để lấy luật

Bảng 4-9. Bảng mô tả của lớp RuleSet

Phạm vi: Private

Thuộc tính Tên: arlRule Phạm vi: private Kiểu: HashMap<String, ArrayList<AStarRule>> Tên: htRule Bảng băm lưu các luật với khóa là vế phải của luật

Phạm vi: private

Kiểu: ArrayList<Integer>

Tên: arlTotal

Mảng lưu tổng số luật của mỗi cụm từ

Phương thức Phạm vi: public Kiểu: boolean Tên+tham số: readRule() Truy cập và đọc ra các luật cú pháp được lưu trong cơ sở dữ liệu Phạm vi: public Kiểu: ArrayList<AStarElement> Tên+tham số: getCombine(ArrayList<AStarElement> as) Trả về vế trái của các luật có vế phải là chuỗi as.

Một phần của tài liệu Phân tích cú pháp trong tổng hợp tiếng nói tiếng việt (Trang 61)

Tải bản đầy đủ (DOCX)

(89 trang)
w