想学语言的模块化的同学可进来看看(以51单片机的模块化来讲解)
因为才刚刚接触程序半年,凭着本人有限的知识,只能从单片机来讲解这个模块化的相关知识.
首先讲讲写这篇博客的初衷,我们第一学期寒假的时候,我们的寒假作业要求就是得用模块化编写,网上看到的一些资料感觉看不懂,找了些大神给我讲解了之后才感觉明白了,自己用的时候还出现了很多的错误.为了让后面的学弟学妹们好好理解模块化写的第一篇博客.
分模块的好处
首先,这是我在写万年历和温度传感器的时候,显然这是我经过收缩函数之后的程序
由上图可以看出,当我收缩函数的时候,代码已经到达了451行,而当我打开之后,函数就达到了上千行,你们想想,当你看着这一千多行的代码时,你能够方便的从中找出仅仅是一行的错误吗?这显然是不可能的.既然对于自己这个打代码的人都很难看得懂,更别说别人了!
而让我们来看看下面这个同样的程序
怎么样,是不是看得容易了许多.对于学过51单片机的人来说,他能知道:
第一个模块是主函数模块,第二个模块是液晶显示和数码管显示模块,第三个是时间延时模块,第四个是温度传感器模块.
而对于没学过的人来说呢,看我的模块名称他也能知道第一个是主函数模块,第二个是和显示有关的模块,而第三个是和时间有关的模块,最后一个虽然他不知道,但他可以百度对吧,就可以知道这是和温度传感器有关的模块.
这样一看,整个程序就非常的清晰,每个人都能看懂你的程序在哪定义了些什么.而这对于每个人日后的工作来说是至关重要的.想要让别人能看懂你的代码,就要好好的规划自己程序的模块怎么划分,才能让别人看的简单.对于所有想要从事有关于计算机的职业的人,只要你不是那种万中无一IT大佬,你都不可能独自完成整个软件的程序设计,公司里都会把整个程序分成许多的模块,让每个人完成各自的模块,最后再由专门的人员整合起来.对于现在的我们来说,养成写程序分模块的习惯尤为重要.
接下来讲讲干货
首先你得有主函数的模块,(这个最后整合了之后再讲)然后是其他的模块.
先来讲讲分模块.开始你要建立一个工程,对于单片机来说,只要在工程文件下建立就
可以,像这样
在自己的工程文件下建立 .c 的文件就可以(名字用小写).
(对于c语言来说主模块和其它模块是不建到一起的,这个本人用的是VS2017而且学的时间不长,所以就是在这随口提一下.)
(以delay模块为例)
创建好了 .c 文件后,我们把.c文件添加进工程中,之后还需要在创建一个 .h 的文件(假如你的.c文件是delay.c那么你的.h文件必须为delay.h的文件,且这个文件要与.c的文件放在同一个文件夹中)类似以下这样
接下来就先讲讲.c的文件
首先要写的就是 #include"delay.h" 记住这个函数必须要有,它所添加的就是我们刚刚建立的那个.h的文件,通过这个函数我们把它们关联起来(其他的学过c语言的应该都知道,添加需要的库,恒定义,创建一些需要使用的函数)
接下来就是重点的.h文件
基本的写法就是
#ifndef __(你所定义的.h文件的大写)_H__
#define __(你所定义的.h文件的大写)_H__
这里的东西是你之前在.c文件中定义过的函数(记住不要全部复制,只需复制开头的函数)