独望枫

人在尘世间,有缘自相见,变化千千万,未开窍,已迷恋
posts - 12, comments - 0, trackbacks - 0, articles - 1
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

2017年8月20日

     摘要: 重构之于软件开发, 可谓一个绕不过理不清的梗.
整个软件开发的范围触及世间各行各业, 每时每刻都在变更的需求, 每分每秒都在改变的结构, 以不变应万变, 在软件行业, 既不对也对.
不对, 是指不可能一成不变的去应对.
对, 是指前人总结了很好的经验给到我们去学习, 应用; 这些经验表现形式万万千, 大体的流程不会有太大差异.  阅读全文

posted @ 2017-08-20 15:37 小菜枫 阅读(29) | 评论 (0)编辑 收藏

2017年8月19日

     摘要: 测试对于软件开发的意义, 勿需再多言语阐述.
而在所有的测试当中, 单元测试的粒度是最小的, 是进入其他阶段测试的门槛.
以上的话语虽然可能有人看不惯, 但当有过不一样的体会后, 总会得出一些不一样的看法.  阅读全文

posted @ 2017-08-19 20:07 小菜枫 阅读(15) | 评论 (0)编辑 收藏

2017年8月18日

     摘要: 代码结构理清, 章程已经文档化, 工程环境已经规定好, 不着手工程开始干活, 简直对不起之前花费心血准备的种种.
首先, 由于提取出来的基类, 以源码的形式存在并导入到各个模块, 所以必须要将其实现导入到模块工程里面  阅读全文

posted @ 2017-08-18 23:19 小菜枫 阅读(8) | 评论 (0)编辑 收藏

2017年8月17日

     摘要: 历经挣扎后, 愈感力不从心, 决定自己先尝试将整体工程搭建起来, 然后一个个边缘小模块的实现和导入, 并在这个过程中持续的优化考虑不周的地方.
首先是入手的地方是大量重复的代码, 对于这些代码, 唯一的一个途径就是复用. 复用的实现方式有两种: 一是继承, 而是函数库.  阅读全文

posted @ 2017-08-17 22:08 小菜枫 阅读(9) | 评论 (0)编辑 收藏

2017年8月16日

     摘要: 重构的现状:源码工程历经五年, 前后经历五六次人员变更, 20+人次左右的交接; 其中有应届毕业生到老鸟到脱坑, 也有中途其他部门调整岗位过来的同事; 二十多个模块的变更, 在公司相关规范不完善的情况下, 烙印下太多特行独立甚至堪称粗暴的痕迹, 最终成为现在的是一团即将再也看不到缝隙的大泥球,
而我----身处中心.  阅读全文

posted @ 2017-08-16 09:22 小菜枫 阅读(21) | 评论 (0)编辑 收藏

2017年5月24日

     摘要: Cpplint.py是一个基于python的c++风格检测工具, 内置google c++ 风格的检测进行配置, 当然如果你会python, 你也可以对其修改,自定义自己的c++风格, 以下主要记录关于cpplint的配置和简单使用流程  阅读全文

posted @ 2017-05-24 17:43 小菜枫 阅读(42) | 评论 (0)编辑 收藏

2017年4月27日

     摘要: 近日需要使用Qt进行一个工具的编写, 恰逢最近在学习使用gtest作为测试的首选, 本着熟能生巧, 能有机会多练习就多练习, 无机会创造机会也要上(/(ㄒoㄒ)/~~)的积极(折腾作死)态度, 开展了Qt使用gtest的折腾.
首先, 说明一下环境: win7+qt5.8.0(MinGW), gtest最新版本, 直接从GitHub拉取(https://github.com/google/googletest)  阅读全文

posted @ 2017-04-27 12:16 小菜枫 阅读(53) | 评论 (0)编辑 收藏

2017年1月24日

     摘要: 关于gtest,网上有CoderZh大神的一系列教程(玩转Google开源C++单元测试框架Google Test系列),这里不做过多的中转叙述,这里主要记录一下自己在VS2015使用gtest时遇到的一些问题:  阅读全文

posted @ 2017-01-24 13:55 小菜枫 阅读(28) | 评论 (0)编辑 收藏

2016年7月10日

     摘要: 依赖倒置原则:Dependence Inversion Principle,简称DIP。

定义:High level modules should not depend upon low level modules.Both should depend upon abstractions.

Abstractions should not depend upon details.

Details should depend upon abstractions。

翻译成中文如下:

高层模块不应该依赖低层模块,两者都应该依赖抽象
抽象不应该依赖细节
细节应该依赖抽象
  阅读全文

posted @ 2016-07-10 15:59 小菜枫 阅读(52) | 评论 (0)编辑 收藏

     摘要: 单一职责原则:Single Responsibility Priciple,简称SRP。

定义:There should never be more than one reason for a class to change,即不能存在多于一个导致类变更的原因。通俗说法:一个类只负责一项职责。

由来:类C负责两项职责,职责R1,职责R2,当职责R1因某需求导致需要更改类C时,原本正常的R2发生异常。
  阅读全文

posted @ 2016-07-10 14:08 小菜枫 阅读(33) | 评论 (0)编辑 收藏