Ремесло программиста

Объявление

форум на движке phpBB доступен для тестирования
www.strategia.space
www.strategia.space/forum/
по предложению Лиса - канал на Matrix - #remdev:matrix.org

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Ремесло программиста » Валентина » UML, Дракон, наглядность разработки


UML, Дракон, наглядность разработки

Сообщений 1 страница 27 из 27

1

utkin написал(а):

Вместо ДРАКОНА нужно читать про UML.

Ага, чтобы знать, чего избегать. ДРАКОН отличается от UML в лучшую сторону.

Отредактировано atezo-replica (2017-07-13 20:20:11)

2

utkin написал(а):

На самом деле ДРАКОН от незнания. Вместо ДРАКОНА нужно читать про UML.

Они же на плоскости, так? А следовательно, можно нарисовать такую исполняющуюся программу в Excel. Связи м/у ячейками там легко в формулах прописываются, вроде даже стрелочки можно поверх для наглядности нарисовать=)

atezo-replica написал(а):

ДРАКОН отличается от UML в лучшую сторону.

Скажем так, везде есть идеи хорошие, но имеются математические проблемы и частности исполнения жутковаты.
У стандартных блок-схем мат. проблем не было. Но они слишком примитивные и устаревшие. Хотя те же конструкторы вроде hiasm для двоичной логики м.б. хороши.
Но более сложные данные требуют более сложных изображений. Делфи/Excel/Access и разные 2-3d редакторы технически на порядки мощнее.
На Access БД может научится делать школьник с минимальными навыками владения ПК.

3

utkin написал(а):

Чем? Перечислите преимущества?

Ну для меня в первую очередь тем, что он компактнее и с более узкой областью применимости. UML выглядит как свалка всего подряд. Там вообще есть аналогичные блок-схемам диаграммы? ДРАКОН - это считай блок-схемы на стероидах (или просто осовремененная версия). Если тебе дают диаграмму ДРАКОН - то тут всё ясно-понятно, это блок-схема. А если тебе дают диаграмму UML то надо указывать тип диаграммы, и всё становится слишком сложна. Сколько занимает описание UML? Описание ДРАКОНа - маленькая книжечка с примерами.

4

atezo-replica написал(а):

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

Так это и связано с широтой применения. Разные наборы UML вроде как для разных специалистов, основных там несколько штук. Но там же разные обозначения, так что не должны перепутываться.
Дракон вроде даже не умеет описывать строение данных, а UML - может.

5

MihalNik написал(а):

Разные наборы UML вроде как для разных специалистов

Таким образом сравнивать ДРАКОН с UML некорректно. Нужно сравнивать его с каким то там подклассом UML, что сделано не было. Я долго пытался понять, есть ли в UML аналог блок-схем, однако безуспешно.

Отредактировано atezo-replica (2017-07-13 21:09:49)

6

atezo-replica написал(а):

Я долго пытался понять, есть ли в UML аналог блок-схем, одинко безуспешно.

А почему он там должен быть? Блок-схемы лежат на самом низком уровне и плохо подходят для моделирования сложных систем.
В UML оно разнесено по разным диаграммам.
Изготовление сложного ПО для UML глубоко проработано вплоть до того как должны быть распределены роли и общение м/у людьми, а для Дракона - почти что никак.
Т.е. по UML можно создать IT-компанию, а по Дракону - нет. Поэтому у нас только программисты, которые с трудом договариваются м/у собой, а у них большие компании выращиваются как грибы.

7

Там вообще есть аналогичные блок-схемам диаграммы?

Диаграмма активности

Сколько занимает описание UML? Описание ДРАКОНа - маленькая книжечка с примерами.

Большая книжечка с примерами. Я все еще не понял, как Вы в ДРАКОНЕ нарисуете операционную систему?

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

Зачем? Просто есть более мощный и универсальный инструмент. Вот и все.

8

Блок схемы в UML называются диаграммы действий и диграммы деятельности.

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

Отредактировано Павиа (2017-07-13 22:03:05)

9

Павиа написал(а):

Блок схемы в UML называются диаграммы действий и диграммы деятельности.

Приблизительно так, хотя в 100% соответствии не уверен.

Вики:

Наиболее близким и точным аналогом диаграмм деятельности являются математически строгие дракон-схемы визуального алгоритмического языка ДРАКОН. Более отдаленным аналогом диаграмм деятельности являются схемы алгоритмов по ГОСТ 19.701-90.

Не ясно наиболее близким или точным=)

10

Приблизительно так, хотя в 100% соответствии не уверен.

Там и не должно быть 100 процентов, потому что блоки максимально обобщены.

11

Было бы здорово использовать что-то из логики UML.

12

Было бы здорово использовать что-то из логики UML.

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

и позволяет значительно шагнуть вперед именно за счет наглядности и глобальной масштабируемости

Судя по примерам с масштабируемостью там прямо вот беда.

13

MihalNik написал(а):

Не ясно наиболее близким или точным=)

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

14

utkin написал(а):

Большая книжечка с примерами

Что хоть за книжечка? Мож кому интересно будет почитать.

utkin написал(а):

ДРАКОНЕ нарисуете операционную систему?

А как на UML написать ОС?

utkin написал(а):

универсальный инструмент

Тут дело вкуса. Я предпочитаю много узкоспециализированных инструментов, но которые хорошо делают свою работу, вместо одного универсального.

MihalNik написал(а):

строение данных, а UML - может

Мне этого вообще не понять. Есть реляционные диаграммы. Или от графического языка нужно графическое представление списочка полей в записи?

15

atezo-replica написал(а):

А как на UML написать ОС?

Кстати надо попробовать. Вспоминая уроки по UML и практику по ОС. Создание ОС на UML мне кажется простой задачкой, будет гораздо проще.
Только нужно найти современный кодогенератор.

16

flamehowk написал(а):

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

Кто Вам это сказал? Какой любой, если там нет даже описания строения данных? Взять Paint или фотошоп или 3dMAX - чувствуете разницу в возможностях?

flamehowk написал(а):

Можно разобраться и допилить что не хватает.

Нужно разделять желаемое и действительно существующее.

atezo-replica написал(а):

от графического языка нужно

Чтобы говорить, что на нём можно сделать любые программы - как минимум полнота по Тьюрингу и соответствующий интерпретатор.

atezo-replica написал(а):

Я про строение данных зачем цитировал?

И сейчас Дракон с этим справляется? Или программы работают без описания строения данных?

atezo-replica написал(а):

Мне этого вообще не понять.

Мне этого за Вас никак не изучить и не прочитать)

17

А как на UML написать ОС?

Она распадется на множество диаграмм, подавляющее большинство из которых будет независимы друг от друга. А в ДРАКОНЕ декомпозиция проблема (или уже пофиксили?)

Тут дело вкуса. Я предпочитаю много узкоспециализированных инструментов, но которые хорошо делают свою работу, вместо одного универсального.

Да, если это приносит результат,  то это здорово.

Что хоть за книжечка? Мож кому интересно будет почитать.

UML 2.0 вроде как называется. Если хотите быстрей въехать берете лабораторку с какого-нибудь института и пробуете выполнить (но хотя бы введение все равно прочитать надо).

18

utkin написал(а):

Она распадется на множество диаграмм, подавляющее большинство из которых будет независимы друг от друга. А в ДРАКОНЕ декомпозиция проблема (или уже пофиксили?)

В ДРАКОНЕ она распадается на множество диаграмм, большинство из которых будет независимы друг от друга. Ни о каких проблемах декомпозиции мне не известно.

MihalNik написал(а):

И сейчас Дракон с этим справляется?

А при чём тут ДРАКОН вообще? Вопрос: UML - может в строение данных. Что под этим имеется ввиду? Что значат магические слова "описание строения данных"?

Отредактировано atezo-replica (2017-07-13 23:09:24)

19

atezo-replica написал(а):

А при чём тут ДРАКОН вообще? Вопрос: UML - может в строение данных. Что под этим имеется ввиду?

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

atezo-replica написал(а):

Что значат магические слова "описание строения данных"

Что волшебного в этих словах? Какое из них непонятно?

20

В ДРАКОНЕ она распадается на множество диаграмм, большинство из которых будет независимы друг от друга. Ни о каких проблемах декомпозиции мне не известно.

Там декомпозиция совершенно иного уровня.

Что под этим имеется ввиду?

Что UML может предлагать форматы данных, используемых в системах. А программа это как известно не только алгоритм, а данные + алгоритм.

Что значат магические слова "описание строения данных"

Ну смотря как посмотреть например магические руны XML.

21

atezo-replica написал(а):

Может суть вопроса кроется в "сложно связанные"?

В Драконе с этим проблема, о чём уже написал Utkin. О сути проблемы можно почитать на соответствующем форуме.

atezo-replica написал(а):

Что хоть за книжечка? Мож кому интересно будет почитать.

utkin написал(а):

UML 2.0 вроде как называется. Если хотите быстрей въехать берете лабораторку с какого-нибудь института и пробуете выполнить (но хотя бы введение все равно прочитать надо).

Наверное, для начала надо что-то более органичное, на целостном примере, раньше советовалось "Применение UML и шаблонов проектирования" Крэга Лармана, м.б. есть и что-то более современное.

22

Может товарищ уткин разъяснит. Но как то уже всё становится более менее понятно.

Объясняю наглядно вопросом - где торжественное шествие ДРАКОНа по планете? ДРАКОН специализированная вещь. Он как ассемблер, а UML как питон. Нет же проблем - нет такой питоновской программы, которую нельзя написать на ассемблере? Всегда можно в конце концов написать на ассемблере питон, а на нем уже программу. Чувствуете в чем разница? В том что люди выбирают питон и другие ЯВУ вместо ассемблера. Потому что язык мощней. Несмотря на огромное количество преимуществ (нативный код, скорость исполнения, компактность и т.д.). Вот и ДРАКОН - он крут, там можно забабахать то, забабахать се. Но люди будут предпочитать UML.

Человек хотел делать свой компилятор. А за одно и процессор. Почему бы не пригласить?

Ну а в чем проблема-то у него? Ему что запрещают делать что ли? Или там говорят, что то что он хочет делать это шарлатанство? Даже в манифест пункт про железки предложил.  Он же не в своей теме претензии выкатил, а потом обиделся.

Кстати, о птичках. А где можно увидеть ДРАКОН-схему с рекурсией? Мне интересно каким способом это там реализовано.

23

utkin написал(а):

Он как ассемблер, а UML как питон.

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

среда разработки приложений win32, Qt, wxWidgets, сценариев и страниц PHP, html и JavaScript

24

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

Дайте пример рекурсии, например факториала. Вы тут сами говорили, что Вам ссылок не дают и сами очень неуклюже пытаетесь уйти от ответа.

25

utkin написал(а):

Дайте пример рекурсии

Уткин, не отвлекайтесь от описания компилятора, иначе я Вас съем!

пример рекурсии рассматривается в книге
Владимир ПАРОНДЖАНОВ, УЧИСЬ ПИСАТЬ, ЧИТАТЬ И ПОНИМАТЬ АЛГОРИТМЫ, АЛГОРИТМЫ ДЛЯ ПРАВИЛЬНОГОМЫШЛЕНИЯ, Основы алгоритмизации, Москва 2012
страницы 366-367 (там как раз вычисление факториала)
пруфлинк

26

пример рекурсии рассматривается в книге
Владимир ПАРОНДЖАНОВ, УЧИСЬ ПИСАТЬ, ЧИТАТЬ И ПОНИМАТЬ АЛГОРИТМЫ, АЛГОРИТМЫ ДЛЯ ПРАВИЛЬНОГОМЫШЛЕНИЯ, Основы алгоритмизации, Москва 2012
страницы 366-367 (там как раз вычисление факториала)

Там костыль из комментариев, потому что изначально Паронджаров не думал о рекурсии :).

Уткин, не отвлекайтесь от описания компилятора, иначе я Вас съем!

Я пишу, пишу :).

27

перенос из темы про описание языка "Валентина".


Вы здесь » Ремесло программиста » Валентина » UML, Дракон, наглядность разработки