JavaRush /Blog Java /Random-VI /Sách Java hay nhất dành cho người mới bắt đầu và hơn thế ...

Sách Java hay nhất dành cho người mới bắt đầu và hơn thế nữa (2023)

Xuất bản trong nhóm
Chúng ta đã quen với việc tiếp cận thông tin nhanh chóng và tiếp thu nhanh chóng không kém. Chúng tôi thích những video dài 5 phút hơn là những bài giảng sâu sắc và những bài viết ngắn hơn là sách. Tôi sẽ không khẳng định rằng một cuốn sách hay về lập trình sẽ thay thế bất kỳ bài viết nào, thực tế không phải vậy. Và nó chắc chắn sẽ không thay thế được việc luyện tập. Tuy nhiên, đối với cá nhân tôi, sự hiểu biết thực sự về những điều cơ bản của lập trình đến sau khi tôi giải được hàng trăm vấn đề trong khóa học lập trình JavaRush và đọc rất nhiều bài báo, bắt đầu đồng thời nghiên cứu lý thuyết từ sách và tìm hiểu sâu về chúng. Tôi đã tìm kiếm "hướng dẫn Java tốt nhất cho người mới bắt đầu" của riêng mình được một thời gian. Dưới đây là một số sách Java hữu ích với tôi ở mức độ ít nhiều ở các giai đoạn nghiên cứu khác nhau.

Sách dành cho người mới bắt đầu

Trong phần này, tôi đã thu thập những cuốn sách bạn cần để thực hiện những bước đầu tiên trong quá trình học lập trình Java.

1. Trưởng nhóm Java đầu tiên, Kathy Sierra và Bert Bates

Tôi bắt đầu với cuốn sách này không phải vì nó là cuốn sách tôi yêu thích mà vì nó đơn giản nhất. Cuốn sách này, theo nhiều lập trình viên, là tài liệu hướng dẫn Java từ đầu tốt nhất. Hơn nữa, nó thực sự và hoàn toàn từ đầu, nghĩa là nó phù hợp cho những người mới bắt đầu và chưa hiểu rõ về lập trình quái thú là gì. Tôi thừa nhận, nó đến với tôi quá muộn. Tôi nghĩ đó là lý do tại sao tôi không thể đánh giá cao nó. Thật là thú vị khi “đọc” nó, nhưng tôi phải mất một thời gian dài để tìm kiếm điều gì cụ thể trong đó. Tài liệu được trình bày một cách sống động nhưng khá hời hợt (vì nó được làm từ đầu!) và đơn giản là không có nhiều chủ đề và giải thích cần thiết. Nhưng bạn tôi, người được thừa kế nó, rất vui mừng với nó và hét lên rằng đây không chỉ là cuốn sách giáo khoa Java tốt nhất dành cho người mới bắt đầu mà còn là một kiệt tác trực tiếp trên thế giới và đây là cách trình bày tài liệu phức tạp.

Thuận lợi:

  • Hướng dẫn Java tốt nhất từ ​​đầu, dành cho người mới hoàn thành, được viết bằng ngôn ngữ sống.
  • Hình minh họa thú vị và hài hước.
  • Giải thích bằng ví dụ thực tế.

Sai sót:

  • Nhiều nước cho những ai đã vào chủ đề rồi.
  • Không phải lúc nào các câu đố và bài tập cũng thành công.

2. Java dành cho người ngu, Barry Bird

Tôi phải thừa nhận rằng cuốn sách này đã đến với tôi khi tôi đang làm lập trình viên. Trong phiên bản trước của bài viết về những cuốn sách hữu ích, tôi đã được hỏi một câu hỏi về nó trong phần bình luận và khi tôi nhìn thấy nó với một người thử nghiệm tại nơi làm việc, tôi quyết định xem xét kỹ hơn về nó. Java for Dummies của Barry Bird là một cuốn sách thú vị dành cho những người mới bắt đầu sẵn sàng sử dụng một số tài nguyên để giúp họ học hỏi. Đây không phải là hướng dẫn dành cho người mới bắt đầu mà là cuốn sách tham khảo đầu tiên về Java. Hiệu quả nhất là nghiên cứu nó song song với các bài học từng bước (như trong JavaRush) và (bắt buộc!) để củng cố ngay những gì bạn đã học vào thực tế. Dựa trên bài trình bày, tôi nhận ra ngay tác giả là một giáo viên, vì ở những chỗ, thoạt nhìn ông ấy dừng lại ở những chỗ mà thoạt nhìn không ngờ tới và xem xét các vấn đề được nêu ra một cách rất chi tiết. Đây không phải là ngẫu nhiên: chính những câu hỏi này mà học sinh của ông thường vấp ngã nhất. Nhưng một số chủ đề được đề cập một cách hời hợt... Tuy nhiên, đây là cuốn sách dành cho người mới bắt đầu, bạn không nên mong đợi sự sâu sắc từ nó. Giả sử hai chương đầu tiên tốt cho người mới bắt đầu, OOP (chương 3) được nghiên cứu tốt hơn trong một cuốn sách khác, nhưng chương 4 (kỹ thuật lập trình nâng cao - giải thích cách sử dụng các lớp và phương thức, bắt đầu bộ sưu tập, đa luồng, xử lý ngoại lệ) và 5 (mẹo tránh sai lầm) Tôi cho là rất thành công và hữu ích. Hơn nữa, Java For Dummies rất dễ đọc, có đầy đủ các ví dụ đầy màu sắc và hài hước. Nó có thể dễ dàng đọc được ở bất cứ đâu trên đường hoặc trước khi đi ngủ. Tất nhiên là nếu bạn hài lòng với phong cách của tác giả. Và hãy nhớ: không cuốn sách nào trên thế giới này có thể biến bạn thành nhà phát triển phần mềm. Chỉ có thực hành mới có thể. Sách Java hay nhất dành cho người mới bắt đầu và hơn thế nữa (2023) - 1

Thuận lợi:

  • Ngôn ngữ dễ dàng.
  • Lời khuyên đúng đắn và phần giới thiệu hay về một số chủ đề (chương 1, 2, 4).
  • Những ví dụ tốt.

Sai sót:

  • Không phải tất cả các chủ đề đều được trình bày tốt như nhau.
  • Không phải ai cũng thích phong cách của tác giả.

3. Java: Nguyên tắc lập trình cơ bản cho người mới bắt đầu, Nathan Clark

Một cuốn sách khác dành cho độc giả chưa có kinh nghiệm lập trình. Tôi muốn nói rằng ưu điểm chính của nó là tính chất từng bước. Nó giải thích khá rõ những điểm thường gây khó khăn cho những người lần đầu làm quen với lập trình. Tại đây bạn sẽ tìm hiểu cách chọn IDE và cách viết chương trình đầu tiên của mình. Cuốn sách sẽ giải thích Bộ công cụ phát triển Java và Môi trường chạy thi hành Java là gì và cung cấp các ví dụ về từng đoạn mã. Nhưng... cuốn sách này không có bản dịch tiếng Nga nên tôi giới thiệu nó cho những ai biết tiếng Anh ít nhất ở trình độ B1. Nhân tiện, mọi nhà phát triển đều cần biết tiếng Anh ở cấp độ này, vì vậy bạn có thể một mũi tên trúng hai con chim bằng cách học Java từ một cuốn sách tiếng Anh. Có đủ những cuốn sách như vậy trong bài viết này. Sách Java hay nhất dành cho người mới bắt đầu và hơn thế nữa (2023) - 2

Thuận lợi:

  • Giới thiệu suôn sẻ về lập trình và các chức năng cơ bản của ngôn ngữ Java.
  • Trình tự trình bày.

Sai sót:

  • Không có lời giải thích sâu sắc về khái niệm lập trình hướng đối tượng nên một số ví dụ thực tế có thể gây nhầm lẫn.
  • Không có bản dịch tiếng Nga.

4. Nghĩ về Java: Cách suy nghĩ như một nhà khoa học máy tính, Allen Downey và Chris Mayfield

Một cuốn sách thú vị khác có sẵn bằng tiếng Anh. Như các tác giả lưu ý, mục tiêu chính của cuốn sách là giúp người đọc phát triển các kỹ năng tư duy cần thiết để giải quyết các vấn đề vốn có của khoa học máy tính. Cuốn sách dành cho người mới bắt đầu, vì vậy các tác giả bắt đầu với những điều cơ bản mà những người không có kinh nghiệm lập trình hoặc kiến ​​thức về Java có thể hiểu được. Nó được viết đơn giản và có thể hữu ích cho sinh viên hoặc những người tự học muốn thành thạo lập trình và phát triển kỹ năng tư duy thuật toán. Giống như nhiều cuốn khác, cuốn sách bắt đầu bằng phần giới thiệu về OOP. Mỗi chương đều có phần từ vựng và bài tập để củng cố lý thuyết và nắm vững các kỹ năng lập trình. Sách Java hay nhất dành cho người mới bắt đầu và hơn thế nữa (2023) - 3

Thuận lợi:

  • Dễ dàng và thú vị để đọc.
  • Cuốn sách trình bày các khái niệm lập trình phức tạp một cách dễ hiểu và dễ hiểu.
  • Ví dụ và bài tập hay.

Sai sót:

  • Thiếu cách tiếp cận từng bước.
  • Một số độc giả có thể đặt câu hỏi sau một số phần vì không phải lúc nào cũng có phần giải thích chi tiết về một số chủ đề nhất định.

5. Java. Hướng dẫn cho người mới bắt đầu, Herbert Schildt

Sau khi xem qua cuốn sách giáo khoa này, tôi nghĩ rằng nó sẽ rất phù hợp cho những ai thích cách trình bày tài liệu truyền thống hơn trong Headfirst, nhưng cũng đang tìm kiếm một hướng dẫn từ đầu. Ở một số chỗ, cách trình bày trong sách rất chi tiết, gợi nhớ đến tài liệu mở rộng và dịch thuật kèm theo các ví dụ trực quan hay. Đối với tôi, đôi khi, tác giả vượt quá giới hạn và bắt đầu nhai quá nhiều, việc đọc trở nên nhàm chán... và đột nhiên - lộn nhào - và gần như ngay lập tức bỏ sót một chỗ khá phức tạp nào đó, và bạn hoàn toàn bối rối khi cố gắng hiểu cái gì và ở đâu. bạn đã bỏ lỡ. Tuy nhiên, không có quá nhiều chỗ như vậy trong cuốn sách và tôi biết có người tin rằng Hướng dẫn cho người mới bắt đầu là hướng dẫn Java tốt nhất dành cho những người chưa biết gì. Cá nhân tôi thấy cuốn sách không đồng đều. Giả sử tôi bắt đầu sắp xếp qua các bộ sưu tập và thay vì lời giải thích của con người, họ giao cho tôi nhiệm vụ tạo một Bộ độc lập dựa trên mảng. Vấn đề thú vị, nhưng trước tiên tôi muốn hiểu rõ hơn bộ sưu tập tiêu chuẩn là gì! Mặc dù cuốn sách này, giống như cuốn trước, được coi là sách giáo khoa dành cho người mới bắt đầu, nhưng kinh nghiệm dạy học của tôi cho thấy rằng nó chỉ tốt khi kết hợp với các tài liệu khác: đối với một người chuyển đổi ngành nhân văn, không phải mọi thứ sẽ đơn giản và rõ ràng. “Hướng dẫn cho người mới bắt đầu” phù hợp với những người đã học lập trình bằng cách nào đó (ví dụ như ở trường đại học), đã từ bỏ nó từ lâu, đồng thời thích phong cách trình bày của tác giả. Điều đặc biệt thú vị là sách giáo khoa được cập nhật liên tục và bao gồm các tính năng của Java 8, đồng thời phiên bản hiện tại (thứ mười) có tính đến JDK 9 và JDK 10. Sách Java hay nhất dành cho người mới bắt đầu và hơn thế nữa (2023) - 4

Thuận lợi:

  • Trình bày chu đáo truyền thống về những điều cơ bản.
  • Những ví dụ tốt.

Sai sót:

  • Có những bước chuyển từ "quá nhai" sang "nói thoáng qua"
  • Có chỗ chán lắm.
Nhân tiện, Herbert Schildt có một cuốn sách nổi tiếng khác về lập trình - "Java. Hướng dẫn đầy đủ". Đây là một cuốn sách giáo khoa hoàn toàn khác, cơ bản hơn. Hãy chuyển sang nó.

Hướng dẫn cho những người tiếp tục hoặc bắt đầu lại

Những cuốn sách sau đây phù hợp nhất cho những người đã có chút hiểu biết về lập trình và muốn tìm hiểu sâu hơn một chút về Java hoặc bắt đầu thực hành kỹ lưỡng hơn. Có các sách hướng dẫn, sách tham khảo và hướng dẫn về các tính năng Java mới hoặc tương đối mới mà mọi người thường không hiểu ngay, cũng như sách về Android (chính xác hơn là một cuốn sách về Android).

6. Java. Hướng dẫn đầy đủ, Herbert Shildt

Thú thật: có lần tôi tải cuốn sách này trên Internet về để đánh giá rồi mua hay không mua. Không đùa đâu, 1300 trang văn bản! Và mức giá cũng không kém phần ấn tượng so với số lượng. Tôi cũng làm như vậy với cuốn “Thư viện dành cho chuyên gia” gồm hai tập của Kay Horstmann (xem thêm về nó bên dưới). Nhìn về phía trước, tôi sẽ nói rằng tôi đã chọn cái thứ hai. Tại sao? Bởi vì trong cuốn sách Java. Hướng dẫn đầy đủ" Tôi thấy những thiếu sót tương tự như trong "Hướng dẫn cho người mới bắt đầu". Đôi khi những lời giải thích bị vò nát, đôi khi chúng bị vò nát, nhưng đồng thời chúng không chỉ bị vò nát mà bằng cách nào đó bị vò nát một cách bằng lời nói. Có lẽ đây là phong cách của tác giả và tôi nghĩ ai đó sẽ thích nó, hay nói đúng hơn là theo suy nghĩ của họ. Nhìn chung, Java 8: The Definitive Guide là một cuốn sách tham khảo tốt về Java. Nhưng cá nhân tôi thích cách trình bày những điều tương tự hơn trong một cuốn sách khác. Sách Java hay nhất dành cho người mới bắt đầu và hơn thế nữa (2023) - 5

Thuận lợi:

  • Hướng dẫn đầy đủ. Dường như có tất cả các chủ đề mà người mới bắt đầu, không chỉ người mới bắt đầu, cần biết.
  • Giải thích chi tiết.

Sai sót:

  • Rất nhiều nước (nhưng một số có thể thích điều đó!).
  • Bản dịch tiếng Nga không phải là tốt nhất.

7. Java. Thư viện chuyên nghiệp, Kay S. Horstmann, Harry Cornell

Sách của Schildt và Horstmann thường được so sánh với nhau. Cả người này và người kia đều có những người hâm mộ trung thành. Đối với tôi, cuốn sách hai tập của Horstmann là cuốn sách giáo khoa hay nhất về Java. Nó đã trở thành một cuốn sách tham khảo cho tôi ở trình độ JavaRush mới bắt đầu và trung cấp. Khi tôi không hiểu một chủ đề, tôi chủ yếu quay sang Horstmann và anh ấy đã làm rõ rất nhiều điều. Cuốn sách bao gồm mọi thứ từ cú pháp đến lập trình đa luồng, bản địa hóa chương trình và làm việc với XML. Và đừng để cái tên “Thư viện chuyên nghiệp” làm bạn sợ hãi (đó là điều khiến tôi sợ hãi), những điều cơ bản được trình bày khá đầy đủ. Ngoài ra, việc đọc lại định kỳ để làm mới và sắp xếp kiến ​​​​thức của bạn cũng rất hữu ích.

Thuận lợi:

  • Với số lượng trang đáng kinh ngạc nhưng lại có rất ít nước (không giống như Schildt).
  • Chứa mọi thứ mà người mới bắt đầu cần.
  • Mở rộng Java 8, tính đến các thay đổi trong JDK 9, 10 và 11.
  • Trình bày tốt các chủ đề về bộ sưu tập và thuốc generic.
  • Kết hợp tốt với JavaRush. Đi vào chủ đề, giải quyết vấn đề, sớm hay muộn bạn cũng không hiểu điều gì đó - hãy xem Horstmann, thử lại.

Sai sót:

  • Một số có thể thấy cuốn sách khô khan.
  • Không thực hành.
  • Bản dịch tiếng Nga có nhiều sai sót.

8. Thực hành Java 8: Lambdas, Luồng và Lập trình kiểu hàm

Với phiên bản thứ tám, chức năng mới đã đến với thế giới Java rất quan trọng và khác biệt so với trước đó nên bạn nên nghiên cứu các chủ đề này một cách riêng biệt với mọi chủ đề khác. Hơn nữa: cho đến nay vẫn chưa có bản cập nhật ngôn ngữ nào quan trọng hơn. Vì vậy, trước mắt chúng ta là Java 8 đang hoạt động, một cuốn sách giáo khoa thú vị về Java 8. Điều quan trọng là phải chỉ ra ngay rằng nó được thiết kế cho những người đã biết những điều cơ bản về Java “chỉ”. Điều khiến cuốn sách này hay đến vậy là nó có rất nhiều bài tập thực hành đa dạng và hữu ích. Các ví dụ bao gồm cả mẫu mã "đúng" và "không chính xác". Điều chính là không nhầm lẫn.

Thuận lợi:

  • Định hướng thực hành.
  • Hiển thị sự khác biệt giữa mã đúng và sai.

Sai sót:

  • Cần có thêm tài nguyên để hiểu sâu hơn về các nguyên tắc cơ bản của Java.

9. Java cốt lõi dành cho người thiếu kiên nhẫn (Phiên bản thứ ba) hoặc Java SE 9. Khóa học cơ bản, Kay Horstmann

Trong nguyên bản, cuốn sách này có tên là Core Java for the Im Patient, tức là “Java Core dành cho người thiếu kiên nhẫn”. Tôi không biết tại sao điều này không được đưa vào bản dịch. Theo tôi, điều này sẽ giúp cuốn sách không bị lạc lõng giữa các bạn cùng lứa tuổi. Có bản dịch ấn bản thứ hai của cuốn sách bằng tiếng Nga và đã có ấn bản thứ ba bằng tiếng Anh, được cập nhật lên Java 17. Cuốn sách được tổ chức như một tài liệu tham khảo nhanh và rất thuận tiện khi sử dụng để tìm câu trả lời cho một câu hỏi cụ thể nếu bạn quên điều gì đó hoặc trước đó đã lập trình bằng ngôn ngữ khác. Điều tôi đặc biệt thích là văn bản rất ngắn, cơ bản không cần nhai và chảy nước. Cuốn sách cung cấp mô tả hay về biểu thức lambda, luồng đầu vào/đầu ra và mô-đun. Tuy nhiên, cuốn sách này sẽ không giải thích biến hoặc vòng lặp là gì. Nhưng ngoài ra, tôi đã đề cập đến các cấu trúc cơ bản, bộ sưu tập, chú thích, tổng quát, ghi nhật ký, đa luồng - mọi thứ mà bạn sẽ làm việc trong thực tế. Thành thật mà nói, tôi thực sự thích cuốn sách này và thậm chí bây giờ tôi thỉnh thoảng vẫn xem nó. Chỉ cần nhớ rằng cuốn sách này không phù hợp với những người không biết gì về lập trình. Nó có nhiều khả năng hơn đối với những người đã học một số ngôn ngữ khác hoặc cùng một ngôn ngữ Java, nhưng trong một thời gian dài và không hoàn toàn.

Thuận lợi:

  • Khối thông tin ngắn. Mọi thứ đều đúng mục đích.
  • Không có chủ đề không cần thiết.
  • Một tuyển tập rất hay về các chủ đề hiện tại dành cho người mới bắt đầu lập trình Java để nghiên cứu.
  • Những ví dụ thành công.

Sai sót:

  • Sách không phù hợp với những người mới bắt đầu học lập trình từ đầu.

10. Java. Sổ tay dành cho nhà phát triển, Benjamin J. Evans, David Flanagan

Một cuốn sách tham khảo phổ quát hay, một sự thay thế cho sách của Horstmann. Chứa thông tin hữu ích cho cả người mới bắt đầu và nhà phát triển Java muốn tiếp tục nghiên cứu lập trình. Phiên bản mới nhất tại thời điểm viết cụm từ này (thứ bảy) dựa trên Java 11. Cuốn sách không dài, có nhiều ví dụ, API Java và các phương pháp phát triển tốt nhất sẽ được thảo luận. Cuốn sách rất dễ đọc và từ đó bạn có thể tìm hiểu những điều cơ bản về ngôn ngữ, các kỹ thuật lập trình hữu ích và thậm chí cả các xu hướng mới trong Java.

Thuận lợi:

  • Tóm tắt ngắn gọn và hay.
  • Có mọi thứ mà một lập trình viên mới vào nghề cần.
  • Mô tả tốt về các công cụ hiện đại.
  • Những ví dụ thành công.

Sai sót:

  • Không phải lúc nào cũng có bản dịch thuật ngữ đầy đủ sang tiếng Nga.

11. Hệ thống mô-đun Java, Nikolay Parlog

Cuốn sách này có sẵn bằng tiếng Anh và tiếng Nga. Đây là hướng dẫn rất chi tiết về hệ thống mô-đun Java. Tác giả lập luận rằng việc tạo ra một ứng dụng đáng tin cậy và an toàn sẽ dễ dàng hơn nhiều nếu mã được đóng gói thành các khối gọn gàng. Các mô-đun trong Java là một công cụ tương đối mới, những thay đổi kiến ​​trúc cơ bản chỉ ảnh hưởng đến lõi Java kể từ phiên bản 9. Và mặc dù ngày càng có nhiều dự án có mô-đun, vẫn có những người đã quen làm việc theo cách cũ và không biết gì về những mô-đun này. những đổi mới thú vị. Sau khi đọc cuốn sách này, bạn sẽ hiểu cách theo dõi cách các tệp JAR khác nhau tương tác và dễ dàng tìm thấy các phần phụ thuộc bị thiếu. Nếu bạn nghiêm túc về các dự án Java mô-đun hoặc cần tìm hiểu các mô-đun cho công việc, hãy xem cuốn sách này.

Thuận lợi:

  • Mô tả đầy đủ nhất về ưu điểm của hệ thống mô-đun.
  • Các ví dụ và chiến lược tuyệt vời để di chuyển sang mô-đun.

Sai sót:

  • Nó có ít mô tả cú pháp, gây khó khăn cho người mới bắt đầu.

12. Java hiện đại đang hoạt động: Lambdas, luồng, lập trình chức năng và phản ứng

Mặc dù Java đã xuất hiện được nhiều năm nhưng ngôn ngữ này vẫn không ngừng đạt được những khả năng mới. Tất nhiên, tất cả chúng ta đều là con người và các lập trình viên đôi khi bỏ qua các tính năng và cách tiếp cận mới cũng như không muốn triển khai chúng trong các dự án Java. Những cuốn sách như Modern Java in Action được thiết kế để giúp giải quyết vấn đề này. Hướng dẫn này trình bày chi tiết các chủ đề thường được đề cập trong các khóa đào tạo ngắn hạn có cố vấn. Hãy để tôi lưu ý rằng khóa đào tạo như vậy thường kéo dài 1-3 ngày và thông tin ở đó rất tập trung. Vì vậy, những lập trình viên mới vào nghề chỉ đơn giản là chìm đắm trong thông tin mới và không tiếp thu được nó. Và cuốn sách này sẽ hướng dẫn bạn từng bước từ biểu thức lambda đến tham chiếu phương thức, giao diện chức năng và luồng cũng như liệu bạn có thể giải quyết nó một cách cẩn thận hay không.

Thuận lợi:

  • Cuốn sách này chứa tất cả các tính năng hiện đại của Java nên rất hữu ích.
  • Trình bày nhất quán các khái niệm phức tạp.
  • Các tác giả so sánh xu hướng mới với xu hướng truyền thống. Vì vậy, cuốn sách này có thể được khuyến khích ngay cả đối với người mới bắt đầu.

Sai sót:

  • Đối với những người đã biết đôi điều về chủ đề này, cuốn sách có thể hơi dài dòng.

13. Trưởng nhóm phát triển Android đầu tiên

Java là ngôn ngữ gốc của Android. Do đó, một trong những lựa chọn phổ biến nhất để bắt đầu phát triển ứng dụng bằng ngôn ngữ này là tạo một ứng dụng Android. Cuốn sách này (có bản dịch tiếng Nga "Lập trình Head First cho Android") là một cuốn khác trong bộ Head First. Vì vậy, những đặc điểm gia đình của bộ truyện khá cố hữu trong sách hướng dẫn này. Nghĩa là, ở đây bạn sẽ tìm thấy rất nhiều hình ảnh, một phong cách dễ dàng, một số lượng lớn các bài tập mà không đi sâu vào bản chất. Điều này có nghĩa là nếu bạn muốn hiểu đầy đủ về quá trình phát triển ứng dụng Android, bạn có thể cần thực hiện một số nghiên cứu bổ sung và tìm hiểu sâu hơn về các nguồn. Nhưng nếu bạn muốn bắt đầu nhanh chóng việc lập trình cho hệ thống này thì đây chính là nơi dành cho bạn.

Thuận lợi:

  • Văn phong dễ hiểu, hình ảnh, nhiều nhiệm vụ và bài tập dự án có thể thu hút người đọc tích cực vào quá trình học tập.
  • Đơn giản và dễ tiếp cận: Các tác giả cố gắng giải thích các khái niệm phức tạp bằng những thuật ngữ đơn giản, giúp người mới bắt đầu dễ hiểu hơn.

Sai sót:

  • Lỗi thời: Những thay đổi nhanh chóng về công nghệ trong thế giới lập trình và Android có thể khiến cuốn sách không còn chứa các phương pháp và công cụ hiện tại nữa.
  • Một số chủ đề được xử lý quá hời hợt.

14. Học Java: Giới thiệu lập trình thế giới thực với Java

Tôi phải nói ngay rằng cuốn sách này không dành cho người mới bắt đầu. Bạn sẽ cần nó nếu bạn biết Core Java ít nhất ở mức cơ bản và có thể viết các ứng dụng đơn giản. Nếu vậy, cuốn sách này sẽ giúp bạn hiểu các khái niệm phức tạp khác nhau của ngôn ngữ Java và giải thích cách tất cả các lớp, thư viện, biểu thức lambda, đầu vào/đầu ra, v.v. này được sử dụng trong lập trình công nghiệp thực tế. Cuốn sách này dựa trên các phiên bản Java hiện đại và chứa các ví dụ khá đơn giản nhưng hữu ích cho công việc thực tế. Phần cuối cùng nói về việc sử dụng Java trực tiếp cho các ứng dụng web và máy chủ web, điều mà bạn không thường thấy trong sách. Nhân tiện, cuốn sách này cũng có phiên bản tiếng Nga (“Lập trình bằng Java”, Mark Loy).

Thuận lợi:

  • Các phiên bản hiện đại của Java.
  • Ví dụ về các ứng dụng web và máy chủ.

Sai sót:

  • Khó khăn cho người mới bắt đầu.

Cổ điển vượt thời gian

Những cuốn sách tôi viết dưới đây có thể được gọi là văn bản thiêng liêng dành cho những người mới bắt đầu và những người theo đạo jav trung cấp.

15. Java hiệu quả, Joshua Bloch

Đó là một kho báu, không phải một cuốn sách và tập trung vào các nguyên tắc cơ bản của ngôn ngữ từ một trong những tác giả của nó, Joshua Bloch. Rất có thể, bạn đã sử dụng các thư viện của nó (ví dụ: trong Bộ sưu tập Java). Tôi sẽ đặt chỗ ngay: những người mới bắt đầu hoàn thành, ngoại trừ một số người chạy thần tốc, không cần cuốn sách Java hiệu quả. Đầu tiên, tốt hơn hết là bạn nên nắm vững cú pháp và thực hành ít nhất một số thực hành lập trình, có thể nói, hãy tìm hiểu kỹ về nó và sau đó bắt tay vào sáng tạo của Joshua Bloch. Cuốn sách sẽ hữu ích cho những ai muốn thực sự hiểu Java, hình thành cách tiếp cận phù hợp khi lập trình bằng ngôn ngữ này, không chỉ hiểu cách thực hiện mà còn hiểu mọi thứ khác cần được thực hiện chính xác theo cách đó. Và còn dành cho những ai muốn tìm hiểu sâu về OOP (về nguyên tắc đây là những thứ liên quan đến nhau). Cuốn sách này là cuốn sách giáo khoa tốt nhất về Java trong bối cảnh tiếp cận lập trình hướng đối tượng.

Thuận lợi:

  • Một bài trình bày tài liệu xuất sắc về chủ đề OOP.
  • Thực hành lập trình tốt nhất được cung cấp.
  • Tác giả biết rất rõ về Java từ bên trong.

Sai sót:

  • Khó khăn cho người mới bắt đầu.

16. Triết học Java, Bruce Eckel

Tiêu đề của cuốn sách này đã nói lên điều đó. Đây là một bản alpha và omega khác dành cho tất cả những ai muốn biết về Java! Trong cuốn sách này, bạn sẽ tìm thấy những ví dụ hay và rõ ràng, từ đó bạn sẽ hiểu rõ Java hoạt động như thế nào. Thật khó để tôi có thể nói cuốn nào trong hai cuốn sách - "Triết lý Java" hay "Lập trình hiệu quả" - hay hơn. Tôi có thể nói rằng Eckel thân thiện hơn với người mới bắt đầu, trong khi Bloch yêu cầu một số kinh nghiệm. Lần đầu tiên tôi đọc chương "Triết học Java" khi tôi mới bắt đầu học JavaRush (tôi nghĩ rằng nó đã được liệt kê như được khuyến nghị ở một trong những cấp độ đầu tiên). Thế thì cô ấy không hợp với tôi. Nhưng sau cấp 10 hoặc 12 - đó là một bài hát! Và tôi sẽ nói, một bài hát rất hữu ích. Tôi quay lại vấn đề này sau khi đọc đến phần Lập trình hiệu quả. Tôi sẽ nói điều này: hãy để Bloch và Eckel nói về cùng một điều, nhưng theo những cách khác nhau và đưa ra những ví dụ khác nhau.

Thuận lợi:

  • Một bài trình bày chuyên sâu về các nguyên tắc Java từ một chuyên gia.
  • Nó sẽ tốt cho những người đang chuyển đổi từ các ngôn ngữ khác - chẳng hạn như có nhiều so sánh với C++.
  • Đối với tôi, có vẻ như bạn có thể bắt đầu đọc nó ở cấp 10, nhưng Eckel – muộn hơn một chút.

Sai sót:

  • Bản dịch tiếng Nga rất không thành công.

Sách lập trình tổng quát

Những cuốn sách sau đây không liên quan trực tiếp đến Java, nhưng chúng sẽ hữu ích cho người mới bắt đầu phát triển vì chúng giúp phát triển tư duy của lập trình viên và hiểu cách máy tính hoạt động, các nguyên tắc và khái niệm chính về lập trình, mã sạch là gì và cách viết Nó.

17. Các bài toán khoa học máy tính cổ điển trong Java

Cuốn sách này của David Kopec có thể được dịch là "Các vấn đề cổ điển trong khoa học máy tính trong Java". Và nó dành cho cả những nhà phát triển có kinh nghiệm và những người mới bắt đầu biết ngôn ngữ lập trình và đã bắt đầu đối mặt với các vấn đề trong thế giới thực. Hoặc dành cho những ai quan tâm đến những công việc không chuẩn mực để phát triển tư duy lập trình viên. Hoặc dành cho những bạn muốn nâng cao kỹ năng và làm tốt các buổi phỏng vấn. Một số nhiệm vụ dường như không thể vượt qua, nhưng thế giới lập trình lại nhỏ hơn bạn tưởng. Rất có thể, ai đó đã giải quyết được vấn đề nan giải của bạn. Trong cuốn sách của mình, David Kopec đã thu thập các giải pháp, nguyên tắc và thuật toán làm sẵn hữu ích nhất. Các bài toán khoa học máy tính cổ điển chứa 55 ví dụ thực tế bao gồm các chủ đề mới nhất: thuật toán cơ bản, ràng buộc, trí tuệ nhân tạo, v.v. Các chủ đề chính của cuốn sách:
  • Đệ quy, ghi nhớ và thao tác bit.
  • Tìm kiếm, đồ thị và các thuật toán di truyền.
  • Phân cụm (phương pháp k-mean), mạng lưới thần kinh và tìm kiếm cạnh tranh.
  • Thuận lợi:

    • Tất cả các thuật toán hữu ích và cách tiếp cận chúng đều có trong một cuốn sách.
    • Ví dụ trong Java.

    Sai sót:

    • Một số ví dụ rất khó hiểu đối với người mới bắt đầu.

    18. Head First Learn to Code của Eric Freeman

    Tôi đã đề cập đến cuốn sách Head First hai lần trong bài viết này. Đây là cái thứ ba! Nó, giống như tất cả các cuốn sách trong bộ sách, được viết cho người mới bắt đầu và dành riêng cho việc lập trình. Nếu bạn đã từng xem qua bộ truyện này thì khi mở cuốn sách này ra, bạn sẽ dễ dàng nhận ra phong cách đặc trưng của Head First. Tôi giới thiệu cuốn sách này nếu bạn cần trợ giúp về các khái niệm lập trình chính theo cách thú vị, dễ hiểu.

    Thuận lợi:

    • Cung cấp sự hiểu biết chung về lập trình.

    Sai sót:

    • Sử dụng các ví dụ bằng Python (vì đây được coi là ngôn ngữ dễ nhất cho người mới bắt đầu).

    19. Mã sạch, Robert S. Martin

    Một lập trình viên mới vào nghề không chú ý nhiều đến phong cách mã của mình. Anh ấy tập trung hơn nhiều vào việc chống lại lỗi. Tuy nhiên, việc cải thiện phong cách của bạn là rất quan trọng đối với công việc tiềm năng của bạn: một người không tuân thủ mã sạch sẽ rất khó làm việc cùng trong các dự án. Mã của nó rất khó đọc và bảo trì. Cuốn sách này sẽ cho bạn thấy sự khác biệt giữa mã tốt và mã xấu, đồng thời dạy cho bạn các quy tắc cơ bản để viết mã rõ ràng, dễ đọc bằng các phương pháp hay nhất. Hãy hỏi một chuyên gia và rất có thể anh ấy sẽ giới thiệu cuốn sách này cho mọi nhà phát triển đầy tham vọng.

    Thuận lợi:

    • Các ví dụ và mẹo hay để tạo mã dễ đọc.
    • Một trong số ít cuốn sách thuộc loại này.

    Sai sót:

    • Tác giả đôi khi quá cẩn thận.

    20. Mật mã: Ngôn ngữ bí mật của khoa học máy tính, Charles Petzold

    Cuốn sách này có thể được giới thiệu cho cả một học sinh quan tâm đến máy tính và một lập trình viên có nhiều năm kinh nghiệm muốn hiểu rõ hơn về khoa học máy tính. Tôi đã xem qua phiên bản tiếng Nga của cuốn sách này khi còn học trung học và rất hứng khởi. Nó thậm chí còn giải thích thiết kế mạch bằng các ví dụ rất đơn giản và tất cả đều bắt đầu với những con gà và một chiếc đèn pin cơ bản. Tác giả đề cập đến nhiều chủ đề như điện, mạch điện, rơle, hệ thống nhị phân, logic, cổng, bộ vi xử lý, mã và các chủ đề khác để dần dần xây dựng sự hiểu biết về cách thức hoạt động của công nghệ máy tính. Sau khi đọc cuốn sách này, bạn sẽ hiểu điều gì đằng sau các pixel trên màn hình của bạn và điều gì xảy ra mỗi khi bạn sử dụng thiết bị của mình.

    Thuận lợi:

    • Đi sâu vào mức độ thấp nhất của phần cứng.

    Sai sót:

    • Đôi khi lặn quá sâu :)

    21. Giải quyết cuộc phỏng vấn viết mã, Gail Laakmann McDowell

    Đây là một cuốn sách rất thú vị dành cho những ai đang có ý định tìm việc làm lập trình viên phần mềm trong thời gian sắp tới. Nó chứa một loạt các câu hỏi và giải pháp thực tế mà bạn có thể được hỏi trong một cuộc phỏng vấn. Tất nhiên, mọi thứ đều trôi chảy, mọi thứ đều thay đổi. Và xu hướng “thử nghiệm” dành cho nhà phát triển đang thay đổi. Tuy nhiên, cuốn sách này sẽ giúp người mới bắt đầu hiểu được những gì mong đợi từ cuộc phỏng vấn. Tuy nhiên, tôi khuyên bạn nên tìm hiểu kiến ​​thức này trên các diễn đàn và cộng đồng Java.

    Thuận lợi:

    • Chuẩn bị cho các cuộc phỏng vấn lập trình trong thế giới thực.

    Sai sót:

    • Nó sẽ không giúp ích gì nếu không có nguồn bổ sung.

    Thuật toán và cấu trúc dữ liệu

    Kiến thức về thuật toán giúp giải quyết các vấn đề phát triển phần mềm một cách hiệu quả và tối ưu. Biết cách chọn cấu trúc dữ liệu phù hợp giúp cải thiện hiệu suất, giảm chi phí bộ nhớ và cung cấp các chương trình ổn định và hiệu quả hơn. Chưa hết, bạn cần phải biết họ ít nhất để vượt qua các cuộc phỏng vấn. Vì vậy dưới đây là một số cuốn sách hữu ích.

    22. Thuật toán rung chuyển, Aditya Bhargava

    Một cuốn sách rất thú vị và khá đơn giản về những điều cơ bản của thuật toán. Nó giải thích các thuật toán phổ biến như sắp xếp và tìm kiếm ở dạng đồ họa. Chính những cuốn sách như thế này đã giúp bạn hiểu được vẻ đẹp, sự phức tạp của các thuật toán và yêu thích chúng bằng cả trái tim. Sách có nhiều hình ảnh: tác giả ưa thích cách giải thích bằng hình ảnh. Cuốn sách được chia thành các phần ngắn với nhiều ví dụ khác nhau để đảm bảo rằng thông tin mới được tiếp thu theo đúng tỷ lệ.

    Thuận lợi:

    • Giải thích tốt với đồ họa.
    • Thú vị về sự phức tạp.

    Sai sót:

    • Ví dụ trong Python.

    23. Giới thiệu về thuật toán, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein

    Giới thiệu về thuật toán (tựa tiếng Nga “Thuật toán: Xây dựng và phân tích”) là một cuốn sách rất thành công về thuật toán dành cho những ai thích cách trình bày tài liệu nhất quán và kỹ lưỡng. Tất cả các ví dụ trong cuốn sách đều được viết bằng cái gọi là mã giả, nghĩa là không phải bằng ngôn ngữ lập trình thực mà bằng ngôn ngữ tổng hợp mà mọi người đều có thể hiểu được bằng trực giác. Mặc dù cuốn sách được quảng cáo là "giới thiệu về thuật toán", nhưng các chủ đề được đề cập rất rộng và các khái niệm về cấu trúc dữ liệu cũng như thuật toán được giải thích khá rõ ràng.
    • Sắp xếp: Nghiên cứu chi tiết về các thuật toán sắp xếp khác nhau như sắp xếp chèn, sắp xếp trao đổi, sắp xếp nhanh, sắp xếp hợp nhất, v.v.
    • Tìm kiếm: tìm kiếm tiến, tìm kiếm lùi, tìm kiếm nhị phân và các tìm kiếm khác.
    • Cây: cây nhị phân, cây đỏ đen, cây AVL và các cây khác.
    • Đồ thị: truyền tải đồ thị, tìm kiếm đường đi ngắn nhất, cây khung xương tối thiểu, v.v.
    • Lập trình năng động.
    Nhưng cuốn sách cũng có những khuyết điểm. Theo tôi, phần Giới thiệu tập trung quá nhiều vào khía cạnh lý thuyết của thuật toán nhưng đôi khi lại thiếu chi tiết về cách triển khai thực tế của chúng. Bản gốc được viết bằng tiếng Anh khá đơn giản (tôi khuyên dùng phiên bản tiếng Anh!).

    Thuận lợi:

    • Một bài trình bày lý thuyết xuất sắc về các thuật toán quan trọng nhất để sắp xếp, tìm kiếm, cây, đồ thị.
    • Tiếng Anh dễ dàng.

    Sai sót:

    • Thực hành không đủ, tập trung vào khía cạnh lý thuyết của chủ đề.

    24. Nghĩ về cấu trúc dữ liệu: Thuật toán và truy xuất thông tin trong Java (Allen B. Downey)

    Đây là hướng dẫn hữu ích về cách sử dụng cấu trúc dữ liệu trong lập trình với các ví dụ trong Java. Cuốn sách tập trung vào thực hành, giúp bạn nhanh chóng hiểu cách triển khai và sử dụng các thuật toán cũng như cấu trúc dữ liệu trong các chương trình thực tế. Tác giả giải thích các khái niệm phức tạp về thuật toán và cấu trúc dữ liệu một cách dễ hiểu và dễ hiểu, vì vậy nếu bạn có ít nhất kỹ năng lập trình cơ bản thì cuốn sách này phù hợp với bạn. Mỗi phần bao gồm phần giới thiệu về chủ đề, ví dụ, giải thích bổ sung và bài tập để củng cố lý thuyết. Điều đặc biệt thú vị là mỗi chương đều có các vấn đề về thiết kế cho phép người đọc áp dụng những gì họ học được để tạo ra các triển khai thuật toán và cấu trúc dữ liệu của riêng mình.

    Thuận lợi:

    • Tài liệu ngắn gọn với các ví dụ hữu ích.
    • Sự sẵn có của các nhiệm vụ dự án.

    Sai sót:

    • Có thể hơi khó khăn cho người mới bắt đầu.
    • Không phải tất cả các chủ đề đều được đề cập ở độ sâu như nhau.

    25. Thuật toán, Robert Sedgewick, Kevin Wayne

    Một trong những cuốn sách nổi tiếng nhất về lập trình, được viết bởi các chuyên gia thực sự trong lĩnh vực của họ, những người đã nuôi dưỡng hơn một thế hệ kỹ sư phần mềm. Nếu bạn không bị đe dọa bởi một bài thuyết trình học thuật kỹ lưỡng và hoàn toàn đắm chìm trong chủ đề, nếu bạn đã sẵn sàng thực sự hiểu các thuật toán, hãy phân tích chúng một lần và mãi mãi, hãy nghiên cứu cuốn sách này. Đó là một lựa chọn tốt cho sinh viên, giáo viên và nhà phát triển. Tuy nhiên, đối với người mới bắt đầu, có thể phải mất thêm thời gian và công sức để nắm bắt tốt tài liệu trong sách. Các tác giả đã kết hợp thành công lý thuyết với các ví dụ thực tế trong Java, giúp người đọc dễ dàng nắm bắt các khái niệm phức tạp hơn.

    Thuận lợi:

    • Trình bày rõ ràng và kỹ lưỡng.
    • Rất nhiều ví dụ trong Java.
    • Chủ đề đa dạng: Cuốn sách bao gồm hầu hết mọi thứ bạn cần biết về thuật toán.

    Sai sót:

    • Trình bày học thuật quá mức.
    • Cuốn sách này có thể khó tự học nếu không có sự hỗ trợ và hỗ trợ thích hợp.
    Bình luận
    TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
    GO TO FULL VERSION