개발 TIL

7/22 부트캠프 개발 TIL (기술 모의 면접 3)

HJTL 2024. 8. 4. 17:05

9.콜백의 정의와 활용을 설명하세요

콜백은 어떤 메서드가 완료된 후에 호출하는 메서드 입니다.

주로 비동기, 이벤트, 특정조건이 충족될때 실행되게 합니다.

  • 동기 : 작업이 순차적으로 진행되며 하나의 메서드가 실행이 완료될 때 까지 다른 메서드가 수행되지 않는다.
  • 비동기 : 작업이 시작되면 중간에 다른 메서드를 실행함으로 제어가 반환되어 다음 작업이 실행, 콜백 함수나 다른 매커니즘을 통해 결과처리가 가능하다.

콜백의 사용에시는 코루틴이 있습니다. IEnumerator로 반환형 메서드를 구현하여 yield return이라는 반환 키워드로 이어 수행할 수 있습니다.

void Start()
{
	StartCoroutine(AsyncMethod())
}

IEnumerator AsyncMethod()
{
	for(int i=0;i<10;i++)
	{
    	//코드 실행
		yield return null;
	}
}

10. delegate란 무엇인가요?

C#에서 메서드를 참조하는 형식인데, 메서드의 기반으로 해당 시그니처와 일치하는 메서드를 가리킬 수 있습니다. 안전한 형식, 매개변수로 메서드 전달, 이벤트 처리, 런타임을 동적으로 호출하는데 사용됩니다.

11. C# event란 무엇인가요?

C#의 특정 상황이 발생하는 신호, 주로 GUI, 비동기, 특정 조건이 되었을 때 실행하는 역할 delegate기반으로 이벤트에 추가할 수 있습니다.

class EventClass
{
    public event Action onCallback; // 이벤트 선언

    void Start()
    {
        onCallback += UseCallback; // 이벤트 등록
    }

    public void UseCallBack()
    {
        // 출력 내용
    }

    public void isEvent()
    {
        onCallback?.Invoke(); // 이벤트 호출
    }
}

12. 유니티에서 사용하는 delegate나 event는 어떤것이 있나요?

UnityAction이나 UnityEvent를 주로 사용합니다.

UnityAction은 파라미터가 없는 delegate이며 이벤트에 많이 사용됩니다.

UnityEvent는 인스펙터에서 설정할 수 있는 이벤트이며 주로 EventHandler를 사용합니다.

13. 참조형식과 값형식을 설명하세요

값 형식은 변수가 데이터를 저장합니다. 메모리를 직접 저장하고 스택 메모리에 할당됩니다. 빠른 접근과 기본 데이터 타입과 구조체에 사용됩니다.

참조 형식은 실제 데이터가 저장된 메모리 주소를 저장합니다. 힙 메모리에 할당되며, 큰 메모리 공간을 차지하고 동적 메모리에 할당되고, 실제 데이터의 참조를 저장합니다. 포인터, 클래스가 있습니다.

14. 메모리의 스택과 힙은 어떤 차이가 있나요?

스택은 컴파일 타임의 크기가 결정되는 변수를 저장하고 힙은 런타인 크기나 변경되는 데이터를 저장합니다.

 

by 스파르타 코딩클럽