본캠프_TIL_72일차(모의면접 3차)
오전
- 오전회의
- 모의면접연습
- 오후
- 모의면접
- 피드백 반영
- DataManager리팩토링
모의면접
자기소개 피드백
1. 너무 과거의 개발경력에 치우친 자기소개. 4:6 = 유니티 : 전 개발 경력 정도로 분량을 맞춰볼 것.
기술면접
1. 얕은복사 깊은복사에대해서 설명해주세요.(애매한 답변. 조금 더 정리 필요)
얕은복사는 데이터의 참조만 복사하고 원본과 데이터가 공유됩니다.
효율이 좋고 메모리 사용량이 적습니다
원본과 복사본은 상호영향을 미칩니다.
깊은 복사는 데이터 전체를 복사하고 독립적입니다.
느리고 메모리 사용량이 많습니다.
원본과 복사본이 서로 독립적입니다.
2. SOLID원칙에 대해서 설명해주세요.(답변은 했으나 좀 더 정리가 필요하고 예시를 들면 좋음,)
SOLID 원칙은 객체 지향 프로그래밍에서 소프트웨어 설계의 5가지 주요 원칙을 나타내는 약어입니다.
1. 단일 책임 원칙
클래스는 단 하나의 책임만 가져야한다.
2. 개방폐쇄 원칙
수정에는 닫혀있어야한다.
3.리스코프 치환 원칙
서브클래스는 언제나 부모클래스를 대체할 수 있어야 한다.
4.인터페이스 분리 법칙
클라이언트는 자신이 사용하지 않는 메소드에 의존하지 않아야 한다.
즉, 인터페이스는 클라이언트별로 구체적이고 작게 나누어져야 합니다.
5. 의존 역전 법칙
고수준 모듈은 저수준 모듈에 의존해서는 안 된다. 둘 다 추상화에 의존해야 한다.
즉, 구체적인 구현에 의존하지 않고, 추상화된 인터페이스를 통해 의존성을 해결해야 합니다.
3. DFS와 BFS에 대해 설명해주세요.(답변X. 공부필요)
DFS나 BFS는 그래프나 트리와 같은 자료구조에서 사용되는 탐색 알고리즘 입니다.
DFS와 BFS는 다음과 같은 구조를 탐색합니다:
- 그래프 (Graph)
- 정점(노드)과 간선으로 이루어진 데이터 구조.
- 예시:
- 소셜 네트워크(친구 추천 알고리즘).
- 웹 크롤러(링크 탐색).
- 도시 간 최단 경로 탐색.
- 트리 (Tree)
- 루트에서 시작하여 하위 노드로 연결된 계층적 구조.
- 예시:
- 파일 시스템 탐색.
- 게임에서 가능한 움직임 탐색.
DFS는 그래프나 트리에서 가능한 깊은 경로를 우선 탐색한 후, 더 이상 탐색할 경로가 없으면 다시 돌아가 다른 경로를 탐색하는 방식입니다.
BFS는 그래프나 트리에서 현재 깊이의 모든 노드를 탐색한 후, 그 다음 깊이를 탐색하는 방식입니다.
특성 | DFS | BFS |
탐색 방식 | 깊이 우선 탐색 | 너비 우선 탐색 |
자료구조 | 스택(Stack) 또는 재귀 | 큐(Queue) |
최단 경로 보장 | 보장하지 않음 | 최단 경로 보장 |
메모리 사용량 | 비교적 적음 | 큐에 많은 노드가 저장되므로 많을 수 있음 |
적합한 상황 | 경로가 깊거나 완전 탐색이 필요할 때 | 최단 경로를 찾거나 단계별 탐색이 필요할 때 |
면접 후 질문 또는 말하고 싶은 말 피드백
- 회사에서 특정 게임을 보고 온거라면 이 게임이 어떤점이 좋았는지에 말하는것이 좋음.
- 실제로 회사의 일원이 되었을 때를 가정해서 질문을 하시는 것도 좋음
- 만약에 입사하게 된다면 어떤 프로젝트에 투입이 될지
- 프로젝트에서 어떤 업무를 맡게 될지
- 프로젝트는 언제 예를 들어서 개발 중인 게임이라면 언제 출시 예정인지
3인칭으로 질문을 하는 것은 면접관이 면접을 보는 느낌이 들 수 있음.
회사에 입사하게 된다면 어떤 업무를 맡게 되는지와 같은 1인칭 질문이 괜찮을 것.