Создать консольное windows-приложение (не прототип), выполняющее следующие задачи: • Поиск всех ссылок типа http:// с html-страницы, адрес которой передан в качестве аргумента командной строки, а также со всех связанных с ней страниц (рекурсивно). Количество ссылок может достигать миллионов и более. Глубина рекурсии должна конфигурироваться. • Вывод найденных уникальных ссылок по мере их обнаружения o На консоль o В последовательность файлов размером не более N Мбайт (конфигурируется) Обязательно: • Использование OOD/OOP • Наличие unit-тестов • Использование .NET 3.5/4.0, C# 3.0/4.0, VS2008/2010 • Не использовать сторонние библиотеки для работы с сетью Желательно: • Наличие любых диаграмм, повышающих понимание кода (не class diagrams) • Наличие интеграционных тестов (при необходимости) • Указать название, причины выбора и плюсы примененной методологии разработки • Не злоупотреблять комментариями и регионами • Серьезно подойти к именованию типов, методов, полей, свойств, а также к качеству тестов (читаемость, сфокуссированность, именование, отсутствие дублирования) Для создания unit-, интеграционных и других необходимых тестов можно применять любые библиотеки (MSTest, NUnit, RhinoMocks, Moq, FitNesse и т.д.). При необходимости можно использовать любой DI container. Обосновать его применение.