首先,对于计算机相关专业的同学来说,一定要重视C语言的学习,原因有三个方面,其一是C语言在操作系统开发、嵌入式开发和多媒体开发领域依然有广泛的应用,其二是掌握C语言对于后续计算机专业课的学习有非常积极的促进作用,比如数据结构、编译原理等等,其三是掌握C语言也会方便后续的考研,目前也有不少学校在考研时会考察C语言。
之所以目前有很多人不推荐从C语言开始学起,原因无非是三方面,其一是C语言并不是全场景编程语言,在当前的互联网时代存在感不强,其二是C语言的岗位需求量不大,不如学习Java、PHP等编程语言好就业,其三是C语言的前期学习成就感不强,很容易放弃。
从学习编程语言的角度出发,学习C语言是不错的选择,一方面C语言的语法结构比较简单,比较好入门,另一方面C语言的实验环境也比较好搭建,这两点对于没有任何编程经验的初学者来说,还是比较重要的。但是,如果当前想通过学习一门编程语言来实现就业,选择C语言确实存在就业面相对较窄的问题。
要想通过学习C语言来实现就业,往往需要有一个系统的学习规划,而且学习周期往往也比较长,这是当前很多初学者不选择从C语言开始学习的重要原因。如果初学者有大块的学习时间,而且自身也有比较扎实的数学基础,那么学习C语言是完全可以的,而且可以走研发级程序员路线。在掌握C语言之后,可以进一步阅读一下Linux操作系统的源代码,从而提升自身的研发能力。
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
关于进阶C语言的进阶会遇到两个主要问题:
1、明白基础以后,缺少大量练习。而大量练习本身会非常费时间,因为在顾及语法的同时要顾及逻辑问题,捉襟见肘。这时候的初学者,逻辑抽象能力和语法使用都是半吊子,非常难受。
2、阅读代码方面,C语言的成熟工程代码一般会比较冗长,函数中间夹杂着很多宏和指针操作,我阅读的感觉是读后面忘前面,非常难入手。如果不明白某个函数的功能,强行将其读懂非常费时费力,容易放弃。这样一来,学完基本知识之后的进阶之路真的非常陡峭。我个人大胆给出C语言进阶的一个相对缓和的路线:1、实现链表、可变长数组、哈希表等基本数据结构,实现方便的string结构体。胡萝卜先生的长胡子故事续写然后大胆的用在自己写的程序中。不要怕写的有BUG,也不要怕效率不高。现代编程中容器是非常关键的武器,没有容器寸步难行。而编写容器时会练到封装、指针、内存分配,都是C语言进阶时极其重要的方面。2、如果工作学习中用到C语言就再好不过,比如现在很多本科、硕士毕业论文都要用C语言实现,那么这时候抓住机会多练练,是最好的。
总结:写了很多,感觉再写下去个人私货就太多了,并不客观。总之C语言的学习是知识点少、难点多。上面针对初学提供了一些建议,进阶方面写了很多个人的心得体会,希望能给学习C语言的初学者和进阶者提供一些帮助。如何学习C语言这是个挺重要的大问题,读者若有意见和建议,可以讨论交流,有问题我可以修正。
共同学习,写下你的评论
评论加载中...
作者其他优质文章