[c#] 코드 리팩터링 사례 연구
코드 리팩터링은 소프트웨어 개발에서 매우 중요한 활동입니다. 코드 리팩터링은 코드의 구조를 재정비하여 가독성을 향상시키고 유지보수를 용이하게 만듭니다. 이번 글에서는 C# 코드 리팩터링의 사례를 살펴보고자 합니다.
코드 리팩터링이란?
코드 리팩터링은 코드의 구조나 디자인을 변경하지 않고 내부 구조를 재조정하여 코드를 더 읽기 쉽고 유지보수하기 쉽게 만드는 과정을 말합니다. 리팩터링은 주로 코드 중복을 제거하거나 복잡한 메서드를 단순화하는 등의 작업을 포함합니다.
사례 연구
사례 1: 메서드 분리
public void ProcessData(List<int> data)
{
// 복잡한 데이터 처리 로직
// ...
// 데이터 정제 로직
}
원본 코드에서 ProcessData
메서드는 데이터 처리와 데이터 정제를 모두 수행하고 있습니다. 이 경우 메서드를 분리하여 각각의 역할에 맞게 만들어 가독성을 개선할 수 있습니다.
public void ProcessData(List<int> data)
{
var processedData = ProcessRawData(data);
var cleansedData = CleanseData(processedData);
}
private List<int> ProcessRawData(List<int> data)
{
// 복잡한 데이터 처리 로직
}
private List<int> CleanseData(List<int> data)
{
// 데이터 정제 로직
}
위 코드에서 ProcessData
메서드는 데이터 처리와 데이터 정제 로직을 각각의 메서드로 분리하여 가독성과 유지보수를 개선하였습니다.
사례 2: 조건문 간소화
public string GetStatus(bool isActive, bool isApproved)
{
if (isActive)
{
if (isApproved)
{
return "Active and Approved";
}
else
{
return "Active but Not Approved";
}
}
else
{
return "Inactive";
}
}
위 코드는 중첩된 조건문으로 가독성이 떨어집니다. 이를 간소화하여 가독성을 향상시킬 수 있습니다.
public string GetStatus(bool isActive, bool isApproved)
{
if (!isActive)
{
return "Inactive";
}
if (isApproved)
{
return "Active and Approved";
}
else
{
return "Active but Not Approved";
}
}
위 코드에서 조건문을 간소화하여 가독성을 개선하였습니다.
결론
C# 코드 리팩터링은 가독성을 향상시키고 유지보수성을 높이는데 큰 도움이 됩니다. 위의 사례에서는 메서드를 분리하거나 조건문을 간소화하는 등의 작업을 통해 가독성을 향상시키는 방법을 살펴보았습니다.
참고문헌:
- Fowler, M. (2018). Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional.