프로그래밍/C#
3. C# 기초 -2일차(이론)
파란도화지
2021. 11. 2. 09:35
1. Visual Studio
Visual Studio Tools
- MS에서 개발한 개발자들이 사용하는 프로그램
- Visual Studio에서는 iOS, Android, Windows 환경에서 개발 가능
- Microsoft의 제품군을 개발하기 위해 필요한 것 => SDK : 여러 가지 편리한 기능 제공
- 장점 : 개발자들의 코드 작성 시간 단축, 생산성 향상, Debug 기능, 성능 테스트(정적/동적 코드 분석)
SDK(Software Development Kit)
- 프로그램 개발에 필요한 주요파일(DLL)을 제공
- 개발에 필요한 설명서 제공
- SDK : Windows 개발에 필요한 내용
- WDK : 디바이스 드라이버를 만들 때 사용
- ADK : Windows 8.0 이상에서 사용되는 배포에 사용되는 도구
2. 예외처리
- 만에 하나 있을까 말까 하는 상황에 대비
- 보험과 같은 느낌(꼭 있을 필요가 있을까?)
- 정상적인 상황이 아니라 특별한 상황에 대비하기 위해 사용하는 것이 원칙
Debug
- 프로그램의 논리적인 문제를 해결하기 위해 사용
- 프로그램의 흐름을 분석할 경우
Tool
- 개발자의 단순 실수(오타)
- 개발자의 코드 작성을 쉽게
- 문법의 형식이 맞는지 확인
컴파일
- Tool에서 잡지 못한 문법의 형식도 여기서 가끔 표시
예외를 처리할 경우
- Try 구문을 이해 : 정상적으로 처리되는 부분
- Catch 구문을 이해 : 예외가 발생할 때의 처리되는 부분
- 전용 보험을 먼저 하고, 그 다음에 종합 보험을 작성해야함(단, 코딩시작 단계에서는 종합보험을 먼저 사용하고 이후 실력이 향상되면 전용 보험도 적용)
Try ~ catch ~ finally 구문의 완성
- Finally 구문은 필요한 경우에만 사용
- Finally 구문은 try 또는 catch가 발생해도 무조건 실행
3. 개체지향 프로그래밍
OOP : Object Oriented Programming
개체 지향 프로그램의 특징
- 개체 지향의 특징은 3대 원칙
- 캡슐화
- 상속
- 다형성
- 사용자 정의 데이터 타입을 만들고 이를 활용하는 프로그램(필요할 때 쓰고 필요하지 않을 때는 쓰지 않는 것)
- 사용자 정의 데이터 타입은 누구나 만들 수 있음
- 이를 사용하는 방법을 배우는 것 : 개체 지향 프로그램
매서드
- 여러 줄의 코드 작성을 하나의 묶음으로 관리하는 것
- 데이터를 처리하는 최소의 단위
- 처리가 핵심
- 반복적을 처리하는 부분을 하나의 묶음으로 처리
첫 실습에서의 메서드
static void Main(string[] args) // <- 특수목적 메서드 : 프로그램 시작을 알릴 때 사용 Main
{
Console.WriteLine("홍길동");
}
메서드를 정의할 때에는 접근 한정자(제한자)를 먼저 선언
- public : 모든 외부 혹은 파생 클래스에서 이 클래스를 액세스 할 수 있음
- internal : 동일한 Asssembly 내에 있는 다른 클래스들이 액세스 할 수 있음(다른 어셈블리에서는 접근 불가)
- protected : 파생클래스에서 이 클래스 멤버를 액세스할 수 있음
- private : 동일 클래스 내의 멤버만 접근 가능(static 앞에 아무것도 없으면 private이 숨어 있는 것)
- 아무것도 안쓰면 기본은 private 로 선언된 것으로 간주
- 우리가 잘 쓰는 것은 Public / private 을 자주 사용할 것임
- 접근한정자 다음에는 static 형식인 구분
- 반환 형식을 지정
- 메서드의 끝에는 return 사용
Yield 키워드
- 이 키워드는 주로 데이터 양이 많을 때 처리하는 호출 메서드에서 주로 사용하는데 한꺼번에 많은 데이터를 받는 것보다 조금씩 데이터를 받 을 때 효율적일 경우에 사용
매개 변수(파라미터/인수)
- 메서드를 호출할 데이터를 넘길 경우에 사용
- 메서드도 데이터를 전달하지만 결론은 변수임
- 넘길 때에는 자기 데이터만 넘겨주기 때문에 받는 메서드에서 데이터가 변경되어 원본데이터는 변경되지 않음
메서드 오버로드
- 하나의 메소드 이름에 여러 개의 메소드 구현
- 구현 시, 매개변수를 다르게 해서 구현(타입 또는 변수 갯수)
매개변수 전달 방법
- Call by value : 기본적인 값 전달 방법
- Call by reference : 참조에 의한 전달 방법
- 값이 전달되는 것이 아니라 주소가 전달됨
- 즉, 호출된 메서드에서 값이 변경되면 원본 데이터도 변경됨
- ref/out 키워드를 사용