如何評價 wepy 這款小程序開發框架?

1.開源的背景

它不是一個KPI開源項目,也不是一個為了開源而開源的項目,應該算是一個自外而內的開源項目。我本身是在一個業務團隊,本職工作是要保證業務99.999%的可用性,與開源沒有任何關係。而開源純屬個人愛好。這個項目一開始只是自己在摸索著去解決小程序開發過程當中的一些問題。16年11月份在內部開源後並沒有受到太多關注,於是放在 Github 個人賬號開源,其間還因為某些原因還面臨被下架風險。Github開源後外界關注度越來越高之後,內部才開始被重新關注,然後少數內部團隊才開始投入使用,也就是我說的自外而內的開源。大概是在17年初騰訊開源的同事同我,以及當時我在的團隊溝通想將項目回遷至 Tencent 域下。大概17年年底才走完流程正式遷入Tencent域下、至此才完成了所謂的“轉正”。發展到現在,微信討論群組裡WePY的開發者大概有5000多人,現在 google 隨意一搜就能看到很多的很多很多的資源,或者直接看這裡:

aben1188/awesome-wepy

因此,如果說這個項目真的是沒有什麼價值,那應該也不太對吧。

2. 開源的目地

WePY 的對外開源的目地並不是要去分享一個很成功的解決方案,而是我認為這套方案能夠解決在小程序開發中遇到的一些實際問題,並且希望能借助外界的力量去幫助一起完善這套方案,因此在功能並非十分完善的情況下就開源了。在眾多開發者幫我踩坑的過程當中去迭代,因此從最開始一天一個npm版本到後來一個星期、一個月一個 npm 版本。這些不就是我理解的開源應該做的事情麼?我提供方案為開發者提供便利,開發者在使用時幫助一起把方案做得更完美。事實上,從我在微信群裡收集的評價來看,這個項目的確是幫助了部分開發者:

如何評價 wepy 這款小程序開發框架?

3. 代碼質量問題

這個問題我從來沒有逃避,不只一次我在對外的分享裡提到過 WePY 存在很多問題,我也多次私下跟朋友吐槽這個項目寫得太差太草率,項目應該是10月份開始的,大概就花了4個週末的時間,勉強算8天,然後就上Github了。項目有單元測試但是隻覆蓋到核心庫部分,編譯那一部分是完全沒有測試的,後面沒有繼續把這裡補齊就是因為代碼寫得幾乎不可被測試,改造的成本無疑於重構代碼。因此這裡的質量可想而知,所以我也經常說當前的star數與項目本身的質量嚴重不對等。項目最初的想法就是解決小程序npm資源引用,以及組件化開發的問題。在早期確實能提供不錯的開發效率。大概在17年11月份,官方自己推出了組件化方案,那這個時候 WePY 帶來的效率提升反而沒那麼明顯了,反到是 bug 都給暴露出來了。一直以來我都想重構代碼,但到這個時候才意識到重構迫在眉睫。這也是為什麼我要做2.x的版本。

4. 項目維護問題

目前來說,在騰訊內部,整個項目還是在由我一個人在維護,目前總的Issues數約1200,PR數接近200。除了少數 Contributors 會幫忙回覆一下之外,大部分都是由我自己處理,私下發zip包給我,我幫忙定位的bug的也不在少數。前段時間因為一些個人原因沒有辦法即使關注到項目,導致項目的未處理的Issue漲到了400多,幾乎不太可能逐條處理,因此最近才引入 Issue Bots 自動關閉 Inactive 的 Issues。然後對新的 Issue 再逐條處理。這一部分也是我一直在思考和摸索的,如何能去提高 Issue 和 PR 質量,如何協調維護的時間成本。總而言之,這個項目我是一直投入精力在關注,維護的。維護成本比我想象的大太多了。

5. 騰訊開源

從我個人的角度來看騰訊在開源上的成績的確是離其它國內大廠還是有不小的差距。但是難道大家不應該更去關心一下騰訊在開源上的成長嗎?曾經那麼封閉的微軟,現在在開源上做出的成績不一樣是有目共睹的呢?為什麼一定要去拿過去做的不好去否定它未來的可能呢?騰訊現在正在關注開源,也想為開源做一些事情,比如在還未結束的LC3中,已宣佈騰訊正式成為Linux 基金會白金會員。而在騰訊內部也慢慢有越來越多的人想要加入開源。那麼為什麼外界一定要帶著嘲諷的態度去打擊騰訊開源呢?讓那些有開源想法的人打消念頭?騰訊開源更多的是需要鼓勵和支持。

最後:騰訊開源環境其實也是代表了國內的開源現狀,到底能有多少能媲美國外的優秀開源項目呢?還是少一些浮躁,多做些有意義的事情吧。有想法多去提一些比較有建設性的意見,多提些有意義的 Issue 和 PR

鏈接:https://www.zhihu.com/question/266440872/answer/427446395


分享到:


相關文章: