Định nghĩa và ví dụ về phần mềm nguồn mở
Scary Teacher 3D Miss T - The Clumsy Mom Funniest with Nick & Tani Prank - BuzzFamily
Mục lục:
- Tiêu chí phần mềm nguồn mở
- Giấy phép
- Phần mềm nguồn mở so với phần mềm thương mại
- Phần mềm nguồn mở so với phần mềm miễn phí
- Ưu điểm của phần mềm nguồn mở
- Các loại phần mềm nguồn mở phổ biến
- Phần mềm và nhà phát triển nguồn mở
- Điểm mấu chốt
Phần mềm nguồn mở (OSS) là bất kỳ loại phần mềm máy tính nào được phân phối với mã nguồn có sẵn để sửa đổi. Điều đó có nghĩa là nó thường bao gồm giấy phép cho các lập trình viên thay đổi phần mềm theo bất kỳ cách nào họ chọn: Họ có thể sửa lỗi, cải thiện chức năng hoặc điều chỉnh phần mềm cho phù hợp với nhu cầu của họ.
Tiêu chí phần mềm nguồn mở
Sáng kiến nguồn mở (OSI), một tổ chức phi lợi nhuận toàn cầu được thành lập năm 1998, hoạt động như một cơ quan hàng đầu về OSS. Định nghĩa của nó về phần mềm nguồn mở bao gồm 10 tiêu chí, liên quan đến các vấn đề như:
- Phân phối lại phần mềm
- Tính sẵn sàng và toàn vẹn của mã nguồn
- Phân phối và tài sản của giấy phép
- Tác phẩm phái sinh
- Chống phân biệt đối xử
Giấy phép
Các giấy phép khác nhau cho phép lập trình viên sửa đổi phần mềm với các điều kiện khác nhau được đính kèm. Theo Black Duck KnowledgeBase, một cơ sở dữ liệu của khoảng hai triệu dự án nguồn mở, năm trong số các giấy phép phổ biến nhất là:
- Giấy phép MIT
- Giấy phép Công cộng GNU (GPL) 2.0
- Giấy phép Apache 2.0
- Giấy phép Công cộng GNU (GPL) 3.0
- Giấy phép BSD 2.0 (3 điều khoản, mới hoặc sửa đổi)
Khi bạn thay đổi mã nguồn, OSS yêu cầu bao gồm những gì bạn đã thay đổi cũng như các phương thức của bạn. Phần mềm được tạo sau khi sửa đổi mã có thể hoặc không được cung cấp miễn phí.
Phần mềm nguồn mở so với phần mềm thương mại
Phần mềm có sẵn trên thị trường, còn gọi là phần mềm thương mại hoặc độc quyền, không cho phép truy cập vào mã nguồn của nó vì phần mềm này là tài sản trí tuệ của người khác. Do đó, người dùng thường trả tiền cho nó. OSS, mặt khác, là một nỗ lực hợp tác; Phần mềm được chia sẻ sở hữu trí tuệ trong số tất cả những người đã giúp phát triển hoặc thay đổi nó.
Phần mềm nguồn mở so với phần mềm miễn phí
Mặc dù các thuật ngữ thường được sử dụng thay thế cho nhau, OSS hơi khác so với phần mềm miễn phí. Cả hai đều đối phó với khả năng tải xuống và sửa đổi phần mềm mà không bị hạn chế hoặc tính phí. Tuy nhiên, phần mềm miễn phí, một khái niệm được phát triển vào những năm 1980 bởi một nhà nghiên cứu khoa học máy tính MIT, Richard Stallman, được định nghĩa bởi bốn điều kiện, như được nêu ra bởi Tổ chức Phần mềm Tự do phi lợi nhuận. "Bốn quyền tự do" này nhấn mạnh khả năng người dùng sử dụng và thưởng thức phần mềm khi họ thấy phù hợp.
Ngược lại, các tiêu chí OSS, mà Sáng kiến nguồn mở đã phát triển một thập kỷ sau đó, nhấn mạnh hơn vào việc sửa đổi phần mềm và hậu quả của việc thay đổi mã nguồn, cấp phép và phân phối.
Rõ ràng, hai cái chồng chéo lên nhau; một số người sẽ nói rằng sự khác biệt giữa OSS và phần mềm miễn phí mang tính triết học nhiều hơn là thực tế. Tuy nhiên, không nên nhầm lẫn với phần mềm miễn phí. Phần mềm miễn phí thường đề cập đến phần mềm độc quyền mà người dùng có thể tải xuống miễn phí, nhưng mã nguồn của họ không thể thay đổi.
Ưu điểm của phần mềm nguồn mở
Mặc dù thiếu chi phí là một lợi thế chính, OSS có một số lợi ích bổ sung:
- Chất lượng của nó có thể được cải thiện dễ dàng và đáng kể khi mã nguồn của nó được truyền qua, kiểm tra và sửa lỗi.
- Nó cung cấp một cơ hội học tập có giá trị cho các lập trình viên. Họ có thể áp dụng các kỹ năng cho các chương trình phổ biến nhất hiện nay.
- Nó có thể an toàn hơn phần mềm độc quyền vì lỗi được xác định và sửa chữa nhanh chóng.
- Vì nó thuộc phạm vi công cộng và liên tục được cập nhật, nên có rất ít khả năng nó có thể trở nên không khả dụng hoặc nhanh chóng bị lỗi thời là một điểm cộng quan trọng cho các dự án dài hạn.
Các loại phần mềm nguồn mở phổ biến
Các công nghệ nguồn mở đã giúp thiết lập phần lớn internet. Hơn nữa, nhiều chương trình được sử dụng hàng ngày dựa trên các công nghệ nguồn mở. Các trường hợp điển hình: Hệ điều hành Android và Apple Apple OS X được dựa trên các công nghệ nguồn mở và hạt nhân Unix / BSD tương ứng.
Phần mềm nguồn mở phổ biến khác là:
- Trình duyệt web Firefox của Mozilla
- Ứng dụng email Thunderbird
- Ngôn ngữ kịch bản PHP
- Ngôn ngữ lập trình Python
- Máy chủ web Apache
Phần mềm và nhà phát triển nguồn mở
Các dự án OSS là các cơ hội hợp tác giúp cải thiện các kỹ năng và xây dựng các kết nối trong lĩnh vực này. Các lĩnh vực mà các nhà phát triển có thể làm việc bao gồm:
- Công cụ truyền thông. Email, nhắn tin thời gian thực, diễn đàn và wiki giúp các nhà phát triển tìm giải pháp hoặc đưa ra ý tưởng lẫn nhau.
- Hệ thống kiểm soát sửa đổi phân tán. Khi nhiều nhà phát triển ở các vị trí địa lý khác nhau sửa đổi dữ liệu và tệp, các hệ thống này sẽ quản lý các phiên bản và cập nhật khác nhau.
- Trình theo dõi lỗi và danh sách nhiệm vụ. Các tính năng này cho phép các dự án quy mô lớn giám sát các vấn đề và theo dõi các bản sửa lỗi của chúng.
- Công cụ kiểm tra và gỡ lỗi. Các tính năng này tự động kiểm tra trong quá trình tích hợp hệ thống và gỡ lỗi các chương trình khác.
Điểm mấu chốt
Phần mềm nguồn mở là một phần mềm thay thế cho phần mềm độc quyền. Tham gia vào một dự án OSS có thể là một con đường để xây dựng sự nghiệp phát triển phần mềm, cho phép các lập trình viên trau dồi kỹ năng của họ bằng cách làm việc trên các chương trình phần mềm lớn nhất trên thế giới. Facebook, Google và LinkedIn đều phát hành OSS, vì vậy các nhà phát triển có thể chia sẻ kiến thức, đổi mới giải pháp và đóng góp cho các sản phẩm chức năng ổn định.
Nơi tìm phần mềm nguồn mở và miền công cộng
Tìm hiểu sự khác biệt giữa các ứng dụng nguồn mở và phần mềm miền công cộng và cách các ứng dụng nguồn mở không thuộc phạm vi công cộng.
Mã nguồn mở so với các ứng dụng phần mềm miền công cộng
Phần mềm nguồn mở cho phép người dùng truy cập và thay đổi mã nguồn của chương trình. Các ứng dụng này không thuộc phạm vi công cộng.
Nguồn nhân lực là gì? (Định nghĩa và tài nguyên)
Một nguồn nhân lực là một nhân viên có chức năng trong một tổ chức. Tìm hiểu thêm về con người, sự nghiệp và các nguồn lực để giúp bạn.