design-patterns

    0熱度

    1回答

    我正在使用來自Deadbolt的@Pattern註解驗證java類。如果這些字符串中的任何一個出現,我想給出訪問權限:'TM_TASK'或'TM_CHECKLIST'。現在我對如何在@Pattern中提供這些字符串有點困惑,所以如果字符串匹配這兩個字符串中的任何一個,它就會提供訪問權限。我也開放使用正則表達式(儘管我對他們是新手),關於如何使用正則表達式使用正則表達式驗證它是否是這兩個字符串中的任

    3熱度

    1回答

    我想實現一個生成器模式與靜態內部類可以說與域的類A(A1,A2,A3),B與場(B1,B2)和C字段(C1),而所有股票領域(S1,S2)從超類父類: public class A extends SuperClass { private final String a1; ... private A(ABuilder builder) { super(b

    1熱度

    1回答

    我想用JSF做一個登錄應用程序,我發現在很多人使用LoginByUsername(或findByUsername或任何他們稱之爲,無論如何一種方法,找到用戶名並返回用戶並使用SQL),並將它放在Facade(實體類的會話Bean)中! 但是門面本身給了我們一種叫做find(Object id)的東西,而id是用戶名。 所以有什麼更好的:使用查找或製作自己的方法(使用SQL)?爲什麼? 在此先感謝您

    0熱度

    1回答

    我的經驗和對設計模式的理解來自Laravel的工作,所以實際上我只有MVC設計模式的經驗,但是我發現自己爲每個CRUD操作開發了一種「autocompiling」視圖,例如我通常在模型中放置某種數組來描述我希望如何爲模型本身生成視圖,之後我編寫了一個讀出模型屬性的基本視圖,並基於數組生成字段需要,是這樣的: class User extends Model{ public $editFo

    3熱度

    3回答

    Decorator模式(函數)具有many benefits: 這是非常有用的,當一個方法有許多正交關注......也就是說,這些問題都不是相關的,比我們想其他的做無論何時我們稱之爲我們的方法,所有(或部分)他們。這是裝飾模式真正幫助的地方。 通過實現裝飾者模式,我們訂閱開閉本。我們的方法對未來的擴展是開放的,但對未來的修改關閉。遵守開放原則有許多優點。 但是,我發現的所有例子都非常複雜(例如,用

    -1熱度

    4回答

    有沒有辦法以某種方式減少或壓縮傳遞給main這些參數的參數的數量?假設我有一個Ludo遊戲,我需要傳遞玩家人數,姓名,顏色,玩家類型(人類,計算機),計算機玩家的AI類型。這是很多爭論。 我不認爲我可以使用Effective Java中描述的任何技術。有沒有什麼聰明的方法來實現這一目標?

    3熱度

    1回答

    假設我們有一個Client類,它帶有將消息發送到服務器隊列的方法。它也訂閱了排隊和服務器會發送一個通知回到所有客戶端時,它從任何註冊用戶都接收新的消息: public class Client { public void sendMessage(String message) { // Method to send messages to server }

    0熱度

    1回答

    我正在尋找一個很好的實踐/想法如何爲我的解決方案寫一個乾淨的代碼。 比方說,我有類Foo: public class Foo { public SomeEnumType Type { get;set; } .... } 我得到了這些元素,如列表: List<Foo> Foos 現在我想遍歷我的列表,並調用任何EnumType不同的方法。現在我只是在做這樣的事情: f

    0熱度

    2回答

    我有symfony項目,這個項目裏面,我有大自己服務,這是巨大的,複雜的用自己的依賴等.. 我想與目的使用此服務創建facade我在controllers服務,如: $myService = $this->container->get('service_from_my_domain'); 我的問題 - 怎麼我的門面裏我能訪問container服務的依賴。我只知道1種方法 - 在yaml con

    1熱度

    1回答

    我試圖使用泛型實現Strategy + Factory模式。我們的目標是返回一個客戶端類的接口DocumentDao的實現,它可以處理類型T extends Document,所以我有多個Dao接口爲DocumentDao的不同子類型擴展DocumentDao。 這裏是我的代碼: public class Document { ... } public class DocumentA exte