• Как создаются большие игры на c++ или c#?

    Hivemaster
    @Hivemaster
    Админ, который хочет программировать
    1. Собираешь команду. Желательно где-нибудь в Монреале;
    2. Делаешь красивый промо-ролик и промо-текст, описывающий все ваши крутые идеи;
    3. Целый год в твиттере и фейсбуке публикуешь посты о том, каких успехов добилась ваша компания в поддержании расового и полового разнообразия команды, как вы уважаете геев и женщин, какие клёвые вегетарианские обеды в вашей столовке и непринуждённая атмосфера в офисе и т.п.;
    4. Выпускаешь Mass Effect: Andromeda;
    5. Полгода клепаешь заплатки, чтобы игра не заваливалась на каждом чихе, параллельно добавляя новые гомосексуальные романтические линии в сюжет;
    6. Оправдываешься в прессе, рассказывая о недостатках движка и финансирования;
    7. Разгоняешь команду;
    8. PROFIT
    Ответ написан
    Комментировать
  • Linq, связь многие ко многим в EF?

    @aynur_safin
    Но выдает такую ошибку:
    4c981169f3d046ae9ba080ddaee9e283.png


    Подключите
    using System.Data.Entity;
    Ответ написан
    Комментировать
  • Наследование и(или) уменьшение объема кода - C#?

    Важнее научится правильно именовать переменные и объекты: Krug - Disk, Ploshad - Area. Это важно.

    На примере класса Krug (остальные фигуры по аналогии).
    -Создается полиморфный тип. B данном примере преимущество не заметно, но в реальных проектах может быть много общих методов, которые могут в точности повторяться в классах наследниках.
    -public const double Pi = Math.PI; - выкидывается, т.к. создает избыточность
    -вместо S = Pi * (r * r); нужно использовать готовый метод Math.Pow
    -лучше использовать инициализацию присваиванием double area = Math.PI * Math.Pow(Radius, 2); где это возможно
    -методы должны возвращать значение без Console.WriteLine("Shape");, таким образом данный пример можно использовать в приложении WindowsForms, например
    -можно добавить конструктор с параметром для инициализации св-ва Radius

    class Shape
    {
        //общие для фигур методы
        public virtual string GetShapeName()
        {
            return "Shape";
        }
    }
    
    class Disk : Shape
    {
        public double Radius { get; set; }
        
        public double Area()
        {
            double area = Math.PI * Math.Pow(Radius, 2);
            return area;
        }
     
        public double Length()
        {
            double length = 2 * Math.PI * Radius;
            return length;
        }
    
        public override string GetShapeName()
        {
            return "Disk";
        }
    }
    Ответ написан
    Комментировать