본문 바로가기

카테고리 없음

내일배움캠프 11일차 TIL - 진도 나가기

 

주말에 하려고 했던 C# 문법 4주차 진도빼기는 나의 게으름으로 인해 무산되었다.

오늘은 C# 문법 4주차 강의를 들었다.

오늘 배운 것

인터페이스는 쉽게 말해 클래스에 제약 조건을 명시하는 것

특정 인터페이스에 속한 클래스는 그 인터페이스에 명시된 메서드를 반드시 포함해야한다.

 

try-catch문의 목적은 예외사항이 발생할 수 있는 부분들을 try-catch문으로 잡아주는 것

(예를 들어 캐릭터가 벽에 부딪혔을때라던지, 리소스를 가져올때 오류가 발생하는 부분이라던지)

 

값형 = 변수에 값을 직접 저장함. int float double bool 등의 기본 데이터 타입들이 값형에 해당.

           변수에 값을 직접 저장하므로 값형의 변수 수정은 해당 변수의 값만 수정. => 다른 변수에 영향X

참조형 = 변수가 데이터에 대한 참졸르 저장함. 클래스 등이 이에 해당.

               변수의 수정은 동일한 데이터를 가리키는 다른 변수에 영향 줄 수 있음.

(그냥 클래스를 참고형으로 기억하고 나머지는 값형으로 기억하는게 편하다고 하심.)

 

박싱 = 값형 -> 참조형 변환하는 과정

언박싱 = 박싱된 객체를 다시 값형으로 변환하는 과정

박싱 언박싱 너무 자주하면 메모리를 많이 써서 성능저하가 일어남

 

델리게이트 "메서드를 변수에 저장할 수 있다"

델리게이트를 이용하면 메서드를 매개변수로 전달하거나 변수에 할당할 수 있음

델리게이트를 알아야하는 이유는 접근이 불편한 상황일때 메서드를 연결해놓는 방식을 사용해야하기 때문이다.

하나의 델리게이트에 여러개의 메서드를 연결해줄 수도 있는데 이때 각 메서드가 델리게이트와 똑같은 반환값과 매개변수를 가져야하며, 지정해준 델리게이트에 연결할 메서드를 +=로 더해주면 된다.

 

? << null 조건부 연산자. null이면 실행X, null이 아니면 실행O

 

람다 = 익명 메서드를 만드는 방법.

델리게이트를 사용하여 변수에 할당하거나, 메서드의 매개변수로 전달할 수 있음.

 

Func와 Action은 미리 정의된 제네릭 형식의 델리게이트

Func = 값을 반환하는 메서드를 나타냄. 마지막에 있는게 반환값. Func<int, string>은 string method(int);를 연결할 수 있다는 것

Action = 값을 반환하지 않는 메서드(void)를 나타냄. 매개변수는 있지만 반환타입이 없음. Action<int, string>에서 int와 string 둘다 매개변수

 

LINQ = query를 던진다

데이터를 필터링, 정렬, 그룹화, 조인 등 다양한 작업을 수행할 수 있음

var result = from 변수 in 데이터소스 // var = 결과값의 자료형을 자동으로 추론함 (데이터 뭉탱이를 던지기에 var를 씀)

                   [where 조건식]

                   [orderby 정렬식]

                   [select 식];

 

오늘의 회고

정신상태가 해이해지자 몸상태도 메롱이라 정신이 반쯤 나가있는 상태로 강의를 들어 제대로 이해가 됐는지도 모르겠다.

일단 열심히 필기는 해놨고 그걸 바탕으로 TIL을 작성하고는 있지만...

내일은 5주차 강의를 수강하고, 가능하면 4주차 강의를 한번 더 수강할 생각이다.

반복학습을 통해 내것으로 만들 수 있도록 하자.

화이팅!