Tiểu luận môn học Phương pháp nghiên cứu khoa học - Đề tài: "Phân tích sự vận dụng các phương pháp, nguyên tắc sáng tạo trong JavasServer Faces framework" - Đại học Quốc gia TP.HCM-Trường Đại học Khoa học Tự nhiên - Năm 2012 - Phan Hùng Tâm

pdf 30 trang phuongnguyen 14421
Bạn đang xem 20 trang mẫu của tài liệu "Tiểu luận môn học Phương pháp nghiên cứu khoa học - Đề tài: "Phân tích sự vận dụng các phương pháp, nguyên tắc sáng tạo trong JavasServer Faces framework" - Đại học Quốc gia TP.HCM-Trường Đại học Khoa học Tự nhiên - Năm 2012 - Phan Hùng Tâm", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdftieu_luan_mon_hoc_phuong_phap_nghien_cuu_khoa_hoc_de_tai_pha.pdf

Nội dung text: Tiểu luận môn học Phương pháp nghiên cứu khoa học - Đề tài: "Phân tích sự vận dụng các phương pháp, nguyên tắc sáng tạo trong JavasServer Faces framework" - Đại học Quốc gia TP.HCM-Trường Đại học Khoa học Tự nhiên - Năm 2012 - Phan Hùng Tâm

  1. BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN o0o TIỂU LUẬN Môn học: PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC Đề tài: PHÂN TÍCH SỰ VẬN DỤNG CÁC PHƯƠNG PHÁP, NGUYÊN TẮC SÁNG TẠO TRONG JAVASERVER FACES FRAMEWORK GIẢNG VIÊN HƯỚNG DẪN: GS. TSKH. HOÀNG KIẾM HỌC VIÊN THỰC HIỆN: PHAN HÙNG TÂM MSHV: 1112029 TP. HỒ CHÍ MINH – 2012
  2. MỤC LỤC LỜI NÓ I ĐẦU 1 I. NỘI DUNG 2 1.1. CÁC NGUYÊN TẮC SÁNG TẠO CƠ BẢN [1], [2] 2 1.1.1. Nguyên tắc phân nhỏ 2 1.1.2. Nguyên tắc tách khỏi đối tượng 2 1.1.3. Nguyên tắc phẩm chất cục bộ 3 1.1.4. Nguyên tắc phản đối xứng 3 1.1.5. Nguyên tắc kết hợp 3 1.1.6. Nguyên tắc vạn n ăng 4 1.1.7. Nguyên tắc “chứa trong” 4 1.1.8. Nguyên tắc phản trọn g lượng 5 1.1.9. Nguyên tắc gây ứng suất sơ bộ 5 1.1.10. Nguyên tắc thực hiện sơ bộ 5 1.1.11. Nguyên tắc dự phòng 6 1.1.12. Nguyên tắc đẳng thế 6 1.1.13. Nguyên tắc đảo n gược 7 1.1.14. Nguyên tắc cầu (tròn) hoá 7 1.1.15. Nguyên tắc linh động 8 1.1.16. Nguyên tắc giải “thiếu” hoặc “thừa” 8 1.1.17. Nguyên tắc chuyển sang chiều khác 9 1.1.18. Sử dụng các dao động cơ học 9 1.1.19. Nguyên tắc tác động theo chu kỳ 10 1.1.20. Nguyên tắc liên tục tác động có ích 10 1.1.21. Nguyên tắc “vượt nhanh” 11 1.1.22. Nguyên tắc biến hại thành lợi 11 1.1.23. Nguyên tắc quan hệ phản hồi 12 1.1.24. Nguyên tắc sử dụng trung gian 12 1.1.25. Nguyên tắc tự phục vụ 13 1.1.26. Nguyên tắc sao chép (copy) 13 1.1.27. Nguyên tắc “rẻ” thay cho “đắt” 14 1.1.28. Thay thế sơ đồ cơ học 14 1.1.29. Sử dụng các kết cấu khí và lỏng 15 1.1.30. Sử dụng vỏ dẻo và màng mỏng 15 1.1.31. Sử dụng các vật liệu nhiều lỗ 16 1.1.32. Nguyên tắc thay đổi màu sắc 16 1.1.33. Nguyên tắc đồng nhất 17 1.1.34. Nguyên tắc phân hủy hoặc tái sinh các phần 17 1.1.35. Thay đổi các thông số hoá lý của đối tượng 17 1.1.36. Sử dụng chuyển pha 18 1.1.37. Sử dụng sự nở nhiệt 18 1.1.38. Sử dụng các chất ôxy hoá mạnh 19 1.1.39. Thay đổi độ trơ 19 1.1.40. Sử dụng các vật liệu hợp thành (composite) 20 2. JavaServer Faces: 20 2.1. Giới thiệu: 20 2.2. Sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces (JSF) 22 2.2.1. Nguyên tắc phân nhỏ 22 2.2.2. Nguyên tắc tách khỏi: 22 2.2.3. Nguyên tắc kết hợp: 23 2.2.4. Nguyên tắc vạn n ăng: 24
  3. 2.2.5. Nguyên tắc sử dụng trung gian: 24 2.2.6. Nguyên tắc phẩm chất cục bộ: 24 2.2.7. Nguyên tắc chứa trong: 25 2.2.8. Nguyên tắc linh động 25 2.2.9. Nguyên tắc sao chép: 26 2.2.10. Nguyên tắc “rẻ” thay cho “đắt” 26 3. KẾT LUẬN 26
  4. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces LỜI NÓI ĐẦU Trong cuộc sống chúng ta luôn luôn phát sinh các vấn đề cần phải giải quyết. Vì vậy chúng ta cần trang bị năng lực sáng tạo, năng lực giải quyết vấn đề để từ đó có thể tạo ra những tri thức mới, cách giải quyết vấn đề mới. Tuy nhiên sáng tạo là một môn khoa học, vì vậy việc nắm vững khoa học sáng tạo sẽ tăng cường hiệu quả sáng tạo, rút ngắn thời gian và tiết kiệm tài lực. Phương pháp luận sáng tạo (Creativity methodology) là bộ môn khoa học có m ục đích khắc phục những nhược điểm của phương pháp thử và sai, ở thời kỳ phát triển ban đầu của khoa học sáng tạo, người ta cố gắng sưu tầm, thu thập kinh nghiệm riêng, các mẹo vặt gọi chung là các thủ thuật sáng tạo nhằm m ục đích giảm số lượng và rút ngắn thời gian lựa chọn các phương án thử. Tiếp cận với phương pháp luận sáng tạo này chúng ta sẽ có những lợi ích sau: o Giải phón g tính ì tâm lý. o Phát các ý tưởng cải tiến sản phẩm (giúp tăng năng suất, tiết kiệm năng lượng, tiết kiệm tiền bạc, tiết kiệm thời gian ) o Phát các ý tưởng giải quy ết v ấn đề (cuộc sống rất phức tạp, các nguyê n tắc sáng chế là công cụ mạnh được sử dụng dùng để gi ải quyết vấn đề). Định hướng sử dụng kiến thức hiệu quả hơn Nội dung bài thu hoạch này trình bày hai mảng nội dung chính như sau: o Trình bày m ột cách sơ lược, khái quát về 40 nguyên tắc sáng tạo cơ bản, đồn g thời nêu một vài ví dụ cho mỗi nguyên tắc. o Đi sâu vào phân tích sự vận dụng, áp dụng của các nguyên tắc này vào JavaServer Face (JSF) framework. Trang 1
  5. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces I. NỘI DUNG 1.1. CÁC NGUYÊN TẮC SÁNG TẠO CƠ BẢN [1], [2] 1.1.1. Nguyên tắc phân nhỏ Nội dung: 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ỏ của đối tượng Một số ví dụ: 1- Dây kim loại 1 sợi to, cứng, khó cuộn tròn nếu phân nhỏ thành dây kim loại nhiều sợi thì khắc phục được nhược điểm của dây một sợi to cứng. 2- Ngũ cốc nghiền thành bột, từ đó làm bún, miến, mì, bánh các loại 3- Xe chở vật siêu trường siêu trọng, thay vì làm bánh xe ô tô cho thật lớn, người ta làm xe có rất nhiều dãy bánh kích thước bình thường. 4- Tàu thuỷ lớn chia hầm tàu thành các ngăn độc lập, nếu lỡ bị thủng thì dễ cô lập ngăn bị thủng, không làm chìm tàu. 1.1.2. Nguyên tắc tách khỏi đối tượng Nội dung: 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. Một số ví dụ: 1- Trước đây, tiếng hát là một phần của ca sỹ. Muốn nghe hát, người ta phải mời ca sỹ đến, trong đó cái thực sự "cần thiết" cho nhiều trường hợp chỉ là tiếng hát. Sau này, tiếng hát được tách ra thành đĩa hát, băng ghi âm. 2- Cà phê hòa tan, bột ngọt, đường. Trang 2
  6. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 3- Áo gối, vỏ chăn bông tách khỏi gối và chăn, nên khi bị bẩn không cần thiết phải giặt nguyên cả chăn hay gối. 1.1.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 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 của công việc. Một số ví dụ: 1- Trên quyển lịch, các ngày nghỉ được in mực đỏ. 2- Để bảo vệ sách tốt, bìa thường được làm dày hơn nhiều so với trang sách. Tiểu luận, báo cáo, được đóng bìa kiếng bên ngoài. 3- Mái nhà thường lợp bằng tôn tráng kẽm nhưng tại những chỗ cần lấy ánh sáng, người ta dùng tôn nhựa trong suốt. 1.1.4. Nguyên tắc phản đối xứng Nội dung: Chuyển đối tượng có hình dạng đối xứng thành không đối xứng (nói chung làm giảm bậc đối xứng) Một số ví dụ: 1- Các xe ô tô du lịch loại nhỏ có cửa mở ở cả hai phía nhưng các xe lớn như xe buýt chỉ mở phía tay phải sát với lề đường. 2- Chân nghiêng của xe máy. 3- Ở xe gắn máy, vỏ xe bánh trước và bánh sau có các vết khía khác nhau, không như xe đạp. 1.1.5. Nguyên tắc kết hợp Nội dung: 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. Trang 3
  7. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces b) Kết hợp về mặt thời gian các hoạt động đồng nhất hoặc kế cận. Một số ví dụ: 1- Súng nhiều nòng. 2- Bàn ủi có bộ phận phun nước. 3- Búa có đầu đóng đinh, đầu nhổ đinh. 1.1.6. Nguyên tắc vạn năng Nội dung: Đố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 đối tượng khác. Một số ví dụ: 1- Thuỷ phi cơ. 2- Loại ổ cắm cho phép sử dụng được với cả hai loại phích cắm dẹt và phích cắm tròn. 3- Bút thử điện đồng thời là tuốc-nơ-vít. 1.1.7. Nguyên tắc “chứa trong” Nội dung: 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. Một số ví dụ: 1- Loại ăngten dùng cho máy thu thanh, thu hình, khi cần có thể kéo dài hoặc thu ngắn lại nhờ những ống kim loại đặt bên trong nhau. 2- Tủ đặt trong tường nhà. 3-Vận chuyển vật liệu trong các đường ống. Trang 4
  8. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 1.1.8. Nguyên tắc phản trọng lượng Nội dung: 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 Một số ví dụ: 1- Nhảy dù, hãm m áy bay bằng dù. 2- M ỏ neo giữ tàu khỏi trôi. 3- Hàng hoá bao bì hình thức đẹp bù trừ cho chất lượng không cao. 1.1.9. Nguyên tắc gây ứng suất sơ bộ Nội dung: 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). Một số ví dụ: 1- Loại đồ chơi phải lên dây cót trước. 2- Trước khi phẫu thuật phải gây tê, gây mê nạn nhân, gây tê cục bộ. 3- Để uốn một số loại cây như tre, trúc, cho đẹp, đều mà không nứt, gãy, người ta nung nóng chỗ cần uốn đến nhiệt độ thích hợp trước khi thực hiện uốn. 1.1.10. Nguyên tắc thực hiện sơ bộ Nội dung: 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. Trang 5
  9. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 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. Một số ví dụ: 1- Các loại giấy tờ in sẵn trước những phần chung cho tất cả mọi người để tiết kiệm thời gian, chỉ cần điền vào chỗ trống. 2-Tem, nhãn bôi keo trước, khi dùng chỉ việc dán. 3- Tem, biên lai đã tạo lỗ trước, ki cần xé ra dễ dàng, nhanh chóng. 4-Thực phẩm làm sẵn, mua về là có thể nấu ngay được. 5- Hầm Thủ Thiêm vượt sông Sài Gòn được làm trước trên cạn gồm bốn đốt hầm, sau đó dìm xuống nước, ghép nối thành đường hầm. 1.1.11. Nguyên tắc dự phòng Nội dung: 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ện báo động, ứng cứu, an toàn. Một số ví dụ: 1-Các phương tiện báo cháy, phòng cháy, chữa cháy. 2- Các phao, xuồng cấp cứu trên các tàu thủy. 3- Các loại cầu chì, van chốt an toàn. 4- Các biện pháp phòng tránh bệnh. 1.1.12. Nguyên tắc đẳng thế Nội dung: Thay đổi điều kiện làm việc để không phải nâng lên hay hạ xuống các đối tượng. Một số ví dụ: 1- Các loại đồ dùng, vật dụng có gắn bánh xe như: túi vali, ghế, tủ, 2- Dùng băng tải thay cho cần cẩu và ôtô. Trang 6
  10. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 3- Đường lên núi làm theo kiểu xoáy trôn ốc để đường dốc thoai thoải, dễ leo. 1.1.13. Nguyên tắc đảo ngược Nội dung: a) Thay vì hành động như yêu cầu bài toán, hãy hành động ngược lại (ví dụ: không làm nóng mà làm lạnh đối tượng). 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 lại, phần đứng yên thành chuyển động. c) Lật ngược đối tượng. Một số ví dụ: 1- M áy tập thể dục trong nhà, có băng chuyền dùng để đi bộ tại chỗ. 2- Đối với cưa máy, cưa đứng y ên còn gỗ chuy ển động. 3- Ấm điện được cung cấp nhiệt từ bên trong thông qua các sục, que đun nước, 1.1.14. Nguyên tắc cầu (tròn) hoá Nội dung: a) Chuyển những phần thẳng của đối tượng thành cong, mặt phẳng thành mặt cầu, kết cấu hình hộp thành kết cấu hình cầu. b) Sử dụng 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. Các ví dụ: 1- Thước dây chuy ển thành thước cuộn. 2- Gương lõm, gương lồi, gương cầu, các loại thấu kính. Trang 7
  11. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 3- Nhà hàng có bàn tròn quay quanh một trục, để khách không phải với tay gắp thức ăn. 4- Các điểm nút giao thông giao nhau dùng vòng xoay. 1.1.15. Nguyên tắc linh động Nội dung: a) Cần thay đổi các đặc 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 đoạn làm việc. b) Phân chia đối tượng thành từng phần, có khả năng dịch chuyển với nhau. Một số ví dụ: 1- Các lại bìa kẹp, cho phép lấy bớt hoặc thêm các tờ giấy rời. 2- Các loại bàn, ghế, giường, xếp hoặc thay đổi được độ cao, độ nghiêng. 3- Líp xe đạp có thể quay ngược mà không ảnh hưởng đến chuyển động của xe, líp xe nhiều tầng, xe có nhiều số tốc độ. 1.1.16. Nguyên tắc giải “thiếu” hoặc “thừa” Nội dung: Nếu như khó nhận được 100% hiệu quả cần thiết, nên nhận ít hơn hoặc nhiều hơn “một chút”. Lúc đó bài toán có thể trở nên đơn giản hơn và dễ giải hơn. Các ví dụ: 1- Thắt lưng, dây đồng hồ đục thừa nhiều lỗ để những người sử dụng khác nhau đều dùng được. 2- Để nâng cấp, trải lại nhựa đường, người ta thường xới mặt đường cũ lên để lớp nhựa mới bám tốt hơn vào mặt đường. 3- Để có được trái cây lớn, người ta phải tỉa cành, bỏ bớt quả non. Trang 8
  12. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 1.1.17. Nguyên tắc chuyển sang chiều khác Nội dung: a) Những khó khăn do chuyển động (hay sắp xếp) đối tượng theo đường (một chiều) sẽ được khắc phục nếu cho đối tượng khả năng di chuyển trên mặt phẳng (hai chiều). Tương tự, những bài toán liên quan đến chuyển động (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ượng có kết cấu một tầng thành nhiều tầng. c) Đ ặt đối tượng nằm nghiêng. d) Sử dụng mặt sau của diện tích cho trước. e) Sử dụng các luồng ánh sáng tới diện tích bên cạnh hoặc tới mặt sau của diện tích cho trước. Một số ví dụ: 1- Chìa khoá có răng ở hai cạnh nên lúc cho chià vào ổ không mất thời gian để lựa chiều. 2- Tranh thêu hai mặt, nhìn được từ cả hai phía. 3- Các đường giao thông nhiều tầng trên mặt đất và dưới mặt đất. 4- Các công trình dưới biển, dưới đáy sông, trong lòng đất. 1.1.18. Sử dụng các dao động cơ học Nội dung: a) Làm đối tượng dao động. Nếu đã có dao động, tăng tầng số dao động (đến tầng số siêu âm). b) Sử dụng tầng số cộng hưởng. c) Thay vì dùng các bộ rung cơ học, dùng các bộ rung áp điện. d) Sử dụng siêu âm kết hợp với trường điện từ. Trang 9
  13. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces Một số ví dụ: 1- Quả chuông, ghế xích đu, võng, cầu bập bênh cho trẻ em chơi. 2- Trong kỹ thuật dùng nhiều bộ rung tạo các dao động cơ học. 3- Các loại đồ dùng massage trong gia đình như gối massage, ghế massage, giường massage 1.1.19. Nguyên tắc tác động theo chu kỳ Nội dung: a) Chuyển tác động liên tục thành tác động theo chu kỳ (xung). b) Nếu đã có tác động theo chu kỳ, hãy thay đổi chu kỳ. c) Sử dụng khoảng thời gian giữa các xung để thực hiện tác động khác. Một số ví dụ: 1- Các loại đèn chớp nháy dùng cho quảng cáo, khiêu vũ, tín hiệu báo động, giao thông 2- Các loại âm thanh báo hiệu như còi xe cấp cứu, cứu hoả, báo hiệu xe lùi, báo đổ chuông, máy bận của điện thoại 3- Các công việc, yêu cầu có tính định kỳ như quảng cáo, lên lịch thực hiện định kỳ, ôn tập định kỳ trong học tập, giữ mối liên lạc với mọi người bằng email, điện thoại, theo định kỳ. 1.1.20. Nguyên tắc liên tục tác động có ích Nội dung: a) Thực hiện công việc một cách liên tục (tất cả các phần của đối tượng cần luôn luôn làm việc ở chế độ đủ tải). b) Khắc phục vận hành không tải và trung gian. c) Chuyển chuyển động tịnh tiến qua lại thành chuyển động quay. Trang 10
  14. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces Một số ví dụ: 1- Ô tô vận tải, chuyến đi, chuyến về phải chở hàng, tránh chạy không. 2-Ắc-quy phát điện lúc xe, tàu không hoạt động để thắp sáng hay dùng khởi động xe và tích điện bù lại khi động cơ làm việc. 3-Tàu chở dầu kết hợp lọc dầu trên đường vận chuyển. 1.1.21. Nguyên tắc “vượt nhanh” Nội dung: 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. Một số ví dụ: 1- Để tránh đau đớn cho bệnh nhân, những thao tác như tiêm chủng, nhổ răng, nắn khớp xương thường làm rất nhanh. 2- Ghế ngồi phi công bật ra khỏi buồng lái rất nhanh khi máy bay bị sự cố làm rơi, nổ. 3- Có những nghề nghiệp phải làm thật nhanh như cứu hỏa, cấp cứu, ảo thuật, 1.1.22. Nguyên tắc biến hại thành lợi Nội dung: a) Sử dụng những tác nhân có hại để thu được hiệu ứng có lợi. 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. Một số ví dụ: Trang 11
  15. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 1- N gười ta biến sức tàn phá của lũ lụt thành điện năng bằng cách xây dựng các hồ chứa nước và nhà máy thủy điện. 2- Nhiều loại thuốc độc với những liều lượng thích hợp lại có tác dụng điều trị bệnh tốt như thuốc phiện, nọc rắn, nọc ong, 3- Tiêm vi trùng yếu (vacxin) vào cơ thể để tạo miễn dịch. 1.1.23. Nguyên tắc quan hệ phản hồi Nội dung: 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ó. Một số ví dụ: 1- Phao xăng trong bộ chế hoà khí có tác dụng giữ xăng ở một mức nhất định. 2-Kính đeo mắt đổi màu - thay đổi độ trong suốt tùy theo cường độ ánh nắng mặt trời. 3-Tên lửa tự tìm mục tiêu. 4- Xe máy tay ga tự động điều chỉnh cấp số truyền động theo tải và tốc độ. 1.1.24. Nguyên tắc sử dụng trung gian Nội dung: Sử dụng đối tượng trung gian, chuy ển tiếp. Một số ví dụ: 1- Ổ cắm điện chuyển đổi từ dẹt sang tròn và ngược lại. 2- Các loại biến thế điện. 3- Tìm diệt những con vật trung gian truyền bệnh như chuột, muỗi. Trang 12
  16. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 4- Khi trình bày một vấn đề chuyên môn phức tạp, dùng những kiến thức hàng ngày gần gũi để minh họa. 1.1.25. Nguyên tắc tự phục vụ Nội dung: 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ư. Một số ví dụ: 1- Khi nhấc máy điện thoại bàn, lò xo bên trong máy đẩy lên nối công tắc, người gọi điện thoại có thể sử dụng được ngay. Ngược lại khi gác máy, lò xo bị nén xuống - ngắt mạch. 2- Loại vòi tưới rau hoặc tưới hoa, vừa phun nước vừa tự quay vòng tròn nên diện tích được tưới rất rộng và không cần có người. 3- Các cửa hàng tự giác, các nhà ăn tự phục vụ. 4- Hệ thống bơm cấp nước và ngắt tự động. 1.1.26. Nguyên tắc sao chép (copy) Nội dung: 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. Một số ví dụ: 1- Các loại bản đồ, sơ đồ, hình vẽ, ảnh chụp, đồ thị, 2- Các phép tương tự hoá. Trang 13
  17. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 3- Các cách mô hình hoá. 1.1.27. Nguyên tắc “rẻ” thay cho “đắt” Nội dung: 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ọ). Một số ví dụ: 1- Khăn lau tay, lau mặt dùng một lần rồi bỏ. 2- Ly chén dĩa bằng giấy hoặc nhựa rẻ tiền, dùng một lần, đảm bảo vệ sinh. 3- Ống và kim tiêm bằng nhựa dùng một lần rồi bỏ, bảo đảm không lây truyền bệnh. 4- Dùng cừ tràm thay cho đóng cọc bằng bê tông cốt thép. 5- Các thí nghiệm dùng động vật thay cho người. 1.1.28. Thay thế sơ đồ cơ học Nội dung: a) Thay thế sơ đồ cơ học bằng điện, quang, nhiệt, âm hoặc mùi vị. 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ừ. Một số ví dụ: 1- Cần cẩu dùng móc và cần cẩu dùng nam châm điện. 2- Bộ đề khởi động xe gắn máy hay ô tô bằng điện thay cho đạp chân. Trang 14
  18. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 3- Đồng hồ lên giây cót cơ học chuyển sang đồng hồ điện tử. 4- Nút bấm điện thoại di động dùng phím được thay bằng cảm ứng - chạm tay lên màn hình. 1.1.29. Sử dụng các kết cấu khí và lỏng Nội dung: 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. Một số ví dụ: 1- Dây cung, dây nỏ chuyển sang sử dụng bơm nén, súng hơi. 2- Các con thú đồ chơi, thay vì nhồi bông người ta làm loại thú đồ chơi chỉ cần thổi lên. 3- Các loại ghế hơi, giường hơi, nệm hơi 4- Các hệ thống đóng mở dùng khí nén nói chung hay các loại thiết bị dùng khí nén trong kỹ thuật. 1.1.30. Sử dụng vỏ dẻo và màng mỏng Nội dung: 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. Một số ví dụ: 1- Các loại bao bì, túi nylon, áo đi mưa, khăn trải bàn nylon. 2- Ống nhựa dẻo các loại. 3- Lớp nhôm, bạc, phủ làm gương. 4- Các đồ dùng gia đình bằng nhựa. Trang 15
  19. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 1.1.31. Sử dụng các vật liệu nhiều lỗ Nội dung: 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 đó. Một số ví dụ: 1- Các loại bao bì, phương tiện đóng gói làm từ vật liệu xốp. 2- Các tấm mút, đệm mút, 3- Các vách ngăn dùng cách âm, cách nhiệt. 1.1.32. Nguyên tắc thay đổi màu sắc Nội dung: 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 đố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, huỳnh 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. Một số ví dụ: 1- Băng keo trong suốt, dán trang sách bị rách mà vẫn đọc được. 2- Các vật chứa trong suốt có thể nhìn thấy chất đựng bên trong. 3- Các màu sắc ký hiệu qui ước trong giao thông như đèn đỏ thì dừng, đèn xanh thì đi, hình đầu lâu xương chéo - coi chừng nguy hiểm, Trang 16
  20. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 4- Bảng hiệu dùng sơn phát quang dễ nhìn trong bóng tối. 1.1.33. Nguyên tắc đồng nhất Nội dung: 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. Một số ví dụ: 1- Phải chọn cùng nhóm máu mới truyền được. 2- Các loài vật sống trong môi trường có màu sắc như thế nào thì thường có màu lông, da như thế. 3- Khi thay dây xích, người ta thay luôn bánh xích để bảo đảm sự tương hợp. 1.1.34. Nguyên tắc phân hủy hoặc tái sinh các phần Nội dung: 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. Một số ví dụ: 1- Giấy vệ sinh tự hủy, các loại bao bì tự huỷ mà ko làm hại môi trường. 2- Chỉ khâu tự tiêu dùng trong phẫu thuật. 3-Tên lửa nhiều tầng, dùng xong phần nào, vứt bỏ tầng ấy. 1.1.35. Thay đổi các thông số hoá lý của đối tượng Nội dung: Trang 17
  21. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 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. Một số ví dụ: 1- Để giữ thực phẩm tươi lâu, không hỏng, người ta làm đông lạnh chúng. Cũng với mục đích này, người ta phơi khô hoặc ướp muối. 3- Để dễ rèn, người ta nung sắt nóng đỏ. 1.1.36. Sử dụng chuyển pha Nội dung: 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 Một số ví dụ: 1- N gười ta thường cho nước đá vào các đồ uống giải khát để làm mát chúng. Ở đây sử dụng hiện tượng hấp thu nhiệt lượng khi nước chuyển từ trạng thái rắn sang trạng thái lỏng. 2- Từ pha lỏng chuyển sang pha khí (nhờ đốt cháy hay đun nóng), thể tích của đối tượng tăng lên nhiều lần, có thể dùng để thực hiện công cơ học. Đây là nguyên tắc của các động cơ như máy hơi nước, động cơ đốt trong, động cơ phản lực. 3- Trước đây người ta chế tạo lưỡng kim bằng phương pháp đúc, tráng và cán. Sau này người ta chuyển sang phương pháp ghép các vật liệu bằng cách tạo ra các vụ nổ trong khuôn kín để có thể nhận được các vật liệu nhiều lớp, có độ dày mong muốn. 1.1.37. Sử dụng sự nở nhiệt Nội dung: Trang 18
  22. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 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. Một số ví dụ: 1- Các loại nhiệt kế sử dụng hiệu ứng nở nhiệt. 2- Đèn kéo quân chuy ển động được nhờ đốt nóng không khí và có sự đối lưu. 3- Để làm tròn lại quả bóng bàn bị móp có thể cho vào nước sôi. 1.1.38. Sử dụng các chất ôxy hoá mạnh Nội dung a) Thay không khí thường bằng không khí giàu ôxy. b) Thay không khí giàu ôxy bằng chính ôxy. c) Dùng các bức xạ ion hoá tác động lên không khí hoặc ôxy. d) Thay ôxy giàu ôzôn (hoặc ôxy bị ion hoá) bằng chính ôzôn. Một số ví dụ: 1- Các bình nén chứa ôxy dùng cho cắt hàn kim loại, dùng cho y tế. 2- N gười N ga đã thí nghiệm thấy rằng, nếu cho heo uống loại nước ga đặc biệt: hỗn hợp nước và ôxy hoà tan thì chúng tăng trọng một cách đáng kể. 1.1.39. Thay đổi độ trơ Nội dung Trang 19
  23. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 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. Một số ví dụ: 1- Các loại bóng đèn được hút chân không hoặc bơm các khí trơ. 2- Các loại bình có hai thành, giữa hút chân không, dùng đựng nước sôi hay giữ các chất lạnh. 3- Ống hút chân không dạng ống tiêm dùng cho các nhà thám hiểm, hút chất độc nơi vết thương khi bị côn trùng, rắn độc, cắn. 1.1.40. Sử dụng các vật liệu hợp thành (composite) Nội dung: 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. Một số ví dụ: 1- Nhựa có cốt là sợi carbon được dùng làm vỏ các động cơ phản lực, các cánh quạt của máy bay trực thăng vì chúng có độ bền cao. 2- Vật liệu trên còn làm gậy trượt tuyết vì bền và nhẹ hơn so với gậy nhôm, gậy trúc. Sào nhảy cao cũng vậy. 3- Nhựa có cốt là sợi thủy tinh dùng chế tạo thân tàu ngầm 5 chỗ ngồi ở Anh. Đây là tàu ngầm nhẹ nhất, chống ăn mòn cao, cơ động nhanh. 2. JavaServer Faces: 2.1. Giới thiệu: JavaServer Faces là gì? Hiện nay, có hai công nghệ phổ biến để lập trình một ứng dụng web: Trang 20
  24. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 1 - Dạng “rapid development”, phát triển ứng dụng nhanh chóng, cho phép nhà phát triển sử dụng môi trường lập trình trực quan, như Asp.net của Microsoft. 2 - Dạng “hard-core coding”, nhà phát triển cần lập trình với nhiều dòng lệnh hơn để thực hiện những tác vụ bên dưới, như Java EE. (Java Enterprise Edition) Nhà phát triển gặp nhiều khó khăn trong việc lựa chọn. Java EE là một hệ thống khá hấp dẫn, được hỗ trợ rộng rãi, có thể chạy trên nhiều nền khác nhau, có một cộng đồng hỗ trợ phát triển đông đảo. Mặt khác, Asp.net cho phép người lập trình có thể phát triển giao diện người dùng thân thiện mà không cần phải viết nhiều code. Tất nhiên, nhà phát triển muốn cả hai. Và JSF (JavaServer Faces) mang đến cho người lập trình sự dễ dàng hơn trong việc tạo ra giao diện người dùng ở phía server. Cũng như lập trình ứng dụng phía client, có thể xem JSF chính là “Swing dành cho ứng dụng server”. So với lập trình JSP (Java Server Pages), thì JSF giúp người lập trình dễ dàng hơn trong nhiều tác vụ mà nếu phát triển bằng JSP cần phải tự viết, ví dụ như xử lý điều hướng và kiểm tra tính hợp lệ của dữ liệu nhập. Một sự ví von, người lập trình có thể xem servlet và JSP như là “ngôn ngữ assembly” nếu so với framework JSF. JSF gồm những phần sau: 1. Một tập những giao diện người dùng (user interface component) đã được xây dựng sẵn. 2. Mô hình lập trình hướng sự kiện. 3. Mô hình component cho phép các bên phát triển thứ 3 xây dựng bổ sung các component. Có những component JSF rất đơn giản, ví dụ như input field hay button. Nhưng cũng có những component thì phức tạp hơn nhiều, ví dụ như: data tables hay trees. JSF chứa đựng tất cả những đoạn code phục vụ cho việc xử lý sự kiện và tổ chức các component. Lập trình viên không cần phải quan tâm đến những chi tiết đó và có thể tập trung để xử lý các thao tác logic của ứng dụng. Trang 21
  25. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces Và quan trọng nhất, JSF chính là một phần của Java EE. Do đó JSF đã được bao gồm trong các Java EE application server (vd: Tomcat), và do đó dễ dàng để có thể chạy được ứng dụng phát triển bằng JSF. Và hầu hết các môi trường phát triển tích hợp (IDE) ngày nay đều hỗ trợ cho JSF, từ đơn giản cho đến phức tạp, gấp thả các component. Một số IDE hỗ trợ JSF bao gồm: NetBean, JBuilder, Eclipse, JDeveloper 2.2. Sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces (JSF) 2.2.1. Nguyên tắc phân nhỏ  JSF hỗ trợ một tập các thẻ chuẩn với nhiều chức năng khác nhau. Bao gồm các thẻ core và html. Phần lớn các thẻ core đại diện cho những đối tượng và người lập trình thêm vào một component, cụ thể: o Attributes o Listeners o Converters o Validators o Facets o Parameters o Select items  Có nhóm các thẻ JSF HTM L: o Inputs (input ) o Outputs (output ) o Commands (commandButton and commandLink) o Selections (checkbox, listbox,menu,radio) o Layouts (panelGrid) o Data table (dataTable) o Errors and messages (message, messages) 2.2.2. Nguyên tắc tách khỏi:  JSF hỗ trợ kiến trúc M VC giúp cho việc quản lý giữa các tầng trở nên linh hoạt hơn. Tất cả các ứng dụng đều cho phép người sử Trang 22
  26. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces dụng tạo ra những dữ liệu cụ thể, ví dụ như giỏ hàng (shopping carts), đăng ký vé máy bay Những dữ liệu như thế được gọi là model. Và nhà lập trình phải tạo ra view cho dữ liệu model đó. Trong lập trình web, HTML (hay những kỹ thuật tương tự) được dùng để tạo ra view. JSF kết nối view và model với nhau, Faces Servlet đóng vai trò như m ột controller, để cập nhật view cũng như model. 2.2.3. Nguyên tắc kết hợp:  Tuy JSF chia thành các tầng khác nhau trong mô hình M VC, Tuy nhiên controller sẽ giúp cho view và model giao tiếp với nhau.  JSF có khả năng kết hợp với những công nghệ khác như Hibernate hoặc EJB.  JSF cung cấp nhưng dịch vụ kết hợp như o Chuyển đổi dữ liệu - người dùng nhập dữ liệu vào web form dưới dạng text. Nhưng đối tượng xử lý muốn dữ liệu ở dạng số, ngày tháng hay một kiểu dữ liệu nào đó. Với JSF thì sự chuyển đổi dữ liệu rất đơn giản. o Xử lý lỗi và kiểm tra tính hợp lệ - với JSF, ta có thể dễ dàng để thêm những luật kiểm tra tính hợp lệ cho các field ví dụ như “field này không được để trống”, “field này phải là số” Và tất nhiên, khi người dùng nhập sai, JSF cung cấp cho ta cơ chế hiển thị thông báo lỗi rất đơn giản. Trang 23
  27. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces o Quốc tế hóa – JSF hỗ trợ chúng ta phát triển ứng dụng đa ngôn ngữ với resource bundles (tuỳ thuộc vào người dùng ở quốc gia nào thì ứng dụng web của ta sẽ hiện thị đúng ngôn ngữ của vùng đó). o Custom components – nhà phát triển thứ 3 có thể phát triển những component riêng cho ứng dụng JSF. Ví dụ như Calendar component, sau đó muốn sử dụng ta chỉ việc khai báo một lệnh đơn giản: 2.2.4. Nguyên tắc vạn năng:  Java vừa hỗ trợ tầng view, vừa hỗ trợ tầng controller.  Ngoài các bộ thẻ chuẩn về core và html như được giới thiệu ở phần 2.2.1. JSF còn được hỗ trợ từ JBoss (third party vendor) bộ thẻ dành cho ajax. 2.2.5. Nguyên tắc sử dụng trung gian:  Để view và model được giao tiếp với nhau, JSF đóng vai trò trung gian là controller.  JSF thường được sử dụng như 1 framework trung gian cùng với các framework khác hibernate hoặc JPA để hỗ trợ cho tầng model (đối tượng hóa database). 2.2.6. Nguyên tắc phẩm chất cục bộ:  JSF có các thành phần chính như M anaged Bean, bộ Điều Hướng, bộ chuyển kiểu và kiểm tra tính hợp lệ, bộ xử lý sự kiện. M ỗi thành phần có một chức năng riêng. o Managed Beans: Đ ặc điểm của JSF là sự tách biệt giữa presentation và business logic. JSF sử dụng bean cho mục đích này. Các trang JSF sẽ tham chiếu đến các thuộc tính của bean, và xử lý logic cũng được chứa trong các đoạn mã của bean. Trang 24
  28. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces o Bộ điều hướng: Sau khi người dùng điền đầy đủ thông tin vào text field, select list, radio button và bấm vào nút button, gửi các thông tin trong form về cho server. Vào lúc này, ứng dụng của t a cần phải phân tích và quyết định trang JSF nào sẽ được trả về cho người dùng. Bộ điều hướng navigation handler sẽ chịu trách nhiệm cho việc lựa chọn trang JSF kế tiếp. o Chuyển kiểu và kiểm tra tính hợp lệ: JSF sẽ chịu trách nhiệm về việc chuyển đổi và kiểm tra tính hợp lệ trước khi cập nhật dữ liệu, do đó người lập trình không cần quan tâm đến việc kiểu dữ liệu input sai làm ảnh hưởng đến logic bài toán. o Xử Lý Sự Kiện: Ứng dụng web thường phải đáp ứng các sự kiện từ phía người dùng, như khi người dùng bấm vào một nút button hay lựa một tuỳ chọn từ menu. Lấy một ví dụ, ta muốn phản ứng lại khi người dùng lựa chọn một thành phố trong form địa chỉ bằng cách thay đổi quận/huyện và hiển thị lại trang hiện tại sao cho phù hợp với người dùng đó. 2.2.7. Nguyên tắc chứa trong:  JSF được hỗ trợ bởi các Third Party Vendor như JBoss, Oracle  Có khả năng tích hợp với Hibernate, EJB, Spring Framework 2.2.8. Nguyên tắc linh động  JSF được xem như là “thư viện thành phần” nên việc thêm bớt 1 thành phần nào đó rất đơn giản.  JSF được xây dựng trên nền tảng lập trình hướng đối tượng nên có thể thừa kế, nâng cấp các ứng dụng dễ dàng, linh động. Trang 25
  29. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces 2.2.9. Nguyên tắc sao chép:  Khi phát triển những phiên bản mới JSF giữ lại một vài tính năng của phiên bản cũ như bộ điều hướng, managed bean, bộ kiểm tra lỗi và chuy ển kiểu 2.2.10. Nguyên tắc “rẻ” thay cho “đắt”  JSF la một framework open source, vì vậy nó sẽ tiết kiệm hơn so với việc sử dụng .Net 3. KẾT LUẬN Qua các nội dung đã trình bày, người viết bài – với vốn kiến thức hạn hẹp của mình – đã cố gắng tìm tòi, phân tích và chỉ ra được một số trong số những nguyên tắc sáng tạo có thể thấy được trong JSF framework Có thể những phân tích, nhận định của người viết còn mang tính chủ quan, chưa chính xác hoặc còn thiếu sót, nhưng qua đó chúng ta có thể phần nào sức mạnh mà Framework này đem lại. Nó là một công nghệ khá mạnh hiện nay, có thể thay thế và vượt trội hơn Struts Framework về mặt giao diện với những hỗ trợ từ nhà phát triển thế ba như JBoss, Oracle Trong tương lai nó hứa hẹn sẽ thay thế cho Struts và hỗ trợ phát triển những ứng dụng trực quan, thân thiện, đẹp không kém so với các công nghệ của .Net như Sliverlight Trang 26
  30. Phân tích sự vận dụng các nguyên tắc sáng tạo trong JavaServer Faces TÀI LIỆU THAM KHẢO [1] Slides bài giảng môn PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC ,Tác giả : GS.T SKH. Hoàng Kiếm. [2] Sổ tay sáng tạo : Các thủ thuật (nguyên tắc) cơ bản, Ủy ban khoa học và kỹ thuật TpHCM 1992, tác giả : Phan Dũng. [3] Một số thông tin, tư liệu, hình ảnh từ Internet. Trang 27