Вверх ↑
Этот топик читают: Гость
Ответов: 9906
Рейтинг: 351
#16: 2007-09-05 23:03:40 ЛС | профиль | цитата
Вячеслав, мне показалось, что ты не понял главного

Существуют некоторые принципы программирования, которые заведомо напрягают пользователя.
К таковым относится ООП, особенно если пользователь начинал с классического стуктурного программирования. Или вообще - не структурного.
Вопрос: почему же, тем не менее, несмотря на эти напряги, оно осуществляет свое победное шествие

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

В HiAsm происходит тоже самое, и корневые причины - те же, кстати.
Происходит напряг при одном стиле рисования, и все хорошо при другом...
Основная мысль такая: когда получается хорошо, это не просто такая заморочка HiAsm, это - "правильное" программирование.

Вывод: если приходится "Делать 10 лишних точек для вывода данных из 10 го вложенного мультика", НЕ НАДО проталкивать невизуальность.
НАДО менять стиль упаковки в мультики.
Вообще-то, это есть умение правильно структурировать задачу.
карма: 9

0
Администрация
Ответов: 15295
Рейтинг: 1519
#17: 2007-09-05 23:10:03 ЛС | профиль | цитата
Вячеслав, в пакетах на базе FTCG это не реализуемо вообще. Как невозможно реализовать более одной левой и правой точки у контейнера в режиме function.
карма: 27
0
Ответов: 3655
Рейтинг: 69
#18: 2007-09-05 23:31:12 ЛС | профиль | цитата
Galkov, Так классно объяснил.
Надо твой топик в Help .
Подойдёт для ответов на многие вопросы.
карма: 0

0
Ответов: 262
Рейтинг: 6
#19: 2007-09-06 04:05:18 ЛС | профиль | цитата
nesco писал(а):
а мне кажется, что этот компонент больше подходит вот для таких целей, и даже очень хорошо подходит

Да это понятно было и изначально, и схему я привел в таком виде только для того, чтобы показать насколько элемент может быть неправильно понят пользователем. Второй Message не срабатывает ни когда. Я знаю как работает HubEx, но ведь он не допускает подключения нескольких точек onEvent, а LineBreakEx допускает легко. И при этом, визуально, на схеме не видно даже с какой из своих копий он связан(как стандартный LineBreak хотябы).
Dilma, я "не выражаю мнение по поводу веры", а спрашиваю, почему появился очень удобный элемент, который по моему мнению не вписывается в концепцию HiAsm-а, поэтому и цитирую Вас. Мое же мнение о концепции сложилось на основании многолетнего чтения этого форума. Если я Вас понял неправильно - объясните или дайте ссылку на ветку.
А пока, я понял этот элемент как любимый программистами 80-ых GOTO из QBASIC-а.
-- и борода из чата про интеллект
он> а у тебя какой IQ ?
она> 42360056.
карма: 0

0
Администрация
Ответов: 15295
Рейтинг: 1519
#20: 2007-09-06 08:43:28 ЛС | профиль | цитата
Chesh писал(а):
И при этом, визуально, на схеме не видно даже с какой из своих копий он связан(как стандартный LineBreak хотябы).

Каким образом видно в стандартном LineBreak Просьба пояснить этот момент на данном примере:
Add(Button,13496813,140,301)
{
Left=140
Top=115
link(onClick,12324803:In,[])
}
Add(Button,11213602,140,371)
{
Left=150
Top=185
link(onClick,3026333:In,[])
}
Add(Message,15763378,322,301)
{
}
Add(Message,15322899,322,371)
{
}
Add(LineBreak,2090063,266,371)
{
link(Out,15322899:doMessage,[])
Primary=[12324803,-77,-70]
}
Add(LineBreak,1359861,266,301)
{
link(Out,15763378:doMessage,[])
Primary=[3026333,-77,70]
}

актуальная связь всегда выделяется жирным при наведение на соответствующую точку

Chesh писал(а):
который по моему мнению не вписывается в концепцию HiAsm-а

чем LineBreakEx отличается от проектирования схемы в таком стиле:
Add(Button,3299131,140,112)
{
Left=140
Top=115
link(onClick,15912076:In,[])
}
Add(Button,13172455,140,182)
{
Left=150
Top=185
link(onClick,877862:In,[])
}
Add(Message,7370931,322,112)
{
}
Add(Message,7121652,322,182)
{
}
Add(LineBreak,15893548,266,112)
{
link(Out,5735035:doWork2,[])
Primary=[15912076,-77,0]
}
Add(LineBreak,9197433,266,112)
{
link(Out,5735035:doWork3,[(312,118)])
Primary=[877862,-77,70]
}
Add(HubEx,5735035,308,105)
{
link(onEvent,7370931:doMessage,[])
}
Add(LineBreak,10976039,266,182)
{
link(Out,7121652:doMessage,[])
Primary=[13436525,210,-42]
}

карма: 27
0
Главный модератор
Ответов: 2999
Рейтинг: 396
#21: 2007-09-06 08:57:41 ЛС | профиль | цитата
Подсветки связи при выделении как видно не будет
карма: 6
Дорогу осилит идущий. Install/Update HiAsm.NET
0
Ответов: 262
Рейтинг: 6
#22: 2007-09-06 09:30:19 ЛС | профиль | цитата
Dilma, 1. при клике по любому LineBreak появляется тонкая пунктирная линия. Или это только у меня ?
2. Актуальная связь подсвечивается только "туда" т.е. от on к do.
3. Второй пример непонятен. Та же пунктирная линия показывает что произойдет дальше.

Быть может стоит сделать такую же линию для LineBreakEx при Type= Work и Var?
карма: 0

0
Ответов: 3851
Рейтинг: 159
#23: 2007-09-06 09:33:09 ЛС | профиль | цитата
Блин я так обрадовался, а вы опять про нетекущую версию.
Может сделать отдельный раздел для всех, кто выше пользователя? - и ругайтесь там на своём птичьем языке , зачем нервировать мирных жителей - нехорошо это (имхо)
карма: 0
начавший
0
Разработчик
Ответов: 26170
Рейтинг: 2127
#24: 2007-09-06 10:25:46 ЛС | профиль | цитата
Chesh писал(а):
Быть может стоит сделать такую же линию для LineBreakEx при Type= Work и Var?

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

0
Администрация
Ответов: 15295
Рейтинг: 1519
#25: 2007-09-06 10:36:28 ЛС | профиль | цитата
Chesh,
1. Мы говорим о визуальности схемы(скажем на скриншоте с рабочего стола) или механизме визуализации связей в процессе разработки Если о первом, то повторяю вопрос:
Dilma писал(а):
Каким образом видно в стандартном LineBreak?

если о втором, то повторяю ответ:
Dilma писал(а):
актуальная связь всегда выделяется жирным при наведение на соответствующую точку


2. В примере ниже она не только от do подсвечивается?
Add(Button,15021016,175,140)
{
Left=175
Top=140
link(onClick,11702971:doWork1,[(228,146)])
}
Add(Button,13221092,175,196)
{
Left=175
Top=195
link(onClick,11702971:doWork2,[])
}
Add(Button,11802965,175,245)
{
Left=165
Top=245
link(onClick,11702971:doWork3,[(228,251)])
}
Add(Message,8463245,259,196)
{
}
Add(HubEx,11702971,224,189)
{
link(onEvent,8463245:doMessage,[])
}
почему вопрос появляется именно в теме по данному элементу

3. см. пункт 1.
карма: 27
0
Ответов: 262
Рейтинг: 6
#26: 2007-09-06 10:59:06 ЛС | профиль | цитата
Dilma, 1. Видимо сразу о двух
Если говорить о наглядности схемы то и тот и другой элементы ее ухудшают. А если говорить об наглядности в процессе разработки то вот схемка. Называется "найди элемент", связи подвсечиваются, да толку.
Add(LineBreakEx,5421597,161,-278)
{
}
Add(LineBreakEx,10004449,658,625)
{
Type=1
link(OnEvent,12982246:doMessage,[])
}
Add(Button,14448254,84,-278)
{
Left=80
Top=145
link(onClick,5421597:doWork,[])
}
Add(Message,12982246,721,625)
{
}

nesco, я не случайно указал только два свойста Type. В любом случае связь в LineBreakEx от Work к Event будет только одна, так же как и для Var - Data. HubEx однако, входов несколько, а выход один.
карма: 0

0
Разработчик
Ответов: 26170
Рейтинг: 2127
#27: 2007-09-06 11:18:11 ЛС | профиль | цитата
Chesh писал(а):
HubEx однако, входов несколько, а выход один.

Вот я про это и говорю. Когда стоит HubEx видно от каких элементов происходит объединение линками, что не скажешь об LinBreakEx, где надо искать одинаковые имена по схеме. Поэтому я сказал, что хорошо бы засвечивать все с одинаковыми именами при актвации одного, хорошо бы еще и линки пунктиром от исходящих к входящему.
карма: 22

0
27
Сообщение
...
Прикрепленные файлы
(файлы не залиты)