CppCon 2023 演讲总结 (1) :Getting Started with C++

在这里插入图片描述

缘起

在AI时代,大模型降低了软件开发的门槛,开发者不需要太多的系统级知识和内化思维,提出问题让AI即可生成代码与答案,项目开发速度越来越快,软件开发的乐趣越来越少了,职场逐渐内卷化,打算在2025年听一些C++国际会议报告,拓宽眼界,提高品位,找回初心.

“内卷”(involution)一词最初源于社会学领域,用来描述一种社会或文化模式在发展到一定阶段后停滞不前、无法转化为更高级形态的现象,反而在内部不断复杂化、精细化,导致非理性的竞争加剧。

真正的大师,永远怀着一颗学徒的心.

参考资料

Vedio 汇总:https://www.youtube.com/playlist?list=PLHTh1InhhwT7gQEuYznhhvAYTel0qzl72
PPT 汇总:https://github.com/CppCon/CppCon2023

报告1:Getting Started with C++

内容摘要:微软的C++ 团队的,MICHAEL Price, 整理了一套适用于大型C++开发的工具集,这条工作流程是欧美/国内大厂 C++软件开发的工作流程,提高开发效率与质量,演讲的大纲如下:

在这里插入图片描述

1. Obtaining tools for your platform

  • 编辑器、IDE :Visual Studio 、Vscode、 Cursor(大模型编辑器)
  • 编译器工具链 :MIcrosoft Visaul C++ / GCC / LLVM
  • Build工具 :MSBuild / GNU Make / Ninja

个人点评:
Old School 的工程师喜欢用:
IDE:Visual Studio (这个工具的Visual Studio Debugger真的很棒,以前做图形编译器的时候深度使用)
ToolChains :MIcrosoft Visaul C++ /GCC
Build & Project Management : MSBuild / GNU Make

新时代的工程师喜欢用:
IDE : Cursor / Vscode
ToolChains:市场需求而定,依赖平台和语言
Build & Project Management : Ninja

核心Slide:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. Code Reuse through libraries

模块化是软件管理复杂度的核心哲学之一,有各个层级的“模块”:class,file,库,软件中相互引用产生大量的依赖,导致大型软件中的依赖管理非常复杂,它极度影响编译时间,有一本《大规模C++设计》就是讲管理C++类依赖/文件级依赖,这个需要有经验的软件工程师处理,库的依赖复杂度由现代C++包管理器(vcpkg/conan)处理.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. Building Correct,Secure and Safe Systems

正确性和安全是一些工业级产品必须要满足的编程规则,比如汽车,航天航空. 现代C++ 主要使用静态/动态分析工具/单元测试来提高和覆盖.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. Planning for the future

版本控制、CI流程也是现代软件开发的标志之一.

在这里插入图片描述

5. Resource for learning Modern C++

在这里插入图片描述

在这里插入图片描述
个人习惯

  • 奇奇怪怪的新语法就查 cppreference.com
  • cppinsights 从编译器角度一些特殊语法的实现,方便理解
  • compiler explorer 是编译器开发常用的工具,支持多种语言 多种后端.

结束语

如果对你有帮助,请点赞或收藏.🙏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值