Консултацията ще се проведе на 3-ти септември от 14:00 до 16:00 в ТУЕС, 31-кабинет.
Изпитът ще се проведе на 05 септември 2018.
Ще се проведат два изпита и двата по 3 часа, по теория и практика. Изпитите ще бъдат от 09 и от 13 часа.
Досега провежданите изпит бяха организирани и се провеждаха по сходен начин с контролните, които бяха давани по-време на учебната година. Учениците:
- можеха да ползват интернет докато разработват програмите
- можеха да донесат предварително подготвени материали, които да бъдат с тях и да ги използват.
- можеха да решат доста малка и концентрирана задача с която да демонстрират необходимите знания.
Третата поправка ще следва по-стандартно изграден изпит.
Ще се разгледат всички домашни и всички теми дискутирани през първия и втория срок. Ще се положи изпит върху произволни задачи. Няма да може да се ползва интернет. Програмите ще се разработват на училищни компютри, без интернет. Предварително подготвени материали няма да се допускат.
Конспектът включва част от разглежданите теми в курса.
- Гъвкави процеси на разработка на софтуер. Планиране. Разпределение на задачите. Основни характеристики на изградените задачи.
- Test Driven Development. Произход, цели и обосновка на нуждата от TDD. Цикъл на TDD. Примерни за изграждане на TDD при реализацията на конвертиране на Римски към десетични цифри
- Behavior Driven Development. Произход, цели и обосновка на нуждата от BDD. Цикъл на BDD. Примерни за изграждане на BDD при реализацията на конвертиране на Римски към десетични цифри
- Agile методологии. Произдох, цели и обосновна от нуждата от гъвкави процеси на разработка на тестове.
- Разработка на тестове с RSpec
- Мокване
- Процес на „Рефакторинг“. Основни правила. Видове.
- 3 етапно разделение на разработка на софтуер – development,staging,production
- Средства за откриване на грешки и процес на „debug“
- MVC архитектура
- Модели, Валидации и бизнес логика
- Същност и използване на ORM.
- Асоциации между модели и реализация в ORM. – source: Rails Guides
- Миграции върху бази от данни.
- Ruby Version Manager. Същност, цел и начин на работа. Основни предимства.
- Версии. Определяне и задаване на версии на библиотеки.
- HTTP протокол. Изпълнение на сървърен код при извършване на HTTP заявка.
- REST API. Алтернативи на REST. Филтри и ресурси. Примери за практически приложения. Недостатъци и предимства.
- JSON/XML формат на структуриране на данни. Сравнение. Предимства и недостатъци между двете. XML схема. Съвременни тенденции и тяхната обосновка.
- equals и hashCode. Връзка между методите. Правила и имплементации в различни технологии. Имплементации на Hash контейнери.
- Криптиране. Симетрична и асиметрична криптография. Алгоритми, имплементации и приложимост. Електронно подписване.