我想做一些事情,而不是......獨特的,也許有更好的方法來做到這一點,但...我正在做一個控制(ish)系統的倒置使用擴展方法來啓用/禁用組件所以在我詳細瞭解和迷惑你之前,讓我們看看一些代碼!如何爲使用模塊化擴展方法的類編寫乾淨的代碼?
using TestComponents.CommunicationProtocols.RS232;
//this brings in the
//ConnectRS232 extension method
namespace TestMeNamespace
{
public class Test //Although this class is defined here, we extend it above
{
public void Start()
{
this.ConnectRS232(1, 9600); //calls the ConnectRS232 extension method
}
}
}
因此,簡而言之,使用聲明在與我們DEFINE測試相同的文件中擴展了Test。 (繼承會很好)但是這有一些問題!首先,醜陋的必要條件是「這個」。 BLECH。其次,這是一個混亂的依賴系統。
這裏就是我試圖實現:
- 我想辦法輕鬆靜態方法擴展到一個類(使用聲明的罰款)
- 我要發言很簡單:ConnectRS232() ;
- 如果我不需要,我不想與部分類進行對話。
- 我會很好的使用接口繼承。
請隨時通過評論問我其他問題,但請不要發佈答案,除非你有答案!
編輯:代替提出的問題,我在我的系統中進行一些JIT編譯的C#腳本(www.cs-script.com),而且這些腳本大部分都是由非程序員寫的多年來一直使用真正的「特殊」專有語言來編寫腳本。我想讓事情變得簡單,而一大堆「這個」電話看起來就像雜亂無章。
啊,但如果他編譯沒有CommunicationProtocols.RS232,他將有一個較小的編譯程序。 – Brian 2009-06-12 20:36:59