Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.10.08;
Скачать: [xml.tar.bz2];

Вниз

Рисуете ли вы блок-схемы при написании программ?   Найти похожие ветки 

 
DillerXX ©   (2006-09-11 22:24) [0]

жбас


 
Чапаев ©   (2006-09-11 22:26) [1]

что мы только не рисуем при их написании...


 
Nic ©   (2006-09-11 22:29) [2]

Обычно, при начальном этапе разработки/проектирования рисую структуру проекта, а потом по этой конструкции строится проект.


 
Орион ©   (2006-09-11 22:29) [3]

А я всегда думал, что блок-схемы рисуют при написании алгоритмов, а не программ.


 
Virgo_Style ©   (2006-09-11 22:30) [4]

Если она должна быть, а я ее не вижу - то рисую


 
default ©   (2006-09-11 22:30) [5]

где-то мы их всегда рисуем...в голове как минимум:)


 
DillerXX ©   (2006-09-11 22:31) [6]

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


 
default ©   (2006-09-11 22:32) [7]

DillerXX ©   (11.09.06 22:31) [6]
я нет:) вот ещё такой мутью заниматься:)


 
NailMan ©   (2006-09-11 22:35) [8]

зачем че-то рисовать вручную если для этого есть автошема!?


 
Орион ©   (2006-09-11 22:36) [9]

> [6] DillerXX ©   (11.09.06 22:31)

Вот правильно выше говорили. "Рисую" в голове.
Насколько знаю сейчас блок-схемы используют для обучения студентов основам алгоритмизации.


 
Nic ©   (2006-09-11 22:37) [10]

При написании алгоритма использую:
1) Разбиение задачи на небольшие подзадачи
2) аккуратное форматирование кода
3) ООП

Поэтому блок-схемы не использую - в коде структура алгоритма и так проглядывается. А вот структуру проекта в целом полезно видеть.


 
Petr V. Abramov ©   (2006-09-11 22:37) [11]

вообще говоря, блок-схема - такой же, ничем формально не отличающийся от других способ описания алгоритма, как например, java :) так что смысла - никакого. За исключением демонстрации в виде картинки для неспециалистов. Кстати, советское требование рисования плакатов к защите - ИМХО, подготовка к этой стороне жизни.


 
DillerXX ©   (2006-09-11 22:46) [12]

Я просто спросил, из-за того что как раз для неспециалистов это ещё более не понятно имхо. Я то с трудом вникаю в разные объяснения для неспециалистов (лекции по информатике и программированию). А эти вообще сидят синие :) Вот дурость ведь, лучше бы учили в голове проектировать, а то я уже проверил - всё это рисование блок-схем может и понятно, а как за компьютер сядут (студни), так глаза на лоб чё писать надо. Ни то ни сё, ни понятия алгоритмизации (хотя как преподавать конечно, но ни разу нормально не видел), ни знания языка... вот.


 
Nic ©   (2006-09-11 22:48) [13]

У нас лекции по Turbo Pascal начались... Не представляю более неэффективный метод изучения ЯВУ, чем лекции...


 
Vlad ©   (2006-09-11 22:49) [14]

Рисую в обязательном порядке при составлении ТЗ (оно, к несчастью, ложится на мои плечи)


 
Petr V. Abramov ©   (2006-09-11 22:57) [15]

> а как за компьютер сядут (студни), так глаза на лоб чё писать надо.
 с другой стороны, как сядут отЛАЖивать, может и быть подспорьем. Я наблюдал, как это бывает эффективно. И заработал свой первый гонорар - пиво - на тех, кому было не дано :))))


 
Ы   (2006-09-11 23:26) [16]

Удалено модератором


 
Petr V. Abramov ©   (2006-09-11 23:53) [17]

Удалено модератором


 
DrPass ©   (2006-09-11 23:55) [18]


>  просто спросил, из-за того что как раз для неспециалистов
> это ещё более не понятно имхо

Нет, на самом деле блок-схема может хорошо помочь разобраться в алгоритме именно неспециалисту (если под словом "неспециалист" понимать именно далекого от программирования человека, а не классического студента-бестолочь). Другое дело, что те блок-схемы, которые используют для обучения в ВУЗах, никоим образом не могут быть применены в современном профессиональном программировании. Но, по сути, UML-диаграммы, IDEFx-языки, схемы реляционных БД - все это реинкарнации блок-схем.


 
Real ©   (2006-09-11 23:59) [19]

"Никогда не рисуйте блок-схем при проектировании! Это ведь гораздо проще сделать с готового кода!" (с) Программирование СВН

:)))


 
Чапаев ©   (2006-09-12 00:02) [20]

> Программирование СВН

Это что?


 
DrPass ©   (2006-09-12 00:07) [21]


> Real ©   (11.09.06 23:59) [19]

Причем с тех пор, как родилась Автошема, этот процесс стал полностью автоматическим


 
Real ©   (2006-09-12 00:13) [22]


> Чапаев ©   (12.09.06 00:02) [20]
> > Программирование СВН
>
> Это что?

Программирование "Сверху-Вниз-Наискосок" :))) Была такая старая юмористическая статейка... Щас яндекса спросим... О, вот:
http://www.lightnet.obninsk.ru/Review/Relax/diag_prog_11.shtml


 
Чапаев ©   (2006-09-12 00:14) [23]

> Была такая старая юмористическая статейка

Знаем-с. ;-)


 
Real ©   (2006-09-12 00:15) [24]


> Причем с тех пор, как родилась Автошема, этот процесс стал
> полностью автоматическим

О, да! :)))) Великая автошема! А конвектор формат еще круче! :)))


 
Gero ©   (2006-09-12 00:28) [25]

Нарисуйте блок-схему Windows, пиво поставлю.


 
Юрий Зотов ©   (2006-09-12 00:45) [26]

Иногда рисую укрупненную блок-схему какого-то логически сложного куска, если сложность его алгоритма уже не умещается в голове (укрупненную - это значит, что простые операторы языка квадратиками, конечно же, не разрисовываю).

Но такое бывает очень редко. Потому что обычно головы все же хватает.  Еще потому, что изначально стараюсь спроектировать код так, чтобы таких кусков в нем не было. И еще потому, что код самодокументирован.


 
SkyRanger ©   (2006-09-12 01:07) [27]

Зачастую - сначало пишется программа, потом рожается блок-схема Ж)


 
Юрий Зотов ©   (2006-09-12 01:29) [28]

Одна из задачек на завтра - есть несколько состояний документа, причем не все переходы из одного состояния в другое допустимы. И не все операции с документом являются допустимыми в любом его состоянии.

Так что завтра буду рисовать таблицу переходов - этакий конечный автомат. Заодно, она и в документацию войдет. А в ней будет подпись - чтоб потом не было никаких "а мы не этого хотели".


 
Marser ©   (2006-09-12 01:34) [29]

По отдельным фрагментам кода.


 
Marser ©   (2006-09-12 01:35) [30]

> [28] Юрий Зотов ©   (12.09.06 01:29)
> Одна из задачек на завтра - есть несколько состояний документа,
> причем не все переходы из одного состояния в другое допустимы.
> И не все операции с документом являются допустимыми в любом
> его состоянии.
>
> Так что завтра буду рисовать таблицу переходов - этакий
> конечный автомат.

Мили или Мура?


 
Юрий Зотов ©   (2006-09-12 01:38) [31]

> Marser ©   (12.09.06 01:35) [30]

Какая получится.
:о)


 
Marser ©   (2006-09-12 01:52) [32]

Обыкновенный через case больше на автомат Мура похож, хотя тут уже от особенностей реализации зависит...


 
Суслик ©   (2006-09-12 01:57) [33]

я часто рисую диаграммы последовательностей uml 1.4 или ранее.
диаграммы классов иногда рисую.


 
Ехидна   (2006-09-12 02:13) [34]

Удалено модератором


 
Marser ©   (2006-09-12 02:19) [35]

Удалено модератором


 
atruhin ©   (2006-09-12 06:22) [36]

Использую блок схемы, но не для описания реализации, а для описания бизнес логики сложных участков. Т.е. примерно о чем [28] Юрий Зотов ©   (12.09.06 01:29) говорил.


 
Курдль ©   (2006-09-12 09:57) [37]

Я рисую блок-схемы алгоритмов, когда программирую, например, микроконтроллеры - там, где дорога каждая мкс.

А для построения программ это уже вряд ли нужно. Разве что программировать ядро, или высокоскоростную графику...
Для остальных программ существуют диаграммы классов, диаграммы взаимодействия, диаграммы кооперации и др.


 
Тульский ©   (2006-09-12 10:02) [38]


> NailMan ©   (11.09.06 22:35) [8]
> зачем че-то рисовать вручную если для этого есть автошема!
> ?

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


 
Чапаев ©   (2006-09-12 10:04) [39]

> [28] Юрий Зотов ©   (12.09.06 01:29)

Классический направленый граф. При чём тут блок-схема? :-)


 
Юрий Зотов ©   (2006-09-12 10:11) [40]

> Чапаев ©   (12.09.06 10:04) [39]

И даже просто Ёкселевая таблица.
:о)

Которую тоже является описанием алгоритма. То есть, той самой укрупненной блок-схемой.

А расписывать квадратиками-ромбиками простые циклы или if-then-else - это оставим первокурсникам.


 
Kolan ©   (2006-09-12 10:12) [41]


> Рисуете ли вы блок-схемы при написании программ?
>

Да в форме диаграмм деятельность.
Структуру программы?
Да, на диаграмме классов.


 
Чапаев ©   (2006-09-12 10:15) [42]

> И даже просто Ёкселевая таблица.

Дык. Тоже один из видов представления графов. Если я правильно помню, если таблица одна, то это может быть только автомат Мура.


 
pasha_golub ©   (2006-09-12 10:20) [43]


> Тульский ©   (12.09.06 10:02) [38]
>
>
> Относительно автошемы. В принципе, идея такой программы
> весьма неплохая. Например, она может пригодиться для анализа
> чужого кода. Вот если бы её реализация была без глюков,
> и поддерживала бы диаграммы ООП...
>


Идея неплоха, а реализация нетривиальна. Возмите, AQTime4, там есть разрисовка. Но. Она либо черезчур детальна, ну прям очень. :) Либо наоборот. Так что окромя рук и головы не думаю, что найдется более удобный инструмент.


 
Bless ©   (2006-09-12 10:27) [44]

Была у меня как-то задача вывода отчета в ексель. Решал я ее в лоб, т.е. без предварительных обдумываний.
А поскольку отчет относительно сложный (несколько уровней группировки), то
код выглядел совершенно нечитабельным даже для меня.
И когда понадобилось добавить еще один уровень группировки, я после нескольких попыток сделать это, погрязнув в отладке и ужаснувшись размеров процедуры, решил нарисовать этот отчет на бумаге в виде графа, в надежде что это поможет.
А нарисовав, стало отчетливо видно, что все нарисованное легко перенести в код, где узлы графа
на бумаге стали ветвями case-а (а также стыдно, что такая простая в итоге задача оказалась для меня такой проблемной). В результате основное тело алгоритма вывода стало занимать меньше одного экрана. Так я через практику приобщился к теории автоматов :).
Мораль по сабжу: рисовать на бумаге иногда полезно.
Мораль не по сабжу: тратить время, проведенное в институте, на учебу еще полезнее.


 
Чапаев ©   (2006-09-12 10:47) [45]

> Мораль по сабжу: рисовать на бумаге иногда полезно.

Ключевое слово: иногда.


 
Курдль ©   (2006-09-12 11:27) [46]


> Чапаев ©   (12.09.06 10:47) [45]
> > Мораль по сабжу: рисовать на бумаге иногда полезно.
>
> Ключевое слово: иногда.


А что, можете себе представить проект чуть больше чем "запуздырить иконку в трей", в котором ничего не придется рисовать? Если даже мало-мальская работа с СУБД - вынь, да полож концептуальную и физическую модель. Если в программе не один модуль, а тем более - если трехзвенка - рисуй зоны видимости и т.п.
А если уж к архитектуре серьезно подходить - тут уж обрисуешься...


 
Чапаев ©   (2006-09-12 11:33) [47]

> А что, можете себе представить проект чуть больше чем "запуздырить
> иконку в трей", в котором ничего не придется рисовать?

Не могу представить проект чуть больше чем "запуздырить иконку в трей", который будет ВЕСЬ разрисован в блок-схему.


 
Курдль ©   (2006-09-12 11:40) [48]

Между ВЕСЬ разрисован в блок-схему. и рисовать на бумаге иногда полезно. просто прорва "вариантов разрисованности" :)


 
SkyRanger ©   (2006-09-13 00:59) [49]

> [47] Чапаев ©   (12.09.06 11:33)

Тут вопрос не стоит что все IF/Case должны быть учтены - тут вопрос о том, что логические блоки и взаимосвязи между ними должны быть облаченны в форму чертежа Ж) Эк загнул... Ж)


 
Petr V. Abramov ©   (2006-09-13 01:17) [50]

> DrPass ©   (11.09.06 23:55) [18]
> Но, по сути, UML-диаграммы, IDEFx-языки, схемы реляционных БД - все это реинкарнации блок-схем.
> Юрий Зотов ©   (12.09.06 01:29) [28]
 надеюсь, где-то упомянуто, что идея не Ваша, а откуда Вы ее взяли, она тоже (с)тыреная, но очень творчески переработанная?
 Может быть, в таком случае она должна быть OpenSource, примените Ваш авторитет под эту идею, а Юр?


 
Petr V. Abramov ©   (2006-09-13 01:29) [51]

> Petr V. Abramov ©   (13.09.06 01:17) [50]
[50]+
 чем за малые деньги чужие идеи за свои выдавать? (может, я и  ошибаюсь, конечно...)


 
Юрий Зотов ©   (2006-09-13 18:33) [52]

> Petr V. Abramov ©   (13.09.06 01:17) [50]

Не понял, о какой идее идет речь. И вообще при чем тут какие-то идеи, хоть стыренные, хоть не стыренные - тоже не понял.

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


 
Furyz ©   (2006-09-13 18:34) [53]

По сабжу : Лично я не рисую и не буду , так как это лишние расходы на бумагу  крандаш , а в некоторых  прогах бывает много ветвлений


 
Юрий Зотов ©   (2006-09-13 18:43) [54]

> Petr V. Abramov ©   (13.09.06 01:29) [51]

> чем за малые деньги чужие идеи за свои выдавать?

Это как понимать - как публичное обвинение в плагиате?

Тогда или обоснуй, или извинись.


 
isasa ©   (2006-09-13 19:05) [55]

Я, в свое время, для нормоконтроля, так их нарисовался, что от одного вида ромба - тошнит. :)


 
Furyz ©   (2006-09-13 19:24) [56]

> Я, в свое время, для нормоконтроля, так их нарисовался,
> что от одного вида ромба - тошнит. :)

я себя до такого не доводил и другим не рекомендую


 
DillerXX ©   (2006-09-13 19:53) [57]

Я кстати тоже рисую, естественно не if-then, а основные узлы кода, какой с чем взаимодействует и когда, иногда удаётся предусмотреть трудности, которых ещё не видел при проектировке в голове. И обычно рисую всё же когда не у компа, чтобы когда начал писать время бы не тратил на обдумывание.


 
brother ©   (2006-09-13 21:18) [58]

Не рисую в мелких проектах, а в крупых правда подспорье, но без ремарков не обходился ни разу! :) ИМХО...


 
Petr V. Abramov ©   (2006-09-13 21:51) [59]

Юрий Зотов ©   (13.09.06 18:43) [54]
> Это как понимать - как публичное обвинение в плагиате?
 плагиат - понятие юридическое, и обосновать его нужно с суде, а уважаемое инет-трепещуееся соообщество таковым не является. Если вопрос принципиалный,то если тебе охота, давай в суде решать. Если ты уверен, что ты прав. Мне по деньгам - похрен.
 Если ты считаешь, что я неправ, подй в суд. То, что я когда-то был связан с судебной системой - роли не играет, чтоб обратиься с ЭТИМ вопросом, у меня денег не хватит, а у тебя - тем более.
Скажи, что Петр Владимирович Абрамов, 1974 г.р оскорбил "меня, Юрия Сергеевича Зотова, 1954 г.р: тем-то и тем-то." Ну сфыормулируй - чем?"
 Тем, что в "Парусе" че-то такое было? :))))
.


 
Юрий Зотов ©   (2006-09-13 21:56) [60]

> Petr V. Abramov ©   (13.09.06 21:51) [59]

Проспись для начала.


 
Petr V. Abramov ©   (2006-09-13 21:58) [61]

> Юрий Зотов ©   (13.09.06 18:43) [54]
 ок, проблем нет, всех благ. гы :)


 
Petr V. Abramov ©   (2006-09-13 22:06) [62]

P.S. блок-схемы рисую очень редко :))))


 
Gero ©   (2006-09-13 23:09) [63]

> [59] Petr V. Abramov ©   (13.09.06 21:51)

Странно, мне почему-то казалось, что ты человек вполне вменяемый.


 
Esu ©   (2006-09-14 00:20) [64]

Да наверное все рисуют в том или ином виде. Но у нас вообщем-то наверное больше не по коду, а по всем остальным проекциям... Когда их достаточно схема самого алгоритма обычно уже становится очевидна. Хотя даже не самого алгоритма, а того что этот будущий алгоритм должен делать :) Дальше уже от инструментов зависит и их особенностей.


 
Юрий Зотов ©   (2006-09-14 14:52) [65]

Петь, я надеюсь, ты уже проснулся?

Тогда я жду либо вразумительных и конкретных объяснений (какие и чьи чужие идеи я выдаю за свои?), либо извинений.

"Уважаемое инет-трепещуееся соообщество" судом, конечно, не является, это ты правильно заметил. Но это не означает, что в нем можно бросаться словами и не отвечать за них.


 
Алхимик ©   (2006-09-14 17:44) [66]

http://www.taurion.ru/files/blok-shema.gif
50 Кб



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2006.10.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.62 MB
Время: 0.048 c
2-1158429959
greengeneral
2006-09-16 22:05
2006.10.08
Перенос переменной из одного Unit в другой


8-1142329007
hgd
2006-03-14 12:36
2006.10.08
Восстановление проекции по двум фотографиям


15-1158176108
Ne-Lud
2006-09-13 23:35
2006.10.08
ACM олимпиады. Какова от них польза?


2-1158106874
Not
2006-09-13 04:21
2006.10.08
Подскажите пример исходника программы работающей с dll ?


2-1158733722
TrainerOfDolpins
2006-09-20 10:28
2006.10.08
Как приложению узнать, где его exe-файл?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский