C 程序员进阶之路常备口袋的 10 个宝藏

发布时间:2024年01月06日

虽然 Java 和 Python 等更现代的语言公认容易学习,但 C 基本上都是大学计算机类相关课程的入门语言。为什么?这。。。

C 语言的重要性,有很多理由可以说服你。最重要的还是因为学习 C 是以后学习更高级语言的良好基础,绝大部分现代编程语言都是基于 C 语言来实现的。

当你使用其他语言做一些事情的时候,如果你了解 C 语言甚至更底层的汇编语言,你可以更好地了解你写的代码背地里到底干了什么勾当。另一个现实是,它也被广泛地使用于你离不开的各种基础软件系统,比如 Windows、Linux、MacOS、数据库、嵌入式软件等内部绝大部分代码都是用它编写。

算起来 C 语言差不多 50 岁高龄了,还很能干嘛!

如果你是刚学完 C 语言基础的入门者,或者刚从其它语言转过来,有些非常优秀的学习资料,进阶之路上,八戒希望你不错过它们。下面八戒将给大家介绍 10 个宝藏级的资源,无论是书籍、参考资料、开源项目等,都值得你收藏!

《C 编程语言》

书籍 / 在线, 作者:Kernighan and Ritchie

很久之前开始,《C编程语言》(或K&W书,有时被称为K&W书)一直被推荐为C程序员的参考手册。第一版于 1978 年发布,由 C 的原创设计人员共同编写,为了涵盖(当时新的)ANSI C,十年后发布了更新版本。

这本书无论阅读风格,或者现代性都强差人意,但在权威性上无可挑剔。如果你打算继续往 C 编程之路进发,真的应该把这本电子书下载到你的电脑上,或者买一本放在床头。

《现代 C 语言》

书籍 / 在线, 作者:Jens Gustedt

这本书比《C 编程语言》风格要明显容易阅读,而且是免费的,其中涵盖了现代 C 编程,提供的参考资料截至于 2018 年。书里内容分为几个级别,从入门到高级都有。在你使用 C 语言升级打怪积攒经验的路上,看看书中描述的初次相遇、相识和认知水平,可以拨云见日。

CS50x 计算机科学导论课

在线课程,作者:哈佛大学

这门由哈佛大学教授的在线课程,非常受欢迎,介绍了一系列计算机科学主题,包括相当多的 C 语言知识。

课程是免费提供的,包括九个长作业,需要动手实际操作完成,以及最终的一个实践项目。课程结束后,可以获得哈佛大学提供的签名证书,是不是很有面子?

基于项目的 C 语言教程

开源项目,作者:rby90

作为初学者,相信大多数的你都是通过直接看书或者研究示例代码段来学习 C 语言,这和实际项目开发还是有很大的差异。

正好,作者 rby90 开源了这个项目集合,包括基于项目的教程的分类列表,允许你构建小游戏、操作系统、编程语言、视频播放器等。

这些项目听起来有点令人不知所措,don’t panic,也有很多非常容易上手的项目包含在其中。

CodeTriage

在线网站 作者:理查德·施尼曼(Richard Schneeman)

和学习绝大部分知识一样,学习 C 语言的最好方法同样是实际编写真实的项目。心理准备好了,身体还在偷懒,八戒也懂,如果你没有开始的行动,可以尝试参与 CodeTriage。

CodeTriage 是个简单的网站,将你指向需要你帮助的各种开源项目。你可以在上面找到一个看一眼就知道是专为你而设计的项目(或者闭上眼随意点击一下),查看它的问题列表,并尝试解决 bug 并回答问题。你的答案可能有错误,但是在一个更大的项目中积累实际动手的经验,真的很有启发性。

comp.lang.c 常见问题

在线网站

comp.lang.c 是一个问答列表,上面有很多老手 C 程序员提出的各种标准和有趣的奇怪问题,而且可读性非常好。

你可能会发现二十年前的 C 语言学习者就已经遇到了与现代学生相同的问题,真的太令人宽慰了。

《C 专业人士注意事项》

电子书,作者:彼得·拉涅利

这本免费公开的电子书,作为参考书内容非常详细,引导你了解从初级 C 程序员到高级工程师的各种主题,比如线程、原子、内存管理、常见 C 编程习惯用语、开发实践和陷阱的部分等。最初是基于 Stack Overflow 内容的汇编。

非常建议你将这本书放在电脑旁,可以经常翻阅。

Linux 内核编码风格

在线电子书,作者:Linus Torvalds

既然你都关注了八戒,不妨和八戒一起仰仗一下 Linux 内核的创建者 Linus Torvalds 吧。

Linus Torvalds 公开了一份电子文档《Linux Kernel Coding Style》,里边描述了长期以来流行的 C 语言代码编写风格,你可以据此和自己的代码作比较,文档里边概述的风格更具可读性,值得学习!

代码大战

项目

Codewars 是一个非常有趣的创意,把编程当成玩游戏,你接受其他学生的挑战来完成挑战,这些挑战被称呼为 kata,最终积累分数提高 kyu 的排名。除了支持 C 语言之外,还提供了多种其它语言。

《使用 GNU Make 管理项目》

书籍 / 在线电子档, 作者:梅克伦堡

入门的第一课一般都是教你使用编译器 gcc 直接编译写好的 main.c 文件,但很快随着编写代码的积累,全靠手动构建会越来越消耗精力,所以到了 makefile 派上用场的阶段。

《使用 GNU Make 管理项目》是一本关于巨著,里边事无巨细地介绍各种元素,对于掌握 C 或者其它语言都是颇有裨益的。

文章来源:https://blog.csdn.net/2301_76403635/article/details/135420752
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。