비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

비주얼 스튜디오는 프로그래머들이 가장 많이 쓰는 통합개발환경이지만 그만큼 잘 모르고 쓰는 도구이기도 합니다.

컴퓨터 관련 학과에 다닌다면 대학교에 들어와서 처음으로 만지는 전공 프로그램인데, 교수님들조차도 비주얼 스튜디오에 대해선 제대로 설명하지 않고 넘어가기 때문에 졸업하고 나서도 제대로 모르고 쓸 수 있습니다. (물론 교수님들은 강의 시간이 부족하니까 알아서 공부하라는겁니다)

솔루션과 프로젝트의 개념을 잘 알고 있으면 과제할 때도 편하고 나중에 자기만의 프로그램을 만들 때도, 그리고 다른 사람들이 작업한 코드에 투입될 때도 도움이 많이 됩니다.


비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

 프로젝트(Project)는 컴파일의 결과물로 하나의 실행파일 혹은 라이브러리 등을 만들어내는, 말 그대로 하나의 프로그램을 만드는 묶음입니다.

그렇다면 솔루션은 뭘까요? 솔루션(Solution)은 하나 이상의 프로젝트가 모인 집합이라고 볼 수 있습니다. 왜 여러 개의 프로젝트를 같이 모을 생각을 하게 된걸까요?

보통 특정 회사에서 누군가에게 “솔루션”을 제공한다는 것은 하나 이상의 제품을 한 번에 제공한다는 의미입니다. 프로그래밍 측면에서도 그렇습니다. 소형 프로젝트가 아닌 이상 여러 개의 실행 파일과 라이브러리를 만들어야 하는 것이 보통이며, 이것을 묶어 하나의 “솔루션”으로 관리하는 것이 여러 방면에서 이득이 될 수 있습니다.

비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

위의 그림은 일반적인 솔루션과 프로젝트의 모습입니다. 이 솔루션과 프로젝트에 관해 간단히 소개해드리자면, CPU 단위에서 처리할 수 있는 명령어들을 테스트할 목적으로 만들어진 솔루션이며 각각의 프로젝트는 각자의 분야에 관련된 명령어를 테스트하게 되어 있습니다.

이런 개념은 과연 비주얼 스튜디오에서만 제공하는 것일까요? 절대 아닙니다.

비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

[그림 출처]

위의 그림은 이클립스(Eclipse) 개발환경에서의 디렉토리 구조를 나타낸 것입니다. 이클립스에서는 워크스페이스(Workspace)와 그 안에 속하게 되는 프로젝트(Project)가 있습니다. 이클립스를 사용해보신 분들은 알겠지만 이클립스를 실행한 직후에 항상 이용 혹은 생성할 워크스페이스의 경로를 묻게 되어있습니다. 해당 워크스페이스에서 만들거나 추가한 프로젝트는 워크스페이스 단위로 관리됩니다.

비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

[그림 출처]

위의 그림은 인텔리제이(Intellij) 개발 환경에서의 디렉토리 구조를 나타낸 것입니다. 인텔리제이는 프로젝트(Project)와 그 안에 속하게 되는 모듈(Module)이 있습니다. 개발 환경마다 같은 개념을 다른 용어로 이용하기 때문에 헷갈릴 수 있어 아래와 같이 정리해봤습니다.


비주얼 스튜디오: 솔루션 <- 프로젝트

인텔리제이: 프로젝트 <- 모듈

이클립스: 워크스페이스 <- 프로젝트


이제 이해가 가시나요? 신입생 입장에서 조언을 드리자면 과제를 하는 입장에서는 한 주 단위의 과제 묶음이 솔루션이 되고 각각의 과제들을 프로젝트로 만들면 하나의 솔루션으로 과제를 관리할 수 있습니다.

다음 편에서는 실제로 솔루션과 프로젝트를 만들고 이를 활용하는 방법에 대해 설명하겠습니다.

공사중

개발 | C++

[Visual studio] 솔루션과 프로젝트

행운개발자 LuckyDeveloper 2019. 3. 1. 17:52

솔루션과 프로젝트의 차이

프로젝트란 하나의 실행 파일(exe)을 만들어 내기 위해서 필요한 여러 개의 소스 파일과 헤더 파일 등을 하나로 묶어 놓은 것을 말합니다. 

프로젝트 파일 : 프로젝트이름. vcproj

솔루션이란 여러 개의 프로젝트가 모인 것이며, 프로젝트를 생성하는 과정에서 프로젝트와 동일한 이름으로 자동 생성됩니다. 응용 프로그램마다 하나가 존재합니다. 

솔루션 파일 : 솔루션 이름.sln 

응용 프로그램은 아래의 사진에서 선택하는 것들입니다.

여러 개의 프로젝트를 하나의 솔루션으로 만들기 또는

이미 존재하는 솔루션에 프로젝트 추가하기

비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

저작자표시 비영리

'개발 | C++' 카테고리의 다른 글

(int++)++가 안되는 이유  (0)2019.02.18
strcpy, sizeof(char*)에 대한 고찰  (0)2019.02.18
C++기본 syntax는...  (0)2019.02.18

TagProject, solution, VisualStudio, visualstudip, 솔루션, 솔루션에프로젝트추가, 정의, 차이점, 추가, 프로젝트, 프로젝트 여러개, 하나의 솔루션

'개발 | C++' Related Articles

  • (int++)++가 안되는 이유 2019.02.18
  • strcpy, sizeof(char*)에 대한 고찰 2019.02.18
  • C++기본 syntax는... 2019.02.18

more

0 Comments

    댓글쓰기 폼

    이름 비밀번호

    Secret

    댓글

    코드만 있고 솔루션은 없을 때가 있다. 이럴 때 빈 프로젝트를 만들고 헤더 파일, 리소스 파일에 직접 코드를 넣어줘도 되지만 자동으로 위치에 맞게 넣어주는 방법이 있다. 해당 방법을 아래에 적어둔다.

    1. '파일' 의 '새로 만들기' 에서 '기존 코드의 프로젝트' 를 선택한다.

    비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

    아래와 같은 창이 뜨며 여기서 프로젝트 형식을 선택하면 된다. 보통의 c나 c++은 'Visual C++' 을 선택하면 된다.

    비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

    2. '프로젝트 파일 위치' 의 '찾아보기' 를 누른 후 코드가 있는 폴더를 선택한다.

    다음을 누르면 아래와 같이 창이 나오는데 '프로젝트 이름' 에는 생성할 프로젝트의 이름을 적으면 된다.

    비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

    '찾아보기'를 누르면 아래와 같이 폴더 선택을 할 수 있다. 코드가 들어 있는 폴더를 선택하자.

    비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

    3. '프로젝트 빌드 방법' 을 선택하고 다음을 누르고 마침을 클릭한다.

    본인은 콘솔이 나오는 게 아니고 바로 윈도우에서 프로그램이 실행되게끔 'Windows 애플리케이션 프로젝트' 를 선택하였다. 콘솔 프로그램으로 추가하려면 콘솔을 선택하면 된다.

    비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

    다음을 누르면 '릴리스 구성 설정 지정' 이 있는데 디버그 구성과 동일을 선택하면 된다. 나중에 릴리스할 때 다르게 하고 싶다면 나중에 다시 설정해줄 수 있다. 여기서 마침을 누르면 끝이다.

    비주얼 스튜디오 SLN 파일 - bijueol seutyudio SLN pail

    이렇게 기존 코드를 가지고 새로운 프로젝트를 생성하는 방법을 알아보았다. 프로그래밍을 배우고자 하는 사람들이 예제로 주어진 코드를 새로운 프로젝트를 생성 후 옮기는데 파일이 많으면 상당히 귀찮을 수밖에 없다. 물론 한 번에 기존 코드를 가져오는 방법도 있긴 있다. 이 방법은 여러 프로젝트의 코드를 한 번에 합치는 데 유용하다. 이는 다음에 포스팅하도록 하겠다.

    이 글이 도움이 되었기를 바랍니다.