Какой из них более приемлем (лучшая практика)?:
namespace NP
public static class IO
public static class Xml
...
// extension methods
using NP;
IO.GetAvailableResources ();
против
public static class NP
public static class IO
public static class Xml
...
// extension methods
NP.IO.GetAvailableResources ();
Также для #2
размер кода определяется наличием частичных классов, поэтому каждый вложенный класс может находиться в отдельном файле, то же самое для методов расширения (за исключением того, что для них нет вложенного класса)
Я предпочитаю #2
по нескольким причинам, таким как возможность использовать имена типов, которые уже широко используются, например IO
, которые я не хочу заменять или сталкивать.
Какой из них вы предпочитаете? Есть плюсы и минусы для каждого? Какова лучшая практика для этого случая?
РЕДАКТИРОВАТЬ: Также будет ли разница в производительности между двумя?