歡迎您光臨本站 註冊首頁

趕緊重寫Java的時間和日期API吧!

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0
最近Java.net的投票問題是:"在Java 8中實現JSR-310(新的Java日期和時間API)有多麼重要? "在這篇帖子發布的時候,對該話題已經有超過150條回應.其中"覺得非常重要"(53%),"重寫當然更好,使用當前的API也不錯"(22%)這兩種觀點以壓倒性比例蓋過了其他各種意見.

顯然,對於重寫Java時間和日期API這件事情,有四分之三的回復者認為,"重寫更好"或者"重寫很重要".我的觀點同大多數人一樣,我認為如下的說法並不為過:"Java當前的Date類和Calendar類提供的方法並沒有和廣大開發者一同進步."到目前我感到最驚奇的就是,居然有2%的人選擇了"我寧願使用當前的時間和日期類",我都不禁懷疑,是不是這些API的作者們投了這2%的票呢?

我多次使用過Java的日期/時間/日曆API.當我用它們的時候,我真的不喜歡它們,但是我強迫自己學會容忍他們.有的時候我甚至忘記了這些 API有多麼噁心,直到我再次使用他們為止.我最近幫助過我的一個熟悉Java(但是不熟悉時間和日期API)的同事,企圖讓他學會如何使用 Date/Calendar/String類進行配置和顯示.把這些亂七八糟的東西給他講清楚是如此的困難,因為利用這些過於靈活的API寫程序,對我自己來說本身就困難重重.從我同事的臉上,我看到了迷惑的表情,他一定認為我要麼在跟他開玩笑,要麼就是我自己都不明白自己在說什麼.儘管我可以讓這些 API按照我的意圖工作,但是其難度遠遠超出了其應有的水平.

也有很多其他人表達了對使用Java時間/日期API所感到的痛苦.Rob Sanheim在2006年提出了時間和日期API的問題,並將其納入"最爛的5個Java API"的範疇(Calendar、Date和DateFormat/SimpleDateFormat).2005年,Cameron Purdy的文章《七個可能造成功能性障礙的設計習慣》,把Java的日期處理API推上了風口浪尖.Tero Kadenius在2011年的文章《Java中的日期處理》再次提醒我們:"眾所周知,使用Java時間日期API寫程序是如此地痛苦."2009年的一篇名為《Java日期如此糟糕》的帖子,可謂是名符其實.

目前Java.net的調查結果應證了我的觀點和大部分Java開發者是相同的.在閱讀了大量的文章和博客后,我發現,絕大多數的Java開發這都迫切希望看到在Java中能出現一套更好的處理時間和日期的API.


[火星人 ] 趕緊重寫Java的時間和日期API吧!已經有501次圍觀

http://coctec.com/docs/java/show-post-59865.html