Ну да, сильная привязка к каскаду; сложные селекторы; игры с позиционированием элементов, когда можно решить задачу иначе - это всё осложняет дальнейшую жизнь верстальщика. Но иногда всё же бывает необходимо.
Сайт выглядит не так, как должен по макету. Это вы увидите безо всякого валидатора глазами. А валидатор их никак не увидит. Нужно только открывать сайт в разных браузерах. И совершенно неважно выглядит он не так из-за того, что вы опечатались в названии свойства (валидатор это отловит) или потому, что в принципе пошли неправильным путём (валидатор это не отловит).
CSS написан сложно, его трудно поддерживать и расширять в будущем, легко сломать. Валидатор тут не поможет, потому что даже самая сложная вёрстка технически может быть валидной. Поможет статический анализатор (не знаю, есть ли такие для CSS). А ещё поможет опыт - вы три раза наступите на какие-то грабли, поймёте, что это грабли и поищете пути их устранения. Это нормальный итеративный процесс, валидатор тут не помощник.
Валидаторы, поскольку их развитие давно отстаёт от реальности, дают много ложно-положительных и ложно-отрицательных срабатываний. Новичка это только сбивает, а опытный уже и сам не делает тех детских ошибок, от которых защищают валидаторы.
Валидировать HTML ещё есть какой-то смысл, потому что там важны атрибуты, корректные отношения между тегами и т.п. А валидировать CSS смысла никакого нет.
Пользователи сайта через браузер будут им пользоваться или через валидатор? Вот через браузер и доказывайте - там в DevTools есть куча всяких инструментов.
Обычно делают именно так. Хранить экземпляр компонента мне в голову не приходило и я не видел, чтобы кто-то так делал, поэтому я даже не могу сказать плохо ли это по какой-то причине.
get_weather()
принимает аргументplace
?