我有一個程序以字符串形式獲取命令。字符串中的每個字符代表一個命令。命令的例子下面給出從字符串輸入獲取命令
OBIPC
Ø - 打開文件
乙 - 請以粗體
文我 - 請以斜體文字
P - 打印文本
ç - 關閉文件
我的程序必須分析ŧ他的字符串,並做相應的工作。每個命令都按順序執行。我想出了以下想法來做到這一點。
- 爲每個命令創建操作類。每個將有一個Execute()方法並實現一個接口IExecutable。所以如果我有5個命令,我將有5個類來處理每個命令。
- 保留可在關聯容器中執行操作的命令和關聯對象(在.NET中爲std :: map,而在.NET中爲字典)。
- 循環輸入字符串中的每個字符。檢查每個角色的相關操作。如果是,請獲取操作對象並致電執行()。某種指令設計模式。如果某些字符沒有關聯,則拋出錯誤或跳過。
這種方法對我的問題是最好的還是你看到任何簡單/有效的方法來做到這一點?這不是特定於任何編程語言,我可以使用任何編程語言。我正在尋找的是想要做到這一點的想法。
有什麼想法?