C# 시작하기
목차
C# 초급 문서에 오신 것을 환영합니다! 이 문서는 코딩 경험이 없는 초보자를 대상으로 작성된 C# 자습서입니다.
소프트웨어 기술을 아직 잘 모르는 사람이 C#을 시작하는 이유는 여러가지가 있습니다. 한 가지 예를 들면 게임 산업에서 많이 사용되는 Unity 툴은 C# 프로그래밍 언어를 지원하기 때문에 게임 제작자의 목표를 가지고 C#를 시작할 수 있습니다. 하지만 컴퓨터 관련 학교나 교육기관을 다니지 않고 C#을 배우는 것이 쉬운 일은 아닙니다. 컴퓨터로 무언가 결과물을 만들기 위해서는 코딩 실력 뿐만 아니라 컴퓨터에 대한 지식도 필요하기 때문입니다. 좀 더 구체적으로 게임이 실행되는 컴퓨터 하드웨어와 운영체제 환경에 대한 지식과 기술이 뒷받침되야 합니다.
기능적으로 코딩을 습득하는 것은 그리 오랜 시간이 걸리지 않습니다. 하지만 그 코드의 의미를 더 깊게 이해하며 응용까지 하는 것은 조금 더 시간이 걸립니다. 언어의 기초를 닦는 것은 시간이 걸리는 일이지만 그 지식과 기술의 가치는 시대가 지나도 그대로입니다. C#은 .NET 플랫폼의 핵심 언어로써 다른 훌륭한 언어들 처럼 소프트웨어 기술의 바탕을 기를 수 있는 언어입니다. 한국에서는 약간 다른 나라보다 사용률이 저조하지만 전세계 많은 사람들이 윈도우 운영체제를 쓰고 있고 오픈소스 정책으로 확장하기 때문에 여전히 전도 유망한 언어입니다.
C# 을 이해하는 키워드는 마이크로소프트, 윈도우 운영체제(서버와 데스크탑), .NET 플랫폼(.NET 테크놀러지), CLR 정도를 들 수 있습니다. 지금 당장 이런 개념을 몰라도 상관없습니다. 이 포스팅 시리즈에서 하나씩 학습방향을 가이드 할 것 입니다. 마이크로소프트의 공식 문서에 C#은 C Family (C 계열)라고 C언어 제품군에서 시작되었다고 하는데요. C언어와는 전혀 다른 생태계(eco system)에서 사용됩니다. C#은 마이크로소프트사가 2000년대 초반에 출시한 .NET(닷넷 – dotnet) 아키텍처 안의 핵심 구성 요소라고 할 수 있습니다.
첫번째 포스팅이니 복잡한 아키텍처에 대한 설명은 여기까지 하겠습니다. C#을 시작하기 위해 이 모든 것을 이해할 필요는 없습니다. 우선은 개발환경부터 세팅해보겠습니다.
C# 개발환경 세팅
C# 개발환경이지만 정확히는 .NET 플랫폼을 구축하는 것 입니다.
- 운영체제: 윈도우 10 이상
- CLR (.NET Core / .NET Framework)
- .NET SDK
.NET SDK 와 그밖의 .NET 개발도구들은 IDE 프로그램인 Visual Studio에서 설치할 수 있습니다. 다른 IDE나 에디터를 사용하려면 .NET SDK를 명령프롬프트에서 설치하는 방법도 있으나 여기서는 Visual Studio를 사용하겠습니다. 현재 2022 버전이 출시되어 있으며 커뮤니티 버전은 무료입니다. 지금은 Visual Studio가 .NET 플랫폼을 위한 전용 IDE처럼 사용되고 있습니다. 지난 수십년간의 레가시 코드 까지 지원하다 보니 엄청 무거워진 것도 사실입니다만 처음에 모든 SDK를 설치하지 않고 필요한 것을 선택해서 설치하면 어느 정도 용량이 관리가 됩니다(그래도 무겁긴 함;;)
아래 사이트에서 Visual Studio 를 다운로드 하여 설치합니다. (Visual Studio 2022 커뮤니티 버전)
최초 설치에 필요한 설정입니다. Visual Studio 에서는 .NET 뿐만 아니라 ASP.NET과 C++, Unity 용 도구 등 다양한 개발 환경을 추가로 설치할 수 있습니다. 여기서는 C#의 기초 학습을 위해서 .NET 데스트톱 개발 도구를 설치합니다. 하나의 도구는 용량도 꽤 차지하기 때문에 꼭 필요한 것들을 중심으로 설치하는 것이 좋습니다.
장시간 작업하는 경우 색테마를 어둡게 해주면 편안합니다. 사람마다 개인차가 있으니 적당히 선택합니다.
새로운 프로젝트를 시작해서 설치가 제대로 되었는지 확인해 보겠습니다. 시작 화면에서 새 프로젝트 만들기를 선택합니다. 비주얼 스튜디오는 인스톨러에서 설치한 템플릿을 선택하여 시작할 수 있습니다. C# -> Windows -> 콘솔을 선택합니다. 첫 프로젝트는 프로그래머의 전통에 따라 Hello World 로 시작할 것 입니다.
프로젝트 이름을 HelloWorld로 하고 다음을 클릭합니다. 위치는 솔루션이 저장되는 위치입니다. (소스코드와 오브젝트 파일, 실행파일 등이 저장된다)
현재 최신 버전을 설치했다면 추가 정보에 Framework .NET 6.0 이 선택되어 있을 것 입니다. .NET 6.0은 마이크로소프트의 통합 오픈소스 플랫폼으로 런타임이 포함된 SDK의 버전을 의미합니다. 구버전 .NET의 경우 호환성 차이가 있습니다. 과거 버전의 .NET Framework에 대해서는 CLR(공통 언어 런타임)이 다른 경우가 있는데 그런 부분들은 .NET 앱을 만들면서 차츰 알아가게 될 것이니 지금은 최신버전인 .NET 6.0을 선택합니다. (.NET 버전은 계속적인 업데이트가 있을 것입니다)
이제 만들기를 클릭하면 소스코드를 하나도 입력하지 않아도 아래처럼 콘솔앱의 기본 코드가 생성되어 있습니다. 바로 위의 초록색 화살표가 있는 HelloWorld를 클릭해서 실행합니다.
첫번째 프로젝트가 실행되면 이제 C# 프로그램을 제작할 개발환경이 설치된 것 입니다.
요약과 마무리
이 포스팅에서는 C#에 대해서 대략적인 설명을 하고 Visual Studio를 설치하여 개발환경을 준비했습니다. Hello World를 성공적으로 출력했다면 이제 C#의 기초를 학습할 준비를 갖춘 것 입니다.
C#은 빌게이츠가 MS를 경영하던 시절부터 상당히 공을 들여 개발한 플랫폼이고 20년 가까이 많은 발전과 또 변화가 있었습니다. 처음에는 윈도우 운영체제 중심이었지만 현재는 크로스 플랫폼 오픈소스 정책으로 개발되고 있어서 확장성이 좋아지고 있습니다. .NET의 역사가 길고 이 안에 많은 것을 담으려고 한 만큼 학습 시간이 다른 언어보다 조금 길 수 있습니다. (사람마다 편차가 있지만)
참고문서
https://docs.microsoft.com/ko-kr/visualstudio/get-started/csharp/?view=vs-2022
https://docs.microsoft.com/ko-kr/visualstudio/ide/quickstart-csharp-console?view=vs-2022