12.11 Obsolete
Obsolete Attribute는 이름에서 이것의 의미를 나타내고 있습니다. Obsolete는 ‘일반적으로 쓰이고 있지 않는’ 이라는 뜻을 지니고 있습니다. Obsolete Attribute는 메서드에 사용되며 해당 메서드를 사용할 경우 컴파일 시에 경고를 발생시키는 기능을 합니다.
▣ Obsolete Attribute |
더 이상 사용하지 않는 프로그램 요소를 표시합니다. |
Obsolete Attribute가 붙어있는 메서드가 호출되면 컴파일 시 Attribute에서 설정한 내용이 명령 프롬프트 창에 경고로 출력됩니다. 만약, 여러분이 어셈블리를 업그레이드를 하여 배포한다면 기존에 있던 기능의 일부분은 사용하지 말라는 경고를 보내고 싶을지도 모릅니다. 이런 경우에 Obsolete Attribute를 추가하면 됩니다. 다음의 예제는 Obsolete Attribute가 선언된 메서드와 선언되지 않은 메서드를 호출하는 예제입니다.
& |
ObsoleteTest.cs |
Ü Obsolete Attribute를 테스트하는 예제 |
using System; | ||
C:\C#Example\12>csc ObsoleteTest.cs ObsoleteTest.cs(11,3): warning CS0618: 'ObsoleteTest.ObsoMethod()'은(는) 사용되지 않습니다. '지금 Obsolete로 선언된 메서드를 사용하였습니다. ' C:\C#Example\12>ObsoleteTest Obsolete Attribute Method!! Normal Method!! |
예제를 보면 컴파일할 때 경고 메시지가 나타나는 것을 볼 수 있습니다. Java를 사용해 본 적이 있으신 분은 Deprecated라는 구문이 생각나실 것입니다. 사용자가 ObsoMethod() 메서드를 사용한다면 Obsolete에 의해서 경고 메시지를 받을 것입니다.
[Obsolete("지금 Obsolete로 선언된 메서드를 사용하였습니다. ")]
public static void ObsoMethod(){
Console.WriteLine("Obsolete Attribute Method!!");
}
[출처] [펌] Obsolete|작성자 눈꽃천사