写点什么

学习 C++ 编程,怎么才能找到合适的练手项目?

作者:Jackpop
  • 2022 年 8 月 20 日
    浙江
  • 本文字数:1287 字

    阅读完需:约 4 分钟

如果要找 C++项目,在 Github 上可以找到数不胜数的项目。


但是,如果要把范围限定在“练手”,这就对项目有了更多的要求。


不能太难、也不能太简单,此外,还要系统成体系,便于学习者循序渐进的接收,同时还能够学到全面而系统的知识,从而达到一种提升的作用。


由于我每周都要分享《DevWeekly》系列文章,所以每天都会花费大量时间再 Github 上,在这个过程中接触过数不胜数的项目。


今天,就从中抽取出几个非常适合练手的 C++项目!

1. 用LLVM实现一种编程语言

LLVM 是一个编译器框架,这个项目就展示了如何在 C++中使用 LLVM 组件实现一个名为 Kaleidoscope 的简单编程语言。



编辑切换为居中


添加图片注释,不超过 140 字(可选)


它包含如下部分:


  • Kaleidoscope 介绍和 Lexer

  • 实现解析器和 AST

  • 代码生成到 LLVM IR

  • 添加 JIT 和优化器支持

  • 控制流

  • 用户定义的操作符

  • 可变的变量

  • 编译成目标代码

  • 添加调试信息

2. 高性能的矩阵乘法


编辑切换为居中


添加图片注释,不超过 140 字(可选)


这是一个比较小的项目,解释了如何在现代处理器上编写一个高性能的矩阵乘法程序。

3. 从零开始实现《太空入侵者》游戏


编辑


添加图片注释,不超过 140 字(可选)


这个项目包含了 5 部分,介绍了如何利用 C++实现一款名为《太空入侵者》的游戏,循序渐进,由浅入深。


4. 俄罗斯方块


编辑切换为居中


添加图片注释,不超过 140 字(可选)


在这个项目中,将学习如何使用简单而干净的 C++语言从头开始创建一个俄罗斯方块游戏。


项目简单明了,从头至尾也只需要花费一到两个小时的时间,这是为初学者准备的完美教程。

5. 编写一个Linux调试器

调试器是任何开发人员工具包中最有价值的工具之一。


然而,尽管这些工具被广泛使用,但并没有很多资源告诉你它们是如何工作的,以及如何编写一个调试器。


在本系列文章中,可以学习调试器的工作原理,并为调试 Linux 程序编写一个调试器。


6. 开发一款编译器

提到编译器、解释器,都不陌生。


编程开发中必不可少的东西,那么编译器是如何工作的?以及如何实现一款编译器?


和前面开发调试器一样,让我们从一个使用者的角度切换到开发者的角度,去剖析它背后的原理,不仅能够锻炼 C++开发能力,而且能够更加深入的理解编译器的原理。



我一向人为,授人以鱼,不如授人以渔。项目数不胜数,但是好的项目也在不断推陈出新。


正是因为如此,我每周都会特意花费很多时间去寻找优质的开源项目,其中包括但不限于 Python、Java、C/C++、Go、JavaScript。除此之外,还会分享开源的工具资源、优质技术文章,每周五定期更新,欢迎大家 star 并收藏:


https://github.com/Jackpopc/DevWeekly

用户头像

Jackpop

关注

还未添加个人签名 2020.09.16 加入

公众号:平凡而诗意,微信:code_7steps,全网粉丝超20万,技术进阶、优质资源、实用工具,欢迎关注!

评论

发布
暂无评论
学习 C++ 编程,怎么才能找到合适的练手项目?_Jackpop_InfoQ写作社区