2017-08-15 5 views
0

!commandで始まるコマンドを取り込むボットを作成していますが、pollまたはhelpのようなアクションがあります。 これらのアクションにはさらにオプションがあり、数を変えることができます。 例: !command poll create somepollurl somepollurlが省略された場合は、デフォルトのURLを使用する必要があります。 (上記はロジックの複雑さの例です)コマンドラインの解析のためのelseネスティングの代替手段

現在のところ、私が持っているコードはあまり入れ子になっているため、読みにくく、保守が難しいです。これはまた、悪意のあるユーザーによって悪用される可能性のあるバグや予期せぬ抜け穴につながる可能性があります。

私は、コードがより読みやすくバグフリーであるように、問題に対処するより良い方法があるのだろうかと思っていました。

答えて

0

手動で行うのではなく、ライブラリを使用することを検討してください。あなたはどの言語を使っているのかを言わないので、私は特定のライブラリを推薦することはできませんが、誰でも使用する言語は1つ(おそらく複数の言語)を持ちます。

+0

ちょっと、nodejsを使用しています。私が望むことができるライブラリを考えることはできません。どのような例を見せてもらえますか?ノードjでない場合は、どの言語でも行います。ちょっと私は考えを得るでしょう – rahulserver

+0

https://www.npmjs.com/package/command-line-args、https://www.npmjs.com/package/commander、https://www.npmjs.com/package /ミニマリスト、http://yargs.js.org/。おそらくもっとあります。彼らのドキュメントを見て、あなたが望むことができるかどうかを見て、あなたが一番気に入っているAPIを選んでください。 –

関連する問題