2010-05-12 67 views
1

自今年2月份以來,我一直致力於使用SmartGWT組件構建的應用程序。通常情況下,我發現這些組件非常好用,而且它們是開放源代碼並且可以自由使用的事實就非常棒。然而,我似乎無法動搖這種感覺,這不是一種持久的發展方式,但我無法解釋爲什麼。也許這是因爲我知道,現在任何時候開發它的團隊都可能決定停止,這會讓我和我的團隊陷入一片醃製,但我相信肯定還會有更多的東西。在提交組件庫(如SmartGwt或Swing)時是否存在任何危險?

我一直在想方設法向自己解釋這種感覺,但無濟於事。因此,我轉向你,親愛的社區,詢問你是否可以拿出一個很好的理由,使用SmartGWT等組件庫構建你的應用程序(這應該是未來很多年) ?是否有任何理由我應該自己開發組件?或者,在決定不重新發明輪子時,我是否做出了正確的選擇,只是爲了隨時可用?

回答

4

由於它是開源的,抓取源代碼的副本並驗證您是否可以從源代碼構建組件。這將平息任何依賴退出項目的團隊的擔憂。

唯一的缺點是,如果他們退出該項目,您必須花費一些時間和人力來學習他們的代碼庫,以便在該團隊早已離開後您可能想要應用的任何錯誤修復。

您可能感覺到的是失去對產品的控制。一些類型的控制很容易放棄。例如,我並不真正關心如何控制Web服務器的工作細節,只要它符合HTTP標準。其他項目對100%控制非常重要。如果一個組件是您的開發工作的核心,那麼值得考慮投資以獲得組件的控制權。

請注意,您不必重新發明輪子,您可以始終加入開源工作(如果他們願意接受您)和/或支付其他人維護開源代碼(如果您缺乏在開發這些組件的技能)。

+0

+1關於必須學習代碼庫的一個好處。 – 2010-05-13 00:45:13

3

SmartGWT是GNU LGPL,所以如果他們停止使用它,你會處於確實的狀況,如果你真的創建了自己的圖書館(但是已經保存了大量的工作),你將會處於這種狀況。

不重新發明輪子是只有通常的方式來領先。建立自己的東西的唯一原因是如果你不能與外面的東西一起工作。

爲了解決您認爲圖書館不是一件穩定的事情,請考慮爲圖書館本身做出貢獻。這就是人們使用開源軟件處理失範感的方式。

-1

與使用封閉源代碼庫和該公司停止更新相比,您處於一個更好的位置!老實說,通過這個推理,你不應該使用任何第三方軟件。你寫你的網絡服務器?你的jvm?你的操作系統?

+0

爲什麼在第二句話中說「誠實」?第一句話是不是100%準確? – 2010-05-12 19:16:43

相關問題