STUDY
개발문화와 오픈소스
Lim임
2025. 12. 9. 17:38
왜 오픈소스를 "오픈"했을까?
react도 node도 오픈소스임!!
리액트 is licensed under the MIT License
MIT라이선스에서 저작자만 밝혀줘라

OSI Open Source
GPL
:Free Software Foundation(자유 소프트웨어 제단)(시초,진심)-> GNU General Public License
:"어떤 목적으로, 형태로든 다~ 사용할 수는 있지만 사용할 때에는 코드를 모두 공개해야돼 강력한 조항
ex. Firefox, Linux, Git, MariaDB, WordPress
MIT
:license.txt
:소스코드에 대한 공개의무 등 의무사항 X
:아파치 라이센스, 버전 2.0, 저작권, copyright-> 소스코드 or notice.txt/copyright.txt
:bootstrap, react, angular, jQuery
ex. 안드로이드
BSD
:Barkeley Software Distribution(BSD)
:라이선스 및 저작권 표시 조건 => 인기가 많습니다.
오픈소스 라이선스의 핵심 특징 정리
오픈소스 라이선스는 크게 두 가지 축으로 나뉜다
- 자유도(허용 범위)
- 소스코드 공개 의무 여부
1. 퍼미시브(Permissive) 라이선스
규제가 가장 약함. 거의 “마음대로 써라” 타입.
대표 종류
- MIT
- Apache 2.0
- BSD
공통 특징
- 소스코드 공개 의무 없음
- 수정 후 재배포 가능
- 상업적 이용 가능
- 라이선스 및 저작권 표시만 유지하면 됨
- 다른 라이선스와의 호환성 높음
추가 특징
- Apache 2.0은 특허(특허권 보호) 조항 존재
→ 기업에서 선호
2. 카피레프트(Copyleft) 라이선스
“내 코드 사용하려면 너도 소스를 공개해!” 타입.
대표 종류
- GPL (v2, v3)
- LGPL
① GPL (Strong Copyleft)
특징
- 소스코드 공개 의무 매우 강함
- GPL 기반으로 만든 프로그램은 전체를 GPL로 공개해야 함
- 상업적 사용은 가능하지만 비공개 제품을 만들 수 없음
사용 시 주의
- 기업에서 거의 사용하지 않으려 하는 이유
→ 제품 전체가 GPL에 물려버림
② LGPL (Weak Copyleft)
특징
- 라이브러리용 라이선스
- 동적 링크로 사용할 경우 내 코드 전체 공개는 필요 없음
- 라이브러리 수정한 부분만 공개하면 됨
3. MPL / EPL (Weak Copyleft 계열)
GPL보다 약하지만 MIT보다는 규제가 있음.
공통 특징
- 파일 단위로 소스 공개 요구
(수정한 파일만 공개하면 됨) - 전체 프로젝트를 공개할 필요 없음
대표
- Mozilla Public License (MPL)
- Eclipse Public License (EPL)
정리 표
라이선스공개 의무상업적 이용특징
| MIT | 없음 | 가능 | 가장 유연, 최소 조건(저작권 표시) |
| Apache 2.0 | 없음 | 가능 | 특허 보호 제공 |
| BSD | 없음 | 가능 | MIT과 유사 |
| GPL | 전체 공개 | 가능 | 강한 카피레프트, 전체 GPL 요구 |
| LGPL | 수정 파일만 공개 | 가능 | 라이브러리용, 링크는 자유 |
| MPL | 수정한 파일만 공개 | 가능 | 파일 단위 공개 |
| EPL | 수정한 파일만 공개 | 가능 | 기업·Eclipse 기반에서 사용 |