Đề tài Những đặc điểm mới trong Java 7

MỤC LỤC

1. CÁC NGUYÊN LÝ SÁNG TẠO TRONG KHOA HỌC: . 5

1.1. Nguyên t ắc phân nhỏ: . 5

1.2. Nguyên t ắc “tách khỏi”: . 5

1.3. Nguyên t ắc phẩm chất c ục bộ:. 5

1.4. Nguyên t ắc phản đối xứng: . 5

1.5. Nguyên t ắc kết hợ p: . 5

1.6. Nguyên t ắc vạn năng: . 5

1.7. Nguyên t ắc “chứa trong”:. 5

1.8. Nguyên t ắc phản trọng lượ ng: . 6

1.9. Nguyên t ắc gây ứng suất sơ bộ: . 6

1.10. Nguyên t ắc thực hiệ n sơ bộ: . 6

1.11. guyên tắc ự ph ng:. 6

1.12. guyên tắc đ ng thế: . 6

1.13. guyên tắc đảo ngượ c:. 6

1.14. guyên tắc cầu tr n hoá: . 6

1.15. guyên tắc linh động: . 6

1.16. guyên tắc giải “thiếu” hoặc “thừa”: . 7

1.17. guyên tắc chuyển sang chiều khác: . 7

1.18. guyên tắc sử ụng các ao động cơ học:. 7

1.19. guyên tắc tác động theo chu kỳ: . 7

1.20. guyên tắc liên tục tác động có ích . 7

1.21. Nguyên t ắc “vượt nhanh”: . 7

1.22. Nguyên t ắc biế n hại thành lợi: . 8

1.23. Nguyên t ắc quan hệ phản hồi: . 8

1.24. Nguyên t ắc sử dụng trung gian: . 8

1.25. Nguyên t ắc tự phục vụ: . 8

1.26. Nguyên t ắc sao chép (copy):. 8

1.27. Nguyên t ắc “rẻ ” thay cho “đ ắt”: . 8

1.28. Thay thế sơ đồ cơ học:. 8

1.29. Sử dụng các kết c ấu khí và lỏng: . 8

1.30. Sử dụng vỏ dẻo và màng mỏng: . 9

Những đặc điểm mới trong Java 7

Thầy HD: GS TSKH Hoàng Kiếm Trang 4

1.31. Sử dụng các vật liệu nhiều lỗ: . 9

1.32. Nguyên t ắc thay đổi màu s ắc: . 9

1.33. Nguyên t ắc đồng nhất: . 9

1.34. Nguyên t ắc phân hủy hoặc tái sinh các ph ần . 9

1.35. Thay đổi các thông s ố hoá lý của đối tượ ng: . 9

1.36. Sử dụng chuyển pha: . 9

1.37. Sử dụng s ự nở nhiệt: . 9

1.38. Sử dụng các chất oxy hoá m ạnh: . 10

1.39. Thay đổi đ ộ trơ: . 10

1.40. Sử dụng các vật liệu hợp thành (composite):. 10

2. CÁC NGUYÊN LÝ SÁNG TẠO TRONG TIN HỌC 10

2.1. Theo phương pháp trự c tiếp . . . . 10

 Nguyên lý 1 .10

 Nguyên lý 2 .10

 Nguyên lý 3 .10

 Nguyên lý 4 .11

 Nguyên lý 5 .11

 Nguyên lý 6 .11

2.2. Theo phương pháp gián tiếp . . . . 11

 Phương pháp thử sai . 11

 Phương pháp Heuristic. 12

 Phương pháp trí tuệ nhân tạo . 12

 Một số ví dụ áp dụng điển hình trong tin học . 13

3. NHỮNG ĐẶC ĐIỂM MỚI TRONG JAVA 7 . 15

3.1. Giớ i thiệu v ề Java - L ịch sử hình thành và phát triển! . . 15

a. Gi ới thiệ u ngôn ng ữ l ập trình Java .15

b. Lị ch sử hình thành ngôn ngữ Java .15

c. Một số đặc điể m nổ i bật c ủ a ngôn ng ữ lập trình Java .16

d. Các loạ i ứ ng d ụng c ủ a Java .17

3.2. Nhữ ng đặ c điểm n ổi b ậ t trong Java 7: . . . 17

a. Moularity (Khả năng mô đun hóa . 17

b. Language changes Thay đ ổi ngôn ng ữ) . 19

c. Multi Language Virtual Machine: . 20

d. Garbage Collector . 20

e. Thư việ n I/O API m ới:. 21

4. TÀI LỆU THAM KHẢO.21

pdf21 trang | Chuyên mục: Java | Chia sẻ: dkS00TYs | Lượt xem: 2483 | Lượt tải: 0download
Tóm tắt nội dung Đề tài Những đặc điểm mới trong Java 7, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 
Thầy HD: GS TSKH Hoàng Kiếm Trang 16 
Java được sử dụng chủ yếu trên môi trường mạng, internet. Sau khi 
Oracle mua lại công ty của Sun Microsystem năm 2 9-2 1 , 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 ưỡng 
một cộng đồng tham gia và minh bạch. 
Các phiên bản Java đã phát hành: 
 JDK 1.1, 1997-1999 
 J2SE 1.2, 1998-1999 
 J2SE 1.3, 2000-2001 
 J2SE 1.4, 2002-2003 
 J2SE 5, 2004 
 J2SE 6 (còn gọi là Mustang , được công bố 11 tháng 12 năm 2 6 
 JDK 6.18, 2010 
 Java SE 7 (còn gọi là Dolphin), 2011. Tới thời điểm này th đây là phiên bản 
mới nhất. 
c. Một số đặc điểm nổi bật của ngôn ngữ lập trình Java 
 Máy ảo Java (JVM – Java Virtual Machine) 
Tất cả các chương tr nh muốn thực thi được thì phải được biên dịch ra 
mã máy. Mã máy của từng kiến trúc CPU của mỗi máy tính là khác nhau (tập 
lệnh mã máy của CPU Intel, CPU Solarix, CPU Macintosh … là khác nhau , v 
vậy trước đây một chương tr nh sau khi được biên dịch xong chỉ có thể chạy 
được trên một kiến trúc CPU cụ thể nào đó. Đối với CPU Intel chúng ta có thể 
chạy các hệ điều hành như Microsoft Win ows, Unix,Linux, OS/2, … 
Chương tr nh thực thi được trên Win ows được biên dịch ưới dạng file 
có đuôi .EXE c n trên Linux th được biên dịch ưới dạng file có đuôi .ELF, v 
vậy trước đây một chương tr nh chạy được trên Windows muốn chạy được trên 
hệ điều hành khác như Linux ch ng hạn thì phải chỉnh sửa và biên dịch lại. 
Chìa khóa giúp Java giải quyết 2 vấn đề bảo mật và tương thích có thể 
xem là mã dịch ra không phải là mã thực hiện, đó là mã Byteco e. Byteco e là 
tập chỉ thị của trình biên dịch Java và chỉ dịnh sang mã máy trong lúc thi hành, 
hệ thống đó gọi là máy ảo Java (JVM – Java Virtual Machine) - Đây là chương 
trình phiên dịch mã lệnh sang mã Bytecode. 
Việc dịch chương trình Java sang Bytecode có thể làm cho chương tr nh 
chạy trên nhiều môi trường hơn. Lý o rất dễ hiểu, chỉ cần có mỗi JVM cho mỗi 
môi trường, khi chương tr nh chạy chỉ cần cho phép JVM chạy chúng, Nhớ 
rằng, mặc dù có nhiều loại máy JVM trên nhiều môi trường nhưng mã ịch ra 
Bytecode là giống nhau trên tất cả các hệ máy. 
 Thông dịch: 
 Java là một ngôn ngữ lập trình vừa biên dịch vừa thông dịch. Chương 
trình nguồn viết bằng ngôn ngữ lập tr nh Java có đuôi *.java đầu tiên được biên 
dịch thành tập tin có đuôi *.class và sau đó sẽ được trình thông dịch thông dịch 
thành mã máy. 
 Độc lập nền: 
Một chương tr nh viết bằng ngôn ngữ Java có thể chạy trên nhiều máy 
tính có hệ điều hành khác nhau Win ows, Unix,Linux, … miễn sao ở đó có cài 
Những đặc điểm mới trong Java 7 
Thầy HD: GS TSKH Hoàng Kiếm Trang 17 
đặt máy ảo java (Java Virtual Machine). Viết một lần chạy mọi nơi write once 
run anywhere). 
 Hướng đối tượng: 
Hướng đối tượng trong Java tương tự như C++ nhưng Java là một ngôn 
ngữ lập tr nh hướng đối tượng hoàn toàn. Tất cả mọi thứ đề cập đến trong Java 
đều liên quan đến các đối tượng được định nghĩa trước, thậm chí hàm chính của 
một chương tr nh viết bằng Java đó là hàm main c ng phải đặt bên trong một 
lớp. Hướng đối tượng trong Java không có tính đa kế thừa (multi inheritance) 
như trong C++ mà thay vào đó Java đưa ra khái niệm interface để hỗ trợ tính đa 
kế thừa. Vấn đề này sẽ được bàn chi tiết trong phần sau. 
 Đa nhiệm – đa luồng (MultiTasking – Multithreading): 
Java hỗ trợ lập tr nh đa nhiệm, đa luồng cho phép nhiều tiến trình, tiểu 
trình có thể chạy song song cùng một thời điểm và tương tác với nhau. 
 Khả chuyển (portable): 
Chương tr nh ứng dụng viết bằng ngôn ngữ Java chỉ cần chạy được trên 
máy ảo Java là có thể chạy được trên bất kỳ máy tính, hệ điều hành nào có máy 
ảo Java. "Viết một lần, chạy mọi nơi" Write Once, Run Anywhere). 
 Hỗ trợ mạnh cho việc phát triển ứng dụng: 
 Công nghệ Java phát triển mạnh mẽ nhờ vào "đại gia Sun 
Microsystem" cung cấp nhiều công cụ, thư viện lập trình phong phú hỗ trợ cho 
việc phát triển nhiều loại hình ứng dụng khác nhau cụ thể như: J2SE Java 2 
Standard Edition) hỗ trợ phát triển những ứng dụng đơn, ứng dụng client-server; 
J2EE (Java 2 Enterprise Edition) hỗ trợ phát triển các ứng dụng thương mại, 
J2ME (Java 2 Micro Edition) hỗ trợ phát triển các ứng dụng trên các thiết bị di 
động, không ây, … 
d. Các loại ứng dụng của Java 
 Ứng dụng console: Không có giao diện GUI. 
 Ứng dụng đồ hoạ: Có giao diện GUI. 
 Applet: Nhúng trong các trang Web. 
 Servlet: Các class thực thi phía web server. 
 JSP: Các file nhúng mã Java và HTML. 
 Ứng dụng EJB, RMI, JMS: Xây dựng ứng dụng bởi nhiều thành phần ghép lại, 
giao tiếp từ xa. 
3.2. Những đặc điểm nổi bật trong Java 7: 
Các đặc đó bao gồm: 
 Modularity 
 Language Changes 
 Multi Language Virtual Machine 
 Garbage Collector 
 New File I/O API 
a. Moularity (Khả năng mô đun hóa) 
 Sự cần thiết phải mô đun hóa: 
Chúng ta đã biết, Java SE trước phiên bản 7) phát triển rất nhanh với các thư 
viện, lớp, hàm tiện ích hỗ trợ cho người lập trình dễ àng hơn. 
Những đặc điểm mới trong Java 7 
Thầy HD: GS TSKH Hoàng Kiếm Trang 18 
Mỗi phiên bản ra đời là thêm vào ngày càng nhiều các lớp và thư viện này. 
Các thư viện này gắn kết với nhau. 
Điều này dẫn đến sẽ có những thư viện người này ng nhưng người khác 
không ng người mới học java chỉ cần biết cách sử dụng ngôn ngữ, không cần các 
thư viện chuyên dụng)  ư thừa 
Thư viện ngày càng phát triển khổng lồ  lãng phí không gian 
Các thư viện ở phiên bản mới xây dựng dựa trên các thư viện ở phiên bản c 
nhưng phiên bản c có thể không phải là phiên bản liền kề trước đó. trong file đóng 
gói đã có chứa các file thư viện này) 
Vd: Phiên bản hiện tại Java 6, 
Phiên bản trước đó: 
Java 5.5, Java 5 
Hàm X nào đó là hàm mới được xây dựng từ hàm Y() trong phiên bản Java 5 
(không phải Java 5.5 . Trong khi Java 5.5 c ng có hàm Y có thể giống hoặc khác 
nhau)  Điều này gây nên sự nhọc nhằn về các phiên bản thư viện sử dụng. 
 Cải tiến trong Java 7: 
Cho phép mô đun hóa các thư viện, nghĩa là cài đặt những thư viện cần dùng 
không cần cài đặt hết (java 6 là phải cài hết) 
Quản lý được các phiên bản thư viện JARs version c ng như các thành phần 
phụ thuộc (dependencies) 
 Các nguyên lý sáng tạo được áp dụng: 
Nguyên tắc phân nhỏ và tách khỏi: 
Chia thư viện lớn (phải cài tất cả thành các thư viện riêng (có thể cài 
đặt riêng tùy theo nhu cầu sử dụng), Tách những thư viện không cần thiết ra 
khỏi thư viện hiện hành để làm tăng khả năng thực thi, tiết kiệm không gian lưu 
trữ và vùng nhớ. 
Nguyên tắc kết hợp: 
Khi ta cần giải quyết bài toán nào đó, cần nhiều thư viện hơn, ta có thể 
kết hợp cài thêm vào các thư viện này để sử dụng. 
// Định nghĩa mo ule A 
//Yêu cầu thư viện B phiên bản 2.1 
// và thư viện C phiên bản 1.1 
//Lớp sample thuộc về mo ule A được 
khai báo là public 
//Lớp này sẽ được truy cập bởi lớp khác 
trong cùng module A 
Những đặc điểm mới trong Java 7 
Thầy HD: GS TSKH Hoàng Kiếm Trang 19 
b. Language changes (Thay đổi ngôn ngữ) 
Những thay đổi ngôn ngữ trong java 7 giúp cho cú pháp đơn giản hơn. Cụ 
thể như sau: 
 Thay đổi trong cấu trúc switch: cho phép dùng chuỗi trong cấu trúc 
switch 
 Thay đổi trong xử lý biệt lệ: cho phép nhóm các biệt lệ để cùng xử lý 
Phiên bản cũ Java 7 
 Suy luận kiểu: nếu khai báo biến là kiểu Map thì khi 
tạo đối tượng mới c ng có kiểu 
Những đặc điểm mới trong Java 7 
Thầy HD: GS TSKH Hoàng Kiếm Trang 20 
 Toán tử Elvis: Kiểm tra đối tượng có NULL hay không, tự động 
unboxing một đối tượng sang kiểu nguyên thủy 
c. Multi Language Virtual Machine: 
 ền tảng Java SE 7 cho phép các ngôn ngữ khác (không phải Java) khai 
thác cơ sở hạ tầng và tối ưu hóa hiệu quả tiềm năng của JVM (Java Virtual 
Machine). Tính năng này được cung cấp bởi ự án nguồn mở DaVinci. Mục 
đích của ự án này hướng đến là: 
- Giúp JVM có thể chạy một cách hiệu quả những ngôn ngữ khác. 
- Giúp các ngôn ngữ khác c ng tồn tại một cách hài h a với Java trong JVM 
và được hưởng lợi từ các công nghệ mạnh mẽ và trưởng thành như Java 
- Loại bỏ những mặt hạn chế của ngôn ngữ khác khi chạy trong JVM 
Các nguyên lý sáng tạo được áp dụng: 
Ở đây ta thấy nguyên tắc “Vạn năng” được áp dụng. Một máy ảo JVM có thể chạy 
nhiều ngôn ngữ khác nhau 
d. Garbage Collector 
- Garbage Collector mới được giới thiệu trong Java 7 
- ó được gọi là First Collector Garbage 
- Bộ nhớ được chia thành nhiều khu vực không như 2 khu vực trong 
phiên bản hiện hành 
- Khả năng dự đoán và cung cấp lớn hơn thông qua đặt cho bộ nhớ ứng dụng 
chuyên sâu 
- Thực hiện nhanh hơn so với “bộ thu rác” song song hiện nay. 
Các nguyên lý sáng tạo được áp dụng: 
Ở đây ta thấy nguyên tắc chia nhỏ và dự ph ng được áp dụng, bộ nhớ 
được chia thành nhiều khu vực, sử dụng một cách có hiệu quả, tránh được hiện 
tượng phân mảnh nhờ và khả năng ự đoán tốt 
Những đặc điểm mới trong Java 7 
Thầy HD: GS TSKH Hoàng Kiếm Trang 21 
e. Thư viện I/O API mới: 
Giới hạn của phiên bản hiện hành: 
 Thao tác xóa không được bảo đảm. Cần phải kiểm tra để xác định file đã 
bị xóa hay chưa 
 Các thao tác trên thư mục không được mở rộng và phải chạy trên tiểu 
trình chính 
 Thao tác polling cần phải hoàn thành để thay đổi file 
Thư viện mới: 
 Hệ thống thư viện File mới 
 Các cảnh báo về File 
 Các hoạt động của thư mục 
 Bất đồng bộ quá trình nhập xuất 
Một ví dụ: 
4. TÀI LIỆU THAM KHẢO 
1. Bài giảng môn học “Phương pháp nhiên cứu khoa học trong tin học”, Giảng viên : 
GS.TSKH Hoàng Văn Kiếm 
2. Giải một bài toán trên máy tính như thế nào? (tập 1, 2, 3) - GS. TSKH Hoàng Kiếm, 
Nhà xuất bản giáo dục – 2003. 
3. Phương pháp luận nghiên cứu khoa học , V Cao Đàm, hà xuất bản Khoa Học và K 
Thuật – 1999. 
4. Các thủ thuật (nguyên tắc) sáng tạo cơ bản, 2007 - Phan ng. 
5. Phương pháp luận sáng tạo – Giải quyết vấn đề và ra quyết định - Phan ng. 
6. Algorit sang chế - Nguyễn Chân-Phan ng- ương Xuân Bảo 
7. Phương pháp luận sáng tạo - TRIZVIET -  

File đính kèm:

  • pdfĐề tài Những đặc điểm mới trong Java 7.pdf
Tài liệu liên quan