2006年6月23日 星期五

開發程式活動及工具

開發程式的活動
開發程式包含了下面幾個活動:
  1. 撰寫說明文件,設計文件,需求文件,專案文件
  2. 編輯程式碼文件
  3. 文件版本控管
  4. 程式測試
  5. 程式除錯
  6. 程式建立
  7. 程式佈署
  8. 臭蟲需求追縱記錄

一篇介紹程式發展工具的好文
用Open Source工具開發軟體: 新軟體開發觀念

我用的程式發展輔助工具
----------------
文字編輯器:vim

程式語言:Java
編譯器:javac
除錯器:jdb, 尚未有深入研究,見:java debug, O'Reilly sleepless 專欄

程式碼結構 index 產生器:
jtags,對 java 結構產生一 tags 的 index 檔,使編輯器可很快走到 java 的某項結構
ctags,支援多個語言

程式建立輔助工具:ant, maven 好像也不錯
安裝程式產生器:目前還用 ant 模擬
log 系統: log4j + chainsaw ,links:log4j 簡明手冊

版控系統:SVN 和 CVS 都有用,目前希望專注在 SVN 上

目前想要的功能:
bug tracker:無,想要找一套,或自已寫
測試軟體:JUnit, htmlUnit,dbunit
vim 能有 code completion
vim 有更好的 xml 編輯功能

CASE Tools
UML 塑模器:ArgoUML 似乎進步了,不過比不上 Rose UML 吧
StartUML 也不錯
RDBMS Exploerer: Squirrel
上面覺得不好用是因為沒跟 vim 整合在一起吧!

2006年6月22日 星期四

值得注意的未來技術:WiMAX

WiMAX的真實面貌

George Ou‧郭文興譯  2005/08/01

WiMAX(全球微波存取互通介面)是IEEE 802.16乙太網路的介面標準,就像Wi-Fi是802.11乙太網路的標準一樣。這兩年來,WiMax已經成為無線網路界最流行的專用字彙。同時它也可能是近年來最被誇大誤解的技術之一。

對WiMAX常見的誤解有:

  • WiMAX的傳輸範圍一定比Wi-Fi大

  • WiMAX的速度比Wi-Fi快

  • WiMAX會跟Wi-Fi競爭,進而取代Wi-Fi

  • WiMAX比Wi-Fi更安全。
  • WiMAX的傳輸範圍一定比Wi-Fi大

    WiMAX的設計可以在需要執照的無線頻段,或是公用的無線頻段運作。只要系統業者擁有該無線頻段的執照,而讓WiMAX在授權頻段運作時,WiMAX便 可以用更多頻寬、更多時段與更強的功率進行傳送。一般來說,只有無線ISP業者才會使用授權頻寬的WiMAX技術。至於Wi-Fi的設計則只在公用頻段中 的2.4GHz到5GHZ之間工作。美國的聯邦通訊委員會(FCC )規定Wi-Fi一般的傳輸功率要在1毫瓦到100毫瓦之間。一般的WiMAX的傳輸功率大約100千瓦,所以Wi-Fi的功率大約是WiMAX的一百萬 分之一。使用WiFi基地台一百萬倍傳輸功率的WiMAX基地台,會有較大的傳輸距離,自然毫無疑問。

    雖然有授權頻段的WiMAX顯然有較長的傳輸範圍,也不代表只要有錢就要趕著去買個WiMAX基地台。你必須要有一個授權的無線電頻段,就像一個音樂電台 也必須要有頻段執照,才能在空中發射無線電波。而如果WiMAX跟Wi-Fi一樣放在未授權的頻段,則它的傳輸優勢就馬上消失了。Wimax跟Wi-Fi 都是基於無線頻段傳輸的技術,所以受同樣的物理定律限制。反之,如果在同樣的條件下,讓Wi-Fi使用授權頻寬,Wi-Fi也可以跟WiMAX一樣快。另 外,雖然WiMAX可以利用較新的多路徑技術。目前新推出的pre-N MIMO(多天線雙向傳輸)技術Wi-Fi產品也使用了該技術。

    WiMax的速度比Wi-Fi快

    WiMAX的擁護者常常在大肆宣揚該技術的速度優勢。雖然WiMAX聲稱最高速度每秒70mbyte,然而最新的Wi-Fi MIMO理論上也有每秒108mbyte的最高速度,而實際環境下也有45mbps的速度。我可以去商場買一個Wi-Fi MIMO的基地台回家組裝,自行確認其速度約為45mbps,然而WiMAX的產品至今卻尚未出現。WiMAX技術同樣受技術問題與物理定律所限制,要談 論WiMAX的實際頻寬還是太早。

    無線ISP業者在建置WiMAX的時候,同樣會遇到現今其他無線業者會遇到的頻寬競爭難題。授權頻段的WiMAX系統涵蓋範圍極大,約數十公里,其建置的 困難可說是一把兩刃之劍。這是因為無線覆蓋範圍非常之大,裡面會有極多的使用者同時競爭同樣的頻寬。就算無線ISP業者使用多個獨立的頻道來運作,在同一 個頻道中,還是會有數倍於Wi-Fi的使用人數。我所認識的每一家無線ISP業者,不管是無線微波業者、3G行動業者,到衛星電話業者,同樣都會遇到頻寬 競爭與QoS(服務品質)管控的問題。

    如果網路的延遲在200到2000毫秒間遊移,這種網路根本不可能使用VoIP、視訊會議、網路遊戲,或任何其他的即時應用。雖然已經有人談論將 WiMAX加上QoS機制,以供VoIP使用,然而實作方法與實作效益仍舊有待觀察。而在Wi-Fi方面,Spectralink上的QoS實作成效已被 證實,同時802.11e的無線QoS標準也將要推出。無線ISP業者的WiMAX建置一定會比非授權的WiMAX或Wi-Fi基地台建置來得慢,因為對 無線ISP業者不可能會去讓少數用戶使用整個頻段。

    私人而使用公用頻段的WiMAX基地台,與Wi-Fi基地台的設置到底何者為快,將取決於產品的推出。由於理論上他們的傳輸功率與頻段大致相同,而市面上 已經有大量而且成熟的Wi-Fi產品,我個人會賭Wi-Fi這一邊贏。Wi-Fi在非授權頻段這一邊已經領先一大步,很難想像WiMAX在這個領域有辦法 成功。這是為什麼WiMAX多是往無線ISP業者的方向來推動。

    WiMAX將與Wi-Fi競爭,進而取代Wi-Fi

    最狂熱的WiMAX支持者甚至辯稱WiMAX將會完完全全的取代Wi-Fi,讓Wi-Fi成為歷史。這種想法說好聽一點是過度樂觀,過難聽一點則是荒謬無 比。WiMAX在整合與標準化無線微波ISP市場的過程中,將會有一席之地,但它並不會直接的與大多數的Wi-Fi建置競爭。WiMAX將會聚焦於授權頻 段的無線ISP市場,而Wi-Fi將會繼續主導私用的無照無線市場,如公司或家用的無線網路。WiMAX與Wi-Fi唯一會重疊的地方,大概就是收費的 Wi-Fi存取點了。

    由於WiMAX連線的涵蓋面積較大,以數十公里計,而Wi-Fi存取點是由數十米的小片面積所組成,所以WiMAX在全球涵蓋上會有佔有優勢。但是因為目 前的市場佔有率較高,以及因為小範圍、同時競爭的用戶人數較少,造成Wi-Fi較快、延遲較小的特性,Wi-Fi的收費存取點仍可能持續流行。至於 WiMAX是否能擊敗Wi-Fi的收費存取點,關鍵因素將是WiMAX的QoS機制是否良好實作,以及如何解決過多使用者的問題。如果WiMAX技術跟現 今的無線ISP一樣,具有過多使用者與高延遲的問題,它絕對不可能讓Wi-Fi收費存取點的需求消失。

    WiMAX較Wi-Fi來得安全

    WiMAX比Wi-Fi更安全是另一個盛傳的錯誤觀點。事實上WiMAX使用的是與Wi-Fi 的WPA2標準相似的認証與加密方法。其中的微小區別在於WiMAX的安全機制使用3DES或AES加密,然後再加上EAP,這種方法叫PKM-EAP。 而另一方面Wi-Fi的WPA2則是用典型的PEAP認証與AES加密。沒人可以說其中一個一定絕對比另一個安全,因為好的安全性往往取決於實際建置方式 的正確與否。

    讓社會大眾知道WiMAX的正反兩面十分重要。WiMAX技術與802.16標準是十分重要的,因為他是無線ISP業者未來合理的演進方向。但是它絕非無 線網路技術萬能而且終極的解決方案。WiMAX或其他的無線網路技術將會互補,同時這些無線技術也不可能取代有線技術的需求。無線的連線方式必定更有行動 力、更方便。至於有線的連線方式,只要能牽上線,則一定更快,更可靠。我們必須揚棄所有關於WiMAX的不實謠言,務實看待這個技術的真實面貌。

    Assertion

    裡面缺乏一篇介紹,
    assertion 的開啟及關閉是由
    java -ea
    來設定的,也就是可在虛擬機啟動時才指定。

    JavaWorld@TW - Assertion 介紹與使用

    2006年6月20日 星期二

    ANT 的檔案管理

    ANT 能從不同來源取得檔案的方法,
    像是 ftp, unzip, copy, cvs 等,
    其中一個重點是當目的檔案比來源檔案舊時,
    應該不可覆蓋來源檔案,相關的屬性如下:


    [v1|v2] 第一個表預設值
    ftp.depends=[no|yes] yes 表不覆蓋
    ftp.newer=[no|yes] yes 表不覆蓋
    unzip.overwrite=[true|false] false 表不覆蓋
    copy.overwrite=[false|true]false 表不覆蓋

    ANT 的角色

    ANT 的角色

    ANT 的角色是作為一個跨平台的 shell script。

    shell script 是幫助自動化發展應用程式的非核心工作,
    像是檔案管理、源碼管理、程式庫 dependency 分析、
    程式師合作的溝通。
    讓程式師專注於解決他的問題。


    Ant vs Maven

    2006年6月15日 星期四

    Ant vs Maven

    Ant 有三個階層
    project target task
    但彼此互不關聯
    Maven 在 project 層則隱涵一些預訂的 target

    項目管理: Maven 讓事情變得簡單

    2006年6月5日 星期一

    解決 IE 無法顯示 blogger 的問題

    剛剛發現把 blogger 的
    [設定]-[格式]-[日期語言]-[中文台灣]
    就可了

    把 IE 的編碼改成 UTF-8
    [檢視]-[編碼]-[Unicode(UTF-8)]

    一片空白的UTF-8網頁
    裡有更多解法