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.
34 trang |
Chia sẻ: lylyngoc | Lượt xem: 2634 | Lượt tải: 0
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:
- biabv_0099.pdf