Cамоучитель по VB.NET

       

Cамоучитель по VB.NET

В главе 1 «Введение» рассматриваются принципиальные отличия VB .NET от предыдущих версий. Прочитать эту главу будет полезно даже опытным программистам.
Глава 2 «Среда программирования VB .NET: Visual Studio .NET» знакомит читателя с интегрированной средой разработки (IDE) Visual Studio .NET.
Материал главы 3 «Выражения, операторы и передача управления» является своего рода «букварем» VB .NET. В этой главе приведено описание базовых синтаксических средств, к числу которых относятся переменные, циклы и операторы.
Глава 4 «Классы и объекты» открывает серию разделов, посвященных объектно-ориентированному программированию. В ней рассматривается конструирование объектов и их использование в программах.
В главе 5 «Наследование и интерфейсы» описываются важные концепции объектно-ориентированного программирования VB .NET: наследование и интерфейсы. Также здесь приведена информация о полезных классах коллекций .NET, упрощающих эффективное управление данными в программах.
Глава 6 «Обработка событий и делегаты» представляет события и новую для Visual Basic концепцию делегатов. События играют ключевую роль в пользовательском интерфейсе программ, и VB .NET зависит от них в такой же степени, как и предыдущие версии VB.
Глава 7 «Обработка ошибок в VB .NET» посвящена исключениям — современному механизму обработки ошибок, позволяющему избавиться от архаичной конструкции On Error Goto, которая появилась в первых версиях VB.
В главе 8 «Формы Windows графический вывод и печать» рассматривается построение пользовательского интерфейса, графика и печать. Хотя в наше время все чаще встречаются приложения, работающие в броузере, традиционные Windows-клиенты прочно занимают свое место; в этой главе приводятся начальные сведения о построении таких клиентов в .NET.
Глава 9 «Ввод-вывод» представляет концепцию ввода/вывода с позиции потоков данных, на которых основана новая концепция обработки ввода/вывода в .NET.
В главе 10 «Многопоточные приложения» изложены азы программирования в многопоточной модели. Многопоточное программирование открывает множество замечательных возможностей, но при этом оно сопряжено с немалым риском. Надеюсь, эта глава научит читателя безопасно и эффективно использовать многопоточную модель в приложениях.

Структура книги
изложены азы программирования в многопоточной модели. Многопоточное программирование открывает множество замечательных возможностей, но при этом оно сопряжено с немалым риском. Надеюсь, эта глава научит читателя безопасно и эффективно использовать многопоточную модель в приложениях



Visual Basic: прошлое и настоящее
«Visual Basic представляет настоящую угрозу для благополучия тех, кто зарабатывает себе на жизнь, разъясняя программистам сложности программирования для Windows» (вряд ли к комментарию Петцольда стоит относиться серьезно, поскольку с того знаменательного дня были проданы миллионы книг, посвященных VB).

Приступаем к работе
Пользователи прежних версий VB обычно предпочитают, чтобы среда IDE по внешнему виду и поведению была как можно ближе к традиционной среде VB6. Для этого откройте на начальной странице VS ссылку My Profile и выберите строку Visual Basic Developer в списке Profile

Консольные приложения
Каждое приложение VB .NET должно иметь точку вто§а. В точке входа содержится код, автоматически выполняемый при запуске, после чего управление передается остальному коду программы. В относительно простых графических приложениях точка входа может ассоциироваться с начальной формой, как в VB6. Но как было показано в главе 1, код форм Windows достаточно сложен и поиск точки входа может вызвать определенные затруднения.

Введение в ООП
VB .NET значительно расширяет событийную модель программирования прежних версий VB, в основу которой были заложены элементы управления. В VB .NET вся программа состоит из самостоятельных объектов, взаимодействующих друг с другом. Объекты создаются по шаблонам, называемым классами

Основы наследования
Хотя наследование не является панацеей ООП и во многих ситуациях лучше воспользоваться интерфейсами, не стоит полагать, что без наследования можно как-нибудь обойтись. Наследование — замечательное средство, способное сэкономить немало времени и сил... если им правильно пользоваться. Критерий правильного использования прост: не используйте наследование, если у вас нет абсолютной уверенности в существовании логической связи типа «является частным случаем»

Обработка событий с точки зрения ООП
Поскольку сущность объектно-ориентированного программирования в конечном счете сводится к обмену сообщениями между взаимодействующими объектами, события должны занимать определенное место в этой схеме. В каком-то отношении они нормально вписываются в нее: объект-источник отправляет сообщение, которое указывает на возникновение события.

Проверка ошибок и обработка исключений
Традиционный механизм обработки ошибок, использовавшийся в прежних версиях VB, а также в программировании СОМ и Windows, основан на проверке возвращаемого значения функции и выборе действий. Обычно для проверки возвращаемого значения в программе создается аналог конструкции Select Case, причем значения интерпретируются абсолютно произвольно.

Немного истории
Для работы с формами в прежних версиях VB использовался механизм Ruby Forms. Он представлял собой версию программы Ruby, написанной Аланом Купером (Alan Cooper); в результате объединения Ruby с QuickBasic появился VB11. Таким образом, разработка графических приложений в прежних версиях VB зависела от механизма форм, работа которого была практически полностью скрыта от программиста. Стартовая форма, словно по волшебству, появлялась на экране, а элементы размещались на форме программистом на стадии конструирования

Каталоги и файлы
Обращение к функциональным возможностям классов Directory и File происходит при помощи общих методов. Поскольку методы классов Di rectory и Fi1е являются общими, они могут вызываться и без предварительного создания экземпляра оператором New. Конечно, это повышает их эффективность при разовых обращениях к конкретному файлу или каталогу.

Знакомство с многопоточностью
Сохранение контекста сопряжено с определенными затратами времени и памяти. Операционная система запоминает состояние программного потока и передает управление другому потоку. Когда программа захочет продолжить выполнение приостановленного потока, сохраненный контекст приходится восстанавливать, на что уходит еще больше времени.

Почему ADO .NET - не ADO++
В каждой из предыдущих версий VB появлялась новая модель поддержки баз данных. VB .NET следует этой давней традиции и представляет новый способ работы с данными — ADO .NET. При ближайшем рассмотрении выясняется, что название выбрано крайне неудачно. Почему? Потому что ADO .NET просто не является следующим поколением ADO!

Простое web-приложение для ASP .NET
После небольшой задержки VS IDE создает страницу, которой по умолчанию присваивается имя WebFormsl.aspx. Сгенерированная страница содержит код вывода для приложения ASP .NET. Примерный вид VS .NET IDE показан на 12.1. Обратите внимание, сколько файлов было создано для такой простой страницы (имена файлов перечислены в окне решения). Посмотрите на каскадный список стилей, определяющий общие параметры внешнего вида страницы.

Принципы работы СОМ Технология СОМ упрощает создание программ, сохраняющих совместимость в разных версиях платформы Windows и более или менее независимых от языка программирования. Компоненты СОМ могут создаваться на разных языках, включая классический С (вариант для мазохистов), C++, Delphi, VB5 и 6. Технология СОМ с большим успехом применялась для создания объектов, предназначенных для решения специализированных задач, таких как элементы VB OCX.