Phần mềm mã nguồn mở là gì? Tất cả những điều bạn nên biết – VinBigdata – Blog

Related Articles

Mã nguồn mở thường được lưu trữ trong kho lưu trữ công cộng và được chia sẻ công khai. Bất kỳ ai cũng có thể truy cập kho lưu trữ để sử dụng mã một cách độc lập hoặc đóng góp các cải tiến về thiết kế và chức năng của dự án tổng thể.

Mã nguồn mở thường được lưu trữ trong kho lưu trữ công cộng và được chia sẻ công khai.Mã nguồn mở thường được lưu trữ trong kho lưu trữ công cộng và được chia sẻ công khai.

Phần mềm nguồn mở là gì?

Phần mềm nguồn mở ( Open source software – OSS ) là phần mềm được phân phối cùng với mã nguồn, do đó, luôn sẵn sàng chuẩn bị so với việc sử dụng, sửa đổi và san sẻ quyền truy vấn .Mã nguồn là một phần của phần mềm mà hầu hết người dùng không khi nào thấy. Đó là mã được những lập trình viên máy tính thiết lập để trấn áp hoạt động giải trí của một chương trình hoặc ứng dụng. Các lập trình viên có quyền truy vấn vào mã nguồn, triển khai những biến hóa chương trình bằng cách thêm hoặc sửa chữa thay thế những phần trong đó. OSS thường gồm có một giấy phép được cho phép những lập trình viên sửa đổi phần mềm để tương thích nhất với nhu yếu của họ và trấn áp cách phần mềm hoàn toàn có thể được phân phối .

Lịch sử của phần mềm mã nguồn mở

Ý tưởng về việc cung cấp mã nguồn có sẵn và miễn phí được đề xuất từ năm 1983 bởi Richard Stallman, một lập trình viên tại MIT. Stallman tin rằng lập trình viên nên được trao quyền truy cập vào phần mềm để sửa đổi nó theo ý muốn, mục tiêu là nhằm tìm hiểu và từng bước cải thiện phần mềm sao cho tối ưu nhất. Stallman bắt đầu phát hành code miễn phí theo giấy phép của riêng mình, được gọi là GNU Public License. Cách tiếp cận và tư tưởng của Stallman đã đặt tiền đề cho sự hình thành của Sáng kiến ​​Nguồn mở (Open Source Initiative) vào năm 1998.

Phần mềm mã nguồn mở hoạt động như thế nào?

Mã nguồn mở thường được tàng trữ trong kho tàng trữ công cộng và được san sẻ công khai minh bạch. Bất kỳ ai cũng hoàn toàn có thể truy vấn kho tàng trữ để sử dụng mã một cách độc lập hoặc góp phần những nâng cấp cải tiến về phong cách thiết kế và công dụng của dự án Bất Động Sản toàn diện và tổng thể .OSS thường đi kèm với giấy phép phân phối. Giấy phép này gồm có những lao lý xác lập cách những nhà tăng trưởng hoàn toàn có thể sử dụng, điều tra và nghiên cứu, sửa đổi và quan trọng nhất là phân phối phần mềm. Theo Synopsys Black Duck ® KnowledgeBase, năm trong số những giấy phép thông dụng nhất là :

  • MIT License
  • GNU General Public License (GPL) 2.0 — Giấy phép này nghiêm ngặt hơn và yêu cầu các bản sao của code đã sửa đổi phải được cung cấp để sử dụng công khai
  • Apache License 2.0
  • GNU General Public License (GPL) 3.0
  • BSD License 2.0 (3 điều khoản, Mới hoặc Sửa đổi) 

Khi mã nguồn được thay đổi, OSS phải thông báo những thay đổi đó, cũng như các phương pháp đã được sử dụng. Tùy thuộc vào các điều khoản cấp phép, phần mềm phát sinh từ những sửa đổi này có thể sẽ phải cung cấp miễn phí trong một số trường hợp.

Phần mềm mã nguồn mở không chứa lỗi?

“ Is OSS bug-free ? ” / “ Phần mềm mã nguồn mở không hề có lỗi ? ” Câu vấn đáp là không. Với việc nhiều bên thực thi những sửa đổi và nâng cấp cải tiến, phần mềm mã nguồn mở không hề tránh khỏi những lỗ hổng về chất lượng, hiệu suất và bảo mật thông tin. Tuy nhiên, sự tham gia của số lượng rất lớn những lập trình viên trên toàn quốc tế cũng có nghĩa là những lỗi này sẽ được xác lập và sửa chữa thay thế nhanh hơn .

Bất kể loại phần mềm nào — mã nguồn mở hay thương mại — đều sẽ tồn tại các lỗ hổng về mã. Sự khác biệt chính là ai chịu trách nhiệm sửa lỗi; đối với phần mềm thương mại, nhà cung cấp chịu trách nhiệm, trong khi đó, người tiêu dùng chịu trách nhiệm về phần mềm nguồn mở. 

Phần mềm mã nguồn mở & phần mềm mã nguồn đóng: Khác biệt là gì?

Tiêu chí Phần mềm mã nguồn mở Phần mềm mã nguồn đóng
Giá thành Miễn phí truy cập và sử dụng Chi phí thay đổi tùy theo quy mô của phần mềm.
Quyền tùy chỉnh Hoàn toàn có thể tùy chỉnh nhưng phụ thuộc vào giấy phép nguồn mở.  Các yêu cầu thay đổi phải được gửi đến công ty bán phần mềm. Điều này bao gồm các bản sửa lỗi, tính năng và cải tiến.
Trải nghiệm người dùng Trải nghiệm người dùng thường không cao như đối với phần mềm mã nguồn đóng. Tuy nhiên, điều này phụ thuộc vào mục tiêu của dự án và năng lực của đơn vị duy trì. Thân thiện hơn với người dùng. Trải nghiệm người dùng được để cao, bởi đây là sản phẩm vì lợi nhuận 
Chính sách hậu mãi Một số phần mềm mã nguồn mở rất phổ biến (ví dụ: OSS do Red Hat hoặc SUSE phân phối) có nhiều hỗ trợ. Nếu không, người dùng có thể tìm trợ giúp thông qua các diễn đàn hoặc email. Đội ngũ hỗ trợ luôn sẵn sàng. Mức độ dịch vụ khả dụng tùy thuộc vào thỏa thuận mức dịch vụ (SLA).
Bảo mật Mã nguồn được mở để mọi người cùng xem xét, phát hiện và giảm thiểu nguy cơ tồn tại các lỗi. Tuy nhiên, điều này không loại trừ một số lỗ hổng bảo mật có thể gây ra rủi ro đáng kể.  Vì mã nguồn được đóng nên việc phát hiện lỗi có những giới hạn nhất định và các nhà phát triển có trách nhiệm khắc phục các rủi ro bảo mật.
Vendor lock-in Không có vendor lock-in về chi phí đi kèm. Việc tích hợp vào hệ thông có thể tạo ra ràng buộc kĩ thuật sau này. Trong hầu hết các trường hợp, có nhiều khoản đầu tư lớn vào các phần mềm độc quyền. Việc chuyển sang một nhà cung cấp khác hoặc một giải pháp mã nguồn mở có thể gây ra tốn kém về chi phí
Mức độ phổ biến Một số giải pháp mã nguồn mở rất phổ biến và thậm chí còn dẫn đầu thị trường (ví dụ: Linux, Apache). Trong một số ngành, phần mềm độc quyền phổ biến hơn, đặc biệt nếu nó đã có mặt trên thị trường trong nhiều năm.
Sự tham gia của cộng đồng Bản chất của phần mềm mã nguồn mở là cho phép cộng đồng tham gia phát triển, đánh giá, phê bình và cải tiến phần mềm. Cộng đồng khép kín.
Phát triển tính năng mới Người dùng có thể cải tiến hay phát triển tính năng mới nếu cần Chủ sở hữu phần mềm chịu trách nhiệm phát triển tính năng

So sánh phần mềm mã nguồn mở và phần mềm mã nguồn đóng

Ưu và nhược điểm của phần mềm mã nguồn mở

Ưu điểm

  • Phần mềm mã nguồn mở là hoàn toàn miễn phí
  • Phần mềm mã nguồn mở có khả năng linh hoạt cao, các nhà phát triển có thể kiểm tra hoạt động của mã và thực hiện các thay đổi về tính năng để phù hợp hơn với nhu cầu riêng của họ.
  • Mã nguồn mở mang tính ổn định; có thể được sử dụng cho các dự án dài hạn.
  • Mã nguồn mở thúc đẩy đổi mới, sáng tạo. Các lập trình viên có thể sử dụng mã có sẵn để cải thiện phần mềm và thậm chí đưa ra những đổi mới của riêng họ.
  • Mã nguồn mở được liên tục sửa đổi và cải tiến bởi cộng đồng cùng tham gia phát triển. 
  • Mã nguồn mở mang tới cho các lập trình viên một cơ hội học tập tuyệt vời. Bởi mã nguồn mở có thể truy cập công khai, sinh viên do đó dễ dàng nghiên cứu, học cách phát triển phần mềm, tiếp nhận nhận xét, đánh giá từ những người khác, đồng thời chia sẻ những lỗi gặp phải để tránh việc lặp lại các lỗi tương tự.

Nhược điểm

  • Mã nguồn mở có thể khó sử dụng, khó thiết lập và thiếu một giao diện thân thiện với người dùng.
  • Mã nguồn mở có thể gây ra các vấn đề về tính tương thích. Khi lập trình phần cứng độc quyền với OSS, thường cần có các trình điều khiển chuyên biệt chỉ có sẵn từ nhà sản xuất phần cứng.
  • Phần mềm mã nguồn mở có thể đặt ra các vấn đề về trách nhiệm pháp lý. Không giống như phần mềm thương mại, được kiểm soát hoàn toàn bởi nhà cung cấp, mã nguồn mở hiếm khi có bất kỳ bảo hành, trách nhiệm pháp lý hoặc bồi thường vi phạm nào. Điều này khiến người dùng của phần mềm mã nguồn mở có trách nhiệm duy trì việc tuân thủ các nghĩa vụ pháp lý.

Nhằm thôi thúc san sẻ tài liệu y tế, hướng tới thiết kế xây dựng tiền đề tăng trưởng cho hội đồng Trí tuệ tự tạo và Khoa học tài liệu, VinBigdata quyết định hành động mở hàng loạt mã nguồn của VinDr Lab – phần mềm gán nhãn dữ liệu y tế cho hội đồng. VinDr Lab là phần mềm mã nguồn mở được cho phép quản trị và gán nhãn dữ liệu ảnh y tế. Phần mềm được VinBigdata tăng trưởng để lược bỏ những khó khăn vất vả mà những kỹ sư, tổ chức triển khai gặp phải trong quy trình thiết kế xây dựng những giải pháp y tế ứng dụng Trí tuệ tự tạo. Người dùng trọn vẹn hoàn toàn có thể tùy chỉnh mã nguồn để ship hàng những mục tiêu riêng của tổ chức triển khai, cá thể. Cộng đồng chăm sóc hoàn toàn có thể truy vấn tại : https://github.com/vinbigdata-medical/vindr-lab

More on this topic

Comments

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Advertismentspot_img

Popular stories