![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
EvilsInterrupt |
|
|||
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 2 Всего: 9 |
Мне нужно реализовать вывод в человеко-читаемом виде. У меня имеется тип plain для опции '--format' в моем проекте консольного приложения. Мне хочется сделать достаточно удобно и чтобы глаза пользователя читающего вывод быстро находили нужную ему информацию.
Разрабатываемое консольное приложение нацелено на системных программистов. Приложение читает файл и выводит информацию о его строении. Одна группа опций это headers-опции, они показывают в "сыром" виде значения хидеров. Другая группа опций это details-опции, они выводят уже информацию после небольшого анализа приложением. Привожу примеры, возможных вариантов:
уверен что это не весь набор вариантов. Поэтому и обращаюсь за советом: Какой придумать или какой выбрать? Может кто-то встречал какой-либо негласный стандарт? |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
или оставить выбор пользователю: --align_left --align_right ![]() |
|||
|
||||
EvilsInterrupt |
|
|||
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 2 Всего: 9 |
mes,
Тогда еще вопросы: 1) Что лучше текстовое описание поля (File address of new exe header) или же название поля в программном коде( e_lfanew ) ? 2) 2.1 Как лучше всего значения полей, потом через разделитель их описания или же 2.2 Сначала описания полей, потом через делимитер их значения? |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
для кого текст, для того кто знает поля в программном коде ?!
меньше слов больше данных, но без ущерба для читабельности.. группировать вывод по логическим данным, а не по программным структурам.. А вообще если речь идет о формате, то есть такое слово "шаблон" - и никакой головной боли по представлению.. ;) |
|||
|
||||
Amp |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 886 Регистрация: 17.2.2009 Репутация: 3 Всего: 17 |
Чаще пользователи берегут свои глаза и вывод консольного приложения просто скармливают grep-у. Особенно если вывод может растянуться на несколько экранов, а интересует всего одна-две строки. По личным ощущениям, выравнивание по правому краю не самое удачное решение - очень сложно вычитывать из-за того, что строки имеют разные отступы. |
|||
|
||||
EvilsInterrupt |
|
||||||
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: 2 Всего: 9 |
Amp,
Согласен, сам так делаю когда тулза не моя, а данных через чур много! ;) Но к примеру после readelf я ничего никогда не "грепаю", потому что могу пропустить какие-либо значение, которые могут дать новые гипотезы, что помогут в изучении файла.
Конечно, но это тогда когда интерпретации шаблона реализована.
Я как-то разложил для Mach-O формата по "логическим данным", на что меня спросили "Ну и где я по твоему должен искать поле сегмента и энтропию по нему?". Просто понятие "логика" весьма скользкое. Кто-то отталкивается относительно одних суждений, а кто-то от других, а т.к. нет возможности залезть к каждому в голову, то лучше всего именно относительно программных структур. |
||||||
|
|||||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
а кто то от стандарта.. Добавлено через 1 минуту и 27 секунд ![]() Добавлено через 5 минут и 24 секунды лучше программные структуры подгонять под модель... чем интерпретацию модели основывать на программных структурах.. с виду кажется, что вроде бы одно и то же.. на самом деле между этими подходами громадная пропасть и близки они могут быть только в начале пути ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |