摘要: 在上世紀九十年代,Java被設計成了OOP語言,在當時,OOP是軟件開發中的標桿。遠在OOP還沒有出現的時候,已經產生了FP語言,例如Lisp和Scheme,但是它們的益處,并沒有受到學術圈外的人重視。最近,FP的重要性被提升了,因為它非常適合并發編程和事件驅動編程。然而,這并不意味著OO不好,相反,好的策略應該是混用OOP和FP。就算你對并發編程不感興趣,這也很有道理。例如,如果編程語言有一個方便寫函數表達式的語法,集合類庫就能擁有強大的API。
閱讀全文
摘要: 在軟件開發中,好的建議是可遇不可求的。通用設計原則可以指導我們,但現實總是逼著我們,在看起來相互沖突的目標之間妥協,比如,可擴展性和可維護性與規模和復雜性。同樣的,現有代碼庫可以在很大程度上讓我們避免重復造輪子,但想要初級開發者輕松組合那些現有組件來做項目,依然不現實。
閱讀全文
摘要: 對很多應用來說,時間和日期的概念都是必須的。像生日,租賃期,事件的時間戳和商店營業時長,等等,都是基于時間和日期的;然而,Java卻沒有好的API來處理它們。在Java SE 8中,添加了一個新包:java.time,它提供了結構良好的API來處理時間和日期。
閱讀全文