Loading...
veselinsavov avatar veselinsavov 219 Точки

[Exam] OOP Exam - 1 March 2015 - Впечатления от изпита

Здравейте колеги,

Какви са ви впечатленията от изпита ?

При мен се случи това, че judge ми изкаравше това "Unhandled Exception: System.NullReferenceException: Object refe...", опитах се да го оправя, но не стана. Отсаваха около 40,50 мин и реших да оставя задачата до където съм я решил и си тръгнах с 0 точки :)). Преди малко видях, че изпита е пуснат за практикуване и реших да си търся грешката, качвам пак същия архив, който съм качил последно на изпита и judge изкара 62/100 точки coolsealed!?! 

Edit: намерих си грешката явно не съм качил правилния архив... доста кофти на поправката ще внимавам :(

Тагове:
4
Advanced Level: Front-End 01/03/2015 19:33:39
goodlifeinc avatar goodlifeinc 31 Точки

На мен ми хареса задачата. Онлайн съм и подготовката ми е базирана само на видеата, които се качват. Днес за около 3 часа бях написал задачата, но до края не успях да изкарам звездичките над и под BestAnswer-a, което доведе и до 62/100 точки.. Като цяло, много гадно се проверяваше аутпута на конзолата с очаквания такъв от джъдж, особено след като набиеш 20 реда каманди. 1 час преди края не бях събмитнал решение, и когато го направих - 0 точки. Грешката - No asnwers != No Answers. 
Трудността на задачата не беше голяма, а и си беше върху първите 3 лекции, както екипа беше казал още в началото на курса, а и неколкократно го повториха по другите лекции :) 

0
01/03/2015 23:39:16
velio84 avatar velio84 241 Точки

Аз лично не съм доволен от себе си. Едва накрая събмнитнах решение с 0 точки в judge. Оплетох се от самото начало с някакви глупости и нищо не работеше като хората - затрих всичко и почнах наново. Но вече беше късно, бяха минали повече от 3 часа, нямах време и се бях изнервил.

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

А най-голямата простотия е да гоним тия безумни аутпути до всеки 1 знак, за да се вземат точки от judge-а.

Както и да е - ,,на есен с песен", на поправката залата се очертава пак да е пълна :)

4
01/03/2015 23:19:25
boyanov avatar boyanov 65 Точки

За мен (и много други) времето беше крайно недостатъчно. Много време замина докато разбера задачата, много време замина докато я напиша и много време замина докато оправя грешките. Ако имах още 1 час всичко щеше да е тип-топ :\

0
veselinsavov avatar veselinsavov 219 Точки

*************************************
Това май е "Best answer" ! :D
*************************************

 

3
01/03/2015 23:43:45
zerefel avatar zerefel 70 Точки

Откъм ООП първата част от задачата беше елементарна. За мен, форматирането, което се изискваше за judge-a, беше отвратително. Явно съм супер смотан и 2 часа не можах да си оправя формата на резултата при 99% работещо ООП. Яд ме е, защото загубих време за нещо, което е безсмислено като цяло за ООП знанията. Не ми остана време за втората част, която беше лесна и ако беше тя, вместо броене на тиренца и буквички и "таманене" на всяко едно редче, изпитът щеше да е къде по-приятен. Изкарах 12/100.

До поправката! :D

ПП: За 1 променен ред код взех 62/100 точки.

2
02/03/2015 17:09:49
Wintersnow avatar Wintersnow 7 Точки

Половин час пиша, иии тока спре. ЛЮЛИН ОБИЧАМ ТЕ kiss 

Както и да е. TLDR:  Задачата беше написана чисто и красиво, евала на автора, условието беше ясно, интерфейсите готови, а от командите, най-трудната беше почти написана, RegisterCommand класа имаше цялата логика, която ни беше нужна за задачите. (Взимаш параметри от this.Data[], правиш там 100 проверки, хрвърляш още толко ексепшъни, и добавяш нов обект в листа на форума). Слава богу единствения тест който ми гръмна го имаше два пъти в нулевите примери. Подготовката ми за изпита бяха двата лаба, домашните и най-вече отборния проект. С LinQ, малко КпК и http://text-compare.com/ времето отлетя. Честита баба Марта, успех на ръчните and mtfbwy.

1
DimitarYotov avatar DimitarYotov 75 Точки

Сигурно на лабовете се показват и обесняват доста интересни неща .... но не всеки може да присъства ... 

3
Wintersnow avatar Wintersnow 7 Точки

Не е толко до обясненията колкото до практика и разнообразие. Лабовете са отделни проекти, нещо различно от изпита и домашните. Хората свикнаха да им дават еднакви условия от първите нива, и ето сега се видя. Минахме от Езио прасето на Пешо спамера и една голяма част от студентите дори не са пуснали скелета.

Ако не се бъркам условията на лаба ги има в раздела за курса, все пак сме "отворена система на образование", може да се пусне някоя друга тема и да се обсъждат решенията им, няма никой да се скара. 

0
02/03/2015 00:31:10
DimitarYotov avatar DimitarYotov 75 Точки

Ами съгласен съм с това че свикнахме с еднаквите решения ... можеби трябваше да се показват различни задачи. От една страна съм напълно съгласен, но все пак нз какво пречеше да се направи видео на лабовете. Проблема с лошите резултати си е в нас, все пак има хора и с 100т. Защото изобщо не разбирах какво и как трябва да стане, мислех си - писах домашни, проверявах домашни, решавах задачи(изкарвах точки), ще се пробвам. Сега ме е яд че нямам и 12 точки и имам чувството че съм си губил цялото време ... по-демотивиращо няма как да е :D

2
nedjo avatar nedjo 53 Точки

Само не разбрах защо във форума имаше две полета за отговори. Лист от отговори имаше във всеки въпрос, което е нормално и така трябва да бъде, защото е нормално отговора на даден въпрос да се ръга там, но защо беше листа с отговори в самият форум, не можах да го схвана. За какво служи? Утре се надявам да го схвана и разбера по-добре след решението на задачата от авторите. Определено не съм доволен от 12/100.

0
zerefel avatar zerefel 70 Точки

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

0
Filkolev avatar Filkolev 4482 Точки

За този изпит нямах време да се подготвя подобаващо. Всичко на всичко съм решил една изпитна задача и гледах някакви подготовки (което в никакъв случай не е ефективно).

Напълно ще се съглася, че курса не беше добре организиран. Но специално за изпита не мисля, че може да се оплакваме. Имахме само една задача при това не особено сложна. Имаше да се напишат няколко класа без каквото и да било особено по тях. Всичко, което ни трябваше да знаем за ToString() овъррайдите беше подробно описано; единствено борба да е имало с някакви празни редове, както на мен ми се случи заради AppendLine метода. Всички команди, които трябваше да имплементираме, бяха добре разписани и беше пределно ясно какво трябва да се направи - правиш клас за еди-коя си команда, проверяваш поред за всяка една от възможните грешки и накрая имплементираш самата команда. Една-единствена уловка имаше, която не беше хваната в нулевите тестове, и това беше условието кога един въпрос се счита за отворен, за това си изгубих около час докато го открия.

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

0
aklassanov avatar aklassanov 3 Точки

Напълно съм съгласен с твоето мнение.Задачата си беше интересна, но като резултат от обучението на курса е нещо като като да учиш буквите после думите и накрая да правим изречения. Е изпита беше като да минем от буквите направо на изреченията.Факт е че на повечето хора е нужно известно време да се осмисли информацията за да се приложи ефективно.

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

Една препоръка към екипа: казано е в условието че даден клас не се редактира пък се оказа че трябва да се редактира.Ако е така е добре да се напише какво точно може или не може , това е допълнителна предпоставка за губене на време и полемики относно обхвата на "разрешените" промени които по условие са забранени :).

Поздрави

0
04/03/2015 12:52:59
mihayloff14 avatar mihayloff14 824 Точки

Аз мисля че изпита беше доста добър и интересен поради две основни причини:

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

Второ, условието и заданието беше доста добре описано и липсваха имплицитни детайли по задачата. Фил спомена за една част от задачата, която беше спестена в условието, но с оглед на това, че на някои от предните изпити имаше такива задачи, където още в нулевите тестове имаше разминавания с това, което е указано в условието, съм доволен. Друго много добро улеснение беше класът Messages, който съдържаше всички видове съобщения, които се използват и ме улесни доста.

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

Относно самия курс:
Вярно е, че си е интензивен и натоварващ, особено лекциите по 4 часа и може да има подобрения в тази насока, но не мисля че това би подобрило чувствително резултата на колегите, които твърдят, че ако са имали повече лекции са щели да се справят по-добре, защото лекциите са едва 10% от цялото обучение, както ни обясниха в C# Basics, а останалите 90% са усилена работа в къщи, писанe на код и решаване на домашни и упражнения. Склонен съм да вярвам, че програмиране не се учи с гледане или четене, а с писане и правене :)

Затова ако ще критикуваме курса, то моето предложение е да има повече упражнения, а не повече лекции.

1
02/03/2015 10:38:37
Filkolev avatar Filkolev 4482 Точки

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

2
Plami avatar Plami 373 Точки

Аз лично реших да повторя второ ниво с идеата да науча по-добре ООП и смея да кажа, че е така. Но поредната смяна на формата на изпита без никакаква подготовка според мен е напълно нерелевантна. И сега някои ще кажат ама то в истинската работа е така - да, вярно е, но тук сме за да се научим, а не да правим експерименти. Аз лично мога да сравня обучението и с други академии и мога да кажа за пореден път, че тук по-никакъв начин не получаваме качествено обучение, дават се базови знания в самия курс, а на изпита се иска да се решава реален проблем в реалната работа на junior (пък даже и за developer) и единственото, което получаваме е поредното разочарование и загубата на стимул за каквото и да е учене.

Освен това лично за мен тази липса на C# 2 част остави доста голяма дупка в нашите знания и сега в крачка все се опитваме да наваксаме с лекциите на Телерик, но както винаги времето ни притиска. Както каза един познат май е по-добре да се върнем и да започнем отново от нулево ниво и да зачеркнем изминалите 3 нива изпълнени с тормоз, стрес, разочарования, недообмислена и недообработена програма за обучение.

7
02/03/2015 15:26:05
RoYaL avatar RoYaL Trainer 6849 Точки

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

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

Имаш пропърти на форума, което е IsLogged и пропърти CurrentUser, и колекция Users. Какво трябва да направиш като искаш да се логне потребител - ами да го намериш в колекцията Users, дали съществува, ако да - да смениш IsLogged на TRUE и CurrentUser на този юзър.

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

За BestAnswer трябва да използваш проверка с "IS", както и за това дали си Администратор.

Би трябвало всичко това да е учено. Да е изучавана работата с колекции (още в начално ниво, foreach-и, ламби...). Да е изучавано достъпването на пропъртита от обекти и промяната им. Да е изучавано имплементирането на интерфейси и наследяването на класове (public class LoginCommand : IExecutable, CommandAbstract), да е изучавано дали даден обект е инстанция на даден тип (answer is BestAnswer).

Смятам, че не е нужно да се решава задача за правене на Фото Албум или Книга за Гости, за да може човек да се справи със задача, която изисква да се направи Форум.

4
quickben avatar quickben 966 Точки

7
Plami avatar Plami 373 Точки

Да, съгласна съм, че "в това да станеш добър програмист е да можеш да решаваш проблеми на база на теоретични познания, които имаш, а не на база на това колко подобни проблеми си решил". Но повечето от нас все още сме "туристи" в програмирането и в крайна сметка до преди месец повечето не са знаели за принципите на ООП и какво въбще е ООП. А през самия курс се фокусирахме основно върху генериране на конструктори, пропъртита и override-дване. Аз лично харесвам задачата на изпита, но според мен мястото и беше за Lab-а, а не за самия изпит :) 

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