8 cuốn sách phải đọc về lập trình

Liệu có một giây phút nào trong những đêm vò đầu bứt tai ngồi viết code, ta ước rằng mình có “superpower”, để dăm ba cái dòng code chẳng còn làm ta phải tàn tạ tấm thân? Hay ước gì ta có thể nhảy cóc tới vài ba năm sau, khi mình đã là một senior sừng sỏ, viết code ầm ầm nhanh hơn cả lúc đi combat?

Khổ nỗi, ta lại chẳng biết bắt đầu từ đâu! Ta biết rằng mình nên học thêm thật nhiều, nhưng học cái gì, học thế nào, thì ta lại không biết.

Bất kể bạn là ai hay bạn làm nghề gì, đọc sách sẽ luôn là con đường ngắn nhất dẫn tới thành công.

Hiểu được tâm sự này, Got It đã biên soạn một bài blog gồm danh sách 8 “bảo bối” sẽ khiến giúp bạn cải thiện trông thấy tư duy và kỹ năng lập trình, để sau này đỡ vất vả trong cái nghề lập trình lắm gian nan.

Cùng bắt đầu thôi!

1. THE PRAGMATIC PROGRAMMER: FROM JOURNEYMAN TO MASTER

Authors: Andy Hunt, Dave Thomas · Topic: general programming · Level: beginner

Đầu tiên, hẳn phải kể đến cuốn sách kinh điển gối đầu giường của bao nhiêu thế hệ — The Pragmatic Programmer. Đây là cuốn sách thiết yếu cho tất cả những lập trình viên nào thực sự muốn phát triển kỹ năng, và thực sự mong muốn tiến xa trong nghề nghiệp hiện tại.

Được viết dưới dạng một series chứa đầy những mẩu chuyện thú vị và những ví dụ bổ ích, The Pragmatic Programmer minh họa những cách làm tốt nhất cũng như những khó khăn cơ bản ở nhiều khía cạnh khác nhau trong phát triển phần mềm. Cho dù bạn là một newbie, một lập trình viên giàu kinh nghiệm hay một nhà quản lý dự án, hãy đọc những bài học trong cuốn sách này hàng ngày để thấy năng suất, độ chính xác và sự hài lòng trong công việc của mình được cải thiện rõ rệt. Cuốn sách sẽ giúp bạn học được các kỹ năng, phát triển các thói quen và thái độ, tạo nền tảng cho sự thành công trong tương lai.

(Hiện cuốn sách này đang có sẵn ở Tủ sách Got It. Bạn có thể tìm hiểu chi tiết về tủ sách và đăng ký tại đây để được đọc miễn phí nhé.)

2. HEAD FIRST DESIGN PATTERNS: A BRAIN-FRIENDLY GUIDE

Authors: Eric Freeman, Kathy Sierra · Topic: code design · Level: beginner

Hiểu các kiến thức cơ bản về lập trình hướng đối tượng (OOP) không biến bạn trở thành một OO designer giỏi. Nhưng cuốn sách này dạy bạn cách nhanh nhất để hiểu về mẫu thiết kế (design patterns) bằng cách đưa ra ví dụ về cách giải quyết các vấn đề thường gặp trong thiết kế phần mềm. Những chủ đề phức tạp được lý giải một cách vô cùng hóm hỉnh, dễ đọc và dễ áp dụng trong công việc. Có thể nói, nếu bạn đang tìm hiểu về lập trình hướng đối tượng, thì Head First Design Patterns: A Brain-Friendly Guide là một quyển sách phải đọc đấy nhé.

(Hiện cuốn sách này đang có sẵn ở Tủ sách Got It. Bạn có thể tìm hiểu chi tiết về tủ sách và đăng ký tại đây để được đọc miễn phí nhé.)

3. CLEAN CODE: A HANDBOOK OF AGILE SOFTWARE CRAFTSMANSHIP

Author: Robert C. Martin (Uncle Bob) · Topic: coding · Level: beginner/intermediate

Clean Code được nhiều lập trình viên đánh giá là quyển sách giá trị nhất mà họ từng đọc trong sự nghiệp của mình. Cuốn sách dạy bạn làm thế nào để viết những đoạn code có thể hoạt động tốt, cũng như truyền tải được ý định của người viết nên chúng. Cuốn sách này nổi bật bởi cách nó bao trùm rất nhiều ví dụ, gồm cả những đoạn code dài và phức tạp. Thay vì chỉ liệt kê những quy tắc để viết một đoạn code rõ ràng (clean code), cuốn sách dành nhiều chương để nói về các ví dụ và những phương pháp thực tế để cải thiện chúng. Tóm gọn lại, đây là cuốn sách phải đọc với mọi lập trình viên.

(Hiện cuốn sách này đang có sẵn ở Tủ sách Got It. Bạn có thể tìm hiểu chi tiết về tủ sách và đăng ký tại đây để được đọc miễn phí nhé.)

4. THE CLEAN CODER

Author: Robert C. Martin (Uncle Bob) · Topic: soft skills · Level: beginner/intermediate

Là phần tiếp theo của Clean Code, The Clean Coder cũng là một cuốn sách phải đọc đối với mỗi người làm lập trình. Nó bao gồm những lời khuyên thực tế về tất cả mọi thứ, từ ước tính (estimating) và viết code đến tái cấu trúc (refactoring) và kiểm thử (testing). Bạn sẽ học được cách làm thế nào để giao tiếp, ước tính, cũng như đối mặt với những tình huống khó khăn trong công việc.

Bạn muốn trở thành một lập trình viên chuyên nghiệp và có kỹ năng xuất sắc? Đây chính xác là nơi bạn nên bắt đầu.

(Hiện cuốn sách này đang có sẵn ở Tủ sách Got It. Bạn có thể tìm hiểu chi tiết về tủ sách và đăng ký tại đây để được đọc miễn phí nhé.)

5. GROKKING ALGORITHMS: AN ILLUSTRATED GUIDE FOR PROGRAMMERS AND OTHER CURIOUS PEOPLE

Author: Aditya Y. Bhargava · Topic: algorithms · Level: beginner

Grokking Algorithms: An illustrated guide for programmers and other curious people là một cuốn cẩm nang siêu bổ ích, trình bày về tất cả những thuật toán thường được sử dụng trong Khoa học Máy tính theo một cách vô cùng dễ hiểu. Kể cả những người không làm trong lĩnh vực lập trình cũng có thể dễ dàng biết được các thuật toán hoạt động như thế nào qua cuốn sách này. Vậy nên, để nhập môn về thuật toán, đây chính xác là đầu sách mà bạn cần đọc trước tiên.

(Hiện cuốn sách này đang có sẵn ở Tủ sách Got It. Bạn có thể tìm hiểu chi tiết về tủ sách và đăng ký tại đây để được đọc miễn phí nhé.)

6. CRACKING THE CODING INTERVIEW: 189 PROGRAMMING QUESTIONS AND SOLUTIONS

Author: Gayle Laakmann McDowell · Topic: soft skills · Level: beginner/intermediate

Đây chính là cuốn sách bạn cần để chuẩn bị cho một cuộc phỏng vấn ở vị trí lập trình viên. Với nhiều người, phỏng vấn có lẽ là phần “đáng sợ” nhất trên con đường trở thành một developer. Vậy thì Cracking the Coding Interview: 189 Programming Questions and Solutions chắc chắn sẽ là liều thuốc đắc lực giúp bạn thoát khỏi nỗi lo đó. Tuy bao gồm 189 câu hỏi về lập trình (có kèm câu trả lời), đây lại không phải là một cuốn sách dạy bạn cách gian lận trong phỏng vấn. Bản thân bạn cũng cần phải phân tích từng câu hỏi, tìm ra cách giải tốt nhất, và luyện tập với những câu hỏi mẫu mà cuốn sách đưa ra.

(Hiện cuốn sách này đang có sẵn ở Tủ sách Got It. Bạn có thể tìm hiểu chi tiết về tủ sách và đăng ký tại đây để được đọc miễn phí nhé.)

7. PYTHON IN PRACTICE: CREATE BETTER PROGRAMS USING CONCURRENCY, LIBRARIES, AND PATTERNS

Author: Mark Summerfield · Topic: programming language · Level: beginner/intermediate

“Dù bạn là một lập trình viên đầy kinh nghiệm hay chỉ mới bắt đầu sự nghiệp, Python in Practice hội tụ đầy đủ những lời khuyên giá trị giúp bạn phát triển trong công việc bằng cách nhìn nhận vấn đề từ nhiều hướng, giới thiệu về các công cụ, cũng như những cách làm cụ thể để tìm ra những giải pháp hiệu quả hơn.” — Doug Hellmann, Senior Developer, DreamHost

Nếu bạn là một lập trình viên đã có kinh nghiệm về Python, Python in Practice sẽ giúp bạn cải thiện chất lượng, sự ổn định, tốc độ, khả năng bảo trì và khả dụng của các chương trình Python của bạn.

Mark Summerfield tập trung vào bốn chủ đề chính:

  • mẫu thiết kế để viết code một cách rõ ràng,
  • cải thiện tốc độ xử lý thông qua concurrency và compiled Python (Cython),
  • high-level networking,
  • xử lý đồ họa.

Tác giả chỉ ra những mẫu thiết kế đã được chứng minh là hiệu quả trong Python, làm nổi bật điều đó bằng những đoạn code chất lượng, và giải thích vì sao một số mẫu thiết kế hướng đối tượng lại liên quan đến Python.

(Hiện cuốn sách này đang có sẵn ở Tủ sách Got It. Bạn có thể tìm hiểu chi tiết về tủ sách và đăng ký tại đây để được đọc miễn phí nhé.)

8. TEST-DRIVEN DEVELOPMENT: BY EXAMPLE

Author: Kent Beck · Topic: coding · Level: beginner/intermediate

Phát triển phần mềm dựa trên kiểm thử cho phép bạn lập trình phần mềm của mình theo từng bước một cách logic: đầu tiên, dùng test xác định các quy tắc logic; sau đó, quan sát cách chúng thất bại; cuối cùng, tạo ra lượng code tối thiểu để đảm bảo những quy tắc đó vẫn được thông qua. Thoạt nhìn có vẻ bạn sẽ phải làm nhiều việc hơn mức cần thiết, tuy nhiên một khi bạn đã thành thạo quy trình này, bạn sẽ thấy rằng mình có thể code ít hơn, chất lượng hơn và có đủ tự tin để điều chỉnh code mà không phải lo rằng mọi thứ sẽ trở nên… bung bét!

(Hiện cuốn sách này đang có sẵn ở Tủ sách Got It. Bạn có thể tìm hiểu chi tiết về tủ sách và đăng ký tại đây để được đọc miễn phí nhé.)

Trên đây là 8 cuốn sách mà Got It khuyên đọc không chỉ với các bạn sinh viên mà với bất kỳ ai quan tâm đến lập trình. Nếu bạn muốn trở thành một developer nổi bật, muốn tiến xa hơn và đạt được những thành tựu nhất định trong ngành, hãy chắc rằng bạn đã đọc và nghiền ngẫm ít nhất 1/2 những cuốn sách kể trên.

Phần lớn những cuốn sách kể trên hiện đang có tại Tủ sách Got It. Nếu bạn muốn được tận tay cầm đọc những cuốn sách kinh điển này, hãy ghé thăm chúng mình ngay nhé! Chi tiết về tủ sách bạn có thể tìm đọc tại đây.

>> Form đăng ký: bit.ly/gotitlibrary
>> Giờ mở cửa: 14:00–17:00, thứ Ba và thứ Năm hàng tuần
>> Địa điểm: Got It Vietnam, tầng 12, toà nhà HCMCC, 249A Thuỵ Khuê, Tây Hồ, Hà Nội
>> Hotline: 0243 232 1448


Bạn có thể xem các vị trí đang tuyển dụng của Got It tại: bit.ly/gotit-hanoi và đọc thêm về quy trình tuyển dụng tại đây.

Nếu bạn quan tâm, hãy xem các vị trí đang tuyển dụng của Got It và đọc thêm về quy trình tuyển dụng tại đây.

Tìm hiểu thêm về Got It tại:

 

Facebook

LinkedIn

Instagram

YouTube

Gmail

Zalo

 

Đăng ký nhận newsletter để không bỏ lỡ các bài viết bổ ích và thông tin mới nhất từ Got It

* indicates required

Nếu bạn quan tâm, hãy xem các vị trí đang tuyển dụng của Got It tại: bit.ly/gotit-hanoi và đọc thêm về quy trình tuyển dụng tại đây.

Thao Hoang
Thao Hoang
July 22, 2019
0
Share this post to:
Tags:
0 Comments
Inline Feedbacks
View all comments
Các bài viết liên quan
Làm đồng thời Manual và Automation Tester là trải nghiệm thế nào?

Làm đồng thời Manual và Automation Tester là trải nghiệm thế nào?

Manual và Automation Testing vốn có nhiều điểm khác biệt, nhưng nếu làm song song cả hai công việc này một lúc, một người Tester sẽ có trải nghiệm thế nào? Câu chuyện dười đây kể về Samsam – một người trẻ gắn bó với cả hai mảng kiểm thử từ những ngày đầu tiên, […]
Khi con gái làm IT: Thách thức và bài học?

Khi con gái làm IT: Thách thức và bài học?

Dù xu hướng ngày nay đã có ít nhiều thay đổi, song con gái làm IT vẫn có thể được coi là “những bông hoa hiếm có khó tìm”. Uyên Trần: Cuộc trò chuyện ngày hôm nay của chúng ta có chị Hoà, người đã làm Developer hơn 10 năm và cả Sam, Ellie, những […]
10 tài liệu lập trình Python tốt nhất

10 tài liệu lập trình Python tốt nhất

Trong 5 năm gần đây, Python luôn được vinh danh trong top những ngôn ngữ lập trình phổ biến nhất và được yêu thích nhất thế giới. Với những newbie về lập trình, Python cũng là một trong những lựa chọn phổ biến, bởi đây là ngôn ngữ lập trình hướng đối tượng bậc cao […]
Software Engineer và câu chuyện làm sản phẩm

Software Engineer và câu chuyện làm sản phẩm

Làm sản phẩm hay outsource tốt hơn? Đó là một chủ đề vẫn luôn được bàn luận cùng những ý kiến trái chiều. Bài viết dựa trên những quan điểm cá nhân nên chỉ mang tính tham khảo, hy vọng bạn sẽ đón nhận với một tâm thế cởi mở và comment bên dưới để […]
Học Python từ cơ bản đến nâng cao với hơn 40 dự án thực tế

Học Python từ cơ bản đến nâng cao với hơn 40 dự án thực tế

Python đã và đang là một trong những ngôn ngữ lập trình phổ biến nhất thế giới hiện nay. Nhưng làm gì để thành thạo Python khi bạn chưa có nhiều kinh nghiệm làm việc? Làm sao để có một profile, một CV đẹp để ứng tuyển vào công ty mà bạn ao ước? Có […]
Ở tuổi 22, bạn nên có những kinh nghiệm phỏng vấn gì?

Ở tuổi 22, bạn nên có những kinh nghiệm phỏng vấn gì?

Hai mươi hai tuổi, phần lớn chúng ta đều đứng trước một ngưỡng cửa mang tên “Tốt nghiệp”. Bạn sẽ phải chọn giữa bắt đầu đi làm, hay học lên bậc cao hơn; tự đi tìm việc, hay chờ để được giới thiệu; ở lại thành phố này, hay chuyển đi nơi khác; chọn công […]