【发布时间】:2013-04-03 19:31:11
【问题描述】:
这是一个简单的任务,让我简单描述一下!
我应该编写一个命令行工具,它以文件名作为参数,文件 我要阅读的内容由多行组成,每一行都应该是一个要执行的 command,该命令后面是要应用的适当参数,以使其清楚:
FILE
sum; 1, 2, 3, 4
Output
10
命令行工具应该满足这些要求:
1- 易于维护、开发(未来可能会添加更多命令)且用户友好。
2- 命令行参数可能会被修改并可以添加新的。
3- 可以作为一个开源项目,一个有组织的源树。
我希望开发人员能够处理源代码并充分理解它。
我是这些东西的新手,我对设计模式有点陌生,所以我不太了解,我想遵循开发这个程序的最佳实践,我真的想在适用的情况下使用设计模式并让我的代码更好更干净,所以请建议并指导我以最好的方式编写这个工具,我不想写脏代码,我想写一个高质量的代码,它可以做它的意图并且可以很容易地进一步开发.
请提出建议并随时批评我刚才所说的话。
最后一件事,我将使用 C++!
谢谢!
【问题讨论】:
-
这并不是你想的那样“编写解析器”,而是为一种语言设计一个解释器,这不是一件小事。您可能想研究什么是“词法分析器”和“解析器”。 Flex + Bison 是 C 自动生成两者的工具集,对于 C++,您可以查看 Boost.Spirit。
-
批评你刚才说的:你需要的是雇一个程序员,这不是这个网站的目的。相比之下,这个网站是为那些自己编写代码的人准备的,他们已经付出了很多努力,完成了研究,并遇到了一个特定的障碍,他们用一个简短的、最小的、自包含的示例代码来演示.
-
我知道解析器是什么,这里不符合条件,因为命令很容易修改,而且不是修改源代码的好方法。
-
对于2),主程序是否需要重新构建,还是您期望类似插件的架构?
-
重建,会有源代码管理。
标签: c++ design-patterns command-line-tool