韦老师的视频教程是一套很好的教程,但是每天看视频,跟着老师写代码,让我觉得收获没那么多,甚至记住的东西也不多,所以以后准备写日志,记录每天学到的东西,遇到的问题的解决办法。希望很努力的 变得更好。
今天学习了教程上的LCD一节,视频分好多节,还没看完,但觉得面对对象编程的思想我应该很熟练的掌握。于是输出一下。
以前也接触过面对对象编程,但一直没有深入的理解,今天结合代码以及老师的讲解才觉得真正的了解了这一编程思想,
什么是面对对象编程,以我个人的见解,是抛弃解决一个问题的方法,建立一个系统的程序,可以解决这一类问题,比如今天学习的lcd的编程,按照之前的编程想法,就会写初始化函数,测试函数,再写其他的代码,实现各种需要的功能。而根据面对对象编程的思想,是建立led.c led_3_5.c led_4_3.c lcd_controller.c s3c2440_lcd_comtroller.c 以及led.h头文件,led.c 和lcd_controller.c 相当于两个总管的函数,里面有一个数组放各类lcd参数的函数。有一个函数给下层的函数如led_3_5.c函数用来填充数组。还有一个选择函数,供调用者选择。
以前也了解过函数的封装什么的,但一直只是知道这一个名词,今天才算真的和它认识了。
根据韦东山老师的代码理解一下。
int register_lcd(p_lcd_params plcd)
{
int i;
for (i = 0; i < LCD_NUM; i++)
{
if (!p_array_lcd[i])
{
p_array_lcd[i] = plcd;
return i;
}