Правила чистого кода на примере Unity

Поделиться
HTML-код
  • Опубликовано: 30 сен 2024

Комментарии • 17

  • @rdragon587
    @rdragon587 3 месяца назад

    Rider по умолчанию убирает методы доступа и их лень постоянно добавлять. Я за то чтобы не писать) плюс чем меньше кода тем легче читать

    • @FirinorHisimeon
      @FirinorHisimeon  3 месяца назад

      Опасно рассуждаешь.
      У нас есть как минимум 7 разных уровней доступа к полям, методам и классам.
      public, private, protected, internal, protected internal, private protected и file.
      В классах по умолчанию стоит internal
      В интерфейсах public
      В полях и методах private для классов и public для интерфейсов.
      Можно или всё это запоминать и постоянно сверяться с тем местом, где ты сейчас находишься в коде (что лишняя трата внимания),
      или тратить время и ждать пока Rider тебе подскажет дополнительную информацию (что лишняя трата времени),
      или просто зацепить глазом необходимую для отладки информацию и бежать дальше по коду (что мне кажется наиболее предпочтительным)
      ЗЫ Rider можно настроить и не придётся ничего постоянно добавлять руками)

    • @rdragon587
      @rdragon587 3 месяца назад +1

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

    • @FirinorHisimeon
      @FirinorHisimeon  3 месяца назад +1

      Ну на самом деле не самое плохое предложение. Как будем вместе что-нибудь прогать, давай так и поступим)

  • @Oldy573
    @Oldy573 4 месяца назад

    Clean Code, Horrible Performance

    • @dangername6996
      @dangername6996 3 месяца назад

      Horrible perfomance на каком компиляторе?

  • @myandroidcool
    @myandroidcool 4 месяца назад +1

    Лол. Tuple - не анонимный класс. Имелось скорее в виду, если бы было var value = new { Id = 0, Name = "Ivanov" }. А Tuple используется повсеместно в языке, например, когда мы делаем foreach на Dictionary, который возвращает Tuple. Да и говорить о чистом коде в C# на примере Unity - это просто жесть. Сам Unity вообще не придерживается нормальным практикам и пошел по своему пути

    • @FirinorHisimeon
      @FirinorHisimeon  4 месяца назад

      Соглашусь. Действительно я перепутал Кортежы(Tuple) и Анонимные классы. Виноват.
      Но на моё счастье, правило от этого не меняется) Стоит избегать и кортежей и анонимных классов в коде.
      По поводу своего пути Unity. Тут ведь какое дело - если у тебя есть сложная цель (универсальный игровой движок), то её достижение требует собственных подходов, компромиссов и исхищрений. Правила по которым написан Unity и правила по которым разработчики пишут игры могут различаться - и это нормально.

    • @Eduard0213-x7p
      @Eduard0213-x7p 3 месяца назад

      @myandroidcool лол если Unity и C# не про чистый код тогда почему столько расширяемых продуктов на нем написано, вот любят люди осуждать просто, сам то вы с Unity работали и какие задачи то не получилось решать?

    • @myandroidcool
      @myandroidcool 3 месяца назад

      @@Eduard0213-x7p я не Unity разработчик, а .NET разработчик. А так как C# - часть .NET'a, то я могу говорить про чистоту и организованность. Так как Unity изначально делал упор на JS + Mono C#, то многие вещи перекочевали не из .NET'a, а из JS. Чтобы просто у пользователей не было большого диссонанса. К примеру: camelCase проперти

    • @Eduard0213-x7p
      @Eduard0213-x7p 3 месяца назад

      @@myandroidcool попробуйте провести в Unity время, можно постепенно разобраться и создавать много чего в том числе и большие проекты в стиле Genshin, COD mobile, Tarkov, не каждый движок такое может себе позволить

    • @FirinorHisimeon
      @FirinorHisimeon  3 месяца назад

      Что то мне подсказывает, что camelCase проперти это вовсе не особенность JS.
      Нет никакой проблемы писать в Unity C# свойство_через_подчеркивание или любой другой способ написания.
      Главное, чтобы во всём проекте соблюдался единый шаблон

  • @EvgenePirat
    @EvgenePirat 4 месяца назад

    Спасибо огромное, было очень полезно и информативно!

  • @올래나
    @올래나 4 месяца назад

    Санчесу привет!

  • @ВладиславГришин-ш7ш
    @ВладиславГришин-ш7ш 3 месяца назад

    зачем нужны классы? как правильно их проектировать? что в них нужно засовывать?

    • @FirinorHisimeon
      @FirinorHisimeon  3 месяца назад

      Никто не знает зачем нужны классы и что туда засовывать ¯\_(ツ)_/¯. Говорят их функциональщики придумали....
      А если серьёзно, то стоит обратиться к основам программирования. Например у меня на канале есть видео "Как выучить программирование"

    • @FirinorHisimeon
      @FirinorHisimeon  3 месяца назад

      Я снял отдельное видео, где постарался ответить на твои вопросы ruclips.net/video/2XKpgYQaXCk/видео.html