Java là gì? Ý nghĩa và tính năng của các nền tảng Java


Java là gì?





Java là một ngôn ngữ lập trình hướng đối tượng (object-oriented), dựa trên lớp (class-based), có mục đích chung, được thiết kế để giảm bớt sự phụ thuộc triển khai. Nó là một nền tảng điện toán (computing platform) phục vụ cho việc phát triển ứng dụng.





Java là gì?
Java là gì? Ảnh: Lampalampa




Nó được đánh giá là một trong những ngôn ngữ lập trình nhanh, an toàn và đáng tin cậy được hầu hết các tổ chức ưa thích để xây dựng các dự án của họ.





Java được sử dụng rộng rãi để phát triển các ứng dụng Java trong máy tính xách tay, trung tâm dữ liệu, game consoles, siêu máy tính khoa học, thiết bị di động,…










Dừng lại chút nào, nếu bạn đang #open_to_work, thử nghía qua các công việc đang tuyển trên Gamba nhé. Vào LINK NÀY để xem các job Data hoặc scan QR Code ở bên dưới nhé.





Xem và ứng tuyển các job "java"
Xem và ứng tuyển các job “java”









Nền tảng Java là gì?





Nền tảng Java là một tập hợp các chương trình giúp lập trình viên phát triển và chạy các ứng dụng lập trình Java một cách hiệu quả.





Nó bao gồm một công cụ thực thi (execution engine), một trình biên dịch (complier) và một bộ thư viện trong đó.





Nó là một tập hợp các thông số kỹ thuật và phần mềm máy tính.





James Gosling đã phát triển nền tảng Java tại Sun Microsystems và Tập đoàn Oracle sau đó đã mua lại nó.





Java được sử dụng để làm gì?





Dưới đây là một số ứng dụng quan trọng của Java:





  • Sử dụng để phát triển các ứng dụng Android
  • Giúp bạn tạo Phần mềm cho Doanh nghiệp
  • Nhiều ứng dụng java trên Mobile
  • Các ứng dụng điện toán phụ vụ cho khoa học (Scientific computing)
  • Sử dụng cho Phân tích dữ liệu lớn (Big data)
  • Lập trình Java cho các thiết bị phần cứng
  • Sử dụng cho các Công nghệ phía máy chủ như Apache, JBoss, GlassFish,…




Lịch sử của ngôn ngữ lập trình Java





Dưới đây là những dấu mốc quan trọng trong lịch sử của ngôn ngữ Java:





  • Ban đầu được gọi là OAK.
  • Ban đầu, nó được phát triển để xử lý các thiết bị di động và hộp giải mã tín hiệu. OAK là một thất bại lớn.
  • Năm 1995, Sun đổi tên thành “Java” và sửa đổi ngôn ngữ để tận dụng lợi thế của xu hướng kinh doanh www (World Wide Web) ngày càng phát triển.
  • Năm 2009, Tập đoàn Oracle mua lại Sun Microsystems và nắm quyền sở hữu ba tài sản phần mềm chính của Sun: Java, MySQL và Solaris.




Các phiên bản Java





Dưới đây là lịch sử tóm tắt của tất cả các phiên bản Java với ngày phát hành của nó.





Ngày phát hành phiên bản:





  • JDK Alpha và Beta 1995
  • JDK 1.0 ngày 23 tháng 1 năm 1996
  • JDK 1.1 ngày 19 tháng 2 năm 1997
  • J2SE 1.2 ngày 8 tháng 12 năm 1998
  • J2SE 1.3 ngày 8 tháng 5 năm 2000
  • J2SE 1.4 ngày 6 tháng 2 năm 2002
  • J2SE 5.0 ngày 30 tháng 9 năm 2004
  • Java SE 6 ngày 11 tháng 12 năm 2006
  • Java SE 7 ngày 28 tháng 7 năm 2011
  • Java SE 8 ngày 18 tháng 3 năm 2014
  • Java SE 9 ngày 21 tháng 9 năm 2017
  • Java SE 10 ngày 20 tháng 3 năm 2018
  • JAVA SE 11 ngày 25 tháng 9 năm 2018
  • JAVA SE 12 19 tháng 3, 2019
  • JAVA SE 13 ngày 17 tháng 9 năm 2019
  • JAVA SE 14 ngày 17 tháng 3 năm 2020
  • JAVA SE 15 ngày 15 tháng 9 năm 2020 (Phiên bản Java mới nhất)




Các tính năng của Java





Java cung cấp nhiều tính năng hấp dẫn:





  • Ngôn ngữ độc lập với nền tảng
  • Thư viện tiêu chuẩn phong phú giúp việc lập trình trở nên dễ dàng. Bạn có thể tạo toàn bộ một ứng dụng độc lập bằng Java.
  • Java hỗ trợ cấp phát và giải phóng bộ nhớ tự động (được gọi là thu gom rác).
  • Mang lại hiệu suất tuyệt vời nhờ hỗ trợ đa luồng và đồng thời, nhờ đó Java trở thành một ngôn ngữ có tính tương tác và đáp ứng cao.
  • An toàn và đơn giản




Các thành phần của ngôn ngữ lập trình Java





Lập trình viên Java viết một chương trình bằng ngôn ngữ mà con người có thể đọc được gọi là Mã nguồn (Source Code).





Vì vậy, CPU hoặc Chip không bao giờ hiểu được mã nguồn được viết bằng bất kỳ ngôn ngữ lập trình nào.





Những máy tính hoặc chip này chỉ hiểu được một thứ, nó gọi là ngôn ngữ máy hoặc mã máy (machine code). Các mã máy này chạy ở cấp độ CPU. Do đó, với model CPU khác nhau thì mã máy sẽ khác nhau.





Tuy nhiên, bạn không cần bận tâm tới mã máy, vì lập trình chủ yếu là về mã nguồn. Máy sẽ hiểu mã nguồn này và chuyển chúng thành mã máy có thể hiểu được, tức là mã thực thi.





Tất cả các chức năng này xảy ra bên trong 3 thành phần nền tảng Java sau:





3 Thành phần của Java
3 Thành phần của Java. Ảnh: facingissuesonit.com




Bộ phát triển Java (JDK)





JDK là một môi trường phát triển phần mềm được sử dụng để tạo các ứng dụng applet và Java. Dạng đầy đủ của JDK là Java Developement Kit (Bộ công cụ phát triển Java).





Các nhà phát triển Java có thể sử dụng JDK trên Windows, macOS, Solaris và Linux. JDK giúp họ viết code và chạy các chương trình Java. Có thể cài đặt nhiều phiên bản JDK trên cùng một máy tính.





Đây là những lý do chính để sử dụng JDK:





  • JDK chứa các công cụ cần thiết để viết các chương trình Java và JRE (Môi trường chạy Java – Java Run Environment) để thực thi chúng.
  • Nó bao gồm một trình biên dịch (compiler), trình khởi chạy ứng dụng Java (application launcher), Appletviewer,…
  • Trình biên dịch chuyển đổi mã được viết bằng Java thành mã byte.
  • Trình khởi chạy ứng dụng Java mở một JRE, tải lớp (class) cần thiết và thực thi phương thức chính của nó.




Máy ảo Java (JVM)





Máy ảo Java (JVM – Java Virtual Machine) là một công cụ cung cấp môi trường runtime để chạy code hoặc ứng dụng Java.





Nó chuyển đổi Java bytecode thành ngôn ngữ máy. JVM là một phần của JRE (Java Run Environment).





Ở những ngôn ngữ lập trình khác, trình biên dịch tạo ra mã máy cho một hệ thống cụ thể. Còn trình biên dịch Java thì tạo ra mã cho Máy ảo được gọi là Máy ảo Java.





Dưới đây là những lý do quan trọng của việc sử dụng JVM:





  • JVM cung cấp cách thực thi mã nguồn Java độc lập với nền tảng.
  • JVM có nhiều thư viện, công cụ và framework.
  • Khi bạn chạy một chương trình Java, bạn có thể chạy trên bất kỳ nền tảng nào và tiết kiệm rất nhiều thời gian.
  • JVM đi kèm với trình biên dịch JIT (Just-in-Time) giúp chuyển đổi mã nguồn Java thành ngôn ngữ máy cấp thấp. Do đó, nó chạy nhanh hơn một ứng dụng thông thường.




Môi trường runtime Java (JRE)





JRE (Java Run Environment) là một phần của phần mềm được thiết kế để chạy phần mềm khác. Nó bao gồm các thư viện lớp (class library), bộ nạp lớp (class loader) và JVM.





Nói một cách dễ hiểu, nếu bạn muốn chạy một chương trình Java, bạn cần có JRE. Nếu bạn không phải là lập trình viên, bạn không cần cài đặt JDK mà chỉ cần JRE để chạy các chương trình Java.





Dưới đây là những lý do chính của việc sử dụng JRE:





  • JRE chứa các thư viện lớp (class library), JVM và các tệp hỗ trợ khác. Nó không bao gồm bất kỳ công cụ nào để phát triển Java như trình gỡ lỗi, trình biên dịch, v.v.
  • Nó sử dụng các gói chứa lớp (class package) quan trọng như math, swing, using, lang, awt và thư viện runtime.
  • Nếu bạn muốn chạy Java applet, thì hệ thống phải cài đặt JRE.




Các loại nền tảng Java khác nhau





Các loại nền tảng Java
Các loại nền tảng Java. Ảnh: CitizenChoice




Có bốn loại nền tảng ngôn ngữ lập trình Java khác nhau:





1. Nền tảng Java, Phiên bản tiêu chuẩn (Java SE)





API của Java SE cung cấp chức năng lõi của ngôn ngữ lập trình Java. Nó xác định tất cả các nền tảng về kiểu và đối tượng cho các lớp cấp cao.





Nó được sử dụng để kết nối mạng, bảo mật, truy cập cơ sở dữ liệu, phát triển giao diện người dùng đồ họa (GUI) và phân tích cú pháp XML.





2. Nền tảng Java, Phiên bản Doanh nghiệp (Java EE)





Nền tảng Java EE cung cấp API và môi trường runtime để phát triển và chạy các ứng dụng mạng có khả năng mở rộng cao, quy mô lớn, nhiều tầng, đáng tin cậy và an toàn.





3. Nền tảng ngôn ngữ lập trình Java, phiên bản Micro (Java ME)





Nền tảng Java ME cung cấp một API và một máy ảo kích thước nhỏ chạy các ứng dụng ngôn ngữ lập trình Java trên các thiết bị nhỏ, như điện thoại di động.





4. Java FX





JavaFX là một nền tảng để phát triển các ứng dụng internet phong phú bằng cách sử dụng API giao diện người dùng nhẹ.





Nó sử dụng các media engine và đồ họa tối ưu phần cứng giúp cho Java tận dụng các máy khách hiệu suất cao và các API giao diện hiện đại, cấp cao để kết nối với các nguồn dữ liệu được kết nối.





Nguồn: guru99