标题: 两种操作,有什么不同吗 [打印本页]

作者: sdarling    时间: 2022-2-7 20:11
标题: 两种操作,有什么不同吗
就拿一个点灯来说,这两种变成方法优劣如何。第一种:需要灯亮时直接调用IO口驱动灯点亮或者关灯操作。
第二种:在适当时间的定时器中检测某一个变量的值,当检测到有值时亮灯,检测到无值时关灯。

现在也算是入行半年了?最早经常用第一种方式进行编程,后来逐渐改为用第二种方式,给我感觉就是第二种整体逻辑的耦合度下降,逻辑梳理更加容易.


还有想到的一点就是,我把点灯的对底层硬件的操作封装成一个应用层的操作,程序用需要点灯的地方都只用自己封装的函数,哪怕函数里只是一行的IO驱动函数也这样封装。这样做的作用是分层操作?这样做除了方便移植还能有有什么优势吗,有时候改别人的程序,我都贪省力直接调驱动...

各位大佬还有其他编程的思路补充的吗....

作者: 13205495918    时间: 2022-2-8 08:39
第二种就是典型的轮询,看你的描述并没有对任务进行优先级处理,想进一步深入的可以学学freertos操作系统。
作者: munuc_w    时间: 2022-2-8 08:43
从简易成度看,直接IO口操作最简单,从程序规范上看,封装一个函数较好。至于什么时候开关灯,看用途。
作者: man1234567    时间: 2022-2-8 09:09
实质是:第一种自己动手,第二种命令小弟。
区别是:前者疑似个体户,后者貌似有团队。
所以需求就是你懂的
作者: woshige    时间: 2022-2-8 15:02
就像前面的兄弟们说的,如果你是个人代码,偶尔做一个两个代码,那其实都无所谓的,怎么写看自己心情就好;如果你是沿用了别人的代码,比如公司里面其他同事的代码,那么为了可阅读性和可移植性,肯定是按照规范一层层封装起来会更好。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1