开启辅助访问     
收藏本站

站内搜索

搜索

Minecraft(我的世界)苦力怕论坛

[开发教程] 插件设计与编程 ——《插件开发日记》续作,基于 Kotlin 的 Bukkit 插件开发指南

 发表于 7 天前|显示全部楼层|阅读模式 IP:安徽省
注:这是 Rarity's Plugin Dev Tutorial(另称 Plugin Diary,中文名《插件开发日记》)的正式续作,请参见 skjsjhb/plugin-diary-again#1

插件设计与编程
Plugin Diary Again
基于 Kotlin 的 Bukkit(Paper)插件开发指南

TL; DR  文档地址:https://bpd.skjsjhb.moe


#1 序言

第二版序言:
光阴似箭,日月如梭。距离《插件开发日记》与大家见面以来,已经过去了四年的时光了。

在这段日子里,Minecraft 社区发生了很多变化,从 1.16 到 1.21,从 MCBBS 到红石中继站,从 Fandom 到 Minecraft Wiki……今时不同往日,因此前作《插件开发日记》中的许多内容,也是时候更新一下了。

那么,为什么我们以这样一种方式再次呈现本作呢?曾经于 MCBBS 活跃的读者应当听说过,《插件开发日记》的作者,ThatRarityEG,已经注销了帐户,并且亦宣布退出 Minecraft 社区。自那之后,《插件开发日记》由于缺少维护,便逐渐与最新的版本和技术脱节了。

不过呢,上面所说的这些,都只是为众人所了解的部分,但实际上故事到这里还没有结束。尽管 ThatRarityEG 离开了社区,关闭了 Discord 帐户,但其实在那之后她也并非音讯全无。而这部《插件设计与编程》,便是在过去的这段时间里诞生的想法。当然了,都说『人生有梦,各自精彩』,或许对 ThatRarityEG 而言,她的精力已经不再支持她亲笔再续前作,但我们没有理由认为这种限制也是各位读者面临的限制。

本书是《插件开发日记》的续作,因此为了保持与前作中内容的一致性,本书的各位笔者在教程中会尽可能模仿原书中的语气和设计思路。不过,模仿从来不是一种替代,因此本书若不如前作写得简明易懂(那基本上是肯定的),还希望各位读者海涵。从下一段落开始,本书将使用『我』作为代称,以便于各位读者最大程度地保留阅读前作时的感受。

第一版序言:


#2 本书的定位

作为《插件开发日记》的续作,本书同样继承了其中的思想:无需任何 Minecraft 开发经验,即可通过阅读本书开发 Bukkit 兼容的插件。在此基础上,我们希望解决原作中的一些问题,以帮助各位读者在零基础学习插件开发的同时,还能设计和制作有一定质量的插件。故此,本书没有使用《插件开发日记 2》或者《插件开发日记 Plus》这样的名称,而是重新起了《插件设计与编程》这个标题。我们希望强调,除了编写代码本身,设计、测试和维护插件同样是不可或缺的步骤。

#3 为什么选用 Kotlin

本书原本计划沿用前作的设计,使用 Java 作为开发语言。但是,在编写的过程中,我们注意到 Kotlin 相比 Java,无论是教学层面还是开发效率上都有额外的优势。并且,不同于模组应用(例如 Mixin),Kotlin 在很大程度上能适用于 Java 的大多数应用场景,插件开发也不是例外。出于这些考虑,本书最终放弃了使用 Java,而改用 Kotlin 进行教学。我们希望能通过本书澄清一些关于语言选择方面的误区,并且也希望进一步推进其它 JVM 系语言在 Minecraft 社区的的应用。

#4 为什么选用 Paper

在多年的功能更新和性能优化中,经过众多用户的筛选,Paper 及其分支已经成为事实上最流行的(纯插件)服务端。我们希望向各位读者展示在实际应用中使用的环境,而非原作中“与 Spigot 兼容”但事实上已经逐渐被淘汰的原版 Spigot 环境。

#5 本书的更新计划

本书会在开头所述的站点持续更新内容,计划将涵盖《插件开发日记》中的绝大多数内容,同时额外增加关于设计和编写更大规模插件项目的指南。尽管如此,我们恕无法对本书的更新频率和最终的内容提供任何担保。

#6 发行注记

苦力怕论坛的各位,大家好!
尽管本书(以及前作)并非在苦力怕首发,但我们仍然非常高兴能够与各位见面,并希望各位读者留下宝贵的意见。
本书沿用 GNU 自由文档许可证(版本 1.3) 作为授权所用的许可证。

#7 常问问题

Q:本书是《插件开发日记》的正式续作吗?

是的,我们最近在得到了原作者的 授权 后才将本书的内容公之于众。

Q:《插件开发日记》发生了什么?

简单来说,原作者已经离开了社区。个中缘由和一些其它问题,尽管我们确实了解一些,但出于对本人意愿的尊重,还希望各位读者不要过多过问。

Q:我不希望使用 Kotlin,Java 不好吗?

如果你已经掌握了 Java,那么学习使用 Kotlin 将会非常容易。不过,如果你觉得“我可以接受一切但唯独 Kotlin 不行!”,那也不是不能阅读本书。Kotlin 代码和 Java 是如此相似,如果你熟练掌握了 Java,也可以参照本书中的 Kotlin 代码设计开发插件。

Q:我没办法访问那个网站!

本书的所有内容都由 Cloudflare Pages 托管,我们相信这项服务的可靠性。关于阅读本书时出现的网络问题,特别是关于连接 Cloudflare Pages 和 GitHub 的问题,我们恕无法提供任何帮助。



本书的编写时间仓促,而且笔者的经验与技术相比原作者可称难以望其项背,若见疏漏,还希望各位读者海涵。
谨以此作,代表与不代表 ThatRarityEG,向各位读者表示由衷的感谢。


@Nana-Sakura

评分

参与人数 1贡献 +2收起理由
 Nana-*** + 2

查看全部评分

苦力怕论坛,感谢有您~
评论区暂时隐藏审核中...

本版积分规则

本站
关于我们
联系我们
坛史纲要
官方
哔哩哔哩
技术博客
下载
网易版
安卓版
JAVA
反馈
意见建议
教程中心
更多
捐助本站
QQ群
QQ群

QQ群

访问手机版

访问手机版

手机版|小黑屋|系统状态|klpbbs.com

粤公网安备 44200002445329号 | 由 木韩网络 提供支持 | GMT+8, 2025-4-2 22:10

声明:本站与Mojang以及微软公司没有从属关系

Powered by Discuz! X3.4 粤ICP备2023071842号-3