,有没有什么C/C++的方法,可以直接把数据流程图映射为可执行模块
求助,有没有什么C/C++的方法,可以直接把数据流程图映射为可执行模块。
RT:
LZ手上有一份代码,约10W行,是C建的的工程,内部的数据流比较复杂,绕来绕去的。后续又需要更新维护,特别麻烦。
因此想问下,有没有可以迅速把一个直观的数据流程图转换为C/C++可以直接执行的模块。
需求:该可执行的模块应利于维护,各种接口、可执行程序、链接库之类均可,但要便于调用。
LZ本人目前已知的有两个方法,一个是LabView,一个是UML,但是感觉都不是很适合。
------解决思路----------------------
请牢记:源代码本身的书写是否结构化或面向对象或符合设计模式或敏捷…并不重要,重要的是你是否使用结构化或面向对象或符合设计模式或敏捷…的方法命名标识符、阅读、修改、检查、测试源代码。
意思是你程序结构看上去再合理,再简洁,也不一定比看上去一团乱麻的程序结构在运行或修改时更不易出错,更方便修改,出错了更容易找到哪里出错和具体出错的原因,更容易改正错误。
试对比
图书馆(对图书的分类够结构化了吧)
和
搜索引擎(可看作是扁平化任何结构数据,仅支持全文检索)
哪个处理信息更方便、更高效。
所以
与其费劲去重构代码让其看上去更简洁、更合理
不如费劲学习grep、sed、awk、……这类全文搜索和批处理编辑的工具。
结构越复杂,越难修改,越难除错。
有时(甚至大多数时候),看上去越合理、越简洁的代码,运行起来性能越差,出错时查找原因越难,找到出错原因后改正越费劲。
程序员要做的不是尽力避免错误,而是聚焦在快速发现并改正错误。真正以快速方式轻易解决错误,“快速的失败”远胜过“预防错误”。Fred George
RT:
LZ手上有一份代码,约10W行,是C建的的工程,内部的数据流比较复杂,绕来绕去的。后续又需要更新维护,特别麻烦。
因此想问下,有没有可以迅速把一个直观的数据流程图转换为C/C++可以直接执行的模块。
需求:该可执行的模块应利于维护,各种接口、可执行程序、链接库之类均可,但要便于调用。
LZ本人目前已知的有两个方法,一个是LabView,一个是UML,但是感觉都不是很适合。
------解决思路----------------------
请牢记:源代码本身的书写是否结构化或面向对象或符合设计模式或敏捷…并不重要,重要的是你是否使用结构化或面向对象或符合设计模式或敏捷…的方法命名标识符、阅读、修改、检查、测试源代码。
意思是你程序结构看上去再合理,再简洁,也不一定比看上去一团乱麻的程序结构在运行或修改时更不易出错,更方便修改,出错了更容易找到哪里出错和具体出错的原因,更容易改正错误。
试对比
图书馆(对图书的分类够结构化了吧)
和
搜索引擎(可看作是扁平化任何结构数据,仅支持全文检索)
哪个处理信息更方便、更高效。
所以
与其费劲去重构代码让其看上去更简洁、更合理
不如费劲学习grep、sed、awk、……这类全文搜索和批处理编辑的工具。
结构越复杂,越难修改,越难除错。
有时(甚至大多数时候),看上去越合理、越简洁的代码,运行起来性能越差,出错时查找原因越难,找到出错原因后改正越费劲。
程序员要做的不是尽力避免错误,而是聚焦在快速发现并改正错误。真正以快速方式轻易解决错误,“快速的失败”远胜过“预防错误”。Fred George