第57章 最簡潔的工程實現方案(第1/2 頁)
當然這都是以後的事情了。
至於現在,林楓選擇了對開源的專案應用GpL協議。
其實不同的開源協議賦予開發者的權利和保護也不盡相同。
例如,像mIt或Apache這樣的開源協議,要求較少,允許使用者自由使用、修改甚至閉源再發布,不強制公開程式碼。
而GpL等協議則有嚴格的共享條款。
甚至可以說是最“霸道”的一種開源協議。
在醜國和歐盟,還是可以相信GpL約束力的。
如果有人違反了GpL開源協議的條款,比如私自將開源軟體閉源後進行商業銷售,版權持有者林楓完全可以透過法律途徑追究其責任。
曾有開發者使用了GpL許可下的軟體,但沒有遵守GpL協議中的公開原始碼要求,結果被起訴。
在這種情況下,如果某個公司或者某個人拿了林楓GpL開源的專案進行修改,但沒有嚴格做到非商業化,就會違反了GpL協議。
此時,林楓完全可以透過法律途徑要求停止侵權、賠償損失。
並且強制對方依託於林楓開源內容搞出來的專案同樣遵循GpL協議。
因此,林楓並不是簡單地將《2048》和《Flappy bird》的程式碼白送。
而是在法律的保護下進行的一種有條件的公開。
而為什麼選擇原始碼公開呢?
因為在技術上做出回應。
林楓上傳的並不是普通版本的原始碼。
而是他精心最佳化過的最簡潔的工程實現方案。
林楓相信他上傳的版本是《2048》和《Flappy bird》的程式碼最簡練的版本。
不可能再有比林楓還要更簡練的程式碼實現。
能改一行算林楓輸。
當然,不包括那種毫無縮排直接強行把所有程式碼安排到一起的。
林楓上傳到版本的程式碼不僅結構清晰,易於閱讀,甚至還附帶了詳細的註釋和解釋,適合那些剛入門的開發者學習和參考。
林楓知道,很多人雖然有心嘗試遊戲開發,但面對龐雜的程式碼庫和不合理的結構會望而卻步。
因此他有意將這兩個經典遊戲的程式碼精簡到最核心的部分,用最優雅的程式碼風格呈現出來。
但同時,這也是一個無形的門檻。
能夠意識到這套程式碼簡潔但不簡單的人,也會意識到林楓的實力。
而充分理解林楓設計思路的人,也應該能夠對遊戲設計本質的理解。
那些單純模仿的開發者或許可以復刻出一款外觀類似的遊戲。
但如果沒有林楓的創意和對玩家心理的洞察以及對市場的深度把握。
他們的作品終將無法觸及《2048》和《Flappy bird》曾經達到的市場高度。
另外,採用開源也是為了更好的社群建設。
像是《2048》和《Flappy bird》本身的遊戲其實挺簡單的。
但其實各種衍生版本還是相當五花八門的。
不過這些衍生版本林楓就沒那麼多精力去鼓搗了。
乾脆直接就將軟體程式碼開源好了。
誰有精力鼓搗誰去鼓搗吧。
林楓選擇了在Github上以Solitary Sojourner身份上傳了工程原始檔之後。
很快就迎來了一波follow。
還有很多人在底下林楓留言.
最初只是這樣“哦,上帝啊,真的是Solitary Sojourner本尊嗎?”這樣一個留言。
在得到林楓肯定的回答後