소스 코드는 프로그램을 읽고 수정하는 데 쓰는 코드다. [[소프트웨어]]를 실행하는 결과물과 구분하며, 오픈 소스의 정의에서는 수정하기에 적합한 형태를 요구한다. ([오픈 소스 정의](https://opensource.org/osd)) - 파일을 볼 수 있다는 사실과 수정, 재배포할 권한은 다르다. 코드를 가져다 쓸 때는 함께 제공된 [[라이선스]]를 확인한다. ([소스 제공과 배포 조건](https://opensource.org/osd)) - 읽기 어렵게 일부러 난독화한 파일을 제공하는 것만으로 오픈 소스의 소스 코드 조건을 충족하지 않는다. 변환 전 원본과 [[빌드 스크립트]] 같은 재현에 필요한 자료를 구분한다. ([수정에 적합한 코드](https://opensource.org/osd)) - 예컨대 파이선의 .py 파일과 가져오기 과정에서 생기는 .pyc 캐시는 역할이 다르다. 캐시 파일은 코드를 읽고 고칠 원고를 대신해 관리할 대상으로 삼지 않는다. ([파이선의 컴파일된 모듈](https://docs.python.org/3/tutorial/modules.html#compiled-python-files)) ## 기타 등등 - 파이선은 가져온 모듈의 컴파일 결과를 `__pycache__` 폴더에 저장할 수 있다. [출처](https://docs.python.org/3/tutorial/modules.html#compiled-python-files) - 그 캐시 이름에는 파이선 버전 정보가 들어가므로 서로 다른 버전의 캐시가 함께 있을 수 있다. [출처](https://docs.python.org/3/tutorial/modules.html#compiled-python-files) #소프트웨어 #프로그래밍 #오픈소스