2014年3月25日 星期二

[FWD] google-guice


看起來會比 Spring framework 輕量化。

https://code.google.com/p/google-guice/wiki/Motivation?tm=6



Direct constructor calls 第一個解法就是使用 factory pattern,但違反了 Dependency Injection 原則,這個也與 single responsibility 有關,以上面連結為例,BillingService 究竟不該負責產生CreditCardProcessor 以及 TransactionLog。

    bind(TransactionLog.class).to(DatabaseTransactionLog.class);
    bind(CreditCardProcessor.class).to(PaypalCreditCardProcessor.class);
    bind(BillingService.class).to(RealBillingService.class);

所以自然而然就會有這樣子的設計: binding,頗舒服的設計。



2014年3月11日 星期二

[PE] Problem 202


這題可以找到公式。

不過找到公式還差一段路,可以靠 Problem 1 (!!) 的想法來做。