퀴즈: 객체 지향 원칙 적용

Quiz

Beginner

+60 XP

15m

Unity Technologies

퀴즈: 객체 지향 원칙 적용 thumbnail

이 퀴즈에서는 주니어 프로그래머: 객체 지향 원칙 적용 미션에서 다룬 개념을 잘 이해하고 있는지 평가합니다.

Languages available:

Question 1

다음 문장은 참인가요, 거짓인가요?

일반적으로 클래스는 하나의 목적을 갖도록 구성하고 작성해야 합니다.

Select only one

Question 2

C#에서 확장 메서드를 사용해야 하는 이유는 무엇인가요?

Select only one

Question 3

다음 중 부모(기본) 및 자식(파생) 클래스에 대한 올바른 설명은 무엇인가요?

  1. 클래스는 단일 클래스에서만 상속받을 수 있습니다.
  2. protected 변수와 메서드에는 별도의 스크립트에 있는 자식 클래스에서도 액세스할 수 있습니다.
  3. private 변수와 메서드에는 별도의 스크립트에 있는 자식 클래스에서도 액세스할 수 있습니다.
  4. 클래스 A에서 파생된 클래스 B가 있고 클래스 B에서 파생된 클래스 C가 있는 경우, 클래스 C는 클래스 B의 동작만 상속합니다.

Select only one

Question 4

사용자가 자신의 차량을 구성하는 애플리케이션을 프로그래밍하고 있다면, 중복을 최소화하며 코드를 구조화하기 위해 상속의 개념을 어떻게 사용해야 하나요?

Select only one

Question 5

기본 클래스(클래스 A)에는 다음 코드가 포함됩니다.

public virtual void Greet () 
{
   Debug.Log("Hello");
}

클래스 A에서 파생된 파생 클래스(클래스 B)에는 다음 코드가 포함됩니다.

public override void Greet ()
{
   Debug.Log("How are you?");
}

클래스 B만 인스턴스화되었고 Greet() 메서드가 호출된 경우 콘솔에는 어떤 내용이 표시되나요?

Select only one

Question 6

다음 중 C#에서 추상화의 원칙을 따르는 사례는 무엇인가요?

  1. 게터와 세터를 사용합니다.
  2. 필요한 경우에만 public 변수를 사용합니다.
  3. 가능할 때마다 씬에서 사용 중이지 않은 오브젝트를 비활성화합니다.
  4. 추상화 클래스하고만 커뮤니케이션하는 이벤트를 사용합니다.

Select only one

Question 7

아래 public 변수를 프로퍼티로 교체(보안을 개선하면서도 다른 클래스에서 액세스할 수 있는 상태를 유지)하려면 어떻게 해야 하나요?

public int score;

Select only one

Question 8

재사용성을 개선하고자 하는 경우 다음 코드를 어떻게 개선하는 것이 좋을까요?

void DisplayInfo(string name1, string name2, string address1, string address2, string phone1, string phone2)
{
     print(name1);
     print(name2);
     
     print(address1);
     print(address2);
     
     print(phone1);
     print(phone1);

}

Select only one

Question 9

다음은 이해하기 어려운 코드 로직의 예시입니다.

public float GetValue()
{
     float result;      
     
     if (bool1)
     {
          result = 1;
      }
      else
      {
         if (bool2)
         {
            result = 2;
         }
         else
         {
            result = 0;
         }
     }
     return result;
 }

아래 코드는 더 단순한 방식으로 동일한 결과를 가져옵니다. 이 문장은 참인가요, 거짓인가요?

public float GetValue() {
     if (bool1)
     {
         return 1;
     }
     if (bool2)
     {
         return 2;
     }
     return 0; 
}

Select only one

Question 10

다음 중 변수에 대한 설명으로 올바른 것은 무엇인가요?

Select only one

Question 11

CPU 사용과 관련된 문제를 진단하기 위해 프로파일러를 사용할 때, 애플리케이션을 위해 작성한 커스텀 스크립트와 관련된 최적화 문제를 찾으려면 어떤 부분을 확인해야 하나요?

Select only one

Question 12

다음 중 성능 문제를 유발할 가능성이 가장 높은 시나리오는 무엇인가요?

Select only one

Submit answers

To calculate your score, submit your answers to the quiz. A passing score will mark this quiz complete.

Correct answers needed to pass

9/12

Retake allowed after

0 Mins