Domain Driven design - Tactical DesignTrong buổi lần trước mình có chia sẻ về Strategic design, bước 1 trong DDD để xác định vấn đề mà hệ thống cần giải quyết. Còn trong bài này, mình sẽ tìm hiểu về bước 2 Tactical design: xác định được vấn đề rồi thì code như thế nào. Tactical design tư...Apr 24, 2025·6 min read
WAL trong PostgresqlTiếp nối bài WAL, hôm nay mình sẽ nói cụ thể hơn về WAL trong Postgesql WAL là gì Giúp khôi phục database khi Postgresql bị shutdown đột ngột Các cơ sở dữ liệu đều có các khái niệm tương đương với WAL trong Postgresql, ví dụ: Transaction log (SQL S...Apr 24, 2025·2 min read
LRU CacheChào các bạn, hôm nay mình muốn giới thiệu một bài code từng được phỏng vấn role junior. Nội dung của bài toán là: Implement thuật toán cache LRU. Mô tả bài toán Như các bạn đã biết thì cache là bộ nhớ đệm giúp tăng hiệu năng hệ thống, tuy nhiên nó c...Apr 24, 2025·3 min read
Factory Design patternHello các bạn, hôm nay mình sẽ tiếp tục series Design pattern thông dụng với Factory Pattern. Đây là một pattern mà ẩn sau nó có khá nhiều nguyên lý thiết kế phần mềm. Tình huống Giả sử bạn vào nhà hàng bán pizza, trong cửa hàng có nhiều loại pizza k...Apr 24, 2025·6 min read
Composition over Inheritance PrincipleNguyên lí xương sống trong lập trình hướng đối tượngApr 24, 2025·2 min read