3

这是一个简单的任务,让我简要描述一下!

我应该编写一个以文件名作为参数的命令行工具,我要读取的文件由几行组成,每一行都应该是一个要执行的命令,命令后面跟着它是适当的要申请的论据,以明确:

FILE

sum; 1, 2, 3, 4

Output

10

命令行工具应满足这些要求:

1-易于维护、开发(将来可能会添加更多命令)和用户友好。

2-命令行参数可能会被修改并且可以添加新的。

3-可以作为一个开源项目,一个有组织的源树。

我希望开发人员能够处理源代码并充分理解它。

我是这些东西的新手,我对设计模式有点陌生,所以我不太了解,我想遵循开发这个程序的最佳实践,如果适用,我真的想使用设计模式并让我的代码更好更清洁,所以请建议并指导我以最好的方式编写这个工具,我不想写脏代码,我想写一个高质量的代码,它可以做它的意图并且可以很容易地进一步开发。

请建议并随时批评我刚才所说的话。

最后一件事,我将使用 C++!

谢谢!

4

1 回答 1

0

1- Boost.Program_options is your friend when it comes to parsing command line options.
2- Take a look at the command pattern. Although it is easier to implement in language that has reflection facilities, it is still possible to have a map of "command strings" mapped to function. Please use C++11 facilities for this. i.e. std::function.
3- There is no standard structure for C++ projects. Personally, I use Boost's recommended structure.

于 2013-04-03T19:40:34.070 回答