C/C++学习路线概述

根据如下视频和文章总结:
想做C语言/C++开发?这些才是你该学的东西!C语言/C++直通企业级开发的详细学习路线
节选:肝了半个月,我整理出了这篇嵌入式开发学习学习路线+知识点梳理

目录

  • 1 C/C++学习概述
    • 1.1 C语言的基础知识
    • 1.2 C++的基础知识
  • 2 C/C++编程学习四大件
    • 2.1 数据结构和算法
    • 2.2 操作系统
    • 2.3 计算机网络
      • 2.3.1 计算机网络分层
      • 2.3.2 典型协议(以TCP/IP四层模型举例)
    • 2.4 设计模式
  • 3 应用与编程实践
    • 3.1 Linux操作系统学习
    • 3.2 Linux平台的编译和调试
    • 3.3 Linux环境编程


1 C/C++学习概述

需要明确的一点是,凡事都需由浅入深,学习基础的内容才能驾驭复杂的架构。C/C++的学习离不开基础的学习。

1.1 C语言的基础知识

  • 关键字
  • 数据类型
  • 输入/输出/格式化
  • 运算符
  • 表达式
  • 语句
  • 判断
  • 循环
  • 数组
  • 结构体/共同体/枚举/位操作
  • 指针
  • 函数
  • 内存管理

1.2 C++的基础知识

除C语言的部分外,C++还有如下知识点:

  • 面向对象的特性:抽象、类、封装、继承、多态
  • 容器
  • 模板
  • 泛型
  • STL
  • RTTI
  • 元编程

C/C++基础学相关书籍:《C Primer Plus》《C和指针》《C专家编程》


2 C/C++编程学习四大件

2.1 数据结构和算法

常见数据结构:

  • 字符串
  • 数组
  • 链表
  • 队列
  • 哈希

  • 常见算法:
  • 排序算法
  • 查找算法
    相关学习书籍:《大话数据结构》《剑指offer》

2.2 操作系统

  • 内存管理和调度
  • 多任务:多线程/并发/锁
  • I/O管理
  • 文件管理
    相关学习书籍:《深入理解操作系统》

2.3 计算机网络

2.3.1 计算机网络分层

ISO七层模型:将计算机网络从上至下划分为应用层(Application Layer)、表示层(Presentation Layer)、会话层(Session Layer)、运输层(Transport Layer)、网络层(Network Layer)、数据链路层(Data Link Layer)、物理层(Physical Layer)。

TCP/IP四层模型:将计算机网络从上至下划分为应用层、运输层、网际层、网络接口层。

五层模型:将计算机网络从上至下划分为应用层、运输层、网际层、数据链路层、物理层。
C/C++学习路线概述_第1张图片

2.3.2 典型协议(以TCP/IP四层模型举例)

  • 应用层:DNS协议、HTTP/HTTPS协议
  • 传输层:TCP协议、UDP协议
  • 网络层:IP协议、ICMP协议
  • 网络接口层:ARP协议
    相关学习书籍:《TCP/IP详解》

2.4 设计模式

相关学习书籍:《大话设计模式》

3 应用与编程实践

3.1 Linux操作系统学习

推荐学习书籍:《Linux就该这么学》

3.2 Linux平台的编译和调试

编译:GCC编译
调试:GDB调试
推荐学习书籍:GNU官网英文文档、《Debugging with gdb 》中文版、《跟我一起写makefile》(陈皓著)

3.3 Linux环境编程

推荐学习书籍:《Unix环境高级编程》、《Linux高性能服务器编程》、《Posix多线程程序设计》

你可能感兴趣的:(C/C++,c++)