百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

如何成为一名厉害的C/C++程序员?(成为程序员的步骤)

toyiye 2024-09-03 22:42 9 浏览 0 评论

每一个学技术的人

都想干个三五年就能成为大牛

跳槽去大厂,薪水翻番

或者在一个小公司里,带个小团队

在30岁左右成为项目经理

晋升管理层

买房买车,实现人生理想

然而技术之路漫漫

想要成为牛×的程序员

还有很长的路要走

那么,成为一个很牛的C++程序员,需要修炼哪些技能呢?

1.C/C++语言

如果你的基础很差,建议不要一开始就学C++语言,从C开始学起,对程序有个初步的认识,循序渐进。C语言的书嘛,先买一本300页以内的,把书中的每一个例子都通过键盘敲打进去到Visualstudio里面去,然后单步执行,逐行调试去看各个变量的值。或者自行添加一些printf语句去输出变量的值。这样当你看完一本书后,你就有编写小程序的感觉了。

记住,千万不要偷懒,不敲进去,自以为聪明,能看懂,或者直接从光盘复制。偷懒的代价是会花费更多的时间学习,最后还没有学会,给自己的自信心造成巨大打击,再也不想学程序了。

C语言看完一本书后,下来你就可以买一本C++的书看了。C++的书也是一样,必须300页以内的那种,不要一来就想学《C++Primer中文版》这样的好书,因为太厚了,怕你没有信心能够看完,即使你很有信心,花费一年的时间才看完,不值得。这种经典的厚的好书,适合作为资料查阅,不适合挨个细节都看。

还是要提醒各位,一定要把书中的例子挨个敲打到电脑里面,单步执行。一定不要从光盘复制,一定要单步执行。

经过两本书的磨练,估计你对C/C++肯定有比较深入的了解了,下来应该可以进入实战了。

2.带界面的应用程序

学会了C/C++语言本身,可能还没有什么成就感,毕竟都是控制台的程序,老是输出一串字符串,整天面对各黑框框,成就感估计不是那么爽。要是能搞个带UI界面的程序就爽了。

下来就看个人的志向了,如果走微软路线,那你下来学MFC好了,如果要走开源路线,那开源跨平台的界面库多得是。

通用的并且简单的就是wxWidget了,官方网站为www.wxwidgets.org 你下载后看具体的例子,把里面的例子程序敲到你的Visualstudio里面,去调试,看运行的结果,你也可以试着去修改例子,添加按钮,响应按钮事件等。

走到这一步,恭喜你,可以照葫芦画瓢的搞个小应用程序了,还带界面。

3.网络应用程序

语言搞懂了,UI程序也会了,下来该学学网络咯,现在哪个程序不需要联网啊,懂网络对你理解很多程序非常有帮助。但是网络应用程序从哪里入手呢?

我来告诉你,从《UNIX网络编程》这本书入手吧,这本书可以教会你网络套接字的底层原理,把上面的例子好好学习,自己动手写一个回应服务器。写一个服务器端,再写一个客户端。服务器端请务必学会select这个简单的多路复用模型,这样你才能慢慢的深入里面poll,epoll,IOCP之类的模型。

4.文件操作

所有的程序,基本都会用到文件的读写操作,windows系统有自己的文件操作API,比如CreateFile,DeleteFile等,请新手不要学windows的文件操作API,新手请学标准C语言的文件操作函数,简单易学还跨平台。就那么几个函数,三下五除二你也就学会了,fopen,fclose,fread,fwrite,fseek,ftell就这么几个而已。

5.深刻理解内存与指针的关系

作为一个C/C++程序员,从学习程序的头一天开始,就要和内存的分配释放作斗争。你必须理解内存与指针的关系。怎么样才能理解呢,请大家去看《高质量C/C++编程》里面自带的几个经典例子吧。把那几个例子搞得清清楚楚,基本能够理解其中的原理了。



6.修炼C++

我上面说的基本都是修炼C的,要修炼C++,还得再花3年功夫,才有可能练成C++高手。C++太博大精深了,其中最复杂的莫过于泛型编程思想,不要以为能写个模板类就认为泛型编程不过如此而已。仔细看看STL源码,Boost源码,你就知道泛型编程有多么的博大精深了。修炼C++,可以从用C++封装的MFC,

wxWidget入手,看高手如何通过C++语言,封装这样庞大的UI库,里面应用了很多的C++机制,最典型的就是多态机制,还有很多的设计模式应用可以研究。



7.深研设计模式

设计模式是程序设计的灵魂,是通用方法,当你面对一个大型项目的时候,如何设计一个有弹性的系统,是所有系统分析员应该掌握的技能。在设计模式的研究上,要结合实际的项目进行。

修炼到第八层,基本上就可以算作一个C++高手了。然而具体的每一层,都需要你一步一步慢慢地去走。

不想人到中年失业,走下坡路,甚至“被下岗”,面临中年危机,需要提前规划好自己的人生,尤其是程序员这种相对比较吃“青春饭”的职业,利用好你的时间充分学习,提前将自己的技术修炼到一定水准。

加油吧!正在编程路上的人!有兴趣一起学习C/C++编程的话可以关注一下笔者的简介哦!

文章转载自:博客园

作者:筠子

最后,对于想学习编程,成为高薪资的程序员一员的小伙伴来说:学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习C/C++或者为了入行、转行学习C/C++的伙伴可以一起学习哦!(进群可以私聊“编程交流”)C/C++零基础编程学习,从现在开始!进群可以领取相关项目视频学习资料一份哦!

相关推荐

# Python 3 # Python 3字典Dictionary(1)

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中,格式如...

Python第八课:数据类型中的字典及其函数与方法

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值...

Python中字典详解(python 中字典)

字典是Python中使用键进行索引的重要数据结构。它们是无序的项序列(键值对),这意味着顺序不被保留。键是不可变的。与列表一样,字典的值可以保存异构数据,即整数、浮点、字符串、NaN、布尔值、列表、数...

Python3.9又更新了:dict内置新功能,正式版十月见面

机器之心报道参与:一鸣、JaminPython3.8的热乎劲还没过去,Python就又双叒叕要更新了。近日,3.9版本的第四个alpha版已经开源。从文档中,我们可以看到官方透露的对dic...

Python3 基本数据类型详解(python三种基本数据类型)

文章来源:加米谷大数据Python中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在Python中,变量就是变量,它没有类型,我们所说的"类型"是变...

一文掌握Python的字典(python字典用法大全)

字典是Python中最强大、最灵活的内置数据结构之一。它们允许存储键值对,从而实现高效的数据检索、操作和组织。本文深入探讨了字典,涵盖了它们的创建、操作和高级用法,以帮助中级Python开发...

超级完整|Python字典详解(python字典的方法或操作)

一、字典概述01字典的格式Python字典是一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。字典的每个键值key=>value对用冒号:分割,每个对之间用逗号,...

Python3.9版本新特性:字典合并操作的详细解读

处于测试阶段的Python3.9版本中有一个新特性:我们在使用Python字典时,将能够编写出更可读、更紧凑的代码啦!Python版本你现在使用哪种版本的Python?3.7分?3.5分?还是2.7...

python 自学,字典3(一些例子)(python字典有哪些基本操作)

例子11;如何批量复制字典里的内容2;如何批量修改字典的内容3;如何批量修改字典里某些指定的内容...

Python3.9中的字典合并和更新,几乎影响了所有Python程序员

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

Python3大字典:《Python3自学速查手册.pdf》限时下载中

最近有人会想了,2022了,想学Python晚不晚,学习python有前途吗?IT行业行业薪资高,发展前景好,是很多求职群里严重的香饽饽,而要进入这个高薪行业,也不是那么轻而易举的,拿信工专业的大学生...

python学习——字典(python字典基本操作)

字典Python的字典数据类型是基于hash散列算法实现的,采用键值对(key:value)的形式,根据key的值计算value的地址,具有非常快的查取和插入速度。但它是无序的,包含的元素个数不限,值...

324页清华教授撰写【Python 3 菜鸟查询手册】火了,小白入门字典

如何入门学习python...

Python3.9中的字典合并和更新,了解一下

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

python3基础之字典(python中字典的基本操作)

字典和列表一样,也是python内置的一种数据结构。字典的结构如下图:列表用中括号[]把元素包起来,而字典是用大括号{}把元素包起来,只不过字典的每一个元素都包含键和值两部分。键和值是一一对应的...

取消回复欢迎 发表评论:

请填写验证码