This repository has been archived by the owner. It is now read-only.
Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
23 lines (14 sloc) 2.93 KB

Какво трябва да съдържа проекта

Задание

Нужно е да го пишете, само ако сте си измисляли сами проекта.

Очевидното: код.

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

Unit тестове

Хубаво ще е тестовете ви да покриват възможно най-голяма част от кода и разклоненията в него. Също така нека са поставени в отделни класове (файлове) в зависимост от логичеката структура на проекта ви.

Документация

Всъщност докуементацията не е задължителна. Ако смятате, че кодът е достатъчно самоописателен — не се тормозете с обемна документация, кратко описание за ключовите класове/функции ще бъде напълно достатъчна. И все пак смятате, че на четящия кода ви ще му бъде нужен някой и друг docstring, опитайте се да бъдат максимално полезни за четящия и да казват същественото, а не само това, което може да се види с един поглед в кода.

Оценяване

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

  • 50% от точките, за вeрен и отговарящ на условието код. Трябва като минимум да покриете условието на проекта (по ваш избор можете да го разширите, но не и да променяте/пропускате части от него)
  • 30% за стил, другояче казано: за четим код, добър дизайн, лесни възможности за разширяване на програмата ви, достатъчна документация.
  • 20% отиват при добрите unit тестове.