У меня есть класс, который в настоящее время называется Promise, который работает следующим образом:
- Он имеет будущую ценность
- Он всегда может принять последующее действие, которое использует будущее значение в качестве параметра.
- Когда значение завершено, очередь функций запускается
- Любые функции, добавленные после того, как будущее завершено, происходят синхронно.
Похоже, это шаблон проектирования из функционального программирования, который мы внедряем в Java. Важно то, что мы можем использовать гирляндную цепочку для отложенных событий, что, как я понимаю, является функцией, более встроенной в язык C # 3.0, но вам нужно взломать ее вместе с классами Java. К сожалению, во-первых, я не знаю лучшего названия для этого, чем «обещание» или «будущее», которые кажутся вводящими в заблуждение, поскольку основное внимание уделяется «DelayedCallStack», а не имеющемуся значению, и во-вторых, я не знаю любой способ сделать это, кроме написания нашего собственного довольно сложного класса Promise. В идеале я хотел бы взять это из функциональной библиотеки Java, но эта концепция пока ускользает от меня.
Примечание. Java даже не поддерживает язык/библиотеку для асинхронного обратного вызова, который принимает параметр, что является одной из причин, по которой я так пессимистичен в отношении возможности найти это.
Итак, что это за паттерн, можно ли его сделать в библиотеках?