Loading...
evgenikolov avatar evgenikolov 304 Точки

[HQC - Exam 07.02.2016] Впечатления и коментари

Как ви се стори изпита?

След като разгледах и забутаните тестове и решението съм убеден, че нямаше как да направим всичко, което се изисква от нас. Имаше прекалено много неща за рефакториране, доста повече бъгове и завъртяни случаи, които изяждат супер много от времето в сравнение с предишни изпити, а нулевите тестове бяха много "готини". Вкъщи си погледнах първият нормален тест, промених само една стойност от 1 на 2 и изкарах 6 точки дори без да ми минават нулевите. В началото на изпита ни казаха, че нулевите покривали доста неща и били добре направени, но до колкото разбирам май изобщо не са били.

Здраве да е, ще се видим на поправката като ще се надяваме изпита да е по-съсредоточен върху КПК курса и да е съобразен с времето което имаме. :)

Тагове:
30
C# OOP Advanced 07/02/2016 19:32:00
vaseto_v avatar vaseto_v 50 Точки

Колеги имам едно питане относно юнит тестовете  от вчерашния изпит.  Например за тестването на RegisterStationaryAC кое е най - правилно да се тества? Освен тестването на всички съобщения, които връща метода при различните сценарии, той вътре в него при регистрирането също така добавя и в базата данни. Трябва ли да се тества  дали реално AC е добавен в базата, защото да върне success message е едно, а да е добавен в базата съвсем друго. В авторското решение са тествани само съобщенията и ексепшъните.  Или тъй като return type - a на метода е string, това значи че се тестват само съобщенията, които връща?

Как мислите ?

0
nasun4o avatar nasun4o 15 Точки

 Ти трябва да тестваш само метода , а не  цялата програма според мен :)

0
Ivaylo.Goranov avatar Ivaylo.Goranov 68 Точки

Според мен трябва да се провери дали обекта е добавен в базата данни, защото това е основната задача на тествания метод. Иначе може да изкараш съобщение, че обектът е добавен, тестът да излизе passed (ако пропуснеш предпоставките за exception-и), a пък обектът реално да не е добавен в базата данни.

При другите решения на изпити, които съм гледал, така беше направено. На подготовката за изпита Наско също така процедираше.

2
vaseto_v avatar vaseto_v 50 Точки

Ами и аз имам такива съмнения, но защо тогава в авторското се тестват върнатите съобщения ?!  Колебая се кое е по - правилно в случая ? :)

0
SvilenYanovski avatar SvilenYanovski 80 Точки

Интересен изпит - трябва да има и такива.

Ще ми бъде много интересно да чуя отново мнението на организаторите относно смесването на 2те групи Фундаментъл - все още ли твърдите, че такъв един изпит има смисъл да се дава на човек, който до преди няколко месеца е писал "Здрасти шарп" програми? И логично ли е след този изпит да следва нова дисциплина с лекция за ... масиви и колекции.

19
Al3xFx avatar Al3xFx 33 Точки

Моето мнение: прекалено труден и дебел изпит за 6 часа

3
kristian.georgiev avatar kristian.georgiev 15 Точки

Горе-долу колко отнема стандартно проверката на изпит от такъв обем? Виждам,че са се явили около 440 студенти. 

Питам,защото предният изпит по ООП се забави заради коледните празници, а за мен той беше първи от модул Fundamentals и нямам идея колко време ще отнеме да получим оценки след като този път няма дълги почивки.

2
verito898 avatar verito898 265 Точки

Кога се очаква да излязат резултатите ? 

0
RoYaL avatar RoYaL Trainer 6849 Точки

Видях, че има няколко коментара относно срока за резултатите, за да не отговарям на всеки по отделно ще напиша нов отговор.

Проверяването на изпитите не е лека задача. Има 438 изпита за проверяване, като за всеки трябва да се проверят различни компоненти, да се мине през няколко инструмента - за компонентно тестване и за статичен код анализ, да се прочете целия код, както и да се напише коментар.

Срокът, който съм поставил за проверяването е 20 Февруари и тенденцията е да бъде изпълнен, до колкото виждам прогреса. Което означава, че ще ни отнеме още около ден да анализираме резултати, съставим курсовите протоколи и изнесем публично оценките. Най-вероятно такива ще излязат на 22 Февруари, но е възможно и заради непредвидени обстоятелства да се забавят с няколко дни.

Поздрави,

Иван

10
iliyan.vangelov avatar iliyan.vangelov 57 Точки

Колеги, току що видях, че вече има точки от проверката (или поне при мен)

5
Ivaylo.Goranov avatar Ivaylo.Goranov 68 Точки

И при мене има оценка вече и ей тоя коментар:

Повечето неща са останали с конкретики вместо абстракции, т.е. Няма интерфейси зад тях и се приемат директно като имплементации по методите.StyleCop warning-ите не са оправени. Бъговете не са оправени. Липсва документация. Липсват по-интересни case-ове за някои тестове.Колекциите в базата не са с речници, което е в пъти по-бързо спрямо листовете. Липсва мокинг.Бонус задачата не е изпълнена.

Тоя човек май скоро не е ебал, а?.... Ебахти хейтъра... 

 

9
bacuty avatar bacuty 55 Точки

Извинявай, ако е удобно да попитам какви точки са ти дали ....?Аз от коментара разбирам, че си зипнал задачата и си я пуснал :) така, както е скелета.

2
24/02/2016 14:40:50
Mozez avatar Mozez 55 Точки

Оправи ми деня пичаго. И аз честно казано не съм напълно съгласен с рецензията имайки на предвид предни авторски решения, които нали уж трябва да са за пример, а в случая когато правиш нещата по - подобен начин ти се вземат точки и ти разказват играта....

3
24/02/2016 14:42:10
ToniBeliyashki avatar ToniBeliyashki 11 Точки

Аз имам въпрос относно условието - dependency injection навсякъде ли трябваше да има или само в контролера за да се decouple-не от командата?

0
Ivaylo.Goranov avatar Ivaylo.Goranov 68 Точки

Ако си ползвал dependency injection на други места, не се брои. Единственият начин да покажеш, че знаеш какво е това dependency injection е да го използваш в конкретно поставената задача. laugh

0
Mozez avatar Mozez 55 Точки

По принцип е хубаво да имаш на всякъде, където зависиш от "нещо" и това "нещо" може да приема различна конкретика напред във времето. Както често давания пример е с базата. Хубаво е когато очакваш база в някой твой клас, да очакваш база която имплементира интерфейс "IDatabase", например. Така си гарантираш, че дори да ти се подаде друга база данни ако имплементира този интерфейс програмата ти ще знае как да я обработва без да ти  чупи кода и да ти се налага да пипаш по него.

0
24/02/2016 15:10:08
ToniBeliyashki avatar ToniBeliyashki 11 Точки

Еми точно това съм направил по принцип. Но в коментара ми пише, че нямам dependency injection, и се зачудих дали не е трябвало навсякъде да се направи.

        public Controller(IUserInterface userInterface, ICommand command)
        {
            this.UserInterface = userInterface;
            this.Command = command;
        }

        public IUserInterface UserInterface { get; private set; }

        public ICommand Command { get; private set; }
 

0
zahariyapehlivanova avatar zahariyapehlivanova 10 Точки

Здравейте, всички ли имате дадени точки, защото аз имам рецензия, но точки не...?

0
Gesh4o avatar Gesh4o Trainer 305 Точки

Здравей,
Аз нямам нито точки, нито рецензия- предполагам, че всичко е въпрос на време! :)

Поздрави!

1
byclops avatar byclops 126 Точки

И аз имам рецензия, без точки. Мисля че в момента се зареждат данните.

1
djc_bg2015 avatar djc_bg2015 923 Точки

При мен са веднага след датата на изпита, аз лично на ооп ги видях от 5тия опит, да не случая да е такъв?

0
24/02/2016 15:37:34
djc_bg2015 avatar djc_bg2015 923 Точки

Някой друг като мен да е зипнал проекта без юнит тестовете? laugh

Ужааас :D

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.