Epic Self Documenting Code
This is the best: switch (mIntegrationDirection) { case InventoryIntegrationDirection.DoTheSameChangeInShop: DoTheSameChangeInShop(GetChangedDataFromInventory(mLastSynchDate)); break; case InventoryIntegrationDirection.DoTheSameChangeInInventory: DoTheSameChangeInInventory(GetChangedDataFromShop(mLastSynchDate)); break; case InventoryIntegrationDirection.DoTheSameChangeInShopThenDoTheSameChangeInInventoryForNotChangedDataInInventory: DoTheSameChangeInShopThenDoTheSameChangeInInventoryForNotChangedDataInInventory( GetChangedDataFromInventory(mLastSynchDate), GetChangedDataFromShop(mLastSynchDate)); break; case InventoryIntegrationDirection.DoTheSameChangeInInventoryThenDoTheSameChangeInShopForNotChangedData: DoTheSameChangeInInventoryThenDoTheSameChangeInShopForNotChangedData( GetChangedDataFromShop(mLastSynchDate), GetChangedDataFromInventory(mLastSynchDate)); break; default: break; } Read how this travesty occurred at DailyWTF
