Chia sẻ một chút của sinh viên năm 2 về java

Chào mọi người, mình là sinh viên năm 2 đại học Duy Tân.
Sau khi học qua 2 năm, và học qua môn java hướng đối tượng, mình đã nghĩ là mình sẽ chọn java là ngôn ngữ mình theo đuổi. Mình không biết thị trường hiện nay thì tuyển dụng nhân sự java sẽ làm những công việc gì, ví dụ như phần mềm desktop hay gì đó, mình tham khảo một số web tuyển dụng thì thấy tuyển java spring, java backend,… trong khi trường mình chỉ mới dạy xong môn hướng đối tượng, mình đang khá phân vân và không biết nên học gi tiếp theo để thành thạo java hơn. và không biết là java thời điểm ra trường thì nó còn được tuyển dụng nhiều không ạ. mọi người có thể cho mình xin lời khuyên được không ạ. Mình có tham khảo ở youtube và một số nguồn khác, và tự tay mình viếtt được 1 game rắn săn mồi 2 người chơi bằng java(hướng dẫn chỉ 1 người chơi), mọi người tải thử thơi rồi cho mình ý kiến nha.

link tải game: https://drive.google.com/drive/folders/1pDSjyMFtW32m7vZJxDTqS5BJReQ0qjCp?usp=drive_link … lần đầu mình lên một diễn đàn và nói lên tâm sự nên có gì sai sót thì bỏ qua giúp mình ạ

Tải một file từ internet rồi chạy để “thử” thì không phải là ý kiến hay đâu, nên mình sẽ không chạy.
Không cần chạy, nhưng mình có một số comment như sau:

  • Việc duplicate code KeyHandler và Snake lên thành 2 class khác nhau không phải là ý hay đâu, trong khi logic của nó y chang nhau. Thay vào đó, nên viết 1 class chung và tạo 2 object, hoặc cùng lắm là 1 base class rồi kế thừa và override đúng phần logic khác nhau là được.
  • Bạn nên làm quen với việc đặt tên bằng tiếng Anh, việc dùng tiếng Việt làm tên biến không phải là ý hay, khi mà sau này code của bạn sẽ được review/edit bởi rất nhiều người ở nhiều nơi khác nhau
  • Nhiều hàm vẫn duplicate code của nhau rất nhiều, bạn nên làm quen với một số concept lập trình như là DRY, SOLID…

Bạn mới năm 2, có thể viết được như vầy là rất tốt, một số comment bên trên hy vọng bạn có thể phát triển tốt hơn trong tương lai.

3 Likes

vâng, cảm ơn phản hồi của a nhiều ạ

Đầu tiên em xác định em muốn làm về cái gì? làm game, web hay app.
Sau đó, em tìm xem các công ty đang tuyển dụng mảng đó xem họ yêu cầu gì.

Muốn biết các công ty đó làm ra sao thì chăm đi sự kiện, tạo mối quan hệ với các đàn anh, bạn bè để hỏi.

Người thật việc thật là tốt nhất.

7 Likes

vâng, e cảm ơn phản hồi của a ạ

Java có nhiều ứng dụng trong thực tế, nhưng như cậu thấy, chủ yếu sẽ là backend web API.

Cậu đã biết cú pháp cơ bản của Java (ai cũng làm được điều đó sau vài tiếng học), và biết về OOP, giờ cậu cần học thêm:

  • Cách sử dụng Java đúng cách. Cậu cần hiểu thêm về:
    • Java collection: cậu cần học về list, array, set, map, queue, và cách sử dụng chúng hiệu quả.
    • Exception handling: cậu cần biết cách xử lý ngoại lệ tử tế ở Java.
    • File handling.
    • Concurrent trong Java.
    • Network trong Java.
    • Java Stream API / Java Optional
  • Build tool/dependency management như Maven/Gradle
  • Học JUnit.
  • Công nghệ sử dụng Java. Cậu có rất nhiều lựa chọn, và cậu nên chọn theo vấn đề mà cậu muốn giải quyết.
  • Design pattern

Đó là những kiến thức nền tảng cho cậu, và cậu cũng cần luyện tập rất nhiều để làm chủ những kiến thức kể trên.

Tớ không phải thầy bói, nên tớ không nói được cho cậu điều đó.
Cơ mà, nó không phải kiểu “cậu đầu tư thời gian vào học Java, và khi ra trường Java không có ai tuyển, nên cậu chết đói” đâu :smile:
Những thứ tớ liệt kê ở trên có ở hầu hết các ngôn ngữ khác. Cậu hoàn toàn có thể chỉ cần học thêm về cú pháp, cách sử dụng các tool / công nghệ của ngôn ngữ đó (với rất nhiều concept tương tự trong Java), là cậu có thể catch up được rồi.
Mặt khác, hầu hết các công nghệ sử dụng Java vẫn đang được phát triển hàng ngày, và bản thân Java cũng có phiên bản mới mỗi 6 tháng, Có rất nhiều ngôn ngữ khác chạy trên JVM của Java ở thời điểm hiện tại, và cộng đồng Java vô cùng active và lâu đời, với rất nhiều giải pháp cho rất nhiêu vấn đề kỹ thuật.

Thế nên, điều cuối cùng cậu cần lo là có còn ai tuyển Java không.

3 Likes

em cảm ơn những chia sẻ của anh rất nhiều ạ

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?