[C#] 자바에서 C#으로 변화하는 과정... Visual Studio 처음 쓰기
안녕하시렵니까?
시원해진 날씨에 기분이 굉장히 좋은 09월입니다.
인생은 참으로 알수 없죠?
자바를 하다가 C를 하다가 jsp를 하다가 react를 하니 말입니다.
본 글은 java, react를 다루다가 c#을 해야하는 분들중
완전 초보자 분들께 추천드리는 글입니다.
그럼 지금부터 시작하겠습니다.
우선 vs를 깔아야 겠죠?
처음 VS를 깔고 새 프로젝트 만들기를 눌러줍니다.
그 후 콘솔 앱을 더블 클릭하시고,
프로젝트 이름은 Hello라는 이름으로 하고 위치는 아무렇게나 지정해줍니다.
소스코드는 아래와 같이 작성합니다.
using System;
using static System.Console;
namespace Hello
{
class MainApp
{
// 프로그램 실행이 시작되는 곳
static void Main(string[] args)
{
if (args.Length == 0)
{
Console.WriteLine("사용법 : Hello.exe <이름>");
return;
}
WriteLine("Hello, {0}!", args[0]);
}
}
}
✔ ctrl + shift + B : 코드 컴파일
위 단축키를 눌러서 코드를 컴파일 시켜줍니다.
그럼 자동 빌드가 됩니다.
오른쪽 솔루션 탐색기에서 Hello 오른쪽 클릭하고 X 를 눌러볼까요?
그럼 딱 폴더안에 먼가
exe가 있어야 하는데 없네요..
여기가 경로가 아닌가 봅니다.
더 안쪽에 있네요.
빈 > 디버그 > .net8.0 안에 실행파일이 있습니다.
아직 뭐 저 실행 파일이 뭔지 자바 개발자로서는 모르겠네요.
그러나 cmd 창에서 깨달았습니다.
cmd 창에 방금 그 폴더로 cd 해서 이동해 봅시다.
그 폴더에는 반드시 exe 파일이 있는 폴더의 cmd 겠죠
(배쉬로 했다가 안되서 cmd로 열어서 하니까 되네요)
다짜고짜 해당 폴더에 Hello_jjublog를 치니까
바로 밑에 제가 작성한 문구가 보이네요.
아하...
이게 그 실행 파일이구나.
느꼈습니다.
코드 한줄씩 설명
1. using System;
- 설명: System 네임스페이스를 가져와서 다양한 기본 기능을 사용할 수 있게 합니다.
- 주요 기능: Console 클래스와 같은 표준 라이브러리를 사용할 수 있게 합니다.
2. using static System.Console;
- 설명: Console 클래스를 매번 명시하지 않고 WriteLine 같은 메서드를 바로 호출할 수 있게 합니다.
- 주요 기능: Console.WriteLine을 간략하게 WriteLine으로 사용할 수 있습니다.
3. namespace Hello
- 설명: 코드가 속하는 네임스페이스를 정의합니다. 여기서는 Hello라는 이름의 네임스페이스를 사용합니다.
- 주요 기능: 클래스와 메서드를 논리적으로 그룹화하고 충돌을 방지합니다.
4. class MainApp
- 설명: MainApp이라는 이름의 클래스를 정의합니다.
- 주요 기능: 프로그램의 기능을 담는 기본 단위입니다.
5. static void Main(string[] args)
- 설명: 프로그램의 시작점을 나타냅니다. 모든 C# 프로그램은 Main 메서드에서 실행이 시작됩니다.
- 주요 기능: 명령줄 인수를 받으며, args 배열을 통해 전달됩니다.
6. if (args.Length == 0)
- 설명: args 배열이 비어있는지 확인하는 조건문입니다.
- 주요 기능: 프로그램에 이름 인수를 입력하지 않으면, 안내 메시지를 출력하고 종료합니다.
7. Console.WriteLine("사용법 : Hello.exe <이름>");
- 설명: 사용자가 인수를 입력하지 않았을 때, 프로그램 사용법을 출력합니다.
- 주요 기능: 콘솔에 텍스트를 출력하는 WriteLine 메서드 사용.
8. return;
- 설명: Main 메서드를 종료합니다.
- 주요 기능: 프로그램이 더 이상 실행되지 않도록 종료합니다.
9. WriteLine("Hello, {0}!", args[0]);
- 설명: args[0]에 전달된 첫 번째 인수를 사용하여 "Hello, {이름}!" 형태로 인사 메시지를 출력합니다.
- 주요 기능: 문자열 포매팅을 통해 인수를 출력합니다.
이체 첫 시작입니다.
모두 힘내시고 화이팅입니다.
다음시간에 계속~