天天看點

DIY迷你郵件用戶端開發手記(一)

       基于娛樂開源commons-email-1.x包之後,花了點時間重新整理了一下代碼和GUI設計,隻想利用已有的元件搭起一個自己的郵件用戶端,如果在往高出走點,也可以弄一個郵件伺服器來。

      1.開發目的

        簡單,甚至單純的可怕。造重複的輪子,感受不一樣的過程

      2.開發環境

       主流Java開發IDE NetBeans ; 使用開源jxl.jar,jdom-1.0.jar,commons-email-1.x包,對郵件發送進行簡單的二次封裝,可以參見http://aiilive.blog.51cto.com/1925756/1038558

      3.需求,功能

       需求很實在,就是在學習的過程中想切身的感受一種軟體開發的疊代的過程。功能自然是基本滿足發郵件的功能,主要想着是弄一個可以将已經存在的文檔中的電子郵件位址直接作為收件人來使用,這樣也就達到根據不同的政策來實作不同的業務處理的功能。

     4.GUI設計

       軟體的核心是其中對錯綜複雜的業務進行的處理,不過沒有良好的使用者界面,顯然是挑戰這麼多年Windows的權威和價值觀。是以,關于GUI的設計也是一門很深的學問。自己這個郵件用戶端,滿足自身對美學的要求即可,不敢舍本逐末,也不敢殘害視角。

       貼出來一張最終的界面圖:

DIY迷你郵件用戶端開發手記(一)

    5. 停下來多想想。

       5.1  如何編寫這些政策性的郵件發送處理

       5.2  如何處理一些關于字元串,郵件位址驗證,擷取收件人位址資訊

       5.3  使用者界面的布局,各個元件在特定時間的狀态

       5.4  如何測試,并且保證已經完成的代碼将可以直接添加到工程中使用

    6. 錯過5,瞎忙乎了一陣

        寫到這裡算是對這幾周利用碎屑時間開發這個小應用的總結和反思吧。

     第一,雖然是碎屑時間,但是沒有對整個應用做一個較為全面的分析群組織策劃,而是匆忙的打開IDE,迫不及待的寫代碼,最後的結果是後面更多的碎屑時間用來收拾前面留下來的問題,基本上是對前面的代碼重新寫了一遍,而且還有點可惜的删減,重構,組織和整合。

  第二,經常會被一些事情打斷手頭這個應用的開發,由于沒有很好的設計,每次都感覺是新東西一樣,還得再次熟悉,各個類之間的關系顯的格外混亂,相反更是浪費時間,還打擊了積極性。

  第三,深思熟慮的重要性。沒有考慮好,請不要動手,可惜動手了;沒有設計好,請不要動手,可惜動手了;沒有測試完成,請不要開始下一塊的編寫,可惜還是動手了。可能大多數人都會煩這個毛病,最後的苦果當然還得用自己碎屑的時間給吃掉,這是何苦呢!這可能是苦逼生活來源的一部分吧。好的軟體是設計出來的,真沒錯,錯在太急于看到顯示出來的東西了。完了,開發周期延長了,瞎忙了一統。

繼續閱讀