방프리
21.06.03Chapter4. LINQ 활용 (Item 35) 본문
Item 35 : 확장 메서드는 절대 오버로드하지 마라
확장 메서드를 사용하는 목적은 기존에 개발된 타입을 개선하기 위함이지, 타입의 본질적인 동작 방식을 변경하기
위한 것은 아니다. 그렇기 때문에 확장 메서드는 보조의 역할이지 절대 남용해서는 안되는 함수다.
또한 확장 메서드를 관리하는 네임스페이스의 잘못된 사용도 고려해야한다.
차라리 각 객체의 클래스에 정적 메서드를 사용하는 편이 디버깅에도 더 안전하고 융용하게 사용될 수 있다.
public static class PersonReports
{
public static string FormatAsText(Person target) =>
$"{target.LastName, 20}, {target.FirstName, 15}";
public static string FormatAsXML(Person target) =>
new XElment("Person",
new XElement("LastName", target.LastName),
new XElement("FirstName", target.FirstName)
).ToString();
}
'C# > Effective C#' 카테고리의 다른 글
21.08.31 Chapter4. LINQ 활용 (Item 37) (0) | 2021.08.31 |
---|---|
21.08.28Chapter4. LINQ 활용 (Item 36) (0) | 2021.08.28 |
21.05.29Chapter4. LINQ 활용 (Item 34) (0) | 2021.05.29 |
21.04.24 Chapter4. LINQ 활용 (Item 33) (0) | 2021.04.24 |
21.04.20 Chapter4. LINQ 활용 (Item 32) (0) | 2021.04.20 |
Comments