motkot
@motkot
Программирование C#.

Нормально ли разбивать все на такое количество методов?

Есть вот такой код:

Код
using UnityEngine;

public class CharactersSelector : MonoBehaviour
{
    [SerializeField] private Transform _leftCharacterParent;
    [SerializeField] private Transform _rightCharacterParent;

    [SerializeField] private UICharacter _startUICharacter;

    private void Awake()
    {
        SelectCharacter(_leftCharacterParent, _startUICharacter);
        SelectCharacter(_rightCharacterParent, _startUICharacter);
    }

    public void SelectFirstCharacter(UICharacter UICharacter) => SelectCharacter(_leftCharacterParent, UICharacter);
    public void SelectSecondCharacter(UICharacter UICharacter) => SelectCharacter(_rightCharacterParent, UICharacter);

    private void SelectCharacter(Transform parent, UICharacter UICharacter)
    {
        ClearParentChilds(parent);

        InstantiateCharacterOnParent(parent, UICharacter.gameObject);
    }

    private void ClearParentChilds(Transform parent)
    {
        foreach(Transform child in parent)
        {
            Destroy(child.gameObject);
        }
    }

    private void InstantiateCharacterOnParent(Transform parent, GameObject UICharacterGameObject) => Instantiate(UICharacterGameObject, parent);
}

Плохо ли что тут большое количество методов? Или так наоборот лучше? Один мне говорит что нужно чтобы методов было мало, а другой что много.

Я понимаю что лучше много, но у меня методы внутри которых 1 строчка кода. Можно написать и без метода?
  • Вопрос задан
  • 209 просмотров
Решения вопроса 1
выглядит хорошо, за исключением неиспользуемых методов.
Лучше так, чем нагромождение кода.

Один мне говорит что нужно чтобы методов было мало, а другой что много.

А почему тогда у этих же людей не спросили, почему они так говорят?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@NIKROTOS
Начинающий программист.
я обычно разделяю на классы и делю их на слои, нижний слой расписываю на объекты по максимуму, слои выше, группируют объекты(используют нижние,как библиотеки) по итогу создав единожды нижний слой, можно на него не отвлекаться и использовать методы классов верхнего уровня.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы