JavaRush /Blog Java /Random-VI /Danh sách kiểm tra của nhà phát triển Java. Những điều mộ...

Danh sách kiểm tra của nhà phát triển Java. Những điều một nhà phát triển nên biết

Xuất bản trong nhóm
Xin chào! Hôm nay chúng ta sẽ nói về con đường phát triển của một nhà phát triển Java và những điều anh ta phải biết để được yêu cầu. Danh sách kiểm tra của nhà phát triển Java.  Những điều lập trình viên nên biết - 1Bất kỳ nhà phát triển nào tại một cuộc phỏng vấn đều có thể “đánh trượt” ứng viên cho một vị trí. Ví dụ, anh ấy sẽ bắt đầu đặt câu hỏi về các chủ đề cụ thể mà anh ấy gặp phải trong dự án hiện tại. Nhưng không sao cả khi không biết mọi thứ. Việc bạn không trả lời một số câu hỏi cũng là điều bình thường. Nói chung, mọi lập trình viên Java đều phải có kiến ​​thức cơ bản về phát triển. Vì vậy, hãy xem những công nghệ nào được coi là “cơ bản”.

1. Thuật toán cơ bản

Điều đầu tiên bạn nên thực hiện khi bắt đầu học lập trình (điều này không chỉ áp dụng cho Java) là phân tích những điều cơ bản. Ví dụ, các thuật toán. Có vô số thuật toán và bạn không nên dành cả năm để cố gắng học càng nhiều thuật toán càng tốt: hầu hết chúng sẽ không hữu ích cho bạn. Kiến thức tối thiểu bắt buộc có thể được lấy từ cuốn sách “ Thuật toán Grocking ”. Điều này sẽ đủ để bắt đầu cuộc hành trình, nhưng nếu muốn, bạn có thể tìm hiểu với sự trợ giúp của cuốn sách “ Cấu trúc và thuật toán ” hoặc “ Thuật toán trong Java ” của Robert Sedgwick và Kevin Wayne. Tôi cũng khuyên bạn nên nâng cao kiến ​​​​thức cơ bản về khoa học máy tính. Điều này có thể được thực hiện trong JavaRush bằng khóa học CS50 .

2. Cú pháp Java

Sau khi học các thuật toán cơ bản, chúng ta phải học cú pháp Java. Rốt cuộc, tất cả chúng ta đều đang học cách trở thành lập trình viên Java ở đây phải không? Khóa học JavaRush là hoàn hảo cho việc này. Trong quá trình thực hiện nhiều tác vụ, bạn sẽ trở nên thông thạo cú pháp Java và sẽ viết/đọc mã Java mà không cần suy nghĩ nhiều, như thể đó là ngôn ngữ mẹ đẻ của bạn. JavaRush là thực hành và ngoài nó, bạn cũng cần xem xét lý thuyết để hiểu chính xác những gì bạn đang làm. Để làm điều này, bạn có thể đọc sách, ví dụ như một trong những cách sau:
  • Đầu Java ”;
  • “Java cho người giả” của Barry Bird;
  • “Java. Hướng dẫn cho người mới bắt đầu” Herbert Schildt.
Sau khi đọc những cuốn sách này, bạn có thể tiếp tục đọc những cuốn sách khó hơn:
  • “Triết học Java”, Bruce Eckel;
  • “Lập trình hiệu quả”, Joshua Bloch;
  • “Java. Hướng dẫn đầy đủ”, Herbert Schildt.
Ba cuốn sách cuối cùng không dễ đọc đối với người mới bắt đầu, nhưng chúng có thể cung cấp nền tảng vững chắc về lý thuyết Java. Ngoài ra, đừng quên các bài viết trên JavaRush, vì chúng có thể tìm thấy lời giải thích về hầu hết các chủ đề mà bạn quan tâm. Bạn có thể tìm thấy bài viết mình cần bằng cách nhập chủ đề mà bạn quan tâm: Danh sách kiểm tra của nhà phát triển Java.  Những điều lập trình viên nên biết - 2Tôi cũng khuyên bạn nên tìm kiếm các câu hỏi phỏng vấn Java, chẳng hạn như trong bộ sưu tập các câu hỏi về các lớp và giao diện trừu tượng này . Điều này sẽ giúp bạn hiểu chính xác những gì bạn cần học và những câu hỏi cần chuẩn bị.Danh sách kiểm tra của nhà phát triển Java.  Những điều lập trình viên nên biết - 3

3. Các mẫu lập trình

Các mẫu lập trình là một số mẫu có thể lặp lại, thể hiện giải pháp cho một vấn đề trong bối cảnh thường gặp. Trong số đó có những mẫu cơ bản, đơn giản mà mọi lập trình viên tự trọng đều nên biết. Để hiểu chủ đề này, hãy sử dụng cuốn sách “ Head First. Mẫu thiết kế .” Cô ấy sẽ giải thích rõ ràng các mẫu lập trình cơ bản. Nhưng sách nói rất nhiều về Java nên khi học sách các bạn cần phải nắm vững ngôn ngữ lập trình này. Để tìm hiểu sâu hơn về các mẫu, bạn cũng có thể đọc “Kỹ thuật thiết kế hướng đối tượng. Các mẫu thiết kế” từ Gang of Four ( Gang of Four: một nhóm tác giả bao gồm Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides - ghi chú của biên tập viên) . Sau khi nghiên cứu chủ đề này, bạn sẽ bắt đầu thấy các mẫu hầu như ở khắp mọi nơi trong mã của mình. Hãy chú ý đến điều này, đặc biệt là các mẫu được sử dụng trong Spring , vì đây là một câu hỏi phổ biến trong các cuộc phỏng vấn.

4. Mô hình lập trình. Độ sạch của mã

Bên cạnh các mẫu lập trình tiêu chuẩn, còn có nhiều nguyên tắc và mô hình khác nhau mà bạn cần biết ( SOLID , GRASP ). Cũng cần phải đảm bảo rằng mã sạch và dễ đọc. Mọi thứ bạn cần biết về chủ đề này đều có trong cuốn sách “ Clean Code ” của Robert Martin hoặc lấy cuốn “Perfect Code” của Steve McConnell.

5.SQL

Bước tiếp theo của chúng ta là nghiên cứu ngôn ngữ của cơ sở dữ liệu quan hệ - SQL . Cơ sở dữ liệu là nơi lưu trữ thông tin (dữ liệu) của ứng dụng web. Cơ sở dữ liệu bao gồm nhiều bảng (sổ địa chỉ trên điện thoại của bạn là ví dụ đơn giản nhất về các bảng như vậy). Bạn có thể đọc thêm về cơ sở dữ liệu trong bài viết này . Đối với các nhà phát triển Java, phạm vi trách nhiệm không chỉ là ứng dụng Java mà còn là cơ sở dữ liệu mà nó tương tác và nơi lưu trữ dữ liệu. Trong cơ sở dữ liệu quan hệ (phổ biến nhất), tất cả tương tác xảy ra thông qua một ngôn ngữ đặc biệt - Ngôn ngữ truy vấn có cấu trúc hoặc SQL. Để hiểu chủ đề này, chỉ cần đọc một trong những cuốn sách là đủ:
  • “Học SQL”, Alan Bewley;
  • “SQL”, Chris Fialy;
  • “Head First SQL” của Lynn Bailey.
Nhưng thực hành mà không có lý thuyết thì không được phải không? Và tại các cuộc phỏng vấn để kiểm tra kiến ​​thức về SQL, họ thường (hầu như luôn luôn) đưa ra một hoặc hai vấn đề về cách viết truy vấn SQL. Do đó, điều rất quan trọng là rèn luyện các kỹ năng SQL thực tế của bạn để thể hiện bản thân một cách tốt đẹp. Một nguồn tài nguyên tuyệt vời để thực hành SQL có thể là tài nguyên sql-ex.ru .

6. MySQL/PostgreSQL

Sau khi học ngôn ngữ SQL, bạn cần làm quen với việc triển khai cơ sở dữ liệu cụ thể. Tùy thuộc vào cơ sở dữ liệu, một số lệnh có thể khác nhau đáng kể. Và sự khác biệt về khả năng cơ sở dữ liệu là khá đáng chú ý. Cơ sở dữ liệu quan hệ phổ biến nhất là MySQLPostgreSQL . Danh sách kiểm tra của nhà phát triển Java.  Những điều lập trình viên nên biết - 4MySQL đơn giản hơn nhiều, nhưng PostgreSQL có nhiều khả năng hơn. Để bắt đầu, chỉ cần làm quen với ít nhất một trong số chúng là đủ. Bạn có thể nghiên cứu cách triển khai cơ sở dữ liệu nếu bạn sử dụng kỹ năng Google của mình - tìm các bài viết và hướng dẫn cần thiết trên Youtube. Bạn phải giỏi tìm kiếm chính xác những câu hỏi mà bạn quan tâm, bởi vì lập trình viên là người “có đai đen” trong các tìm kiếm của Google.

7. Maven/Gradle

Bạn cần nghiên cứu một trong các khung Gradle hoặc Maven , được thiết kế để tập hợp các dự án, vì giờ đây, đối với bạn, Java không chỉ là các nhiệm vụ từ một vài lớp mà còn là ngôn ngữ để viết các ứng dụng chính thức. Bạn phải hiểu cách lắp ráp một dự án, các giai đoạn lắp ráp là gì, cách tải các thư viện bên ngoài cần thiết bằng mã tạo sẵn, v.v. Mặc dù Gradle mới hơn và ngắn gọn hơn nhưng Maven vẫn được sử dụng trong hầu hết các trường hợp. Vì vậy, hãy đặc biệt chú ý đến vòng đời lắp ráp của nó.

8. Git

Git là một hệ thống kiểm soát phiên bản phân tán. Công nghệ này cho phép các nhà phát triển cùng nhau tạo ra một ứng dụng mà không can thiệp lẫn nhau. Tất nhiên, có những điểm tương tự với hệ thống kiểm soát phiên bản này. Ví dụ: Lật đổ . Nhưng Git được sử dụng chủ yếu và bạn cần có khả năng làm việc với nó. Danh sách kiểm tra của nhà phát triển Java.  Những điều lập trình viên nên biết - 5Ngoài các bài viết giáo dục về nó, còn có đủ video trên Youtube sẽ giúp bạn từng bước làm chủ công nghệ này. Lúc đầu, tốt hơn là sử dụng bảng điều khiển Git chứ không phải một loại triển khai giao diện nào đó, bởi vì trong đó bạn sẽ cần thực hiện mọi thứ thông qua các lệnh. Trong các cuộc phỏng vấn, mọi người thường yêu cầu một số lệnh Git , vì vậy tôi khuyên bạn nên viết chúng ra và giữ chúng ở nơi nào đó tiện dụng. Tôi cũng khuyên bạn nên ghi chú để đánh dấu những điểm quan trọng nhất, để trước cuộc phỏng vấn bạn có thể xem qua và làm mới trí nhớ của mình.

9. JDBC

Công nghệ này được thiết kế để cung cấp kết nối giữa ứng dụng Java của bạn và cơ sở dữ liệu quan hệ. Để làm quen với những điều cơ bản, tôi khuyên bạn nên đọc bài viết JDBC hoặc Where It All Begins. Có rất nhiều bài viết giải thích công nghệ JDBC và cung cấp các ví dụ cơ bản, mặc dù thực tế là không còn ai sử dụng trực tiếp JDBC nữa.

10.JPA. Ngủ đông

JPA là một cách thiết lập kết nối giữa ứng dụng Java và cơ sở dữ liệu, giống như JDBC. Nhưng đồng thời, JPA là một công nghệ cấp cao hơn và do đó dễ sử dụng hơn. Nhưng JPA chỉ là một đặc tả (một khái niệm) chưa được triển khai và yêu cầu triển khai cụ thể. Có rất nhiều cách triển khai như vậy, nhưng cách gần nhất với lý tưởng của JPA, phổ biến và phát triển, được coi là Hibernate . Trong sự nghiệp phát triển của mình, bạn sẽ gặp phải công nghệ này nhiều lần. Do đó, ngoài việc làm quen với công nghệ này qua các bài viết, bạn có thể cân nhắc đọc một cuốn sách về nó, chẳng hạn như “ Java Persistence API ”.

11. Mùa xuân

Khi bạn trở thành nhà phát triển Java, Spring không còn chỉ là một từ đối với bạn nữa. Danh sách kiểm tra của nhà phát triển Java.  Những điều lập trình viên nên biết - 6Giờ đây, khung công tác này có tầm quan trọng hàng đầu với nhu cầu biết cú pháp của ngôn ngữ Java. Bạn có thể nói rằng Spring có đối tác của nó, tức là các công nghệ Java EE. Nhưng Java EE đã lỗi thời và không còn được sử dụng trong các dự án mới nữa. Phần lớn các nhà phát triển Java hiện nay đều là nhà phát triển Java Spring nên kiến ​​thức về một số công nghệ Spring cơ bản là bắt buộc. Spring không chỉ là một framework mà là toàn bộ nền tảng của các framework: Danh sách kiểm tra của nhà phát triển Java.  Những điều lập trình viên nên biết - 7Và đây chỉ là một phần của các framework mà Spring cung cấp. Người mới bắt đầu chỉ cần biết một vài trong số đó là đủ:

  • Lõi lò xo

Trước tiên bạn phải hiểu Spring là gì: Spring container, Beans, DI, IoC, v.v. là gì. Có thể nói, hãy hiểu triết lý sử dụng Spring. Nghiên cứu sâu hơn về Spring framework sẽ diễn ra dựa trên cơ sở này. Có thể bạn nên tạo ứng dụng nhỏ của riêng mình để dần dần bổ sung các công nghệ mới mà bạn đã học vào đó.

  • JDBC mùa xuân

Trước đó chúng ta đã nói về công nghệ JDBC như một công nghệ tạo kết nối tới cơ sở dữ liệu. Nhìn chung, việc sử dụng công nghệ “trần trụi” hiện nay có thể không được tìm thấy trong các dự án, vì vậy có vẻ như việc học JDBC là không cần thiết. Nhưng nó không phải là như vậy. Bằng cách nhìn vào phần cốt lõi của JDBC, bạn có thể thấy công nghệ này ở mức độ thấp hơn và hiểu được các vấn đề cũng như thiếu sót của nó. Khi bắt đầu học Spring JDBC, bạn sẽ hiểu chính xác framework này cải thiện, tối ưu hóa và che giấu điều gì.

  • Ngủ đông mùa xuân

Giống như JDBC cơ bản, khung này cải thiện việc sử dụng công nghệ hiện có, trong trường hợp này là Hibernate. Nếu bạn cân nhắc việc sử dụng Hibernate mà không có Spring thì bạn sẽ hiểu chính xác lợi ích của việc sử dụng Spring Hibernate là gì.

  • JPA mùa xuân

Trước đó chúng ta đã nói về JPA và nó chỉ là một thông số kỹ thuật có các cách triển khai khác nhau. Trong số các triển khai này, Hibernate là gần nhất với lý tưởng. Spring có cách triển khai JPA lý tưởng của riêng mình, sử dụng Hibernate “dưới mui xe” và càng gần với lý tưởng của các thông số kỹ thuật JPA càng tốt. Công nghệ này được gọi là Spring JPA. Nhân tiện, nó giúp đơn giản hóa rất nhiều việc truy cập cơ sở dữ liệu. Bạn chỉ có thể học JPA mà không cần học JDBC, Hibernate, Spring JDBC, Spring Hibernate. Nhưng trong trường hợp này, kiến ​​thức kết nối với cơ sở dữ liệu của bạn sẽ rất hời hợt.

  • Mùa xuân MVC

Với công nghệ này, chúng tôi có thể hiển thị giao diện web của ứng dụng của mình cho người dùng và cho phép giao diện giao tiếp với phần còn lại của ứng dụng. Công nghệ này cũng có thể hoạt động mà không cần hiển thị khi có một số ứng dụng chịu trách nhiệm hiển thị và bạn tương tác với ứng dụng này bằng cách sử dụng các yêu cầu và phản hồi bằng công nghệ RESTful . Để hiểu rõ hơn về thông tin về Mùa Xuân, ngoài các bài viết, bài giảng trên YouTube, bạn có thể đọc thêm một số cuốn sách. Tôi thực sự thích cuốn sách “Mùa xuân hành động” của Walls Craig. Thật không may, hiện tại chỉ có phiên bản thứ ba bằng tiếng Nga, được coi là lỗi thời. Tôi khuyên bạn nên đọc phiên bản 6 nếu bạn biết tiếng Anh tốt. Một cuốn sách hay khác về Mùa xuân là “Mùa xuân thứ 5 dành cho Chuyên gia”. Nó khó học hơn và giống như một cuốn kinh thánh mùa xuân , tốt hơn là nên giữ trong tay hơn là đọc từ đầu đến cuối.Danh sách kiểm tra của nhà phát triển Java.  Những điều lập trình viên nên biết - 8

  • Khởi động mùa xuân

Công nghệ này đơn giản hóa rất nhiều việc sử dụng Spring. Tôi đặt nó ở cuối danh sách là có lý do, vì nó ẩn chứa rất nhiều điều dưới “cái mui xe” và đối với một người không quen với Spring thông thường, nhiều điểm có thể không rõ ràng và khó hiểu. Đầu tiên, để hiểu rõ hơn về cách hoạt động của Spring framework, bạn nên sử dụng Spring thông thường, sau đó là tất cả những lợi ích cao hơn khi sử dụng Spring Boot. Tôi cũng khuyên bạn nên làm quen với Spring Security và Spring AOP. Nhưng không giống như các công nghệ trên, hiện tại không cần phải có kiến ​​thức sâu về hai công nghệ này. Công nghệ này không dành cho người mới bắt đầu. Trong các cuộc phỏng vấn, đàn em không được hỏi về họ (có lẽ ngoại trừ một câu hỏi hời hợt). Đọc chung những công nghệ này là gì và chúng hoạt động như thế nào. Trong suốt bài viết này tôi đã nhiều lần đề cập đến việc đọc sách. Một mặt, điều này là không cần thiết. Bạn có thể trở thành một lập trình viên mà không cần đọc một cuốn sách nào, đã nghiên cứu mọi thứ bạn cần từ các bài báo và video đào tạo. Mặt khác, hiện tại, sự cạnh tranh trên thị trường dành cho các nhà phát triển mới vào nghề rất cao, điều này đã nâng cao tiêu chuẩn kiến ​​thức ban đầu cần thiết cho người mới bắt đầu. Do đó, bạn càng biết nhiều thì bạn càng có thể nhanh chóng có được công việc đầu tiên bằng cách gây ấn tượng với người phỏng vấn về trình độ hiểu biết của mình. Cảm ơn tất cả các bạn và mong Java sẽ đồng hành cùng các bạn .Danh sách kiểm tra của nhà phát triển Java.  Những điều lập trình viên nên biết - 9
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION