原创 ThinkAndroid框架 網絡狀態監聽原理

      現在用到網絡監聽的地方越來越廣泛,這裏提供下ThinkAndroid裏的實現方法,還是根據功能原理倒着給出代碼:       1、網絡狀態會發出廣播,監聽網絡狀態肯定通過廣播接收者實現,廣播接受者: /** * @Title

原创 java23種設計模式--裝飾模式(decorator)

      裝飾模式就是給一個對象增加一些新的功能,而且是動態的,要求裝飾對象和被裝飾對象實現同一個接口,裝飾對象持有被裝飾對象的實例,關係圖如下: Source類是被裝飾類,Decorator類是一個裝飾類,可以爲Source類動態的

原创 oschina-app源碼分析-提醒標籤BadgeView使用邏輯流程

      先看下oschina-app裏實現標籤的效果圖:      功能需求比較較簡單,就是服務器有新的消息(文章、公告、評論等)就要通知客戶端,並在相應的模塊tab上顯示標籤,標籤的顯示方法上節已經講過,這裏主要講標籤實現邏輯。

原创 oschina-app源碼分析-提醒標籤BadgeView使用方法

    看過oschina-app的數字提醒標籤BadgeView的使用過程,才發現以前項目中的實現邏輯有問題。以前待的項目組沒個牛人,從我幹第一個項目就我負責開發設計和管理,可想而知,頂多也就實現功能交工。說到底就是經驗不足,所以有時間

原创 java23種設計模式--組合模式(composite)

組合模式有時又叫部分-整體模式,在處理類似樹形結構的問題時比較方便,看看關係圖: 直接來看代碼:   public class TreeNode { private String name; private TreeNo

原创 據結構基礎、線性表、棧和隊列、數組和字符串

工作3年了,這些基礎知識現在拖出來,還真不一定會,沒事摟一眼吧,誰讓這是基礎呢。至少面試有好處。 博客:http://blog.csdn.net/zhangerqing(轉載請說明出處) 這部分內容作爲計算機專業最基礎的知識,幾乎被

原创 java23種設計模式--代理模式(proxy)

     其實每個模式名稱就表明了該模式的作用,代理模式就是多一個代理類出來,替原對象進行一些操作,比如我們在租房子的時候回去找中介,爲什麼呢?因爲你對該地區房屋的信息掌握的不夠全面,希望找一個更熟悉的人去幫你做,此處的代理就是這個意思。

原创 java23種設計模式--外觀模式(facade)

        外觀模式是爲了解決類與類之家的依賴關係的,像spring一樣,可以將類和類之間的關係配置到配置文件中,而外觀模式就是將他們的關係放在一個Facade類中,降低了類類之間的耦合度,該模式中沒有涉及到接口,看下類圖:(我們以一