Vì sao mình lại ưa thích Java?



Vì sao mình lại ưa thích Java?
Từ khi vào đại học và tiếp xúc với Java, mình mới cảm thấy Java là một ngôn ngữ khá là “good” với mình trong thời điểm hiện tại. Vì cũng đã từng làm việc với một vài ngôn ngữ lập trình khác, nên mình thấy rõ được điểm mạnh mà Java mang lại là như thế nào.
Điểm mạnh thứ nhất: Java hỗ trợ đa nền tảng
Đối với các ngôn ngữ lập trình khác, mã máy khi code của nó biên dịch ra đối với mỗi loại máy khác nhau sẽ khác nhau, điều này dẫn đến một hệ quả là nếu muốn chuyển một chương trình qua máy khác, ta phải code lại toàn bộ chương trình. Còn với Java, nó sử dụng một nền tảng riêng của mình gọi là JVM (Java Virtual Machine) để thiết lập một nền tảng độc lập chạy trên nền tảng của máy, code Java khi chạy không cần phụ thuộc vào nền tảng của máy tính, chỉ phụ thuộc vào JVM, nên 1 chương trình có thể chạy ở mọi nền tảng khác nhau. Vì thế nên Java có 1 câu slogan rất hay: “Write once, run anywhere”.
Điểm mạnh thứ hai: Java là một ngôn ngữ hướng đối tượng
Khác với ngôn ngữ lập trình hướng thủ tục như mình từng học (chỉ đơn giản là việc thực hiện các dòng lệnh từ trên xuống kết hợp với các thủ tục), ngôn ngữ hướng đối tượng phân chia các đối tượng với cấu trúc rõ ràng, giúp cho người lập trình dễ dàng xử lý hơn, đặc biệt là với các bài toán thực tế.
Điểm mạnh thứ ba:  Java có trình thu dọn bộ nhớ Garbage Collector
Đối với các lập trình viên, khả năng quên dọn dẹp các đối tượng để thu hồi vùng nhớ rất cao, do vậy Java hỗ trợ thu dọn bộ nhớ tự động Garbage Collector. Cụ thể là khi một đối tượng không còn giá trị sử dụng, Java sẽ tự động dọn dẹp đối tượng đó để trả lại vùng nhớ cho máy tính. Với một đứa hay quên như mình thì đây đúng là điều tuyệt vời :D.
Ngoài ra, Java còn khá nhiều điểm mạnh, mặc dù mình đã từng nghe qua nhưng vẫn chưa thực sự trải nghiệm nên không chia sẻ được. Tất nhiên nó cũng có một số nhược điểm mình không thích điển hình như cú pháp hay cấu trúc câu lệnh khá dài dòng nhưng nhìn chung mình cũng khá ưng nó.
Lời kết: Mình cũng hi vọng sau này con người sẽ phát triển ra nhiều ngôn ngữ lập trình tốt hơn, giúp cho những người lập trình viên cảm thấy thoải mái hơn khi tiếp xúc với code.
Nội dung bài viết thuộc về Lê Công Diễn.

Người viết: Lê Công Diễn
Mang đi nhớ ghi nguồn


Nhận xét

Bài đăng phổ biến từ blog này

Deploy project Springboot MIỄN PHÍ sử dụng Render

Ứng dụng Mã hóa bất đối xứng (Asymmetric cryptography) vào Chữ ký số (Digital Signature)

API và HTTP - Một số khái niệm cơ bản cần biết về Web (Phần 2)