我有一个处理医疗数据管理的课程。 我必须计算一些算法值,但有很多条件。现在我想放置这些 代码以非常易读和可维护的方式。可能是因为某些设计模式可以帮助但不确定。
有人可以建议我编写具有如此多条件的下面代码的最佳方法。
代码段:
public MedicalData UpdatePatientData(List<Side> side)
{
var medicalData = new MedicalData();
// if both side available
if (side[0] == Side.Left && side[1] == Side.Right)
{
// if both side valid
if (IsValid(side[0]) && IsValid(side[1]))
{
return medicalData.AlgorithmValue = // here goes some
//calculation logic and return
}
// if only left side valid
if (IsValid(side[0]))
{
return medicalData.AlgorithmValue = // here goes some
//calculation logic and return
}
// if only right side valid
if (IsValid(side[0]))
{
return medicalData.AlgorithmValue = // here goes some
//calculation logic and return
}
}
// if only left side available
if (side[0] == Side.Left)
{
if (IsValid(Side.Left))
{
return medicalData.AlgorithmValue = // here goes some
//calculation logic and return
}
}
// if only right side available
if (side[1] == Side.Right)
{
if (IsValid(Side.Right))
{
return medicalData.AlgorithmValue = // here goes some
//calculation logic and return
}
}
return medicalData;
}
谢谢&amp;问候