Trong những năm gần đây, lập trình hướng đối tượng đã trở nên gần gũi nhờ sự
ra đời liên tiếp của các ngôn ngữ lập trình hướng đối tượng. Sức mạnh của
phương pháp lập trình hướng đối tượng thể hiện ở chỗ khả năng mô hình hoá
hệ thống dựa trên các đối tượng thực tế, khả năng đóng gói và bảo vệ an toàn
dữ liệu, khả năng sử dụng lại mã nguồn để tiết kiệm chi phí và tài nguyên; đặc
biệt là khả năng chia sẽ mã nguồn trong cộng đồng lập trình viên chuyên
nghiệp. Những điểm mạnh này hứa hẹn sẽ thúc đẩy phát triển một môi trường
lập trình tiên tiến cùng với nền công nghiệp lắp ráp phần mềm với các thư viện
thành phần có sẵn.
Không còn nguy cơ dữ liệu bị thay đổi tự do trong chương trình. Vì dữ liệu đã
được đóng gói vào các đối tượng. Nếu muốn truy nhập vào dữ liệu phải thông
qua các phương thức cho phép của đối tượng.
Khi thay đổi cấu trúc dữ liệu của một đối tượng, không cần thay đổi các đổi
mã nguồn của các đối tượng khác, mà chỉ cần thay đổi một số hàm thành phần
của đối tượng bị thay đổi. Điều này hạn chế sự ảnh hưởng xấu của việc thay
đổi dữ liệu đến các đối tượng khác trong chương trình.
21 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 2480 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Đề tài Các nguyên tắc sáng tạo khoa học và ứng dụng trong ngôn ngữ lập trình java, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
BÀI THU HOẠCH
MÔN HỌC
PHƢƠNG PHÁP NGHIÊN CỨU
KHOA HỌC TRONG TIN HỌC
Đề tài
CÁC NGUYÊN TẮC SÁNG TẠO KHOA HỌC VÀ ỨNG
DỤNG TRONG NGÔN NGỮ LẬP TRÌNH JAVA
Giảng viên hướng dẫn:GS.TSKH Hoàng Kiếm
Học viên thực hiện:Nguyễn Thanh Hoàng
Khóa:K22
MSHV:1211023
TP.HCM,12/2012
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 2
Mục lục
LỜI NÓI ĐẦU ....................................................................................... 4
PHẦN 1:GIỚI THIỆU CÁC NGUYÊN TẮC SÁNG TẠO TRONG
KHOA HỌC:
1. Nguyên tắc phân nhỏ ........................................................................................ 5
2. Nguyên tắc tách khỏi ......................................................................................... 5
3. Nguyên tắc phẩm chất cục bộ .......................................................................... 5
4. Nguyên tắc phản đối xứng ................................................................................ 5
5. Nguyên tắc kết hợp ............................................................................................ 5
6. Nguyên tắc vạn năng ......................................................................................... 5
7. Nguyên tắc “chứa trong” .................................................................................. 6
8. Nguyên tắc phản trọng lƣợng ........................................................................... 6
9. Nguyên tắc gây ứng suất sơ bộ ......................................................................... 6
10. Nguyên tắc thực hiện sơ bộ .............................................................................. 6
11. Nguyên tắc dƣ ̣phòng ........................................................................................ 6
12. Nguyên tắc đẳng thế .......................................................................................... 6
13. Nguyên tắc đảo ngƣơc̣ ....................................................................................... 7
14. Nguyên tắc cầu (tròn) hoá ................................................................................ 7
15. Nguyên tắc linh đôṇg ........................................................................................ 7
16. Nguyên tắc giải “thiếu” hoăc̣ “thƣ̀a” ............................................................... 7
17. Nguyên tắc chuyển sang chiều khác ................................................................ 7
18. Nguyên tắc sƣ̉ duṇg các dao đôṇg cơ hoc̣ ........................................................ 8
19. Nguyên tắc tác đôṇg theo chu kỳ ..................................................................... 8
20. Nguyên tắc liên tuc̣ tác đôṇg có ích ................................................................. 8
21. Nguyên tắc “vƣợt nhanh” ................................................................................. 8
22. Nguyên tắc biến hại thành lợi .......................................................................... 9
23. Nguyên tắc quan hệ phản hồi ........................................................................... 9
24. Nguyên tắc sử dụng trung gian ........................................................................ 9
25. Nguyên tắc tự phục vụ ...................................................................................... 9
26. Nguyên tắc sao chép (copy) .............................................................................. 9
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 3
27. Nguyên tắc “rẻ” thay cho “đắt” ..................................................................... 10
28. Thay thế sơ đồ cơ học ...................................................................................... 10
29. Sử dụng các kết cấu khí và lỏng ..................................................................... 10
30. Sử dụng vỏ dẻo và màng mỏng ...................................................................... 10
31. Sử dụng các vật liệu nhiều lỗ .......................................................................... 10
32. Nguyên tắc thay đổi màu sắc .......................................................................... 10
33. Nguyên tắc đồng nhất ..................................................................................... 11
34. Nguyên tắc phân hủy hoặc tái sinh các phần ................................................ 11
35. Thay đổi các thông số hoá lý của đối tƣợng .................................................. 11
36. Sử dụng chuyển pha ........................................................................................ 11
37. Sử dụng sự nở nhiệt ........................................................................................ 11
38. Sử dụng các chất oxy hoá mạnh..................................................................... 12
39. Thay đổi độ trơ ................................................................................................ 12
40. Sử dụng các vật liệu hợp thành (composite) ................................................. 12
PHẦN 2:ỨNG DỤNG CÁC NGUYÊN TẮC SÁNG TẠO KHOA HỌC
VÀO NGÔN NGỮ LẬP TRÌNH JAVA
I. LỊCH SỬ PHÁT TRIỂN JAVA ................................................................. 12
II. CÁC API HỖ TRỢ TRONG JAVA ............................................................ 13
1. Chuỗi(String),StringBuffer và biểu thức chính qui ............................. 13
2. Kiểu dữ liệu ngày tháng(Date),Các hàm toán học(Math) Lớp bao kiểu
nguyên thủy(Wrapers) và mảng(Array). .............................................. 14
3. Kiểu mảng động(Collection). .................................................................. 15
4. IO & Exception ........................................................................................ 17
5. Lập trình hƣớng đối tƣợng OOP(object-oriented programming) ........... 19
III. KẾT LUẬN ................................................................................................... 21
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 4
LỜI NÓI ĐẦU
ó thể nói rằng Java là một ngôn ngữ lập trình mạnh đang được sử dụng rất
rộng rãi hiện nay trên toàn thế giới. Trên thực tế, Java được biết đến không
chỉ là một ngôn ngữ lập trình mà còn là một platform – một môi trường và
công nghệ phát triển – riêng biệt. Khi làm việc với Java, người lập trình được
sở hữu một thư viện lớn, có tính mở với một lượng mã nguồn tái sử dụng
khổng lồ luôn có trên internet. Ngoài ra, các chương trình viết bằng Java có
môi trường thực thi riêng với các tính năng bảo mật, khả năng triển khai trên
nhiều hệ điều hành khác nhau.
ội dung bài tiểu luận: Ứng dụng kiến thức các nguyên tắc nguyên cứu
khoa học đã học để giới thiệu,phân tích sự phát triển ngôn ngữ Java
uối cùng,xin cảm ơn GS.TSKH Hoàng Kiếm đã nhiệt tình truyền đạt kiến
thức cho em trong quá trình học môn phương pháp nguyên cứu khoa học.
C
N
C
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 5
PHẦN 1:GIỚI THIỆU CÁC NGUYÊN TẮC SÁNG TẠO TRONG
KHOA HỌC:
1. Nguyên tắc phân nhỏ:
a) Chia đối tượng thành các phần độc lập.
b) Làm đối tượng trở nên tháo lắp được.
c) Tăng mức độ phân nhỏ đối tượng.
2. Nguyên tắc “tách khỏi”:
a) Tách phần gây “phiền phức” (tính chất “phiền phức”) hay ngược lại tách
phần duy nhất “cần thiết” (tính chất “cần thiết”) ra khỏi đối tượng.
3. Nguyên tắc phẩm chất cục bộ:
a) Chuyển đối tượng (hay môi trường bên ngoài, tác động bên ngoài) có cấu
trúc đồng nhất thành không đồng nhất.
b) Các phần khác nhau của đối tượng phải có các chức năng khác nhau.
c) Mỗi phần của đối tượng phải ở trong những điều kiện thích hợp nhất đối
với công việc.
4. Nguyên tắc phản đối xứng:
Chuyển đối tượng có hình dạng đối xứng thành không đối xứng (nói chung
giảm bậc đối xứng).
5. Nguyên tắc kết hợp:
a) Kết hợp các đối tượng đồng nhất hoặc các đối tượng dùng cho các hoạt
động kế cận.
b) Kết hợp về mặt thời gian các hoạt động đồng nhất hoặc kế cận.
6. Nguyên tắc vạn năng:
Đối tượng thực hiện một số chức năng khác nhau, do đó không cần sự tham
gia của các đối tượng khác.
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 6
7. Nguyên tắc “chứa trong”:
a) Một đối tượng được đặt bên trong đối tượng khác và bản thân nó lại chứa
đối tượng thứ ba ...
b) Một đối tượng chuyển động xuyên suốt bên trong đối tượng khác.
8. Nguyên tắc phản trọng lượng:
a) Bù trừ trọng lượng của đối tượng bằng cách gắn nó với các đối tượng
khác có lực nâng.
b) Bù trừ trọng lượng của đối tượng bằng tương tác với môi trường như sử
dụng các lực thủy động, khí động...
9. Nguyên tắc gây ứng suất sơ bộ:
Gây ứng suất trước với đối tượng để chống lại ứng suất không cho phép
hoặc không mong muốn khi đối tượng làm việc (hoặc gây ứng suất
trước để khi làm việc sẽ dùng ứng suất ngược lại ).
10. Nguyên tắc thực hiện sơ bộ:
a) Thực hiện trước sự thay đổi cần có, hoàn toàn hoặc từng phần, đối với
đối tượng.
b) Cần sắp xếp đối tượng trước, sao cho chúng có thể hoạt động từ vị trí
thuận lợi nhất, không mất thời gian dịch chuyển.
11. Nguyên tắc dư ̣phòng:
Bù đắp độ tin cậy không lớn của đối tượng bằng cách chuẩn bị trước các
phương tiêṇ báo đôṇg, ứng cứu, an toàn.
12. Nguyên tắc đẳng thế:
Thay đổi điều kiêṇ làm viêc̣ để kh ông phải nâng lên hay ha ̣xuống các đối
tươṇg.
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 7
13. Nguyên tắc đảo ngươc̣:
a) Thay vì hành đôṇg như yêu cầu bài toán , hành động ngược lại (ví dụ ,
không làm nóng mà làm laṇh đối tươṇg)
b) Làm phần chuyển động của đối tượng (hay môi trường bên ngoài ) thành
đứng yên và ngươc̣ laị, phần đứng yên thành chuyển đôṇg .
14. Nguyên tắc cầu (tròn) hoá:
a) Chuyển những phần thẳng của đối tươṇg thành cong , măṭ phẳng thành
măṭ cầu, kết cấu hình hôp̣ thành kết cấu hình cầu.
b) Sử duṇg các con lăn, viên bi, vòng xoắn.
c) Chuyển sang chuyển động quay, sử dụng lưc̣ ly tâm.
15. Nguyên tắc linh đôṇg:
a) Cần thay đổi các đăṭ trưng của đối tươṇg hay môi trường bên ngoài sao
cho chúng tối ưu trong từng giai đoaṇ làm viêc̣.
b) Phân chia đối tươṇg thành từng phần, có khả năng dịch chuyển với nhau .
16. Nguyên tắc giải “thiếu” hoăc̣ “thừa”:
Nếu như khó nhâṇ đươc̣ 100% hiêụ quả cần thiết , nên nhâṇ ít hơn hoăc̣
nhiều hơn “môṭ chút”. Lúc đó bài toán có thể trở nên đơn giản hơn và dê ̃
giải hơn.
17. Nguyên tắc chuyển sang chiều khác:
a) Những khó khăn do chuyển đôṇg (hay sắp xếp ) đối tươṇg theo đường
(môṭ chiều ) sẽ được khắc phục nếu cho đối tượng khả năng di chuy ển
trên măṭ phẳng (hai chiều ). Tương tư ̣ , những bài toán liên quan đến
chuyển đôṇg (hay sắp xếp ) các đối tượng trên mặt phẳng sẽ được đơn
giản hoá khi chuyển sang không gian (ba chiều).
b) Chuyển các đối tươṇg có kết cấu môṭ tầng thành nhiều tầng.
c) Đặt đối tượng nằm nghiêng.
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 8
d) Sử duṇg măṭ sau của diêṇ tích cho trước.
e) Sử duṇg các luồng ánh sáng tới diêṇ tích bên caṇh hoăc̣ tới măṭ sau của
diêṇ tích cho trước.
18. Nguyên tắc sử duṇg các dao động cơ học:
a) Làm đối tượng dao động . Nếu đa ̃có dao đôṇg , tăng tầng số dao đôṇg (
đến tầng số siêu âm).
b) Sử duṇg tầng số côṇg hưởng.
c) Thay vì dùng các bô ̣rung cơ hoc̣ , dùng các bộ rung áp điện.
d) Sử duṇg siêu âm kết hơp̣ với trường điêṇ từ.
19. Nguyên tắc tác đôṇg theo chu kỳ:
a) Chuyển tác đôṇg liên tuc̣ thành tác đôṇg theo chu kỳ (xung).
b) Nếu đa ̃có tác đôṇg theo chu kỳ, hãy thay đổi chu kỳ .
c) Sử duṇg các khoảng thời gian giữa các xung để thực hiện tác động khác.
20. Nguyên tắc liên tuc̣ tác đôṇg có ích:
a) Thưc̣ hiêṇ công viêc̣ môṭ cách liên tuc̣ (tất cả các phần của đối tươṇg cần
luôn luôn làm viêc̣ ở chế đô ̣đủ tải).
b) Khắc phuc̣ vâṇ hành không tải và trung gian.
c) Chuyển chuyển đôṇg tiṇh tiến qua laị thành chuyển đôṇg qua .
21. Nguyên tắc “vượt nhanh”:
a. Vượt qua các giai đoạn có hại hoặc nguy hiểm với vận tốc lớn.
b. Vượt nhanh để có được hiệu ứng cần thiết.
22. Nguyên tắc biến hại thành lợi:
a. Sử dụng những tác nhân có hại (thí dụ tác động có hại của môi trường) để
thu được hiệu ứng có lợi.
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 9
b. Khắc phục tác nhân có hại bằng cách kết hợp nó với tác nhân có hại
khác.
c. Tăng cường tác nhân có hại đến mức nó không còn có hại nữa.
23. Nguyên tắc quan hệ phản hồi:
a. Thiết lập quan hệ phản hồi
b. Nếu đã có quan hệ phản hồi, hãy thay đổi nó.
24. Nguyên tắc sử dụng trung gian:
Sử dụng đối tượng trung gian, chuyển tiếp.
25. Nguyên tắc tự phục vụ:
a. đối tượng phải tự phục vụ bằng cách thực hiện các thao tác phụ trợ, sửa
chữa.
b. Sử dụng phế liệu, chát thải, năng lượng dư.
26. Nguyên tắc sao chép (copy):
a. Thay vì sử dụng những cái không được phép, phức tạp, đắt tiền, không
tiện lợi hoặc dễ vỡ, sử dụng bản sao.
b. Thay thế đối tượng hoặc hệ các đối tượng bằng bản sao quang học (ảnh,
hình vẽ) với các tỷ lệ cần thiết.
c. Nếu không thể sử dụng bản sao quang học ở vùng biểu kiến (vùng ánh
sáng nhìn thấy được bằng mắt thường), chuyển sang sử dụng các bản
sao hồng ngoại hoặc tử ngoại.
27. Nguyên tắc “rẻ” thay cho “đắt”:
Thay thế đối tượng đắt tiền bằng bộ các đối tượng rẻ có chất lượng kém hơn
(thí dụ như về tuổi thọ).
28. Thay thế sơ đồ cơ học:
a. Thay thế sơ đồ cơ học bằng điện, quang, nhiệt, âm hoặc mùi vị.
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 10
b. Sử dụng điện trường, từ trường và điện từ trường trong tương tác với đối
tượng
c. Chuyển các trường đứng yên sang chuyển động, các trường cố định sang
thay đổi theo thời gian, các trường đồng nhất sang có cấu trúc nhất định
.
d. Sử dụng các trường kết hợp với các hạt sắt từ.
29. Sử dụng các kết cấu khí và lỏng:
Thay cho các phần của đối tượng ở thể rắn, sử dụng các chất khí và lỏng:
nạp khí, nạp chất lỏng, đệm không khí, thủy tĩnh, thủy phản lực.
30. Sử dụng vỏ dẻo và màng mỏng:
a. Sử dụng các vỏ dẻo và màng mỏng thay cho các kết cấu khối.
b. Cách ly đối tượng với môi trường bên ngoài bằng các vỏ dẻo và màng
mỏng.
31. Sử dụng các vật liệu nhiều lỗ:
a. Làm đối tượng có nhiều lỗ hoặc sử dụng thêm những chi tiết có nhiều lỗ
(miếng đệm, tấm phủ…)
b. Nếu đối tượng đã có nhiều lỗ, sơ bộ tẩm nó bằng chất nào đó.
32. Nguyên tắc thay đổi màu sắc:
a. Thay đổi màu sắc của đối tượng hay môi trường bên ngoài
b. Thay đổi độ trong suốt của của đối tượng hay môi trường bên ngoài.
c. Để có thể quan sát được những đối tượng hoặc những quá trình, sử dụng
các chất phụ gia màu, hùynh quang.
d. Nếu các chất phụ gia đó đã được sử dụng, dùng các nguyên tử đánh dấu.
e. Sử dụng các hình vẽ, ký hiệu thích hợp.
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 11
33. Nguyên tắc đồng nhất:
Những đối tượng, tương tác với đối tượng cho trước, phải được làm từ cùng
một vật liệu (hoặc từ vật liệu gần về các tính chất) với vật liệu chế tạo
đối tượng cho trước.
34. Nguyên tắc phân hủy hoặc tái sinh các phần:
a. Phần đối tượng đã hoàn thành nhiệm vụ hoặc trở nên không cần thiết phải
tự phân hủy (hoà tan, bay hơi..) hoặc phải biến dạng.
b. Các phần mất mát của đối tượng phải được phục hồi trực tiếp trong quá
trình làm việc.
35. Thay đổi các thông số hoá lý của đối tượng:
a. Thay đổi trạng thái đối tượng.
b. Thay đổi nồng độ hay độ đậm đặc.
c. Thay đổi độ dẻo
d. Thay đổi nhiệt độ, thể tích.
36. Sử dụng chuyển pha:
Sử dụng các hiện tượng nảy sinh trong quá trình chuyển pha như: thay đổi
thể tích, toả hay hấp thu nhiệt lượng...
37. Sử dụng sự nở nhiệt:
a. Sử dụng sự nở (hay co) nhiệt của các vật liệu.
b. Nếu đã dùng sự nở nhiệt, sử dụng với vật liệu có các hệ số nở nhiệt khác
nhau.
38. Sử dụng các chất oxy hoá mạnh:
a. Thay không khí thường bằng không khí giàu oxy.
b. Thay không khí giàu oxy bằng chính oxy.
c. Dùng các bức xạ ion hoá tác động lên không khí hoặc oxy.
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 12
d. Thay oxy giàu ozon (hoặc oxy bị ion hoá) bằng chính ozon.
39. Thay đổi độ trơ:
a. Thay môi trường thông thường bằng môi trường trung hoà.
b. Đưa thêm vào đối tượng các phần , các chất , phụ gia trung hoà.
c. Thực hiện quá trình trong chân không.
40. Sử dụng các vật liệu hợp thành (composite):
Chuyển từ các vật liệu đồng nhất sang sử dụng những vật liệu hợp thành
(composite). Hay nói chung sử dụng các vật liệu mới.
PHẦN 2:ỨNG DỤNG CÁC NGUYÊN TẮC SÁNG TẠO KHOA HỌC
VÀO NGÔN NGỮ LẬP TRÌNH JAVA.
I. LỊCH SỬ PHÁT TRIỂN JAVA
Java là một ngôn ngữ lập trình do công ty Sun Microsystems phát triển vào đầu
thập kỷ 1990. Java được khởi đầu bởi James Gosling và bạn đồng nghiệp là
Patrick Naughton, Christ Warth, Ed, và Mike Sheridan vào năm 1991 tại Sun
Microsystems, Inc. Ngôn ngữ này đầu tiên đượ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) nhưng
sau đổi tên thành Java vào năm 1995. Trong khoảng thời gian từ 1992 đến bản
Java phát hành miễn phí đầu tiên năm 1995, rất nhiều người đã đóng góp ý
kiến và phát triển ngôn ngữ này. Hiện này thì công ty Sun Microsystems đang
giữ bản quyền và phát triển Java thường xuyên.
Khi thực hiện một dự án nghiên cứu của Sun các nhà khoa học phát hiện rằng
ngôn ngữ C++ không phù hợp và không đủ khả năng để đáp ứng nhu cầu của
mình.Điểm nổi bật của ngôn ngữ Java so với các ngôn ngữ khác là "Write
Once,Run AnyWhere" . Một chương trình viết bằng ngôn ngữ lập trình Java
sẽ được biên dịch ra mã của máy ảo java (mã java bytecode)
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 Oracle quản lý). 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)…
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 13
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 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.
II. CÁC API HỖ TRỢ TRONG JAVA
1. Chuỗi(String),StringBuffer và biểu thức chính qui(Regular Expression)
Là dãy ký tự được đặt giữa dấu nháy kép.
Là kiểu được sử dụng nhiều nhất trong lập trình
Các vấn đề chính trong xử lý chuỗi
Tạo chuỗi
Ký tự đặc biệt
Phương thức xử lý chuỗi
Chuyển kiểu
Ứng dụng nguyên tắc nguyên cứu khoa học trong xử lý chuỗi:
Nguyên tắc linh động:
o Dùng trong việc so sánh,kiểm tra chuỗi.
o Tìm vị trí chuỗi con,nối chuỗi,cắt chuỗi.
o Dùng biểu thức chính qui để kiểm tra,so khớp chuỗi trong việc
kiểm tra việc nhập email,số điện thoại,địa chỉ trang web…
Ví dụ:
Dạng thức email đơn giản:
String regex = “\\w+@\\w+\\.\\w+”;
Số CMND
String regex = “\\d{10}”;
Số điện thoại di động:
String regex = “0\\d{10,11}”;
Số xe máy sài gòn
String regex = “5\\d-[A-Z]\\d-\\d{3}.{2}” ;
Địa chỉ trang web:
String regex = “” ;
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 14
Nguyên tắc vạn năng: Đối tượng thực hiện một số chức năng khác nhau,
do đó không cần sự tham gia của các đối tượng khác.
o Trong việc kiểm tra biểu thức chính qui(Regular Expression)
không cần phải viết mã javascript như để kiểm tra chuỗi nhập.
Nguyên tắc tách khỏi.Dùng để tách chuỗi từ 1 chuỗi.
Ví dụ:hàm String substring(int beginIndex,int endIndex).Dùng lấy ra 1
chuỗi từ chuỗi hiện hành.
2. Kiểu dữ liệu ngày tháng(Date),Các hàm toán học(Math)và mảng(Array).
Date lấy và xử lý thông tin thời gian (năm, tháng, ngày, giờ, phút, giây…).Hàm
SimpleDateFormat giúp chuyển đổi giữa Date và String
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 15
Các hàm toán học được cấp bởi lớp Math. Tất cả các phương thức của Math
được định nghĩa static.Hàm hiện ích giúp cho việc xử lý lũy thừa,căn bậc 2,làm
tròn,lượng giác…
Array là mảng tĩnh. Việc truy xuất đến các phần tử của mảng dựa vào chỉ số
mảng…
Ứng dụng nguyên tắc nguyên cứu khoa học trong xử lý Date,Math,Array
Nguyên tắc linh động: Phân chia đối tươṇg thành từng phần, có khả
năng thực hiện trong nhiều trường hợp khác nhau:
Ví dụ:
d.setDate(35); // thay đổi ngày
d.setMonth(17); // thay đổi tháng
int year = d.getYear() + 1900; // lấy năm
int day = d.getDay(); // lấy thứ
long time = d.getTime(); // lấy thời gian từ 1/1/1970
if(d.after(d2)){
System.out.printf(“%s sau %s”, d, d2);
}
Nguyên tắc chứa trong:Lớp Math chứa hàm double sqrt(double d) để
tính căn bậc 2 của d.
Nguyên tắc hợp thành: Chuyển từ các vật liệu đồng nhất sang sử dụng
những vật liệu hợp thành
Ví dụ:Mảng chứa 10 phần tử kiểu integer hợp thành mảng các số nguyên
có số phần tử là 10,có chiều dài và chỉ số phần tử.
3. Kiểu mảng động(Collection)
Tập hợp (Collection) là cấu trúc dữ liệu được sử dụng để nắm giữ các phần
tử,có thể xem Collection như là một mảng động.
Có thể thêm, xóa, cập nhật các phần tử. Các phép toán tập hợp như hợp, giao,
trừ…cũng được hỗ trợ.
Tập hợp được chia làm 2 loại:List(ArrayList,Vector,Stack,Queue…) và
Set(HashSet,TreeSet…)
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 16
Ứng dụng nguyên tắc nguyên cứu khoa học trong xử lý tập hợp(Collection).
Nguyên tắc chứa trong: Một đối tượng được đặt bên trong đối tượng
khác và bản thân nó lại chứa đối tượng thứ ba.
Ví dụ:Trong Collection gồm 2 loại List và Set.Tuy nhiên
Trong List còn chứa ArrayList,Vector,Stack,Queue…
Trong Set Còn chứa HashSet,TreeSet…
Nguyên tắc đồng nhất: Những đối tượng, tương tác với đối tượng cho
trước, phải được làm từ cùng một vật liệu (hoặc từ vật liệu gần về các
tính chất) với vật liệu chế tạo đối tượng cho trước.
Ví dụ:Khi khai báo 1 tập hợp
Khi khai báo 1 đối tượng a là 1 List bằng cách gọi hàm dựng
của Vector như sau:List a = new Vector().khai báo trên là
hợp lệ vì thuộc cùng kiểu List.
Khi khai báo 1 đối tượng a là 1 List bằng cách gọi hàm dựng
của Vector như sau: List a = new HashSet();.khai báo trên là
hợp lệ vì kiểu List thuộc List và HasSet thuộc Set.
Nguyên tắc chuyển sang chiều khác: Những khó khăn do chuyển đôṇg
(hay sắp xếp) đối tươṇg theo đường (môṭ chiều) sẽ được khắc phục nếu
cho đối tươṇg khả năng di chuyển trên măṭ phẳng (hai chiều). Tương tư,̣
những bài toán liên quan đến chuyển đôṇg (hay sắp xếp) các đối tượng
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 17
trên măṭ phẳng se ̃đươc̣ đơn giản hoá khi chuyển sang không gian (ba
chiều)
Ví dụ:Set là tập hợp không cho phép trùng lặp phần tử(mỗi phần tử chỉ xuất
hiện duy nhất một lần).Do vậy muốn sử dụng tập hợp có các phần tử
xuất hiện nhiều lần ta sử dụng List.
4. IO & Exception.
IO:Dùng với nhiều mục đích khác nhau
Đọc/ghi file nhị phân.
Đọc/ghi mảng nhị phân.
Download tài nguyên trên mạng.
Quản lý hệ thống file và thư mục.
IO :phân cấp thành 2 luồng vào(input) và luồng ra(output)
Phân cấp luồng vào như sau :
Phân cấp luồng ra như sau :
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 18
Ứng dụng nguyên tắc nguyên cứu khoa học trong xử lý IO.
Nguyên lý chứa trong: Một đối tượng được đặt bên trong đối tượng khác
và bản thân nó lại chứa đối tượng thứ ba.
Ví dụ:DataOutputStream kế thừa từ FilterOutputStream,mà
FilterOutputStream lại được kế thừa từ OutputStream
Nguyên tắc linh động: thay đổi các đặt trưng của đối tượng hay môi
trường bên ngoài sao cho chúng tối ưu trong từng giai đoaṇ làm viêc̣ .
Ví dụ:
Khi cần đọc/ghi định kiểu,sử dụng:DataInputStream
(InputStream) và DataOutputStream(OutputStream).
Khi cần đọc/ghi đối tượng,sử dụng:ObjectInputStream
(InputStream) và ObjectOutputStream(OutputStream).
Khi cần đọc/ghi có đệm,sử dụng:BufferedInputStream
(InputStream) và BufferedOutputStream(OutputStream)
Nguyên tắc tự phục vụ: đối tượng phải tự phục vụ bằng cách thực hiện
các thao tác phụ trợ, sửa chữa.Sử dụng phế liệu, chát thải, năng lượng
dư.
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 19
Ví dụ:Trong chương trình Java, lập trình viên không còn phải quan tâm quá
nhiều đến việc giải phóng bộ nhớ, chương trình Garbage Collector của
Java sẽ thực hiện việc này một cách tự động. Cứ sau một khoảng thời
gian nhất định, Garbage Collector sẽ xem xét những vùng nhớ không
còn dùng đến để giải phóng.
5. Lập trình hướng đối tượng OOP(object-oriented programming).
Trong những năm gần đây, lập trình hướng đối tượng đã trở nên gần gũi nhờ sự
ra đời liên tiếp của các ngôn ngữ lập trình hướng đối tượng. Sức mạnh của
phương pháp lập trình hướng đối tượng thể hiện ở chỗ khả năng mô hình hoá
hệ thống dựa trên các đối tượng thực tế, khả năng đóng gói và bảo vệ an toàn
dữ liệu, khả năng sử dụng lại mã nguồn để tiết kiệm chi phí và tài nguyên; đặc
biệt là khả năng chia sẽ mã nguồn trong cộng đồng lập trình viên chuyên
nghiệp. Những điểm mạnh này hứa hẹn sẽ thúc đẩy phát triển một môi trường
lập trình tiên tiến cùng với nền công nghiệp lắp ráp phần mềm với các thư viện
thành phần có sẵn.
Không còn nguy cơ dữ liệu bị thay đổi tự do trong chương trình. Vì dữ liệu đã
được đóng gói vào các đối tượng. Nếu muốn truy nhập vào dữ liệu phải thông
qua các phương thức cho phép của đối tượng.
Khi thay đổi cấu trúc dữ liệu của một đối tượng, không cần thay đổi các đổi
mã nguồn của các đối tượng khác, mà chỉ cần thay đổi một số hàm thành phần
của đối tượng bị thay đổi. Điều này hạn chế sự ảnh hưởng xấu của việc thay
đổi dữ liệu đến các đối tượng khác trong chương trình.
Có thể sử dụng lại mã nguồn, tiết kiệm tài nguyên. Vì nguyên tắc kế thừa cho
phép các lớp kế thừa sử dụng các phương thức được kế thừa từ lớp khác như
những phương thức của chính nó, mà không cần thiết phải định nghĩa lại.
Phù hợp với các dự án phần mềm lớn, phức tạp.
Các thành phần đặc trưng cơ bản lập trình hướng đối tượng.
Lớp(Class): được sử dụng để mô tả các thực thể.
Đối tượng(Object): là một sự thể hiện của thực thể.Dùng toán tử new kết
hợp với phương thức khởi dựng để tạo đối tượng.
Ví dụ:NhanVien nv=new NhanVien(“Hoang”,27).
Sử dụng các bổ đề truy xuất(private,public,protected) .
Sử dụng các đặc trưng kế thừa,viết đè,trừu tượng,giao tiếp thông qua các
từ khóa:inheritance,overriding,abstract class,interface.
Ngoài ra còn có các từ khóa final(dùng để định nghĩa hằng),static(dùng
để định nghĩa biến và phương thức tĩnh)…
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 20
Ứng dụng nguyên tắc nguyên cứu khoa học trong OOP.
Nguyên tắc linh động: thay đổi các đăṭ trưng của đối tươṇg hay môi
trường bên ngoài sao cho chúng tối ưu trong từng giai đoạn làm việc
Ví dụ: Không còn nguy cơ dữ liệu bị thay đổi tự do trong chương
trình.Thông qua các từ khóa private,protected,public người viết mã có
thể cho người khác kế thừa hay sử dụng biến hay hàm mình khai báo
hay không.
Nguyên tắc sao chép:
o Thay vì sử dụng những cái không được pháp,phức tạp,đắc
tiền,không tiện lợi hoặc dễ vỡ,sử dụng bản sao
o Thay thế đối tượng hoặc hệ các đối tượng bằng bản sao quang
học (ảnh, hình vẽ) với các tỷ lệ cần thiết.
o Nếu không thể sử dụng bản sao quang học ở vùng biểu kiến
(vùng ánh sáng nhìn thấy được bằng mắt thường), chuyển sang sử
dụng các bản sao hồng ngoại hoặc tử ngoại.
Ví dụ:Trong lập trình truyền thống không có khái niệm trùng hàm hay viết
đè.Nhưng trong lập trình hướng đối tượng thì có khái niệm viết đè.
Overriding là kỹ thuật cho phép chúng ta viết lại phương thức đã viết trong
lớp cha để thay đổi nội dung xử lý của phương thức phù hợp với thực tại
của chương trình.
Nguyên tắc đồng nhất: Những đối tượng, tương tác với đối tượng cho
trước, phải được làm từ cùng một vật liệu (hoặc từ vật liệu gần về các
tính chất) với vật liệu chế tạo đối tượng cho trước
Ví dụ: Phương thức đè (của lớp con) và phương thức bị đè (của lớp cha)
phải cùng cú pháp ở phần , và.
Nguyên tắc thực hiện sơ bộ:
Ứng dụng các nguyên tắc nguyên cứu khoa học trong
Java
Nguyễn Thanh Hoàng-1211023 Page 21
o Thực hiện trước sự thay đổi cần có, hoàn toàn hoặc từng phần,
đối với đối tượng.
o Cần sắp xếp đối tượng trước, sao cho chúng có thể hoạt động từ
vị trí thuận lợi nhất, không mất thời gian dịch chuyển.
Ví dụ:
Interface được xem như mẫu thiết kế mà lớp thi hành theo nó
phải tuân thủ.
Có 2 mục đích chính
- Thiết kế chức năng (phương thức) để các lớp theo đó mà cài
đặt mã nguồn. Ví dụ như Collection, List, Set, Runnable…
- Đánh dấu để phân loại lớp. Ví dụ như Serializable, Remote
III. KẾT LUẬN.
Java là ngôn ngữ có tính khả chuyển cao có thể chạy trên mọi môi trường
(Window,Linux…) nhờ máy ảo trung gian.
Hiện tại Java là mã nguồn mở(các tool là miễn phí),người dùng không tốn phí
để trả cho việc sử dụng chúng.
Các API hỗ trợ khá nhiều giúp cho người lập trình giảm chi phí,giảm thời
gian,đỡ viết code nhiều hơn.
Java dùng để viết Web 1 cách dễ dàng thông qua mô hình MVC(Model-
Control-View) sử dụng struts 2x framwork .
Java ngày càng khẳng định chỗ đứng vững vảng so với 1 số ngôn ngữ lập
trình.Bằng chứng là java có hỗ trợ các thẻ thông dụng(thẻ lựa chọn , thẻ
lặp ,thẻ form…)giúp công việc của người lập trình giảm thiểu rõ rệt.
Hướng phát triển tới của Java có thể là mobile.
Các file đính kèm theo tài liệu này:
- 1211023_nguyen_thanh_hoang__5388.pdf