Так «идемпотентность» может быть определена как:Определение идемпотентность
действия, что, если выполняемые N раз имеют тот же эффект, выполняя действие только один раз.
Получил это, легко.
Вопрос о тонкости этого определения - это действие, рассматриваемое как идемпотент, или вы также должны учитывать данные, передаваемые в действие?
Поясню на примере:
Предположим, у меня есть метод PUT, который обновляет некоторый ресурс, мы будем называть его f(x)
Очевидно, что f(3)
идемпотентна, до тех пор, как я поставляю 3 как вход. И так же очевидно, что f(5)
изменит значение ресурса (т. Е. Оно больше не будет 3 или какое-либо значение ранее)
Итак, когда мы говорим об идемпотентности, мы имеем в виду обобщение действия/функции (т.е. f(x)
), или мы имеем в виду действие/функцию + данные, передаваемые в нее (т. е. f(3)
)?
Должно ли это не быть перенесено на форум математики? (Для всей ясности: я не уменьшал) –
Зависит, если мы говорим об определении в формальной логике или определении в веб-программировании. Я подозреваю, что нисходящий (а не я) просто подумал, что вопрос был неправильным. –
@Roy - я так не думаю, так как он применяется непосредственно к веб-службам RESTful, и это контекст, который я написал в примере в – Didaxis