Re: Попинайте код
От: __kot2  
Дата: 15.04.15 19:07
Оценка: -4
Здравствуйте, amid493, Вы писали:
A>решал тестовое задание и получил ответ, что типа вы нам не подходите без объяснения что в коде не так.
A>Прошу не стесняясь попинайте код пожалуйста.
могу предложить метод экспресс-анализа качества кода.
открываете каталог с кодом. и ищете по всем файлам слово helper. найдено — код в помойку

если придираться детально, то:

зекоммичено два мусорных файла — DataGraphic — копия.cs и drawhelper.

к этому:
if (dlg.ShowDialog() == DialogResult.OK)
{
    controller.Serialize(dlg.FileName);
}

я лично такие излишние скобки не люблю. если бы я хотел прикопаться на интервью, то спросил бы формат оператора if и что такое скобки.

увидев вот такой код я всегда борюсь с желанием распечатать его в черной рамочке с надписью DO IT LIKE A PRO, попросить у аффтара подпись и повесить на доску почета
public SplineCalculator(MyPointF[] points, int width, int height, float tension, float continuty, float bias)
        {
            if (points != null && points.Length > 2)
            {
        ...
            }
            else
            {
                if (points != null && points.Length < 2)
                {
                    throw new Exception("Points was not selected");
                }
            }
        }


internal MyPointF[] GetSpline(int discrete = 10) — вообще ничего не понял

private MyPointF CalcRAB(MyPointF p11, MyPointF p22, MyPointF p33, bool isRa) — типичный антипаттерн — передавать булевскую переменную для изменения поведения ф-ии, когда нам на самом деле нужно две ф-ии.

DrawerController — какое-то странное имя. Render, чтоли имелся в виду?

 internal void Draw(List<MyPointF> points, float tensionBarValue, float continuityBarValue, float biasBarValue)
        {
            try
            {
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

уберите все эти блоки try-catch, которые ничего не ловят. и не только отсюда.

какая-то странная реализация PointAction — три же action, почему класс один? что это еще за SetNewPoint ?
MyPointF — использование слов или префиксов-слов-паразитов My, Model, Helper, Util выдают недостаточный "словарный запас" программиста. То есть можно говорить только про начальный уровень. вообще MyPoint тоже какой-то странный. зачем он неконстантный-то, например?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.