오픈소스 라이브러리

Fuji ㅣ 2022. 11. 15. 00:35


오픈 소스 운동

오픈 소스란 누구나 코드를 들여다볼 수 있는 것을 의미하는데, 오픈소스 커뮤니티 안에서조차 오픈 소스에 대한 표현이 다양하다고 한다. 가령 오픈 소스 운ㄴ동을 가리키는 이름도 두 가지 버전이 있다.

 

  • 자유 소프트웨어 ( free software )
    리처드 스톨만 ( Richard Stallman)이 시작한 GNU 프로젝트에서는 자유 소프트웨어라는 용어를 사용한다. 여기서 자유는 사용료가 공짜라는 뜻이 아니다. 여기서 말하는 자유란 소스 코드를 보거나, 수정하거나, 재배포할 자유를 의미한다. 리처드 스톨만과 GNU 프로젝트에 대한 자세한 내용은 www.gnu.org를 참고하자 
  • 오픈소스 소프트웨어 (open-source software) 
    오픈소스 이니셔티브(open source initiative, OSI)에서 말하는 이 용어는 소스코드가 반드시 제공되는 소프트웨어를 의미한다. 이 소프트웨어도 마찬가지로 반드시 무료일 필요는 없다. 그리고 오픈소스 소프트웨어는 소스코드를 사용, 수정, 재배포할 자유를 반드시 보장할 필요가 없다는 점에서 자유 소프트웨어와 차이가 있다. 오픈소스 이니셔티브에 대한 자세한 내용은 www.opensource.org를  참고하자

 

오픈소스 프로젝트마다 적용하는 라이센스도 다양한 편이다. 대표적으로 GPL, Boost, BSD, CPOL, CC 라이센스 등이 있다. 아래 사이트에서 관련 오픈 소스 라이브러리를 찾을 수 있다.

 

 

 

그 외

오픈소스 라이브러리를 사용할 때는 상용 제품과 접근 방식이 다른 편이라 한다. 대부분 여가시간을 활용해서 개발된 것들이 많아서 누구나 개발하거나 기여하거나 버그를 수정할 수 있도록 소스 코드를 수정하는 권한도 대부분 열려있는 편인듯 하다.  하지만 회사에 속한 프로그래머라면 오픈소스 활동이 쉽지 않다고 한다. 오픈소스 활동은 매출과 직접적인 연관이 없기 때문이다. 하지만 오픈소스 활동을 하면서 회사 이름을 널리 알릴 수 있거나, 그 회사가 오픈소스 운동을 지지한다는 이미지를 줄 수는 있다. 물론 그런 근거로 회사에 설득해 그런 활동을 허락받거나 지원을 받아야 가능하지 않을까 생각이 든다.