2012-01-23 46 views
1

這可能是一個普遍問題。
我正在尋找關於如何設計的建議(從架構,我認爲這是正確的詞,透視)。WPF程序設計

我建立一個應用程序,將包括以下內容:

1) WPF的Windows(目前有這個設置爲主要切入點)

2) SQL Server事務(考慮使用CLR SP如該鏈路建議的)

3)和背景數學

0123的敲擊

我試圖找出是否應該做這一切的邏輯在一些局部類:

public partial class MainWindow : Window 

,或者我應該在代碼在一個單獨的類SQL材料......等

任何想法,建議非常感謝!

P.S. SQL連接將在整個時間保持打開狀態,如果這會產生影響

+3

進行單獨的課程。 – SLaks

+3

什麼是泳池問題? – keynesiancross

+0

@yms我正在通過meta尋找,有沒有什麼具體的不是問所謂的「池」問題?我找不到任何關於避免這樣做的具體內容:/。 –

回答

2

一般而言,單責任原則(SRP)是一種很好的實踐。這裏的一般想法是,你寫的每一堂課都有一個改變的理由。

就你而言,你談論的是一系列至少有兩個職責的類:向用戶呈現信息和查詢數據庫。現在,讓我們假設在維護應用程序時,需要更改查詢數據庫的內容。你打開你的Window部分並更改代碼,在該類中引入迴歸的可能性。

現在,您有一個不幸的情況,更改數據庫訪問邏輯可能會破壞您的GUI。從概念上講,這是沒有意義的,它會讓你的應用變得脆弱。如果你把自己的責任分解成了不同的課程,你就不會有這種擔心。

分開你的課程。長久以來,你不會後悔。 :)