Kiến trúc hệ thống

Một phần của tài liệu nghiên cứu mẫu thiết kế hướng đối tượng áp dụng xây dựng ứng dụng hỗ trợ rút trích thông tin từ web (Trang 31 - 32)

Controller Thành phần hỗ trợ Model

Thông tin cấu hình Lưu trữ

web

Thành phần điều hướng xử lý

các yêu cầu Thành phần quản lý chủ đề

<<sử dụng>> <<sử dụng>> <<sử dụng>> <<mẫu thiết kế>> Dynamic Factory <<mẫu thiết kế>> Abstract Factory <<mẫu thiết kế>> Strategy View Thành phần giao diện Thành phần lõi Thành phần rút trích thông tin theo chủ đề Thành phần cài đặt các thuật toán rút trích thông tin từ web

<<sử dụng>>

<<mẫu thiết kế>> Data access object

patterns Thành phần xử lý dữ liệu

Hình 4-2 : Kiến trúc hệ thống hỗ trợ rút trích thông tin từ web jn theo chủ đề Mô tả các thành phần:

Ứng dụng được thiết kế theo mô hình MVC (được trình bày ở mục 4.3.1), bao gồm 3 thành phần chính là Model, View và Controller. Hình 4-5 biểu diễn các thành phần con bên trong 3 thành phần chính và các mẫu thiết kế được áp dụng cho các thành phần đó. Mô tả chi tiết các thành phần con như sau:

Thông tin cấu hình: được lưu trữ trong tệp tin XML. Thông tin cấu hình này lưu trữ yêu cầu và lớp xử lý yêu cầu đó.

Thành phần điều hướng xử lý các yêu cầu: là một controller tiếp nhận tất cả các yêu cầu. Kết hợp với thông tin cấu hình cho phép điều hướng đến các lớp xử lý yêu cầu. Trong thành phần này, có thể áp dụng mẫu thiết kế Factory method của GoF để khởi tạo các đối tượng. Đây là mẫu cơ sở để cải tiến thành mẫu Dynamic Factory mà chúng tôi áp dụng để có thể khởi tạo đối tượng động.

Thành phần thu thập nội dung từ trang web jn theo chủ đề: nhiệm vụ của thành phần này là xây dựng câu truy vấn đến các trang web Nn phù hợp, gửi yêu cầu đến các trang web đó và nhận kết quả trả về. Trong thành phần này, chúng tôi áp dụng mẫu thiết kế Abstract Factory để tạo một nhóm các “sản phNm” cho chủ đề.

Thành phần cài đặt các thuật toán rút trích thông tin: Chúng tôi áp dụng mẫu thiết kế Strategy để đóng gói các thuật toán và cho phép client lựa chọn một trong những thuật toán đó để sử dụng

Thành phần quản lý thông tin các trang web jn và chủ đề: hỗ trợ nhà phát triển bổ sung các trang web Nn thuộc chủ đề và các thuộc tính của trang web Nn đó dễ dàng hơn. N goài ra còn hỗ trợ nhà phát triển map thuộc tính và giá trị của chủ đề với tên biến và giá trị của trang web.

Thành phần xử lý dữ liệu: chúng tôi áp dụng mẫu thiết kế Data Access Object Patterns để tách tầng model thành tầng xử lý nghiệp vụ và tầng truy cập dữ liệu để dễ sử dụng hơn.

Trước khi trình bày phần cài đặt hệ thống trong chương 5, trong phần này tôi trình bày tổng quan về những mẫu thiết kế được dùng để xây dựng các thành phần trong ứng dụng và có những lý giải vì sao tôi lại lựa chọn những mẫu thiết kế đó.

4.3 Các mẫu thiết kế được dùng để xây dựng ứng dụng 4.3.1 Mẫu thiết kế MVC

Một phần của tài liệu nghiên cứu mẫu thiết kế hướng đối tượng áp dụng xây dựng ứng dụng hỗ trợ rút trích thông tin từ web (Trang 31 - 32)