Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Организация структуры программы с большим числом п 
:(
    Опции темы
mur88
Дата 15.7.2013, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 10.11.2007

Репутация: нет
Всего: нет



Подскажите, пожалуйста, как правильно организовать структуры консольного приложения с большим числом параметров в args. Так же некоторые из этих параметров могут комбинироваться друг с другом, а некоторые не.

Где можно почитать что нибудь по этому поводу.
PM MAIL   Вверх
gambit
Дата 15.7.2013, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 5
Всего: 40



Что по этому поводу читать? Тебе приходит массив параметров, разбирая их, выставляешь флаги в программе, позже реагируешь поведением на эти флаги.
PM MAIL ICQ Skype   Вверх
dzaraev
Дата 16.7.2013, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 12.1.2013

Репутация: нет
Всего: 1



Во-первых определите набор самих параметров приложения и заверните их в специально созданный для них класс, например "MySettings".

Во-вторых надо определить формат(синтаксис) параметров командной строки. Можно ориентироваться на целевую платформу и принятый там формат (в Win-системах один, в Unix другой), либо определить свой собственный. Обязательно выводить инфу об этом синтаксисе по запросу хэлпа (который может быть -?, /?, \?, -help и т.д.).

В-третьих, в соответствии с этим определенным синтаксисом и классом MySettings, необходимо написать свой парсер, на вход метода "Parse" которого будут переданы параметры ком. строки (в виде массива или в виде одной строки), а на выходе, соответственно будет возвращаться инициализированный экземпляр класса MySettings.

В дальнейшем, вы можете передавать ваш MySettings через какое-нибудь статическое свойство, чтобы получить доступ к нему из любого места программы. Также, рекомендую при запросе текущих настроек возвращать не сам MySettings, а создать интерфейс IMySettings, в котором все свойства, отвечающие за параметры ком. строки сделать доступными только для чтения (MySettings, естественно, должен реализовать IMySettings).

Почитать не могу рекомендовать ничего, кроме гугла. Можете еще попробовать поискать какие-либо готовые решения вашей задачи (с готовым форматом, парсером или типа того), но чего-то конкретного опять-таки лично не пользовал и подсказать с ходу не могу.

Это сообщение отредактировал(а) dzaraev - 16.7.2013, 20:54
--------------------
Если вопрос решён - помечайте тему.  
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0554 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.