Это простая задача, позвольте мне вкратце описать это!Лучший дизайн для инструмента командной строки
Я должен кодировать инструмент командной строки, которая принимает имя-файла в качестве аргумента, файл , что я буду читать состоит из строк, каждая строка должна быть команда для выполнения, команда затем это соответствующие аргументы для применения на, чтобы было понятно:
FILE
sum; 1, 2, 3, 4
Output
10
инструмент командной строки должен удовлетворять эти требования:
1- Легко поддерживается, разработала (больше команд может быть добавлен в будущем) и удобны для пользователя.
2 Аргументы командной строки могут быть изменены и добавлены новые.
3- Может жить как проект с открытым исходным кодом, организованный источник-дерево.
Я ожидаю, что разработчики разобрались с исходным кодом и поняли его.
Я новичок в этих вещах, я новичок в разработке шаблонов, поэтому я мало знаю, я хочу следовать лучшим методам разработки этой программы, я действительно хочу использовать шаблоны проектирования, если это применимо, и сделать мой код лучше и чище, поэтому, пожалуйста, посоветуйте и посоветуйте мне написать этот инструмент наилучшим образом, я не хочу писать грязный код, я хочу написать высококачественный код, который делает то, что он предназначен, и может быть легко разработан в дальнейшем.
Пожалуйста, посоветуйте и не стесняйтесь критиковать то, что я только что сказал.
Последнее, что я буду использовать C++!
Спасибо!
Это не столько «писать парсер», сколько вы думаете, как проектирование переводчика для языка, что не является очень тривиальным вопросом. Вы можете посмотреть, что такое «лексер» и «парсер». Flex + Bison - это набор инструментов для C, который автоматически генерируется, а для C++ вы можете посмотреть Boost.Spirit. – TC1
Чтобы критиковать то, что вы только что сказали: вам нужно нанять программиста, для которого не предназначен этот веб-сайт. Этот сайт, напротив, предназначен для людей, которые пишут собственный код, уже приложил много усилий, провел исследования и столкнулся с определенным препятствием, которое они демонстрируют с помощью короткого, минимального, автономного фрагмента кода примера , –
Я знаю, что такое парсер, он не подходит здесь, так как команды могут быть легко изменены, и это не очень хороший способ изменить исходный код. –