當一個項目不斷的擴大的時候,會面臨的問題是不斷的有以下情況;
1、以前編寫程序的人離職了,新來的程序員看不懂以前的程序,或者覺得以前的程序部夠好,但又不希望刪除;
2、當實現第三方接口時,如:讀寫IC卡,以前用的是VB實現,現在改為C/C++了,而主程序有的C#;
……
以上的情況適合接口實現,開發思維如下。
//定義程序員接口 interface IProgramer { //定義程序接口函數 string LanguageCode(); } //C/C++程序員實現 class CProgramer : IProgramer { string CLanguageCode() { return "C/C++"; } } //VB程序員實現 class VBProgramer : IProgramer { string VBLanguageCode() { return "VB"; } } //Delphi程序員實現 class DelphiPrograme : IProgramer { string DelphiLanguageCode() { return "Delphi"; //用Delphi語言寫代碼; } } class Programer { public void LanguageCode(IProgramer programer) { //此次調用LanguageCode函數,有可能是VB,也有可能是C++ programer.LanguageCode(); } } public class main { public main() { Programer pro = new Programer(); IProgramer iprogramer; //如果需要用C/C++代碼 iprogramer = new CProgramer(); pro.LanguageCode(iprogramer); //如果需要用VB代碼 iprogramer = new CProgramer(); pro.LanguageCode(iprogramer); //如果需要用Delphi代碼 iprogramer = new CProgramer(); pro.LanguageCode(iprogramer); } }