라이선스
오픈 소스에는 보호와 제약 사항들이 존재합니다. 이를 라이선스라고 합니다.
라이선스의 의무 사항을 준수하는 선에서 사용과 수정, 배포가 자유롭습니다.
Licensor
라이선서(Licensor)는 소프트웨어를 창작하고 이에 대한 배타적 독점 사용권을 가지고 있는 저작권자를 말합니다.
Licensee
라이선시(licensee)는 소프트웨어를 사용하는 사용자를 말합니다. 일반적으로 최종 사용자라고 부르기도 합니다.
계약관계
라이선스는 라이선서(Licensor)와 라이선시(licensee) 간의 계약입니다. 소프트웨어를 사용 범위를 규정하고 이에 대한 대가를 지급할지 여부도 같이 결정합니다. 라이선스는 계약에 따라 다양하게 작성할 수 있습니다.
유료 라이선스
1980년 후반부터 대부분의 소프트웨어는 배타적 형태로 판매되기 시작하였습니다. 이를 사유(prorietary) 또는 상용(commercial) 소프트웨어라고 부릅니다. 이러한 소프트웨어를 사용하기 위해서 비용을 지불하여야 합니다.
소스 코드는 컴파일된 파일 형태로 바로 컴퓨터에서 실행할 수 있으며, 소스 코드에 대한 접근은 엄격히 제한되었습니다. 수정이나 재배포를 허용하지 않습니다.
상용 소프트웨어를 사용하기 위해서는 최종 사용자 라이선스(End user License Agreement) 권한을 얻어야 합니다. 이는 유료 라이선스로 사용 허가권(Proprietary License)이라고 합니다.
오픈 소스 라이선스
유료 라이선스의 반대로 오픈 소스 라이선스가 있습니다. 오픈 소스 라이선스에는 비독점적 사용을 허용합니다. 오픈 소스 또한 다양한 라이선스가 존재합니다. 일부 라이선스는 상업적 이용의 허용도 같이 규정합니다.
대표적인 오픈 소스로 공공 도메인 소프트웨어가 있습니다. 상용 소프트웨어와 달리 소스 코드가 공개되어 있습니다.
의무 사항
자유 소프트웨어(Free and Open Source Software, FOSS)는 누구나 자유롭게 사용할 수 있도록 저작권자가 소스 코드를 공개한 것을 말합니다. 오픈 소스도 저작물로 지적 재산권으로 보호가 됩니다. 대신 오픈 소스에는 라이선스 의무 사항이 명시되어 있습니다. 라이선스의 의무 사항도 같이 준수해야 합니다. 의무 사항을 유지하는 한도 내에서 누구나 코드를 수정하고 재배포할 수 있습니다.
오픈 소스의 의무 사항은 적용되는 시점에 차이가 있습니다. 개인적인 사용을 하는 경우에는 의무 사항이 적용되지 않습니다. 하지만 오픈 소스가 포함되거나 링크된 코드를 배포할 경우 의무 사항들이 적용됩니다.
오픈 소스는 여러 부작용이 발생하기도 합니다. 임의로 원 저작자의 이름을 지우거나, 자기 제품으로 둔갑시키는 경우도 있습니다. 이러한 이유로 라이선스의 의무 사항이 강화되는 측면도 발생합니다.
프리웨어, 셰어웨어
프리웨어와 셰어웨어는 공공 도메인과 유사하게 재배포를 허용하는 소프트웨어입니다. 하지만 오픈 소스와 달리 소스 코드를 공개하지 않기 때문에 수정할 수는 없습니다.
- 셰어웨어(shareware)는 비용을 지불하지 않고, 일정기간동안 또는 한정된 기능만을 사용하도록 허가한 제품입니다.
- 프리웨어(freeware)는 비용을 지불하지 않고도 모든 기능을 사용할 수 있는 제품을 말합니다.
애드웨어, 프리웨어, 셰어웨어와 같은 소프트웨어는 무료로 배포되지만, 소스 코드의 공개가 아닌 바이너리 파일만 배포되기 대문에 공개 SW로 분류하지 않습니다.
깃교과서
버전 관리 시스템의 이해와 설치부터 커밋, 브랜치, 임시 처리, 병합, 복귀, 서브모듈, 태그까지
깃, 소스트리, 깃허브로 실습하며 기본기를 탄탄하게 다진다!