Быть новичком в C# и более привыкший к C и Java я все еще не могу привыкнуть к размещению угловых скобок в.NET C# и VS. Помещая все, что в стороне, я согласовываю с Andrey в том инвертировании, 'если' еще более читаемо. С другой стороны, я лично нахожу, что исключение 'еще' уменьшает удобочитаемость (немного). Я пошел бы с этим лично:
static public string ToNonNullString(this XmlAttribute attr)
{
if (attr == null)
return string.Empty;
else
return attr.Value;
}
Лучшим решением, вероятно, является использование декоратора, например:
def add_docs_for(other_func):
def dec(func):
func.__doc__ = other_func.__doc__ + "\n\n" + func.__doc__
return func
return dec
def foo():
"""documentation for foo"""
pass
@add_docs_for(foo)
def bar():
"""additional notes for bar"""
pass
help(bar) # --> "documentation for foo // additional notes for bar"
Таким образом вы можете произвольно манипулировать строками документации.
Я думаю этот раздел дает довольно ясное объяснение:
Что такое строка документации?
Строка документации - это строковый литерал, встречается как первая инструкция в модуль, функция, класс или метод определение. Такая строка документации становится специальный атрибут doc этого объект.
Итак, это не выражение, которое вычисляется в строку, это строковый литерал .