乐创C语言讲义尾声

1.C语言的学习路线
熟悉我的朋友都知道我最早在网上做过一系列的单片机视频,但是很多朋友都不知道我之前线下也办过几期培训班,在哪里,我小规模地招收过几个以前做电源类的模拟电路工程师。对于这一类工程师来说,他们有着很深厚的电路沉淀。不过恰恰由于他们自身年龄的问题,学习单片机这条路线上,对他们自身最大的障碍就是学习一个全新的领域,就是C语言编程。
学习C语言编程,要分成两个层面的学习。第一个层面是底层语法的学习,这一层面主要是介绍C语言的基本语法。第二层面是学习C语言的编程思想。其实对于绝大多数C语言初学者来说,学习C语言编程主要是学习C语言的语法。这就好比在学习电路一样,当你在弄清楚电阻,电容,基尔霍夫定理之前,你根本无法去独立地设计一个电路。学习C语言也一样,当你在弄清楚C语言基本语法之前,根本无法去谈编程思维,数据结构,算法这些东西。尽管有些读者可能会认为,数据结构和算法这些东西是完全独立于语言层面的东西所存在的。这么说就有点唯心的意思,即意识可以脱离于物质单独存在。所以说,学习C语言,对于我们来说,首先就是要学习C语言的基本语法特性,等到C语言语法特性掌握的非常熟练了,这个时候就可以考虑如何提高自己代码的效率了,而此时再去慢慢地锻炼自己地算法和数据结构的知识。通过我上面的描述,可以概括为两点:
  • 从书本上学习C语言的基本语法,结合自己动手编程,以达到学习完成C语言第一层面的目的;

  • 在实践中不断自我否定,参考别人优秀的代码,以达到学习完成C语言第二层面的目的。

2.我为什么要写这讲义
纵观市面上C语言相关的书籍有很多,但是优秀的C语言书籍,还是仅有凤毛麟角的那么基本。这些优秀的书籍主要可以分成三个部分。
第一个部分为优秀的教科书籍。这个部分的书,我想整个教育界也就只有那么一本,即谭教授的《C语言程序设计》,几代人的记忆,其发行量一点都不比《黄冈密卷》,《三年高考五年模拟》来的少。这本书在引领很多大学生成为程序猿的同时,也成为了很多计算机系同学手中的《C语言从入门到结束》,记得知乎上面也有一个专门批判这本书的话题。客观地讲,这本书之所以被很多人所诟病,主要是由于它的历史原因,而它存在的目的,也是因为这个历史原因。说到底,这个原因就是计算机教育的应试性和实用性之间的矛盾。我相信那些进化为程序猿的大学生,绝对不是考到了计算机二级而停止去编程,而那些终结的同学,除了这本书之外,也没有去观看其它的任何书籍。我对它的看法是,它是一本非常棒的计算机教科书,但是很难带领你进入C语言程序设计的大门。
第二个部分是一些经典的国外书籍,这些书籍非常经典,如《C语言程序设计》《C的缺陷与陷阱》《C专家编程》《C与指针》等。但是这些书本在由于翻译的问题,很难满足我们的阅读习惯。
第三部分是国内一些工程师写的书籍,这些书籍写的非常棒,但是销量却很惨淡,究其原因是因为出版即为初版。而且,目前出版系统存在的问题,使得终端书籍售价很高,对于C语言这种投入回报周期很长的技术来说,愿意花高价去购买这些书籍的人非常少。导致了无法这一部分的书籍,很难有二版,三版,无法成为一个良性的循环。
介于上述的原因,我开始在我的公众号里面更新C语言讲义。这份讲义,我回顾并总结了做单片机开发需要用到的C语言的绝大多数语法和规则。希望在我以后的嵌入式教学当中,对于基础部分,大家都能有一个稳固的基础。
最后,矫情地回顾一下这段编写讲义的经历。
在这5个月更新的过程中,每晚七点多到家,吃完晚饭扔下饭碗,就开始C语言讲义的编写和视频的录制,每天结束将近凌晨。面对这样几乎占尽业余时间的付出对比着几乎为零的收入,多少次也想要放弃。但是一想到写这样的一份资料,做这样一份视频,可以帮助更多C语言初学者少走弯路,最终也是坚持下来了。如今,终于顺利将其更新完,鉴于本人水平有限,讲义中有的错误知识,,还劳烦各位不吝指出。后续我会发行纸质版讲义,如有需要,请关注“乐创客”公众号。
本书中的内容是针对C语言初学者来编排的,对于本书中没有讲解到的知识,当你有一天渴求它而去寻找其它资料参考的时候,说明你已经开始渐渐入门C语言了。
最终,还是感谢各位的支持。
接下来一段时间,我将会开始STM32开发板的设计,以及继续更新相关的技术文章和单片机讲义,视频。感谢大家一直以来的知识。
本讲义及代码远程仓库:https://gitee.com/huangqilong119/joy-create-clanguage-code.git。
(0)

相关推荐