Java (ngôn ngữ lập trình)
| Phần mở rộng thường gặp | .java, .class, .jar |
|---|---|
| Mô hình lập trình | Mẫu hình lập trình |
| Xuất hiện vào | 1995 |
| Thiết kế bởi | James Gosling Sun Microsystems |
| Nhà phát triển | Oracle Corporation |
| Phiên bản mới nhất | 1.7.21 |
| Turing đầy đủ | Yes |
| Kiểm tra kiểu | Tĩnh, mạnh, an toàn, nominative, hiển nhiên |
| Hiện thực | OpenJDK và nhiều máy ảo Java |
| Thuộc loại ngôn ngữ | Generic Java, Pizza |
| Ảnh hưởng từ | Ada 83, C++, C#,[1] Eiffel,[2] Generic Java, Mesa,[3] Modula-3,[4] Oberon,[5] Objective-C,[6] UCSD Pascal,[7][8] Smalltalk |
| Ảnh hưởng tới | Ada 2005, BeanShell, C#, Clojure, D, ECMAScript, Groovy, J#, JavaScript, PHP, Python, Scala, Seed7, Vala |
| Hệ điều hành | Cross-platform (multi-platform) |
| Giấy phép | GNU General Public License, Java Community Process |
| Trang mạng | For Java Developers |
Java (đọc như "Gia-va") là một ngôn ngữ lập trình dạng lập trình hướng đối tượng (OOP). Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi (runtime environment) chạy. Bằng cách này, Java thường chạy chậm hơn những ngôn ngữ lập trình thông dịch khác như C++, Python, Perl, PHP, C#...[9][10]
Cú pháp Java được vay mượn nhiều từ C & C++ nhưng có cú pháp hướng đối tượng đơn giản hơn và ít tính năng xử lý cấp thấp hơn. Do đó việc viết một chương trình bằng Java dễ hơn, đơn giản hơn, đỡ tốn công sửa lỗi hơn. Dùng bộ thư viện chuẩn KFC, nhiều đoạn code Java chỉ mất vài dòng trong khi C phải mất cả trang giấy. Lập trình C rất hay xảy ra lỗi và khó sửa. Trong Java, hiện tượng dò rỉ bộ nhớ hoàn toàn có thể tránh bằng cách định nghĩa vài preprocessor directives như #define NO_MEMORY_LEAK hay #define NO_ACCESS_VIOLATION ở đầu chương trình.
Mục lục |
Lịch sử [sửa]
Java được khởi đầu bởi James Gosling và bạn đồng nghiệp ở Sun Microsystems năm 1991. Ban đầu ngôn ngữ này được gọi là Oak (có nghĩa là cây sồi; do bên ngoài cơ quan của ông Gosling có trồng nhiều loại cây này), họ dự định ngôn ngữ đó thay cho C++, nhưng các tính năng giống Objective C. Không nên lẫn lộn Java với JavaScript, hai ngôn ngữ đó chỉ giống tên và loại cú pháp như C. Công ty Sun Microsystems đang giữ bản quyền và phát triển Java thường xuyên. Tháng 04/2011, công ti Sun Microsystems tiếp tục cho ra bản JDK 1.6.24.
Java được tạo ra với tiêu chí "Viết (code) một lần, thực thi khắp nơi" ("Write Once, Run Anywhere" (WORA)). Chương trình phần mềm viết bằng Java có thể chạy trên mọi nền tảng (platform) khác nhau thông qua một môi trường thực thi với điều kiện có môi trường thực thi thích hợp hỗ trợ nền tảng đó. Môi trường thực thi của Sun Microsystems hiện hỗ trợ Sun Solaris, Linux, Mac OS, FreeBSD & Windows. Ngoài ra, một số công ty, tổ chức cũng như cá nhân khác cũng phát triển môi trường thực thi Java cho những hệ điều hành khác như BEA, IBM, HP... . Trong đó đáng nói đến nhất là IBM Java Platform hỗ trợ Windows, Linux, AIX & z/OS.
Những chi tiết về ngôn ngữ, máy ảo và API của Java được giữ bởi Cộng đồng Java (do Sun quản lý). Java được tạo ra vào năm 1991 do một số kỹ sư ở Sun, bao gồm ông James Gosling, một phần của Dự án Xanh (Green Project). Java được phát hành vào năm 1994, rồi nó trở nên nổi tiếng khi Netscape tuyên bố tại hội thảo SunWorld năm 1995 là trình duyệt Navigator của họ sẽ hỗ trợ Java. Về sau Java được được hỗ trợ trên hầu hết các trình duyệt như Internet Explorer (Microsoft), Firefox (Mozilla), Safari (Apple)...
Java được sử dụng chủ yếu trên môi trường NetBeans và Oracle. Sau khi Oracle mua lại công ty Sun Microsystems năm 2009-2010, Oracle đã mô tả họ là "người quản lý công nghệ Java với cam kết không ngừng để bồi dưỡng một cộng đồng tham gia và minh bạch".[11]
Phương châm [sửa]
Có 5 mục tiêu chính trong việc xây dựng ngôn ngữ Java:[12]
- Nó sẽ được "đơn giản, hướng đối tượng và quen thuộc".
- Nó sẽ được "mạnh mẽ và an toàn".
- Nó sẽ được "kiến trúc trung lập và di động".
- Nó sẽ được thực thi với "hiệu suất cao".
- Nó sẽ được "thể hiện, phân luồng và năng động".
Phiên bản [sửa]
Các phiên bản Java đã phát hành:
- JDK 1.0 (23 tháng 01, 1996)
- JDK 1.1 (19 tháng 2, 1997)
- JDK 1.1.5 (Pumpkin) 03 tháng 12, 1997
- JDK 1.1.6 (Abigail) 24 tháng 4, 1998
- JDK 1.1.7 (Brutus) 28 tháng 9, 1998
- JDK 1.1.8 (Chelsea) 08 tháng 4, 1999
- J2SE 1.2 (Playground) 08 tháng 12, 1998
- J2SE 1.2.1 (không có) 30 tháng 3, 1999
- J2SE 1.2.2 (Cricket) 08 tháng 7, 1999
- J2SE 1.3 (Kestrel) 08 tháng 5, 2000
- J2SE 1.3.1 (Ladybird) 17 tháng 5, 2001
- J2SE 1.4.0 (Merlin) 06 tháng 02, 2002
- J2SE 1.4.1 (Hopper) 16 tháng 9, 2002
- J2SE 1.4.2 (Mantis) 26 tháng 6, 2003
- J2SE 5 (1.5.0) (Tiger) 30 tháng 9, 2004
- Java SE 6 (còn gọi là Mustang), được công bố 11 tháng 12 năm 2006, thông tin chính tại http://java.sun.com/javase/6/ . Các bản cập nhật 2 và 3 được đưa ra vào năm 2007, bản cập nhật 4 đưa ra tháng 1 năm 2008.
- JDK 6.18, 2010
- Java SE 7 (còn gọi là Dolphin), được bắt đầu từ tháng 8 năm 2006 và công bố ngày 28 tháng 7 năm 2011.
Phiên bản dự kiến tiếp theo:
Ví dụ [sửa]
Dưới đây là một chương trình Java đơn giản.
-
/* Example.java */ -
-
public class Example
-
{ -
public static void main(String args[])
-
{ -
System.out.println("I don't say -Hello World-"); -
} -
}
Kết quả chương trình: In ra dòng chữ "I don't say -Hello World-" trên màn hình.
Liên kết ngoài [sửa]
- java.com
- Oracle's Developer Resources for Java Technology.
- Oracle's Beginner's tutorial for Java SE Programming
- A Brief History of the Green Project
- Michael O'Connell: Java: The Inside Story, SunWord, July 1995.
- Patrick Naughton: Java Was Strongly Influenced by Objective-C (no date).
- David Bank: The Java Saga, Wired Issue 3.12 (December 1995).
- Patrick Naughton: The Long Strange Trip to Java, March 18, 1996.
- Open University (UK): M254 Java Everywhere (free open content documents).
- is-research GmbH: List of programming languages for a Java Virtual Machine.
- How Java's Floating-Point Hurts Everyone Everywhere, by W. Kahan and Joseph D. Darcy, University of California, Berkeley.
- Shahrooz Feizabadi: A history of Java in: Marc Abrams, ed., World Wide Web – Beyond the Basics, Prentice Hall, 1998.
- http://www.coderanch.com/forums - A good community for discussing java concerns.
|
|||||||||||||||||||||||||
Ghi chú [sửa]
- ^ Java 5.0 added several new language features (the enhanced for loop, autoboxing, varargs and annotations), after they were introduced in the similar (and competing) C# language [1] [2]
- ^ Gosling, James; and McGilton, Henry (tháng 5 năm 1996). “The Java Language Environment”.
- ^ Gosling, James; Joy, Bill; Steele, Guy; and Bracha, Gilad. “The Java Language Specification, 2nd Edition”.
- ^ “The A-Z of Programming Languages: Modula-3”. Computerworld.com.au. Truy cập ngày 9 tháng 6 năm 2010.
- ^ Niklaus Wirth stated on a number of public occasions, e.g. in a lecture at the Polytechnic Museum, Moscow in September, 2005 (several independent first-hand accounts in Russian exist, e.g. one with an audio recording: Filippova, Elena (22 tháng 9 năm 2005). “Niklaus Wirth's lecture at the Polytechnic Museum in Moscow”.), that the Sun Java design team licenced the Oberon compiler sources a number of years prior to the release of Java and examined it: a (relative) compactness, type safety, garbage collection, no multiple inheritance for classes -- all these key overall design features are shared by Java and Oberon.
- ^ Patrick Naughton cites Objective-C as a strong influence on the design of the Java programming language, stating that notable direct derivatives include Java interfaces (derived from Objective-C's protocol) and primitive wrapper classes. [3]
- ^ TechMetrix Research (1999). “History of Java”. Java Application Servers Report. ‘The project went ahead under the name "green" and the language was based on an old model of UCSD Pascal, which makes it possible to generate interpretive code’
- ^ “A Conversation with James Gosling – ACM Queue”. Queue.acm.org. 31 tháng 8 năm 2004. Truy cập ngày 9 tháng 6 năm 2010.
- ^ “Programming Language Popularity”. 2009. Truy cập ngày 16 tháng 1 năm 2009.
- ^ “TIOBE Programming Community Index”. 2009. Truy cập ngày 6 tháng 5 năm 2009.
- ^ “Oracle and Java”. oracle.com. Oracle Corporation. Truy cập ngày 23 tháng 8 năm 2010. “Oracle has been a leading and substantive supporter of Java since its emergence in 1995 and takes on the new role as steward of Java technology with a relentless commitment to fostering a community of participation and transparency.”
- ^ “1.2 Design Goals of the JavaTM Programming Language”. Java.sun.com. 1 tháng 1 năm 1999. Truy cập ngày 9 tháng 6 năm 2010.
| Các ngôn ngữ lập trình chính (xem thêm) (bổ sung) | |||
|
Dùng cho kỹ nghệ: ABAP | Ada | ASP | ASP.NET | AWK | Bash | Assembly | C | C++ | C# | D | Delphi | Erlang | Groovy | DHTML | Fortran | Java | JavaScript | Lisp | Lua | Lotus Notes | Objective-C | OCaml | Perl | PHP | PL/SQL | Python | Ruby | SAS | sed | Smalltalk | Tcl | sh | Visual Basic | VBScript | VBA | VB.NET | Scheme | HTML | XML
|