爛 code 收集器//出現太多的成員物件存取....

  1. 爛 code 收集器//出現太多的成員物件存取…

爛 code 收集器//出現太多的成員物件存取…

原文連結: https://darkblack02.blogspot.com/2018/06/code.html
移植時的最後更新日期: 2020-02-28T10:41:21.406+08:00

在重構這本書有提到「若你的程式都對另一個物件取屬性,其實該function也許該屬於被取屬性的物件,比較恰當。」 下面這一段程式,大量的出現 TransactionResponseMessage 存取 MessageInfo 。


public class TransactionResponseMessage : IResponseMessage
{
public void Process(Message.MessageInfo MessageInfo)
{
MessageInfo.Transaction = Util.CreateTransaction();
MessageInfo.Cs.Enter();
try
{
if (MessageInfo.IsSuccess)
ProcessMessageLogic(MessageInfo);
}
catch (Exception ex)
{
MessageInfo.Transaction.TxResult = false;
MessageInfo.SetXmlElementData(false, ex.Message);
}
finally
{
if (MessageInfo.Transaction.TxResult)
MessageInfo.Transaction.Commit();
else
MessageInfo.Transaction.Rollback();

MessageInfo.OnMessagePorcessCompleted();
}
MessageInfo.Cs.Leave();
}

public virtual void ProcessMessageLogic(Message.MessageInfo MessageInfo)
{
throw new NotImplementedException();
}
}