C语言学习随笔(2)—— 学习目标

    学习C语言无非是为了能够编写一些程序,那么学到什么程度才算是学到了基础,入门了呢?此次学习的目标有三个,首先能够独立编写一些复杂的C语言程序,然后必须理解计算机语言编译机制,最后的目标同样是作为一个软件工程师必备的技能——能够阅读复杂的 Linux 平台的 C 语言工程代码。以下是对这三个目标的一个简单拓展介绍。

1、能独立编写复杂的C语言程序

    编写C语言程序是一个C语言软件工程师的最基本的能力,而课本上的小练习并不能真正地体现一个学习者的学习程度,那么这个时候就需要一个新的挑战来检验自己的实际操作能力和对C语言的掌握程度。如果能够独立完成一个较为复杂的C程序,那么说明你已经踏上了C语言编程的新道路了,对C语言有了一定的掌握了。

    这个时候就出现了一个问题——什么样的C语言程序才算是复杂呢?在C语言的学习过程中,C程序的复杂度考量可以从代码量和业务逻辑这两个方面入手。

    代码量方面,如果能够做到从接受到任务开始,一天左右的时间能够完成一个代码量在500行左右的模块,那么基本就可以了。

    业务方面,如果能够完成较为复杂的业务逻辑,那么说明已经完成了这个目标。比如,在Linux平台下发现自己的电脑某个USB接口驱动没有了,那么能够独立完成这个驱动的编写就说明你很不错了(当然,驱动的基本知识得有一定的了解),或者能够依靠一些芯片的使用手册等对一些电路板的程序进行编写(比如智能小车,GUI绘制等)也是可以的。课外相关内容要求比较少的业务也不少,比如制作一个计算器等。

2、理解计算机语言编译机制

    这个主要要求对整个工程的转化为可执行程序的过程有一定的理解。实际编辑过程中常用的编程工具有很多,大多都是IDE,这些软件在使用过程中能够实现一键编译,那么此次学习要求能够对IDE在点击了它的编译按键之后,工程从源代码变成可执行程序的过程中到底经历了什么,这样的话能够更好地理解编程这项工作。

3、阅读复杂的Linux平台的C语言工程代码

    这个可以看做是对C语言掌握程度的另一个判断方法,英语里面强调“听说读写”四项基本功,那么我们编程语言同样得能够写,能够读。这个相对于前面两个目标来说更难一点,但是在阅读过程中对于自身的提高是十分有帮助的。曾有人这么说过——“假如拿出Linux底层文件中的十个,你能读懂3个,那么可以说在这方面有点强了。另外,在看这个操作系统的工程源码的时候,如果你能看懂十分之一,那么说明你能够达到一个基础的标准;五分之一的话,说明你有一定的能力;如果达到四分之一,那么一些基本的功能你基本都能做;如果能达到三分之一,在初学者中已经相当不错了,这个程度的话,拿着一个复杂的工程然后参考着去写,是基本能完成的;如果达到一半的话,那么你的功底已经很好了。”这个说法可能不够准确,也不够踏实,但是这确实可以算作是一个检验自己C语言编程水平的方法。

    当然,上述三个目标其本质上都是对C语言掌握程度的一个判定方法,如果想通过其他的判定方法来作为自己的目标的话也可以,不过必须保证有效,否则没有有效的评判标准的话就会学得很迷茫。

你可能感兴趣的:(C语言)