Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Разное > Ваши программы
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 04.12.2010, 23:04
Vasil54 Vasil54 вне форума
Прохожий
 
Регистрация: 03.10.2008
Сообщения: 10
Репутация: 18
По умолчанию PGF 2.1 - отладчик-форматер структурных ошибок в исходниках Pascal/Delphi/C/C++/C#

___ Тема: PGF 2.1 – улучшенное форматирование; АВТОМАТИЧЕСКОЕ локализация / ИСПРАВЛЕНИЕ структурных ОШИБОК в исходных кодах Pascal, Delphi, C, C#, C++.
___ Ключевые слова: отладка, форматирование, сопровождение, надежность, визуализация, документирование, Pascal, Delphi, C, C#, C++, FreeWare.
___ Уважаемые программисты, разработчики текстовых редакторов и отладочных систем.
___ Предлагаю опробовать PGF (Programs Graphical Formatter) - отладчик-форматер структурных ошибок в исходниках Pascal / Delphi / C / C# / C++. О вкусах не спорят, но, скорее всего он будет особенно полезен: а) для начинающих программистов, которые ещё недостаточно овладели навыками создания структуры программы; б) при разработке больших модулей со сложной структурой; в) при сопровождении и адаптации старой и/или плохо документированной программной продукции. Возможно Вам понравяться его дополнительные возможности, и Вы станете им пользоваться параллельно с используемыми Вами системами ( например JEdid, Eclipse ). Надеюсь, что разработчики текстовых редакторов и отладочных систем сочтут целесообразным включить в свои пакеты режимы, реализующие некоторые его дополнительные возможности. Если они это сделают самостоятельно – я не возражаю; но если обратятся ко мне, то возможно они выиграют время, а я смогу заработать.

___Активена новая версия PGF 2.1 . Исправлены выявленные ошибки. Добавлено форматирование языков C, C++, C#.
___Активен только сайт GRAFOR.MOY.SU.

___Скриншот программы PGF (Ver 2.1)




___Демонстрационный пример работы программы PGF


___Прямая ссылка на скачивание: http://grafor.moy.su/Files/PGFLanSetup.rar

___ Теперь конкретно перечислю некоторые дополнительные возможности:
___1. Реальная СТРУКТУРА программы, полученная после обработки PGF, визуализируется в виде форматированного текста, с использованием ЦВЕТА и ЖИРНОСТИ.
___ 2. Выравнивание операторов перехода (явные - GoTo, неявные - Exit, return, Continue, break …) ПОЗИЦИОННО и ЦВЕТОМ на свою метку (если нет метки, то в нужном месте генерируется фантом-метка), что делает их заметными с первого взгляда. Тогда при анализе и отладке не придётся искать ситуации передачи управления из глубины нескольких вложенных блоков на верхние уровни, или вообще инициализации выхода из подпрограммы - всё будет наглядно показано.
___ 3.Добавление в текст программы большого количества вспомогательных комментариев структурного характера, в частности ко всем стуктурообразующим операторам приписываются комментарии с информацией, обеспечивающей их ВЗАИМНО-ПЕРЕКРЕСТНЫЕ ссылки. Это особенно удобно, когда:
___ 3.1.Подряд идут несколько операторов конца блока, и надо определить, который оператор какой блок закрывает и где был открыт каждый закрываемый блок;
___ 3.2. На метку имеется несколько переходов, и важно знать как их местоположение, так и их количество (например, несколько Exit, return, GoTo, break ...).
___ 4. Преобразование блоков по умолчанию (когда имеется всего один исполняемый оператор в теле условного- или цикл-оператора ) в явные блоки (добавляются операторные скобки).
___ 5. Возможность обрабатывать ЛЮБЫЕ модули (ошибочные, или даже незавершённые), преобразуя их структуру в законченный вид. Осуществляется автоматическое ВЫЯВЛЕНИЕ и локализация СТРУКТУРНЫХ ошибок, с указанием наиболее ВЕРОЯТНОГО варианта их ИСПРАВЛЕНИЯ.

___ Отладчик-форматер PGF (Programs Graphical Formatter), обеспечивающий выше перечисленные ДОПОЛНИТЕЛЬНЫЕ возможности, был разработан сначала для обработки исходных текстов на Pascal / Delphi, а теперь может обрабатывать также исходные тексты C / C# / C++. Наглядно видя реализованную в исходном тексте программы РЕАЛЬНУЮ структуру, программист легко может определить требуемые коррекции, чтобы она стала адекватна ЖЕЛАЕМОЙ структуре. ВАМ самим решать, насколько это облегчит разработку собственной и адаптацию чужой программной продукции, повысит ее надежность.
___ Вполне возможно, что применение пакета в УЧЕБНОМ процессе и при оформлении ИЛЛЮСТРАЦИОННЫХ примеров в учебниках также даст положительный эффект, поскольку более наглядная и качественная визуализация структуры программ облегчит усвоение учебного материала.
___ Для всех *.PAS / *.C / *.CC / *.CS / *.CPP файлов создаются их *.RTF эквиваленты (просматривать только через WordPad : Open With - WordPad; в WordPad, для отключения режима переноса длинных строк, в режиме View / Options ... / Rich Text / установить опцию No Wrap), в которых новая структура программы (сформированная в результате нейтрализации неточностей) а также выявленные структурные ошибки визуализируются с помощью отступов, цвета и жирности. При желании можно прямо в *.RTF файлах произвести отладку текста, сохранить их ‘File: Save as’, указав режим ‘Save as type: Text document’ и приписав в ‘File name’ после имени файла расширение ‘.PAS’ / ‘.C’ / ‘.CC’ / ‘.CS’ / ‘.CPP’. В этом случае исправленный текст заменит старый *.PAS / *.C / *.CC / *.CS / *.CPP файл, и можно продолжать отладку.
___ Подбирая в меню желаемые значения параметров, можно легко настроить работу программы на индивидуально желаемый профиль функционирования.
___ FreeWare, пакет распространяется бесплатно. Система Windows. Новые версии PGF, с учетом Ваших замечаний, будут регулярно выставляться (если что-то сбоит, просто деинсталлируйте старую, после чего скопируйте и установите новую версию и ее обновление).

___ Лирическое отступление, которое читатель может пропустить, как не имеющее непосредственного отношения к пакету. Последнее время мне часто приходят на ум вопросы, на которые я не знаю однозначных ответов. Кто с большей пользой прожил жизнь: а) сапожник, у которого не сложилась личная жизнь, но который придумал и оставил людям шнурки на обуви; б) или крестьянин, который благодаря большому трудолюбию и ценой огромных усилий купил участок земли, построил ферму, засеял поля, взрастил сад, создал дружную семью, воспитал прекрасных детей? Кто более умиротворён: а) одинокий отшельник, стоящий на коленях в своей пустынной пещерке, в изношенной одежде, продуваемый холодным ветром, и самозабвенно возносящий молитвы своему богу; б) или отважный купец, в дальних странствиях наживший большое состояние, и теперь после долгой отлучки сидящий дома на свадьбе, которую он пышно справляет для своей любимой дочки? Кто считает себя более удачливым: а) бизнесмен, за короткое время удвоивший своё состояние; б) или бездомный бродяга, нашедший почти целую выброшенную куртку с пригоршней мелочи в кармане? Кто более счастлив: а) программист, закончивший очередную версию своего многолетнего проекта; б) или наркоман, принявший после большой задержки очередную порцию лекарства? Кто лучший семьянин: а) Сократ, все силы отдающий физическим упражнениям и беседам с учениками в постоянных поисках путей достижения истины и совершенствования человека, но мало что приносящий домой на пропитание своей сварливой Ксантиппе и трём сыновьям; б) или "человек со шрамом", по собственному желанию оставивший журналистскую деятельность, и тайно занимающийся нищенствованим, чтобы лучше потдержать респектабельное существование не о чём не подозревающей семьи? Кто лучше воспитатель: а) Отец Горио, живущий в нищете, и тайно распродающий оставшееся семейное столовое серебро, чтобы очередной раз помочь своим, живущим в роскоши избалованным и эгоистичным дочкам; б) или Гобсек, помогший своему помощнику стряпчему Дервилю начать самостоятельную деятельность, и давший ему на это денежную ссуду, но под немалый процент - чтобы, после покрытия долга, Дервиль не чувствовал себя кому-либо чем-либо обязанным? Был ли прав великий Руставели, призывая: « Лучше смерть, но смерть со славой, чем бесславных дней позор» ? Этот список Вы и сами можете свободно продолжить. Я понимаю, что не оригинален. Ещё Сократ, после завершения процесса графэ суда 501 гелиастов (суд присяжных, в которые выбирали по жребию из полноправных афинских граждан), на котором Сократ был признан виновным в государственном преступлении (за - 281, против - 220) и приговорён к смерти (за -361, против - 140), обратился к окружающим со словами: "Меня, присужденного вами, постигнет смерть: вас же, присудивших меня, постигнет зло и позор, к которым вас приговаривает истина. И я останусь при своем наказании, а вы - при своём. Все это так и должно было быть, и все к лучшему. Поэтому давайте разойдемся: я — чтобы умереть, вы — чтобы жить, а что из этого лучше, нам неизвестно". Однако попробую вернуться к конкретике. О себе я могу сказать, что не растратил имущества, оставленного мне моими предками, но и не смог прибавить к нему что-либо стоящего. У меня выросли прекрасные дети, от общения с которыми я получаю большую радость и которым я пророчу большое будущее. Однако своим зарождением они обязаны не моему интеллекту, а вполне определённому органу моего организма. Мне же хочется оставить интеллектуальный след. В частности, я попробовал проанализировать проблемы, возникавшие у меня в процессе отладки программ, сформулировал некоторые способы облегчения их решения, не поленился разработать пакет на практике реализирующий эти способы (сначала для более формализованных Pascal / Delphi, а теперь и для C / C# / C++), и теперь отдаю PGF Вам для пользования. Если со временем хоть одно из моих предложений получит широкое применение и будет реализовано в других системах, я буду полностью удовлетворён и смогу ходить задрав нос. В любом случае, я знаю, что я попробовал. Теперь могу со спокойной совестью заняться решением своих реальных жизненных проблем, а также не жалея времени предаваться любимому занятию - громить противников в он-лайн нарды (backgammon).

___ Желаю всего наилучшего.
___ Трошин Василий. Nik: Vasil54, Сайт: GRAFOR.MOY.SU
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 06:57.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter