Здравствуйте, 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 тоже какой-то странный. зачем он неконстантный-то, например?