2013-02-18 18 views
-2

我有一個Window Form App項目。目前我所有的代碼都在 Form1.cs文件中,這是默認文件。現在我在這個單個文件中有大約1300行 的代碼。我想把這一個文件代碼分解成幾個文件,以提高可讀性和易於處理。有沒有辦法做到這一點。long c#文件分解

謝謝

+3

重構,重構,重構... – Maarten 2013-02-18 08:18:21

回答

0

如果你不想做任何激烈的事情,你可以用partial關鍵字分割你的班級,並把每一塊放在它自己的文件中。

public partial class Form1 { // file1.cs } 
public partial class Form1 { // file2.cs } 

http://msdn.microsoft.com/en-us/library/wa80x488(v=vs.80).aspx

+0

按照SO – allen 2013-02-18 08:49:18

+0

的建議獲得投票評論將是一件好事,但我認爲如果有人問如何提高單個文件應用程序的可讀性和可用性,會有更好的建議。如果它被削減了一半,那麼大混亂不會變得更好。 – 2013-02-18 09:13:02

+0

@TimSchmelter我同意你的意見,並承認我的答案缺乏更好的建議。這表示可能有真正的理由不觸及混亂,例如。遺留代碼具有明顯較高的重構成本。不知道確切,但希望提問者已閱讀提格蘭和你提到的觀點。 – allen 2013-02-18 09:50:28

1

使用重構。用鼠標右鍵點擊部分代碼 - > Refactor-> Exctract方法。或者Ctrl + M組合。

1

是的,絕對。您可以使用Partial classes來實現此目的。

而這不僅是你的代碼的可讀性,因爲它甚至可以在單個文件中(這取決於我的意思)。但是當您使用源代碼控制時,在不同文件之間拆分相同的代碼可以讓您在組開發中更加靈活。

所以多個團隊成員可以在同一個Form類上工作,但是由於他們在基於某種邏輯分類的不同IO工件(文件)上工作,他們不會跳入衝突(儘可能多) 。

也想一想。

+1

我認爲建議使用部分類不是學習OOP的正確方法。 – 2013-02-18 08:22:24

+1

@TimSchmelter:絕對正確。事實上,它不是*絕對*關於學習面向對象。誰問這個? – Tigran 2013-02-18 08:23:13

+1

OP希望增加位於單個文件中的代碼的可讀性和可重用性。 Imho是學習如何將一件大事分成許多小邏輯包的最好方法,就是學習OOP。 – 2013-02-18 08:27:13

0

通常沒有把所有的代碼放到一個單獨的類一個很好的做法。根據他們的擔憂,我建議你應用「分離關注原則」並將這一類分爲多個類。

http://en.wikipedia.org/wiki/Separation_of_concerns

關於組織代碼:通常人們以這樣的方式組織代碼,1個文件中包含1類。如果該類太大(並且不能被分開),那麼仍然可以使用C#的部分類功能將同一類組織到多個文件中。