Tại sao nên học Java và Spring?

Vì sao bạn nên học Java?

Trước khi nói Spring Boot, chúng ta nói về nền tảng của nó, chính là Java.

Java ra đời năm 1991, tới nay thì đã gần 30 năm rồi. Và có một điều mà có lẽ ít lập trình viên biết, đó là tính tới năm 2018, nó vẫn là ngôn ngữ phổ biến nhất thế giới.

alt text

Có thể thời thế thế thay đổi, có thể Python, Javascript đang vươn lên mạnh mẽ, nhưng có một thứ gọi là Legacy.

Java là Legacy

Tức là nó không thể bị loại bỏ hay thay thế, và doanh nghiệp trong năm nay, năm sau, và 5 năm nữa, họ vẫn sẽ và tiếp tục dùng Java.

Các trường đại học vẫn sẽ chọn dạy Java như một tiêu chuẩn về khái niệm hướng đối tượng.

Mình nói như ở trên là để cho những bạn mới tiếp cận tới ngôn ngữ này hoặc những bạn mới vào nghề có thể hiểu rõ tầm quan trọng của Java, và tất nhiên là lương của bạn cũng sẽ rất cao (yếu tố chính)

Còn cá nhân mình, thì mình thích cái cú pháp của Java, nó rõ ràng, dễ hiểu và dễ đọc. Ngoài ra, khái niệm OOP trong Java là chuẩn mực, kế thừa và interface đã khiến các dòng code trở nên "yêu" hơn và dễ dàng mở rộng hơn.

Khi được chạm tay vào những đoạn code siêu sao, cảm giác cực kì, cực kì phê. Mặc dù quy tắc của Java rất đơn giản và không nhiều biến thể được hỗ trợ bởi thông dịch như Javascript hay Python, nhưng bạn vẫn không thể nào hết ngạc nhiên với Java được, bạn sẽ còn trầm trồ dù học nó bao lâu đi nữa.

Java được sử dụng trong nhiều lĩnh vực khác nhau, có thể là Frontend, có thể là Backend, có thể viết Game, Desktop App, Mobile App, xử lý dữ liệu lớn, Microservices, ML, AI, v.v.. nó len lỏi từng ngóc nghách của lập trình. Vì vậy, có kiến thức nền tảng là Java thì bạn rất rất có lợi, làm được rất nhiều thứ, mà dù cho có không sử dụng đến, nó vẫn sẽ giúp bạn học được các ngôn ngữ khác nhanh hơn.

Với một cộng đồng cực kì đông đảo và ngôn ngữ luôn cải thiện trong các version JDK về sau, mình tỉn rằng Java vẫn luôn là một khởi điểm tốt cho mọi lập trình viên.

Vì sao bạn nên học Spring?

Trước khi nói tiếp, tôi muốn bạn xem cái này:

alt text

Đó là bảng so sánh độ phổ biến của các Framework trong Java.

Vì nó là Framework, nên dù bạn có học nó, hay không học nó, bạn vẫn biết code Java thôi

Nhưng nếu không học Spring hay Spring Boot thì bạn đã bỏ lỡ đi những điều thú vị mà Java có thể làm được. Chưa kể tới bỏ lỡ hàng tỉ cơ hội về nghề nghiệp, lương tỉ đô mặc dù mình biết nghề nghiệp cũng là phụ thôi, phải không các bạn, chúng ta làm vì đam mê!

Spring là một framework java mãnh mẽ và phổ biến nhất hiện nay dành cho doanh nghiệp. Nó giúp rút ngắn thời gian lập trình và test, giảm sự rườm rà trong code, giảm thiểu bottleneck.

Hệ sinh thái Spring hỗ trợ mọi layer từ frontend, backend, persistence, third-paty, hỗ trợ mọi kiến trúc từ củ chuối tới microservice, code thì lại dễ dàng, nâng cao hiệu năng của lập trình viên. Nó là ánh sáng le lói chọc xuyên đêm đen, giúp cuộc đời của một Java Developer có chút hi vọng lay lắt, và tiếp túc sống (nghe cứ sai sai vấn đề )

Còn rất nhiều thứ có thể kể về Spring nhưng vì bạn chưa biết thực ra nó là gì, nên có kể nữa cũng không tác dụng. Bây giờ bạn chỉ cần biết Spring và thằng con của nó (vâng, đặc biệt là thằng con của nó), Spring Boot là thứ bạn PHẢI HỌC khi tới với Java.

Series Spring Boot từ con số 0

Trước khi học series này, bạn cần nắm được 2 kiến thức sau:

  1. Khái niệm tight-coupling (liên kết ràng buộc) và cách loosely coupled
  2. Giải thích Dependency Injection (DI) và IoC

Sau đây là series Spring Boot từ con số 0:

  1. 「Spring Boot #1」Hướng dẫn @Component và @Autowired
  2. 「Spring Boot #2」@Autowired - @Primary - @Qualifier
  3. 「Spring Boot #3」Spring Bean Life Cycle + @PostConstruct và @PreDestroy
  4. 「Spring Boot #4」@Component vs @Service vs @Repository
  5. 「Spring Boot #5」Component Scan là gì?
  6. 「Spring Boot #6」@Configuration và @Bean
  7. 「Spring Boot #7」Spring Boot Application Config và @Value
  8. 「Spring Boot #8」Tạo Web Helloworld với @Controller
  9. 「Spring Boot #9」Giải thích cách Thymeleaf vận hành + Expression + Demo Full
  10. 「Spring Boot #10」@RequestMapping + @PostMapping + @ModelAttribute + @RequestParam + Web To-Do với Thymeleaf
  11. 「Spring Boot #11」Hướng dẫn Spring Boot JPA + MySQL
  12. 「Spring Boot #12」Spring JPA Method + @Query
  13. 「Spring Boot #13 Special」 Chi tiết Spring Boot + Thymeleaf + MySQL + i18n + Web Demo
  14. 「Spring Boot #14」 Restful API + @RestController + @PathVariable + @RequestBody
  15. 「Spring Boot #15」 Exception Handling @ExceptionHandler + @RestControllerAdvice / @ControllerAdvice + @ResponseStatus
  16. 「Spring Boot #16」 Hướng dẫn sử dụng @ConfigurationProperties
  17. 「Spring Boot #17」 Chạy nhiều môi trường với Spring Profile
  18. 「Spring Boot #18」 Hướng dẫn chi tiết Test Spring Boot

Đây là series giúp bạn nắm được các kiến thức căn bản của Spring Boot, nó sẽ là nền tảng giúp bạn hiểu được các bài viết khác trong loda.me nói riêng và nền tảng cho công việc của bạn nói chung.

Chúc các bạn thành công!

Học xong thì làm gì tiếp?

Spring đem tới chúng ta một hệ sinh thái rộng lớn, nên chúng ta không lo hết cái học

Trước khi mình viết xong hết, các bạn cần học Spring Security, rất quan trọng nhé

  1. Hướng dẫn Spring Security cơ bản, dễ hiểu
  2. Hướng dẫn Spring Security + Jpa Hibernate
  3. Hướng dẫn Spring Security + JWT (Json Web Token) + Hibernate

CODE

Mọi code trong series được cập nhật tại GITHUB


Bạn nên fork về hoặc bấm star để nó lưu về tài khoản của bạn, lúc nào cần học hoặc tham khảo thì lấy ra nhanh hơn.

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

https://loda.me

48 bài viết.
18 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
7 0
Vì sao bạn nên học Java? Trước khi nói Spring Boot, chúng ta nói về nền tảng của nó, chính là Java. Java ra đời năm 1991, tới nay thì đã gần 30 n...
https://loda.me viết 4 tháng trước
7 0
White
4 0
Xin chào tất cả các bạn, trước khi đi vào chi tiết bài hôm nay, các bạn cần đọc cho mình các khái niệm sau: 1. Khái niệm tightcoupling (liên k...
https://loda.me viết 4 tháng trước
4 0
White
1 0
Tổng quan Trong java, chúng ta có class abstract và một Interface, ai cũng biết một class có thể impements nhiều Interface và chỉ kế thừa được một...
https://loda.me viết 4 tháng trước
1 0
Bài viết liên quan
White
2 0
I used Spring boot, Hibernate few times back then at University, I'v started using it again recently. In this (Link), I want to check how Spring J...
Rey viết 8 tháng trước
2 0
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
48 bài viết.
18 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!