Project Icon

ShiYanLou

编程学习资源库 从入门到精通的开源指南

ShiYanLou是一个综合性编程学习资源库,汇集了C/C++、Python等10多种主流编程语言的学习资料,涵盖数据结构、算法、操作系统、网络编程等20余个核心计算机科学主题。项目收录了1000+优质开源代码、500+实用工具和300+详细学习指南,帮助程序员从入门到精通,全面提升编程技能,为技术面试做充分准备,深入理解计算机科学各领域。无论你是编程新手还是想进阶的开发者,都能在这里找到适合的学习资源和实践项目。

参考资料

gdb 调试入门,大牛写的高质量指南

Computer Architecture A Quantitative Approach pdf 翻译

自动编程体系设想

程序猿成长计划

数据结构和算法动态可视化

基础数据结构和算法的纯C语言实现

计算机科学 面试笔记

计算机科学 面试笔记2

可视化代码过程

各种工程实践代码参考

c++ 多线程 并发 指南 实战

c/c++教程

学习C++,应该循序渐进的看哪些书?

数据结构与算法系列 目录

刷完这65道题,面试通过率翻翻没问题

c++代码实验

源代码查找 热度 书籍

源代码查找 英文

免费的编程中文书籍索引

代码面试较好 强烈推荐!!!!!

nowcoder刷题笔记

LeetCode刷题笔记

跟我一起复习C++

Leetcode常用五大算法思想

数据结构 博客参考 树 图 队列

GitHub Pages+Jekyll搭建个人博客

Markdown工具集

清华操作系统 github

博客专栏 Linux环境编程

博客专栏 Linux网络编程

博客专栏 一步步学习C++

博客专栏 C语言

鱼C工作室 C/C++/Python/Wed/数据结构和算法

图形界面编程

面试算法博客笔记

刘国平基础算法

CPP11新特新 代码实战

新特征 C++11/14/17 concepts and code snippets

A Detailed Cplusplus Concurrency Tutorial 《C++ 并发编程指南》

基于C++11新标准的并发和多线程编程深度指南 C++ Concurrency In Action

《C++17 STL cookbook》英文版的中文翻译

哈希学习

甲骨文公司编辑器Oracle Solaris Studio 12.4 Information Library (简体中文) c/cpp用户指南 数值计算指南 代码分析器 性能分析器 线程分析器

哈工大 编译原理

编译原理——词法分析器实现

编译技术 西电

在线书籍编写模板 gitbook

循序渐进学习书目

svn新建trunk 和 分支

感谢支持

Git

git clone --recurse-submodules https://github.com/xxxxx.git

注意 clone 的时候一定要带 --recurse-submodules 这个参数,否则会下载不完整。

包含内容:

	1. c

	2. c++

	3. python

	4. 汇编语言

	5. 数据机构和算法 面试

	6. 操作系统os

	7. 单片机stm32 arduino Ti-msp430 树莓派 px4 arm

	8. 数据挖掘

	9. 人机工程学

	10. 计算机科学

学习C++,应该循序渐进的看哪些书?

阶段 1

《Essential  C++》
这是一本内容不多但很实用的C++入门书籍,强调快速上手与理解C++编程。
本书主要围绕一系列逐渐复杂的程序问题,以及用以解决这些问题的语言特性展开讲解。
你不只学到C++的函数和结构,也会学习到它们的设计目的和基本原理。

《C++ Primer》
本书对C++基本概念、技术、以及现代C++编程风格进行了全面而且权威的阐述,是C++初学者的最佳指南;
本书可以帮助你编写实用的程序,而无需首先精通每个语言细节。
对于中高级程序员,本书也是不可或缺的参考书。

阶段 2

《Effective C++》和《More effective C++》作者是Scott  Meyers。
你应该熟读它们,并清楚地理解每个项目。
该书围绕55条准则,每一条都介绍了一个可让你写出更好的C++程序代码的方法,并以特别设计过的例子详加讨论。

《Exceptional  C++(C++编程剖析)》和《More exceptional  C++》
这两本书中都包含了40个C++编程问题,这些问题会让你磨练自己的技能,最终成为优秀的C++程序员。
这些问题是Herb  Sutter精心挑选,与ISO/ANSI C++官方标准相一致,
帮助程序员在设计、架构和编码过程中保持良好的风格,从而使编写的C++软件更健壮、更高效。

阶段 3

《Inside  the C++ object model(深度探索C++对象模型)》
本书专注于C++面向对象程序设计的底层机制,
包括结构式语意、临时性对象的生成、封装、继承,以及虚拟——虚拟函数和虚拟继承,
帮助你理解程序的底层实现,以便写出更高效的代码。

《The  design and evolution of C++(C++语言的设计与演化)》
本书作者也是C++语言的设计者Bjarne  Stroustrup,作者在书中综合性地介绍了C++的发展历史,
C++中各种重要机制的本质意义和设计背景,这些机制的基本用途和使用方法,
讨论了C++所适合的应用领域及其未来的发展前景,既没有忽略关键性的详情,又没有过多地陷入技术细节。

阶段 4

《The  C++ standard library(C++标准程序库)》
这是标准模板库字典,你可以在本书中找到STL相关的一切知识。
本书焦点放在标准模板库、检查容器、迭代器、函数对象和STL算法上。
每一个元素都有深刻的呈现,包括其介绍、设计、运用实例、
细节解说、陷阱、意想不到的危险,以及相关类别和函数等。

《Effective  STL》
这是Scott  Meyers的第三本C++专著,也是学习STL最权威的书籍。
作者对书中的50个指导方针都作了详尽的分析,并配以示例。
通过这些规则,C++开发者可以最大限度地使用STL。

《Generic  programming and the STL(泛型编程与STL)》
本书阐述了泛型程序设计的核心理念:concepts(概念)、modeling(模型)和refinement(改善),
并为你展示这些观念如何导出STL的基础概念:iterators(迭代器)、
containers(容器)和function  objects(函数对象)。
按照本书所述,你可以把STL想象成一个由concepts组成的library,你将学习到STL正式结构并理解其强大的优势。

阶段 5

《Exceptional C++ style》
作者为Herb  Sutter。本书同样提出了40个C++风格相关的问题
,对一些至关重要的C++细节和相互关系提出了新的见解,
为当今的关键C++编程技术(如泛型编程、STL、异常安全等)提供了新的策略,
帮助开发者在开销与功能之间、优雅与可维护性之间、灵活性与过分灵活之间寻找完美的平衡点。

《C++  template》
这是一本关于C++模板的完整的参考手册和教程,它强调模板的使用实践,包含了现实世界中的例子。
每个C++程序员都应该好好读一读这本书。

《Modern  C++ design(现代C++设计)》
作者Andrei  Alexandrescu为C++程序员打开了一个新的局面。
本书提供了一些针对软件设计的前沿方法,如联合设计模式、泛型编程,
使程序员可以编写有表现力的、灵活的、高度可重用的代码。

《Thinking  in C++(C++编程思想)》
C++  领域权威著作,介绍了C++实用的编程技术和最佳的实践方法。

值得学习的开源代码

1.Webbench

Webbench是一个在Linux下使用的非常简单的网站压测工具。
它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,
最多可以模拟3万个并发连接去测试网站的负载能力。
Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。

项目主页: http://home.tiscali.cz/~cz210552/webbench.html

2. Tinyhttpd

tinyhttpd是一个超轻量型Http Server,使用C语言开发,全部代码只有502行(包括注释),
附带一个简单的Client,可以通过阅读这段代码理解一个 Http Server 的本质。

项目主页: http://sourceforge.net/projects/tinyhttpd/

3. cJSON

cJSON是C语言中的一个JSON编解码器,非常轻量级,C文件只有500多行,速度也非常理想。
cJSON也存在几个弱点,虽然功能不是非常强大,但cJSON的小身板和速度是最值得赞赏的。
其代码被非常好地维护着,结构也简单易懂,可以作为一个非常好的C语言项目进行学习。

项目主页: http://sourceforge.net/projects/cjson/

4. CMockery

cmockery是google发布的用于C单元测试的一个轻量级的框架。
它很小巧,对其他开源包没有依赖,对被测试代码侵入性小。
cmockery的源代码行数不到3K,你阅读一下will_return和mock的源代码就一目了然了。

主要特点:
    免费且开源,google提供技术支持;
    轻量级的框架,使测试更加快速简单;
    避免使用复杂的编译器特性,对老版本的编译器来讲,兼容性好;
    并不强制要求待测代码必须依赖C99标准,这一特性对许多嵌入式系统的开发很有用

项目主页: http://code.google.com/p/cmockery/downloads/list

5.

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

问小白

问小白是一个基于 DeepSeek R1 模型的智能对话平台,专为用户提供高效、贴心的对话体验。实时在线,支持深度思考和联网搜索。免费不限次数,帮用户写作、创作、分析和规划,各种任务随时完成!

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

Trae

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号