2011-08-10 3 views
0

가능한 중복 : 네임 스페이스와 물리적으로 코딩?


Using Statements vs Namespace path? C#

난 그냥 알고 싶은 실제로 프로그램 코드에서 정의을 대 C# 클래스의 상단에있는 네임 스페이스를 포함 차이.

그래서 :

using System.Windows; 

또는

System.Windows.MessageBox.Show(); 

겠습니까 네임 스페이스가 전체 라이브러리를로드 않거나 필요한 데이터가 사용됩니다 가지는?

혼란 스러울 수도 있습니다.

+2

맹세합니다. 복제본입니다. – BoltClock

+0

@ BoltClock 찾았습니다;) –

답변

4

네임 스페이스와 어셈블리를 구별해야합니다. 그들은 매우 다른 것들입니다.

using 지시 네임 스페이스에 대한 유일한 이야기 - 그리고 정확히 동일한 코드를 생성합니다 MessageBox 참조의 두 가지 방법. 가장 가독성이 높은 코드를 생성하십시오. 보통 using 지시문과 짧은 이름을 사용합니다.

1

첫 번째 것은 읽기가 더 쉽습니다. 가독성을 선호해야합니다. 컴파일이나 로딩 혜택이 있다고 생각하지 않으며, 500kloc 프로젝트에서이 사실을 눈치 채지 못했다면.

0

일부 식별자가 모호한 경우 전체 네임 스페이스를 직접 명세서에 씁니다.

using System.Windows.Forms; 
using System.ServiceModel.Channels; 

... 

var msg = new Message(); // ambiguous 
var msg1 = new System.Windows.Forms.Message(); // OK 
var msg2 = new System.ServiceModel.Channels.Message(); // OK 
관련 문제