Сергей Герасимов
Для тех, кто хочет попробовать реализовать алгоритм через тесты (использовать подход TDD) мы создали данный репозиторий. Он содержит проект с изначально закомментированным кодом тестов и проект-заглушку для кода Вашей реализации.
Сначала Вам нужно убедиться, что у Вас налажен git и есть возможность работать с кодом
- Установите при необходимости Visual Studio 2010
- Установите клиент для github, например GitHub Desktop или TortoiseGit
- Создайте fork репозитория (некоторые инструкции Вы найдёте тут)
- Склонируйте его себе на компьютер
- Открыйте Knapsack.sln в Visual Studio и убедиться, что код компилируется
- Сделайте Pull request в комментарии впишите свои имя и фамилию.
В проекте с тестами Вы найдёте множество закоментированных тестов.
- Проверьте, что код собирается
- Запустите тесты, проверьте, что все тесты (если они есть) зелёные.
- Раскоментриуйте один из тестов
- Скорее всего код не будет компилироваться
- Добейтесь того, чтобы код скомпилировался (добавьте в проекте Knapsack.Core необходимые классы и методы-заглушки без реализации, либо с телом:
throw new NotImplementedException();
) - Проверьте, что код собирается
- Запустите тесты, проверьте, что есть 1 красный тест.
- Напишите, не меняя код теста, ровно столько кода реализации, чтобы тест позеленел.
- Проверьте, что код собирается
- Запустите тесты, проверьте, что все тесты зелёные. Сделайте коммит (Push)
- Проверьте, нет ли у вас в коде code-smell'ов, не нарушаете ли Вы какие-либо принципы. Исправьте недочёты.
- Перейдите к шагу 2.
Начните, например, с ParserTest или VectorTest
##И последнее: Создайте на основе кода консольное приложение. Пытайтесь не писать код без тестов. Добавление новых тестов приветствуется
##УДАЧИ!