Сначала убедитесь, что каталог bin вашего mingw находится в вашей среде PATH
, поэтому gcc
и g++
можно вызывать из командной строки. Затем перейдите в корневой каталог вашего буста, где вы распаковали файлы.
Следуйте этому с помощью bootstrap + b2.exe для сборки. Например, предположим, что вы хотите скомпилировать только часть выражения regex. Следующие команды должны выполнить трюк:
bootstrap gcc
b2 toolset=gcc regex
Вы можете использовать:
b2 --show-libraries
, чтобы получить список модулей, которые вы можете построить индивидуально. Конечно, вы можете собрать их все с помощью всего лишь:
b2 toolset=gcc
Проверьте Boost Invocation для подробного списка доступных опций.
Эффективная работа с устаревшим кодом Майкл Фезерс
Трудно сказать, принесет ли реализация фабричного шаблона хоть какую-то пользу, зависит от того, что делает код :)
Очень сложно начать новые методы разработки в середине проекта. Раньше, когда я работал над проектами, которые не тестировались с самого начала, хорошим подходом было бы установить правило, согласно которому «новый код должен иметь модульные тесты», но не давить на модульные тесты. пишется для старого кода.
Конечно, даже это сложно, когда структура проекта не подходит для тестирования.
Моя лучшая рекомендация - делать это маленькими шагами.
Начните с создания вашего модуля. тестовая сборка, (или проект, или что-то еще) без тестов. Затем найдите одну небольшую область кода, которая достаточно хорошо определена и разделена, и напишите несколько модульных тестов для этой области. Попросите вашего со-кодировщика тоже взглянуть и начать применять некоторые «передовые практики», такие как запуск модульных тестов каждый раз, когда какой-либо код регистрируется (если возможно, автоматически).
Как только вы это заработаете, вы можете медленно начать добавлять.
Ключ медленно. И, как я уже сказал, для начала проще освободить старый код от тестирования. Вы всегда можете вернуться к нему позже, когда ваша команда осознает идею модульного тестирования и научится лучше их писать.
Попросите вашего со-кодировщика тоже взглянуть и начать применять некоторые «передовые практики», такие как запуск модульных тестов каждый раз, когда какой-либо код регистрируется (если возможно, автоматически).Как только вы это заработаете, вы можете медленно начать добавлять.
Ключ медленно. И, как я уже сказал, для начала проще освободить старый код от тестирования. Вы всегда можете вернуться к нему позже, когда ваша команда осознает идею модульного тестирования и научится лучше их писать.
Попросите вашего со-кодировщика тоже взглянуть и начать применять некоторые «передовые практики», такие как запуск модульных тестов каждый раз, когда какой-либо код регистрируется (если возможно, автоматически).Как только вы это заработаете, вы можете медленно начать добавлять.
Ключ медленно. И, как я уже сказал, для начала проще освободить старый код от тестирования. Вы всегда можете вернуться к нему позже, когда ваша команда осознает идею модульного тестирования и научится лучше их писать.
Эффективная работа с устаревшим кодом Майкла Фезерса (также доступен в Safari, если у вас есть подписка) - отличный ресурс для решения вашей задачи. Автор определяет устаревший код как код без модульных тестов и дает практические пошаговые инструкции по партиям консервативных методов - необходимых, поскольку вы работаете без защиты - для проверки кода. Оглавление:
Как насчет написания серии тестов черного ящика для основных частей вашего кода? Поскольку вы упомянули, что это проект ASP.NET, вы можете использовать фреймворк, например WaitN или Selenium , для автоматизации веб-браузера. Это дает вам базовый набор функций, который должен оставаться постоянным независимо от того, насколько сильно изменяется код.
Когда у вас будет удобное количество тестов, проверяющих высокоуровневую функциональность вашего проекта, я бы начал погружаться в код , и, как упоминает Саймон П. Стивенс, работают медленно . Скачайте (бесплатно!) Копию Refactor! для Visual Basic , поэтому вы сможете автоматически выполнять базовый рефакторинг, такой как Extract Method.