[Java OOP Advanced Exam] Въпроси относно коментара към оценката.
Привет,
Пише, че не съм взел изпита със следния коментар:
"Липсват фундаментални знания от курса по ООП. Липсва Main метод. Структурата на кода е хаотична. Не е рефакториран framework-a. Не са оправени бъговете в него. Липсват Unit-Tests. Кодът е непреизползваем, тъй като липсва reflection. Липсват достатъчните анотации – класове, за да функционира програмата по задание."
Съдейки от горе написаното съм склонен да мисля, че става въпрос за някаква техническа грешка и оценката не е поставена върху кода който съм камитнал:
"Липсват фундаментални знания от курса по ООП" - Това е доста широко понятия. Аз го разбирам като сбъркани нейминг конвенции, лош избор на пакети и съответно лошо разпределяне на класовете в тях, липса на абстракция ... нещо такова, а това смятам, че като цяло е направено в моя код (може би има забележки, но чак да липсва ...)
"Липсва Main метод" - main метода е в bg.softuni.io.Main класа.
"Структурата на кода е хаотична." - това ми звучи пак като първия цитат в частта си с нейминг конвенциите и правилното именуване/разпределение по пакети. Отново, мисля, че дори и не докрай имплементиран кода не е хаотичен.
"Не е рефакториран framework-a. Не са оправени бъговете в него." - Наистина съм го използвал само отчати, но според условието това са 20 точки надолу и не би трябвало да е голям проблем.
"Липсват Unit-Tests" - Има юнит тест, който покрива нулевия тест от условието на задачата. Съгласен съм, че това е далеч от достатъчно, но не е и да липсва изцяло. (src/test/java package: bg.softuni.io.ZeroTest1.java)
" Кодът е непреизползваем, тъй като липсва reflection. " - Класовето в пакетите, които започват с bg.softuni.framework използват изцяло рефлекшън и напрактика могат да се използват на всякъде. Написано е по идея подобна на тази в BashSoft и тази от MarketPlace - по даден път сканират всичко там за анотации @Component и @Inject.
Освен това, класовете отговарящи за типа боклук се търсят с class.forName(package_name + typeName).
"Липсват достатъчните анотации – класове, за да функционира програмата по задание." - Кода не беше имплементиран докрай, макар, че не виждам причината за това да е в липсващи анотации, по - скоро не бях довършил имплементацията на някои класове (даже това го направих след изпита и в момента си дава максимум точки в judje, без да променям стария код - само го дописах и единственото което промених е, да не се сканира по път за файлове с анотации @Component, а да се подава списък с класове, тъй като judje не позволява да се чете директорията със сорса - иначе логиката за inject и autowire си е същата).
P.S. Целта ми не е да се заяждам, просто наистина не мога да свържа коментара с кода, който качих и моля да го погледнете пак.
Поздрави, Косьо
Ами защото не очаквах такъв коментар и не съм запазил зипа от датата на изпита. До имплементирах недовършените неща и това е което имам при мен в момента.
ами не можеш ли да свалиш зип-а от самия изпит?
Ами за съжаление немога.
В Джъдж не виждам решението от изпита- тои е "нулиран" след изпита явно.