Это пособие создавалось как вводный курс по языку программирования Visual Basic .NET для
читателей, обладающих определенным опытом программирования. Впрочем, опыт работы
на Visual Basic не обязателен.
Хоть в книге
и приводится описание нового синтаксиса VB .NET, это не главное. Я выбрал этот
путь, поскольку попытки втиснуть VB .NET в рамки старых версий VB обречены на
провал - нельзя воспользоваться новыми возможностями, продолжая мыслить в старой
парадигме.
Прежде всего
я постарался изложить основные принципы объектно-ориентированного программирования
в контексте языка VB .NET. Без хорошей подготовки в этой области невозможно
в полной мере пользоваться всеми преимуществами VB .NET. Кроме того, я попытался
изложить хотя бы азы всех аспектов языка, которыми должен владеть любой
профессиональный разработчик VB .NET. К их числу относится и многопоточность,
вскользь упоминаемая во многих книгах. Из этого вовсе не следует, что я рассматриваю
все возможные (или хотя бы наиболее характерные) области применения VB .NET
на платформе .NET, для чего понадобилась бы книга вдвое, а то и втрое большего
объема. Данная же книга посвящена навыкам, которые вам необходимо освоить, а
не их практическому применению (впрочем, примеры я постарался сделать как можно
более реалистичными, по возможности избегая «игрушечных» программ).
Наконец, поскольку большинство читателей уже обладает опытом программирования в одной из предыдущих версий Visual Basic, я приложил все усилия к тому, чтобы как можно более четко подчеркнуть различия между VB .NET и прежними версиями VB. И все же опыт работы на VB не является обязательным условием для чтения - достаточно опыта программирования на любом языке.
В главе 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
«Многопоточные приложения» изложены азы программирования в многопоточной
модели. Многопоточное программирование открывает множество замечательных возможностей,
но при этом оно сопряжено с немалым риском. Надеюсь, эта глава научит читателя
безопасно и эффективно использовать многопоточную модель в приложениях.
Глава 11
«Поддержка баз данных в .NET» и глава 12 «Краткий обзор ASP
.NET» в самых общих чертах представляют две важнейшие области применения
.NET: ASP .NET и ADO .NET. Учтите, что эти две главы не претендуют на глубину
и полноту изложения и за информацией об использовании ASP .NET и ADO .NET в
программах следует обращаться к специализированной литературе.
Глава 13 «Сборки .NET, установка приложений и COM Interop» содержит очень краткое описание работы сборок и механизма COM Interop. Информацию по этим темам также следует искать в книгах более высокого уровня.
1. Электромагнитная волна (в религиозной терминологии релятивизма - "свет") имеет строго постоянную скорость 300 тыс.км/с, абсурдно не отсчитываемую ни от чего. Реально ЭМ-волны имеют разную скорость в веществе (например, ~200 тыс км/с в стекле и ~3 млн. км/с в поверхностных слоях металлов, разную скорость в эфире (см. статью "Температура эфира и красные смещения"), разную скорость для разных частот (см. статью "О скорости ЭМ-волн")
2. В релятивизме "свет" есть мифическое явление само по себе, а не физическая волна, являющаяся волнением определенной физической среды. Релятивистский "свет" - это волнение ничего в ничем. У него нет среды-носителя колебаний.
3. В релятивизме возможны манипуляции со временем (замедление), поэтому там нарушаются основополагающие для любой науки принцип причинности и принцип строгой логичности. В релятивизме при скорости света время останавливается (поэтому в нем абсурдно говорить о частоте фотона). В релятивизме возможны такие насилия над разумом, как утверждение о взаимном превышении возраста близнецов, движущихся с субсветовой скоростью, и прочие издевательства над логикой, присущие любой религии.
4. В гравитационном релятивизме (ОТО) вопреки наблюдаемым фактам утверждается об угловом отклонении ЭМ-волн в пустом пространстве под действием гравитации. Однако астрономам известно, что свет от затменных двойных звезд не подвержен такому отклонению, а те "подтверждающие теорию Эйнштейна факты", которые якобы наблюдались А. Эддингтоном в 1919 году в отношении Солнца, являются фальсификацией. Подробнее читайте в FAQ по эфирной физике.