netabare
2022-12-23 03:28:30 +08:00
反对说 SSM 或者 Spring Boot 之类的后端框架的说法,op 只是个大二学生,纯粹出于兴趣爱好想做点什么,完全没必要往这种重型企业框架上靠。而且也不会有人把 Spring 和 EE 那套当爱好来搞吧?如果想要学习比如网络原理之类的知识点,大可以去探索各种不同的语言和技术栈,寻找适合自己的,另一方面,从学习路线的一开始就锁死在 Java 上是一件很不明智的事情,尤其是在 Java 后端已经内卷到了极致的现在。也不是所有人眼里只有业务和业务的吧。
大二的话,一般来说应该不会教太复杂的东西,但是 oop 和简单的编程能力应该是有的了。感觉 op 可以试试多留意一下平时生活里面的一些东西,看看有没有感兴趣的,然后再评估一下看能不能尽量往各种技术上靠。平时可以多学习各种不同的技术,不需要掌握得特别熟练,能干活就行。最重要的还是等你开工的时候可以很快的把原型实现起来。
我自己的话……大概是一年级的时候知道了 iOS 上有个叫 Playground 的编程小游戏,但是限于没有 iPad 没有玩,二年级的时候 macOS 大更新添加了 Catalyst 的功能,然后就玩了一段时间的 Playground ,这期间自己学了一些例如 React 、Kotlin 之类的技术。
大三的时候因为预先看了编译课的内容,产生了「是不是可以做个自己的 playground 出来」的想法。当然以本科的水平,也只能构思最简单的操作小人上下左右走动然后吃钻石的行为了。然后就用课余时间基于 Antlr 写了个巨简陋的命令式语言的解释器,后来又在朋友的安利下知道了用 Kotlin 的 DSL 来直接使用语言本身的结构。前端的话,先后了解了 React 、antd 和 TypeScript ,然后在同学帮助下还碰了一点 Unity 。
当初还想过一些扩展……比如说让小人可以做出更复杂的动作,添加生物群系等奇奇怪怪的功能……或者是自己实现一个 oop 的语言。不过后来也烂尾了。但是不管怎么样,感觉这么下来,自己也接触了前后端的许多东西,了解了许多有趣的技术,甚至也为后面的学习带来了可能性(如果不是这个项目,我大概不会对编译原理产生特别的兴趣,再比如说解释器和地图渲染毕竟是相对复杂的系统,需要一些 oop 设计……虽然回过头看大概也是栽在过度和不成熟的设计上了)。带来的喜悦和成就感和反思可不是什么狗屎管理系统可以相提并论的。
对于 op 的建议的话,首先大概是建议 op 可以不用只局限于 Java ,毕竟这个是 op 自己的兴趣。有很多语言都很值得一学,而且可以带来不错的回报的,像是 Kotlin 、Rust 、OCaml 、C#都是不错的语言。第二个就是尽量让自己保持好奇心,合理安排时间在课外时间多学习一下不同的东西,组装起来就可以形成很有趣的计划了。第三个,在学校里可以试着看能不能找到聊得来的或者聊不来的(当工具人也好)同学来和自己一起做东西,可以在一定程度上减轻实现项目的工作压力。
加油^ ^