c # Общедоступные вложенные классы или лучший вариант?

У меня есть схема управления, которая имеет несколько настроек и может иметь любое количество датчиков (каждый со своим набором настроек). Эти датчики могут использоваться только с цепью управления. Я думал об использовании вложенных классов следующим образом:

public class ControlCircuitLib
{
    // Fields.
    private Settings controllerSettings;
    private List<Sensor> attachedSensors;

    // Properties.
    public Settings ControllerSettings
    { get { return this.controllerSettings; } }

    public List<Sensor> AttachedSensors
    { get { return this.attachedSensors; } }

    // Constructors, methods, etc.
    ...

    // Nested classes.
    public class Settings
    {
       // Fields.
       private ControlCircuitLib controllerCircuit;
       private SerialPort controllerSerialPort;
       private int activeOutputs;
       ... (many, many more settings)

       // Properties.
       public int ActiveOutputs
       { get { return this.activeOutputs; } }
       ... (the other Get properties for the settings)

       // Methods.
       ... (method to set the circuit properties though serial port)        
    }

    public class Sensor
    {
       // Enumerations.
       public enum MeasurementTypes { Displacement, Velocity, Acceleration };

       // Fields.
       private ControlCircuitLib controllerCircuit;
       private string sensorName;
       private MeasurementTypes measurementType;
       private double requiredInputVoltage;
       ... (many, many more settings)

       // Properties.
       public string SensorName {...}
       ... (Get properties)

       // Methods.
       ... (methods to set the sensor settings while attached to the control circuit)
    }
}

Я читал, что публичные вложенные классы - это «нет-нет», но есть исключения. Эта структура в порядке или есть лучший вариант?

Спасибо!

РЕДАКТИРОВАТЬ

Ниже представлена грубая иерархия схемы управления, для которой я пытаюсь написать библиотечный класс; Я использовал форматирование кода, чтобы предотвратить перенос текста.

Control Circuit (com. via serial port) -> Attached Sensors (up to 10) -> Sensor Settings (approx. 10 settings per sensor)
                                          Basic Controller Settings (approx. 20 settings)
                                          Output Settings (approx. 30 settings)
                                          Common Settings (approx. 30 settings)
                                          Environment Settings (approx. 10 settings)

Все настройки устанавливаются через контроллер, но я бы хотел организовать библиотеку, а не просто объединять все ~ 100 методов, свойств и настроек под однимController класс. Было бы очень признательно, если бы кто-то мог предложить короткий пример с описанием структуры, которую он будет использовать. Спасибо!

Ответы на вопрос(8)

Ваш ответ на вопрос