Core Laye r lớp lõi

Một phần của tài liệu Tìm hiểu công nghệ và xây dựng framework giúp phát triển nhanh các website (Trang 28 - 29)

Thành phần này thực hiện nhiệm vụ chính của hệ thống: Xử lý, quy định về phân luồng thông tin; Cung cấp thư viện mặc định của hệ thống; Cung cấp các phương thức chung, cơ bản nhất của hệ thống: đọc, thêm, sửa, xóa, tìm kiếm, phân trang, hỗ trợ tạo mã sql khi truy vấn cơ sở dữ liệu, mã hóa/giải mã, tự động tải class, thay đổi kích thước file ảnh, hỗ trợ website đa ngôn ngữ, trang Admin mặc định cho hệ thống, tạo cache, lấy thông tin địa lý của người truy cập : quốc gia, thành phố, bang, tọa độ của thành phố... Core Layer cung cấp một hàm call_controller() để các controller gọi lẫn nhau thông qua main.php và Router.

Lớp Core Layer là thành phần quan trọng nhất của toàn bộ hệ thống. Lớp quy định “Khung làm việc” cho các thành phần còn lại của Ligker framework; Core layer thực hiện chuẩn hóa việc truy xuất cơ sở dữ liệu, ngăn chặn mọi thao tác không hợp lệ bằng cách tạo một “cổng” duy nhất cho dữ liệu vào - ra.

Để tạo ra khung làm việc cho toàn hệ thống, Core layer thực hiện nhiệm vụ đó thông qua file main.php và router.php. Hai file này có nhiệm vụ:

- Gọi các file Core functions trong Core layer; - Gọi các file Base functions trong Application layer; - Kiểm tra request gửi tới từ trình duyệt:

+ Nếu request yêu cầu gọi một controller và có action xác định, file main.php tiếp tục gọi các file MVC trong Application layer tương ứng. Tiếp đó, gọi method trong controller của lớp ứng dụng đó, tên của method này là tham số action đầu vào. Ví dụ: request là: http://ligker.net/index.php?controller=book&action=get_list Khi đó, file main.php sẽ gọi method là Book_Controller ::get_list. Trong đó

+ Nếu resquest yêu cầu 1 trang (Page), file main.php tiếp tục gọi lớp base_page, sau đó trả về 1 trang theo như yêu cầu đầu vào. Điều này sẽ được giải thích rõ hơn trong phần 3.1.3. Nguyên lý hoạt động của Ligker framework và 3.1.4. Mối quan hệ Page - Position - Module trong Ligker framework.

Trong cả 2 trường hợp trên, file main.php đã nạp đầy đủ 2 thành phần Core functions và Base functions trước khi gọi lớp ứng dụng MVC trong Application layer. Đây là một quy trình bắt buộc và “trong suốt” đối với các lập trình viên. Coder chỉ cần quan tâm đến lớp ứng dụng, tập trung vào công việc của mình, không cần quan tâm đến việc gọi các lớp ở mức thấp hơn đã diễn ra thế nào.

Phần Core layer do tác giả luận văn tạo dựng, và tác giả sẽ là người thực hiện thay đổi, nâng cấp nếu cần thiết. Việc nâng cấp Core layer bao gồm việc bổ sung method trong Core functions và Default Library.

Một phần của tài liệu Tìm hiểu công nghệ và xây dựng framework giúp phát triển nhanh các website (Trang 28 - 29)