當前位置:編程學習大全網 - 源碼下載 - 社區軟件源代碼

社區軟件源代碼

隨著開源文化的日益流行,參與開源似乎已經成為壹種時尚。壹時間,似乎每個人都願意分享自己的代碼。新年前夕,我的壹個老朋友,壹個壹直對開源嗤之以鼻的J EE架構師,竟然發布了壹個開源的J2EE應用框架(姑且稱之為X框架),這不得不讓我驚嘆開源文化的強大影響力。不幸的是,開源不是免費的午餐。把源代碼公開意味著妳要承受大眾的審查。僅僅過了幾天,國內幾位資深J2EE架構師就得出結論,X framework無論從哪個角度看都只能算是壹個失敗的開源項目。是什麽讓美好的願望最後得到了失敗的結果?本文以X框架為例,評論了初涉開源的項目負責人常犯的壹些錯誤,並指出了加入開源應該遵循的壹些原則,為後來的開源愛好者掃清壹些障礙。在SourceFe的項目現場打開X framework,我們立刻可以看到,在開發狀態壹欄赫然寫著?Production/Stable是指作者認為X框架已經成熟穩定,可以交付給用戶,所以現在評價它不應該太早。但是X框架真的準備好了嗎?打開從SourceFe下載的X framework的源碼包,我不禁大吃壹驚。壓縮包裏真的只有源代碼,整個項目編譯運行所需的所有庫文件都不在其中。從作者自己的論壇上了解到項目需要依賴JBoss JDOM Castor Hibernate等很多開源項目,只好自己下載這些項目,最後在Eclips中。妳不需要對開源文化有很深的理解就能在e中成功編譯整個項目,只要妳用過壹些主流的開源產品,就應該知道壹個開源軟件至少應該同時提供壹個源碼分發包和壹個二進制分發包。源包至少應該有所有必要的依賴庫文件(或者單獨打包依賴庫),完整的單元測試用例(通常是Java項目的Junit測試套件)和執行。編譯和構建腳本(通常是Java項目的Ant腳本或Maven腳本),但X framework的發行包中缺少所有這些內容。如果用戶想使用這個框架,必須像作者壹樣手動下載所有的依賴庫,然後手動編譯構建,而且構建完成後沒有辦法知道有沒有錯誤(因為沒有單元測試)。這種分配形式叫產/穩嗎?開源必須方便地閱讀和構建開源軟件。它應該為用戶提供最方便的方式,只需要壹個命令就可以編譯、構建和測試整個項目,得到壹個可運行的二進制程序。對於Java項目,這通常意味著提供完整的JUnit測試套件和Ant腳本。妳的潛在用戶可能會在壹天內嘗試所有類似的開源軟件。如果壹個軟件需要他半天。完成構建還需要時間,也不可能驗證正確性,開始寫他自己的測試用例。這個軟件很可能第壹時間就被扔到墻角。從SourceFe的項目頁面可以看到,X framework的授權協議是Apache License V (APL)。但是在其發布包中,筆者並沒有看到任何正式的許可協議文本,也就是眾所周知的SourceFe的條目。目的描述可以隨時修改(X框架本身的授權協議曾經是GPL)。如果發行包中沒有正式的許可協議文本,壹旦作者修改了SourceFe的項目描述,用戶應該從哪裏找到支持其合法使用的證據?在X-frame的源代碼中,大部分源文件的開頭都有APL授權聲明,但是有些源代碼非常令人擔憂。例如,在類UtilCache的開頭沒有授權語句,而在JavaDoc中,作者信息@ author
  • 上一篇:新疆阿克蘇供銷農業生產資料有限公司怎麽樣?
  • 下一篇:如何用mapreduce解決實際問題
  • copyright 2024編程學習大全網