Симон Робинсон - C# для профессионалов. Том II
- Название:C# для профессионалов. Том II
- Автор:
- Жанр:
- Издательство:Лори
- Год:2003
- Город:Москва
- ISBN:5-85582-187-0
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Симон Робинсон - C# для профессионалов. Том II краткое содержание
Платформа .NET предлагает новую среду, в которой можно разрабатывать практически любое приложение, действующее под управлением Windows, а язык C# — новый язык программирования, созданный специально для работы с .NET.
В этой книге представлены все основные концепции языка C# и платформы .NET. Полностью описывается синтаксис C#, приводятся примеры построения различных типов приложений с использованием C# — создание приложений и служб Windows, приложений и служб WWW при помощи ASP.NET, а также элементов управления Windows и WWW Рассматриваются общие библиотеки классов .NET, в частности, доступ к данным с помощью ADO.NET и доступ к службе Active Directory с применением классов DirectoryServices.
Для кого предназначена эта книгаЭта книга предназначена для опытных разработчиков, возможно, имеющих опыт программирования на VB, C++ или Java, но не использовавших ранее в своей работе язык C# и платформу .NET. Программистам, применяющим современные технологии, книга даст полное представление о том, как писать программы на C# для платформы .NET.
Основные темы книги• Все особенности языка C#
• C# и объектно-ориентированное программирование
• Приложения и службы Windows
• Создание web-страниц и web-служб с помощью ASP NET
• Сборки .NET
• Доступ к данным при помощи ADO NET
• Создание распределённых приложений с помощью NET Remoting
• Интеграция с COM, COM+ и службой Active Directory
C# для профессионалов. Том II - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Разделение и группировка инструкций
Наиболее заметным различием между приведенными выше кодами на VB и на C# будет, почти наверняка, присутствие точек с запятыми и фигурных скобок в коде C#. Хотя это делает код C# довольно устрашающим, принцип на самом деле очень простой. Visual Basic применяет возврат каретки для указания конца инструкции, в то время как в C# используется для той же цели точка с запятой. Фактически компилятор полностью игнорирует все лишние пробелы, включая возвраты каретки. Эти свойства синтаксиса C# можно комбинировать, чтобы предоставить большую свободу при размещении кода. Например, следующий код (переформатированный из части приведенного выше примера) также вполне допустим в C#:
this.txtSign.Text = "Negative";
this.txtResult.Text = Math.Sqrt(-NumberInput) + " i";
Хотя очевидно, что если потребуется, чтобы другие люди смогли прочитать код, лучше предпочесть первый стиль кодирования. Visual Studio.NET будет в любом случае автоматически размещать код в таком стиле.
Скобки используются для группирования вместе инструкций в так называемые блочные инструкции(или иногда составные инструкции). Эта концепция в действительности не существует в VB. Можно сгруппировать вместе любые инструкции, помещая вокруг них скобки. Группа теперь рассматривается как одна блочная инструкция и может использоваться в любом месте в C#, где ожидается одиночная инструкция.
Блочные инструкции часто используются в C#. Например, в приведенном выше коде C# не существует явного указания на конец метода (C# имеет методы там, где VB имеет функции и подпрограммы). VB требуется инструкция End Sub
в конце любой подпрограммы, так как подпрограмма может содержать сколько угодно инструкций. Специальный маркер является единственным способом, который известен в VB для определения конца подпрограммы. C# действует по-другому. В C# метод формируется в точности из одной составной инструкции. В связи с этим он заканчивается закрывающей фигурной скобкой, соответствующей открывающей скобке в начале метода.
Следующее действие часто встречается в C#: там, где Visual Basic использует некоторое ключевое слово для пометки конца блока кода, C# просто объединяет блок в составную инструкцию. Инструкция if
в приведенных выше примерах иллюстрирует такой подход. В VB необходима инструкция EndIf
для отметки окончания блока. В C# правило состоит в том, что предложение if
всегда содержит точно одну инструкцию, и предложение else
тоже одну. Если необходимо поместить более одной инструкции в любом предложении, как в случае примера выше, используется составная инструкция.
Использование заглавных букв
Еще одна особенность, которую можно заметить в отношении синтаксиса, состоит в том, что все ключевые слова— if
, else
, int
и т.д. в коде C# пишутся со строчной буквы. В отличие от VB язык C# различает заглавные и строчные буквы. Если написать If
вместо if
, то компилятор не поймет этот код. Одним из преимуществ использования заглавных и строчных букв является возможность существования двух переменных, имена которых различаются только регистром символов, таких как Name
и name
. Такая ситуация встретится во втором примере этого приложения.
Идея имен переменных, различающихся только регистром символов, может показаться странной на первый взгляд. Но если к этому привыкнуть, можно обнаружить, что дополнительная свобода, которая благодаря этому достигается в именовании переменных, делает такую возможность действительно полезной.
Как правило, ключевые слова C# записываются полностью строчными буквами.
Методы
Давайте сравним синтаксис, применяющийся в VB и C# для объявления части кода, которая будет обрабатывать событие.
В VB:
Private Sub cmdShowResults_Click()
а в C#:
private void OnClickShowResults(object sender, System.EventArgs e)
Первое замечание, которое необходимо сделать, состоит в том, что версия VB объявляет подпрограмму, в то время как версия C# объявляет метод. В Visual Basic код традиционно группируется в подпрограммы и функции с лежащей в основе этого концепцией процедуры. Помимо этого, объекты классов VB имеют так называемые методы, которые для всех практических целей означают то же самое, что и процедуры, за исключением того, что они являются частью модуля класса.
C#, наоборот, обладает только методами (в соединении с тем фактом, что, как будет показано позднее, все в C# является частью класса). В C# нет отдельной концепции функции и подпрограммы — эти термины даже не существуют в спецификации этого языка. В VB единственное реальное различие между подпрограммой и функцией состоит в том, что подпрограмма никогда не возвращает значение. В C#, если метод не должен возвращать значение, то это объявляется как возвращение void
(как выше проиллюстрировал метод OnClickShowResults()
).
Синтаксис объявления метода аналогичен в обоих языках, по крайней мере в том, что параметры следуют за именем метода в скобках. Отметим, однако, что в то время как в VB подпрограмма объявляется с помощью ключевого слова Sub
, в версии C# соответствующего слова не существует. В C# возвращаемого типа ( void
в данном случае), за которым следует имя метода и открывающая скобка, будет достаточно для сообщения компилятору, что объявлен метод, так как ни одна другая конструкция в C# не имеет подобного синтаксиса (массивы в C# помечаются квадратными, а не круглыми скобками, поэтому нет риска смешения с ними).
Подобно Sub в VB, приведенному выше объявлению метода в C# предшествует ключевое слово private
. Оно имеет примерно то же значение, что и в VB — не позволяет внешнему коду видеть метод. Что точно понимается под "внешним кодом", будет рассмотрено позже.
Необходимо отметить еще два различия в объявлении метода: версия C# получает два параметра и имеет имя, отличное от обработчика событий в VB.
Сначала рассмотрим различие в имени. Имя обработчика событий в VB задается как VB IDE. VB знает, что Sub является обработчиком событий для нажатия кнопки, потому что используется имя cmdShowResults_Click
. Если переименовать подпрограмму, то она не будет вызываться при нажатии кнопки. Однако C# не использует имя таким образом. В C#, как скоро будет показано, существует некий код, который сообщает компилятору, какой именно метод является обработчиком событий. Это означает, что обработчику можно задать любое имя. Однако что-нибудь начинающееся с On
для обработчика событий является традиционным, в C# обычная практика именования методов (и в связи с этим большинства других элементов) с помощью так называемой системы имен в стиле Pascal
которая означает, что слова соединяются вместе, а первая буква слова делается заглавной. Использование подчеркиваний в именах C# не рекомендуется, и имя здесь выбрано в соответствии с этими рекомендациями: OnClickShowResults()
.
Интервал:
Закладка: