Coupling và Cohesion là hai nguyên tắc thiết kế phần mềm cốt lõi nhưng định lượng chúng trong thực tế khá khó khăn. Bài phân tích đưa ra các metric cụ thể như LCOM (Lack of Cohesion of Methods) và coupling metrics dựa trên dependency graph để đo lường mức độ phụ thuộc giữa các module. Các nghiên cứu thực nghiệm chỉ ra rằng module có high cohesion thường có ít bug hơn khoảng 40% so với module poorly cohesive. Điều đáng học là việc cân bằng coupling và cohesion không chỉ là lý thuyết trừu tượng mà có thể áp dụng qua các công cụ static analysis như SonarQube để cải thiện chất lượng code thực tế.
AI có thể tóm tắt sai. Đọc bài gốc trước khi dựa vào thông tin quan trọng.
Vì sao nên đọc: Bài viết cung cấp số liệu định lượng thực tế và nền tảng chung đằng sau các nguyên tắc thiết kế phần mềm giúp lập trình viên hiểu rõ hơn về coupling và cohesion.
Trả lời 3 câu hỏi ngắn để nhận điểm thưởng cho bài này. Chỉ làm khi bạn muốn lấy điểm.
3 câu hỏi · dưới một phút · không bắt buộc
Nguồn: https://bastrich.tech/coupling-and-cohesion. 8 Sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
Đọc tin ở đây, luyện code, học theo lộ trình và luyện IELTS trên các sản phẩm anh em — tất cả kết nối với nhau trong hệ sinh thái 8 Sync.
Cổng chính của hệ sinh thái: giới thiệu sản phẩm, blog và bảng giá trọn bộ.
Khám pháHọc theo lộ trình rõ từng chặng: video, quiz chấm tự động, certificate và mentor đang làm nghề.
Xem lộ trình1.000 bài DSA, đề tiếng Việt, chấm tự động 7 ngôn ngữ — nhiều bài FREE, chạy ngay trên trình duyệt.
Luyện miễn phíChấm bốn kỹ năng IELTS bằng AI, phản hồi chi tiết theo rubric.
Dùng thử miễn phíAI IDE 22 MB cho dev Việt.
Tải miễn phíBộ nhớ tổ chức cho AI agent.
Khám pháAI trực Fanpage, tự sàng lọc lead.
Dùng thửAgents write faster than humans can review. Typed graphs check every write, checked queries validate every question, and branches keep the human where true is decided.
Discover more about what's new at AWS with Amazon Bedrock AgentCore now offers a Web Search API
Can we make collaboration great again?
Event-driven systems only agree eventually. Here’s how we check they actually got there: deadlines, data ownership, and a reconciliation job that walks the floor.
Bối cảnh: Thiết kế hệ thống là kỹ năng quan trọng đối với các kỹ sư phần mềm hiện nay, đặc biệt khi ứng tuyển vào vị trí senior hoặc staff-level. Nguyên nhân kỹ thuật: Khóa học mới này tập trung vào các nguyên tắc thiết kế architecture và giải quyết bài toán scale cho hệ thống thực tế. Hệ quả: Học viên sẽ nắm vững cách thiết kế hệ thống như một senior engineer, tăng khả năng ứng tuyển vào các vị trí cao cấp. Điều đáng học: Khóa học bao gồm các case study thực tế với công nghệ như microservices, load balancing và database sharding.
Khóa học này giúp bạn nâng cao kỹ năng thiết kế hệ thống phần mềm như một kỹ sư senior.
In this article, we’ll look at the architecture behind Scion.
A streaming series is now available for free.
Event-driven architecture (EDA) phổ biến nhưng tiềm nhiều thách thức trong production environment. Vấn đề truy xuất lỗi (tracing) trở nên phức tạp khi sự kiện (event) đi qua nhiều service khác nhau, đòi hỏi hệ thống phân tích log tập trung như ELK stack. Hàng đợi tin hỏi (dead letter queues) dễ bị đầy nếu không implement validation logic kỹ càng, dẫn đến mất dữ kiện quan trọng. Sự không nhất quán cuối cùng (eventual consistency) gây race condition khi nhiều consumer xử lý cùng event đồng thời. Các EDA system cần thiết kế event schema versioning và comprehensive testing framework với Contract Testing để đảm bảo reliability khi số lượng service tăng lên.
Bài viết này giúp lập trình viên nhận diện và giải quyết các vấn đề phổ biến trong kiến trúc hướng sự kiện như tracing, dead letter queues, tính nhất quán cuối cùng và testing.
Đang tải bình luận…