가드 조항 기법

솔직히 말해서 다음과 같은 상황에 처한 적이 몇 번이나 있습니까?

void someMethod() {
    if (condition1) {
        if (condition2) {
            if (condition3) {
                doSomething();
            } else {
                debugPrint('Problem 3');
            }
        } else {
            debugPrint('Problem 2');
        }
    } else {
        debugPrint('Problem 1');
    }
}


특히 개발자 경력 초기에는 그보다 더 나쁠 수도 있습니다. 더 많은 조건을 중첩할수록 코드는 다음과 같이 됩니다.

void someMethod() {
    if (condition1) {
        if (condition2) {
            if (condition3) {
                if (condition4) {
                    if (condition5) {
                        if (condition6) {
                            if (condition7) {
                                if (condition8) {
                                    doSomething();


매우 추악해질 수 있으며 코드 읽기 프로세스를 매우 실망스럽게 만들 수 있습니다. 더 좋고 직관적이며 읽기 쉬운 방법이 있습니다.

가드 조항



보호 절은 코드 실행을 계속할지 여부를 평가해야 하는 표현식으로 구성됩니다. 간단히 말해서 여러 if 조건을 다른 조건 안에 중첩하는 대신 기본 코드를 실행하기 전에 문제가 있는지 개별적으로 확인하는 가드 절을 만듭니다. 위의 예에서 보호 조항 기법으로의 변환을 살펴보겠습니다.

void someMethod() {
    if (!condition1) {
        debugPrint('Problem 1');
        return;
    }
    if (!condition2) {
        debugPrint('Problem 2');
        return;
    }
    if (!condition3) {
        debugPrint('Problem 3');
        return;
    }

    doSomething();
    return;
}


훨씬 더 읽기 쉽죠?

이제 코드를 엉망으로 만들지 않고 새 조건을 추가하는 것이 훨씬 간단해졌습니다.

더 많은 기사를 보려면 여기 DEV.TO, on Flutter in a Nutshell 및 .

좋은 웹페이지 즐겨찾기