Это просто, как язык был разработан. C # является языком в стиле C и следует по образцу типов слева.
В C # 3.0 и выше вы можете обойти это во многих случаях с помощью локального вывода типа.
var variable = new SomeClass();
Но в то же время вы также можете утверждать, что вы все еще объявляете тип на LHS. Только то, что вы хотите, чтобы компилятор выбрал его для вас.
РЕДАКТИРОВАТЬ
Пожалуйста, прочтите это в контексте оригинального вопроса пользователей
зачем нам [имя класса] перед именем переменной?
Я хотел прокомментировать несколько других ответов в этой теме. Многие люди в ответ дают «C # статически». Хотя утверждение верно (C # является статически типизированным), оно почти полностью не связано с вопросом. Статическая типизация не требует, чтобы имя типа находилось слева от имени переменной. Конечно, это может помочь, но это выбор дизайнера языка, а не обязательная особенность языков статической типизации.
Это легко доказать, рассматривая другие статически типизированные языки, такие как F #. Типы в F # появляются справа от имени переменной и очень часто могут быть вообще опущены. Есть также несколько встречных примеров. Например, PowerShell чрезвычайно динамичен и размещает все его типы, если они включены, слева.