Chuyện là nay được học buổi đầu tiên môn Java của Giáo Làng, cảm hứng lập trình cũng dâng lên cũng khá là cao luôn, nên mình cũng cái bài gọi là giải thích tại sao Java nó lại chạy được trên nhiều thiết bị.
Sơ lược về Java
Java là sản phầm của Oracle (cái công ty mà bữa anh trong Shark Tank đòi nó qua phải bỏ 1 tỷ mỹ kim đấy). Hiện tại thì số thiết bị chạy Java rơi vào đâu đó tầm 3 tỷ thiết bị, bạn không nhìn lầm đầu đâu, điều đó có nghĩa là số lượng thiết bị chạy Java nó gần bằng một nữa dân số thế giới. Ủa ủa tui tưởng C/C++ các thứ của anh Microsoft mới nhiều nhất chứ, không gia, Java là nhất, ahihi đồ cuồng (ý nói tui). Java chạy được trên mọi thứ, từ tivi, cho đến ô tô, từ thời thưa các bạn đã cầm những con điện thoại chạy Java, nó đó, Java đấy. Phương châm của Java là
Write once, run anywhere
Ghê vậy luôn á hả, chỉ cần viết một lần mà chạy được ở mọi chỗ, tại sao á, đọc phần sau nha.
Java cũng là ngôn ngữ được Google lựa chọn để lập trình ứng dụng Android bằng IDE Android Studio (mặt dù Google nó đã có Kotlin rồi nhưng mà Java vẫn còn xịn xò lắm).
Java cũng là một ngôn ngữ tốt để bước đầu tiếp cận với OOP (lập trình hướng đối tượng).
Tại sao Java chạy được ở nhiều nơi
Lang mang nãy giờ đủ rồi, mình xin chốt một câu là JVM (Java virtual machine), đúng rồi đấy, chính nó, nó chứ không phải là ai khác nữa hết. Dịch nôm na ra nó là máy áo Java, bây giờ mình sẽ cùng nhau tìm hiểu sự tuyệt vời của nó nè.
JVM là một phần mềm để chạy các lệnh Java (vì nó là máy ảo mà). Các chương trình được viết bằng Java sẽ chạy trực tiếp trên JVM chứ không có chạy trực tiếp trên OS (hệ điều hành) nên nó cũng không có quan trọng là bạn chạy trên OS nào. Vì vậy để chạy thì bạn cần phải cài các phiên bản cho các hệ điều hành khác nhau là được rồi (miễn là nó được Oracle hỗ trợ), còn việc hỗ trợ các hệ điều hành nào bạn có thể xem tại link https://java.com/en/download/help/sysreq.xml
Để hiểu rõ hơn cơ chế chạy của Java các bạn có thể nhìn hình bên dưới
Nhờ phân lớp của JVM nên nó có thể chạy mà không có quan tâm gì hết, chỉ cần có môi trường cho nó chạy, thế là xong mà môi trường ở đây chính là JVM đó.
Chúng ta sẽ tìm hiểu thêm một khái niệm nữa đó là Java Compiler
JVM không trực tiếp tiếp thực thi các câu lệnh đâu nha, nó sẽ chạy qua một cái thứ khác nữa, người ta gọi là Javac (Java Compiler), thằng này sẽ có tác dụng biến các đoạn mã của chúng ta thành bytecode để thực thi chương trình các bạn có thể nhìn hình ảnh cho nó dễ phân biệt
Túm lại cái quá trình khi chạy một cái code Java nó như này nè.
Đầu tiên thì Javac sẽ biên dịch mã nguồn của chúng ta thành các byte code
Sau đó những đoạn này sẽ biên dịch và chạy trực tiếp trên CPU thằng luôn hoặc được biên dịch các đoạn code để có thể chạy được trên JVM
Tổng kết
Java nó chạy được trên nhiều hệ điều hành vì nó là nó chạy trên cái thằng JVM mà thằng này lại chạy được trên nhiều hệ điều hành dẫn đến nó Java nhà mình nó cũng chạy được trên thứ tuốt luôn, đây vẫn có nhiều ưu và nhược điểm, như thế nào thì mình hẹn các bạn vào bài khác nha.
Vậy là mình đã giải thích vì sao Java chạy được trên nhiều hệ điều hành khác nhau, nếu bạn có góp ý hay thắc mắc đừng ngại để lại một comment nha.