상용과 오픈 소스


코드를 작성하고 새로운 소프트웨어를 개발할 때 우리는 자연적으로 저작권을 부여받게 됩니다.


대가 지급


소프트웨어는 지적재산권에 의해서 보호를 받습니다. 원칙적으로 소프트웨어는 저작권자만 독점 사용 권리를 갖습니다. 저작권은 임의로 사용할 수 없으며 이에 대한 대가를 지불하여야 합니다.

하지만 창작자가 독점적 저작권을 배제하여 공공의 대상을 상대로 사용을 허락한 오픈 소스도 존재합니다. 이를 구별하는 관점은 크게 3가지입니다.

  • 커뮤니티
  • 소프트웨어 개발
  • 비즈니스

이 3가지 관점은 오픈 소스와 상용 소프트웨어의 접근 방식에 차이점을 가지게 됩니다. 소프트웨어 저작권은 다른 사람들도 사용할 수 있도록 대여 형식으로 조건부 허락합니다. 이와 관련하여 유료와 무료로 구분합니다.


상용 소프트웨어


상용 소프트웨어는 시장 요구에 의해서 제작된 제품입니다. 특정한 사용자를 대상으로 하며 사용에 대한 비용을 지급하여야 합니다. 상용 소프트웨어의 특징은 사용자 요구 사항에 맞추어 기능을 추출하고, 설계가 이루어집니다. 주로 기업에 의해서 주도되고, 고객에 대한 높은 수준의 제품 제공하며 기술을 지원합니다.


오픈 소스


오픈 소스의 공통된 점은 한사람의 아이디어에서 시작되었다는 것입니다. 상용 소프트웨어와 달리 커뮤니티에 의해서 자발적 수행된 결과를 반영하는 것이 특징입니다. 오픈 소스는 비용을 지불하지 않고도 사용할 수 있습니다. 대신 라이선스가 존재하며 이를 유지할 의무가 있습니다.

오픈 소스는 아이디어의 독창성과 파급으로 인하여 전체에 확산됩니다. 오픈 소스는 커뮤니티 주도 하에 개발되기 때문에 속도가 느린 단점이 있습니다. 그리고 배포(release)가 잦은 특징이 있습니다. 대신 오랫동안 프로젝트가 유지되고 존재합니다.



깃교과서

버전 관리 시스템의 이해와 설치부터 커밋, 브랜치, 임시 처리, 병합, 복귀, 서브모듈, 태그까지
깃, 소스트리, 깃허브로 실습하며 기본기를 탄탄하게 다진다!