当然这都是以后的事情了。 至于现在,林枫选择了对开源的项目应用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本尊吗?”这样一个留言。 在得到林枫肯定的回答后,瞬间引来了一大波关注。 让我瞅瞅代码水平如何? 估计是很多关注者的想法。 林枫当然知道这些人的内在想法了。 不过论应试,华国人怕过谁。 林枫上传的毕竟不是最开始的版本,而是精修之后的最简洁版本。 完全不惧任何挑剔的目光。 当然,鸡蛋里挑骨头的除外。 看来林枫准备的“应试作品”是不错的。 随着时间推移,评论区不断涌现出各类感叹。 来自全球各地的开发者纷纷表示他们被林枫的代码深深打动。 一些资深的程序员甚至感叹,这样的代码简直是教科书级别的范例。 每一行都恰到好处,不多一分,不少一分,像艺术品一样呈现。 “这段代码简直就像是一首诗!”某位开发者评论道,他用了一连串惊叹号表达着心中的震撼,“我从来没见过这么优雅的实现,简洁却丝毫不失功能。” 林枫看到这样的评价有点发愣。 这是收获了雷君同款快乐吗??? 另一个ID为@CodeSeeker的用户紧接着回复:“我也有同感!这种代码不仅高效,还美得让人舍不得动一行!真是太难得了。” GitHub的热度如同一场暴风般席卷开来。 各种论坛、技术群聊里都在讨论这个名为Solitary Sojourner的神秘开发者。