Java là một ngôn ngữ lập trình hướng đối tượng, dựa trên lớp được thiết kế để có càng ít phụ thuộc thực thi càng tốt. Hãy cùng Bumbii tìm hiểu về Tổng quan ngôn ngữ lập trình Java.
Ngôn ngữ Java là gì?
Java là một ngôn ngữ lập trình hướng đối tượng, dựa trên lớp được thiết kế để có càng ít phụ thuộc thực thi càng tốt. Nó là ngôn ngữ lập trình có mục đích chung cho phép các nhà phát triển ứng dụng viết một lần, chạy ở mọi nơi – nghĩa là mã Java đã biên dịch có thể chạy trên tất cả các nền tảng hỗ trợ Java mà không cần biên dịch lại.
Các ứng dụng Java thường được biên dịch thành bytecode có thể chạy trên bất kỳ máy ảo Java (Java Virtual Machine) nào.
Cú pháp của Java tương tự như C và C++, nhưng có ít cơ sở cấp thấp hơn các ngôn ngữ trên.
Tính đến năm 2019, Java là một trong những ngôn ngữ lập trình phổ biến nhất được sử dụng theo GitHub, đặc biệt cho các ứng dụng web máy khách-máy chủ, với 9 triệu nhà phát triển đã được báo cáo.
Lịch sử ngôn ngữ lập trình Java
- James Gosling, Mike Sheridan và Patrick Naughton khởi xướng dự án ngôn ngữ Java vào tháng 6 năm 1991.. Ban đầu ngôn ngữ này được gọi là Oak theo tên một cây sồi bên ngoài văn phòng của Gosling.
- Sau đó, dự án có tên là Green và cuối cùng được đổi tên thành Java, từ cà phê Java, loại cà phê đến từ Indonesia. Gosling đã thiết kế Java với cú pháp kiểu C/C++ mà các lập trình viên hệ thống và ứng dụng đã quen thuộc.
- Năm 1995, tạp chí Time bình chọn Java là một trong 10 sản phẩm tốt nhất năm 1995. JDK 1.0 được công bố vào 23/1/1996.
Lịch sử các phiên bản Java
Kể từ năm 1995 cho đến nay đã có nhiều phiên bản Java ra đời. Dưới đây là lịch sử tóm tắt tất cả các phiên bản và năm phát hành của nó:
- JDK Alpha và Beta – 1995
- JDK 1.0 – 23/01/1996
- JDK 1.1 – 19/02/1997
- J2SE 1.2 – 08/12/1998
- J2SE 1.3 – 08/05/2000
- J2SE 1.4 – 06/02/2002
- J2SE 5.0 – 30/9/2004
- Java SE 6 – 11/12/2006
- Java SE 7 – 28/7/2011
- Java SE 8 – 18/03/2014
- Java SE 9 – 21/9/2017
- Java SE 10 – 20/03/2018
- JAVA SE 11 – 25/9/2018
- JAVA SE 12 – 19/03/2019
- JAVA SE 13 – 17/9/2019
- JAVA SE 14 – 17/03/2020
- JAVA SE 15 – 15/9/2020
- JAVA SE 16 – 16/3/2021
- JAVA SE 17 – 14/9/2021
- JAVA SE 18 – Phiên bản mới nhất hiện tại
Đặc điểm ngôn ngữ lập trình Java
Ngôn ngữ lập trình Java hướng đối tượng
Java là một ngôn ngữ lập trình hướng đối tượng. Lập trình hướng đối tượng (OOP) là một mô hình lập trình tổ chức thiết kế phần mềm xung quanh dữ liệu, chứ không phải là các chức năng và logic. Đối tượng là một trường dữ liệu với tập hợp các thuộc tính và hành vi riêng của nó. Lập trình hướng đối tượng (OOP) tập trung vào các đối tượng mà các nhà phát triển muốn xử lý, thay vì logic được yêu cầu để thao tác.
Java là ngôn ngữ lập trình đơn giản
Ngôn ngữ lập trình Java không phải là một dạng cakewalk, nhưng cú pháp của nó rất đơn giản và dễ hiểu. Bắt nguồn từ nhiều cú pháp từ các ngôn ngữ lập trình C và C++ , vì vậy nếu bạn biết bất kỳ ngôn ngữ nào trong số này thì việc lập trình với ngôn ngữ Java sẽ trở nên dễ dàng hơn.
Nền tảng độc lập
Khi được biên dịch, Java không được biên dịch thành ngôn ngữ máy trên nền tảng cụ thể mà thay vào mã byte – một nền tảng độc lập. Mã byte này được thông dịch từ máy ảo (JVM) trên một nền tảng nào đó mà nó đang chạy.
Tính bảo mật
Java hỗ trợ bảo mật rất tốt nhờ các thuật toán mã hóa như mã hóa một chiều (one way hashing) hay mã hóa công cộng (public key), v.v. Nhờ đó mà khả năng bảo mật của ngôn ngữ này rất cao, giúp cho lập trình viên có thể yên tâm trong quá trình sử dụng để lập trình phần mềm, ứng dụng, v.v.
Kiến trúc – tập trung
Nếu một ứng dụng được biên dịch trên kiến trúc phần cứng này thì ứng dụng đó sẽ chạy được trên tất cả các kiến trúc phần cứng khác. Ví dụ: Một ứng dụng được biên dịch bởi vi xử lý 32bit thì nó cũng sẽ chạy tốt trên vi xử lý 64bit.
Portable
Một loại kiến trúc trung lập, phụ thuộc vào việc thực hiện, là những đặc điểm chính khi nói về Portable của Java. Các trình biên dịch tại Java được viết bằng ANSI C với ranh giới Portable gọn gàng, gọi là Subset POSIX, bạn có thể mang Byte Code của Java lên bất cứ một nền tảng nào.
Hiệu suất cao
Lập trình Java sẽ hạn chế tối đa các tình huống bị lỗi bằng quá trình kiểm tra lỗi ngay tại thời điểm biên dịch và tại runtime.
Tính đa luồng
Giúp tạo ra các chương trình thực hiện cùng lúc nhiều tác vụ, cho phép các nhà phát triển xây dựng ứng dụng tương tác chạy trơn tru hơn.
Ứng dụng ngôn ngữ lập trình Java
Mặc dù nhiều ngôn ngữ lập trình mới, hiện đại xuất hiện nhưng Java vẫn luôn có chỗ đứng riêng. Kể từ năm 2000 cho đến nay Java được ứng dụng ở rất nhiều lĩnh vực, cụ thể:
- Phát triển các ứng dụng Android.
- Tạo Enterprise Software (phần mềm doanh nghiệp).
- Thiết bị Mobile chẳng hạn như IOS hay Android.
- Ứng dụng trong lĩnh vực khoa học máy tính.
- Sử dụng Java để giải thích và xử lý Big Data.
- Lập trình phần cứng.
- Sử dụng ở các công nghệ phía server như Apache, JBoss, GlassFish…
Ngôn ngữ Java có những thành phần nào?
Tương tự như những ngôn ngữ lập trình khác, Java cũng được tạo nên từ các thành phần quan trọng. Cụ thể gồm: bộ phát triển Java (JDK), máy ảo Java (JVM) và Môi trường thời gian chạy Java (JRE).
Bộ phát triển Java (JDK)
JDK là viết tắt của cụm từ Java Development Kit. Nó được biết đến là một bộ cung cấp môi trường để tạo ra các applets và ứng dụng Java. Nhà phát triển có thể sử dụng JDK trên các hệ điều hành như Windows, mac OS, Solaris hoặc Linux để viết code hoặc phát triển, thực thi các chương trình Java. Trên một máy tính có thể cài đặt nhiều phiên bản JDK khác nhau.
Máy ảo Java (JVM)
JVM (máy ảo Java) là viết tắt của cụm từ Java Virtual Machine. Nó được xem là một công cụ cung cấp môi trường để code Java được thực thi. JVM chuyển đổi Java bytecode thành machine language. Ở các ngôn ngữ lập trình khác thì trình biên dịch sẽ tạo ra machine code cho một hệ thống cụ thể. Riêng với Java thì nó lại tạo ra code cho Virtual Machine (máy ảo) nên mới có tên gọi là Java Virtual Machine (JVM).
Môi trường thời gian chạy Java (JRE)
JRE là một là một phần mềm cần thiết để các chương trình Java chạy đúng cách. Nói như vậy có nghĩa là khi bạn muốn chạy chương trình Java bạn cần phải có JRE.
Ưu và nhược điểm của ngôn ngữ lập trình Java
Ưu điểm
- Java là ngôn ngữ độc lập với nền tảng vì chúng ta có thể chạy mã Java ở bất kỳ máy nào mà không cần phần mềm đặc biệt.
- Là ngôn ngữ lập trình cấp cao dễ học và dễ hiểu.
- Là ngôn ngữ hướng đối tượng làm tăng khả năng phát triển mã dễ dàng và tăng hiệu quả.
- Là ngôn ngữ an toàn vì Java không sử dụng con trỏ.
- Quản lý bộ nhớ hiệu quả.
- Hỗ trợ đa luồng, người dùng có thể thực hiện cùng lúc nhiều chương trình.
Nhược điểm
Bên cạnh những ưu điểm thì Java cũng tồn tại một vài nhược điểm. Vậy những nhược điểm của Java là gì?
- Là ngôn ngữ cấp cao nên phải xử lý các mức biên dịch và trừu tượng của một máy ảo.
- Có ít trình xây dựng GUI (Giao diện người dùng đồ họa) như Swing, SWT, JSF và JavaFX.
- Nếu viết những đoạn mã dài phức tạp dễ ảnh hưởng đến khả năng đọc của mã.
Thông tin liên hệ & mạng xã hội:
Website: https://bumbii.com/
Facebook: https://www.facebook.com/bumbiiapp
Pinterest: https://www.pinterest.com/bumbiitech