Всё, теперь класс для парсинга и билдинга SQL-запросов отрефакторен к удобному виду и протестирован в UNIT-тестах. Но на это у меня ушёл целы день, чего, я конечно же снова опрометчиво не ожидал. Как всегда, короче. Потому что во время тщательного тестирования класса вылезала масса ошибок, на исправление которых приходилось тратить время.
А теперь подумайте, что и на это раз я бы поленился провести серьёзное тестирование функционала. Что бы было? Да было бы то, что эти баги один за другим, нескончаемым потоком, стали бы вырываться во время работы над другим функционалом, связанным с работой этого C#-класса. Мне тогда бы пришлось постоянно отвлекаться от текущего дела и заниматься исправлением этих багов. Это было бы не удобно. Да и через это я уже сто раз проходил, и уже пора бы научиться не повторять одну и ту же ошибку. Так что нужно взять себе правило - проверять весь функционал тщательно во время создания этого функционала, а не дожидаться того, чтобы баги этого функционала начали вылезать не вовремя, как надоедливые мухи, чтобы я тратил время на отмахивания от них. Так что вот так.
Да и даже теперь 100-процентной уверенности в том, что получившийся функционал содержит 0% багов. Но было бы уже хорошим результате по не забагованности на 92%. И это только один C#-класс, в котором только 4000 строчки кода. А когда напишутся десятки тысяч строк кода, сколько таким образом багов можно ожидать? Десятки? Сотни? Тысячи? Ну в любом случае очень не мало.
Ну и вот, на этом у меня всё. А завтра у меня начинается новая эпопея - эпопея по работе над классами для SQLite. Ну уж там я буду переносить функционал с исправлениями. С нуля пахать не буду. Так что на этом у меня всё и до новых постов с новыми свершениями.
