• SourceForge cũng chính là một phần mềm mã nguồn mở và được phân phối quaphiên bản mẫu thế hệ 2.5.. Sau đó, tới phiên SourceForge cũng được dùng làm nền tản cho GForge,một hệ thống quản
Trang 1BÀI 6 TÌM KIẾM VÀ ỨNG DỤNG
MÃ NGUỒN MỞ
ThS Chử Đức Hoàng
Trang 2v1.0012103212 2
• Cộng đồng những người sử dụng mã nguồn mở đã được xây dựng và phát triểnrất có quy mô, tổ chức và đã đạt được những thành công nhất định
• Có nhiều dạng mã nguồn mở khác nhau tuỳ theo nhu cầu của người sử dụng
• Với mỗi loại mã nguồn mở, lại có nhiều sản phẩm khác nhau cho chúng ta có thểlựa chọn
• Việc sử dụng mã nguồn mở vào các sản phẩm sẽ giúp chúng ta giảm được chi phíđầu tư
• Việc nâng cấp, phát triển phần mềm mã nguồn mở sẽ có thể tạo dựng đượcthương hiệu và tài chính
Lựa chọn và tìm kiếm các mã nguồn mở ở đâu?
Trang 3MỤC TIÊU
Trình bày được các đặc tính của mã nguồn mở
Tìm hiểu các nguồn cung cấp mã nguồn mở trên thế giới
Khái niệm về một số mã nguồn mở phổ biến
Trang 4v1.0012103212 4
Giới thiệu về các địa chỉ mã nguồn mở
Phân loại ứng dụng mã nguồn mở
1
2
Trang 51 GIỚI THIỆU VỀ CÁC ĐỊA CHỈ MÃ NGUỒN MỞ
Trang 7• SourceForge cũng chính là một phần mềm mã nguồn mở và được phân phối quaphiên bản mẫu thế hệ 2.5 Ngoài ra, SourceForge cũng được bán với giấy phépthương mại với tên hiệu là SourceForge Enterprise Edition.
• Nền tảng của SourceForge bắt nguồn từ một dự án mã nguồn mở GNU tên
là Savane Sau đó, tới phiên SourceForge cũng được dùng làm nền tản cho GForge,một hệ thống quản lý quá trình phát triển phần mềm khác
• Từ SourceForge thường được dùng để chỉ mạng SourceForge Mạng SourceForgeđược hãng OSTG, Inc duy trì và cũng là nơi phần mềm SourceForge được dùng đểquản lý các dự án mã nguồn mở
1.1 SOURCEFORGE (tiếp theo)
Trang 8v1.0012103212 8
SourceForge có chứa các mã nguồn không phải PhP không?
Trang 91.2 JOOMLA
• Joomla! là một nền tảng mã nguồn mở được viết bằng ngôn ngữ PHP và sử dụng
cơ sở dữ liệu MySQL, cho phép người dùng có thể dễ dàng soạn thảo và xuất bảncác nội dung (bài viết, tài liệu ) của họ lên Internet hoặc Intranet
• Joomla! giúp xây dựng và triển khai các website blog, website tin tức, website bánhàng, website thương mại điện tử cho tới mạng cộng đồng, mạng xã hội trongmột thời gian ngắn và tiết kiệm nhiều công sức
• Joomla! được phát âm theo tiếng Swahili như là jumla nghĩa là "đồng tâm hiệp lực" Khẩu ngữ này khẳng định sự đoàn kết và quyết tâm của cộng đồng Joomla!
Trang 10v1.0012103212 10
Trang 11Tại sao sử dụng Joomla?
• Joomla là mã nguồn mở và được cung cấp hoàn toàn miễn phí.
• Joomla là nền tảng mã nguồn mở được xây dựng và đóng góp bởi những chuyên gia hàng đầu và những thành viên tích cực khác.
• Joomla! có một cộng đồng phát triển cũng như sử dụng rất lớn Điều đó có nghĩa
là ngay khi bạn gặp vấn đề khó khăn, rất nhiều người tình nguyện sẵn sàng giúp
đỡ bạn
• Joomla! giúp tiết kiệm thời gian và công sức thiết kế Website.
• Sử dụng Joomla rất dễ dàng và thân thiện đối với cả những người nghiệp dư và
các chuyên gia
• Joomla! cung cấp rất nhiều chức năng ở các lĩnh vực khác nhau thông qua các
thành phần mở rộng được phát triển bởi các hãng thứ ba, trong khi phần lớn trong
số chúng cũng đều có mã nguồn mở và miễn phí
1.2 JOOMLA (tiếp theo)
Trang 12v1.0012103212 12
• Joomla! có một số lượng template (giao diện) khổng lồ, từ những giao diện ở mức
đơn giản cho tới phức tạp
• Joomla! có hàng trăm website cung cấp các tài liệu hướng dẫn sử dụng từ cơ bản
cho tới nâng cao Các hướng dẫn đều rõ ràng, dễ hiểu và có các minh họa bằng hìnhảnh, video clip kèm theo
• Tài liệu API dành cho lập trình viên, phát triển viên được cung cấp đầy đủ.
• Các hoạt động của Joomla! như triển lãm Joomla (Joomla Exhibition), hội thảo
Joomla (Joomla Workshop), ngày hội Joomla (Joomla! Day) được tổ chức thường
niên ở các thành phố lớn của các nước như Úc, Mỹ, Anh, Pháp luôn thu hút đôngđảo các thành viên tham gia
Trang 13Tình hình sử dụng tại Việt Nam:
• Kể từ khi Joomla! 1.0 ra đời vào tháng 09/2005, có hàng nghìn thậm chí hàng chụcnghìn website ở Việt Nam đã được xây dựng trên nền tảng Joomla! và con số nàyvẫn đang tiếp tục tăng không ngừng
• Nhiều người từng là quản trị viên của diễn đàn Joomla Việt đầu tiên đã thành lập cáccông ty chuyên thiết kế Website Joomla và đang gặt hái những thành công bướcđầu
• Một vài người khác thậm chí đã vượt qua hàng trăm công ty tên tuổi khác trên thếgiới để trở thành công ty hàng đầu về cung cấp template, dịch vụ outsourcing choJoomla! với doanh thu ước tính từ hàng tỷ cho tới hàng chục tỷ đồng mỗi năm
1.2 JOOMLA (tiếp theo)
Trang 14• Các Website thể thao, giái trí ;
• Các Website mua sắm, thương mại điện tử;
• Các Website danh bạ trực tuyến;
• Các Website mạng cộng đồng/mạng xã hội
Trang 151.3 DRUPAL
• Drupal là một khung sườn phát triển phần mềm hướng mô-đun, một hệ thốngquản trị nội dung miễn phí và mã nguồn mở Cũng giống như các hệ thống quản trịnội dung hiện đại khác, Drupal cho phép người quản trị hệ thống tạo và tổ chức dữliệu, tùy chỉnh cách trình bày, tự động hóa các tác vụ điều hành và quản lý hệthống những
• Drupal có cấu trúc lập trình rất tinh vi, dựa trên đó, hầu hết các tác vụ phức tạp cóthể được giải quyết với rất ít đoạn mã được viết, thậm chí không cần Đôi khi,Drupal cũng được gọi là "khung sườn phát triển ứng dụng web", vì kiến trúc thôngminh và uyển chuyển của nó
• Drupal được chạy trên rất nhiều môi trường khác nhau, bao gồm Windows, Mac OS
X, Linux, FreeBSD, OpenBSD và các môi trường hỗ trợ máy phục vụ web Apache(phiên bản 1.3+) hoặc IIS (phiên bản 5+) có hỗ trợ ngôn ngữ PHP (phiên bản
Trang 16v1.0012103212 16
Trang 17Tháng giêng năm 2009, Drupal 6.9, phiên bản mới nhất, đã được công bố.
Website thảo luận, Website cộng đồng;
Website nội bộ (Intranet), Website doanh nghiệp;
Website cá nhân;
Website thương mại điện tử;
Thư mục tài nguyên;
1.3 DRUPAL (tiếp theo)
Trang 18v1.0012103212 18
• NukeViet là thế hệ CMS hoàn toàn mới
do người Việt phát triển Lần đầu tiên ở
Việt Nam, một bộ nhân mã nguồn mở
được đầu tư bài bản và chuyên nghiệp
cả về tài chính, nhân lực và thời gian
• Kết quả là 100% dòng code của
NukeViet được viết mới hoàn toàn,
NukeViet 3 sử dụng xHTML, CSS với
Xtemplate và jquery cho phép vận
dụng Ajax uyển chuyển cả trong công
nghệ nhân NukeViet đã giành giải ba
Nhân tài Đất Việt 2011
Trang 20v1.0012103212 20
• NukeViet 3 lập trình trên PHP 5 và MySQL 5 cho phép vận dụng tối đa sức mạnh củacông nghệ mới Ứng dụng Xtemplate và jQuery cho phép vận dụng Ajax uyểnchuyển từ trong nhân hệ thống Với xHTML 1.0 và CSS 2.1, NukeViet 3.0 cho kếtquả là những trang web đạt tiêu chuẩn, tương thích trên tất cả các trình duyệt phổbiến hiện nay
• Thiết kế giao diện đồ họa sử dụng nguyên lý thiết kế Giao diện lưới (Grid) cực kỳkhoa học cho phép tùy biến giao diện dễ dàng Tận dụng các thành tựu mã nguồn
mở có sẵn nhưng NukeViet 3 vẫn đảm bảo rằng từng dòng code là được code tay
• Điều này có nghĩa là NukeViet 3 hoàn toàn không lệ thuộc vào bất cứ frameworknào trong quá trình phát triển của mình
Trang 211.4.2 KIẾN TRÚC MODULE
• NukeViet 3.0 tái cấu trúc lại module, theo đó, toàn bộ tệp tin của mỗi module đượcgói gọn trong một thư mục riêng nhằm đơn giản trong việc quản lý và đóng gói ứngdụng Kiến trúc module này tạo ra khái niệm block của module và theme của modulegiúp đa dạng hóa việc trình bày module
• Hệ thống NukeViet 3.0 hỗ trợ công nghệ đa nhân module Chúng tôi gọi đó là côngnghệ ảo hóa module Công nghệ này cho phép người sử dụng có thể khởi tạo hàngngàn module một cách tự động mà không cần động đến một dòng code
• Các module được sinh ra từ công nghệ này gọi là module ảo Module ảo là moduleđược nhân bản từ một module bất kỳ của hệ thống nukeviet nếu module đó chophép tạo module ảo
Trang 22• NukeViet 3.3 còn có khả năng tự động nhận diện và chuyển ngôn ngữ phù hợp chongười sử dụng.
Trang 231.5 MAGENTOCOMMERCE
• Magento là một mã nguồn mở giúp tạo
các trang web thương mại điện tử
(e-commerce) Magento được triển khai vào
ngày 31 tháng 3 năm 2008, được sáng
lập bởi Varien, xây dựng trên nền tảng
các thành phần của Zend Framework
• Magento hiện xuất bản dưới Giấy phép
Trang 24• Magento 1,0 đã được phát hành vào ngày 31 tháng 3 năm 2008.
• Magento 1/1 đã được phát hành vào ngày 25 tháng 7 năm 2008 Phiên bản nàycung cấp sửa chữa cho rất nhiều lỗi và cũng có thể làm cho Magento nhanh hơn, vớinhiều đáp ứng được nhiều giao diện người sử dụng
Trang 25• Tài khoản của khách hàng;
1.5 MAGENTOCOMMERCE (tiếp theo)
Trang 26• CMU Sphinx - Phần mềm nhận dạng giọng nói từ Carnegie Mellon University.
• Emacspeak - Bàn làm việc âm thanh…
Trang 272 PHÂN LOẠI ỨNG DỤNG MÃ NGUỒN MỞ
• Audio & Video;
• Business & Enterprise;
• Science & Engineering;
• Security & Utilities;
• System Administration
Trang 28v1.0012103212 28
Các ứng dụng về audio và Video cho phép người sử dụng xem phim, nghe nhạc,chỉnh sửa âm thanh, hình ảnh, quay phim và chụp màn hình…
Trang 292.2 BUSINESS & ENTERPRISE
Trang 30v1.0012103212 30
Các ứng dụng về giao tiếp và truyền thông cho phép mọi người chia sẽ dữ liệu, vănbản thông qua các phần mềm đặc trưng như: Emule, WinSCP…
Trang 31CÂU HỎI THẢO LUẬN
Tại sao phần mềm VCL media player lại xuất hiện trong nhiều mục phân loại
khác nhau?
Trang 32v1.0012103212 32
Các ứng dụng phát triển cho phép người sử dụng xây dựng và phát triển các nềntảng phần mềm, mã nguồn, tạo server ảo và chỉnh sửa văn bản dùng các phầnmềm đặc trưng
Trang 332.5 HOME & EDUCATION
Trang 34v1.0012103212 34
Các ứng dụng về game là nơi chia sẻ các phần mềm chơi game miễn phí
Trang 352.7 GRAPHICS
Trang 36v1.0012103212 36
Các ứng dụng về khoa học và kỹ thuật cho phép người sử dụng tiếp cận các công
cụ, tiện ích miễn phí trong quá trình thực thi các công việc
Trang 372.9 SECURITY & UTILITIES
Trang 38v1.0012103212 38Tiện ích quản trị hệ thống giúp cho người sử dụng có thể quản trị và kiểm soát tàinguyên của hệ thống như: Cơ sở dữ liệu, file, bios…
Trang 39TÓM LƯỢC CUỐI BÀI
• Nắm được cấu trúc và nội dung của mã nguồn mở
• Tìm hiểu và phân loại được các thành phần mã nguồn mởthông dụng trên thế giới thông qua các Website chia sẻ
• Lựa chọn được mã nguồn mở phù hợp với công việc và nhucầu của mình