Skip to content

Latest commit

 

History

History

Markdown

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

##Задача Markdown

Напишите процессор упрощённого markdown-подобного языка разметки.

Описание языка, он же пример файла с разметкой.

Описание намеренно сделано не полным. Вы должны сами придумать наиболее удачное поведение вашего процессора во всех спорных случаях. Все ваши решения должны быть зафиксированы в виде модульных тестов.

Задача

Создайте консольное приложение, принимающее в качестве аргумента имя исходного файла в markdown-подобной разметке, и генерирующее в директории программы html-файл, полученный после процессинга исходного файла по описанным правилам.

Разбейте ваш процессор на составные части. Каждая часть должна быть легко читаема и покрыта тестами.

В этой задаче запрещено использовать регулярные выражения.

Соблюдайте следующий процесс

  • Уточните требования. Для этого дополняйте файл Spec.md по аналогии. Каждый абзац должен описывать требование и одновременно являться примером работы этого требования.
  • Проведите начальное проектирование. Определите какие будут классы и какие в них будут методы. Не пишите внутренности методов на этом этапе. Покажите свою декомпозицию своему ассистенту. Получите обратную связь.
  • Для реализации методов используйте TDD.