Nội Dung Chính
(Trang 15)
SAU BÀI HỌC NÀY EM SẼ:
• Trình bày được một số khái niệm và so sánh phần mềm nguồn mở với phần mềm thương mại; nêu được vai trò của phần mềm nguồn mở và phần mềm thương mại đối với sự phát triển của công nghệ thông tin.
• Làm quen với phần mềm chạy trên Internet.
Vào những năm 1970, trong một số trường đại học ở Mỹ đã xuất hiện việc chia sẻ mã nguồn để cùng phát triển phần mềm, dẫn tới sự ra đời của phần mềm nguồn mở -một xu hướng có ảnh hưởng lớn tới sự phát triển của công nghệ phần mềm sau này.
Theo em, lợi ích đối với cộng đồng trong việc chia sẻ mã nguồn là gì?
1. PHẦN MỀM NGUỒN MỞ
Hoạt động 1 Tìm hiểu các cách chuyển giao phần mềm
Cách thức chuyển giao phần mềm cho người sử dụng theo chiều hướng “mở dần" như sau: 3 phần mềm cho người sử dụng theo chi
1. Bán phần mềm dưới dạng mã máy.
2. Cho sử dụng phần mềm miễn phí có điều kiện hoặc không điều kiện, không cung cấp mã nguồn.
3. Cho sử dụng phần mềm tự do, cung cấp cả mã nguồn để có thể sửa, nâng cấp, phát triển và chuyển giao (phân phối) lại phần mềm.
Hãy thảo luận xem lợi ích của người dùng được tăng dần như thế nào theo hướng mở nói trên.
a) Phân loại phần mềm theo cách chuyển giao sử dụng
Các loại phần mềm tương ứng với ba cách thức chuyển giao trong Hoạt động 1 được gọi lần lượt là:
• Phần mềm thương mại (commercial software) là phần mềm để bán. Hầu hết các phần mềm thương mại là loại nguồn đóng để bảo vệ ý tưởng và chống sửa đổi. Phần mềm soạn thảo văn bản Microsoft Word và phần mềm chỉnh sửa ảnh Photoshop,.... là các ví dụ phần mềm thương mại.
(Trang 16)
• Phần mềm tự do (free software) là phần mềm không chỉ miễn phí mà còn được tự do sử dụng mà không phải xin phép. Phần mềm tự do có thể ở dạng mã máy hoặc mã nguồn.
Hình 3.1 cho thấy một phần của trang web cho phép tải phần mềm làm việc với các tệp pdf. Bản Acrobat Reader là phần mềm tự do ở dạng mã máy, chỉ có thể đọc, ghi chú và in văn bản. Nếu người dùng muốn có các tính năng cao hơn như soạn thảo, quét một ảnh thành một bản pdf, kí, theo dõi vết chỉnh sửa, chuyển định dạng.... thì phải mua bản thương mại Acrobat Pro DC.
Hình 3.1. Acrobat có bản tự do Acrobat Reader và bản thương mại Acrobat Pro DC
• Phần mềm nguồn mở (open-source software) là phần mềm được cung cấp cả mã nguồn đề người dùng có thể tự sửa đồi, cải tiến, phát triển, phân phối lại theo một quy định gọi là giấy phép được nêu dưới đây. Thông thường, phần mềm nguồn mở là tự do và không được bảo hành.
Một số phần mềm mã nguồn mở được giới thiệu trong bộ sách giáo khoa này có thể kể tới đó là Inkscape, GIMP, môi trường lập trình cho ngôn ngữ Python....
b) Giấy phép đối với phần mềm nguồn mở
Khi sử dụng mỗi loại phần mềm nói trên, người dùng cần tuân thủ các điều kiện người dùng c được phép sử dụng, thường được gọi là "giấy phép" với nghĩa của từ "license" trong tiếng Anh. Ví dụ, khi trả tiền cho mỗi giấy phép, phần mềm thương mại chỉ được phép cài trên một số lượng máy tính nhất định.
Hoạt động 2 Giấy phép đối với phần mềm nguồn mở
Theo quy định về bản quyền, các tác giả của phần mềm có quyền bảo vệ chống phần mềm bị sửa đồi gây phương hại đến uy tín và danh dự của tác giả. Nếu là người đầu tư, các tác giả còn giữ cả quyền tạo bản sao, sửa đồi, nâng cấp phần mềm, quyền chuyển giao sử dụng....
Em hãy so sánh quyền sử dụng phần mềm nguồn mở với quy định về bản quyền và cho biết một số điểm mâu thuẫn.
(Trang 17)
Chính vì sự mâu thuẫn giữa quy định về bản quyền và quyền sử dụng phần mềm nguồn mở mà cần có giấy phép cho phần mềm nguồn mở. Giấy phép sẽ cung cấp cho người dùng các quyền vốn bị cắm bởi các quy định bản quyền.
Giấy phép không chỉ đề cập đến quyền sử dụng mà còn liên quan đến nhiều vẫn đề khác như:
- Các tác giả có được miễn trừ bảo hành hay không, có bị kiện vì những sai sót của phần mềm hay không.
- Người sửa đổi phần mềm có bắt buộc phải công bố rõ các tác giả trước đó hay không, bản sửa đổi có phải công khai dưới dạng nguồn mở hay không.
Có nhiều loại giấy phép phần mềm nguồn mở, trong đó giấy phép công cộng GNU GPL (GNU General Public License) được áp dụng rộng rãi nhất. Nó có những quy định không chỉ đảm bảo quyền tiếp cận của mọi người đối với các phần mềm nguồn mở mà còn đảm bảo sự phát triển bền vững của phần mềm nguồn mở. Giấy phép GNU GPL 3.0 phát hành năm 2007 (xem www.gnu.org/licenses/gpl.html) có một số nội dung đáng chú ý sau:
- Được sao chép và phân phối phần mềm; có quyền yêu cầu trả phí cho việc chuyển giao đó nhưng phải thông báo rõ ràng về bản quyền gốc và thông báo miễn trừ trách nhiệm bảo hành.
- Được sửa đổi và phân phối bản sửa đồi với điều kiện phải công bố mã nguồn phần sửa đổi, nêu rõ đó là bản đã được thay đổi, chỉ rõ các thành phần được thay đổi; đồng thời phải áp dụng giấy phép GNU GPL cho chính phần thay đổi đó. Nói cách khác phần mềm có nguồn gốc từ việc sửa đổi một phần mềm nguồn mở theo GPL cũng phải là phần mềm nguồn mở theo GPL.
|
1. Em hãy cho biết ý nghĩa của yêu cầu 'người sửa đồi, nâng cấp phần mềm nguồn mở phải công bố rõ ràng phần nào đã sửa, sửa thế nào so với bản gốc".
2. Ý nghĩa của yêu cầu "phần mềm sửa đồi một phần mềm nguồn mở theo GPL cũng phải mở theo giấy phép của GPL” là gì?
(Trang 18)
2. VAI TRÒ CỦA PHẦN MỀM THƯƠNG MẠI VÀ PHẦN MỀM NGUỒN MỞ
Phần mềm nguồn mở đã trở thành cơ hội cho những ai muốn có những giải pháp phần mềm tốt với đầu tư thấp. Đến nay, hầu như lĩnh vực nào của tin học cũng có các phần mềm nguồn mở có thể thay thế được các phần mềm nguồn đóng. Bảng 3.1 là một số ví dụ về phần mềm nguồn mở và phần mềm thương mại cùng chức năng.
Bảng 3.1. Phần mềm thương mại và phần mềm nguồn mở có thể thay thế
Lĩnh vực | Phần mềm thương mại | Phần mềm nguồn mở cùng chức năng |
Phần mềm văn phòng | Word, Excel và PowerPoint (của Microsoft) | Writer, Calc và Impress (trong bộ OpenOffice) |
Hệ điều hành | Windows (của Microsoft) | Linux và các phiên bản (Ubuntu, Red Hat,...) |
IOS (cho iPhone, iPad) | Android (cho hầu hết các dòng điện thoại thông minh khác) | |
Hệ quản trị cơ sở dữ liệu | Oracle, SQL server (của Microsoft) | MySQL, PostGreSQL |
Phần mềm xử lí ảnh | Photoshop (của Adobe System) | GIMP |
Hoạt động 3 Vai trò của phần mềm thương mại và phần mềm nguồn mở
Hãy thảo luận xem phần mềm nguồn mở có thay thế hoàn toàn được phần mềm thương mại hay không? Tại sao?
- Phần mềm "đặt hàng" (phần mềm "may-đo") được thiết kế theo yêu cầu của từng khách hàng. Ví dụ phần mềm điều khiển một dây chuyền lắp ráp hay phần mềm đặt xe trên thiết bị di động của các hãng taxi là các ví dụ về phần mềm đặt hàng. Điều quan trọng là phần mềm đặt hàng không những được thiết kế chính xác theo yêu cầu, mà còn được bảo hành theo hợp đồng.
• Phần mềm "đóng gói” được thiết kế dựa trên những yêu cầu chung của nhiều người. Chúng được viết rất hoàn chỉnh và kèm theo công cụ cài đặt tự động giúp người dùng dễ sử dụng. Người bán không có trách nhiệm sửa chữa nâng cấp theo yêu cầu của từng người dùng nhưng có thể nâng cấp định kì. Phần mềm xử lí ảnh Photoshop, phần mềm soạn thảo văn bản Microsoft Word là các ví dụ về phần mềm thương mại đóng gói.
Rõ ràng là phần mềm nguồn mở không thể thay thế được cho phần mềm thương mại trong thực tế. Mỗi phần mềm nguồn mở đáp ứng nhu cầu chung của nhiều người, trong khi đó những nhu cầu riêng, vốn phong phú hơn rất nhiều so với những nhu cầu chung thì phần mềm "đặt hàng" mới có thể đáp ứng được.
Một điều quan trọng là chính các phần mềm thương mại mới đem lại nguồn tài chính chủ yếu đề duy trì các tổ chức làm phần mềm.
(Trang 19)
Cần lưu ý, phần mềm thương mại thường liên quan đến những giải pháp riêng của người cung cấp, nên người dùng dễ bị lệ thuộc vào nhà cung cấp cả về giải pháp cũng như hỗ trợ kĩ thuật.
Bảng 3.2. So sánh phần mềm thương mại và phần mềm nguồn mở
Yếu tố | Phần mềm thương mại nguồn đóng | Phần mềm nguồn mở |
Chi phí | Mất chi phí mua phần mềm và phí chuyển giao | Chỉ mất phí chuyển giao nếu có |
Hỗ trợ kĩ thuật | Có | Không, nhưng có thể được hỗ trợ từ cộng đồng |
Tính minh bạch | Khó kiểm soát những gì được cài cắm bên trong | Có thể kiểm soát được mã nguồn |
Sự phụ thuộc của người dùng | Bị phụ thuộc vào nhà cung cấp về giải pháp và hỗ trợ kĩ thuật | Được cộng đồng phát triển theo chuẩn chung, không phụ thuộc vào riêng ai |
1. Ưu điểm của phần mềm thương mại:
- Phần mềm dạng "đặt hàng" đáp ứng nhu cầu riêng và người dùng được hỗ trợ kĩ thuật.
- Phần mềm "đóng gói" có tính hoàn chỉnh cao, đáp ứng nhu cầu rộng rãi.
2. Ưu điểm của phần mềm nguồn mở: chi phí thấp, minh bạch, không bị phụ thuộc nhiều vào nhà cung cấp.
3. Vai trò của hai loại phần mềm:
- Phần mềm thương mại là nguồn thu nhập chính của các tổ chức, cá nhân làm phần mềm chuyên nghiệp, góp phần tạo ra thị trường phần mềm phong phú, đáp ứng các nhu cầu riêng của cá nhân, tổ chức và các nhu cầu chung của xã hội. cầu riên
- Phần mềm nguồn mở giúp những người có nhu cầu được sử dụng phần mềm dùng chung chất lượng tốt, ổn định với chi phí thấp.
1. Cho ví dụ về phần mềm đóng gói và phần mềm đặt hàng. Ưu điểm của phần mềm thương mại là gì?
2. Cho ví dụ về một phần mềm thương mại và một phần mềm nguồn mở có thể thay thế. Ưu điểm của phần mềm nguồn mở là gì?
3. PHẦN MỀM CHẠY TRÊN INTERNET
Hoạt động 4 Phần mềm chạy trên Internet
Phần mềm chạy trên Internet là gì? Em hãy cho một ví dụ về phần mềm như vậy. Hãy nêu ưu điểm của phần mềm chạy trên Internet.
(Trang 20)
Phần mềm chạy trên Internet được hiểu là phần mềm cho phép sử dụng qua Internet mà không cần phải cài đặt vào máy.
Phần mềm chạy trên Internet (phần mềm trực tuyến) rất phổ biến, chẳng hạn phần mềm mạng xã hội, thư điện tử và các ứng dụng mua sắm trên mạng.... Lợi ích của các phần mềm này là có thể sử dụng ở bất cứ đâu, bất cứ nơi nào, bất cứ máy tính nào miễn là có kết nối Internet, chi phí rẻ hoặc không mất phí.
Ví dụ: Google cung cấp nhiều phần mềm trực tuyến, trong đó phần mềm Google Docs giúp soạn thảo văn bản, Google Sheets giúp tạo lập các bảng tính, Google Slides giúp trình chiếu trực tuyến có thể thay thế cho Word, Excel hay PowerPoint của Microsoft.
Lưu ý: Đề sử dụng được các phần mềm trực tuyến của Google, cần có tài khoản Google và truy cập trang docs.google.com, sheets.google.com, slides.google.com.
Hình 3.2. Truy cập Google Docs
Ví dụ khi truy cập trang docs.google.com để soạn thảo văn bản, em sẽ nhận được trang màn hình, phía trên là các mẫu văn bản, phía dưới là các văn bản của em đã soạn từ trước, nếu có. Nếu muốn sửa văn bản đã có thì chỉ cần nháy chuột chọn văn bản đó, còn nếu muốn tạo mới thì nháy chuột chọn biểu tượng + như Hình 3.2. Em có thể soạn thảo tương tự như Word. Văn bản được lưu tự động trên không gian lưu trữ của em trên đám mây của Google.
1. Em hãy nêu những ưu điểm của phần mềm chạy trên Internet.
2. Em hãy nêu tên một phần mềm trực tuyến khác với các phần mềm đã nêu trong bài.
LUYỆN TẬP
2. Phần mềm ở các trạm ATM (rút tiền tự động) có phải là phần mềm trực tuyến không?
VẬN DỤNG
1. Em hãy tìm trên Internet và cho biết tên một số phần mềm đồ hoạ nguồn mở và một số phần mềm đồ hoạ thương mại.
2. Nói chung, các môi trường lập trình trên ngôn ngữ Python đều không có chức năng biên dịch đề chuyền mã nguồn thành mã máy. Các chương trình Python đều ở dạng mã nguồn. Liệu có thể coi mọi phần mềm viết bằng Python đều là phần mềm nguồn mở hay không?
Bình Luận
Để Lại Bình Luận Của Bạn