Tác giả: Andrew
Giới thiệu
Để thành công, không ai trong chúng ta không cần những lời khuyên giá trị từ những người đi trước. Những lời khuyên đó sẽ được đúc kết từ nhiều người, nhiều thế hệ và đã được chứng minh tính hợp lí của nó thông qua kết quả thực tế mà họ đạt được. Và sách chính là nơi chứa đựng những tinh túy ấy. Dưới đây tôi sẽ đề cập đến những tựa sách cho Software Developer đã được nhiều dev đánh giá là cực kỳ hữu ích với công việc hàng ngày của họ.
Những cuốn sách được các Software Developer lựa chọn nhiều nhất
1. Clean Code: A Handbook of Agile Software Craftsmanship – Robert C. “Uncle Bob” Martin
Robert C. Martin là một Software Developer nổi tiếng thế giới. Trong cuốn sách này, Robert cùng các đồng nghiệp của anh ấy ở Object Mentor đã giới thiệu về những mô hình mang tính cách mạng về cách làm sạch code, loại bỏ những code xấu một cách nhanh nhất để công việc của bạn trở nên hiệu quả hơn.
Xem thêm các việc làm Tester hấp dẫn tại TopDev
Nhiều người dùng đánh giá rằng cuốn sách này sẽ tạo ra những thách thức trong suy nghĩ của bạn về cách clean code và code như thế nào là code xấu. Quan trọng hơn, các Software Developer sẽ tìm được những thông tin hữu ích để đánh giá lại các giá trị trong nghề nghiệp và chuyên môn của mình.
2. The Pragmatic Programmer: From Journeyman to Master – Andrew Hunt and Dave Thomas
Dev là những người làm việc dựa vào việc sử dụng một bộ công cụ nhất định (như trình chỉnh sửa, trình quản lý đối tượng, trình theo dõi phiên bản) để build một loại sản phẩm hay một chương trình trong một số môi trường (như các hệ điều hành trên các cụm phần cứng). Những gì mà các dev tạo ra được xem là các tài nguyên trí tuệ, hầu hết trong số đó không được dạy ở các trường học mà chúng được xem là thủ thuật giao dịch theo thời gian, thông qua thử nghiệm độc lập. Trong cuốn The Pragmatic Programmer, Andrew Hunt và David Thomas đã hệ thống hóa những sự thật mà họ đã khám phá ra trong sự nghiệp làm lập trình viên mà cụ thể là những Software Developer.
Xem thêm Software Developer và 5 bài học kinh nghiệm quan trọng
Cuốn sách cho Software Developer này sẽ thu hút bạn với hai lý do: Nó sẽ cho thấy những kiến thức mà bạn đã tích lũy được trong suốt thời gian qua hiện lên một cách rõ ràng hơn, và nó giới thiệu cho bạn những phương pháp làm việc mà bạn có thể chưa tính đến. Những Software Developer đang bắt đầu tiến trình đẩy nhanh công việc của mình sẽ là đối tượng phù hợp với cuốn sách này nhất.
Xem thêm các việc làm KMS Technology tuyển dụng hấp dẫn tại TopDev
3. Code Complete: A Practical Handbook of Software Construction – Steve McConnell
Được nhiều người coi là một trong những hướng dẫn thực hành tốt nhất khi học lập trình, đầu sách Code Complete của Steve McConnell đã giúp các dev viết phần mềm tốt hơn trong hơn một thập kỷ qua. Giờ đây, cuốn sách cổ điển này đã được cập nhật và sửa đổi đầy đủ với các tool và kỹ thuật tiên tiến hơn trong việc xây dựng phần mềm.
Nắm bắt toàn bộ kiến thức có sẵn từ nghiên cứu, học thuật và thực hành tạo ra các sản phẩm thương mại hàng ngày, McConnell tổng hợp các kỹ thuật hiệu quả nhất và các nguyên tắc cần biết thành hướng dẫn rõ ràng, thực tế. Bất kể mức độ kinh nghiệm, môi trường phát triển hay quy mô dự án của bạn là bao nhiêu, cuốn sách này sẽ cung cấp thông tin và kích thích tư duy của bạn, đồng thời giúp bạn viết code chất lượng cao nhất.
4. Design Patterns: Elements of Reusable Object-Oriented Software – Erich Gamma, Richard Helm, and Ralph Johnson
Cuốn sách cho Software Developer này không phải là sản phẩm giới thiệu đơn thuần về công nghệ hoặc thiết kế trong hướng đối tượng. Cuốn sách này sẽ mang đến cho các Software Developers các mẫu thiết kế mô tả những giải pháp đơn giản và thanh lịch cho mỗi vấn đề cụ thể trong thiết kế phần mềm hướng đối tượng. Bạn sẽ có nhận thức mới hoàn toàn về vấn đề và những thông tin chi tiết có thể làm cho thiết kế của bạn trở nên linh hoạt và dễ hiểu.
5. Refactoring: Improving the Design of Existing Code – Martin Fowler
Trong hơn 20 năm qua, các lập trình viên có kinh nghiệm trên toàn thế giới đã dựa vào cuốn sách này của Martin Fowler để cải thiện thiết kế của code cũng như tăng cường khả năng bảo trì phần mềm, giúp code trở nên gọn gàng và dễ hiểu hơn.
Phiên bản tái bản lần này của Refactoring: Improving the Design of Existing Code giống với bản gốc. Trong đó nó sẽ giải thích tái cấu trúc là gì, tại sao bạn nên cấu trúc lại, cách nhận ra mã cần cấu trúc và làm thế nào để thực sự thực hiện thành công, bất kể bạn sử dụng ngôn ngữ nào.
6. The Mythical Man-Month: Essays on Software Engineering – Frederick P. Brooks
Phải khẳng định rằng có rất ít những cuốn sách nói về quản lý dự án phần mềm có tầm ảnh hưởng và vượt thời gian như The Mythical Man-Month. Với sự pha trộn giữa các thông tin thực tế về kỹ thuật phần mềm và các ý kiến mang tính tư duy của riêng tác giả, Fred Brooks đã cung cấp cho người đọc những thông tin chi tiết trong việc quản lý các dự án phức tạp.
Xem tuyển dụng software developer đãi ngộ tốt trên TopDev
7. Working Effectively with Legacy Code – Michael Feathers
Code bạn viết có dễ thay đổi không? Bạn có thể nhận được phản hồi gần như tức thời khi bạn thay đổi nó không? Bạn có thật sự hiểu nó không? Nếu câu trả lời của bạn là không, bạn có code kế thừa và nó đang tiêu hao thời gian và tiền bạc từ những nỗ lực phát triển của bạn.
Trong cuốn sách cho Software Developer này, Michael Feathers đưa ra đầy đủ các chiến lược để làm việc hiệu quả hơn với các cơ sở code kế thừa lớn chưa được kiểm tra. Cuốn sách này dựa trên tài liệu mà Michael đã tạo ra cho các cuộc hội thảo về Object Mentor nổi tiếng của mình: các kỹ thuật mà Michael đã sử dụng trong việc cố vấn để giúp hàng trăm nhà phát triển, nhà quản lý kỹ thuật và người kiểm tra đưa hệ thống kế thừa của họ vào tầm kiểm soát.
Kết luận
Những cuốn sách được đề xuất trên đây đều nằm trong top tìm kiếm và có lượt mua cao trên Google. Với các Software Developers, đây chắc chắn sẽ là nguồn tài nguyên thông tin hữu ích giúp các dev chinh phục công việc của mình mỗi ngày.
Bài viết gốc được đăng tải tại dev.to
Có thể bạn quan tâm:
- Làm thế nào tôi trở thành một Software Developer tại Twitter?
- 10 tip tối ưu code trên JavaScript mà web developer nào cũng nên biết
- Software Developer và 5 bài học kinh nghiệm quan trọng
Xem thêm việc làm tuyển dụng lập trình viên hấp dẫn tại TopDev