LINUX.ORG.RU

Одной из задач, ставившихся перед разработчиками, было создание единого универсального языка, который должен был заменить специализированные языки ПРОЛ2 (для разработки бортовых комплексных программ Бурана), ДИПОЛЬ (для создания наземных программ Бурана) и ЛАКС (для моделирования).[1].

омг

stevejobs ★★★★☆
()

Убиться и не жить! У меня аж мидори завис, отказываясь открывать ужас по ссылке, и согласился только с третьего раза.

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

Разработчики языка полагают, что правила языка ДРАКОН по созданию диаграмм оптимизированы для восприятия алгоритмов человеком. Таким образом, язык предлагается в качестве инструмента усиления интеллекта.

АААААА!!!

Наглядность

АААААА!!!

geekless ★★
()
Ответ на: комментарий от geekless

> Мечта всех учителей информатики и страшный сон студентов: блок-схемы теперь можно не только чертить в тетрадке, на них можно заставлять писать программы!

АААААА!!!

АААААА!!!


АААААА!!!


АААААА!!!



Страшно представить, что с тобой будет, когда ты откроешь для себя UML.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

> То-то личико у тебя на аватарке унылое :D

Это я Уэйлса пародирую.

drull ★☆☆☆
()

>Дружелюбный Русский Алгоритмический язык, Который Обеспечивает Наглядность
Сразу вспомнил «Девушку у обрыва» Шефнера.

massimus ★★★
()
Ответ на: комментарий от fero

> Вы разные веще сравниваете помоему.

Я понятия не имею зачем нужны «наглядные» языки на блок-схемах. Для обучения? Нет уж, лучше сразу учить что-то более-менее применяемое в жизни, чем рисовать картинки из ромбиков и прямоугольничков, а в следующем семестре все равно переучиваться.

drull ★☆☆☆
()

ДРАКОН — крайне интересная и любопытная вещица, нагибает традиционные блоксхемы всеми возможными способами. У меня была где-то книжечка по ДРАКОНу. Сравнивать с традиционными языками программирования не имел возможности, но для визуального представления алгоритмов он хорош. Но вот какой-либо рабочей реализации даже под DOS я не нашёл.

PolarFox ★★★★★
()
Ответ на: комментарий от drull

Блоксхемы отличная вещь. Еслиб разработка программ начиналась с них, былоб меньше багов. В моем конспекте так записано во всяком случае

fero ★★★★
() автор топика
Ответ на: комментарий от fero

> В моем конспекте так записано во всяком случае

Это верно только в том случае, если блоксхемы рисуются безошибочно.

PolarFox ★★★★★
()
Ответ на: комментарий от geekless

> UML я для себя давно открыл и закрыл.

Архитекторы во всем мире, единожды открыв для себя UML, закрывать его совсем не торопятся. А ты оказался на обочине отрасли, и единственное твоё утешение - это ныть по форумам про злых учителей информатики и негодные блок-схемы. И про страшные сны студентов-троечников, которых на пинках тащили все 5 курсов, и которым по-хорошему просто не надо было давать диплом.

Manhunt ★★★★★
()
Ответ на: комментарий от fero

> В моем конспекте так записано во всяком случае

А в моем конспекте язык «паскаль» именовался «даскал», потому что препод перепутал «P» и «D», а про мягкий знак в конце он не знал, и требовал называть его именно так.

drull ★☆☆☆
()
Ответ на: комментарий от drull

>Я понятия не имею зачем нужны «наглядные» языки на блок-схемах. Для обучения? Нет уж, лучше сразу учить что-то более-менее применяемое в жизни, чем рисовать картинки из ромбиков и прямоугольничков, а в следующем семестре все равно переучиваться.

А теперь представьте, что вам надо написать программу в масштабах 10 000 000 ваших «Hello World» с уникальными вариациями. Я представляю как вы начав и написав 100к строк, и, случайно решив что-то поменять, вернетесь к нужному месту, исправите, а потом продолжите кодить в своем стиле без блок-схем. Больше чем уверен, вы половину из задуманного не вспомните или поймете уже по-другому (по текущей обстановке), т.к. предыдущие 100к строк вы писали месяц назад, а то и по-более.

gh0stwizard ★★★★★
()
Ответ на: комментарий от fero

> В моем конспекте так записано во всяком случае

Мотоцикл не мой, я просто разместил объяву)

Блок схемы - говно. Лучше простым текстом сформулировать для себя, что программа должна делать. Именно что, а не как.

different_thing
()
Ответ на: комментарий от fero

> Блоксхемы отличная вещь. Еслиб разработка программ начиналась с них, былоб меньше багов. В моем конспекте так записано во всяком случае

если бы разработка начиналась с _тестов_, то всё было бы ОК.

представляю как кипят мозги у преподавателя информатики, пытающегося придумать блоксхему теста, сопоставить ей блоксхему реализации, и после этого делать какие-то рефакторинги, теряя остатки человечности и ООП =)

stevejobs ★★★★☆
()

С Новым Годом ребята!

fero ★★★★
() автор топика
Ответ на: комментарий от Manhunt

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

судя по тому, что им никто не пользуется - правильно делают, не закрывают, а сразу закапывают ;)

stevejobs ★★★★☆
()
Ответ на: комментарий от drull

> Ты себе представляешь подробную блок-схему на 10КК строк?

Страшно представить 10КК, написанные без единой диаграммы.

Manhunt ★★★★★
()
Ответ на: комментарий от gh0stwizard

С этими блок-схемами упраешься в реализацию какого-либо участка программы и плавненько забудешь суть: «нафига мне он нужен»? У меня так, по крайней мере)

different_thing
()
Ответ на: комментарий от fero

> Блоксхемы отличная вещь

Блоксхемы в программировании — всего лишь ужасная вещь в учебном процессе студентов. Более они ни для чего при разработке ПО не нужны.
Если и потребуется составить где-либо диаграмму состояний или иную схему, то это вовсе не программирование на БС.

Блок-схемы — более низкоуровневый язык, чем большинство применямых ЯВУ. Попробуйте составить БС к программе на Ruby — звизданётесь.

Блок-схемы — не наглядный язык. Пялиться в огромную простынь из геометрических фигур — не очень продуктивное занятие.

Блок-схемы — не удобный для записи и правки язык. Пояснения не требуются: каждый может сам можете представить, каково это. :)

geekless ★★
()
Ответ на: комментарий от drull

>Ты себе представляешь подробную блок-схему на 10КК строк?

Представляю, т.к. это иерархия, где есть звенья, деревья. Да, в человеческом мозгу держать 100 if/else уже проблематично, а тем более, так сказать в реальном времени, манипулировать ими. Поэтому и придумали блок-схемы, UML и т.п.

gh0stwizard ★★★★★
()
Ответ на: комментарий от drull

> А в моем конспекте язык «паскаль» именовался «даскал», потому что препод перепутал «P» и «D», а про мягкий знак в конце он не знал, и требовал называть его именно так.

Даскал = дас ист кал. А вы все так нифига и не поняли...

Relan ★★★★★
()
Ответ на: комментарий от stevejobs

>> UML

судя по тому, что им никто не пользуется


Ололо :D Расскажи, какую нотацию используют известные тебе архитекторы для описания архитектуры?

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

>Ололо :D Расскажи, какую нотацию используют известные тебе архитекторы для описания архитектуры?

Я думаю, он просто не встречал еще настоящих архитекторов :)

gh0stwizard ★★★★★
()
Ответ на: комментарий от geekless

> составить БС к программе на Ruby

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

Terrens
()
Ответ на: комментарий от gh0stwizard

Это и не нужно. Достаточно лишь сформулировать то, что нужно от программы/функции. Блок схема - это разработка от малого к большому, изнутри снаружу. Разве это хорошо?

different_thing
()
Ответ на: комментарий от geekless

> Блок-схемы — более низкоуровневый язык, чем большинство применямых ЯВУ. Попробуйте составить БС к программе на Ruby — звизданётесь.

Ruby - более низкоуровневый язык, чем большинство применяемых ассемблеров. Попробуйте сделать листинг Ruby к выхлопу gcc -S — звизданётесь.

Блок-схемы — не наглядный язык. Пялиться в огромную простынь из геометрических фигур — не очень продуктивное занятие.


Бытует мнение, что на типичной диаграмме должно быть не больше 5-10 квадратиков. Никаких «огромных простыней».

Блок-схемы — не удобный для записи и правки язык. Пояснения не требуются: каждый может сам можете представить, каково это. :)


Открой для себя хотя бы Dia.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

для описания архитектуры

для набросков архитектуры. Лучше покажи фотографию человека, который «по науке» вначале разрабатывает полные схемы всего, молится, постится и читает гид по RUP по ночам. Золотой человек, такой портрет на стене иметь надо.

stevejobs ★★★★☆
()
Ответ на: комментарий от different_thing

> Достаточно лишь сформулировать то, что нужно от программы/функции.

Тебе-таки не нравится рисовать диаграммки? =(
Диаграммки выглядят гораздо кошернее, чем всякие тексты :)

Terrens
()

Сегодня официальный вечер баянов на лоре?

ugoday ★★★★★
()
Ответ на: комментарий от Terrens

> Диаграммки выглядят гораздо кошернее, чем всякие тексты :)

Да, они красивенькие

different_thing
()
Ответ на: комментарий от uju

Да ладно! Вон я недавно видел крутую программу для метеостанции на васике. Дети сделали

different_thing
()
Ответ на: комментарий от gh0stwizard

> Да, в человеческом мозгу держать 100 if/else уже проблематично, а тем более, так сказать в реальном времени, манипулировать ими

А ничо, что БС более низкоуровнева, чем любой импреративный алголойд и твои сотня if else превратится там в несколько сотен элементов?

100 if/else

Покажи мне, где ты видел человекописанный код, в котором требуется одновременно держать в уме 100 if/else , чтобы понять его. Трепло.

Поэтому и придумали блок-схемы

Только ты забыл упомнять, в каком году. И какие тогда были машины, и как они программировались.

Так и представляю шелл с блоксхемами и %USERNAME%-а, старательно чертящего диаграммы, чтобы подсчитать, сколько какой mime-тип отъел на компе.

Вытащил вот из хистори:

$ pacman -Ql | ruby -e 'r=Hash.new(0); p=""; STDIN.each { |s| p1,s=s.split(" "); if File.file?(s) && !File.symlink?(s) then t=%x[file -b --mime-type #{s}]; r[t] += File.size(s); STDERR.puts p1 if p != p1; p = p1 ; end}; r.each {|t, sz| puts «#{sz} #{t}»}' | sort -n > mimesizes

А переведите-ка мне это на БС. :-D

geekless ★★
()
Ответ на: комментарий от stevejobs

> гид по RUP

Эко ты с базара соскочил :D Рассказы про RUP можешь оставить для К.О. Ты нотации называй популярные для архитектур.

Manhunt ★★★★★
()
Ответ на: комментарий от Terrens

> Не БС составляется к программе, а программа составляется по БС.

Ты бы еще посоветовал составлять прототип программы на асме, а потом переписывать его на целевой язык. Было бы столь же разумно.

geekless ★★
()
Ответ на: комментарий от Manhunt

> Открой для себя хотя бы Dia.

Открой для себя emacs.

Ruby - более низкоуровневый язык, чем большинство применяемых ассемблеров. Попробуйте сделать листинг Ruby к выхлопу gcc -S — звизданётесь.

Да ты же лопнешь!

geekless ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.