코드 오류: 업서트(Upsert) 사용하기 노트

코드 오류: 업서트(Upsert) 사용하기

한 프로그래머가 .NET Framework에서 .NET Core로의 마이그레이션 프로젝트에서 가져온 코드 조각을 공유했습니다.이 코드는 CustomerController를 특징으로 하며, Customer 객체를 처리하는 액션 메서드를 가지고 있습니다.메서드 내부에서 조건문은 customer.someProperty를 확인하여 어떤 오버로드된 UpsertSomething 메서드를 호출할지 결정합니다.UpsertSomething 메서드는 매우 긴 매개변수 목록으로 호출되며, 그 중 많은 매개변수가 null이거나 기본 부울 값입니다.작성자는 두 번의 UpsertSomething 호출이 거의 동일하며, 단 하나의 부울 매개변수만 다르다고 지적합니다.이는 if/else 문이 불필요했음을 시사합니다.대신, customer.someProperty의 값을 단일 UpsertSomething 호출의 인수로 직접 전달할 수 있었습니다.작성자는 이를 이상적인 코딩 방식이 아닌 대표적인 예로 강조합니다.제공된 코드 조각은 마이그레이션 과정에서 발견된 더 광범위한 코드베이스를 대표합니다.이 게시물은 때때로 더 간단한 디자인 선택으로 코드 복잡성을 어떻게 피할 수 있는지 보여주는 예시 역할을 합니다.