Mô hình Thiết kế - Mô Hình Liên Kết Trách Nhiệm
Một trong những mô hình thiết kế phổ biến là Mô hình Liên Kết Trách Nhiệm (Chain of Responsibility). Dưới đây là một số cách triển khai khác nhau của mô hình này.
1. Triển Khai Liên Kết Trách Nhiệm Đơn Giản
Đầu tiên, chúng ta cần định nghĩa một giao diện:
public interface Processor {
Object process(Object input);
void setNext(Processor ...
Đăng vào ngày 12 tháng 6 lúc 23:07
Triển khai Mô Hình Đại Lý trong Thiết Kế Phần Mềm
Mô hình đại lý (Proxy Pattern) là một mẫu thiết kế cấu trúc cho phép kiểm soát việc truy cập vào một đối tượng thông qua một lớp trung gian. Lớp này đóng vai trò như một "đại diện", có thể thêm hành vi bổ sung — như kiểm tra quyền, ghi log, hoặc quản lý bộ nhớ đệm — mà không làm thay đổi logic cốt lõi của đối tượng gốc.
Phân loại theo cơ chế ...
Đăng vào ngày 12 tháng 6 lúc 09:43
Mô hình Thiết kế Adapter trong Java: Kết nối các giao diện không tương thích
[Độ khó học tập: ★★☆☆☆, Tần suất sử dụng: ★★★★☆]
Một máy tính xách tay thường hoạt động ở điện áp 20V, trong khi mạng điện dân dụng tại Việt Nam cung cấp 220V. Để thiết bị 20V có thể vận hành an toàn trên nguồn 220V, ta cần một bộ chuyển đổi nguồn (AC adapter) — hay còn gọi là cục sạc — nhằm "dịch" điện áp đầu vào sao cho phù hợp. Bộ chuyển đổ ...
Đăng vào ngày 8 tháng 6 lúc 17:20
Nguyên tắc thiết kế hướng đối tượng
Nguyên tắc thiết kế hướng đối tượng là nền tảng để xây dựng phần mềm có khả năng bảo trì, mở rộng và tái sử dụng cao. Dưới đây là các nguyên tắc thiết kế hướng đối tượng chính:
Nguyên tắc SOLID
1.1 Nguyên tắc trách nhiệm đơn lẻ (SRP)
Một lớp chỉ nên có một lý do để thay đổi
// Vi phạm SRP
class NguoiDung {
private String hoTen;
priva ...
Đăng vào ngày 6 tháng 6 lúc 18:52
Mẫu thiết kế (3) - Mẫu nhà máy
Bài viết trước: Mẫu đơn thể
1. Mẫu nhà máy là gì?
Mẫu nhà máy (Factory Pattern) là giải pháp thiết kế giúp tách biệt quá trình khởi tạo đối tượng khỏi logic sử dụng. Thay vì trực tiếp dùng từ khóa new, chúng ta sử dụng một "nhà máy" trung gian để tạo ra các thể hiện thông qua giao diện chung. Ví dụ thực tế: Khi mua điện thoại, bạn chỉ cần nhậ ...
Đăng vào ngày 4 tháng 6 lúc 05:43
Mẫu thiết kế Factory tĩnh - Triển khai máy tính đơn giản
Giới thiệu về mẫu Factory tĩnh
Mẫu thiết kế Factory tĩnh (còn gọi là Simple Factory Pattern) giúp giải quyết vấn đề khi thiết kế phần mềm cần mở rộng. Thay vì để client trực tiếp khởi tạo các đối tượng, chúng ta sử dụng một factory class để封装 quá trình khởi tạo. Điều này giúp code dễ bảo trì và mở rộng hơn.
Bài viết này sẽ hướng dẫn bạn các ...
Đăng vào ngày 3 tháng 6 lúc 23:34
Tối Ưu Hóa Hiệu Suất Ứng Dụng Java Thông Qua Các Mẫu Thiết Kế
Trong kỹ thuật phần mềm, các mẫu thiết kế (Design Patterns) đại diện cho những giải pháp chuẩn hóa cho các vấn đề phổ biến, giúp đội ngũ phát triển trao đổi kỹ thuật một cách chính xác và hiệu quả hơn. Ví dụ, khi nhắc đến việc sử dụng mẫu Decorator trong模块 I/O, lập trình viên có thể hình dung ngay cấu trúc code liên quan. Tuy nhiên, mục đích ...
Đăng vào ngày 26 tháng 5 lúc 12:13
Phân tích thiết kế thư viện UI hiệu quả với mẫu kết hợp và mẫu trang trí: Trường hợp MDB UI Kit
Giới thiệu về MDB UI Kit
MDB UI Kit là một thư viện thành phần giao diện hiện đại dựa trên Bootstrap 5, cung cấp hơn 700 thành phần và mẫu có chất lượng cao. Thư viện được xây dựng thuần JavaScript, tuân theo giấy phép mã nguồn mở MIT và nổi bật nhờ kiến trúc sử dụng các mẫu thiết kế (design patterns) thông minh như mẫu kết hợp (Composite Patte ...
Đăng vào ngày 21 tháng 5 lúc 20:48
Ứng Dụng Các Mẫu Thiết Kế Cốt Lõi Trong Phát Triển iOS
Trong quy trình xây dựng ứng dụng trên nền tảng iOS, việc áp dụng các mẫu thiết kế (design patterns) đã được kiểm chứng giúp cải thiện tính modular, dễ bảo trì và khả năng mở rộng của hệ thống. Dưới đây là phân tích chi tiết về sáu mẫu thiết kế thường gặp nhất cùng với cách triển khai cụ thể bằng ngôn ngữ Objective-C.
1. Mẫu Singleton (Đơn Thể ...
Đăng vào ngày 21 tháng 5 lúc 12:41
Mẫu Lệnh trong Java: Tách Rời Yêu Cầu và Xử Lý
【Độ khó: ★★★☆☆, Tần suất sử dụng: ★★★★☆】
Khi thiết kế hệ thống điều khiển từ xa, thiết bị điều khiển (ví dụ: remote TV) không cần biết chi tiết về thiết bị đích (TV). Thay vào đó, mỗi thao tác như bật/tắt, thay đổi kênh được封装 thành đối tượng lệnh. Điều khiển chỉ gửi lệnh đến đối tượng trung gian, và chính đối tượng này mới thực hiện h ...
Đăng vào ngày 19 tháng 5 lúc 08:27