История изменений
Исправление no-dashi-v2, (текущая версия) :
Вы прописываете в ТЗ очевидные вещи?
Вот тут как раз все сложнее. ТЗ должно однозначно определять реакцию в случае ошибки. То есть типа что эта функция сохраняет в базу заказ, если заказ не может быть сохранен, то возвращается такой-то код ошибки, либ орайзится эксепшн, либо еще что-то. Если у вас операция сложная (составная) то надо явно указать, что операция должна быть транзакционной в контексте вот тех-то сущностей и т.д., потому, что например вы можете хотеть чтобы при сохраненнии сложной структуры master-detail при проблеме в сохранении деталей мастер не удалялся.
В случае если вы подробностей не указали, это приводит к неопределенному поведению со всеми вытекающими и вы не можете предъявлять никому претензий - описанное в ТЗ выполняется, не описанные кейсы остаются в неопределенное поведение.
Исходная версия no-dashi-v2, :
Вы прописываете в ТЗ очевидные вещи?
Вот тут как раз все сложнее. ТЗ должно однозначно определять реакцию в случае ошибки. То есть типа что эта функция сохраняет в базу заказ, если заказ не может быть сохранен, то возвращается такой-то код ошибки, либ орайзится эксепшн, либо еще что-то. Если у вас операция сложная (составная) то надо явно указать, что операция должна быть транзакционной в контексте вот тех-то сущностей и т.д., потому, что например вы можете хотеть чтобы при сохраненнии сложной структуры master-detail при проблеме в сохранении деталей мастер не удалялся.
В случае если вы подробностей не указали, это приводит к неопределенному поведению со всеми вытекающими и ы не можете предъявлять никому претензий - описанное в ТЗ выполняется, не описанные кейсы остаются в неопределенное поведение.