C++程序员入门怎么学?

1 背景

经常听到不少朋友在吐槽C++太难学了,说什么从入门到放弃等等;做为一名C++老兵,从2003年开始入坑C++到今年2023年,整整20年的C++开发从业者的我,今天尝试给有兴趣从事C++开发的程序员提些建议,希望可以帮到大家,免的像N多年前我一样,走了太多的弯路。

本文章假定读者是完全没有学过任何C++语法基础的,比如某些大学生、甚至高中生,或者是做过一二年其他开发语言的程序员,了解过一些开发的概念,比如变量、函数、编译、执行等等。

所以如果读者您是一个开发方面的高手,请直接忽略本文章的内容,因为本篇文章的核心目标就是【C++程序员入门怎么学?】,是讲C++、以及如何快速入门的。

2 C++程序员需要达到什么水平才算入门?

需要怎么入门,那需要回答一个问题:C++程序员需要达到什么水平,或者需要学习哪些基本的知识才算入门?

我个人认为,只要你达到以下水平,即可算入门,可以开始参加C++开发相关工作,并参与到不同的项目中:

  • 会搭建C++开发环境,比如VS2019,或者QT;并学会IDE开发工具的基本使用,包括编译、执行、调试、新建类、新建文件等:
  • 熟悉基本的C++语法和概念;比如各种数据类型、变量、常量、指针、函数、数组、struct结构、class类等;还有if、for、switch、while语句和各种C++运算符等等;
  • 最后会一些标准类库的使用:如std::string(字符串)、std::ifstream/std::ofstream(文件读写)、std::vector(动态数组)、std::list(双向链接)、std::map(关联容器)等

3 怎么学?

知道要学习哪些知识点之后,接下来是如何学?

个人建议是到网上找一些简单但带实战例子的课程,或者视频,跟着导师一个个实例写完代码,编译、执行、调试;其实C++学习真心不难,只要方法正确,二三个月完全可以入门,入门之后再根据项目需要有针对性学习对应知识点即可;

关于C++入门课程,这里做个小广告,大家有兴趣的可以点击这个链接:C++程序员必修第一课【C++基础课程】,跟着这个课程一起学习。

4 入门之后的学习路径

很多人【从入门到放弃】就是因为C++入门之后,不知道怎么提升,感觉会写C++代码了,但不知道能做什么?怎么开始?或者怎么去学习?

下面我列几项在当你完全入门之后,应该学习的方向,大家有针对性跟着学习即可,有兴趣的,可以关注本博客,后面我会持续出一系列C++、QT、QML、MFC等相关的培训课程,希望可以帮到大家。

入门后的学习方向:

  • 如果做GUI界面开发;可以学习下QT、QML或者MFC,QT/QML是跨平台的,MFC只能在Windows上跑;
  • 如果用到多线程;学习下std::thread和std::mutex的使用即可;
  • 网络通讯相关的,包括TCP、UDP;如果是VS开发环境,需要调用windows api,是WinSock2.h相关的函数;如果是QT开发环境,学习使用QTcpServer、QTcpSocket等类的使用;另外还有开源跨平台的方案如 boost.asio 等;
  • 数据交互需要用到各种协议;所以需要学会各种xml、json这二种最基本最通用的协议,这些都标准库没有直接使用的类库,需要找开源类使用
  • 如果你做一些信息管理系统的,就是一些增、删、改、查的,会用到数据库的,那就需要学习一下关系型数据库的基本概念,还有SQL结构化查询语言;可以从sqlite、mysql这些开源数据库入门;更多的还有很多类似key-value的NoSQL,在互联网公司会用到很多;
  • 一些C++高级用法,有时间可以慢慢学;比如智能指针、模板编程、lambda表达式等等;
  • 如果要成为C++高手,大学的数据结构与算法需要找时间学习一下,一些类似集合、数组、链接、关联数组等概念要熟悉,这样在实际使用中,就可以知道什么场景需要什么样的类库;

更多学习内容就实在太多了,看你公司业务需求和项目需要;总结一句话,基本都是学习各种开源库的的编译、调用、调参而已;大家有选择重点选择某个方向发力即可,不可能什么都学会;例如ffmpeg音视频编解码相关、opencv视觉算法相关等等。

最后做个总结,只要方法正确,二三个月零基础到C++程序入门是完全没有问题的!

好了,以上就是C++程序员入门怎么学的所有内容,希望大家早日入坑C++开发行业!

你可能感兴趣的:(C/C++,c++,开发语言,C++入门,C++怎么学,C++程序员入门)