낑깡의 게임 프로그래밍 도전기

35일차 : '한 번에 끝내는 유니티&C# 게임 개발 초격차 패키지' 강의 후기 본문

인강 후기

35일차 : '한 번에 끝내는 유니티&C# 게임 개발 초격차 패키지' 강의 후기

낑깡겜플밍 2025. 8. 4. 13:11
반응형

학습 시작 시간

오늘은 라면은 먹고 강의를 들었다.

학습 종료 시간

25분정도 학습을 하였다.

오늘 들었던 클립 시작과 종료

 오늘은 C# 클래스의 몇 가지 심화 문법을 배웠다. 강사님이 알려주신거 외의 지식을 덧대자면 먼저 Finalizer는 ~ClassName()처럼 정의되며 객체가 메모리에서 삭제되기 직전에 자동으로 호출된다고 한다. 하지만 직접 호출하거나 자주 쓰는 건 아니고, 대신 IDisposable과 using문을 통해 리소스를 정리하는 게 더 일반적이라고 한다. GC(가비지 컬렉터)가 관여하다 보니 예측이 어렵고 성능에도 영향을 줄 수 있어서 신중히 써야 한다고 했다.

 this() 생성자는 생성자 간 중복 코드를 줄일 때 사용된다고 했고, 하나의 생성자에서 다른 생성자를 호출할 수 있도록 해준다고 한다. 초기화 로직이 여러 생성자에 반복된다면 공통 부분을 묶어서 this()로 연결하는 식이다. 깔끔한 코드 작성을 위한 작은 팁이지만 실전에서 꽤 유용하다고 느꼈다.

 분할 클래스(partial class)는 클래스 정의를 여러 파일에 나눠서 작성할 수 있게 해준다. 이건 디자이너 코드와 사용자 코드를 구분하거나, 여러 사람이 같은 클래스를 나눠서 작업할 때 도움이 된다고 한다. 특히 WinForms나 Unity에서 자동 생성되는 UI 코드에 자주 보인다고 한다.

 프로퍼티에서는 init과 required라는 키워드를 새로 배웠다. init은 객체가 만들어질 때 한 번만 값을 설정할 수 있도록 제한하는 용도고, required는 해당 프로퍼티를 반드시 설정하도록 강제하는 역할을 한다. 이걸 활용하면 초기화 누락을 막고 불변 객체를 만들 수 있어서 실수를 줄이는 데 효과적이라고 했다. 특히 DTO나 설정 객체에서 유용할 것 같았다.

 튜플은 (int, string) 같은 형식으로 여러 값을 묶어서 한 번에 반환하거나 받을 수 있는 구조다. 예전에는 클래스나 구조체를 따로 만들어야 했던 걸 간단하게 처리할 수 있고, 이름도 붙여서 return (Id: 1, Name: "홍길동")처럼 쓰면 가독성도 좋다고 하셨다. 데이터 전달용으로 자주 쓰이고, 구조 분해 할당도 직관적이라 실제 프로젝트에서도 꽤 자주 보일 거라고 한다.

 전체적으로 보면 기존 문법을 개선하거나 실수를 줄이기 위해 추가된 기능들이 많았고, 작은 차이지만 알고 쓰면 코드의 안정성과 유지보수성이 훨씬 좋아질 수 있겠다고 느꼈다. 다음 수업도 기대된다.

학습 인증샷

디지털 필기와 한컷!

오늘의 완강률

오늘부로 50클립을 들었다.

내일도 파이팅!

반응형