在本文中,您将找到Andrei Alexandrescu,David Vandervoord,John Kalb和其他许多人撰写的十份最佳报告。
C ++编译器的功能,异步,多线程,并发,内存模型,算法和STL,元编程和反射,很多主题。

所有这些都是来自C ++ Russia会议的录音,这是历史上最大的录音。 八百名与会者,一个相当大的大厅,举世闻名。 一年过去了,但是大多数报告并没有失去意义。 但是,不足为奇-参与者认为,只有这样的报告才成为热门。
格式如下:
- 强制性YouTube视频
- 幻灯片(如果有)
- 该报告用俄语进行了详细说明
- 演讲者简介
另外,您还有Habr的评论来讨论您看到的内容。 YouTube上的广告已被禁用,没有人会干涉。 现在一切都开始观看。
10.内存管理技巧和窍门
阿列克谢·萨尔明(Alexey Salmin)
在2017年,在C ++中选择分配器的问题不会失去相关性。 他们为标准添加了一种新方法,可以为容器选择本地分配器( std::pmr
),全局tcmalloc
和jemalloc
以及它们所依赖的内核接口在不断发展。 该报告致力于设计的“下层”:Linux内核中的mmap
和madvise
功能以及这些功能对分配器性能的影响。
关于演讲者
Alexey Salmin毕业于MMU NSU,从事符号计算和静态分析,曾在新西伯利亚的英特尔工作。 自2016年以来,他一直在Yandex Moscow办公室工作,开发后端实时搜索。
9.现代C ++中的并发最佳实践
雷纳·格林
滑梯
C ++ 11的标准化为我们提供了内存模型和多线程。 库中有诸如原子,线程,任务,锁,条件变量之类的标准东西。 内存模型为这些基本单元的多线程使用提供了保证。
安全使用多线程和内存模型的实践已经过去了七年。 在此报告中,我们详细了解这些做法:有关多线程的一般规则以及库原语和内存模型的特殊规则。 讨论的问题涵盖的主题不仅限于C ++语言。
关于演讲者
Rainer Grimm曾担任建筑师,团队负责人和讲师超过20年。 在业余时间,他喜欢写有关C ++,Python和Haskell的文章,并在会议上发表演讲。 他经营着一个名为Modern C ++的博客。 他目前是现代C ++和Python主题的发言人。 O'Reilly和Leanpub出版了他的几本书:“ C ++ 11 for Programmierer”,“ C ++”,“ C ++-Standardbiliothek”和“ C ++ Standard Library”。
8.2020:奥德赛之旅
伊万·乔基奇(IvanČukić)
滑梯
C ++一直具有用于元编程的强大语言子集,允许开发人员执行神奇的技巧,例如静态自省,以确保多态执行而不会继承。 问题在于该语法非常容易变形且过于冗长-所有这些使元编程成为一项非常出色的任务。
该标准的最新改进与C ++ 20的新功能相结合,使元编程更加容易,元程序本身也更具可读性和可理解性。
在本演讲中,我们将研究现代元编程技术,重点是void_t
魔术元函数。
顺便说一下,在莫斯科的C ++ Russia 2019上,Ivan将作题为“仅移动C ++设计”的演讲,还将进行“ C ++中的应用函数式编程”培训:STL是否远离函数式编程,函数对象,std :: invoke和monads ,单子,单子。 还有更多的单子。 伊凡(Ivan)的培训并非针对入门级人员,它适合希望敞开感知门的中型企业。
关于演讲者
Ivan在贝尔格莱德大学数学系博士计算机科学系工作,专门研究编程语言。 KDE长期致力于血浆和低级框架的分析和管理用户行为的贡献者。 维护者KActivities,Contour和Lancelot。
7.从CPU到GPU的现代C ++并行性
西蒙品牌
滑梯
并行编程可用于受益于多核和异构架构,从而显着提高软件性能。 通过引入高级和低级抽象,现代C ++在简化并行编程过程方面已经走了很长一段路。 C ++ 17进一步发展,并为我们提供了新的高级并行算法,并且C ++ 20可以期待更多。 在本报告中,我们将参与对用于组织并行性的现有实用程序的回顾,并展望未来,其中GPU和异构系统将获得标准库新功能的支持,并着眼于SYCL等新标准。
关于演讲者
Simon是GPGPU工具链开发人员,专注于C ++。 不健康的人喜欢模板元编程和语言最黑暗的一面。 您可以在Slack的StackOverflow,C ++频道或C ++社区爱丁堡的聚会中的评论中轻松找到他,他是其中的组织者之一。 他喜欢讨论语言,形式技巧,啤酒,威士忌,实验电影和Carly Rae Jepsen作品中的形式主义问题。
6.记忆是完美的抽象
Fedor短裤
滑梯
int* ptr = new int; *ptr = 42; delete ptr;
当执行这三行代码时,实际发生了什么? 我们将查看内存分配器,操作系统和现代硬件的内部,以详尽地回答这个问题。
关于演讲者
Fedor-Fiztekh的毕业生,在莫斯科证券交易所从事高频交易。 他在Yandex工作,开发了YT存储和数据处理系统。 他在数据分析学院的第一年教C ++。
不到一个小时的5.105 STL算法
乔纳森·博卡拉
滑梯
大家都知道,了解STL算法会很高兴。 在体系结构的构建中使用它们,可以使其更具表现力和可靠性。 有时它是非常重要和壮观的。
您来实现算法了吗?
在此报告中,您将看到所有105种算法,包括11和17个标准中添加的算法。 但这不仅是枚举-报告的本质是显示这些算法中系统,组和模式的组织形式以及它们之间的相互关系。
这张大图是记住所有内容并将其理解为使代码更具表现力和可靠性的完整工具和方法的最佳方式。
关于演讲者
乔纳森·博卡拉(Jonathan Boccara)喜欢C ++,尤其喜欢-编写可理解的表达性代码的问题。 特别是这就是为什么他经营Fluent C ++博客。 他还担任Murex的高级开发人员,在那里他处理用于金融的庞大C ++代码库。 他们每天在公司进行有趣的练习,以他领导的“每日”格式进行简短报告。
4.编程中的异步
伊凡(Ivan Puzyrevsky)
在开发高负载的多线程或分布式应用程序领域中,人们可以越来越多地听到有关异步代码的对话,包括猜测是否需要考虑异步代码中的异步性,关于异步代码的可理解性及其效率(效率)。 在本报告中,我们将尝试更深入地研究主题领域:我们将分析什么是异步; 当它出现时; 它如何影响我们编写的代码和我们使用的编程语言。 我们将尝试弄清期货和承诺与它有什么关系,让我们谈谈协程和演员。 我们将影响JavaScript和操作系统。 该报告的目的是更明确地说明一种或多种开发多线程或分布式软件的方法所引起的妥协。
关于演讲者
Ivan于2009年开始在Yandex的Search语言技术部门工作。 现在,他从事分布式存储和数据处理系统的开发。 莫斯科国立大学力学和数学系数学逻辑和算法理论系毕业。 ShAD的老师。
3.今天的C ++:野兽回来了
乔恩·卡尔布
滑梯
这是部分基于O'Reilly的C ++ Today:Beast回来的报告。 在这份报告中,我们将推测为什么要编写生产性代码的工程师选择C ++。 John将介绍专注于C ++的历史观点,解释C ++社区当前的生活以及语言及其受众的去向。 最近,从手机制造商到大型数据中心,每个人都对有效代码产生了兴趣,因此带有开放源代码库的C ++再次成为热门话题。 该报告清楚地说明了为什么大多数工程师都为此选择C ++。 在历史规模上有一幅C ++的概图,其中解释了增长点和受欢迎程度的下降点。
关于演讲者
John从事C ++编程已有20多年了。 在此期间,他设法参与了Amazon,Apple,Dow Chemical,Intuit,Lotus,Microsoft,Netscape,Sun,Yahoo!的C ++项目。 在几家公司中,没人听说过。 他是Boost指导委员会主席,还参与了硅谷代码营的C ++跟踪计划,并且是C ++ Now(又名BoostCon)的董事之一。 2014年,他获得了Microsoft最有价值专家。
戴夫·范德沃德
滑梯
一旦C ++标准化委员会组织了一个小组“ SG-7”,该小组正在研究实施反射的可能性。 最近,该小组还从事元编程,并就可能的解决方案的外观做出了一些重要的决定。 在这份报告中,我们将回顾过去,这使我们过上了这样的生活,并讨论了对C ++中“反射元编程”的本机支持的可能性。
关于演讲者
戴维(David)是居住在美国普林斯顿大学的比利时科学家。 他是爱迪生设计小组的工程副总裁,主要为自己的C ++编译器前端贡献力量。 他积极参加C ++标准化委员会,在那里他参与了核心语言的发展。
1.意外的预期
安德烈·亚历山德列斯库(Andrei Alexandrescu)
编写抗错误代码是痛苦,用任何语言来说都是痛苦。 异常虽然在政治上是C ++中错误提示的一种政治正确方法,但在许多应用程序中,您必须使用返回码-出于易于理解,易于本地处理,生成代码效率等方面的原因。
在此报告中,我们将了解如何将理论与实践结合起来解决错误处理问题。 结合两种方法的优点,可以在本地(以返回码的形式)和集中(以异常的形式)使用Expected
类型。
关于演讲者
罗马尼亚开发人员Andrei Alexandrescu是一个广泛领域的专家,包括软件系统的体系结构和实现,编程语言的设计,库的体系结构,C ++和D的各个方面,机器学习以及自然语言的分析。 他以创新的方式解决问题,最广泛的知识和魅力,使安德烈(Andrei)成为全球最受欢迎的演讲者之一。
安德烈的书籍和文章影响了整个行业。 他是畅销书的作者,例如Modern C ++设计,C ++编码标准(以及Herb Sutter),D编程语言,以及诸如简化您的异常安全代码-Forever(书面)之类的文章。与Petru Marginean)和Mojo:联合物体的运动。 他的作品的完整清单可以在这里找到 。
下一次C ++俄罗斯会议将于4月19日至20日在莫斯科举行,即-很快。 一个新的程序,新的演讲者,以及另一整天的培训 。 该计划可以在官方网站上查看, 门票也可以在那里购买 。