본문 바로가기

카테고리 없음

240314 (float와 int의 표현 범위 차이)

[Unity] 기술면접 연습하기

 

1. float와 int의 표현 가능한 수의 범위가 다른 이유는 무엇인가?

float과 int형이 같은 4바이트로 메모리 할당을 받는데도 float에서 더 다양한 수를 표현 할 수 있는 이유는 float형이 int형과는 다르게 부동소수점이라는 개념을 사용하기 때문입니다. 따라서  float의 이러한 방식은 아주 큰 수를 표현할 수는 있다는 장점이 있지만, 유효자리비트로 표현할 수 있는 한계치를 넘어버리면 근사치를 보여주게 된다는 단점이 있습니다.


<모의 면접>

본인소개 / 전공하지는 않았지만x / 긍정적인 답변 위주로
왜 게임을 개발하게된 계기
생명주기, 객체지향, 상속 / 공부가 부족한 것 같다.

1. 유니티 생명주기

유니티는 사용자가 호출하지 않아도 호출이되는 함수들이 있습니다. 그 함수들의 호출 주기를 생명주기라고 합니다.
(ex. Reset -> Awake -> Start -> FixedUpdate -> OntTiggerXXX -> Update 등등)

2. 객체지향
객체(Object)를 중심으로 프로그램을 설계, 개발해 나가는 것을 말합니다. 가장 큰 특징으로는 클래스를 이용해 함수(처리 부분), 변수(데이터 부분)를 하나로 묶어 객체(인스턴스)로 만들어 사용한다는 점입니다.


(꼬리질문) 객체지향의 특징은 무엇이 있나요?

 

캡슐화(연관있는 변수와 메소드를 묶어주는 작업), 추상화(객체에서 필요한 공통된 부분을 추출하는 것), 상속(부모 클래스로부터 공통된 변수와 함수, 인터페이스를 그대로 물려 받는것을 의미, 부모 클래스에 포함된 데이터를 그대로 사용 가능), 다형성(같은 종류의 클래스가 하나의 메시지에 대해 서로 다른 행동을 하는 것, 다형성은 오버라이딩, 오버로딩 형태로 제공) 등이 있습니다.


(꼬리질문) OOP란?

 

컴퓨터 프로그램을 어떤 데이터를 입력받아 순서래도 처리하고 결과를 도출하는 명령어들의 목록으로 보는 시각에서 벗어나 여러 독립적인 부품들의 조합, 즉 객체들의 유기적인 협력과 결합으로 파악하고자 하는 컴퓨터프로그래임의 패러다임을 의미합니다.


(꼬리질문) SOLID 원칙은 무엇인가요?

 

객체 지향 프로그래임의 5가지 설계 원칙으로 단일 책인 원칙, 개방-폐쇄 원칙, 리스코프 치환 원칙, 인터페이스 분리 원칙, 의존 역전 원칙의 앞 자를 따서 SOLID원칙이라 불리우고 있습니다.

3. 상속 

부모의 클래스로부터 공통된 변수와 함수, 인터페이스를 그대로 물려받는 것을 말합니다. 비슷한 객체들의 부모 클래스와 인터페이스를 정의하여 공통화 한 다음 상속받아 객체를 좀 더 다루기 쉽게 합니다. 추상화에서 공통된 부분을 묶었다면, 부모 class를 상속받아 거기에 포함된 데이터를 그대로 사용할 수 있습니다.