·
#include __FILE__

你想啊你的专业是人工智能,那不学计算机组成原理也比较合理,以及你想走后端,如果是业务向的,那和人工智能基本就没有关系

所以我想说的是本科是通识教育,在学校学不到自己想学的是常有的事,不要“抱怨”学校,当然最重要的就是自学了

自学第一步就是学会做笔记,Notion、飞书、Obsidian等等笔记软件挑一个就好了,或者你有Blog的话也可以直接发Blog,以Obsidian和你所掌握的知识为例展示笔记的组织结构,在Obsidian中[[]]是链接到其他笔记文件的意思

index.md文件作为根索引

...

### 编程语言

描述...

* [[C++]]

* [[Python]]

* ...

### 计算机基础知识

描述...

* [[数据结构]]

* [[计算机组成原理]]

* ...

### 人工智能

描述...

* [[TensorFlow]]

* ...

...

C++.md作为子索引

# C++

C++...

## 基础

* [[C++分支]]

* [[C++循环]]

## 进阶

* [[STL]]

* [[Template]]

* ...

...

就这样像一棵树一样可以无限拓展,然后知识间有关联的也可以通过[[]]用法串联起来,最后就是一张知识网了,然后笔记就是把你最近学到的知识记录下来,一般来说我会按5W原则组织内容,不过也不一定那么严格,以我的一篇笔记为例


# Python代码分析举例

以三种创建相同列表的不同方式为例

方式一:乘法语法糖

### 字节码入门

### 字节码分析

### CPython源码分析

### 测试程序

### 总结

### References

这个内容是我在看完【Python】三个看似一样的列表,占用内存空间竟然不一样多?_哔哩哔哩_bilibili这个视频写下的,我觉得看完很有收获就全部都记录下来了,并且自己再去深挖里面的内容,这样在过了很久以后我也可以再去看这篇笔记,再去修改,有点像实验报告就是了

当然一些知识点有可能内容非常多,所以就可以使用“挖兔子洞的”方法,比如其中的字节码入门这一块我可以先使用“Todo”和[[]]占用这个位置,到时候再深入,这也解决了“发现要学的实在太多”的问题,分清主次然后挑有兴趣和重要的学,次要的和无聊的先用笔记占住位置,有空了再学

然后就是学习路线的问题了,你学习后端的话我推荐先学习Java或Golang,Java的话我很喜欢的一个路线(包含内容)是JavaGuide (gitee.io)(老版)或者看新版Java 面试指南 | JavaGuide,你还可以去找其他的资源,Github上有好多

学完了基础知识就可以开始做各种小项目了,并且可以完善之前的笔记,把遇到的坑点和新特性都记录下来,项目刚开始做可能有点难,那么就先看源码,HelloGitHub 分享 GitHub 上入门级、有趣的开源项目上有好多已经筛选过的项目,挑一个看看,看看看着你大概就能自己开始写了

然后进入进阶学习,一些出名的库和中间件都看一看用一用,还有拓展学习,考虑学习一些前端知识、运维知识和数据库知识等等

Replies
1

感谢回复。

Obsidian有在用,笔记这方面确实还欠缺,我自认为自己确实不是一个很擅长做笔记的人,笔记软件也是最近才开始用,觉得自己的笔记难成体系。

觉得没方向也主要是因为自己想学的太多,感觉时间上来不及,并且自身能力不够,而且因为多所以自己安排的时候总觉得会不会没有这个必要,会不会不合理之类的问题。

感谢您的回复给予我的启发。