11 sách lập trình kinh điển dành cho Developer
ITviec tổng hợp 11 sách lập trình kinh điển mà Developer nên “gối đầu giường”, giúp bạn: Có kiến thức nền tảng về công nghệ Tiếp thu những quan điểm, giải pháp không bao giờ lỗi thời trong nghề Xem việc làm Developer chất trên ITviec 1. The Pragmatic Programmer ...
ITviec tổng hợp 11 sách lập trình kinh điển mà Developer nên “gối đầu giường”, giúp bạn:
- Có kiến thức nền tảng về công nghệ
- Tiếp thu những quan điểm, giải pháp không bao giờ lỗi thời trong nghề
Xem việc làm Developer chất trên ITviec
1. The Pragmatic Programmer
Kiến thức trong “The Pragmatic Programer” áp dụng được cho mọi ngôn ngữ lập trình vì nó không nêu ra vấn đề của riêng ngôn ngữ nào cả. Cuốn sách lập trình kinh điển này mang đến kiến thức bao quát mọi vấn đề liên quan trong nghề, từ những kỹ thuật cơ bản đến nâng cao và không bao giờ lỗi thời.
Vì sao bạn nên đọc cuốn sách này?
- Không những khiến bạn phải thay đổi thói quen code mà sách còn khiến bạn thay đổi quan điểm của mình về nghềlập trình. Nó mang đến rất nhiều lời khuyên thực tế để bạn thay đổi các dòng code và bản thân để cho ra sản phẩm tốt hơn.
- Các kiến thức được trình bày theo từng đề mục, chuỗi chuyên đề, có ví dụ rõ ràng cho mọi vấn đề của lập trình phần mềm nên rất dễ đọc.
- Sách đúc kết kinh nghiệm từ nhiều năm làm nghềcủa các chuyên gia nên rất thực tế, không hề khô khan nặng về lý thuyết và tập trung vào kinh nghiệm và những vấn đề mà bạn luôn gặp trong công việc hằng ngày.
2. The Clean Coder: A Code of Conduct for Professional Programmers
“The Clean Coder” chỉ dày 200 trang nhưng cực kỳ đáng đọc chỉ sau cuốn sách lập trình kinh điển “gối đầu giường” “Clean Code” nổi tiếng cùng tác giả. Sách tập trung cải thiện tư duy làm sản phẩm của “Coder” hơn là nói nhiều về các dòng code, qua việc khắc họa chân dung của một Coder giỏi thực thụ trong việc làm hằng ngày, các kỹ thuật, công cụ sử dụng và những thành tựu họ đạt được.
Vì sao bạn nên có cuốn này trong tủ sách?
- Sách có rất nhiều lời khuyên thực tế cho cả một quy trình làm sản phẩm, từ dự đoán, code cho đến refactoring và testing.
- Sách tập trung vào việc hướng dẫn Coder có tư duy đúng mực về việc tạo ra một sản phẩm có giá trị, qua thái độ làm việc nghiêm túc, có trách nhiệm, giao tiếp và phán đoán hiệu quả, đối mặt với khó khăn, cũng như hiểu rõ và sâu kiến thức để hành động có hiệu quả.
Các đề mục hữu ích cho bạn:
- Điều gì tạo nên một lập trình viên chuyên nghiệp?
- Dự đoán và đặt mục tiêu cho dự án.
- Làm sao kiểm soát được áp lực và không “bùng cháy”?
- Khi nào nên nói Yes và “Yes” thực sự nghĩa là gì?
- Làm sao để giải quyết mâu thuẫn, lịch trình dày đặc và những Manager khó chịu?
3. Code Complete: A Practical Handbook of Software Construction
Đây là cuốn sách lập trình kinh điển cực kì cần thiết cho bất cứ ai làm trong ngành IT, được rất nhiều nhân vật trong chuyên mục phỏng vấn của ITviec giới thiệu. Không chỉ là một cuốn sách về kỹ thuật lập trình, “Code Complete” còn giúp các Developer thay đổi thái độ, tư duy của chính bản thân mình để cho ra đời những phần mềm có giá trị.
Vì sao bạn nên có cuốn này trong tủ sách?
- Sách chứa vô số hướng dẫn giải quyết các vấn đề trong khi bạn code, từ tổng quát cho tới chi tiết. Tóm lại, sách hướng dẫn cho bạn cách code hoàn chỉnh và tốt hơn như tên gọi “Code Complete”.
- Kiến thức trong cuốn sách không bao giờ lỗi thời và áp dụng được cho cả mọi trình độ từ mới bắt đầu, đã làm nghề được vài năm hay đã trở thành Senior.
- Không chỉ là kỹ thuật, sách còn chỉ bạn có thái độ đúng mực và thói quen cần thiết của một “siêu” Coder mà bạn có thể áp dụng ngay trong cuộc sống và công việc.
4. The Mythical Man-month: Essays on Software Engineering
Cuốn sách lập trình kinh điển này được xem là “kinh thánh” của ngành lập trình. Quan điểm của sách là “Máy tính có thể thay đổi nhưng con người thì không”, mang đến rất nhiều cách thức quản lý dự án và các mô hình quản lý hiệu quả, không bao giờ lỗi thời.
Vì sao bạn nên có cuốn này trong tủ sách?
- Sách tập trung vào các vấn đề liên quan đến con người trong việc quản lý dự án sao cho hiệu quả và có thể áp dụng được trong mọi trường hợp và bạn có thể áp dụng ngay vào công việc hằng ngày.
- Sách giúp bạn có cái nhìn tổng quan về những vấn đề thường gặp trong ngành IT, rất hữu ích cho những Developer muốn hoặc sắp thăng tiến thành Project Manager, Leader, hay các cấp quản lý muốn bổ sung kiến thức nền tảng.
- Các quan điểm, lý thuyết trong sách rất ít lỗi thời, áp dụng được cả trong môi trường Agile.
Một số trích dẫn kinh điển từ cuốn sách:
- “Thêm người vào những project đang trễ hạn thì sẽ khiến nó càng trễ hơn.”
- “Sinh con phải mất 9 tháng, không phụ thuộc vào chuyện có bao nhiêu phụ nữ thực hiện nó.”
- “Một quả trứng được cam kết là sẽ ăn được sau 2 phút nên khi chưa đủ 2 phút, khách hàng có 2 lựa chọn – chờ tiếp hoặc ăn tái. Khách hàng trong ngành phần mềm cũng như vậy.”
5. Peopleware: Productive Projects and Teams
Đây là cuốn sách “gối đầu giường” cho bất kỳ Team Leader hay Manager nào muốn tăng năng lực quản lý team và dự án trong ngành phần mềm. Các Developer muốn chuẩn bị hành trang để thăng tiến cũng rất cần đọc “Peopleware”. Không phải là một cuốn sách lập trình kinh điển hướng dẫn bạn code nhưng “Peopleware” là cuốn sách kinh điển giúp bạn cách tối ưu nguồn lực của team và bản thân để quản lý dự án và cho ra đời sản phẩm tốt nhất.
Vì sao bạn nên có cuốn này trong tủ sách?
- Sách không nói gì về code, mà tập trung giúp bạn giải quyết các vấn đề về con người – yếu tố quan trọng nhất làm nên thành bại của một dự án mà bạn không thể chỉ lướt Internet là tìm được giải pháp.
- Nội dung trong sách rất hữu ích và không bao giờ lỗi thời, tiêu biểu như cách tạo môi trường làm việc tốt nhất cho Developer, chuyên đề dự đoán Project, xây dựng tập thể vững chắc…
- Sách viết rất dễ hiểu nên dù bạn không giỏi tiếng Anh hay chỉ là “ma mới” của ngành cũng sẽ đọc được.
Còn dưới đây là 6 sách lập trình hay về C, C#, C++, Ruby on Rails, HTML, và Java. Ngoài cuốn về Ruby on Rails là phải mua, các cuốn còn lại bạn có thể download ngay tại post này. Tất cả đều nhận được nhiều nhận xét tốt từ độc giả của Amazon.
6. Advanced Linux Programming – CodeSourcery LLC , Mark L. Mitchell, Alex Samuel, Jeffrey Oldham
“Advanced Linux Programming có đầy đủ thông tin từ thread management, interprocess communication, shared memory, devices, cho đến implementing inline assembly code… Đây là một quyển sách lập trình hay PHẢI ĐỌC dành cho người muốn biết về Linux”
“Quyển sách này đúng là đáng kinh ngạc. Mọi thông tin và ví dụ thực tế đều được chứa đựng trong hơn 300 trang sách. Tôi được hướng dẫn từng bước căn bản từ tạo basic applications, shared & static libraries, sockets, pipes & security, forks/threads đến nhiều ví dụ cụ thể về synchronization mechanisms.”
7. C# Yellow Book – Rob Miles
“Nếu bạn chưa bao giờ lập trình thì đây là cuốn sách dành cho bạn – beginner – với nhiều hướng dẫn cực kỳ dễ theo dõi… Phần lớn topic về C# đều được tác giả đề cập đến trong C# Yellow Book nhưng những vấn đề “khó nhằn” nhất thì lại bị bỏ qua.”
“Quyển sách lập trình hay này không chỉ dạy bạn những điều căn bản về C# programming mà còn nhiều lý thuyết lập trình khác. Nếu bạn muốn học lập trình thì đây là 1 khởi đầu đúng đắn dành cho bạn.”
Xem thêm việc làm C# tại ITviec.
Đọc thêm các sách lập trình C# siêu chất.
8. C++ GUI Programming With Qt 3 – Jasmin Blanchette và Mark Summerfield
“6 chương đầu tiên cung cấp một nền tảng rất vững chắc về Qt. Các chương nổi bật gồm: chương 1 cung cấp kiến thức nền tảng vững chắc về Qt, chương 3 nói về modeless application development với nhiều ví dụ dễ hiểu, và chương 6 nói về layout management.”
“Qt là 1 application framework đòi hỏi bạn phải đối mặt với vấn đề về files, sockets, và network programming. Quyển sách lập trình hay này giúp bạn giải quyết tất cả những vấn đề đó.”
Xem thêm việc làm C++ tại ITviec.
9. Ruby on Rails 4.0 Guide – Stefan Wintermeyer
“Ruby on Rails 4.0 Guide bắt đầu với cách cài đặt Rails trên Linux, Windows và MacOS rồi tiến sâu vào cách viết các ứng dụng Rails tốt với nhiều lời khuyên hữu ích cho các trường hợp phổ biến. Tôi thích chương ‘Internationalization,’ vì rất nhiều sách bỏ qua 1 vấn đề quan trọng là trên thế giới có nhiều ngôn ngữ và character set khác ngoài ASCII và tiếng Anh.”
“Làm tất cả bài tập trong quyển sách lập trình hay này chính là điều quan trọng nhất. Nếu bạn đọc sách và nói: ‘Tôi hiểu,’ 1 tháng sau khi bạn muốn tạo ra một ‘1:n association,’ bạn sẽ quên. Nhưng làm tất cả các bài tập, bạn sẽ nhớ!”
Xem thêm việc làm Ruby on Rails tại ITviec.
10. Core HTML5 Canvas: Graphics, Animation, and Game Development (Core Series) – David Geary
“Cuốn sách lập trình hay này cực kỳ chi tiết và hướng dẫn của tác giả cũng đúng vào những điều trọng tâm nhất.” Chương 1 bao gồm các yếu tố cần thiết của canvas element như event handling, sử dụng HTML element trong canvas element, in canvas. Chương 2 giới thiệu cách vẽ canvas. David bắt đầu với những điều cơ bản như vẽ hình học căn bản và từng bước nâng kỹ thuật lên bằng cách sử dụng bezier curves, path manipulation, và transformations.”
“David hướng dẫn người đọc qua nhiều ví dụ bằng hình ảnh, video, animation, sprites, game physics và mobile development. Code trong ví dụ của ông rõ ràng và được trình bày theo thứ tự với nhiều màu sắc khác nhau… Mặc dù Core HTML 5 Canvas tập trung vào game development nhưng mọi thông tin trong sách đều có ích cho mọi application developer.”
Xem thêm việc làm HTML5 tại ITviec.
11. Clean Code: A Handbook of Agile Software Craftsmanship – Robert C. Martin
“Tất cả ví dụ trong sách là của Java, nhưng phần hướng dẫn có thể được áp dụng trong hầu hết các trường hợp, ngôn ngữ khác nhau.”
“Chương khó nhất và cũng giá trị nhất là ‘Refactoring of the class SerialDate’ (từ thư viện JCommon.) Nó là một ví dụ thực tế và tác giả đã mô tả từng bước refactoring để người đọc dễ nắm bắt hơn. Chương cuối cùng, ‘Smells và Heuristics’ là 1 kết thúc tốt trình nêu nhiều vấn đề tiềm năng và đề xuất cách giải quyết /giảm thiểu chúng.”
Xem thêm việc làm Agile tại ITviec.
Ngoài ra, bạn có thể tham khảo kho ebook lập trình mọi ngôn ngữ, framework mà ITviec đã tổng hợp để tăng thêm kiến thức và tư duy cho công việc.