EnglishУкраїнськаmRussian
Login/New
Topic with no new replies

JavaLikeCalc


Author Message
Written on: 26. 12. 2014 [12:57]
fido_max
Maxim Kochetkov
Contributor
Topic creator
registered since: 28.10.2010
Posts: 129
При создании контроллера от функции из библиотеки JavaLikeCalc, входные параметры становятся атрибутами только для чтения, а выходные - наоборот для записи.
Проясните тогда пожалуйста, как в таком случае передать в функцию входной параметр через атрибут, если он только для чтения?
Written on: 26. 12. 2014 [13:13]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"fido_max" wrote:

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

Во первых, "только для чтения" и "для записи" это нотация контроллера JavaLikeCalc при пробросе их в атрибуты параметра этого контроллера, следовательно применять эти термины для общего понятия функции как минимум не предметно.
Во вторых, суть вопроса совершенно не понятна.
В третьих, в документации всё нормально написано.

Learn, learn and learn better than work, work and work.
Written on: 26. 12. 2014 [13:32]
fido_max
Maxim Kochetkov
Contributor
Topic creator
registered since: 28.10.2010
Posts: 129
В библиотеке создаю функцию с двумя параметрами целого типа:
a - вход
b - выход
Текст функции:
JAVASCRIPT
b = a+1;


Создаю от нее контроллер в JavaLikeCalc, в контроллере создаю параметр, в поле данных параметра пишу:
JAVASCRIPT
a
b


включаю/запускаю все это дело, перехожу в конфигураторе на вкладку атрибутов и вижу, что у меня создалось два атрибута "а" и "b". "а" равен нулю, и только для чтения (хотя он входной параметр для функции). "b" равен 1 (все правильно 0+1) и он доступен для записи, хотя это результат работы функции и менять его бесполезно, т.к. он перезаписывается из самой функции.
Written on: 26. 12. 2014 [13:37]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"fido_max" wrote:

включаю/запускаю все это дело, перехожу в конфигураторе на вкладку атрибутов и вижу, что у меня создалось два атрибута "а" и "b". "а" равен нулю, и только для чтения (хотя он входной параметр для функции). "b" равен 1 (все правильно 0+1) и он доступен для записи, хотя это результат работы функции и менять его бесполезно, т.к. он перезаписывается из самой функции.

Правильно, указанные атрибуты функции:
a - вход
b - выход
и послужили определению атрибутов параметра как:
a - только чтение
b - чтение и запись

Всё так и задумано, опять читаем документацию!

Learn, learn and learn better than work, work and work.
Written on: 26. 12. 2014 [13:48]
fido_max
Maxim Kochetkov
Contributor
Topic creator
registered since: 28.10.2010
Posts: 129
"roman" wrote:

Правильно, указанные атрибуты функции:
a - вход
b - выход
и послужили определению атрибутов параметра как:
a - только чтение
b - чтение и запись


Как в таком случае передать функции через этот контроллер что-либо на вход?

"roman" wrote:

Всё так и задумано, опять читаем документацию!

Читаю, но так ничего и не нашел. Подскажите где искать?
Written on: 26. 12. 2014 [13:56]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"fido_max" wrote:

Как в таком случае передать функции через этот контроллер что-либо на вход?

Сделать выходом или режим "Чтение/Запись", очевидно, для чего в контексте объекта контроллера он не назван как "Выход", поскольку используется как признак режима для атрибутов параметров. Кроме того:
"Вход" у функции — можно только передать при вызове, "Чтение" из внутри функции.
"Выход", который не "Возврат" — можно как передать в функцию, так и взять с неё, т.е. "Чтение/Запись" из внутри функции.

Learn, learn and learn better than work, work and work.
Written on: 26. 12. 2014 [14:10]
fido_max
Maxim Kochetkov
Contributor
Topic creator
registered since: 28.10.2010
Posts: 129
"roman" wrote:

Сделать выходом или режим "Чтение/Запись", очевидно, для чего в контексте объекта контроллера он не назван как "Выход", поскольку используется как признак режима для атрибутов параметров. Кроме того:
"Вход" у функции — можно только передать при вызове, "Чтение" из внутри функции.
"Выход", который не "Возврат" — можно как передать в функцию, так и взять с неё, т.е. "Чтение/Запись" из внутри функции.


Если параметр "a" сделать для записи, а "b" для чтения, то в библиотеке изменится сама функция: "a" станет выходом, "b" - входом. Выглядит это мягко говоря странно и абсоютно не логично. Хотя на работу это почему - то не влияет. Получается функция берет значение из выходного "a" (ничего криминального) и пишет во входное "b" (КАК?!?! оно же входное!!!)
Written on: 26. 12. 2014 [14:23]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"fido_max" wrote:

"roman" wrote:

Сделать выходом или режим "Чтение/Запись", очевидно, для чего в контексте объекта контроллера он не назван как "Выход", поскольку используется как признак режима для атрибутов параметров. Кроме того:
"Вход" у функции — можно только передать при вызове, "Чтение" из внутри функции.
"Выход", который не "Возврат" — можно как передать в функцию, так и взять с неё, т.е. "Чтение/Запись" из внутри функции.


Если параметр "a" сделать для записи, а "b" для чтения, то в библиотеке изменится сама функция: "a" станет выходом, "b" - входом. Выглядит это мягко говоря странно и абсоютно не логично. Хотя на работу это почему - то не влияет. Получается функция берет значение из выходного "a" (ничего криминального) и пишет во входное "b" (КАК?!?! оно же входное!!!)

Мне логично, если для Вас нет и не можете себя поставить внутрь функции — читайте мои ответы с начала и до прояснения!
В особенности про:
"Вход" у функции — можно только передать при вызове, "Чтение" из внутри функции.
"Выход", который не "Возврат" — можно как передать в функцию, так и взять с неё, т.е. "Чтение/Запись" из внутри функции.

Кроме того нечего, если не понимаете, выходить за рамки объекта контроллера, где прямо и написано "Чтение/Запись"!

Learn, learn and learn better than work, work and work.



4464