Menu
Coddy logo textTech

가드 절

Coddy C# 여정의 논리 및 흐름 섹션에 포함된 레슨. 66개 중 19번째.

Guard 절은 method의 시작 부분에서 경계 사례 또는 유효하지 않은 inputscheck하고, 해당 조건이 충족되면 return early하는 조건문입니다.

guard 절 없이 메서드를 만들어 보겠습니다:

public void ProcessOrder(Order order)
{
    if (order != null)
    {
        // 주문을 처리한다
        // 여기에 많은 코드 줄이 있습니다...
    }
}

이제 guard clause를 사용하여 다시 작성해 보겠습니다:

public void ProcessOrder(Order order)
{
    if (order == null)
    {
        return; // 가드 절 - order가 null이면 조기 종료
    }
    
    // order를 처리
    // 여기에 많은 코드 줄이...
}

Guard 절은 중첩을 줄이고 예외적인 경우를 메서드 시작 부분에서 처리하여 가독성을 향상합니다.

challenge icon

챌린지

쉬움

DivideNumbers라는 이름의 메서드를 만들고, numeratordenominator라는 두 정수를 받도록 하세요.

  1. denominator가 0인지 확인하는 Guard 절을 추가하세요.
  2. denominator가 0이면 "Cannot divide by zero"를 출력하고 0을 반환하세요.
  3. 그렇지 않으면 numeratordenominator로 나누고 결과를 반환하세요.

직접 해보기

using System;

public class Program
{
    public static int DivideNumbers(int numerator, int denominator)
    {
        // 여기에 코드를 작성하세요
    }
    
    public static void Main()
    {
        // 콘솔에서 입력을 읽습니다
        int numerator = Convert.ToInt32(Console.ReadLine());
        int denominator = Convert.ToInt32(Console.ReadLine());
        
        // DivideNumbers 메서드를 호출합니다
        int result = DivideNumbers(numerator, denominator);
        
        // 결과를 출력합니다
        Console.WriteLine(result);
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

논리 및 흐름의 모든 레슨

직접 연습해 보세요: 온라인 C# 컴파일러