Ebook Không Còn "Hello World" Nữa. Hãy Build Một C++ App Thực Sự - Làm chủ C++ Development Thực Chiến: Architecture, Git, Testing & CMake Trong Một Workflow Thực Tế [Ấn Bản Lần 1, 9/2026] [PDF, EPUB] [8820E]
Bạn đã biết C++. Giờ hãy học cách phần mềm C++ thực tế được xây dựng như thế nào. Theo sát quá trình phát triển của một ứng dụng hoàn chỉnh, từ kiến trúc và CMake cho đến việc triển khai, testing, Git, CI, Docker và Qt.
Về cuốn sách:
Hầu hết các sách về C++ đều dạy về cú pháp, các tính năng của ngôn ngữ, hoặc các kỹ thuật đơn lẻ.
Nhưng biết C++ không có nghĩa là biết cách xây dựng phần mềm C++ thực tế.
Đây chính là cuốn sách nói về sự chuyển giao đó.
Cuốn sách theo sát quá trình phát triển của một ứng dụng hoàn chỉnh và cho thấy quy trình phát triển C++ chuyên nghiệp diễn ra như thế nào khi tất cả các mảnh ghép phải kết hợp lại với nhau:
- ✓ Software architecture & Clear module boundary.
- ✓ CMake hiện đại và cấu trúc dự án.
- ✓ Automated testing & Testable design.
- ✓ Git & Continuous Integration (CI)
- ✓ Resource management và code C++ dễ bảo trì.
- ✓ Docker và reproducible development environment.
- ✓ Qt và tích hợp của các application layer.
Thay vì coi những chủ đề này như những chương riêng biệt đến từ các thế giới khác nhau, cuốn sách cho thấy cách chúng tác động lẫn nhau trong một dự án thực tế.
Bạn sẽ thấy các quyết định kiến trúc ảnh hưởng đến testing ra sao, CMake có thể thực thi các project boundary như thế nào, các dependency nên được kiểm soát ra sao, và các development tooling trở thành một phần của design chứ không phải thứ được thêm vào cuối cùng.
Cuốn sách này dành cho các developer đã nắm vững các nguyên lý nền tảng của C++ và muốn vượt qua những ví dụ nhỏ, các hướng dẫn và các dự án “Hello World”.
Sách đặc biệt hữu ích nếu bạn:
- ✓ Có thể viết mã C++ nhưng chưa biết cách cấu trúc một ứng dụng hoàn chỉnh.
- ✓ Muốn hiểu cách architecture, build system, testing và CI phối hợp với nhau.
- ✓ Đang chuyển từ việc học C++ sang làm việc trên các project thực tế.
- ✓ Mentor các junior developer và muốn tìm một tài liệu thực tế kết nối kiến thức ngôn ngữ với software engineering.
Đến cuối cuốn sách, mục tiêu không đơn giản chỉ là giúp bạn viết nhiều C++ hơn. Mà là giúp bạn tư duy như một C++ software engineer.
Mục lục:
- ✓ Chương 1. Giới thiệu.
- ✓ Chương 2. Architecture:
- + 2.1 Vai trò của Architecture.
- + 2.2 Diagram.
- + 2.3 Chia Project thành các Module.
- + 2.4 Cách giao tiếp giữa các Module .
- + 2.5 Error Handling.
- + 2.6 Cấu trúc Project dựa trên kiến trúc.
- + 2.7 Containerization.
- + 2.8 Kết luận.
- ✓ Chương 3. CMake:
- + 3.1 Cấu trúc của một Typical CMake Project.
- + 3.2 Build target.
- + 3.3 Project Building.
- + 3.4 CMake language.
- + 3.5 Kết luận.
- ✓ Chương 4. Triển khai Core Logic:
- + 4.1 Interface trong C++.
- + 4.2 Interface Design.
- + 4.3 Các chi tiết triển khai.
- + 4.4 Public & Private API.
- + 4.5 Kết luận.
- ✓ Chương 5. Test code của bạn:
- + 5.1 Unit Test.
- + 5.2 GTest.
- + 5.3 Testing module.
- + 5.4 Interface Mocking.
- + 5.5 Do Not Repeat Yourself.
- + 5.6 Chạy các Test từ Command Line.
- + 5.7 Kết luận.
- ✓ Chương 6. Modern Development Workflow với Git:
- + 6.1 Tại sao chọn Git?
- + 6.2 Làm việc với một Local Repository.
- + 6.3 GitHub.
- + 6.4 Continuous Integration (CI).
- + 6.5 Kết luận.
- ✓ Chương 7. User Interface:
- + 7.1 Event-Driven Programming.
- + 7.2 Qt & CMake.
- + 7.3 MainWindow.
- + 7.4 Docking Domain Logic.
- + 7.5 Handling Resources Correctly.
- + 7.6 Thực thi các Module Boundary.
- + 7.7 Kết luận.
- ✓ Chương 8. Test cho User Interface:
- + 8.1 Unit-test User Interface.
- + 8.2 Testing Event-Driven Code.
- + 8.3 Mocking & Non-Blocking Waiting trong Event-Driven Test.
- + 8.4 Integration testing.
- + 8.5 Kết luận.
- ✓ Chương 9. Kết hợp mọi thứ lại với nhau:
- + 9.1 Executable.
- + 9.2 Manual testing.
- + 9.3 Kết luận.
- ✓ Chương 10. Bước tiếp theo là gì?
