Плохо. Вы приводите примеры кода для того, чтобы показать разницу между классом и интерфейсом — для самой простой части. И не приводите примеры для куда более сложных вещей. Почему это я должен делать класс с единственной ответственностью? Приведите пример, покажите, как трудно поддерживать код, который нарушает этот принцип. Желательно сделать тоже самое и для остальных принципов. Гляньте в Code Complete Макконнелла. Этот человек ни единого правила без примера не оставляет, даже на предмет именованных констант.
На сайте сейчас просто пара «День — Ночь», но квадрат «Утро — Вечер — День — Ночь»(написано так, как читается) нелогичен. Мы все-таки читаем слева направо, поэтому стоит изменить картинку так, чтобы день был в правом верхнем, а вечер — в левом нижнем углу.
Таки сперва добейся? Вы могли бы подождать, пока материалы с конкретными числами появятся в доступе и опубликовать их. Пока что топик действительно выглядит как «АААА! Мы все умрем».
Вобщем, вывод: код в методе должен находиться на одном уровне абстракции.