精心整理的给简历加分的C++项目。值得收藏

2023-05-16

无论做什么项目,在写简历时,最好要整理出项目中的技术点,思考如何跟面试官介绍你的项目,要经得起面试官的提问。项目的话,可以考虑做下面的这几个:

神级编程网站,堪称程序员的充电站,我给你找好了不能错过_程序员编程指南的博客-CSDN博客

基于各种网络库实现网络服务器/web服务器/http服务器等

做这个的就太多了,在github上搜一搜到处都是这个。面C++的很多都写了这个。

  • 一个多线程网络服务器,

https://github.com/chenshuaihao/NetServer

  • TinyWebServer

Linux下C++轻量级Web服务器,助力初学者快速实践网络编程,搭建属于自己的服务器.

  • 使用 线程池 + 非阻塞socket + epoll(ET和LT均实现) + 事件处理(Reactor和模拟Proactor均实现) 的并发模型

  • 使用状态机解析HTTP请求报文,支持解析GET和POST请求

  • 访问服务器数据库实现web端用户注册、登录功能,可以请求服务器图片和视频文件

  • 实现同步/异步日志系统,记录服务器运行状态

  • 经Webbench压力测试可以实现上万的并发连接数据交换

https://github.com/qinguoyi/TinyWebServer

迷你数据库

  • cpp_redis

这是一个 C++11编写的轻量级 Redis 客户端,具有异步、线程安全、无依赖、pipelining、跨平台等特性。代码量不大,可以学习如何编写一个简洁高效的网络通信客户端程序,另外项目采用了C++11编写,通过这个开源项目,你还可以学习如何使用这些语言新特性。

https://github.com/Cylix/cpp_redis/

写个操作系统。

这个在网上也有专门的课程,可以跟着 B 站 MIT 6.828 视频做。

MIT6.828 是 MIT 开源的一门操作系统课程--理论与实践相结合的经典。只要你跟着项目一步一步走,做完 6 个实验,就能实现一个简单的操作系统内核。

每个实验都有对应的知识点供你学习(也可以自行查找资料),学完理论知识后会有相应的练习,大多数都需要你手写代码。

边学边做,学习效果更加高效。

做这个项目之前建议看看下列资料:

  • x86汇编语言:从实模式到保护模式

  • xv6-chinese

  • 操作系统导论或任意一本操作系统书籍

B站:https://www.bilibili.com/video/BV1px411E7ST/?from=search&seid=94735724635768212

https://github.com/woai3c/MIT6.828

日志系统

  • dbg-macro

打日志是 C++ 开发中必不可少的一种 debug 方式,dbg-macro 受 rust-lang 中 的 dbg 启发,提供比 printf 和 std::cout 更好的宏函数。

https://github.com/sharkdp/dbg-macro

Json解析库。

  • 从零开始的 JSON 库教程

https://github.com/miloyip/json-tutorial

  • libjson

这是一个超级高效的JSON解析器,并且高度可定制的,非常轻巧。

https://sourceforge.net/projects/libjson/

实现属于你自己的 STL

基于 C++11 的 tinySTL,使用了中文文档与中文注释,刚开始是作为新手练习用途,直到现在已经发布了 2.x.x 版本。实现了大部分 STL 中的容器与函数,

https://github.com/Alinshans/MyTinySTL

从0教你做的服务器框架

该项目主要有 13 大模块组成,分别是日志模块、配置模块、线程模块、协程模块、协程调度模块、IO协程调度模块、Hook模块、Socket模块、ByteArray序列化模块、TcpServer模块、Stream模块、HTTP模块、Servlet模块。

https://github.com/sylar-yin/sylar

仿muduo,实现个人网络库

使用C++动手实现自己的网络库(参考Muduo)

本项目是参考陈硕老师的Muduo网络库,与Muduo的不同点:

  • 去掉了Muduo库中的Boost依赖,完全使用C++标准,如使用std::function<>

  • 没有单独封装Thread,使用C++11引入的std::thread搭配lambda表达式实现工作线程,没有直接使用pthread库。类似的直接使用C++11/17的还有std::atomic,std::any等

  • 只实现了epoll这一个IO-Multiplexing,没有实现poll/select

  • 异步日志模块前端不同与原作者的C++风格,是格式化字符串(fmt)风格,前后端异步日志写入使用陈硕老师双缓冲区的思想实现。由于只用于学习,不支持日志滚动功能

  • Buffer部分Muduo库没有提供writeFd方法,本项目加入了writeFd,在处理outputBuffer剩余未发数据时交给Buffer来处理

  • 示例中仅实现了http服务器与echo服务器,使用了Apache Benchmark做了压测,详见下文

  • 暂时没有做TcpClient部分

https://github.com/shiyu-ren/mymuduo

基于 C++ 和 Qt5 的音乐播放器

https://gitee.com/freedomzzq/IcePlayer

基于Qt,QCustomPlot,OpenCV等库实现图像分析处理系统

https://github.com/QiTianyu-0403/OpenCVImage

C++音视频 FFmpeg 播放 RTSP/Webcam 流

https://github.com/ikuokuo/rtsp-wasm-player

神级编程网站,堪称程序员的充电站,我给你找好了不能错过_程序员编程指南的博客-CSDN博客

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

精心整理的给简历加分的C++项目。值得收藏 的相关文章

随机推荐

  • windows上比较好用的截图软件+Gif录制软件+看图软件,建议收藏!

    文章目录 xff1a 1 windows10上比较好用的截图软件1 1 windows10自带的截图方式1 1 1 快捷键win 43 shift 43 s1 1 2 PrintScreen键截图1 1 3 win 43 PrintScre
  • 在Edge浏览器中登录微软账户报错:0x80190001错误

    1 错误可能原因 之所以会出现登录微软账户报错 xff0c 很有可能是因为Clash xff08 你懂得 xff09 2 解决方式 1 下载一个finder xff08 抓包软件 xff09 xff08 参考 xff09 finder官网下
  • 加入bing体验chatGPT大军中来吧,它来了!

    1 第一步 xff1a 加入候选名单 1 首先需要加入候选名单 https www microsoft com zh cn edge form 61 MA13FJ 2 下载最新的Edge浏览器 androd iOS都有试用版本 xff08
  • Qt6 CMake项目导入资源文件Resources 官方最简洁方法

    导入 xff1a https doc qt io qt 6 resources html build system integration 使用 xff1a source 34 qrc images close2x png 34
  • HTTP 系列(三)—— HTTP报文

    什么是 HTTP 报文 HTTP 报文是简单的格式化数据块 xff0c 通俗的说 xff0c 它是用于数据传输的文本字符串 每条报文都包含一条来自客户端的请求或者一条来自服务器的响应 xff0c 它们都由三个部分组成 xff1a 对报文进行
  • GET请求

    什么是GET请求 get请求其实就是通过URL来传递数据 一个标准的URL网址 xff0c 在最后有一个querystring部分 xff0c 表示对页面查询 xff0c 用 来表示这部分 xff0c 内容必须是k 61 v 对个参数用 a
  • nested exception is org.apache.ibatis.exceptions.TooManyResultsException: Expected one result

    文章目录 背景解决 背景 mybaitsPlus this baseMapper selectOne wrapper 查出多个结果 xff0c 抛出了异常 解决 getOne wrapper false ServiceImpl getOne
  • RARP的使用

    大家好呀 xff0c 我是请假君 xff0c 今天又来和大家一起学习数通了 xff0c 今天要分享的知识是RARP的使用 主机只知道自己的硬件地址时 xff0c 可以通过RARP Reverse Address Resolution Pro
  • 5 . 如何用c语言封装寄存器

    前面我们介绍了存储器映射 寄存器和寄存器映射 xff0c 这些都是为使用 C语言封装寄存器做铺垫 我们通过一个实例来对 C 语言封装寄存器进行介绍 实例 xff1a 控制 GPIOC 端口的第 0 管脚输出一个低电平 首先我们需要知道GPI
  • 干货收藏:68道C语言与C++常见面试题

    1 变量的声明和定义有什么区别 变量的定义为变量分配地址和存储空间 变量的声明不分配地址 一个变量可以在多个地方声明 但是只在一个地方定义 加入extern 修饰的是变量的声明 说明此变量将在文件以外或在文件后面部分定义 神级编程网站 堪称
  • 推荐几款好用的手机编程APP!

    各位 很多人现在喜欢用手机写代码 今天小编就带大家盘点几款手机端编程软件 程序员相关的海量资料 点击免费获取 1 C4droid 适用编程语言 C C 适用平台 Android 2 2 软件介绍 付费软件 国内免费 c4droid是款And
  • 精心为学弟学妹整理了60个适合练手的C语言/C++项目,值得收藏!

    前几天写这篇文章 精心为学弟学妹准备的C语言与C 学习路线 书籍 视频推荐和资料 值得收藏 阅读和收藏都挺多 也让我一周涨了3000多粉丝 在这里感谢大家关注支持我 最近很多粉丝朋友私信问一些学习路线的问题以及一些学习资源 一个一个回复有点
  • 如果编程语言是一门武功绝学

    nbsp 学习编程与武功绝学 武侠小说中 各路侠客绿林好汉都是从基本功开始一招一式学起 掌握了足够多的招式后 加之勤学苦练 量变引起质变 会有一天打开任督二脉顿悟出这些招式背后的哲学逻辑 成为一代宗师 在编程的学习过程中 我们何尝不是从一招
  • CSDN粉丝冲3万粉福利放送!C++、Python、数据结构与算法、计算机基础、数据库教程汇总!

    最近有粉丝问我要一些C Python 数据结构与算法 计算机基础 数据库的学习资料 一个一个回复有些慢 索性就写一篇文章吧 声明 此文章中涉及到的内容均来自网络 我看到比较好的才分享给大家 你们可以根据情况选择 程序员必备资源 值得收藏 点
  • C/C++框架和第三方库汇总

    根据读者反馈 xff0c 发现此篇汇总获赞率异常的高 xff0c 为了照顾一下新加入的粉丝 xff0c 故重新发一遍 xff0c 供粉丝查阅温习 值得学习的C语言开源项目 1 Webbench Webbench是一个在linux下使用的非常
  • C/C++动态检测内存错误利器 - ASan

    来自公众号 xff1a 大胖聊编程 作者 xff1a 大胖 ASan xff0c 即Address Sanitizer xff0c 是一个适用于c c 43 43 程序的动态内存错误检测器 xff0c 它由一个编译器检测模块 xff08 L
  • C++之虚函数和虚函数表

    哈喽大家好 最近开始学习计算机基础相关的面试内容 xff0c 比如C 43 43 算法与数据结构 计算机网络 操作系统 设计模式 数据库等 因此把学习时记的笔记分享给大家 xff0c 希望对大家有所帮助 今天分享的是C 43 43 中虚函数
  • 计算机大一新生,想卷却找不到方向,恳请前辈指指路?

    其实 xff0c 大学里面的课程就告诉你应该学什么 xff1f 先推荐三个非常不错的计算机科学学习的 Github 仓库 xff01 希望对大家有帮助 xff01 哭了哭了 xff01 如果我当时上大学的时候有人告诉我这些开源项目就好了 x
  • http cache-control 指令的设置以及意义

    转载地址 https developer mozilla org zh CN docs Web HTTP Headers Cache Control http www cnblogs com yuyii archive 2008 10 16
  • 精心整理的给简历加分的C++项目。值得收藏

    无论做什么项目 xff0c 在写简历时 xff0c 最好要整理出项目中的技术点 xff0c 思考如何跟面试官介绍你的项目 xff0c 要经得起面试官的提问 项目的话 xff0c 可以考虑做下面的这几个 xff1a 神级编程网站 xff0c