米克斯.亞齊

米克斯.亞齊,提供了開放資源分享、開發和應用,可以幫助你善用開源整合創新。

EffectiveJava

Effective Java實作Comparator - 就是愛Java

如果集合或陣列內的物件,有1個以上不同的排序邏輯時,那該如何處理呢?尤其是當已經實現了Comparable,又不能變動原本的邏輯時,Mix會採用Comparator來處理。 ( 繼續閱讀… )

Effective Java實作Comparable - 就是愛Java

當集合或陣列內的物件需要排序時,會利用Collections.sort或Arrays.sort來進行排序,通常會implement Comparable,來實現自定義排序,透過回傳值來表示排序的大小。 ( 繼續閱讀… )

Effective Java實作toString() - 就是愛Java

Object class中,也定義了toString()這個方法,因此所有的class也都繼承這個方法。預設是傳回這個物件完整類別名稱,後面接一個"@",及一個不帶正副號的十六進制hash碼。 ( 繼續閱讀… )

Effective Java提升Code Coverage代碼涵蓋率 - 就是愛Java

雖然我們已經有了測試程式,但是如何得知是否已完整測試了主程式?,透過Code Coverage代碼涵蓋率,我們可以快速地得知,目前系統中,有多少程式中被測試過,不考量成本跟投資效益比,涵蓋率越高,代表系統如預期正常運作的面向也越廣泛。 ( 繼續閱讀… )

Effective Java實作hashCode() - 就是愛Java

hashCode()這個方法,也是定義在Object class中,這個是所有class的base class,因此所有的class也都繼承這個方法,預設是傳回這個物件儲存的記憶體位址編號,因為Mix覆寫了equals(),所以也應該一併覆寫hashCode(),Effective Java中推薦的實現方式如下: (…

Effective Java實作equals() - 就是愛Java

equals()這個方法,定義在Object class中,這個是所有class的base class,因此所有的class都繼承這個方法,預設是比較內存位址,不過Mix需要的是商務邏輯上的比較,所以會覆寫equals()。 ( 繼續閱讀… )

Effective Java單元測試TestNG - 就是愛Java

TestNG是另一種單元測試的framework,與JUnit的類似,這次Mix將使用它來撰寫測試程式,大部分所引用的class package都一樣,只差在JUnit與TestNG的字樣,可以直接用搜尋取代字串,快速替代掉,或是用IDE plugin直接轉換成測試程式碼。 ( 繼續閱讀… )

Effective Java單元測試JUnit - 就是愛Java

實作了RoleImpl class,現在要開始單元測試了,或許你會覺得奇怪,才剛做好一個class而已,它並沒有商務邏輯,只有getter/setter與clone(),那是要測試什麼呢?沒錯,傳統上而言,是會等到有功能後才進行測試,甚至沒有單元測試,而是直接交付給測試人員或使…

Effective Java實作類別 - 就是愛Java

定義好了Interface之後,現在我們開始來實作類別:Role,建立一個class,implements Role,將3個屬性及clone()實作出來,單純的getter與setter,可以利用IDE工具,自動產生代碼。 ( 繼續閱讀… )

Effective Java設定遊戲 - 就是愛Java

首先,我們先設定遊戲,一個網頁遊戲的基本場景,主角擁有各種能力,但一開始數值都只有系統初始,隨著故事的發展,會接觸到各種不同的場景,獲得提升角色的道具與裝備,來參與更高難度的任務。 ( 繼續閱讀… )

Effective Java從零開始 - 就是愛Java

或許你已經開始寫Java了,或許只是想要一窺這個的世界,無論是抱著何種心情來看Java,從零開始,會一種沒有負擔,沒有包袱的事,你會發現寫程式不再是枯燥乏味,孤單寂寞的一個人,而是生活中最快樂的學習之一。 ( 繼續閱讀… )