strategy-pattern

    2熱度

    3回答

    我們正在開發一個搜索引擎Web應用程序,使用戶能夠搜索約200個門戶的內容。 我們的業務合作伙伴負責維護和提供solr/lucene實例,該實例正在爲數據建立索引數據。 我們的應用程序查詢以人性化的方式解決並呈現結果。但是,我們想知道如何限制查詢的數量,可能使用某種形式的緩存。結果可以緩存幾個小時。 我們想知道的是:什麼可能是好策略用於緩存查詢結果?很明顯,我們期望方法調用的變化很大......做

    1熱度

    3回答

    我希望能夠收集幾個驗證實體,全部共享相同的接口。這是我想出了: public interface Ivalidateable { bool IsValid(IValidateParam param); } public interface IValidateParam { } public abstract EmployeeStrategy: Ivalidateable

    2熱度

    2回答

    我想在我的應用程序中包含策略模式。 我已經存儲在lib下面的類。 class Network def search raise "NO" end def w_read raise "NO" end #... end 和 class FacebookClass < Network def search

    6熱度

    3回答

    我經常被這三個術語所困惑。這三個看起來和我差不多。有人可以用例子清楚地向我解釋。 我看過類似的帖子,完全不理解。

    2熱度

    1回答

    爲什麼需要在戰略模式中的上下文類? 例如,我想壓縮文件使用zip或rar壓縮。我們可以用下面的文件來解決這個問題。 1.ICompressionStrategy...Its interface 2.ZipCompressionStrategy ..implements IcompressionStrategy 3.RarCompressionStrategy ..implements Icom

    3熱度

    1回答

    我們爲客戶提供SAAS應用程序。主要的應用程序是一個Web應用程序,不同的客戶端可以在不同的版本。例如: Company A version 1.0 Company B version 1.1 我們在App Store中也有Android/iOS應用程序。由於這些應用並不總是最新的,我們也可以在市場上有多個應用版本。例如2.0和2.1。因此,對於兼容性的原因,我們必須確保每個客戶端版本的作品

    13熱度

    4回答

    策略模式如何與依賴注入不同? 即低於是你可以用策略模式怎麼做: class Foo{ private readonly ISortAlgo _sortAlgo; public Foo(ISortAlgo sortAlgo) { _sortAlgo = sortAlgo; } public void Sort() {

    1熱度

    2回答

    我正在爲C++中的項目設計一些類,但我遇到了問題。 我想創建一個camera類,它包含所有需要的值(例如轉換矩陣),但是呈現camera的函數應該是可交換的。這聽起來像是戰略模式的常見案例。因此,我創建了一個界面,該界面定義了render-function,並將camera類別pointer賦予此界面。 問題是render function需要訪問camera類中的所有數據,因此我給這個函數一個指

    2熱度

    3回答

    截至目前我的代碼有多個if else語句分支,具體取決於字符串的值。即 if(input == "condition1") { // Some logic } else if(input =="condition1") { // Some other logic } 我打算使用策略模式。這是正確的方法嗎?如果是,我如何根據條件創建正確的具體策略對象? 謝謝

    4熱度

    4回答

    我重構這是通過一個case語句一遍又一遍地做接近同樣的事情,一些遺留代碼: switch(identifier) case firstIdentifier: (SomeCast).SetProperties(Prop1,Prop2,Prop3); break; ... case anotherIdentifier: (SomeDif