Vận dụng những kiến thức về phương pháp luận, phương pháp sáng tạo trong việc phát triển mã nguồn mở Joomla CMS

Bản thân là một open source software, joomla đã vận dụng nguyên tắc rẻ thay cho đắt rất tốt. Joomla phát triển như ngày nay là do sự đóng góp của đông đảo cộng đồng yêu mến joomla. Không có một Công Ty nào bỏ tiền thuê mướn lập trình viên hay designer để phát triển joomla cả. Hiện nay số lượng người sử dụng joomla trên thế giới rất nhiều, và cũng rất nhiều dự án website triển khai với joomla rất thành công. Vì vậy việc sử dụng joomla để phát triển website là một giải pháp free nhưng hiệu quả mang lại vô cùng to lớn.

pdf34 trang | Chia sẻ: lylyngoc | Lượt xem: 2634 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Vận dụng những kiến thức về phương pháp luận, phương pháp sáng tạo trong việc phát triển mã nguồn mở Joomla CMS, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN Phương pháp luận sáng tạo trong khoa học: Vận dụng những kiến thức về phương pháp luận, phương pháp sáng tạo trong việc phát triển mã nguồn mở Joomla CMS Người hướng dẫn: GS.TSKH. Hoàng Kiếm Người thực hiện : Nguyễn Xuân Nghề Học Viên Cao học 06 Khoa Học Máy Tính Hồ Chí Minh – 2012 Contents Lời mở đầu: ........................................................................................................... 3 I. Những nguyên tắc (thủ thuật) sáng tạo: .......................................................... 4 1. Nguyên tắc phân nhỏ:............................................................................ 4 2. Nguyên tắc “tách khỏi”: ........................................................................ 4 3. Nguyên tắc phẩm chất cục bộ:............................................................... 4 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”: ...................................................................... 5 8. Nguyên tắc phản trọng lượng: ............................................................... 5 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: ...................................................................... 6 14. Nguyên tắc cầu (tròn) hoá: ................................................................ 6 15. Nguyên tắc linh động: ....................................................................... 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ử dụng các dao động cơ học: ......................................... 7 19. Nguyên tắc tác động theo chu kỳ: ...................................................... 8 20. Nguyên tắc liên tục tác động 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: ........................................................... 8 23. Nguyên tắc quan hệ phản hồi:............................................................ 8 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 27. Nguyên tắc “rẻ” thay cho “đắt”: ........................................................ 9 28. Thay thế sơ đồ cơ học:....................................................................... 9 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: ..................................................................... 10 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: ..................................................... 11 39. Thay đổi độ trơ: ............................................................................... 12 40. Sử dụng các vật liệu hợp thành (composite): ................................... 12 II. Joomla CMS từ khi ra đời đến nay ............................................................... 12 1. Lịch sử phát triển Joomla .................................................................... 12 2. Joomla 1.0 – thế hệ thứ 1 .................................................................... 17 3. Joomla 1.5 – thế hệ thứ 2 .................................................................... 18 4. Joomla 1.6 – thế hệ thứ 3 .................................................................... 22 5. Joomla 1.7 – thế hệ thứ 4 .................................................................... 25 6. Joomla 2.5 – thế hệ thứ 5 .................................................................... 26 III. Những Nguyên tắc sáng tạo – khoa học được áp dụng trong quá trình phát triển Joomla CMS ................................................................................................ 28 1. Nguyên tắc phân nhỏ .......................................................................... 28 2. Nguyên tắc tách riêng.......................................................................... 29 3. Nguyên tắc kết hợp ............................................................................. 29 4. Nguyên tắc vạn năng ........................................................................... 29 5. Nguyên tắc dự phòng .......................................................................... 30 6. Nguyên tắc quan hệ phản hồi .............................................................. 30 7. Nguyên tắc sử dụng trung gian ............................................................ 31 8. Nguyên tắc sao chép ........................................................................... 31 9. Nguyên tắc rẻ thay đắt......................................................................... 32 IV. Kết luận : ................................................................................................. 32 Tài liệu tham khảo : ............................................................................................. 33 Lời mở đầu: Cải tiến công nghệ phục vụ cho cuộc sống là phương châm, động lực phát triển cho xã hội loài người trong thời gian qua.Từ khi con người có ý thức thì sự tìm tòi học hỏi và khả năng tư duy chính là đặc điểm đưa loài người ra khỏi lớp động vật. Đặc điểm nổi bật nhất của sự tìm tòi học hỏi hay khả năng tư duy là sự sáng tạo, tiềm lới giả cho những vần đề được đặt ra. Công nghệ thông tin cũng không nằm ngoài quy luật đó, tuy công nghệ thông tin ra đời sau so với các công nghệ khác nhưng cũng cùng chung quy luật của sự sáng tạo. Bản báo cáo này là kết qủa tìm hiểu về “Vận dụng những kiến thức về phương pháp luận, phương pháp sáng tạo trong việc phát triển mã nguồn mở Joomla CMS”, do Nguyễn Xuân Nghề (CH1101023) thuộc lớp cao học công nghệ thông tin qua mạng khoá VI, Đại học Quốc Gia Thành phố Hồ Chí Minh. Em xin chân thành cảm ơn GSTS. Hoàn Kiếm, giảng viên giảng dạy môn học, đã hướng dẫn Em hoàn thành bản báo cáo này. I. Những nguyên tắc (thủ thuật) sáng tạo: 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ật đố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. 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ện báo động, ứng cứu, an toàn. 12. Nguyên tắc đẳng thế: 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. 13. Nguyên tắc đảo ngược: a) Thay vì hành động 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 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. 14. Nguyên tắc cầu (tròn) hoá: 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 độg quay, sử dung lực ly tâm. 15. Nguyên tắc linh động: a) Cần 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 đ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. 16. Nguyên tắc giải “thiếu” hoặc “thừa”: 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. 17. Nguyên tắc chuyển sang chiều khác: 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. 18. Nguyên tắc sử dụng các dao động cơ học: 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ừ. 19. Nguyên tắc tác động theo chu kỳ: 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 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 tục tác động có ích 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 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. 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ị. 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. 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. 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. II. Joomla CMS từ khi ra đời đến nay 1. Lịch sử phát triển Joomla Joomla! là "sản phẩm anh em" với Mambo giữa tập đoàn Miro của Úc (hãng đang nắm giữ Mambo), với phần đông những người phát triển nòng cốt. Ban đầu công ty Miro của Úc đã phát triển Mambo theo dạng ứng dụng mã nguồn đóng. Đến tháng 4 năm 2001, công ty đã thông qua một chính sách bản quyền kép, nghĩa là phát hành Mambo theo cả giấy phép GPL. Mọi thứ vẫn tiến triển bình thường cho đến trước khi xảy ra tranh chấp về mặt pháp lý vào năm 2003. Vụ việc dẫn tới ý tưởng Mambo cần phải được bảo vệ bởi một tổ chức phi lợi nhuận. Nhưng những nhà phát triển không hài lòng về cơ cấu của Quỹ tài trợ Mambo. Andrew Eddie, người lãnh đạo nhóm phát triển, trong một lá thư gửi cộng đồng[4], đã chia sẻ những lo lắng của mình về Quỹ tài trợ Mambo và mối quan hệ của nó tới cộng đồng. Ông viết: "...Chúng tôi cho rằng tương lai của Mambo nên được quản lý, điều chỉnh bởi những yêu cầu của người sử dụng và khả năng của những nhà phát triển. Trong khi đó, Quỹ tài trợ Mambo lại được thiết kế nhằm trao quyền điều khiển cho Miro, một thiết kế ngăn cản sự hợp tác giữa Quỹ tài trợ và cộng đồng...". Bởi vậy vào ngày 17 tháng 8 năm 2005, toàn bộ đội phát triển nòng cốt của Mambo đã rời khỏi dự án trong khi đang làm việc với phiên bản 4.5.3. Nhờ sự trợ giúp của Trung tâm Luật Tự do Phần mềm (Software Freedom Law Center - SFLC), 20 thành viên nòng cốt cũ của Mambo đã thành lập một tổ chức phi lợi nhuận khác lấy tên là Open Source Matters, để hỗ trợ về mặt tổ chức, pháp lý và kinh phí cho dự án mã nguồn mở còn chưa được đặt tên của họ. Cùng lúc đó, nhóm phát triển cũng lập một website lấy tên OpenSourceMatters để phân phối thông tin tới những người sử dụng, những người phát triển, những người thiết kế và cộng đồng Joomla nói chung. Người đứng đầu dự án chính là Andrew Eddie. Ngay ngày hôm sau, 1000 người đã gia nhập diễn đàn OpenSourceMatters, hầu hết các bài viết cho diễn đàn đều khuyến khích và đồng tình với hành động của Nhóm Phát triển. Tin trên đã nhanh chóng được đăng tải trên các tạp chí newsforge.com, eweek.com và ZDnet.com. Trong một thông báo của Eddie 2 tuần sau đó, các nhóm đã được tổ chức lại và cộng đồng Joomla! tiếp tục tăng trưởng. Tới ngày 1 tháng 9 năm 2005 tên mới của dự án đã được thông báo cho khoảng 3000 người theo dõi đội Phát triển và đến ngày 16 tháng 9 thì họ cho ra đời Joomla! 1.0. Phiên bản Joomla Hiện Joomla! có 5 dòng phiên bản chính:  Joomla! 1.0.x: Phiên bản thế hệ 1  Phiên bản phát hành đầu tiên: Joomla! 1.0.0 (ngày 15 tháng 9 năm 2005)  Phiên bản phát hành mới nhất: Joomla! 1.0.15 ( tháng 9 năm 2009)  Joomla! 1.5.x: Phiên bản thế hệ 2  Các phiên bản cũ (giai đoạn phát triển): Joomla! 1.5 beta, Joomla! 1.5 RC1, Joomla! 1.5 RC2, Joomla! 1.5 RC3, Joomla! 1.5 RC4  Phiên bản phát hành mới nhất: Joomla! 1.5.25 (ngày 14 tháng 11 năm 2011)  Joomla! 1.6: Phiên bản thế hệ 3  Phiên bản phát hành mới nhất: Joomla! 1.6.5 (ngày 11 tháng 07 năm 2011)  Joomla! 1.7: Phiên bản thế hệ 4 Phiên bản phát hành mới nhất: Joomla! 1.7.5 (ngày 02 tháng 02 năm 2012)  Joomla! 2.5: Phiên bản thế hệ 5 Phiên bản phát hành mới nhất: Joomla! 2.5.3 (ngày 15 tháng 03 năm 2012) Người dùng rất thích sử dụng Joomla và trung thành với nó. Cùng với Drupal và Wordpress… Joomla là mã nguồn mở về quản lý nội dung website (CMS) được sử dụng nhiều nhất trên thế giới. ( Hình 1) Nhìn vào hình ta thấy Joomla và WordPress cùng số lượng về lưu lượng tìm kiếm của Google Trend. Joomla và Wordpress có lưu lượng tìm kiếm gấp 3 lần so với Drupal. Tuy nhiên lưu lượng tìm kiếm của Joomla đã bị giảm từ năm 2010. Đó là thời gian để cho Joomla bắt đầu xem xét lại và cho ra đời phiên bản Joomla 1.6 – tháng 1 năm 2011 và joomla 1.7 – tháng 7 năm 2011. ( Hình 2 ) Việc sử dụng Joomla ở nước Đức rất phổ biến. Joomla có lưu lượng tìm kiếm gấp 2 lần Wordpress và gấp 4 lần Drupal. Bản dưới đây là một vài thống kê từ Google Trends : Country Drupal Joomla Wordpress World 0.3 1 1.08 Chile 0 1 0.82 France 0.2 1 0.68 Germany 0.16 1 0.61 Italy 0.17 1 0.6 Poland 0.15 1 0.43 Russian Frederation 0.3 1 0.5 Spain 0.26 1 1 Switzerland 0.15 1 0.45 UK 0.4 1 1.65 USA 0.66 1 2.3 China 0.8 1 3.2 2. Joomla 1.0 – thế hệ thứ 1 Joomla là một CMS software giúp chúng ta xây dựng websites và những ứng dụng online khác. Đặc biệt, joomla là một giải pháp mã nguồn mở hoàn toàn miễn phí Joomla cho người dùng cuối (End users) Gói đơn giản của joomla được thiết kế rất dễ để cài đặt, thậm chí bạn không phải là một lập trình viên. Hầu hết mọi người đều dễ dàng download, cài đặt và sử dụng. Bạn cũng dễ dàng thêm những mục tin tức, quản lý trang nhân viên và tạo ra vô số các tin bài thuộc nhiều thể loại khác nhau thông qua giao diện web Joomla cho người phát triển website Sức mạnh của joomla là framework của nó. Các nhà phát triển website trên thế giới đã tạo ra những thành phần mở rộng (components, modules, và mambots). Dưới đây là vài ví dụ của hàng ngàn thành phần của joomla : dynamic form builders, business or organisational directories, document management, image and multimedia galleries, e-commerce and shopping cart engines, forums and chat software… Sử dụng Joomla Framework, người phát triển website có thể xây dựng : integrated e-commerce systems, inventory control systems, data reporting tools, custom product catalogues, complex business directories, reservation and booking systems, communication tools, application bridges… (Hình 3 – back-end joomla 1.0) 3. Joomla 1.5 – thế hệ thứ 2 Phần quản trị - đơn giản và dễ dàng quản lý Đầu tiên chúng ta nhận thấy là giao diện đã cải thiện, phần cấu hình toàn cục (global configuration) hiển thị đơn giản và dể dàng kiểm soát hơn. Tiếp theo là những cải tiến về việc quản lý website. Việc cài đặt các thành phần (extension) và ngôn ngữ rất đơn giản. Quản lý tài liệu, hình ảnh… được cải thiện về giao diện và tính năng. (Hình 4 – joomla 1.5 Media manager) Việc quản lý tin bài đơn giản hơn, không còn nhiều vùng soạn thảo giống như joomla 1.0 nữa, bây giờ chỉ cần một vùng soạn thảo với ‘Read more’ để phân chia phần giới thiệu và phần nội dung chính của tin bài. Một cải thiện nữa đó là người quản trị có thể chọn hình ảnh và chèn trực tiếp vào tin bài ngay lúc soạn thảo (Hình 5 – joomla 1.5 artice editor) Một trong những cải tiến quan trọng nữa là tạo ra các URLs thân thiên với các công cụ tìm kiếm (Search Engine) chỉ bằng cấu hình tại cấu hình chung (global configuration) (Hình 6 – joomla 1.5 global configuration) Người thiết kế tự do sáng tạo Phần template của joomla 1.5 đã cải tiến, giao diện website (layouts) dể dàng thay đổi, chỉnh sửa. Do vậy người thiết kế website tự do sáng tạo và người lập trình cũng dễ dàng code theo ý tưởng của người thiết kế. Với joomla 1.5 người dùng cuối (end users) có thể chỉnh sửa những biến cấu hình của template trong phần giao diện quản lý template. Người quản lý template cũng có thể chỉnh sửa bất kỳ file css nào cho template mà không cần sự thay đổi từ lập trình viên. Người phát triển website – thực hiện nhanh chóng và cấu trúc hợp lý Việc thiết kế và cấu trúc của code trong joomla 1.5 đã được sắp xếp lại và sử dụng những phương pháp hiện đại hiện nay và các mẫu thiết kế(design patterns). Joomla được chia làm 3 lớp làm cho cấu trúc của nó được gọn gàng và người lập trình chỉ tác động vào một lớp nào đó khi cần thiết. Joomla 1.5 được phát triển theo hướng đối tượng – object-oriented. Joomla 1.5 được xây dựng trong khuôn khổ sự tương thích với php 4.3 và php5. Người lập trình có thể dễ dàng chuyển đổi phiên bản mới khi cần thiết. Nhưng có lẽ tính năng mạnh mẽ nhất của framework là mô hình MVC. Phát triển bằng cách sử dụng MVC giúp cho các nhà phát triển có một nền tảng cho sự phát triển các ứng dụng nhanh chóng. Sự tách biệt rỏ ràng các tầng logic và tầng hiển thị giúp cho việc sử dụng lại và duy trì mã code dễ dàng. 4. Joomla 1.6 – thế hệ thứ 3 Hệ thống phân quyền người dùng Với joomla 1.6 Cho phép tạo mới nhóm người dùng. Cho phép tùy biến các cấp độ truy cập (access levels) và quản lý quyền truy cập đa cấp. (Hình 7 – joomla 1.6 phân quyền người dùng) Joomla 1.5 Joomla 1.6 Nhóm Gồm 7 nhóm cố định, không thể thêm bớt hoặc xóa: Registered, Author, Editor, Publisher, Manager, Administrator và Super Administrator Không giới hạn số lượng nhóm tạo thêm. Người dùng & Nhóm Một người dùng chỉ thuộc về duy nhất một nhóm về 1 và duy nhất một nhóm Một người dùng có thể được gán vào nhiều nhóm khác nhau. Cấp độ truy cập 3 cấp độ truy cập cố định (Public, Registered, Special) Không giới hạn số lượng cấp độ truy cập tạo thêm Cấp độ truy cập & Nhóm Mối liên quan giữa cấp độ truy cập và nhóm là cố định Nhóm được gán vào Cấp độ truy cập và hoàn toàn có thể tùy biến được Nhóm và hành động Các hành động mà một nhóm có thể thực hiện là cố định Hoàn toàn có thể tùy biến theo nhu cầu Phạm vi của quyền Phạm vi áp dụng cho toàn bộ trang web và trên mọi đối tượng Tùy biến theo nhiều cấp: toàn cục, theo component, theo category và theo article Thừa kế quyền Không thực hiện được Quyền được thiết lập ở cấp độ cha sẽ được thừa kế ở cấp độ con Hệ thống phân loại nội dung đa cấp Với joomla 1.6 việc quản lý nội dung tin bài trở nên dễ dàng và mềm dẻo, có thể tạo bao nhiêu cấp bậc category tùy ý. Cho phép thêm trường dữ liệu mới cho thành viên Joomla 1.5  Section  Category  Article Joomla 1.6  Category  Sub category 1  Sub category 2  Sub category N  Article Ngoài các trường dữ liệu phổ biến cho user như : username, email, password…Với joomla 1.6 có thể bổ sung các trường dữ liệu khác cho user tùy ý như : Địa chỉ, quốc gia, phone… (Hình 8 – joomla 1.6 thêm trường dữ liệu cho users) 5. Joomla 1.7 – thế hệ thứ 4 Cải thiện đa ngôn ngữ Cải tiến đa ngôn ngữ cho phép bạn kết hợp với các menu với những ngôn ngữ khác nhau với khả năng điều hướng nhanh hơn Các gói ngôn ngữ bây giờ được xây dựng với cơ chế tự động chọn font chữ tốt nhất cho ngôn ngữ đó. Thêm những tính năng mới Code trong những kiểu plugin được cải tiến tốt hơn, điều này giúp cho người lập trình dễ dàng tự xây dựng những thành phần cho mình (extensions) Khả năng tự động xác nhận dữ liệu trong quá trình user thực hiện lệnh lưu (save). Điều này giúp phòng chống hacker muốn lưu(save) dữ liệu không hợp lệ vào các forms nhằm tấn công website. … 6. Joomla 2.5 – thế hệ thứ 5 Tìm kiếm nhiều nội dung với Smart Search Công cụ tìm kiếm thông minh này nhanh hơn và linh hoạt hơn so với tìm kiếm chuẩn. Các dữ liệu cần phải được lập chỉ mục theo thứ tự để có được sự linh hoạt và tốc độ. (Hình 9 – joomla 2.5 tạo index) Hỗ trợ nhiều databases Với joomla 2.5 sẽ có thể hoạt động với MySQL và Microsoft SQL Server và tương lại sẽ là PostgreSQL và Oracle Form user đăng ký với CAPTCHA Chức năng này dùng để chống spam hiệu quả (Hình 10 – joomla 2.5 captcha) Đa ngôn ngữ Bạn có thể ghi đè chuỗi ngôn ngữ mặc định từ back-end (Hình 11 – joomla 2.5 thay đổi ngôn ngữ) User notes Với user notes, những ghi chú được đính kèm với user và được gán ngày theo dõi cho users. Có thể có nhiều ghi chú cho một user thuộc những thể loại khác nhau. (Hình 12 – joomla 2.5 user notes) Loại bỏ subcategories Trong Joomla 1.7 khi tìm kiếm ở các bài viết, bạn có thể lọc theo thể loại. Tuy nhiên, bạn không có một cách lựa chọn một thể loại và nhận được tất cả các bài viết mà trong đó thể loại và các danh mục phụ của nó. Trong 2,5, lựa chọn một danh mục trong quản lý điều sẽ bao gồm các tiểu thể loại của nó, xuống đến độ sâu mà bạn chọn. Nếu bạn chỉ muốn loại cấp cao nhất, bạn có thể chọn một mức độ 1. III. Những Nguyên tắc sáng tạo – khoa học được áp dụng trong quá trình phát triển Joomla CMS 1. Nguyên tắc phân nhỏ Trong quá trình phát triển của mình Joomla CMS đã vận dụng nguyên tắc phân nhỏ để phát triển. Joomla 1.0 được cải tiến tập trung vào phần cấu trúc của framework từ các functions lên phân lớp MVC để được joomla 1.5. Rồi từ joomla 1.5 với việc tập trung vào việc phân quyền của user đã phát triển thành phiên bản joomla 1.6 với nhóm người dùng không giới hạn, việc phân quyền cho user trở nên mềm dẻo hơn và khoa học hơn… ngoài ra việc phát triển của joomla còn thực hiện trên nhiều phần nhỏ khác nhau : giao diện, security, đa ngôn ngữ, … 2. Nguyên tắc tách riêng Trong joomla nếu chỉ xét riêng về các thành phần của nó (extensisions) thì ta thấy các thành phần này độc lập nhau. Những thành phần chính của joomla là : component, module, plugin (từ joomla 1.5) được cài đặt và gở bỏ cài đặt độc lập nhau không ảnh hưởng đến các thành phần khác và cả website. Trong quá trình phát triển các thành phần của joomla cũng độc lập, người lập trình có thể thay đổi nâng cấp code… trên chính thành phần đó mà ko ảnh hưởng đến các thành phần khác – việc thay đổi chỉ xảy ra tại package của thành phần đó mà thôi. Việc áp dụng nguyên tắc tách riêng này của joomla đã giúp joomla là framework rất dễ dàng cài đặt, sử dụng và phát triển. 3. Nguyên tắc kết hợp Trong quá trình phát triển của mình Joomla cũng đã vận dụng khá tốt nguyên tắt kết hợp. Quá trình phát triển framework joomla đều theo hướng mở rộng có thể kết hợp được. Ví dụ : website về tin tức có thể kết hợp với các thành phần khác như : forum, shopping, cộng đồng…Nhờ khả năng này mà chúng ta thấy việc sử joomla rất đa dạng và phổ biến trên thế giới – chúng ta có thể triển khai tất cả thể loại website khác nhau từ joomla. 4. Nguyên tắc vạn năng Ngoài là framework chuyên dùng để quản lý nội dung (content management system) với Joomla chúng ta có thể tích hợp với rất nhiều thành phần mở rộng khác (extensisons). Chúng ta cho thể triển khai thương mại điện tử với virtal mart component. Website cộng đồng với community component, website photo gallery với phoca gallery component, diễn đàn với fireboard… Nói chung với Joomla CMS chúng ta có thể xây dựng bất cứ dạng website nào chúng ta muốn. Điều này thể hiện khả năng vạn năng của Joomla và Joomla CMS đã áp dụng rất tốt nguyên tắc vạn năng trong quá trình phát triển của mình. 5. Nguyên tắc dự phòng Là một free framework và được phát triển bởi cộng đồng nên việc phát triển code của joomla được thực hiện và quản lý rất chặt chẽ và khoa học. Việc phát triển code được quản lý bởi các phần mềm quản lý phiên bản (version) như subversion – svn rất chặt chẽ. Với công cụ này các nhà phát triển có thể checkout về máy tính của mình để lập trình sau đó update – checkin lại trên server chính. Tất cả thay đổi đều được quản lý theo các phiên bản và có thể tìm lại các phiên bản trước đó. Nguyên tắc dự phòng đã được áp dụng và là cơ sở để joomla phát triển bền vững như ngày nay. 6. Nguyên tắc quan hệ phản hồi Joomla CMS là phần mềm mã nguồn mở nổi tiếng trên thế giới, do đó số lượng người sử dụng là vô cùng to lớn. Để phát triển hoàn thiện joomla 2.5 như ngày nay Joomla CMS đã vận dụng khá tốt nguyên tắc quan hệ phản hồi. Phản hồi từ người sử dụng website, người thiết kế website và người phát triển website… phản hồi trên nhiều phương diện khác nhau : giao diện, tính năng, tính bảo mật, tính mềm dẻo và dễ dàng trong quản lý, hỗ trợ đa ngôn ngữ…Bên cạnh đó có rất nhiều forum, FAQ, joomla groups… trên thế giới đã giúp tạo một kênh thảo luận, đóng góp ý kiến rộng lớn cho joomla CMS. Tạo cơ sở cho sự phát triển hơn nữa của joomla trong tương lai. 7. Nguyên tắc sử dụng trung gian Để góp phần tăng thêm tính năng và tiện ích của mình, joomla cũng có thể tích hợp các thành phần trung gian vào chính framework của mình. Ví dụ như, chúng ta có thể hiển thị video player của youtube, megavideo, …lên trên website của mình. Chúng ta có thể upload video từ joomla website sau đó đưa video lên youtube qua một account xác định nào đó, tích hợp joomla website và youtube thông qua web API (application programming interface). Tương tự như vậy đối với facebook, chúng ta cũng có thể login vào website bằng tài khoản facebook, hiển thị fans box, friends box… trên joomla website. Đặc biệt là tính năng tìm bạn, user chỉ cần nhập địa chỉ email (yahoo, gmail…) một yêu cầu kết bạn sẽ được gửi qua email đến những người bạn của user này trong contact list… Việc sử dụng nguyên tắc sử dụng trung gian đã tăng thêm tính tiện lợi và khả năng quảng bá của joomla website. 8. Nguyên tắc sao chép Chúng ta hãy nhìn lại sự phát triển của joomla từ phiên bản 1.0 đến 2.5. Ban đầu là cấu trúc framework đơn giản quản lý chủ yếu bằng các functions chưa phân lớp ở joomla 1.0. Rồi mô hình MVC (model – view – controller ) ở joomla 1.5. Nâng cao hơn nữa quyền truy cập của user với nhiều nhóm truy cập, category cho tin bài với số bậc không giới hạn ở joomla 1.6&1.7. Nâng cấp component smart search, captcha ở joomla 2.5. Chúng ta thấy rằng mặc dù ở những phiên bản sau có rất nhiều cải tiến do với phiên bản trước, nhưng đều phát triển dựa trên nền tảng của phiên bản trước. Điều này chứng tỏ joomla đã vận dụng tốt nguyên tắt sao chép. Sao chép từ phiên bản trước để phát triển phiên bản tiếp theo. Ngoài ra trong hệ thống quản trị của joomla nguyên tắc sao chép còn được áp dụng rất phổ biến. Sao chép menu, tin bài, category,… 9. Nguyên tắc rẻ thay đắt Bản thân là một open source software, joomla đã vận dụng nguyên tắc rẻ thay cho đắt rất tốt. Joomla phát triển như ngày nay là do sự đóng góp của đông đảo cộng đồng yêu mến joomla. Không có một Công Ty nào bỏ tiền thuê mướn lập trình viên hay designer để phát triển joomla cả. Hiện nay số lượng người sử dụng joomla trên thế giới rất nhiều, và cũng rất nhiều dự án website triển khai với joomla rất thành công. Vì vậy việc sử dụng joomla để phát triển website là một giải pháp free nhưng hiệu quả mang lại vô cùng to lớn. IV. Kết luận : Qua bài luận trên ta thấy được sự ảnh hưởng của 40 phương pháp sáng tạo trong quá trình giải quyết các vần đề tin học là vô cùng to lớn. Không chỉ là hướng để giải quyết các vấn đề mà bản thân của 40 phương pháp này đã ẩn chứa trong nó câu trả lời. Ngày nay khi mà với sự tiến bộ của khoa học kỹ thuật làm thế giới trở nên bình đẳng hơn, các biên giới quốc gia chỉ còn giá trị về địa lý thì cơ hội thành công là rất rõ rệt với tất cả mọi người. Do đó việc nắm vững 40 phương pháp sáng tạo có thể coi như là chìa khoá để mở cánh cửa thành công. Chỉ cẩn giải quyết được một vấn đề nào đó cũng có thể làm nên cuộc cách mạng công nghệ mới. Joomla CMS hay bất kỳ dự án tin học nào cũng vậy, đều phát triển dựa trên những nguyên tắc xác định. Do vậy nếu chúng ta nắm vững các nguyên tắc sáng tạo và vận dụng chúng vào trong các dự án thì cơ hội thành công là rất cao. Tài liệu tham khảo : Website : introducing-joomla-10.html 15-overview.html &tmpl=component;1&keyref=joomla.whatsnew10.15 Sách : - Giới thiệu : Phương pháp luận sáng tạo và đổi mới (quyển 1 của bộ sách ‘‘sáng tạo và đổi mới’‘) Trung tâm sáng tao KHKT (TSK), TpHCM 2004 Tác giả : Phan Dũng - 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 - Giải một bài toán trên máy tính như thế nào của GSTS. Hoàng Kiếm. Tập 1,2,3 năm 2005. - 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.TSKH. Hoàng Kiếm v

Các file đính kèm theo tài liệu này:

  • pdfbiabv_0099.pdf