免责声明
本教程仅代表我个人看法,如果有意见,我会虚心接收,改不改看情况。
前言
不要通过写Mod来学习编程!
不要通过写Mod来学习编程!
不要通过写Mod来学习编程!
正文
第一件事,你得确认你真的需要写 Mod 吗,你尝试过用原版的知识解决问题吗,你尝试和别人合作过吗?如果你真的确认你要学习如何写 Mod 那么请继续读下去。
我在这里所推荐的基本是国外内容,学习编程的第一个要点「英文世界的内容普遍比中文世界优秀」。
-
基础技能(必学)
- 学好英文,从用任何背单词的软件每日背一百个新词开始,如果你连是连音标都不怎么会的水平「赖世雄美语从头学」是最好的入门。
- 你不可能不遇见问题,所以首先你得先学习如何提问。
- 学会如何搜索问题,第一,你得放弃百度,学会用Google来搜索技术相关的内容,只要你使用过就能体会我这么做的意义。第二,你得学习一些搜索的技巧,少数派的这篇文章会是你的好老师。
- 最后且最重要的是请要分享你的想法和经验,不要成为一匹独狼,在你的学习过程中肯定会受到许多人间接和直接的帮助,你也要尽力帮助别人,可以试着在论坛里回复别人的问题,或者自己搭建博客分享自己的经验。
-
计算机科学常识(必学)
- 哈佛大学的CS50,这是少数几门经久不衰的编程入门课,非常适合初学者。
- 10分钟速成课:计算机科学,这门课在广度和历史背景的介绍上做到了很好的平衡,语速有点快,有时候需要暂停思考一下。
- 编码:隐匿在计算机软硬件背后的语言,这本书可以告诉你,这一切的基础是什么。
在你学习完以上的内容以后我相信你已经对什么是「计算机科学」和「计算机科学」是做什么的有所了解了。
接下来你可以开始学习编程了,虽然你的目标是学习mod开发,或者说学习Java,但是Java本身不算是一个对于没有经验的人好入门的语言,我的建议是从 Python 入门,当你学习的编程语言越多,你学习一门新的编程语言的时间就越少。
- 编程语言(可学)
- 第一个推荐的是MIT-Python编程和计算机科学导论,在你学习完这门课以后你应该会有些编程的基础了。当然笨方法学Python,也是非常好的资料。
- 当你有python编程的经验了之后,我非常建议但不强制你学习SICP-计算机程序的构造和解释(lisp版),这本书会有些难,如果要学习的话请确保完成它的习题,这里是答案,你也可以参考作者们的视频教程学习。
学习Java,接下来你就可以开始学习Java了
-
Java学习(必学)
- 如果你没有按照我的推荐学过以上的内容,我建议你从Head first Java开始学习,虽然这本书有点老旧了。
- 如果有过编程经验的人我建议从Java编程思想和Java核心技术两本书开始,其中「Java编程思想」可以很好解释你会遇见的概念,而「Java核心技术」是一本「案头书」意味着你可以快速的过一遍然后需要的时候再来翻看。
现在你已经有编程基础了,你还需要好好的了解Minecraft这个游戏本身
-
Minecraft
- 这里只有一个链接给你,就是Minecraft wiki, 请通读它一遍。
相信你读完Wiki之后对Minecraft游戏本身已经有了足够的了解了,结下你需要对Minecraft本身技术上的细节有所了解。
- 首先最重要的自然是Forge自己的文档,这个文档涉及的到了Forge mod 开发的一些重要概念,但是Forge本身的文档其实相当的不全。
- 其次是Sponge的文档,虽然是插件开发,但是一些关键的概念是相通的,而且文档齐全,非常值得一读。
现在你已经具有 Minecraft 开发所需要的基础了,如果你想继续向下学习,请看下面