我有一个包含main方法的类,我一直想知道是否应该解析输入参数并检查它们在main或我传递这些参数的对象中是否正确。是什么让课程更可重复使用?
答案 0 :(得分:1)
理想情况下,您需要制作干净的模块化代码。想象一下,如果有一天你决定需要从命令行以外的地方获取参数。
一个很好的方法是使用一个接口ArgumentParser
,代码的其余部分可以使用(例如,通过将实现该接口的实例传递给代码的任何部分来读取参数)。对hasSwitch
等--foo
等方法,getValue
和--foo=bar
等方法,包括A::B
等方法。
如果您需要从其他位置获取参数(例如交互式用户提示,配置文件等),则只需更改几行代码即可实例化不同类型的参数解析器。
应该在两点检查参数: