Quay trở lại khoảng thời gian 8-10 năm trước, thế giới công nghệ không phát triển như hiện nay. Các lựa chọn chủ yếu là .NET và Java, PHP,... Tuy nhiên, thời gian trôi qua và ngày nay có rất nhiều công nghệ mới, framework và thư viện mới ra đời, khiến cho đa số các Developer phải đổ xô để bắt kịp xu hướng.
Việc trau dồi kỹ năng của những người Developer trước đây khác biệt so với hiện tại. Họ chỉ có rất ít công cụ nhưng biết sử dụng mọi nguồn lực một cách tối đa. Họ chăm chút từng dòng code, áp dụng nguyên tắc thiết kế và mẫu thiết kế một cách kỹ lưỡng. Nhìn vào những Developer ngày nay, chúng ta thấy rằng họ quá ít quan tâm đến chất lượng code mà chỉ tập trung vào việc áp dụng nhiều công nghệ. Họ tiếp cận theo một hướng khác, đó là tập trung vào việc sắm những công cụ đa dạng, nhưng thiếu đi độ bén của một công cụ chất lượng.
Bạn có thích một công cụ sắc bén hoặc một bó công cụ?
Dưới đây là danh sách các cuốn sách mà tôi khuyên các Developer nên đọc qua một lần để nâng cao kỹ năng của mình. Thứ tự sách được liệt kê theo cấp độ phát triển của từng Developer.
1. CLEAN CODE
Clean Code của tác giả Bob Martin là cuốn sách kinh điển mà tất cả các Developer cần đọc ĐẦU TIÊN để rèn luyện tay nghề. Code cần phải sạch và đúng ngay từ thuở ban đầu. Developer cần quan tâm đến từng dòng code mình viết ra để tạo ra sự hoàn hảo. Nếu trong những năm đầu không thể viết code "sạch sẽ", khả năng cao sẽ rất khó chỉnh sửa sau này.
Clean Code: A Handbook of Agile Software Craftsmanship
Các ví dụ trong sách được viết bằng Java, nhưng không khó để tìm các phiên bản tương tự trên Github.
2. DESIGN PATTERN
Ngày càng ít người quan tâm đến Design Pattern, đặc biệt là Object Oriented Design Pattern. Nếu bạn làm việc với ngôn ngữ hướng đối tượng mà không biết Design Pattern, hãy trang bị ngay. Bắt đầu với cuốn sách Head First Design Patterns, hãy tìm hiểu về Strategy Pattern. Bạn sẽ hiểu rằng khi áp dụng Design Pattern, mọi thứ dễ dàng hơn.
Nhắc nhở: Ngoài Design Pattern, bạn cũng nên tìm hiểu về các Nguyên tắc Thiết kế như SOLID, KISS, YAGNI,...
Head First Design Patterns: A Brain-Friendly Guide
Với các ngôn ngữ khác, trước khi bắt đầu học một framework hoặc ngôn ngữ mới, tìm hiểu về các Design Pattern của nó. Ví dụ, trang web https://reactpatterns.com/ tập hợp rất nhiều mẫu thiết kế mã nguồn, thực hành giúp bạn xử lý các vấn đề trong lúc code một cách chuẩn chỉnh hơn.
3. REFACTORING TO PATTERNS
Cuốn sách Refactoring to Patterns sẽ giúp bạn "cải tiến kỹ năng" bằng cách chuyển những đoạn code không tuân thủ theo mẫu thiết kế vào trạng thái tuân thủ.
Bonus: 31 Days of Refactoring in Java
4. CODE SMELL
Những đoạn code xấu thường có mùi hôi. Hãy nhận biết mùi của code xấu và tìm cách làm cho nó thơm tho hơn.
Bạn có thể đọc phiên bản trực tuyến tại đây: RefactoringGuru
Hoặc mua tài liệu premium để tìm hiểu sâu hơn tại: RefactoringGuru Store
5. LẬP TRÌNH VÀ CUỘC SỐNG
"Để lập trình hiệu quả, viết code không đủ. Con người mới là yếu tố quan trọng". Đây là lời trích từ trang bìa của cuốn sách. Mài dũa kỹ năng lập trình và cả tâm trí của bạn.
Cuốn sách này được tác giả Hồ Sỹ Hùng tuyển chọn và dịch từ trang Coding Horror
Hãy đọc để xem lập trình viên khác nghĩ gì và tìm kiếm lời khuyên cho chính mình.
Một số cuốn sách hay của tác giả Việt Nam:
- Code Dạo Ký Sự
- Agile Y
6. CODE COMPLETE VÀ PRAGMATIC PROGRAMMER
Cuốn sách sẽ không dạy bạn cách lập trình, nhưng nó sẽ truyền cảm hứng và dạy bạn một số kỹ năng mềm trong lĩnh vực lập trình. Tương tự như cuốn "Lập Trình Và Cuộc Sống" ở trên.
Hãy dành thời gian đọc các cuốn sách này để nâng cao kỹ năng, hiểu rõ nguyên tắc và trở thành một Developer giỏi hơn.