程序猿進化之架構獅:開源軟體

軟件框架是一個容易理解的概念,從和目的、主題、材料和結構的聯繫上來說,軟件框架和建築物的架構相似。軟件工程就像建築工程,從無到有建造一個可供使用的產品,目的都是為了解決客戶問題。

程序猿進化之架構獅:開源軟件

既然架構相似,那性質也是相同的。試想一下,買房子(軟件)你想要精裝房(成品軟件)還是毛坯房(軟件框架),前提是這房子得是你的,否則再好的精裝房叫你搬出去你就不能住,再差的毛坯房你愛買不買,使客戶被供應商牽著鼻子走。非開源軟件核心技術在別人手中,你只有使用權或在他基礎上開發,一但進行大規模的升級肯定會有衝突的,而開源軟件就是把控制權在自己手中,升不升級全憑自己。

程序猿進化之架構獅:開源軟件

這就是力軟敏捷開發框架最大益處——開放源碼。框架只是一個半成品,還要經過開發商的完善,才會到客戶手中。如果客戶反應軟件的問題給軟件開發商,而問題出在框架上,開發商只能去找框架供應商,來來去去把客戶給惹毛了,衝著開發商發火,開發商就把氣撒在供應商身上,使得三方不僅在經濟上的損失,還損壞公司的形象。開源的軟件框架把開發商拯救出來,開放的源碼可使雙方協調作戰,更加快速地響應需求,不必等到軟件交付時再做修改。

開源的好處是不言而喻的,畢竟開源軟件是全世界認同的。開源軟件對商業來說有好多強有力的競爭優勢,甚至比低價軟件更有價值。

程序猿進化之架構獅:開源軟件

在你使用力軟敏捷開發框架投入開發並整合到你的基礎設施之前,你需要足夠了解你選擇了的產品。你肯定想要一個處於積極開發的產品,有定期的安全更新和漏洞修復,同時在你有需求時,產品能有相應的更新。這最後一點也許比你想的還要重要:沒錯,解決方案一定是滿足你的需求的。但是產品的需求隨著市場的成熟以及你商業的發展在變化。如果該產品隨之改變,在未來你需要花費很大的代價來進行遷移。一個有源代碼的產品能幫你再原有基礎上修改而不是來個大換血。

軟件公司存在非常高的不穩定因素,人才流動非常頻繁尤其是核心人物,可能導致項目胎死腹中。開源軟件就可儘可能的減少損失,核心人員的流失可以讓其他人快速頂替,因為開發過程都是公開的。

程序猿進化之架構獅:開源軟件

所以用戶和顧客能直接看到和參與到產品的開發中,開源項目比那些只關注於營銷團隊回應的閉源軟件更加的貼合用戶的需求。你可以注意到開源軟件項目趨向於以“寬鬆”方式發展。一個商業供應商也許關注在某個特定的事情方面,而一個社區則有許多要做的事情並致力於開發更多的功能,而這些全都是公司所感興趣的。這導致更少的為了銷售而發佈的版本,因為各種改進混搭在一起根本就不是一回事。但是它創造了許多對用戶更有價值的產品,客戶可以從中選擇對自己有用的部分進行整合,形成一個完善的產品。

程序猿進化之架構獅:開源軟件

一個軟件產品從開發到出售需要花費大量時間和人力,而且越到後期越複雜,所涉及到的知識,內容,問題太多。在某些方面使用別人成熟的框架,就相當於讓別人幫你完成一些基礎工作,你只需要集中精力完成系統的業務邏輯設計。而且框架一般是成熟,穩健的,他可以處理系統很多細節問題,比如,事物處理,安全性,數據流控制等問題。力軟框架都是經過許多人使用,所以結構很好,擴展性也很好,而且它是不斷升級的,你可以直接享受升級代碼帶來的好處。

程序猿進化之架構獅:開源軟件


分享到:


相關文章: