Re[2]: Объект про себя знает не все, но должен себя отрисовывать.
От: SergeyOsipov Россия  
Дата: 10.02.17 17:07
Оценка:
Здравствуйте, sr_dev, Вы писали:

_>При создании ваших переменных тот кто их создает, он же создает набор примитивов для визуализации переменной и закрепляет их за этой переменной. Этот создатель располагает графом и вообще всем.


Такой подход плох, если захочется, например, плагинную систему расширения функциональности этого графа. Ноды в плагинах знают и как отрисовать себя, и что именно ноды делают. Если же визуализацию нодов собирает какой-то конструктор, то тут шаг влево, шаг вправо — расстрел. Невозможно будет задать какую-то совершенно нестандартную ноду.
Re: Объект про себя знает не все, но должен себя отрисовывать.
От: Vladek Россия Github
Дата: 10.02.17 21:18
Оценка:
Здравствуйте, SergeyOsipov, Вы писали:

SO>Есть некая визуализация алгоритма в виде графа. Этот алгоритм — это функция с входными и выходными параметрами. Любой параметр — это просто переменная.

Вот тут ты теряешь информацию о типе аргумента рассматривая его как просто переменную.
SO>И сама переменная не знает и не должна знать про себя — входной она параметр или выходной.
Действительно, у переменной нет направления, а у аргумента есть.
SO>Но. Любая переменная сама себя отрисовывает в виде ноды графа. Так вот входные и выходные параметры по-разному себя отрисовывать должны, но они сами внутри себя не знают входные они или выходные. Как разрулить? Добавить флаг в функицю отрисовки — не вариант.
Отнаследуй от класса переменной класс аргумента, у которого будет направление и рисуй аргументы, имея полную информацию. Код функции отрисовки вроде бы не должен поменяться.
Re[5]: Объект про себя знает не все, но должен себя отрисовывать.
От: kov_serg Россия  
Дата: 10.02.17 22:17
Оценка:
Здравствуйте, SergeyOsipov, Вы писали:

SO>Здравствуйте, kov_serg, Вы писали:


_>>Сделайте у переменной вход и выход. А лучше ящик с N входами и M выходами.


SO>Забавно, на моей визуализации думаю все поймут сразу, где входные, где выходные. Чтоб понять вашу схему, надо долго думать.

SO>Вообще, думаю разработчики UnrealEngine подумали об удобстве и юзабилити . Я повторяю их Blueprint для собственных нужд

Я понял, вы сремитель к этому

Re[3]: Объект про себя знает не все, но должен себя отрисовывать.
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 11.02.17 07:30
Оценка:
Здравствуйте, SergeyOsipov, Вы писали:

I>> Непонятно, зачем переменной самой себя рендерить.

SO>Предлагаешь графу знать какая нода как себе отрисовывает?

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

Я лет 5 графы рисовал, спрашивай
Re: Объект про себя знает не все, но должен себя отрисовывать.
От: elmal  
Дата: 12.02.17 06:48
Оценка:
Здравствуйте, SergeyOsipov, Вы писали:

SO>Есть некая визуализация алгоритма в виде графа. Этот алгоритм — это функция с входными и выходными параметрами. Любой параметр — это просто переменная. И сама переменная не знает и не должна знать про себя — входной она параметр или выходной. Но. Любая переменная сама себя отрисовывает в виде ноды графа. Так вот входные и выходные параметры по-разному себя отрисовывать должны, но они сами внутри себя не знают входные они или выходные. Как разрулить?

Есть такой баззворд как SOLID. В частности Single Responsiblility Principle. Твои сложности как раз из за того, что ты делаешь God Object — смешиваешь логику самого алгоритма и отрисовки.

Соответственно у тебя должна быть функция. Которая вообще ни о каком рисовании не знает, ей важна логика. Есть сущность — рисователь. Которой ты говоришь что за переменные, что за параметры, но которой пофиг на алгоритм. Рисователь графа — будет частным случаем, возможно наследником от какого либо абстрактного класса. И тогда у тебя будет алгоритм отдельно, рисование переменных, параметров, графа — тоже отдельно.
Re[6]: Объект про себя знает не все, но должен себя отрисовывать.
От: SergeyOsipov Россия  
Дата: 12.02.17 07:33
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>Я понял, вы сремитель к этому


Любой граф можно довести до абсурда. И ваш пример тоже можно превратить в месиво линий и квадратиков. Как и в программировании можно всю программу запихнуть в функцию main. Но никто так не делает, а пишут небольшие функции. Так же и в блюпринте пишут подфункции — свои графы. Я досиаточно плотно поработал с блюпринт, и говорю, что это очень удобно. Спросите у сотни разработчиков игр, которые пишут только на блюпринте.
Re: Объект про себя знает не все, но должен себя отрисовывать.
От: antropolog  
Дата: 13.02.17 22:48
Оценка:
Здравствуйте, SergeyOsipov, Вы писали:

если я правильно понял исходную задачу, то это просто эталонный пример для гофовского декоратора. В терминах декоратора "просто переменная" это component, а "входные и выходные параметры по-разному себя отрисовывать должны" это decorator.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.