Мне нужно провести некоторый рефакторинг (на самом деле это ОЧЕНЬ МНОГО, но этот небольшой шаг будет очень полезен для всего процесса). Итак, допустим, у меня есть этот фрагмент кода:
If xmlDoc.SelectSingleNode("/dang") IsNot Nothing Then
universalNode = xmlDoc.SelectSingleNode("/dang")
Type = "dang"
ElseIf xmlDoc.SelectSingleNode("/nang") IsNot Nothing Then
universalNode = xmlDoc.SelectSingleNode("/nang")
Type = "nang"
ElseIf xmlDoc.SelectSingleNode("/lang") IsNot Nothing Then
universalNode = xmlDoc.SelectSingleNode("/lang")
Type = "lang"
ElseIf xmlDoc.SelectSingleNode("/tang") IsNot Nothing Then
universalNode = xmlDoc.SelectSingleNode("/tang")
Type = "tang"
ElseIf xmlDoc.SelectSingleNode("/xtang") IsNot Nothing Then
universalNode = xmlDoc.SelectSingleNode("/xtang")
Type = "xtang"
End If
Он находится в теле большой функции, и я хочу вынести его в отдельную функцию. Итак, мне было интересно, будет ли лучше передавать universalNode
и Type
по значению и просто присваивать им значения без необходимости возвращать что-либо? Это сработает или это рискованно?
Если бы я работал только с Type
, то есть я бы просто вернул его, но это более 1 переменная, которая изменяется, и обе являются локальными переменными для большой функции, из которой я беру это фрагмент кода.
Может быть, есть другие предложения?