计算机各方向学习路径(突出C++)

本文主要讨论四部分内容:

1.计算机学习的内容究竟有哪些,

2.怎样做好理论概念学习,工程实践锻炼

3. 行业主要岗位描述(JD)分析,如何面向面试与入职大厂而学习

4. C++ 方向常见的开源项目


一. 计算机开发的学习路径主要分两个部分

【理论概念】 与 【工程实践】



1. 理论概念

理论概念的学习就是要理解清楚计算机系统、软件系统的设计原理、思路、方法。

学习的目标是能够正确把握各个组件之间的关系,优缺点,理解设计的正确方法。

这部分学习不要求过多的进行实践,更多地是需要进行阅读、理解、思考,分享。

基础一级领域:(通用领域,基础知识各个领域交叉)

计算机网络,计算机组成原理 (以及体系结构)(组成原理体系结构,大致对应深大的计算机系统2/3),

操作系统:看书、PPT、MOOC,实践结合。

基础物理:看书,MOOC

逻辑电路:看书、PPT,MOOC

离散数学:PPT,MOOC

概率论与统计:PPT,MOOC

数据结构:看书、PPT、MOOC,实践结合,

算法:看书、PPT、MOOC,实践结合。



二级领域(更加专业性,各个学科之间交叉较少)

计算机图形:计算机动画、图形学、计算机视觉,虚拟现实等等

音视频:人机交互, 多媒体编码, 图像音频识别, 视频处理

数据库理论:分布式系统、关系型数据库理论,数据分布式,SQL优化 等等

分布式技术:后台系统架构,分布式服务,微服务,容器化,大流量下的优化

机器学习:很多,神经网络相关理论

密码学:数论,数学分析方法,离散数学

虚拟化技术:虚拟机,服务器等等

程序语言:编译器,语言设计,动静态之分,类型系统,运行时环境,常见基础库

Serverless:响应式编程,Lambda 编程,函数式编程

编译原理与优化原理

嵌入式:RTOS,操作系统,内存管理,驱动程序


2. 工程实践

C语言基础:官网,MOOC,参考网站(菜鸟Runoob, Cppreference等)

C++ 语言基础:官网,MOOC,参考网站(菜鸟Runoob, Cppreference等)

STL与C++的特性:看书,官网,参考网站,博客,实践结合。重点是理解常见数据结构,体会算法与数据结构的分离,理解抽象(元)编程, Abstract Programming / Meta-programming。

内存管理:看书,博客,语言参考,实践结合。 重点是理解存储体系,理解内存管理的目标,常见问题,已经应对方式。

代码规范:实践,文档,博客结合

资源访问与管理:实践,文档,博客,实践结合

调试器:实践,文档,博客,实践结合

测试工具:实践,博客,实践结合

自动化:博客,实践,文章,实践结合

脚本:Python等MOOC,博客,实践结合。

构建系统:实践、文档结合, 

编译器的使用:文档,博客,实践结合

Linux 常用工具的基本理解:实践,文档,博客结合

代码审议与结伴编程:实践、看书结合

敏捷开发:看书


此外还有一些二者综合的部分

譬如,开发的一些协作工具(Git),https://git-scm.com/book/zh/v2

如何重构代码,敏捷开发模式 //www.greatytc.com/p/ee653f91cd63

有哪些设计模式 https://www.runoob.com/design-pattern/design-pattern-tutorial.html

等等。


三、一些行业JD可以做分析:


腾讯的研究类JD



游戏引擎方向



后台开发方向




PC客户端方向



四、给出一些方向的开源项目建议大家可以尝试参与:

有一些国外大哥汇总了一些:https://github.com/fffaraz/awesome-cpp

下面是我自己考虑的一些:

1. 计算机网络

Nginx, http://nginx.org/

Apache2,  https://github.com/apache/httpd

Git, https://git-scm.com/

Tcpdump,

Lynx, 


2. 编译系统

Open64,  https://github.com/lugt/open64

GCC, https://github.com/gcc-mirror/gcc

Clang+LLVM, http://llvm.org/


3. 游戏

主流端向:

Unity,  使用者以 C# 为主要开发语言,游戏引擎本身没开源(截止2020年)

Unreal, 部分使用前提下开源,https://www.unrealengine.com/zh-CN/get-now

开源向:Wesnoth,

OpenGL


4. 安全性方向

OpenSSL, 官网需要科学上网,只能放个Github, https://github.com/openssl/openssl

GDB, GNU LD

SELinux


5. 操作系统与虚拟化

Docker (Go)

Qemu

LVM

GFS 的理论成果


6. 数据库

ClickHouse: https://clickhouse.tech/

TiDB:(Rust) https://pingcap.com/

SQLite:(纯C)https://github.com/

MySQL (不太推荐新人看)


7. 音视频

ffmpeg


8. 图形方向

OpenGL, 

Qt


9 编程语言

Wasmer / Wasm3 / Wasm micro runtime

OpenJDK

Lua Interpreter

V8

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350