Софтуерно Инженерство
Loading...
+ Нов въпрос
Yulia avatar Yulia 1343 Точки

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

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

- Защо се случва така?
- Как оценявате представянето си на изпита? Вярно, че автоматизираното тестване е едва 50% от оценката, но е странно да има толкова много хора с нулев резултат.
- Споделете как се подготвяхте за този изпит, учехте ли изобщо?
- Какво ви помага най-много: лекции, домашни или подготовките за изпита?
- Какви бяха очакванията ви, оправдаха ли се? 

Въпросите са към всички, независимо дали имате максимум точки или не. Просто наистина се изненадвам от това, което виждам в judge-а като резултати.

Според мен този изпит беше лесен - почти всичко беше същото по аналогия от подготовките. Останалото беше валидации и съвсем малко мислене. Тук по-скоро времето изтича много бързо и не е достатъчно, за да помислиш за най-забутаните тествоте какви може да са. Явих се още в сряда на изпита и по-скоро се надявах на знанията си по JavaScript, а не на ООП като принципи. Мотивация не ми липсваше - от JavaScript Basics недоволството си имам fuel още...

Както обичайно - не отделях време за гледане на лекциите, но някак си в тези 3 седмици дойде разбирането за някои наистина важни концепции. Преди не знаех как точно става разделянето на модули, но успях да го упражня с домашните. На моменти много се ядосвах, че правим безсмислени неща (моля, стига сте давали shapes за упражнение по ооп!!! x.x това е най-скучната задача евър), но чрез ООП като цяло разбрах как работят някои патърни, как може да си напишем собствена библиотека, по-лесно ми е да разбера backbonе и knockout сега. Дори като пиша нещо друго на JavaScript, се хващам, че пиша класове, докато преди не го правех. 

И в тази посока мога да добавя, че който не харесва JavaScript, следващите 2 курса за него ще са голяма мъка... как ще се справите с това? :) Каква е мотивацията ви занапред?

15
JavaScript Advanced 17/11/2014 14:07:53
nakov avatar nakov SoftUni Team Trainer 5459 Точки
Best Answer

Колеги, аз също съм силно разтревожен, че има прекалено много нули на последните 2 изпита, особено на последния. Явно някъде бъркаме. Постарахме се да направим 2 подготовки за изпит, показахме дебъгера и на двете, но 90% от хората на изпита не ползваха дебъгер. Аз лично без дебъгер силно ще се затрудня да направя тези задачи.

Това, което забелязвам, е че хората не практикуват достатъчно. Вече публично се говори как 90% преписват домашните, как на изпита за пръв път разбират какво е JS ООП и подобни. Явно нещо се изгубва мотивацията, лека полека.

За да подобрим подготовката за изпитите и научаването на учебния материал, въвеждаме нов тип учебни занятия: labs.

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

Вече направихме един пробен лаб в JS Basics курса от ниво #1 и има ефект. Залата беш пълна, хората пишеха, стараеха се, помагаха си. Научиха много.

Сматяме форматът на лабовете да е следният:

  • 4 часа, 2-3 задачи + взаимопомощ + публично решение
  • Първата задача е много лесна за 15 минути
  • Който я реши, започва да помага на другите
  • Когато всички решат първата задача, се пуска втората 
  • Втората задача е продължение на първата
  • Който реши втора задача, започва да помага на останалите
  • Третата задача е продължение на втората и се пуска след втората
  • За всяка задача се дава някакво време за самостоятелна работа, след което се разрешава помощ от асистенти и колеги
  • Накрая лекторът решава наживо всички задачи, за да може всеки да разбере как се решават
  • Проверката е предимно през judge системата
  • Събраните точки от lab се прибавят към изпита с тежест 5-10% (без прехвърляне на максимума)
    • Ако примерно имаш 100 точки от лаб, те се скалират до 10 и се прибавят към изпита
    • Ако на изпита имаш 50/100, ти се прибавят още 10 и ставаш с 60/100
    • Ако на изпита имаш 100/100, си оставаш със 100 (не се прехвърля максимума)
  • Лабовете засега ще са само за присъствените студенти, защото те по концепция трябва да получават повече value от онлайните, защото плащат повече за обучението си
  • Онлайн студентите не са прецакани откъм точки, защото могат да изкарат същия резултат като присъствените, ако си направят добре изпита.

Лабовете вече започнаха. Ще се стараем да правим поне по един лаб във всеки курс. Възможно е да има промени по формата и регламента, докато намерим кое работи най-ефективно.

15
17/11/2014 13:20:35
Matrix avatar Matrix 1087 Точки

Само нека са вечерни (след 18), щото през деня, някои дори и да искат да дойдат - няма как...

 

По един лаб на курс ли се предвижда, или всяка седмица?

2
17/11/2014 14:36:15
mihdimitrov avatar mihdimitrov 45 Точки

Ще се записва ли видео на този лаб? 

2
tosilv avatar tosilv 69 Точки

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

5
RoYaL avatar RoYaL SoftUni Team Trainer 6883 Точки

Аз не съм сигурен, че през този курс учихме тънкостите на JS OOP. Всички тези валидации и прочие неща ми се струват повече като boilerplate code и запълване на времето. А примерите (shapes) наистина не водят до много развиване на градивно мислене в обектно ориентирания свят.

Изпита също не беше нещо особено. В интерес на истината не се подготвях. Не събмитнах нито една подготовка в джъджа и не знаех как се пуска JS OOP code вътре. Съответно и почти не четох условието, нито пък дадения ми код и това което НАЙ-МНОГО ме затрудни беше, че на задачата днес Cruise си има дефолтен transport и че последната функция трябва да се изтрие преди да се пусне кода.

Това на което разчитах този изпит беше: Генериране на кода за класовете, опита ми от изпита по C# OOP и знанията ми по програмиране като цяло. През живота си не бях писал JS OOP. Отидох с очакванията, че ще изкарам някакви 30-40 точки, понеже бях убеден, че ще има много завъртени тестове. Не се оказа така. От генерирането на класовете и toString()-а - 50 точки. От филтриращата функция, която просто сортира масив от обекти по пропърти - още 50 точки. След като разбрах, че трябва да се трие тестовата функция ми трябваха два събмишана - за първите 50 и за вторите 50 точки.

След като вече бях приключил и излязъл, чух по едно време в залата все едно се води лекция. Открехнах вратата и слушах как Наков говори, че трябва да се дебъгва, да се трие функцията в края и т.н. След като общо взето най-тънките моменти бяха обяснени, нямам обяснение защо има хора с 0 точки. Може би най-вероятно с преподаването не е успяно да се постигне развитие на мисленето в ОО света у всеки. И това по-скоро не се е случило още на C# OOP от колкото на текущия курс.

P.S.: Продължавам да не харесвам JavaScript, Юле :D

13
15/11/2014 23:14:38
HPetrov avatar HPetrov 822 Точки

Аз доста се позабавлявах на този изпит. Доволен съм от резултата си имайки на предвид минималната ми подготовка за изпита включваща ходене на 1 подготовка и писане на няколко класа колкото да разбера как се случва. Въпреки, че не хванах пълния броя тестове от 2 неминати единия се дължи на механичното ми писане на моменти без да се замислям много когато трябва :)

1
rafatpc avatar rafatpc 52 Точки

Задачката беше интересна, признавам. Но условието? Сега разбрах, че условието ми е коствало 30(40) точки.

Цитирам текста от условието:

"Implement Additional Commands

Implement the following commands:

  • filter – filters all travels by type (unless specified "all") and in a specified price range (inclusive). Returns the travels sorted by their start date in ascending order, then by name (always unique) as secondary criteria."

И сега един ред от output-a на тест #6:

"No results."

В цялото условие - 4 страници, изчетени ОТ-ДО, няколко пъти, не видях, че трябва да се изкарва подобно съобщение.

Това ми е коствало 30 точки. Другите 10 точки идват от сортирането, с което щях да си поиграя и щях да разменя местата на a и b.

Другите 20 точки, които не взех, са моя грешка, която щях да видя, ако бях стигнал до КПК-то, но уви - нямах време, защото изгубих 1 час в лутане из кода и чудене защо имам само 40 точки.

3
15/11/2014 23:44:04
RoYaL avatar RoYaL SoftUni Team Trainer 6883 Точки

Просто ползвай formatTravelsQuery метода, той връща това No results. Този метод е даден с engine-a:

 

            function formatTravelsQuery(travelsQuery) {
                var queryString = "";

                if (travelsQuery.length > 0) {
                    queryString += travelsQuery.join("\n");
                } else {
                    queryString = "No results.";
                }

                return queryString;
            }

 

-----

 

Надолу е моят код:

            function checkType(travel, type) {
                if (type == 'all') {
                    return true;
                }

                return travel.getType() == type;
            }

 

            function getTravelsByPrice(travelType, minPrice, maxPrice) {
                var i,
                    result = [];

                for (i = 0; i < _travels.length; i++) {
                    if (checkType(_travels[i], travelType) && _travels[i].getPrice() >= minPrice && _travels[i].getPrice() <= maxPrice) {
                        result.push(_travels[i]);
                    }
                }

                return result;
            }
// тук, който е писал JS сигурно е използвал filter/map/reduce, ама това не е моят стил просто :D

            function processFilterTravelsCommand(command) {
                var travels = getTravelsByPrice(command['type'], command['price-min'], command['price-max']);

                return formatTravelsQuery(travels.sortBy('_startDate', "_name"));
            }

1
15/11/2014 23:58:17
rafatpc avatar rafatpc 52 Точки

Има го, да, вече ще знам. Но пак има грешка от страна на софтуни тук.

Кобрата в момента е на първо място, ако трябва утре ще пиша обяснения защо. :)

3
nakov avatar nakov SoftUni Team Trainer 5459 Точки

Да, липсата на фразата "No Results" в условието на задачата и в примерните тестове, е слабост в условието на задачата. Само по-любопитните са разгледали кода и са видяли метода за печатане след филтрация. Ще помислим с колегите дали можем безопасно да променим тестовете, така че в изхода да няма "No Results". Не знам дали е възможно, но ще пробваме.

2
Tatyana avatar Tatyana 99 Точки

Юле, темата е хубава, полезна! Но виждам отговорите само на отличниците. И като изпечена вече тройкаджийка по ООП ще напиша и аз нещо. 
Никак не ми е весело да виждам на втори пореден изпит като краен резултат 0 точки. И в същото време на втората задача по C# - ООП имам 95 точки от ръчно оценяване. 

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

Системата на малко на брой, но сложни домашни, на нерешаване на никакви задачи на лекциите, а само бледи примерчета - все повече ме обърква. И сега при проверката на домашните открих, че не съм сама - на второто домашно проверих 3 абсолютно еднакви домашни, ама абсолютно. Не проверих от кого точно във форума са преписани, има ли значение.

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

Нека ви опиша, много безрадостно е: на първото проверено домашно от тема 4 - в index.html пише следното: src="libs/require.js" data-main="scripts/app" , папката с require.js се нарича lib , а вместо app.js файлът е main.js. Човекът, дори и като преписва, не знае какво точно прави. Второто домашно е още по-трагично, в него изобщо няма index.html. Не знам, освен да заплача! А на третото колегата просто беше наблъскал в една папка два варианта на преписани домашни, имаше файл index.html и todo-list.html, както и две папки - script и scripts, където се криеше всичко останало. Единият вариант, естествено не тръгна, защото някой трябва да промени имената на папките, където е необходимо - но къде ли???

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

Искам да пиша сама кода си, а не да го издирвам в Интернет, да знам че пиша вярно и коректно. И не да пиша 3 дена и накрая все пак да препиша домашното, защото просто не тръгва или не съм сигурна как да го напиша. Не съм само аз без 1 ден работа като програмист, но с огромно желание да се науча. И при добро и настойчиво обяснение нещата ще станат. Познавам поне 1 човек, който не блести умствено, но с подходящо обяснение се справя блестящо. :)

30
RoYaL avatar RoYaL SoftUni Team Trainer 6883 Точки

Здравей Татяна,

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

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

В края на деня е важно дали си извлякъл нещо полезно от пребиваването си в СофтУни. Нито точките, нито вярно направените домашни имат значение.

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

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

Ако системата като вече ясно изградени правила не ти позволява да постигаш това, което искаш - а именно, например, да знаеш дали кодът ти е верен и качествен, намери алтернатива, с която да го постигнеш. Нека ти предложа две. Решаваш си домашните, отиваш в СофтУни - дали по време на вечерните лекции или през работното време на университета - намираш някой лектор и почваш да го разпитваш. Първо, че това им е работата. Второ, че на хората им харесва да говорят на подобна тематика и трето - за теб е важно. Няма да ти се откаже. Другият вариант е - http://codereview.stackexchange.com/

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

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

Така, че - вземи се в ръце, както и инициативата в тях и смело напред и нагоре!

 

11
16/11/2014 14:46:49
Plami avatar Plami 376 Точки

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

6
XmUrF avatar XmUrF 362 Точки

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

Задачите за домашно наистина се преписват поголовно. На хората определено им идва нанагорно всичко това. Сроковете са кратки, домашните се пишат в последния момент, а за капак крайните срокове се падат все в дни с лекция, така че хората преписват, все пак това са точки. И аз проверявам домашни и гледам, ми то се прави буквален копи-пейст от форума, те хората вярно даже не знаят, че има index file в домашното. Да не говорим и че понякога от копи-пейста форматирането и табулацията малко се развалят, даже и това не е оправено! Но те и задачите вече са толкова комплексни, че човек не може да чопне само определена част, или копираш всичко, или си правиш труда да разбереш как работи схемата и след това вече така или иначе можеш да си го направиш сам.

И аз се дразня на моменти и почвам да си мрънкам, ама все пак каквото е за мен, това е и за останалите. Щом другите се справят, напъвам се и аз и така :). Наков беше казал, че се учи много и особено 2-ро и 3-то ниво е много трудно. Беше казал и че малко хора изкарват до края. Тук в това отношение е по-добре от Академията, поне имаме поправки, но за останалото се оказва много прав.

2
16/11/2014 19:23:09
Matrix avatar Matrix 1087 Точки

"...чрез дискусия да открием къде са проблемите за постоянно понижаващите се общи резултати (по мои наблюдения, дано греша).

- Защо се случва така?"

Не смятам, че резултатите са ниски и то за дебела материя като ООП и то в контекста на език като JavaScript. Не съм видял задачата от сряда като трудност, но по мое мнение, днес имаше толкова много нули, просто защото хората не можаха да зацепят че модулът им трябва освен Destination, да върне и останалите им класове... Което принципно дори и да не се хване още в самото начало, когато нулевия тест изгърми и се види че има създадени само Destination-и, то още при първото дебъгване няма как вече да не се хване... "Лекцията", за която говори Роял е момента, в който Наков вече не издържа да гледа мъките ни и се качи на катедрата, и беше направо втрещен, че за n-ти път трябва да ни напомни, че трябва да си дебъгваме кода, даже и нагледно показа как това се прави...  Принципно досега винаги съм си мислил, че се бъзика затова как не използваме дебъгерите, обаче като го видях Наков днес, изобщо не си мисля, че е бъзик и явно има причина да го повтаря вече толкова време...

Друго нещо, което ми прави впечатление е, че с всеки изминал випуск, трудността на задачите се покачва... Което е хубаво, тъй като това значи, че и нашето ниво също не стои на едно място и се налага да се измислят по-засукани задачи, така че да ни затрудняват на изпита, а не да си тръгваме всички с по 100/100... На първия си изпит по ООП имах просто да си опиша правилно и наследя класовете, да напиша няколко toggle метода и накрая просто да си наследя toString-а, форматирайки по супер елементарен начин резултата си в атоматизираната система. А тука още само като ги видях датите в стринга на нулевите тестове и ми стана ясно, че ще бера ядове... Не че ми остана някакво време за тях, но със сигурност трябваше да се направи нещо повече от това просто да кажа "+ getStartDate()"...

"- Как оценявате представянето си на изпита? Вярно, че автоматизираното тестване е едва 50% от оценката, но е странно да има толкова много хора с нулев резултат."

"- Какви бяха очакванията ви, оправдаха ли се? "

Като за 3 седмици учене на JS ООП и като за първо явяване на такъв изпит оценявам представянето си като много добре... Научих си уроците от C# ООП - да не се офлянквам излишно с глупости, а този път отделих повече време за самото ООП, така че разчитам на повече точки от ръчната проверка...

 

"- Споделете как се подготвяхте за този изпит, учехте ли изобщо?

- Какво ви помага най-много: лекции, домашни или подготовките за изпита?"

Определено най-най-много ми помогнаха подготовките за изпита... Благодаря на трейнърите, че този път не бяха ден преди изпита, та имах възможност обстойно да ги прегледам, и в общи линии те ми бяха най-полезни... Също така за пръв път прекарах повече време в четене на статии и гледане на JS OOP примери в интернет, отколкото да гледам видеата...

Мога да кажа и какво доста сериозно ми пречи и какво ще ми пречи и в следващия месец - решението ми да се запиша за Unity 3D курса... Безкрайно ми е интересен този курс, обаче в комбинация с бачкане, JavaScript OOP + бъдещите JS Апликации и паралелно с това и важния КПК курс, просто не го виждам как ще стане...Толкова дини под една мишница, на финала може да посчупя някоя и друга... КПК курса засега откровено си признавам, че направо съм го оставил,  нито имам време видеата да гледам, нито домашните да си предавам (добре че изпита му не е тая година)... Ма като гледам и 7те теми, които се мержелеят във форум раздела му, май не съм само аз така... Като мине курса по Unity 3D ще се мъча някак си да наваксвам по празниците, пък накрая квото стане... Както каза Кобрата - "продължаваме напред!"

 

EDIT:

"И в тази посока мога да добавя, че който не харесва JavaScript, следващите 2 курса за него ще са голяма мъка... как ще се справите с това? :) Каква е мотивацията ви занапред?"

Справянето с това се усвоява с времето и житейския опит - а именно, че в този живот на човек му се налага да учи или да се занимава с неща, които не винаги му харесват... За каква допълнителна мотивация става дума? При положение, че JS в момента е един от най-използваните езици и е сред топ на най-търсените, да седим и да се чудим дали да го учим или да се тюхкаме как не бил като "културните" ми се струва като повече от излишно... То и английския не ми харесва като език (точно като JavaScript-а е: едно очакваш, че се пише когато го чуеш, пък излиза съвсем друго), ама какво да се прави че е най-използвания... Също като JS - трябва да се хване и да се научи и толкова.

7
16/11/2014 03:56:21
MartinBorisov94 avatar MartinBorisov94 52 Точки

Обикновенно не пиша във форума, но сега ми хареса твоята тема и реших да понапиша някой ред (не обичам да пиша празни приказки само за 5% бонус, това е причината ако някой се чуди, защо не пиша във форума). Тенденцията за падане на резултатите на изпити и на мен ми прави впечатление и се чудя изпитите/ материята става много сложна или ние вече не сме толкова мотивирани. Както на предишното ООП така и тук изкарах малко точки. Какво ми прави впечатление. Въпросните домашни, които се дават на мен ми отнема супер много време да ги разбирам. Обикновенно и в първото ниво на всеки нов език за първа домашна гледах чужд код за да започна да пиша и на там домашните си ги пишех сам. На изминалите 2 курса от 2 ро ниво всички домашни съм ги писал без реално да знам какво пиша. Най- голяма полза съм имал от решаването на примерните изпити. Там голяма част от върпосителните ми се изясняват. Преди пишехме по 10/15 лесни задачки сега по  1/2 сложни за домашна. Все си мисля, че предишната практика беше по- добра.


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


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

9
zontak avatar zontak 457 Точки

За мен този изпит си беше трудничък... Домашните последните две задачи ми се сториха толкова не свързани с ооп, че трябваше да карам по скилнатия ми съквартирант да ми обяснява а и даже да ми диктува, как дафак тази задача да я напиша така, че поне малко да заприлича на ООП. Накрая взех задачата от Цецо, защото започнахме да я пишем по такъв извратен начин, че неможах да я довърша сам.. Подготовките от изпитите си ги реших и пак се поиздъних на изпита.. Вече ще се явявам само на първия изпит..явно там е цаката на успеха.. ( колкото и да не са удобни седмичните дни) А колкото до темата с дебъгването.. Какво правите хора, че да ви трябва дебъгер за ооп? Какво може да се сбърка? Това според мен не е някоя страшна и завъртяна логика, че да се бърка и да не се знае кое от къде идва... Извинете ме ако има правописни грешки.. и за това, че не съм форматирал текста..просто пиша от телефона и е неудобно за каквото и да е.. 

2
XmUrF avatar XmUrF 362 Точки

На мен не ми стигна времето. Половин час преди края на изпита все още имах 0 точки(въобще не бях събмитвал нищо) и бях почнал сериозно да се притеснявам :). Четири часа хич не са малко, пък вчера толкова бързо отлетяха :). Няма нищо трудно да направиш класовете и съответните функции/методи, трудното е да разбереш вече написания код и да навържеш нещата.

И на мен ми отне доста време докато зацепя аутпута с тоя Cruise и дестинациите в Excursion. Накрая не успях да си направя сортиращата функция, не ми стигна времето. Почнах да правя, филтрирах по тип и до там.

0
16/11/2014 11:48:38
Yulia avatar Yulia 1343 Точки

Всъщност, от самото начало на курса се опасявах, че това няма да приключи добре за повечето от нас. Все пак пропуснахме цял курс за работа с DOM и UI, a домашните бяха точно такива, заради което човек трябва да инвестира много време, за да разбере как да го направи това, а не да научи самото ООП. Но вече учим такива неща, че няма как да имаме по 15 малки задачки - вече правим домашни-проекти, изпити-проекти и ако не можем сами да си разделим задачите на под-задачи, няма кой да го направи. И това не значи, че като предаваме домашно - то трябва да е непременно работещо на 100% и ако не е така, то дай да препишем от някой, нали... колкото-толкова. Това, че не са изпълнени всички точки от задачата, не значи, че си без домашно. Задачата с TODO листа, например - я направих без капка ООП - защото просто не ми остана време, но все пак се постарах да направя нещо и предпочитам това да покажа. 

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

Тук системата е различна - почти никой не отпада, има поправителни изпити. И може да се мине нивото без един взет изпит. И това е чудесно, защото не всички наистина могат да си позволят да са добри във всичко - и СофтУни "пази" хората, които просто са добри в други неща и за тях има място в индустрията - хора, които вече са си намерили работа, но са далеч от Web... или обратното: хора, които са добри с Front-End, но алгоритмичното мислене има нужда от тренировка. Хора, които сега изгарят от кеф по Unity3D или им върви много добре системната администрация. Може би е нормално в това отношение те да не си дават зор да изкарат висок резултат на даден изпит (както аз не исках да уча по PHP... и все още не искам :D).

Но както каза Ванката (Royal), за да се вземе изпита са необходими просто общи познания по програмиране.

И малко внимание, способност за ориентиране в даден код, да се разгледа внимателно енджина, за да се ползват вече написаните функции. Да се чете внимателно условието (и коментарите, особено ако пише, "Remove all below code before submitting to the judge system!").

И майната му да дебъгването на този изпит - console.log(err.stack) казва всичко! Всичко всичко всичко - къде гърми, на кой ред и каква е грешката. Не случвайно го имаше в скелета закоментирано.

От себе си лично очаквах максимален резултат (който в крайна сметка за себе си постигнах, но след като изтече времето за състезание xD). Този курс се постарах повече от обичайно и очаквам това да се отрази положително и на крайният резултат. Но най-интересното тепърва предстои :)

4
16/11/2014 13:04:11