少一些大而全, 多一些小而精 — 我的開源觀

看過了太多包含N多框架的,功能齊全的開源項目,總都是在宣稱此框架能XXX,XXX.

開源挺好.

結果都一樣, 走入另一個軟件開發的沼澤繼續不能自拔,深陷其中,無能更改與糾正.

軟件是復雜的,復雜到超出了絕大部分程序員的能力,太多的廣度意味著精力的分散,缺少深度

與比別人更淺層次的理解,太多的僅限于會使用,會弄,會滿足當前項目要求,甚有直接從培訓

學校搬出來的開源.

寫程序,碼代碼,與做人做事毫無區別,你的時間在哪,成就就在哪,公平,公正.

迫于對工作的需要而不斷地增加框架,整合框架,會用即是目的,功能實現即是高手.然后開源.

殊不知對軟件,編程的理解少的可憐.天天一說便是熟悉這個,熟悉那個,一問深點啥也不知,

毫無羞恥感——最垃圾的程序員

對于什么是編程思想,什么是繼承,封裝,多態等等,說很容易,弄個簡單的例子也很容易(網絡

強大的好處之一),可真到了實際運用中,實際項目中,全然變成了以功能實現為目標,哪還知道

何談抽象,何談解耦,何談擴展性…

說的都是人,可人才是根本的問題所在,人的能力,素質,身體,思想跟不上,何談有小而精的深度,

精度.

“重復發明車輪”依舊是軟件從業人員的常態.若把這提升到一個人的人生態度,就能更反映出有多少人是把軟件編程當作一份職業,謀生的手段,而不是真正的熱愛與自己的興趣所在.

想想真是悲哀,那些一生沒有追求過自己,三四十年的職業生涯都沒干過自己最有興趣,最有成就感的事——程序員首不其沖,無以回避.

你的精力,身體,資源,始終是有限的,過多的大而全只會在讓你始終飄浮在一框架或技術的表面,

難以深入而有驚人的見解(有驚人見解的才是值得開源的).我曾對一些程序員說”如果你真正理解了MVC,那么你也能實現一個自己的MVC框架,而不管你用什么語言,什么方式”.只有真正的理解,思考,思索,再經過長時間的實踐,結合書本,才能真正形成你的思想——你的編程思想.

每個程序員都有自己的編程思想,各不相同卻又求同存異,健康發展.

個人認為開源首先要有”拿來用”精神,要勇于承認別人做的好的東西,盡量多的重要并吸收; 其次要有簡化的精神,太深奧的技術(如class編譯,加密算法)如何能用通俗的易于理解的話語來描述是開源的又一核心所在(能達到這一點的一般稱為master),畢竟使用開源的,大部分是普通的程序員(即會用的程序員).

最后,開源一定要有專注精神,專注是社會進步的基石,只有專注才能做出精而深的開源作品.任何的開源都要像商業項目一樣有明確的需求,要解決的問題,要達到的目的與效果,并堅持長久,不斷優化,完善文檔,使用說明等,才有可能成就優秀的開源作品.

基于現代的代碼庫,協作平臺的廣泛使用,要創建一個開源項目已是容易之更容易.你開源的是一件作品(而不只是你的代碼),是你的編程水平,文檔能力,綜合水準的深刻體現.

對待開源的態度,即等于你對待軟件編程的態度;是否成就優秀的開源,是否成為優秀的軟件工程師,也是你人生的完全體現.

2017-12-12 凌晨

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,523評論 25 708
  • 本文把程序員所需掌握的關鍵知識總結為三大類19個關鍵概念,然后給出了掌握每個關鍵概念所需的入門書籍,必讀書籍,以及...
    dle_oxio閱讀 11,221評論 6 244
  • 發現 關注 消息 iOS 第三方庫、插件、知名博客總結 作者大灰狼的小綿羊哥哥關注 2017.06.26 09:4...
    肇東周閱讀 12,252評論 4 61
  • 2017就這樣悄咪咪的過去了,整個跨年的幾天都在沉睡中度過,但是跨年夜跟小行星的小伙伴們一起直播度過,感恩遇到小行...
    小金剛_5393閱讀 559評論 0 2
  • 胖姑娘二十歲了,這讓胖姑娘感到慌張,怎么就要二十歲了呢?胖姑娘想了很久也都沒想明白,這日子真的是一天天就過去了,很...
    阿蠻g閱讀 521評論 2 5