私は取引アプリのジュニア開発者です...注文更新検証ユニットがあります。交換からの注文確認を確認する必要があります。交換するために、さまざまなリクエスト (NEW、MODIFY、CANCEL) をまとめて送信します...検証は、すべての注文の T 間隔ごとに最大 N 回発生する必要があります。N 再試行する前にすべての注文の検証が成功した場合は問題ありません。それ以外の場合は、検証が失敗したことを示す必要があります。私は以下のように非常に緊急に行われた基本的なコーディングを行いました
for( N times )
{
for_each ( sent_request_order ) // SENT
{
1) get all the refreshed order from DB or shared mem i.e REFRESHED
2) find current sent order in REFRESHED
if( not_found )
not refreshed from exchange, continue to next order
if( found )
case NEW : //check for new status, mark verification done
case MODIFY : //check for modified status..
//if not mark pending, go to next order,
//revisit the same after T time
case CANCEL : //check for cancelled status..
//if not mark pending, go to next order,
//revisit the same after T time
}
if( all_verified )
exit from verification.
wait ( T sec )
}
order_verification_pending、order_verification_done、order_visited、order_not_visited、all_verified、all_not_verified ... 表示に使用されるブール値フラグの多く..
これを行うためのより良いアプローチはありますか....クラス間で責任を分割します.????
これは一般的な質問ではないことはわかっています....しかし、それでもフラグのせいで扱いが面倒です...