Я немного не в себе.
Мне нравится то, что все называют многословным. Разве никто никогда не задумывался над тем, что у нас нет множественных вложенных скобок ни в каких естественных языках (например, в английском)? На самом деле вложенные скобки действительно нуждаются в соглашении об отступах, чтобы сделать их читаемыми вообще. В естественных языках мы используем подробные предложения и множественные предложения, чтобы избежать или хотя бы объяснить многослойные скобки.
Также в определенном смысле я бы не сказал, что vb имеет намного больше синтаксиса, чем c # вообще. На самом деле в определенном блоке кода не так много лексических токенов, как в c # (не так ли?). Он имеет примерно такой же синтаксис, как и в c #, просто имеет более длинные синтаксические токены, например, «End Sub» вместо «}». Для большинства частей синтаксической сантехники версия VB будет просто более типизированной (если вы отреклись от intelisense), также '}' является неоднозначным по сравнению с 'End Sub', поскольку это также означает 'End If' и целую загрузку других вещей , Это не делает его более кратким в определенном смысле. В коде все еще остается то же количество токенов, но из меньшего подмножества более маркеров курсивных токенов. Но разные токены в C # имеют разные значения в зависимости от контекста, что требует, чтобы вы по-прежнему имели этот вложенный уровень в уме, когда читаете код, чтобы получить, например, какой код блока вы читаете, если вы потеряете свой место, хотя конец блока кода может быть виден, вам, возможно, придется посмотреть вверх, чтобы увидеть начало блока кода. Даже там, где это не так, && действительно лучше, чем AndAlso?
Dim. Полагаю, это бесполезный дополнительный лексический токен по сравнению с c #, но, по крайней мере, он согласуется с linq, vb не нужна команда var. Я не могу думать ни о каких других кандидатах на отбивную. Может быть, у меня нет воображения.
Я уверен, что кто-то придет и скажет мне, как я не прав :) В любом случае, я думаю, это связано с личными предпочтениями.