Домашно №1

  1. Ех, че нетърпеливи. Нали ви казахме на миналата лекция? След всяка лекция сме в Торонто. Няма от там да качваме, я :stuck_out_tongue_closed_eyes:

    Ето го и първото домашно. Срокът ви е до понеделник, два часа преди лекцията. Прочетете внимателно как да (не) си изпращате задачите. Изчетете от горе до долу PEP 8. За неспазване на някоя от конвенциите ще сме жестоки.

    Примерния тест можете да намерите в GitHub хранилището

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

  2. Между другото, ако може да дам мнение по един въпрос. Ще бъде много готино, ако можете поне по 1 коментар да давате за всяко домашно...т.е. някакъв feedback. Това малко или много ще improve-не нашите бъдещи домашни и проекти, защото ще си взимаме поука от грешките си, или ако е положителен feedback-а ще продължаваме в същия дух.

  3. https://github.com/fmi/python-homework/blob/master/2013/01/sample_test.py Опитай се да разгледаш какво пише в него без да навлизаш в синтактични специфики.

    Като цяло не се случва нещо особено сложно: При стартиране на теста, той зарежда(import-ва) решението ти(solution.py файл в папката, в която се намира теста) и прави няколко извиквания на функцията ти. Проверява дали тя се държи по очаквания начин в тези "сценарии".

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

    П.П: Не разчитай, че ако ти минава sample_test-а ще имаш пълен брой точки. Те проверяват само интерфейса и малка част от функционалността. Може да си допуснал грешки, които да се хванат от тестовете, с които ще се проверяват домашните, а те би трябвало да са по-изчерпателни и вероятно писани след забелязани грешки сред предадените решения ;) Не е лоша идея сам да пишеш или допълваш тестовете, които ползваш, когато сметнеш, че е необходимо. Също така, ако не греша споделянето на тестове сред другарчета е позволено и дори се окуражава.

  4. Говорейки за тестове, се сетих. Ако случайно някой вече знае как работи този sample_test.py или успее да разбере, може да напише свои тестове. Нашето е просто sample, за да ви увери, че не сте допуснали наистина фундаментална грешка. Далеч не покриват всички case-ове. Оценяването става с по-подробни такива, които стават публични след това.

    Можете да напишете свои тестове и да ги качите във ваше GitHub хранилище, да форкнете нашето или просто като Gist. Можете свободно да си разменяте тестове, което ще ви помогне да си хванете грешки в решението, преди нас.

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

Трябва да сте влезли в системата, за да може да отговаряте на теми.