去除代码异味

       最近花了一周的时间终于完成了,city的商城和仓库的重构,可是在今天下午听了tardis讲述了一篇代码异味的文章后,反思自己重构的重构,我感到毛骨悚然了,这他妈的是重构吗,让我认识到自己重构的力度的不足,从网上找到了那篇文章决定好好品读一下,在此写下记录,希望对别的有同样需求的朋友有帮助。

 

1.任何一个傻瓜都能写出计算机可以理解的程序,只有写出人类容易理解的程序才是优秀的程序员 – Martin Fowler

     我们在写代码的时候,常常忽略了代码的可读性,可能只是为了一时之便在代码的基础上自以为巧妙的一改便实现了产品的需求,可是要知道这样的代码给后面的人埋下了隐患。因为这样的代码很可能导致别人也可能是自己的误读。

 

2.Refactoring是对软件内部结构的一种调整,目的是在不改变外部行为的前提下,提高其可理解性,降低其修改成本。

3.常见的代码异味有:

  1. 重复的代码(Duplicated Code)
  2. 过长的函数(Long Method)
  3. 过大类(Large Class)
  4. 过长的参数列(Long Parameter List)
  5. 发散式变化(Divergent Change)
  6. 霰弹式修改(Shotgun Surgery)
  7. 依恋情结(Feature Envy)
  8. 数据泥团(Data Clumps)
  9. 基本型别偏执(Primitive Obsession)
  10. Switch语句(Swtich Statements)
  11. 平行继承体系(Parallel Inheritance Hierarchies)
  12. 冗赘类(Lazy Class)
  13. 夸夸其谈未来性(Speculative Generality)
  14. 令人迷惑的暂时值域(Temporary Field)
  15. 过度遇合的消息链(Message Chains)
  16. 中间转手人(Middle Man)
  17. 狎昵关系(Inappropriate Intimacy)
  18. 异曲同工的类(Alternative Classes with Different Interfaces)
  19. 不完善的程序库类(Incomplete Library Class)
  20. 纯粹的数据类(Data Class)
  21. 被拒绝的遗赠(Refused Bequest)
  22. 过多的注释(Comments)

重构的一个目的的让代码简单清晰,解耦,解耦,再解耦。文档中给出了一些的方法,这里不再赘述,喜欢的可以自己去看下这里给出链接

http://wenku.baidu.com/view/d82431e84afe04a1b071de68.html

 

 

 

 

转载于:https://my.oschina.net/u/263424/blog/633400

标题“51单片机通过MPU6050-DMP获取姿态角例程”解析 “51单片机通过MPU6050-DMP获取姿态角例程”是一个基于51系列单片机(一种常见的8位微控制器)的程序示例,用于读取MPU6050传感器的数据,并通过其内置的数字运动处理器(DMP)计算设备的姿态角(如倾斜角度、旋转角度等)。MPU6050是一款集成三轴加速度计和三轴陀螺仪的六自由度传感器,广泛应用于运动控制和姿态检测领域。该例程利用MPU6050的DMP功能,由DMP处理复杂的运动学算法,例如姿态融合,将加速度计和陀螺仪的数据进行整合,从而提供稳定且实时的姿态估计,减轻主控MCU的计算负担。最终,姿态角数据通过LCD1602显示屏以字符形式可视化展示,为用户提供直观的反馈。 从标签“51单片机 6050”可知,该项目主要涉及51单片机和MPU6050传感器这两个关键硬件组件。51单片机基于8051内核,因编程简单、成本低而被广泛应用;MPU6050作为惯性测量单元(IMU),可测量设备的线性和角速度。文件名“51-DMP-NET”可能表示这是一个与51单片机及DMP相关的网络资源或代码库,其中可能包含C语言等适合51单片机的编程语言的源代码、配置文件、用户手册、示例程序,以及可能的调试工具或IDE项目文件。 实现该项目需以下步骤:首先是硬件连接,将51单片机与MPU6050通过I2C接口正确连接,同时将LCD1602连接到51单片机的串行数据线和控制线上;接着是初始化设置,配置51单片机的I/O端口,初始化I2C通信协议,设置MPU6050的工作模式和数据输出速率;然后是DMP配置,启用MPU6050的DMP功能,加载预编译的DMP固件,并设置DMP输出数据的中断;之后是数据读取,通过中断服务程序从DMP接收姿态角数据,数据通常以四元数或欧拉角形式呈现;再接着是数据显示,将姿态角数据转换为可读的度数格
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值