我想了解並應用SOLID原則。 關於依存倒置原則,這是否意味着禁止對象的合成/聚合? 因此,必須始終使用一個接口來訪問另一個類方法? 我的意思是: class ServiceClass {
void serviceClasshelper();
}
class MainClass {
void MainClass(ServiceClass service); // To u
我正在構建一個路徑規劃器,它將幫助人們通過RPG控制檯遊戲規劃路徑。 我想創建一個表格,顯示舞臺上的每一步。我實際上有implemented a working version of this,但是,它看起來很糟糕的OOP設計;它打破了各種原則,我相信它甚至不是合法的OOP。 問題是,顯然Table是上帝階級。 由於這個原因,我決定重寫它,同時試圖記住適當的OOP原則。我想把Table分成多個類。
我正在瀏覽以下link以瞭解高級別和低級別模塊在依賴反轉原則中的含義。 按照給出的解釋,下面的代碼片段是一個很好的/合適的例子嗎? public class HighLevel
{
private IAbstraction _abstraction;
public HighLevel(IAbstraction abstraction)
{
_abstr
我幾個月來一直在撓頭,我仍然能夠令人滿意地說服自己我有正確的答案。我們有一個非常典型的情況,我們在應用程序的多個層之間存在依賴關係,每個層都在自己的程序集中。作爲例子,我們的應用程序層使用存儲庫層來檢索非常標準的數據。我的問題是,抽象(本例中爲接口)在哪裏存在,爲什麼?在給出的例子中,它是否應該放在應用程序層或存儲庫層或單獨的抽象程序集中? 根據The Clean Architecture des