喵の窝

程序猿养成手记 第壹章

这一章主要介绍程序猿的核心技能树大概是什么样的.

由于博主平时主要负责卖萌,只是偶尔写一下C++程序,所以这里就只介绍C天赋(C/C++/Obj-C)的技能树.

以上就是技能树大概的样子.别看技能树简单,100%习得这些技能是要费很多时间的.

首先,应该点亮的技能是灰色框中的三门语言之一.推荐从C或者C++开始.

如果从C开始,学习C++的时候请跳过介绍C++语法的部分.

如果从C++开始,请一定记得补完C中关于指针的部分.

点亮某个语言之后,就可以点设计模式或者编译原理.

目前来说,设计模式主要是面向对象设计模式.上图中的C++和Obj-C都可以用于面向对象程序设计.所以点设计模式的时候,并不用区分是C++的设计模式还是Obj-C的设计模式(或者Java的设计模式),虽然C++和Obj-C(以及Java)在语言特性上确实有一定的差别.

编译原理主要是讲一堆源代码是如何变成一个可执行文件的.这个技能不需要完全100%习得,只需要’知道有这么一回事儿’就可以了.当写程序时,遇到一些莫名其妙的链接错误时,想想编译原理,说不定就能找到问题的根源,从而解决问题.

剩下的两个’运行环境’和’库’属于比较顶端的技能.库指的是对应语言的标准库,比如C的是C标准库,C++则对应STL,Obj-C则对应苹果的一系列XXKit.运行环境则主要是指windows/linux运行环境下的一些相关知识.

程序猿的核心技能大概就是这样,但是需要注意几点

1.这个技能树只是程序猿的技能树,所以并没有涉及到编程之外的相关的东西.

2.这个技能树只是核心技能.定位相当于建筑物的地基,所以在实际工业生产中,还需要点其他的技能.比如做游戏开发,需要学习游戏引擎使用相关的技能.

3.技能的学习并不是顺序进行的.比如学习完C++的时候,可能已经点亮了5%的STL库和4%的设计模式.

4.这个技能树只适用于C系列的语言,如果是其它系列的语言,比如php/python技能树可能完全不一样.

结论:程序猿这个坑很深…大家慎入吧╮(╯_╰)╭