摘要:
最近讀到Visitor模式,還是一知半解的。偶然翻到Uncle Bob對該模式的推導過程,有所心得,和大家分享一下。 Uncle Bob 的鏈接是: http://butunclebob.com/ArticleS.UncleBob.VisitorVersusInstanceOf。個人覺得該模式用來操
閱讀全文
摘要:
狀態模式,個人認為通過將對象行為包裝在不同狀態對象里面,通過控制狀態的變化來實現行為的差異。關于狀態模式的使用場景,如果一個對象在不同狀態(至少3個狀態)下有不同行為,而且還有增加狀態的趨勢,可以考慮使用狀態模式。拿電梯(來源于Java 設計模式——狀態模式)來說,眾所周知,電梯至少有四種狀態: 開
閱讀全文
摘要:
今天有時間看了看google的官方文檔,下載todo源碼,仔細研讀了一下,覺得其思想對開發還是有很大幫助的。個人認為,MVP通過Activity與業務邏輯的解耦,其作為Controller的職責更加單一。 以后增加新的功能或者修改現有功能,只需要修改Presenter的實現從而對Activity的影
閱讀全文
摘要:
最近去一家公司面試,手賤在人家CTO面前自告奮勇寫了一把冒泡法,結果在交換數據的時候出了洋相,回家反思,寫下如下代碼,對自己算是一個鞭策,得到的教訓是不要眼高手低,低調前行。
閱讀全文
摘要:
相信各位對 AsyncTask 不會陌生,雖然它有如下弊端: 1. 如果在activiy內部new 一個AsyncTask, 橫豎屏切換生成一個新的activity,等結果返回時,處理不好容易出現NPE。 2. 容易出現內存泄漏,如果AsyncTask 進行比較耗時的IO操作(網絡操作, 打開一個文
閱讀全文
摘要:
偶然讀到ThreadpoolExecutor的源碼,發現里面使用到了策略模式,抓出來和大家分享下: 感興趣的朋友們可以讀讀 ThreadPoolExecutor的源碼:
閱讀全文
摘要:
在使用Asynctask時,相信有些朋友會遇到以下RejectedExecutionException: 到底是什么原理導致以上RuntimeException呢? 讓我們一起研讀源碼來一探究竟。 首先,可以使用以下代碼來制造上面的Exception: 需要解釋的是,我用的CPU 是四核,所以對應的
閱讀全文
摘要:
個人概念里面handler用來更新UI。一直有一個問題困惱我,為什么我在主線程里面創建一個Handler不需要傳遞傳遞Looper,而在一個子線程里面必須調用Looper.prepare, Looper.loop。今天看了看源碼,終于知道里面的原委。個人覺得一切和ThreadLocal有關,關于Th
閱讀全文
摘要:
最近要用到google accout使用某項服務,奇怪的是之前是英文,登陸后就顯示中文了,我把瀏覽器默認的語言和電腦的系統語言改了也無濟于事,最好還是google 幫忙解決了,原來我的google accout默認就是中文,google太智能也不行啊https://support.google.co...
閱讀全文
摘要:
今天調試google tag manager, 需要看看google analytics source code,無奈沒有源碼,裝個一個插件ejad 還是不行:java.io.IOException: Cannot run program "jad"搞了半天,原來是jad.exe沒有裝http://...
閱讀全文