Iterator v/s cdb_get() in process_update() of subscription handler

When writing a subscription handler, in process_update() is it mandatory to use iterator when the subscribed path is only to a single leaf with a default value?

Is it a good practise to directly read the value of the leaf using cdb_get() in process_update() instead of writing an iterator with MOP_DELETE/MOP_CREATED/MOP_SET cases and read accordingly?

If the subscribed path is a single leaf, just read the single leaf. There is no need for an iterator or other variants, such as get_modifications(), as you know what changed.