Bài giảng Phát triển ứng dụng mã nguồn mở

MỤC LỤC

Chương 1: GIỚI THIỆU VỀ PHẦN MỀM MÃ NGUỒN MỞ. 5

1.1. Lịch sử phát triển . 5

1.2. Phương pháp xây dựng phần mềm mã nguồn mở . 7

1.3. Vai trò của phần mềm mã nguồn mở . 8

1.3.1. Phần mềm nguồn mở có thực sự miễn phí ? . 8

1.3.2. Tính kinh tế của Phần mềm nguồn mở. 8

1.3.3. Sử dụng Phần mềm nguồn mở đem lại những ích lợi gì? . 9

1.3.4. Những hạn chế của phần mềm mã nguồn mở . 9

1.4. Những dự án phần mềm mã nguồn mở tiêu biểu . 10

1.4.1. BIND (Máy chủ DNS) . 10

1.4.2. Apache . 10

1.4.3. Máy chủ email . 10

1.4.4. Open SSH (Công cụ quản trị mạng an toàn) . 11

1.4.5. Open Office (Bộ tính năng ứng dụng văn phòng) . 11

Chương 2: LINUX TRONG PHẦN MỀM MÃ NGUỒN MỞ . 12

2.1. Tổng quan về Linux . 12

2.1.1 Giới thiệu . 12

2.1.2. Kiến Trúc của Hệ Điều Hành Linux . 12

2.1.3. So sánh Dos/Windows và Linux . 13

2.2. Vai trò của Linux trong phần mềm mã nguồn mở . 13

2.2.1. Vai trò . 13

2.2.2. Các lĩnh vực ứng dụng của Linux . 14

Chương 3: PHẦN MỀM TRÊN MÁY CHỦ VÀ ĐỀ BÀN . 16

3.1. Hệ điều hành Fedora Core . 16

3.1.1. Giới thiệu . 16

3.1.2. Cài đặt . 17

3.2. Giao diện đồ họa GNOME . 18

3.3. Bộ công cụ Firefox/Thunderbird/Open Office . 20

3.3.1 FireFox . 20

3.3.2 ThunderBird . 20

3.3.3 Open Office . 21

3.3.4 Máy chủ Web Apache/Tomcat . 24

3.3.5. Máy chủ DNS . 25

3.3.6 Máy chủ cơ sở dữ liệu MySql . 25

Chương 4: CÁC PHẦN MỀM MÃ NGUỒN MỞ KHÁC . 27

4.1. Diễn đàn mvnForum . 27

4.2. Hệ quản trị nội dung Joomla . 34

4.2.1 Giới thiệu . 34

4.2.2 Cài đặt Joomla . 35

4.3. Quản lý lớp học trực tuyến – Moodle . 40

4.3.1. Giới thiệu . 40

- 2 -4.3.2. Cài đặt . 40

4.3.3. Quản lý lớp học trên Moode . 51

4.3.4. Backups . 57

4.3.5 Restoring và Copying Course . 58

4.3.6. Reports - Báo cáo . 59

pdf68 trang | Chuyên mục: Công Nghệ Web Và Ứng Dụng | Chia sẻ: dkS00TYs | Lượt xem: 4266 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Phát triển ứng dụng mã nguồn mở, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Moodle. 
- 63 - 
GỢI Ý TRẢ LỜI 
Đề số 1. 
Câu 1. Trình bày phương pháp xây dựng phần mềm mã nguồn mở. Nêu ưu điểm so với 
phương pháp truyền thống. 
Gợi ý: 
 Mô hình xây dựng phần mềm nguồn mở là một mô hình độc đáo và nó được hiện thực 
hoá chỉ với sự ra đời của Internet và sự bùng nổ thông tin do Internet mang lại. Phép so sánh 
việc xây nhà và buôn bán ở chợ thường được dùng để đối lập mô hình phát triển phần mềm 
nguồn mở với các phương thức làm phần mềm truyền thống. 
 Quy trình làm phần mềm truyền thống được so sánh với cách thức chúng ta xây nhà. 
Từng nhóm nhỏ thợ thủ công có tay nghề cao sẽ lập thiết kế chi tiết và tiến hành xây dựng 
theo từng công đoạn riêng lẻ. 
 Ngược lại, việc phát triển phần mềm nguồn mở được ví với việc phát triển của buôn 
bán ngoài chợ, mở rộng một cách tự phát. Những người bán hàng đầu tiên đến, cắm cột xây 
cửa hàng, và bắt đầu kinh doanh. 
Câu 2. Trình bày kiến trúc của hệ điều hành Linuxs 
Gợi ý: 
 Nhân Kernel: Là trung tâm điều khiển của hệ điều hành Linux chứa các mã nguồn 
điều khiển hoạt động toàn bộ của hệ thống. 
 Shell: Shell cung cấp các tập lệnh cho người dùng thao tác với kernel để thực hiện 
công việc. Shell đọc các lệnh từ người dùng và xử lý. 
Câu 3. Nêu các định dạng Course của Moodle. Nếu ta muốn thiết lập một Course trong 
vòng 3 tuần về PHP và ASP thì định dạng nào là phù hợp. 
Gợi ý: 
 Một số các định dạng ta có thể chọn là 
 Định dạng LAMS 
 Định dạng SCORM 
 Định dạng Social 
 Định dạng Topics 
 Định dạng Weekly và CSS/no Tables 
 Trong trường hợp này ta có thể chọn định dạng Topic hoặc Weekly 
Đề số 2. 
Câu 1. Người dùng có những quyền tự do gì đối với phần mềm mã nguồn mở. Phân tích 
một trong những quyền tự do đó. 
Gợi ý: 
 - Quyền tự do chạy một chương trình với bất kỳ mục đích nào 
 - Quyền tự do nghiên cứu cách thức vận hành của một chương trình và thích ứng nó 
cho phù hợp với nhu cầu của mình. Khả năng tiếp cận mã nguồn là điều kiện tiên quyết cho 
việc này 
 - Quyền tự do phân phát các phiên bản của phần mềm để giúp đỡ những người xung 
quanh 
 - Quyền tự do thêm mới các chức năng cho một chương trình và công bố những tính 
năngmới đó đến công chúng để toàn cộng đồng được hưởng lợi. Khả năng tiếp cận mã nguồn 
là điều kiện tiên quyết cho việc này. 
Câu 2. Nêu những điểm giống nhau giữa Linux với Dos/Windows. 
- 64 - 
Gợi ý: 
Chế độ hiển thị 
Lưu trữ dữ liệu 
Thực thi các tiến trình 
Câu 3. Nêu các bước tạo một Course trong Moodle 
Gợi ý: 
Chọn mục Setting trong khối Administration trên trang Course. 
Kiểm tra các thông số lựa chọn để đảm bảo các thông số này phù hợp với khóa học của 
ta. 
Lựa chọn các hình thức đăng ký của sinh viên 
Lựa chọn thông báo hết hạn đăng ký để xác định người dùng được thông báo về việc 
đăng ký của mình và bao nhiêu thông báo mà người dùng được nhận. 
Lựa chọn các định dạng Group 
Thiết lập các lựa chọn về Availability 
Lựa chọn ngôn ngữ của Course 
Click vào nút "Save changes". 
Đề số 3. 
Câu 1. Hãy trình bày những hiểu biết về hệ điều hành GNU/Linux 
Gợi ý: 
Dự án GNU (viết tắt của ―Not Unix‖ – không phải là Unix) ra đời vào tháng Giêng năm 
1984 và trong suốt thập kỷ tiếp theo đã tạo ra những công cụ đa dạng tập hợp nên một phần 
quan trọng của hệ điều hành. Tổ chức phần mềm tự do ra đời một năm sau đó nhằm khuyếch 
trương các phần mềm tự do và dự án GNU. Tuy vậy, cho đến năm 1991, dự án GNU vẫn 
chưa đưa ra được một hệ thống phần mềm hoàn toàn tự do vì một yếu tố cơ bản vẫn còn vắng 
bóng: lõi hệ thống (the kernel). 
 Lõi (hay Nhân - Kernel) là trái tim của mọi hệ điều hành. Vào năm 1991, Linus 
Torvalds, khi đó còn đang học năm thứ hai của chương trình sau đại học tại trường ĐH 
Helsinki, đã viết và phổ biến một lõi dạng Unix. Theo đúng phương thức của quy trình phát 
triển phần mềm nguồn mở, nó được lưu hành rộng rãi, được cải tiến và nhanh chóng thích 
ứng để trở thành cốt lõi của hệ điều hành GNU/Linux. 
 Thời đó, còn có những dự án phần mềm nguồn mở khác cũng đang tiến hành, bao gồm 
cả hệ điều hành BIND, Perl và BSD. Tất cả những dự án này cuối cùng đều được sáp nhập 
hoặc tích hợp lại với nhau. 
 Hệ điều hành GNU/Linux tiếp tục phát triển một cách ổn định cả về năng lực và đặc 
tính kỹ thuật. Năm 1997, đột nhiên Linux nổi lên thành trung tâm chú ý của giới truyền thông 
do Tập đoàn Dữ liệu Quốc tế (IDC) phát hiện ra rằng GNU/Linux đã chiếm tới 25% thị 
trường máy chủ và vẫn tiếp tục tăng trưởng với tốc độ bình quân hàng năm là 25%. 
Câu 2. Trình bày những điểm khác nhau điểm của Linux so với Dos/Windows. 
Gợi ý 
Thông báo lỗi 
Đường dẫn, tổ chức thư mục 
Đường dẫn tìm kiếm 
Chương trình thực thi 
Câu 3. Nêu các Activity ta có thể có trong một Course 
Gợi ý 
- 65 - 
 Assignment 
 Chat 
 Choice 
 Forum 
 Glossary 
 Lesson 
 Quiz 
 SCORM/AICC 
 Survey 
 Wiki 
Đề số 4. 
Câu 1. Nêu những ưu điểm của phương pháp phát triển phần mềm mã nguồn mở so với 
phương pháp truyền thống 
Gợi ý 
Tính an toàn 
Tính ổn định/đáng tin cậy 
Các chuẩn mở và việc không phải lệ thuộc nhà cung cấp 
Giảm phụ thuộc vào nhập khẩu 
Phát triển năng lực của ngành công nghiệp phần mềm địa phương 
Vấn đề vi phạm bản quyền, quyền sở hữu trí tuệ, và tính tuân thủ WTO 
Nội địa hoá 
Câu 2. Trình bày những vai trò của Linux với phần mềm mã nguồn mở. 
Gợi ý 
Linux còn hơn cả một chương trình miễn phí, nó là một phần mềm với mã nguồn mở. 
Điều này có nghĩa là bạn không những có trong tay một hệ điều hành mà bạn còn có thể tùy 
biến mã nguồn cho phù hợp với người dùng của bạn. Bạn có thể sử dụng Linux vào bất kỳ 
một lĩnh vực nào của cuộc sống. Linux không chỉ là nơi để các bạn cài đặt, sử dụng các phần 
mềm mã nguồn mở mà còn là môi trường để phát triển, tối ưu các phần mềm này. 
Câu 3. Nêu các bước để thêm một Content vào trong khóa học 
Gợi ý 
Thêm một nhãn Label 
Thêm một TextPage 
Thêm một Site 
Đề số 5. 
Câu 1. Nêu các vai trò của phần mềm mã nguồn mở 
Gợi ý 
Giảm sự trùng lặp nguồn lực 
Tiếp thu kế thừa 
Quản lý chất lượng tốt hơn 
Giảm chi phí duy trì 
Câu 2. Nêu và phân tích các lĩnh vực ứng dụng của Linux. 
Gợi ý 
Lĩnh vực kinh doanh 
- 66 - 
Lĩnh vực an ninh, kinh tế, quốc phòng 
Lĩnh vực học tập 
Câu 3. Trình bày cách tạo Group trong Moodle 
Gợi ý 
Để tạo một Group, chọn "Create Group" 
Thiết lập các thuộc tính cho Group 
Group name: tên của Group 
Group Description: điền vào các thông tin mô tả về group, ví dụ về mục đích, cách thức 
hoạt động vv.... 
Erollment Key: EK cho phép người dùng có thể tự đăng ký vào trong Course. 
Hide Picture: ta ẩn các hình ảnh của Group với các hoạt động không liên quan. 
New Picture: cho phép ta lựa chọn các hình ảnh mới cho Group 
Đề số 6. 
Câu 1. Phân tích những lợi ích của phần mềm mã nguồn mở 
Gợi ý 
Tự do trong việc trao đổi, chỉnh sửa 
Tính kinh tế 
Sự phát triển 
Câu 2. Trình bày những hiểu biết về KDE và GNOME. 
Gợi ý 
 KDE là chữ viết tắt của K Desktop Environment. KDE là một môi trường màn hình 
nền hiện đại trên các máy vi tính chạy dưới hệ điều hành UNIX/Linux và cũng chạy được trên 
Microsoft Windows và Mac OS thông qua Cygwin và Fink. KDE được viết ra với mục đích 
tạo ra một môi trường làm việc dễ dàng, và tiện nghi giống như các môi trường làm việc khác 
mà chúng ta thường thấy dưới hệ điều hành Mac OS hoặc Microsoft Windows. 
 Dự án GNOME - GNU Network Object Model Environment là một dự án phần mềm 
tự do để phát triển GNOME, một bộ môi trường để bàn cho Unix/Linux. 
Câu 3. Nêu các bước để hiển thị một thư mục trong Course 
Gợi ý 
Chọn mục "Display a directory" trong menu "Add a resource" 
Điền tên của tài nguyên và ghi mô tả tóm tắt 
Chọn thư mục mà ta muốn chia sẻ 
Khi sinh viên click vào liên kết, sinh viên sẽ thấy một danh sách tất cả các file của thư 
mục đó và thư mục con nếu có. 
Đề số 7. 
Câu 1. Phân tích hai hạn chế lớn nhất của phần mềm mã nguồn mở. 
Gợi ý 
Thiếu các ứng dụng kinh doanh đặc thù 
Tính tương hỗ với các hệ thống phần mềm đóng 
Câu 2. Trình bày về OpenOffice 
Gợi ý 
OpenOffice.org (OOo) hay gọi tắt là OpenOffice là bộ trình ứng dụng văn phòng miễn 
phí, mã nguồn mở được xây dựng trên phiên bản StarOffice mã nguồn mở của Sun 
Microsystems. OpenOffice có thể chạy trên các hệ điều hành Windows (đòi hỏi phải có Java 
- 67 - 
Runtime Environment), Solaris và Linux. Phiên bản mới nhất của OpenOffice cho phép 
đọc/ghi các định dạng file của MS Office khá hoàn hảo. 
Câu 3. Trình bày những hiểu biết về IMS Content Package và những bước để thêm vào 
một Package 
Gợi ý 
IMS Content Packages là những tài nguyên được đóng gói theo những qui định cụ thể 
do đó các gói này có thể được sử dụng trong nhiều hệ thống khác nhau mà không cần phải 
chuyển đổi định dạng. Các phần mềm xác thực nội dung thường cung cấp các lựa chọn và 
phương thức đóng gói như vậy. Ta cso thể có các gói IMS Content từ các hệ thống CMS hoặc 
mua chúng từ những người phát triển phần mềm thứ ba. 
Đề số 8. 
Câu 1. Nêu những ưu điểm của phương pháp phát triển phần mềm mã nguồn mở so với 
phương pháp truyền thống. 
Gợi ý 
Giảm sự trùng lặp nguồn lực 
Tiếp thu kế thừa 
Quản lý chất lượng tốt hơn 
Giảm chi phí duy trì 
Câu 2. Trình bày về máy chủ DNS. 
Gợi ý 
DNS là từ viết tắt trong tiếng Anh của Domain Name System, là Hệ thống tên miền 
được phát minh vào năm 1984 cho Internet, chỉ một hệ thống cho phép thiết lập tương ứng 
giữa địa chỉ IP và tên miền. Hệ thống tên miền (DNS) là một hệ thống đặt tên theo thứ tự cho 
máy vi tính, dịch vụ, hoặc bất kì nguồn lực tham gia vào Internet. Nó liên kết nhiều thông tin 
đa dạng với tên miền được gán cho những người tham gia. Quan trọng nhất là, nó chuyển tên 
miền có ý nghĩa cho con người vào số định danh (nhị phân), liên kết với các trang thiết bị 
mạng cho các mục đích định vị và địa chỉ hóa các thiết bị khắp thế giới. 
Câu 3. Trình bày các loại Reports có trong Moodle. 
Gợi ý 
Log 
Current activity 
Activity report 
Participation reports 

File đính kèm:

  • pdfBài giảng Phát triển ứng dụng mã nguồn mở.pdf
Tài liệu liên quan