본문 바로가기

Computer Science

'빌드'란?

# 빌드란?

작가들이 책을 쓸 때는 챕터마다 워드파일들을 만들고, 수많은 사진 및 참고자료들을 다루면서 작업을 하다가 이를 책으로 낼때는 PDF파일 하나로 묶어서 공개한다.

 

프로그래밍도 마찬가지이다. 소프트웨어는 보통 몇백줄 코드로 되는게 아니기 때문에 개발자가 작업하는 프로젝트는 일반적으로 수십, 수백개가 넘는 폴더와 파일들로 이루어져있다.

 

이중에는 개발자가 작성하는 코드파일들도 있고, 다른 곳에서 작성한 코드들(즉, 라이브러리들), 그리고 이미지나 기타 소프트웨어에 필요한 파일들이 포함된다.

 

소프트웨어의 특성마다 다르지만, 일반적으로는 이를 출시할 때에는 이들을 다른 형태로 변형 또는 압축해서 내보낸다.

이를 '빌드한다'라고 한다.

 

 

# 빌드 목적

빌드를 하는 목적과 이유는 다양하다.

윈도우의 .exe파일처럼 1) 사용자가 바로 실행할 수 있는 파일 하나로 제공하기 위함일 때도 있고, 2) 프로그래밍 코드들을 압축해서 전체 크기를 줄이거나 3) 다른 사람들이 가능한 코드를 못알아보도록 난독화하는 경우도 있다.

 

 

"컴파일 언어"의 경우, 당연히 컴파일을 해서 내보내야한다.

즉, 컴파일 언어로 만드는 소프트웨어는 빌드에 컴파일 작업이 포함되어있다.

 

때문에 프로그래밍 언어마다, 그리고 소프트웨어의 종류마다 빌드 결과물의 형태는 다양하다.

파일 하나로 압축되기도 하고, 많은 파일에 걸친 코드들이 더 적은 수의 파일들로 정리되기도 하고, 그냥 파일들의 형식과 내용마나 바뀌는 경우도 있다.

 

 

정리하자면, 작업하는 프로젝트 파일들을 출시하기 적합한 형태로 포장하는 일, 요리한 음식들로 도시락을 싸는 작업을 '빌드'라고 생각하면 된다.

 

 

참고영상: https://www.youtube.com/watch?v=GYmuQJiPeM4&t=180s