Sẽ không có gì tuyệt vời hơn khi bạn có thể hoàn thành 10 tác vụ mà chỉ cần làm một lần? Đó là yếu tố cơ bản để phân biệt Java với những ngôn ngữ lập trình khác.
Với câu khẩu hiệu là, “viết một lần, chạy mọi nơi”, cũng không có gì khó hiểu khi Java đã trở thành ngôn ngữ lập trình phổ biến nhất được sử dụng bởi các lập trình viên giỏi, những người muốn dành nhiều thời gian của mình để thư giãn trong các quán cà phê hơn là phải ngồi hì hục viết những dòng code lặp đi lặp lại một cách tẻ nhạt.
Câu khẩu hiệu đó có nghĩa Java là một ngôn ngữ có đặc điểm “độc lập nền tảng”. Nói cách khác, code Java sẽ làm việc “lý tưởng” trên bất kỳ thiết bị chạy hệ điều hành nào, miễn là nó đã được cài đặt Java Runtime Environment (JRE). Chỉ cần tưởng tượng bạn phải viết một phiên bản của một ứng dụng cho tất cả các loại thiết bị, hệ điều hành hiện có trên thị trường thì bạn sẽ hiểu tại sao Java có sức hấp dẫn các lập trình viên giống như sự quyến rũ của một tách cà phê nóng trong một ngày lạnh lẽo và băng giá vậy.
Tại sao Java lại “hot”?
Ngoài việc độc lập nền tảng, phong cách “lập trình hướng đối tượng” của Java và sự hấp dẫn rất cao đối với các nhà tuyển dụng IT làm cho Java đơn giản là một ngôi sao nhạc rock tuyệt vời hiện nay.
Như tên gọi của nó đã cho thấy, lập trình hướng đối tượng (OOP) sử dụng các đối tượng được định nghĩa đầy đủ – và các mối quan hệ giữa các đối tượng với nhau – để thực hiện các tác vụ khác nhau. Do nền tảng mô-đun tự nhiên của nó, OOP thường làm cho nó dễ dàng hơn, nhanh hơn và rẻ hơn trong phát triển và quản lý phần mềm. Cũng dễ hiểu khi những đặc điểm này buộc các tổ chức và doanh nghiệp ôm lấy Java trong vòng tay rộng mở, nâng ngôn ngữ lập trình này trở thành kỹ năng được mong muốn nhất của các nhà tuyển dụng trên trang web việc làm Dice.com.
Và trong khi Java là rất “hot” với các nhà tuyển dụng, nó cũng không kém phần nóng bỏng đối với những người thực sự viết ra các chương trình máy tính. Mức lương trung bình của một lập trình viên Java tại Mỹ là $88K đô-la (hơn 1,8 tỷ VNĐ/năm) và Java tạo ra một nguồn cảm hứng bất tận để thu hút rất nhiều người theo đuổi nghề nghiệp cùng với nó.
Java đạt được sự độc lập nền tảng như thế nào?
Sau lời hứa có thể chạy cùng một phần code trên nhiều nền tảng khác nhau, Java mở rộng đáng kể thị trường sử dụng của nó trong những năm vừa qua. Từ một dự án mới ra đời vào năm 1990 chỉ được biết đến trong một nhóm nhỏ tại Sun Microsystems, Java chuyển mình để trở thành một công nghệ phổ biến đến mức tạo ra một hệ sinh thái kỹ thuật số hiện nay. Bạn sẽ tìm thấy Java ở khắp nơi trên Internet và có mặt tại các thiết bị như máy tính để bàn, máy tính bảng, điện thoại di động, console, TV và máy in. Trong thực tế, gần như tất cả các enterprise desktop đều chạy Java và nó hiện có mặt trên 3 tỷ điện thoại di động.
Nhưng làm thế nào mà Java đạt được mức độ cao của tính di động cho phép nó hoạt động trong bất kỳ sự kết hợp nào của phần cứng và hệ điều hành? Java giới thiệu hai sáng kiến đã làm xáo trộn thế giới máy tính: 1) Java bytecode; và 2) Java Virtual Machine (JVM). Không giống như những ngôn ngữ lập trình khác được biên dịch trực tiếp thành mã máy trên nền tảng cụ thể, code Java đầu tiên được biên dịch thành một định dạng trung gian gọi là bytecode. Java bytecode tương tự như mã máy nhưng được thực thi bởi một máy ảo phần cứng cụ thể (hardware-specific virtual machine).
Qua nhiều năm, nó đã trở thành tiêu chuẩn công nghiệp của các nhà sản xuất thiết bị gốc để cho ra lò các thành phần thiết bị với các JVM có liên quan đã được cài đặt sẵn. Điều đó có nghĩa là bạn có thể viết và thực thi code Java trên laptop của mình và nó sẽ chạy tốt trên hầu hết các máy tính để bàn, điện thoại di động và các thiết bị khác mà không cần phải sửa đổi code ban đầu của bạn.
Đến nay, Java đã hỗ trợ hầu hết các nền tảng IT thông qua các JRE (Java Runtime Environment) chứa các máy ảo phần cứng cụ thể (hardware-specific virtual machines). Nó đi kèm trong nhiều phiên bản standard, enterprise, và micro. Các nền tảng được hỗ trợ bao gồm Windows, Mac OS, Linux, và Solaris.
Java là ngôn ngữ lập trình hướng đối tượng
Theo nhiều cách, Java đại diện cho ngôn ngữ lập trình hướng đối tượng đầy đủ nhất, và giới thiệu các lợi ích to lớn của mô hình này. Phần lớn kết hợp các cú pháp và thành phần của C và C++, Java đã mở rộng các khả năng của nó để hỗ trợ cách tiếp cận hướng đối tượng.
Trong lập trình hướng đối tượng, bạn sử dụng các lớp (class) và các đối tượng (object) để định nghĩa và thao tác với dữ liệu. Ví dụ, bạn có thể định nghĩa một lớp xe cộ (vehicle) với danh sách các đặc điểm có thể bao gồm số lượng các bánh xe, loại địa hình, tốc độ, loại nhiên liệu và số lượng khách có thể chở. Sau đó bạn có thể tạo ra các thể hiện của lớp này, chẳng hạn như một đối tượng xe đạp, một đối tượng tàu cao tốc và một đối tượng xe buýt.
Như đã đề cập, lập trình hướng đối tượng có nhiều lợi thế, quan trọng nhất trong số đó là tính mô-đun, có thể dùng lại và khả năng mở rộng. Trước khi sử dụng rộng rãi Java và các ngôn ngữ hướng đối tượng khác, các lập trình viên thường phải bỏ đi phần code đã làm việc trước đây mỗi khi có một yêu cầu lập trình mới cần phải được đưa vào chương trình. Với Java, những phần code cũ có thể được tái sử dụng và mở rộng, kết quả là ít lãng phí và có nhiều thư viện mạnh mẽ hơn.
Java: Nguồn gốc & triển vọng
Sự tiến hóa của Java bắt đầu vào năm 1991 khi nó có tên là Oak. Đã được khái niệm hóa bởi James Gosling và các nhà khoa học máy tính khác tại Sun Microsystems, Oak đáp ứng nhu cầu cấp thiết cho một ngôn ngữ độc lập nền tảng mà có thể được sử dụng trong các thiết bị điện tử như lò vi sóng và các điều khiển từ xa.
Nó có thể đã trở nên yên tĩnh và Oak sẽ vẫn chỉ là một ngôn ngữ tuyệt vời nhưng không được sử dụng phổ biến nếu không có sự xuất hiện của Internet. Nhưng chính Internet đã tạo ra cho các lập trình viên những vấn đề với tính di động của Web bao gồm sự đa dạng của các loại máy tính, hệ điều hành, trình duyệt và CPU. Thách thức này đã mang lại cho Oak – sau đó được đổi tên thành Java vào năm 1995 – một cơ hội để phát triển bùng nổ như một siêu lân tinh. Vì Java được thiết kế cho tính di động, nó đóng một vai trò quan trọng trong sự thành công vĩ đại của Internet, việc đẩy mạnh an ninh và xử lý trực tuyến thông qua các chương trình máy tính được gọi là applet và servlet.
Hơn hai thập kỷ sau khi được phát hành, Java vẫn giữ được vị thế siêu sao của nó trong các ngôn ngữ lập trình, luôn đứng ở vị trí top đầu trong các kỹ năng IT được mong muốn nhất. Java cũng tiếp tục di sản của nó trong hầu như bất kỳ thiết bị điện tử hoặc hệ thống có yếu tố tính toán: các máy tính lớn, phablets, dumb phones, smart phones, e-reader, các máy ATM, netbook, hệ thống kiểm soát không lưu, router, robot và thẻ tín dụng.
Java chắc chắn là có mặt ở khắp mọi nơi. Nhưng liệu nó có nằm trong sơ yếu lý lịch xin việc của bạn hay không?