当然这都是以后的事情了。
至于现在,林枫选择了对开源的项目应用GpL协议。
其实不同的开源协议赋予开发者的权利和保护也不尽相同。
例如,像mIt或Apache这样的开源协议,要求较少,允许用户自由使用、修改甚至闭源再发布,不强制公开代码。
而GpL等协议则有严格的共享条款。
甚至可以说是最“霸道”的一种开源协议。
在丑国和欧盟,还是可以相信GpL约束力的。
如果有人违反了GpL开源协议的条款,比如私自将开源软件闭源后进行商业销售,版权持有者林枫完全可以通过法律途径追究其责任。
曾有开发者使用了GpL许可下的软件,但没有遵守GpL协议中的公开源代码要求,结果被起诉。
在这种情况下,如果某个公司或者某个人拿了林枫GpL开源的项目进行修改,但没有严格做到非商业化,就会违反了GpL协议。
此时,林枫完全可以通过法律途径要求停止侵权、赔偿损失。
并且强制对方依托于林枫开源内容搞出来的项目同样遵循GpL协议。
因此,林枫并不是简单地将《2048》和《Flappybird》的代码白送。
而是在法律的保护下进行的一种有条件的公开。
而为什么选择源代码公开呢?
因为在技术上做出回应。
林枫上传的并不是普通版本的源代码。
而是他精心优化过的最简洁的工程实现方案。
林枫相信他上传的版本是《2048》和《Flappybird》的代码最简练的版本。
不可能再有比林枫还要更简练的代码实现。
能改一行算林枫输。
当然,不包括那种毫无缩进直接强行把所有代码安排到一起的。
林枫上传到版本的代码不仅结构清晰,易于阅读,甚至还附带了详细的注释和解释,适合那些刚入门的开发者学习和参考。
林枫知道,很多人虽然有心尝试游戏开发,但面对庞杂的代码库和不合理的结构会望而却步。
因此他有意将这两个经典游戏的代码精简到最核心的部分,用最优雅的代码风格呈现出来。
但同时,这也是一个无形的门槛。
能够意识到这套代码简洁但不简单的人,也会意识到林枫的实力。
而充分理解林枫设计思路的人,也应该能够对游戏设计本质的理解。
那些单纯模仿的开发者或许可以复刻出一款外观类似的游戏。
但如果没有林枫的创意和对玩家心理的洞察以及对市场的深度把握。
他们的作品终将无法触及《2048》和《Flappybird》曾经达到的市场高度。
另外,采用开源也是为了更好的社区建设。
像是《2048》和《Flappybird》本身的游戏其实挺简单的。
但其实各种衍生版本还是相当五花八门的。
不过这些衍生版本林枫就没那么多精力去鼓捣了。
干脆直接就将软件代码开源好了。
谁有精力鼓捣谁去鼓捣吧。
林枫选择了在Github上以SolitarySojourner身份上传了工程源文件之后。