如何成为一名合格的 C/C++开发者

在大多数开发人员的认知中,C/C++ 是一门非常难学的编程语言,很多人知道它的强大,但因为“难”造成的恐惧让很多人放弃。在我看来,C/C++ 一旦学成,其妙无穷,就像武侠小说中的“九阳神功”一样,有了这个基础,学习任何语言和编程技术都非常快速!

本文就为大家分享我学习C/C++ 的经验,不少人都说看完这篇文章感觉醍醐灌顶,想一看再看,希望你也能有所收获!

在学习C/C++可以加入我们的学习交流QQ群: 954607083 ,领取C/C++学习资料

01

C/C++ 当前的应用领域

通常情况下,C++ 可以看成是 C 的一个超集

C 语言目前主要用于像操作系统一类偏底层的应用开发,包括像 Windows/Linux 这样的大型商业操作系统,以及嵌入式操作系统、嵌入式设备上的应用,还有一些开源的软件,也会选择 C 开发。

在学习C/C++可以加入我们的学习交流QQ群: 954607083 ,领取C/C++学习资料

我们再来说说 C++,C++ 的应用领域目前有三大类:

第一类就是我们目前见到的各种桌面应用软件,尤其 Windows 桌面软件,如 QQ、安全类杀毒类软件、各种浏览器等;

另外就是一些基础软件和高级语言的运行时环境,如大型数据库软件、Java 虚拟机、C# 的 CLR、Python 编译器和运行时环境等;

第三类就是一些业务型应用软件的后台,像游戏的服务器后台,如魔兽世界的服务和一些企业内部的应用系统。

在学习C/C++可以加入我们的学习交流QQ群: 954607083 ,领取C/C++学习资料

02

C++ 语言基础与进阶

2.1 基础:

这里说的基础不是狭义上的 C++ 语言基础,而是包括 C++ 开发这一生态体系的基础,笔者认为的基础包括:

C++ 语言本身熟练使用程度。

必须结合一个具体的操作系统平台,所以得熟悉某个操作系统平台的 API 函数,比如 Linux,以及该操作系统的原理。

网络通信,网络通信在这里具体一点就是 Socket 编程。

说了这么多,你可能会觉得很抽象。举个具体例子,假设我们现在要开发一个类似电驴这样的软件,软件界面如下图:

在学习C/C++可以加入我们的学习交流QQ群: 954607083 ,领取C/C++学习资料

如上图所示,假设操作系统选择 Windows,使用语言使用 C++,这款产品的实现技术分为 UI 和网络通信部分,下面将详细介绍这两部分。

UI 部分

无论你是在阅读别人的项目还是需要自己开发这样的项目,在确定了这款软件使用的 UI 库,您就需要对 Windows 的窗口、对话框、消息产生、派发与处理机制进行了解。

接着,根据上图中的软件功能,大致分为三大模块,即资源、下载和分享。这三大块是可以使用一个Windows Tab 控件去组织,这个时候您需要了解 Windows Tab 控件的特性。

在学习C/C++可以加入我们的学习交流QQ群: 954607083 ,领取C/C++学习资料

网络通信部分

网络通信部分,主要有两大块,第一个是程序启动时,与服务端的交互;第二个就是文件下载与分享的 P2P 网络。

在学习C/C++可以加入我们的学习交流QQ群: 954607083 ,领取C/C++学习资料

2.2 进阶:

如果您达到了我上面说的三点后,可以再找一些高质量的开源项目去实战一下。需要注意的是,最好找一些没有复杂业务或者您熟悉其业务的开源项目(如开源的 IM 系统)。

我个人学习一套陌生的开源项目时,总是喜欢将程序用调试器正常跑起来,然后再中断下来,统计当前的线程数目,然后通过程序入口 main 函数从主线程追踪其他工作线程是如何创建的;接着,分析和研究每个线程的用途以及线程之间交互的,这就是先整体把握,然后找感兴趣的细节去学习

在学习C/C++可以加入我们的学习交流QQ群: 954607083 ,领取C/C++学习资料

03

关于 C++ 的面试

关于 C++ 面试,面试的要求到底是侧重代码量、项目经验,还是侧重操作系统、数据结构这种基础知识?

如果你是想进入大型互联网公司的应届生:

应该优先好好准备算法和数据结构知识以应对面试,这是大型互联网公司面试频率最高的考察范围。

如果是社会人士参加的 C++ 职位的面试:

如果是大型互联网公司,虽然社招问的更多的是项目经验,但适当准备一些基础的算法和数据结构知识也是非常有用的。

在学习C/C++可以加入我们的学习交流QQ群: 954607083 ,领取C/C++学习资料

另外,C++ 是一门讲究深度的编程技能,对于有一定工作年限的面试者,面试官往往会问很多原理性的细节,这就要求广大 C++ 开发者在平常多留心、多积累、多思考技术背后的原理

本文转载自 | Chat-《如何成为一名合格的 C/C++开发者》

作者 | 范蠡

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

推荐阅读更多精彩内容