C/C++程序员发展路线

前言

c/c++是一门略微比其他语言难一点的语言,它更偏向于底层,而且它包含的思想比较多,如果你只学习语言本身,不关注它所涉及的思想,将会在未来的实际应用中举步维艰,所以学习该门语言需要你付出双倍的精力来学习它的附属知识。当你了解它的附属知识时你的基础架构就基本搭建完毕,不用你全部精通,但是最少要知道它是什么,可以做什么,怎么入手用。这样将在你以后的开发中为你避开好多坑。


学习语言后你要做哪些

  • 语言本身的思想都是贯通的,无论你学习C/C++,JAVA还是PHP,Object_C,Python。他们都是一种思想,当你学会其中一门去学其他的就会变得相对容易。
  • 学会一门语言后你可以去做这些事情,你主要找一个方向努力即可:
  1. 传统开发(如开发各种管理系统) 
  2. 移动开发(如开发手机APP)
  3. 互联网开发(如淘宝,京东等)
  4. 嵌入式开发(如开发路由器,手机,空气净化器等电子设备)
  • 当你工作一段时间后你可以做职业方向调整,
  1. 如一直做技术,最终变为技术负责人或者大牛。
  2. 再比如你可以做管理,变为项目经理,负责管理产品、项目,就像张小龙(微信)。
  3. 再比如销售,因为你懂技术,所以需要你负责给别人介绍明白你做的东西是什么。就像马云。


学习路线

其实学习c/c++分前后两部分,如它的名字,C和C++两种语言,但是你掌握C之后学习C++将会变的相当简单(这地方我想用easy的,但是就先不装逼了,因为写这篇文章的时候我的英语很烂,你也要记得一定要学习英语,不要你高级至少多备一些单词量)。下面是基本路线:


C语言  (按照下面的学习顺序,其实就三个部分,学完你就会基本的语言了)

  • 变量:(int,double,char主要了解这个三类即可)变量的本质是什么?它怎么定义?常用的有哪些?自己如何定义变量?
  • 条件控制:(if...else if,==,!=,||,&&)你要知道它们可以干什么,能帮你干什么!一句话他们帮你判断是非!不要拿它和人比。
  • 循环:(for,while)知道循环是什么?它可以帮你做很多重复的事情,它和条件控制组成了语言本身。

当你学习完这些,你该需要一款编译器了,但是编译器一般都是命令操作的,对你而言太难了。你需要一款帮你做事的工具来替你完成你不会(就是懒,不想学)的东西。这个工具叫做IDE,每种语言都有好多种,这个你可以百度一下,记得按照语言去搜!

IDE:我推荐你使用微软的visual studio或者QT,关于他们的安装(也叫配置)网上有很多,搜一下有完美的解决方案。(在这里你需要学会的第一个思想,用别的人东西帮你做事!不要重复创造”轮子“!重复轮子是什么你可以去百度!)

学了这么久你应该感到疲惫了,没有兴趣了!很正常,因为这些本来就很枯燥!知道为什么吗?因为你思想很复杂,而计算机本身只会去判断0和1,再复杂的东西也是计算机判断0和1组成的,记住这一点!

好了那我们就来做第一个程序hello world!(这个很基础而且网上很多,我不打了你自己实验!)

到这里你需要知道文件格式(.C)你需要知道文件格式是什么意思,它有什么用。

写完hello world!后你需要知道函数是什么!然后你自己写一些函数来实现一些基本的东西,比如1+2。别怀疑,计算机就是这么傻!

C进阶一

当你学到这个层次,你需要停一下了,该去看看一本书或者百度《系统原理》看一下就好,不需要记住。脑海有个大致印象就好。当你看完系统原理你就应该有内存区间(内存四区:堆区、栈区、常量区、函数区)的概念了,包括整套系统的基本运作原理,知道它的状态,分层及每层作用了。

C进阶二

这个时候你就需要去学习输入输出、函数参数、结构体、数组、链表、字符串了,知道他们怎么用,在什么情况下使用即可,当然还有更难的先了解一下即可(比如树、图、哈希),别去做那种脑残的多层嵌套语句(只有脑残才去写一个多种嵌套的语句),当你掌握这些后你算是基本掌握c语言了。

C进阶三

学习完上个阶段,你该需要进入最费脑细胞的地方了,这里不是让你背代码了,是让你了解这种思想。正式进入C高级话题,进程、线程、IPC机制、同步、异步、socket(网络)、信号、锁、条件变量、队列、栈(不是内存栈)等等,在这里你只需要搞懂它们的原理即可,这部分知识太多了,用的时候再去查具体用法,但是思想一定要清晰!

C进阶四

学习完上面阶段,现在你可以去找工作了,或者你自己尝试做一些没有架构的系统了,乱七八糟的一堆代码垒在一起能让程序跑起来就好。这个时候你该需要去了解一下软件工程是什么了,顺带看一下整个软件工程周期都需要做哪些东西,别忘了看看需要多少文档(别参照GJB438B,不然累死你),熟悉这些以后你该需要了解一下设计模式了。其实你以后主要就是和设计模式打交道了,当你把你的软件分的很细时候,基本就是在套用设计模式。

C进阶五

自我驱动,学习优秀代码,回去看基础知识巩固自己。


累了就先写这里,明后天继续写。



你可能感兴趣的:(C/C++程序员发展路线)