baner green 1.png

Dạo Qua Một Chút Lịch Sử Của Java

java_logo-green
    Java được tạo ra bởi James Gosling và cộng sự của ông ở Sun Microsystem vào năm 1991 (sau này Oracle mua lại Sun Microsystem  vào năm 2010). Ban đầu ngôn ngữ này có tên là Oak (cây sồi) do bên ngoài công ty lúc bấy giờ có trồng nhiều cây này. Oak chính thức được đổi tên thành Java vào năm 1995.

Các Đặc Điểm Chính Của Java

java_logo-green
Java là một Ngôn Ngữ Lập Trình Hướng Đối Tượng (OOP). Do đó khi lập trình với ngôn ngữ này bạn sẽ phải làm việc với các lớp (Class). Cú pháp của Java được vay mượn nhiều từ C/C++ nhưng lại có đặc tính hướng đối tượng đơn giản hơn và ít tính năng xử lý cấp thấp hơn, nên việc tiếp cận Java sẽ dễ dàng hơn C/C++, thêm nữa nếu bạn nào đã có nền tảng về C/C++ thì chắc chắn sẽ dễ dàng đón nhận và tiếp cận Java hơn nữa.

 Khẩu hiệu nổi tiếng của Java chắc bạn cũng biết, đó là "Viết một lần, chạy mọi nơi". Viết ở đây là viết code, còn chạy nghĩa là thực thi ứng dụng, điều này có nghĩa là, phần mềm được viết bằng ngôn ngữ Java có thể chạy được trên mọi nền tảng (platform) khác nhau. Để làm được điều này thì Java đưa ra khái niệm máy ảo JVM (Java Virtual Machine), khi bạn biên dịch một chương trình, thay vì mã nguồn sẽ được dịch trực tiếp ra mã máy như nhiều ngôn ngữ khác, thì với Java mã nguồn đó sẽ được dịch thành mã bytecode,bytecode này sẽ được bạn phân phối đến các thiết bị khác nhau, chính JVM được cài sẵn ở các thiết bị đó sẽ dịch tiếp bytecode này thành mã máy giúp bạn. Có thể mô tả quá trình biên dịch này bằng sơ đồ sau.
JVM.png
Tại sao bạn phải chọn Java?
java_logo-green

Cú Pháp (Syntax) Đơn Giản

Do Java được kế thừa từ C/C++, nên sẽ vẫn giữ được sự đơn giản ở cú pháp so với những gì C/C++đã đạt được.
Mặt khác Java còn giảm bớt các khái niệm “đau đầu” mà C/C++ đang có, làm cho ngôn ngữ này trở nên đơn giản và dễ sử dụng hơn nữa. Có thể kể đến một vài sự giảm bớt này như là: bỏ đi các câu lệnh Goto, không còn khái niệm Nạp Chồng Toán Tử (Overload Operator), và còn bỏ đi khái niệm Con Trỏ (Pointer), bỏ file Header, bỏ luôn UnionStruct,…

Hoàn Toàn Hướng Đối Tượng (OOP)

Cũng có nhiều ý kiến xoay quanh hai chữ “Hoàn Toàn” này, thực tế thì chỉ có các kiểu dữ liệu nguyên thủy của Java như intlongfloat,… thì không hướng đối tượng. Ngoài các kiểu dữ liệu nguyên thủy đó ra thì khi tiếp xúc với Java, bạn luôn luôn phải suy nghĩ và làm việc theo hướng đối tượng. Vậy hướng đối tượng là gì? Chúng ta chắc chắn sẽ cùng nhau tìm hiểu xuyên suốt qua các bài học Java trong chương trình này.

Độc Lập Với Nền Tảng Hệ Điều Hành Và Phần Cứng

Như đã nói ở trên, khẩu hiệu của Java là “Viết một lần, Chạy mọi nơi”. Điều này đã giúp cho ngôn ngữ Java được độc lập với nền tảng phần cứng. Khi lập trình với Java, bạn sẽ không phải suy nghĩ đến sự tương thích với kiến trúc của từng loại hệ điều hành hay phần cứng, chính JVM sẽ giúp các bạn lo điều này.

Là Một Ngôn Ngữ Mạnh Mẽ

Nói Java mạnh mẽ là bởi vì ngôn ngữ này hỗ trợ lập trình viên rất nhiều điều. Đầu tiên, như có nhắc đến ở trên, Java có thể chạy trên nhiều nền tảng. Java còn có Bộ Dọn Rác (Garbage Collection) giúp tự động dọn dẹp các đối tượng đã qua sử dụng để giải phóng bộ nhớ, mà với các ngôn ngữ khác, lập trình viên phải thực hiện việc giải phóng này một cách thủ công. Java còn hỗ trợ chạy đa nhiệm (Multithread) rất tốt. Và còn nhiều thứ khác chúng ta sẽ cùng nhau tìm hiểu.

Môi Trường Phát Triển Phầm Mềm Java

java_logo-green
Cũng giống như tôi đã định nghĩa bên bài học Android: Môi trường phát triển là một môi trường mà ở đó nhà Phát Triển Phần Mềm có được những công cụ cần thiết nhất để viết ra một ứng dụng hoàn chỉnh. Vì bài học liên quan đến lập trình Java, do đó chúng ta sẽ tập trung vào tìm hiểu Môi Trường Phát Triển Phần Mềm Java (Java Development Environment) sẽ bao gồm những gì.

Hệ Điều Hành (Operating System)

Dù cho bạn đang lập trình dựa trên hệ điều hành nào: WindowsLinux hay Mac. Thì bạn đều có thể cài đặt được một Môi Trường Phát Triển Phần Mềm cho Java.

Java Development Kit (JDK)

Bộ Công Cụ Phát Triển Cho Java (JDK), bộ công cụ này sẽ cung cấp cho bạn các công cụ cần thiết để biên dịch, thực thi, và có cả môi trường để ứng dụng Java của bạn có thể chạy lên nữa.

Công Cụ Biên Dịch

Công Cụ Biên Dịch mà tôi muốn nói đến ở đây chính là một IDE (Integrated Development Environment), hay nói cách khác là một công cụ để bạn có thể viết code Java lên đó, công cụ này có thể đủ mạnh để ngoài việc bạn có thể code được, nó còn giúp kiểm tra lỗi cú pháp khi code, giúp liên kết với JDK để tự động biên dịch và thực thi chương trình.
Không giống như bên bài học Android tôi chỉ định các lập trình viên sử dụng Android Studio để biên dịch. Với Java các bạn có nhiều chọn lựa hơn, các bạn có thể sử dụng một trong các công cụ sau đây.

Netbeans

1.png
Netbeans là một IDE mã nguồn mở, mạnh mẽ, miễn phí.

Eclipse

 eclipse-11
Eclipse cũng là một IDE mã nguồn mở, với sự phổ biến và mạnh mẽ không kém gì Netbeans, thậm chí Eclipse còn có những điểm vượt trội, và tất nhiên cũng miễn phí.
Ngoài 2 IDE phổ biến được nói ở trên, còn có nhiều công cụ khác hỗ trợ lập trình Java. Bạn có thể chọn cho mình một IDE, nhưng để dễ dàng cho việc hướng dẫn, tôi chọn Eclipse cho các bài học của chúng ta từ đây về sau.
Bạn vừa được làm quen với ngôn ngữ Java, hi vọng bạn sẽ yêu thích ngôn ngữ này và cùng tôi đi hết chương trình học. Với việc tiếp cận đầy đủ ngôn ngữ Java, bạn sẽ dễ dàng làm quen với lập trình ứng dụng Android ở các bài giảng về Android cũng trong blog này.

Bài Kế Tiếp

Bạn sẽ được hướng dẫn cài đặt một Môi Trường Phát Triển Phầm Mềm cho ngôn ngữ Java này.



                                                                                                         Nguồn : yellowcodebooks.com