C# для профессионалов. Том II
Шрифт:
Причина такого ограничения заключается в том, что C# был очень тщательно спроектирован таким образом, чтобы затруднить случайное создание ошибок в коде. В VB рекомендуют всегда использовать
Комментарии
Комментирование кода всегда важно, поэтому дальше в обоих примерах (или первое, что делается в примере на C#) добавляется комментарий:
В VB для обозначения начала комментария используется апостроф, а комментарий продолжается до конца строки. Комментарии в C# в этом коде действуют таким же образом, за исключением того, что начинаются с двух прямых наклонных черт:
Однако C# более гибок в своих комментариях, так как позволяет использовать два других способа указания комментариев, каждый из которых имеет слегка различный эффект.
Комментарий также может быть ограничен последовательностями символов
Короткие комментарии внутри строки являются очень полезными, если необходимо только временно заменить что-то в строке во время отладки:
Третий способ похож на первый. Однако теперь используется три слэша:
Если впереди используются три наклонные черты вместо двух, то комментарий по-прежнему продолжается до конца строки. Однако этот комментарий имеет теперь дополнительный результат: компилятор C# способен на самом деле использовать комментарии, которые начинаются с трех наклонных черт, чтобы автоматически создавать документацию для исходного кода как отдельный файл XML. Именно поэтому пример выше имеет достаточно формальную структуру для реального текста комментария. Эта структура готова к размещению в файле XML. Здесь не будут представлены детали этого процесса (он рассмотрен в главе 3). Необходимо только сказать, что комментируя каждый метод в коде, можно автоматически получить законченную документацию, которая обновляется при изменении кода. Компилятор будет даже проверять, что документация соответствует сигнатурам методов и т.д.
Разделение
Наиболее заметным различием между приведенными выше кодами на VB и на C# будет, почти наверняка, присутствие точек с запятыми и фигурных скобок в коде C#. Хотя это делает код C# довольно устрашающим, принцип на самом деле очень простой. Visual Basic применяет возврат каретки для указания конца инструкции, в то время как в C# используется для той же цели точка с запятой. Фактически компилятор полностью игнорирует все лишние пробелы, включая возвраты каретки. Эти свойства синтаксиса C# можно комбинировать, чтобы предоставить большую свободу при размещении кода. Например, следующий код (переформатированный из части приведенного выше примера) также вполне допустим в C#:
Хотя очевидно, что если потребуется, чтобы другие люди смогли прочитать код, лучше предпочесть первый стиль кодирования. Visual Studio.NET будет в любом случае автоматически размещать код в таком стиле.
Скобки используются для группирования вместе инструкций в так называемые блочные инструкции (или иногда составные инструкции). Эта концепция в действительности не существует в VB. Можно сгруппировать вместе любые инструкции, помещая вокруг них скобки. Группа теперь рассматривается как одна блочная инструкция и может использоваться в любом месте в C#, где ожидается одиночная инструкция.
Блочные инструкции часто используются в C#. Например, в приведенном выше коде C# не существует явного указания на конец метода (C# имеет методы там, где VB имеет функции и подпрограммы). VB требуется инструкция
Следующее действие часто встречается в C#: там, где Visual Basic использует некоторое ключевое слово для пометки конца блока кода, C# просто объединяет блок в составную инструкцию. Инструкция
Использование заглавных букв
Еще одна особенность, которую можно заметить в отношении синтаксиса, состоит в том, что все ключевые слова—