Форум за въпроси

Изпит за НИВО 3

Изпит за НИВО 3

by Калоян Тодоров -
Number of replies: 17

Добър ден, искам да изразя мнението си по въпроса относно изпита, който се проведе днес за ниво 3. Както знаем, изпитът се провежда на две части:

1 - тест със 7-8 задачки - затворен отговор и multiple choice

2 - практическа задача.

Искам да изразя възмущението си от конкретната ситуация. Беше ни казано, че изпита е за ниво 3. Какво представляват знания за 3? От възможни 2,3,4,5,6 т.е. 5 нива, като ниво 2 е за човек, който си няма и понятие за какво става дума и 6, за човек, който усвоява материала на отлично ниво, според мен като ниво 3 се определят знания на човек, който има базови познания по дадения предмет и може би нещо повече (отново припомням че остават още 3 нива на знание над ниво 3...). В теста за НИВО 3, не стига, че присъстваше целият взет материал до момента, но и времето беше страшно малко, а също така скалите за допускане до изпит ниво 4 - страшно високи. От 7 възможни точки на теста ти трябват 5, ЗА ДА ИМАШ ПРАВО ДА ПИШЕШ ЗАДАЧАТА...както и да е, да кажем, че тестът беше труден, не напълно подходящ за ниво 3...но все пак постижим от човек, който знае поне за 4...Стигаме до втория компонент, а именно задачата. В задачата имахме да създадем три класа, един базов и два наследника, като за два от тях трябваше да се реализира голямата четворка, а също за всеки един от тях да се създадат get,set функции за всяка член-данна, и също така за всеки клас да се предефинират операторите за вход и изход, след това да се напише тестова част за проверка дали работи и да се запишат някакви неща във файл...всичко това за един час и 10 мин...Като първите 10-20 минути отиват за осмисляне на задачата, а последните 5-6 мин отиват за качване на решенията за проверка...защото иначе студентът получава 0 точки...също така нека прибавим и времето, необходимо за отстраняване на бъгове в програмата (които са неизбежни за толкова малко време...). Ние не сме програмисти с по 10 години опит, за да можем само като видим задачата и да я реализираме, трябва ни време да осмислим нещата и как да ги реализираме, защото все пак в рамките на 2 месеца сме получили ОГРОМЕН обем от знания на куп. Тези знания трябва да улегнат в съзнанието, а това става с практика. Отново припомням, че тестът беше за ниво 3...Трябва да преодолееш и двете бариери - теста и задачата, със страшно високи критерии за това дали изпитът е бил успешен, за да получиш 3 и да те допуснат да се явиш за ниво 4...

Като заключение искам да попитам, какво ще се случи с тези около 90% (ако не и повече...направих една бърза анкета с 20-30 души) студенти от явилите се, които не са успели да покрият изискванията на скалата ЗА ТРОЙКА? 150 човека на поправка септември? Ще е интересно...

In reply to Калоян Тодоров

Re: Изпит за НИВО 3

by Огнян Малинов -
Калоян Тодоров, ако си се упражнявал през семестъра ще ти отнеме 15 минути за да направиш тази йерархия от класове с всички сетъри, гетъри и голямата четворка на ръка. Също така, ако използваш Visual Studio имаш Class Wizard с който нещата стават уникално бързо.

Може ли да ми кажеш какво значи базови познания по ООП?
Доколкото виждам в изпита по теория е имало да видиш кога се генерира конструктор по подразбиране, какво е енкапсулация, да видиш няква супер лесна грешка, какво е наследяване, и какво е оператор?
Колко по-базово от това да е?

Това даже не покрива всички основни принципи на ООП...

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

Като заключение ще ти кажа да си представиш например Windows, Adobe или дори програмни езици като Ruby. След 10 години, а дори и по-малко ще се очква да реализираш такива проекти. Представи си колко по-сложно е това и се замисли дали се оплакваш адекватно?
In reply to Огнян Малинов

Re: Изпит за НИВО 3

by Калоян Тодоров -

"Aко си се упражнявал през семестъра ще ти отнеме 15 минути за да направиш тази йерархия от класове с всички сетъри, гетъри и голямата четворка на ръка." - Какво ще рече ако си се упражнявал достатъчно? Ако си писал код от малък, а не идваш от езикова гимназия е по-лесно, в университета само преговаряш и надграждаш, но дори и с честа практика за два месеца няма как да усвоиш толкова материал, ЗА ДА МОЖЕШ ДА ГО ПРИЛАГАШ ЕФЕКТИВНО( в рамките на толкова малко време).

"Също така, ако използваш Visual Studio имаш Class Wizard с който нещата стават уникално бързо." - Да, това е вид улеснение, но отново твърдя, че дори и с него, задачата не става по-лесна за реализация от човек, който се занимава с ооп от 2 месеца. И също така в някои от залите нямаше инсталирана среда Visual Studio, ами тези хора какво да кажат :Д.

"Може ли да ми кажеш какво значи базови познания по ООП?
Доколкото виждам в изпита по теория е имало да видиш кога се генерира конструктор по подразбиране, какво е енкапсулация, да видиш няква супер лесна грешка, какво е наследяване, и какво е оператор? 
Колко по-базово от това да е?" - Ако си прочел какво написах, относно теорията се съгласих - не е елементарна, но ако си е учил човек може да я вземе. Аз се възмущавам от краткото време дадено ни за реализация на втората задача и от страшно високите критерии за успешно полагане на изпита...отново припомням това е изпит за тройка, а аз лично се съмнявам, че ще има огромна разлика в дадените неща за 3,4,5, след като видях какво е за 3.



"Сега разбира се може да е сложно за някои хора да осъзнаят идеите и предмета и респективно да бъдат скъсани. Процентното съдържание няма никакво значение... Това, че са те скъсали обаче не значи нищо, освен че ти трябва малко повече време да разбереш какво се случва и да го научиш или не, всеки си избира." - Ще е сложно, ами как, ако идваш от училище, в което не си изучавал програмиране и сега за пръв път го виждаш ще ти трябва доооста повече време от 2 месеца, за ефективно усвояване на материала и възможност за качественото му прилагане в дадения времеви лимит. Но дори и да не си от такова училище, липсата на достатъчно опит е огромна пречка, както ти сам каза трябва ти повече време да го научиш...но тогава какво излиза? Че изпитът е направен, за да бъдат скъсани масово хората и да се явят септември на поправка...Не е ли малко безмислено, как мислиш? Още един недостатък на програмата.

"Като заключение ще ти кажа да си представиш например Windows, Adobe или дори програмни езици като Ruby. След 10 години, а дори и по-малко ще се очква да реализираш такива проекти. Представи си колко по-сложно е това и се замисли дали се оплакваш адекватно?" - тези проекти се пишат от МНОГО много хора, не от един човек. Хората работят в екип и им е позволено да ползват интернет, също така те са добили вече опит с практика, за това са им възложили да работят по такива проекти, така че не виждам защо го даваш като пример на начинаещи студенти :)

In reply to Калоян Тодоров

Re: Изпит за НИВО 3

by Здравко Георгиев -

Като човек, учил в езикова гимназия, който си е взел изпита от първия път, трябва ли да се чувствам специален?

In reply to Калоян Тодоров

Re: Изпит за НИВО 3

by Огнян Малинов -

Не говоря за писане на код от малък, а говоря за да си писал да кажем по 20-30 задачи по УП и ООП, толкова ми отне на мен да мога да пиша такива неща сравнително бързо.

За Code::Blocks http://wiki.codeblocks.org/index.php/Class_Wizard_plugin , ако го няма това, на ръка, което не бих казал, че е проблем.

За изпити за 4,5,6 могат да те накарат да предефинираш повече и различни оператори, да те накарат да направиш някаква йерархия с абстрактни класове, виртуални неща, полиморфизъм, да искат да направиш други функции в клавете, разбира се всичко да трябва да е добре енкапсулирано. Може и да ти дадат задача в която ти сам да измислиш как трябва да наредиш класовете. Мале а да не говорим ако трябва и да направиш някакъв Design Pattern. Та ... да има доста неща за правене които могат да се дадат и са по-сложни. Това което е дадаено е нормално лесно.

Изпитът е направен да тества знания по ООП, хората нямат знания и решението е хората да натрупат опит, и тогава да си вземат изпита. Стандартно нали? Каква е алтернативата, по-лесен изпит -> по-слаби програмисти, това по добре ли е? Общата програма има недостатъци съгласен съм, но на фона на всичко курсовете по програмиране във ФМИ са готини. Според мен преподавателите там са едни от малкото които искат да те научат на нещо реално и обръщат задълбочено внимание на курсовете си.

Ха-ха това, че се пишат от МНОГО програмисти и ползват интернет значи ли, че е лесно? Примера беше даден за да видиш нуждите на средата и да осъзнаеш, че това е нормалния старт. Ще е готино да можеш да научиш програмиране за 45 години, но тогава вече това което си научил сигурно няма да се ползва, ще е старо и пак ще си начинаещ студент.

Трябва да се учи и програмира повече и тогава всичко ще е наред.

Пожелавам ти успех.

In reply to Огнян Малинов

Re: Изпит за НИВО 3

by Георги Барбутов -

"Ще е готино да можеш да научиш програмиране за 45 години, но тогава вече това което си научил сигурно няма да се ползва, ще е старо и пак ще си начинаещ студент"

Ще е старо като C++ ли? Би ли ми обяснил защо учим език който почти не се ползва в работна среда? И не е ли по-добре да учим Java като се има впредвид, че почти 2/3 от обявите за работа са за Java програмисти?

Относно изпита наистина времето дадено за задачата беше недостатъчно.

In reply to Георги Барбутов

Re: Изпит за НИВО 3

by Огнян Малинов -
Защото това е най-близкия до машината език който ти дава пълен контрол над машината.
Програмирайки на него ти се дава възможността да разбереш какво точно се случва когато заделиш динамична памет или използваш .length например.
C/C++ имат мащабно приложение и днес, защото добре написаните неща там са по-бързи от написаните на Java или доста от другите технологии, вземи game development за пример.
Аз съм много за да учим и други технологии, но смятам, че ако искаш да си програмист трябва да имаш идея как работи паметта и важни практики в програмирането на ниско ниво => C++.

In reply to Калоян Тодоров

Re: Изпит за НИВО 3

by Томислав Николов -

От езикова гимназия - Да

Преди ФМИ не бях виждал код - Да

Не разбрах УП на време за изпита и не си го взех - Да

Взех ли от първия път ООП - Не

Взех ли го лятото с 5, като се явих с 150ish скъсани - Да

С Колко въпроса беше теста - 52ish

Каква беше задачата - полиморфизъм с около пет-шест класа, четене от файлове и предефиниране на оператори

За колко време - час и половина, с половин час по-малко време от редовния

In reply to Томислав Николов

Re: Изпит за НИВО 3

by Боян Ракиловски -

Два часа, а не един и всичко щеше да е точно за всички. Малко е времето дори и да знаеш материала, ако не си ги нацъкал конкретно задачите предварително да ги пишеш без да мислиш.  Освен това аз лично имах проблем с антивирусната програмта на компютъра, който ми се падна.