C# / Unity 통상 질문

2026. 4. 8. 12:10·📖TIL/🎤Interview

23년 ~ 24년 C# / Unity 통상 질문


 

객체지향에 대하여 설명 ( 필수 )

  • 객체지향의 정의는 물론, 객체라는 단어의 뜻 자체를 먼저 본인만의 단어로 설명할 수 있어야 한다.
  • SOLID원칙, 4대 특징에 대하여 설명하면 된다.
  • 추상, 상속, 다형성, 캡슐화 등, 특성을 설명하실 때, 꼬리물기를 대비하여 캡슐화를 위한 프로퍼티 사용이나, 다형성을 활용하기 위한 오버라이딩 재정의, 인터페이스 등 활용 사례를 꼭 생각해두는 것이 좋다.

 

깊은 복사와 얕은 복사에 대하여 설명

  • 본인만의 단어로 설명을 준비하되, 본인이 구현하였던 사례가 있다면 첨부하는 것이 좋다.
  • ICloneable 을 활용했다면, 클론 및 얕은, 깊은 복사 구현 내역을 설명하시면 좋다.
  • 활용한 기능은 없었지만 알고 있다는 것을 표현해도 좋다.
  • 참조형과 값형에 대한 질문으로 이어질 수 있다.

 

박싱 언박싱에 대하여 설명 ( 필수 )

  • '값을 참조 혹은 참조를 값을' 와 같은 간단한 답변 대신 object형에 대한 언급을 하면 좋다.
  • 자주 일어나면 무슨 문제가 생기는지, 이를 피하기 위해 어떤 방법이 있을지 또한 추가하면 좋다.
  • 스택과 힙 영역 질문, 혹은 제네릭으로 문제가 이어질 수 있다.

 

유니티 라이프사이클 ( 필수 )

  • Unity Document에 있는 내용대로 답변을 하면 좋지만, 너무 디테일한 yield, 랜더링 부분을 빼고 흐름만 잘 외워 두면 좋다.
  • FixedUpdate 혹은 LateUpdate를 어디에 쓰는지 질문하기도 한다.
  • Awake와 Start를 유의미하게 나눠 쓴 경험이 있는지 질문하기도 한다.

 

정렬 ( 퀵소트, 머지소트, 버블소트 등 ) 의 BigO 값

  • 정렬 알고리즘은 모두는 아니지만 3~4개 정도 구동 방식 및 최악 BigO, 평균 BigO 공간 복잡도, 시간복잡도를 알아 두는 것이 좋다.
  • Divide and conquer 계열 정렬 방식 하나 정도는 알고 있는 것이 좋다.
  • 파생 질문으로 델리게이트를 활용한 오름차순, 내림차순 문제가 이어질 수 있다.

 

길찾기 ( A-Star, 다익스트라 DFS, BFS등 ) 설명

  • NavMesh가 포트폴리오에 있다면 A-Star를 질문할 수도 있다.
  • A-Star 대답을 준비한다면 휴리스틱, 노드, 자료구조 요소를 넣어서 설명하면 좋다.
  • 항상 최선의 길을 반환하는지 여부와 다익스트라의 차이를 설명에 넣어서 준비하는게 좋다.
  • 시뮬레이션 계열 회사에서 오일러와 해밀턴 회로 문제가 출제된 적이 있다.

 

자료구조 및 각각의 장단점 ( 필수 )

  • 최소 4 가지의 자료구조 ( Collection )을 언급하는 것이 좋다.
  • 자주 사용되는 List 나 Dictionary의 경우, 본인의 활용 예시도 같이 추가하여 답변을 준비하면 좋다.
  • 각 자료구조의 장단점 및 본인이 사용해보지 않더라도 어디에 사용되면 좋을지, 예시를 준비해두는 것도 좋은 방법이다.
  • Non-Generic 자료구조와 Generic 자료구조의 차이가 출제된 적이 있다.
  • Dictionary와 Hash 대답 후, 해시테이블 및 해시충돌, 해결방법이 출제된 적이 있다.
  • Dictionary를 답변한다면 같이 준비하는 것이 좋다.

 

추상클래스와 인터페이스 차이 ( 필수 )

  • 개념 설명은 물론 멤버변수 보유 가능여부, 인스턴화 가능여부, 다중 상속 가능 여부 등의 요소를 추가하면 좋다.
  • 꼬리물기로 인터페이스에 프로퍼티를 넣을 수 있는지 질문이 있었다.
  • 키워드 as 와 is 에 대하여 추가 질문이 나온 적이 있다.

 

제네릭

  • 기본 개념 설명은 물론, 사용할 경우 얻는 타입 안정성과 같은 이점과, 사용 예시를 같이 추가하여 설명하면 좋다.
  • 제네릭 제약조건 ( where, new() 등 )의 꼬리물기 질문이 나올 수 있다.
  • Arraylist 와 List 의 차이에 대하여 설명하라고 한 적이 있다.
  • 박싱과 언박싱을 묶어서 설명을 요구할 수도 있다.

 

코루틴은 동기인가 비동기인가 ( 필수 )

  • 동기와 비동기가 무엇인지 질문으로 이어질 수 있다.
  • Async / await에 대한 질문으로 이어질 수 있다.
  • Photon 네트워크를 사용하였다면 어느 상황에서 비동기를 쓰면 괜찮은지 묶어서 설명하면 좋다.
  • Unity Job 시스템에 대한 질문이 나올 수도 있다.
  • 사용해보지 않았다면 개념만 알아 두시고 사용 해본적은 없다고 솔직하게 대답하는 것이 좋다.
  • 코루틴과 invoke 차이 문제도 출제될 수 있다.
  • LoadSceneAsync 를 포트폴리오에 담았다면 작동방식 및 왜 도움이 되는지 꼭 숙지하는 것이 좋다.

 

프로파일러 사용 여부

  • 어느 목적으로 왜 사용했고, 어느 성과를 이루었는지 내용을 담아서 답변을 준비하면 좋다.
  • 사용해본 적이 없더라도 질문이 그냥 넘어가지 않게끔 무엇인지, 어디에 쓰는지 설명하면 좋다.
  • 프로파일러를 통해 얻은 정보를 바탕으로 어떤 최적화 액션을 했는지에 따라 추가 질문으로 유도해나갈 수 있다.

 

가비지콜렉터 ( 필수 )

  • 역할, 작동방식은 기본이고, 힙 영역에서 특정 객체를 가비지로 판단하는 근거, 가비지를 줄이려 했던 노력도 추가하면 좋다.
  • 점진적 가비지 컬렉션을 알고 있는지 질문이 나온 적이 있다.

 

오브젝트풀 ( 필수 )

  • 기본 개념 및 왜, 어디에 사용하였는지 내용을 같이 준비하면 좋다.
  • 잦은 할당 및 해제를 피하기 위해 사용했다고 하면, 왜 그 행동이 오버헤드를 유발하는지 원인까지 같이 준비하는 것이 좋다.
  • 메모리 단편화 질문으로 이어질 수 있다. 외부 메모리 단편화, 내부 단편화까지 같이 준비하는 것이 좋다.
  • 컴퓨터 공학 전공 혹은 CS전산지식을 요구하는 기업에선 페이징과 세그멘테이션에 대한 질문으로 이어진 적도 있다.

 

Partial class

  • 같은 클래스를 두 작업자가 작업할 경우 충돌 방지, 협업을 위해 partial 을 사용한 이력이 있다면 이것도 좋은 예시가 될 수 있다.
  • 한 클래스 내에 두 로직 ( View 와 Model 등 )이 혼재되어 있다면 가독성과 유지보수를 위해 partial 을 활용할 수 있다.

 

Sealed class

  • 개념 및 본인이 활용한 예시가 있다면 답변을 같이 준비하면 좋다.

 

Call by Value, Call by Reference ( 필수 )

  • 값 타입 참조타입 및 ref 키워드, 주소값과 같은 내용도 답변에 담을 수 있다.
  • 키워드 ref 가 나올 때, in, out, 키워드 관련 추가 질문이 나올 수 있다.

 

재귀함수

  • 본인 포트폴리오에 있다면 나올 수 있다. 스택오버플로우 위험성, 공간 복잡도 등의 질문으로 이어질 수 있다.
  • 게임회사 엔진팀에서, 컴퓨터 공학, 타 언어 출신 지원자들에게 꼬리재귀에 대한 질문이 나온 적이 있다.

 

연산자 오버로딩, 형 변환, Explicit, LINQ 등 기타

  • 본인이 만든 클래스에 연산자 오버로딩한 이력이 있다면 답변을 준비하는 것이 좋다.
  • 익숙하지 않은 키워드가 있다면 준비하는 것이 좋다.

 

'📖TIL > 🎤Interview' 카테고리의 다른 글

CS, C++ 등 기타 전산 지식 질문  (0) 2026.04.08
면접 질문  (0) 2026.04.08
'📖TIL/🎤Interview' 카테고리의 다른 글
  • CS, C++ 등 기타 전산 지식 질문
  • 면접 질문
DevHoChan
DevHoChan
맨땅에서 시작하는 코딩 도전
  • DevHoChan
    Debugging Life
    DevHoChan
  • 전체
    오늘
    어제
    • 분류 전체보기 (374)
      • 🕹️Game Life (1)
      • 🖥️Computer Science (5)
      • 📖TIL (141)
        • 🔥Projects (16)
        • 💡DevTips (5)
        • 🤔발생한 문제와 해결 (5)
        • 🔮Unity Graphics (5)
        • 🎤Interview (3)
        • ✅CodingTest (9)
      • 🚀Game Release (4)
      • 🧊Unity Basic (58)
        • 📌용어 사전 (1)
        • 에디터&인터페이스 (3)
        • 디버그 (1)
        • 라이프사이클 (4)
        • 게임오브젝트 (4)
        • 프리팹 (1)
        • 오브젝트풀링 (4)
        • 애트리뷰트 (2)
        • 트랜스폼 (4)
        • 물리&충돌 (1)
        • 프레임&델타타임 (4)
        • 코루틴&이벤트 (7)
        • 수학&보정함수 (3)
        • 디자인패턴 (9)
        • UGUI (3)
        • 벡터 ( Vector ) (3)
        • 씬 ( Scene ) (2)
        • 데이터 관리 (2)
      • ⭐C Sharp (99)
        • 📌용어 사전 (1)
        • 📌문법 사전 (6)
        • 메모리 관리 (3)
        • 00. 문법 (17)
        • 01. 변수 (3)
        • 02. 자료형 (2)
        • 03. 연산자 (6)
        • 04. 조건문 (2)
        • 05. 반복문 (2)
        • 06. 배열 (3)
        • 07. 메서드(함수) (7)
        • 08. 열거형 (3)
        • 09. 구조체 (2)
        • 10. 참조 (2)
        • 11. 객체 지향 (11)
        • 12. 델리게이트 (3)
        • 13. 디자인 패턴 (7)
        • 14. LINQ (1)
        • 📂▼자료구조 (2)
        • 15-1. 제네릭 (3)
        • 15-2. 배열 (4)
        • 15-3. 리스트 (2)
        • 15-4. 스택과 큐 (2)
        • 15-5. 딕셔너리 해시테이블 (2)
        • 15-6. 트리와 그래프 (3)
      • 📊Algorithm (16)
        • BigO (2)
        • 정렬 (4)
        • 셔플 (2)
        • 탐색 (6)
        • 최적화 (1)
      • 📝Game Design (16)
      • 🤖​AI Tools (12)
        • AI 리뷰 분석 (6)
        • Player2 (0)
        • 3D 모델링 (1)
        • 2D 스프라이트 (0)
        • 이미지 (2)
        • 사운드 (1)
        • 동영상 (1)
        • 문서 (1)
      • 🌍Network (6)
      • 🌱Github (11)
        • 기본 개념 (7)
        • 명령어 (1)
        • 도구 활용 (1)
      • ⚙️Visual Studio (5)
        • 🔧설치 및 환경설정 (2)
        • ⌨️HotKey (1)
        • 🚨디버깅 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    GitHub
    문법
    자료구조
    객체지향
    algorithm
    CodingTest
    OOP
    til
    기획
    유니티
    c#
    메모리관리
    자료형
    부트캠프
    게임기획
    csharp
    unity
    디자인패턴
    게임디자인
    gamedesign
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
DevHoChan
C# / Unity 통상 질문
상단으로

티스토리툴바