Форум русскоязычного сообщества Ubuntu


Автор Тема: Вижу что делаю, или одним словом "визуализация"  (Прочитано 1456 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн roog

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
Привет,сообщество. Хотел у вас спросить про "Си", точнее про визуальное составление  программы в Си.

Существует ли возможность как либо визуализировать программу (точнее макет будущей программы)?
 что бы в каждом блоке можно было бы писать код и тем самым способом составлять свою программу.
Мне не нужно автоматическое создание кода, просто всё не умещается в голове.

 я знаю вы наверное сразу же меня отправите учить UML, но там всё как то сложно, может есть что попроще?

что то подобное блок-схеме
(Нажмите, чтобы показать/скрыть)

Оффлайн maximum2000

  • Активист
  • *
  • Сообщений: 403
    • Просмотр профиля
DoxyGen?

Doxygen генерирует документацию на основе набора исходных текстов и также может быть настроен для извлечения структуры программы из недокументированных исходных кодов. Возможно составление графов зависимостей программных объектов, диаграмм классов и исходных кодов с гиперссылками.

подробнее:
http://ru.wikipedia.org/wiki/Doxygen


Оффлайн roog

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
да, не плохо, возьму обязательно на вооружение, но код должен быть заранее подготовлен, а я в ступоре с разработкой, мне необходимо дальше планировать программу, но вот её объём в голове уже не укладывается, т.е. продолжать, т.е. блоки составил и заполняешь их кодом.

Оффлайн VestniK

  • Активист
  • *
  • Сообщений: 594
    • Просмотр профиля
Re: Вижу что делаю, или одним словом "визуализ
« Ответ #3 : 05 Августа 2010, 02:25:39 »
Код должен быть подготовлен если ты документацию по проекту хочешь генерить, а вот если хочешь волучить визуальное представление структуры кода, то в виде UML диаграм он и по неподготовленному коду тебе его построит. А когда программа не умещается в голове это первый намёк на низкую модульность кода. Тут нужно улучшать структуру кода а не диаграмы рисовать.

Пользователь решил продолжить мысль 05 Августа 2010, 02:34:21:
Чорт, кажется я тебя не понял. У тебя вообще чтоли кода пока нет, но ты хочешь всё сначала спроектроватьи учесть, а потом писать?

Это не самая лучшая идея. При реализации всегда вылазит столько проблем про которые при планированни не подумал, что от изначального плана обычно камня на камне не остаётся. Мне в этом плане XP больше нравится с подходом "малые изменения"+"непрерывный рефакторинг". Если пишишь юнит тесты то результат получается стабильней и надёжней нежели при первичном планировании.
« Последнее редактирование: 05 Августа 2010, 02:34:21 от VestniK »

Оффлайн mkarasik

  • Участник
  • *
  • Сообщений: 163
    • Просмотр профиля
Re: Вижу что делаю, или одним словом "визуализ
« Ответ #4 : 05 Августа 2010, 07:27:47 »
Вообще то планирование, при котором
При реализации всегда вылазит столько проблем про которые при планированни не подумал, что от изначального плана обычно камня на камне не остаётся.
называется каким нибудь другим словом, а никак не планированием.

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Вижу что делаю, или одним словом "визуализ
« Ответ #5 : 05 Августа 2010, 08:33:59 »
ТС.  Вашу проблему на разложить на ряд более менее функционально законченных глобальных модулей.
Для каждого модуля операцию повторять до разумных пределов.
Каждый модуль надо как-то разобрать по интерфейсным данным и методам.
И вперед.
Это проектирование сверху вниз или анализ системы.

Все это может очень помочь, если будут распределенные системы.
Иначе все запутаете (как кот клубок).
ЗЫ. Ничего крупного не делайте без более-менее ясного представления. Иначе будете переделывать-переделывать-переделывать. Это в лучшем случае.
В худшем. Все больше будете запутывать.
« Последнее редактирование: 05 Августа 2010, 08:39:20 от alexander.pronin »

Оффлайн maximum2000

  • Активист
  • *
  • Сообщений: 403
    • Просмотр профиля
Re: Вижу что делаю, или одним словом "визуализ
« Ответ #6 : 05 Августа 2010, 09:06:08 »
doxygen + uml

и переход на ООП, т.е на С++

Оффлайн roog

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
Здрасте ещё раз.

>VestniK
>Чорт, кажется я тебя не понял. У тебя вообще чтоли кода пока нет....

Пишу программу года 2-2.5, она уже достигла прибл. 6200 строк, вроде не так уж и много для Си.

>maximum2000
>переход на ООП, т.е на С++

На С++ жилания перебираться никакого, на паскаль тоже не стоит, но за совет спасибо, имеет место на "подумать"

к програмке отношусь как своему ребенку, постоянно что либо поправляю, чиню наращиваю, "НО годы всёже берут своё", начал одно забыл за другое, решил пересмотреть часть кода, "мать моя - женщина" а там полно функций абсолютно индентичных, но написанных разным подчерком, часть кода вообще компилится "за зря" и не используется, решил на листочке набросать мнемо схему, мягко сказать - заипался рисовать, Пикасо ржёт с меня на небесах.

Уверен многие программисты, кто делает программы не только ради $наживы$ сталкивались с подобной ситуацией, когда хотят превзойти себя(-1год назад)

ребята не жоптесь - поделитесь советами, наверняка есть быстрые способы рисования квадратиков.

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Берется в одну руку карандаш, а в другую бумага... Рисуй обдумывай.
Есть два подхода к проектированию: сверху и снизу.

Сверху. берётся лев^W "главная цель" и разбивается на составляющие части, те в свою очередь еще на кусочки и т.д. Когда кусочки начнут целиком умещаться в ОЗУ^W голове начинаем их писать на выбранном языке

Снизу. это значит сразу настрогать маленьких кирпичиков на все случаи жизни и из них строить что-то большое и светлое. =) по мере надобности можно скреативить еще кирпичей

Блин. Вас что в универе ничему не учат чтоли? этож одна из первых дисциплин.

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Вижу что делаю, или одним словом "визуализ
« Ответ #9 : 06 Августа 2010, 09:08:06 »
На С++ жилания перебираться никакого
Напрасно.
Это прекрасный способ решить все Ваши проблемы.
С++ исторически и сложился для этого.
Рекомендую следующую последовательность действий переработки проекта:
- создавайте структуры данных в виде классов
- убирайте инициализацию в классы
- к ним подтягивайте функции (методы)
- выделяя интерфейсные методы, внутренние делаем скрытыми
- глобализируем (наследуем) и убираем дубляжи, которые станут очевидными
и т.д.
ЗЫ.
Года 3-4 назад мне дали задание начать сопровождение и развитие проекта, сшитого такими белыми нитками.
Было все запутано до крайности.
Я его перевел на С++, код уменьшился в 2, 5 раза и все стало прозрачно. По пути выловил кучу всяких идейных ошибок.
Процесс занял 2 месяца с добавлением дополнительной функциональности, но овчинка стоила выделки.
Я думаю, если бы я тогда это не сделал, то мучался бесконечно, т.к. минимальные изменения вели бы к стоянию на голове.
Рекомендую.
« Последнее редактирование: 06 Августа 2010, 09:15:12 от alexander.pronin »

Оффлайн mkarasik

  • Участник
  • *
  • Сообщений: 163
    • Просмотр профиля

Пишу программу года 2-2.5, она уже достигла прибл. 6200 строк, вроде не так уж и много для Си.


Работает не трогай :)

 

Страница сгенерирована за 0.041 секунд. Запросов: 24.