2010-10-09 75 views
0

我知道這個問題已經被問,並回答了很多次,但我還是再次問同樣的問題...如何組織接口和類

我已經開始在行進應用程序的工作和目前我我正在創建底層DAO,因此我打算創建一個通用的DAO,它的實現以及每個實體類的接口。

我的查詢是什麼是組織所有的這些接口以及其實現的最佳途徑。

在此先感謝

回答

0

如果我理解正確的問題你找對組織您的包裹建議?

我再拆之間。 com.yyy.zzzz.dao.interfaces和com.yyy.zzzz.dao.impl

+0

是的凱文你已經很好地理解了。當我們談論整個申請時,這個組織是一個選擇問題還是其他問題? – umesh 2010-10-09 08:34:06

+0

我印象深刻,我只是醒了。 :) – 2010-10-09 08:35:07

+0

任何人都在考慮爲此答案投票,請爲@Colin Herbert投票,他的答案會更好。 – 2010-10-09 09:18:50

0

你是誰可以在你的應用程序應該如何組織決定的唯一一個。當然,您可以遵循一些建議,例如Java命名約定的軟件包,甚至嘗試爲您的應用程序中隱含的每一層拆分軟件包;但最終,你必須爲自己選擇。

@Kevin D的解決方案是正確的,你可以使用com.company.project.dao.interfaces(我不會用interfaces,因爲它是一個複數,我避免包名複數,但它再次取決於你)和com.company.project.dao.impl或者你可以使用包來分割不同的實現。這是你想要的。沒有人應該告訴你如何拆分自己的應用程序(除了你的團隊)。

唯一的(但仍兼)規則我想告訴你,遵循的是「有一致的名稱」。
也就是說,選擇您的項目約定,但堅持下去,當然選擇的名稱爲您的包(但它也適用於類,變量)必須代表他們的內容(但我想這是常識)。在另一個說明中,我不知道你的工作環境,但是你應該閱讀Adam bien's Weblog,你會看到一些關於DAO和「默認實現」最佳實踐的文章,也許它會涉及到你的項目。


資源:

+0

感謝您的詳細信息和是的,我同意了我誰也拿在一天結束的時候決定我要求的意見,如果真有一個版本之外的其他典型應用該類超支.. – umesh 2010-10-09 09:09:59

+0

@umesh,命名事物最有效的方式是讓團隊中的每個人都可以輕鬆理解。通常,開發人員選擇的命名約定對於讀取代碼的任何人都有足夠的意義。這就是爲什麼軟件包從一個項目到另一個項目如此不同,但是具有不同約定的兩個項目可以理解得多。 – 2010-10-09 09:22:25

+0

您無法使用'com.company.project.dao.interface',因爲'interface'是一個關鍵字! – 2010-10-09 09:41:49