Visual Basic для новичков. Шаг за шагом. Самоучитель / справочник

![]()
Для самостоятельного изучения языка Visual Basic, позволяет без помощи преподавателя, «с нуля» разобраться в основах программирования и научиться создавать полноценные приложения для Windows. Большое количество информации о Visual Basic также даёт возможность использовать книгу и в качестве справочника.
Оглавление
- Введение
- Глава 1. Установка Visual Basic на компьютер пользователя
- Глава 2. Знакомство с Visual Basic
- Глава 3. Использование мастеров
- Глава 4. Операторы и выражения
- Глава 5. Условные переходы и циклы
- Глава 6. Процедуры и функции
- Глава 7. Типы данных, переменные и константы
© Евгений Матвеев, 2023
Создано в интеллектуальной издательской системе Ridero
О чЁм эта книга?
Книга представляет собой пошаговый самоучитель по программированию на языке Microsoft Visual Basic версии 6.0, с последовательным изучением всех основных компонентов языка Visual Basic и элементов управления Windows, которые в нём используются.
Она будет также очень полезна и при рассмотрении других версий языка Visual Basic, так как отличия между ними на начальном уровне изучения не приниципиальны.
Доступный стиль изложения, большое количество иллюстраций, реальных примеров исходных текстов программ, полезных советов и обилие справочной информации помогут вам хорошо изучить данный язык программирования «с нуля» в кратчайшие сроки.
Прочитав эту книгу, вы научитесь:
• устанавливать Microsoft Visual Basic 6.0 на свой компьютер,
• пользоваться всеми основными возможностями среды программирования,
• находить нужную информацию в справочной системе,
• оперировать свойствами и методами объектов Windows,
• программировать различные внешние устройства,
• писать сетевые приложения для работы в Интернете,
• проектировать свое собственное приложение,
• разрабатывать его интерфейс,
• создавать исходный текст программы,
• отлаживать программу и находить в ней ошибки,
• компилировать код программы в исполнимый файл,
• создавать инсталляцию готового приложения,
• распространять свои программы через Интернет,
•…и многому другому!
Простой и доступный стиль изложения материала рассчитан на студентов, преподавателей и других лиц, желающих самостоятельно освоить принципы современного визуального проектирования приложений на языке Visual Basic.
Большая часть информации, содержащейся в этой книге, пригодится вам также и в других целях, не связанных напрямую с изучением Visual Basic:
• для лучшего понимания принципов работы операционной системы Microsoft Windows,
• изучения основ программирования вообще,
• написания программ на других диалектах языка Basic.

История появления языка Visual Basic
Почти сразу же после появления электронных вычислительных машин (ЭВМ), в 50-х годах ХХ века были разработаны первые языки программирования для управления вычислительным процессом.
Они были крайне сложны, специализированы для конкретных моделей ЭВМ и предназначались для создания управляющих программ, решающих сложные математические задачи.
По мере распространения ЭВМ возникла необходимость упрощения языка взаимодействия человека с машиной, в результате чего в Dartmouth College был создан язык программирования BASIC. Это название являлось аббревиатурой, а полное наименование этого языка звучало как Beginner’s All-purpose Symbolic Instruction Code (универсальный символьный программный код для начинающих). В то же время слово Basic переводится с английского как «базовый», «основной». Как бы то ни было, прижился именно короткий вариант названия.
Поначалу Basic был очень простым языком программирования, так как предназначался для обучения. Именно из-за своей простоты и компактности он был выбран в качестве языка для первых микрокомпьютеров серии Альтаир (Altair), выпущенных в 1975 году и имеющих всего 4 кб оперативной памяти. Разрабатывали интерпретатор языка основатели корпорации Microsoft — Билл Гейтс (Bill Gates) и Пол Аллен (Paul Allen).
Когда появились персональные компьютеры фирмы IBM, был создан интерпретатор Microsoft GW-Basic, работающий под управлением операционной системы DOS. У интерпретатора GW-Basic имелся интерфейс командной строки и занимал он менее 100 кб оперативной памяти компьютера.
Следующим шагом в развитии языка Basic для DOS было появление двух компиляторов: Microsoft QuickBasic и Borland TurboBasic. Они оба отличались более удобным оконным интерфейсом, наличием текстового редактора для написания программ, системы отладки и возможностью генерации выполнимых exe-файлов.
Через несколько лет после появления операционной системы Microsoft Windows, в 1991 году был создан Microsoft Visual Basic for Windows версии 1.0. Это был революционный шаг в развитии языка, так как теперь отпала необходимость в скурпулезном программировании интерфейса приложений — достаточно было нарисовать его.

В дальнейшем развитие языка шло в направлении совершенствования Microsoft Visual Basic for Windows, которое было связано, в основном, с добавлением новых инструментальных средств и расширением поддержки работы с объектами операционной системы Windows, а также прикладными программами, прежде всего — с пакетом Microsoft Office.
Отличительные особенности Visual Basic
Читатели, которые даже немного знакомы хотя бы с одним классическим языком программирования, в котором не предусмотрены визуальные средства проектирования приложений, особенно сильно почувствуют разницу между обычными системами программирования, включая другие диалекты языка Basic, и современным Visual Basic.
Визуальное проектирование в значительной степени ускоряет разработку приложений за счет уменьшения количества кода, который должен написать программист.
Создание объектов интерфейса: окон, кнопок, полей ввода, флажков и т. п., с помощью Visual Basic не представляет большого труда и напоминает рисование в графическом редакторе. После этого остается лишь написать подпрограммы, связанные с этими объектами.
Существенное отличие Visual Basic от QuickBasic, TurboBasic и других диалектов языка Basic для DOS, заключается в том, что в него встроена поддержка работы с объектами Windows, а также предоставлена возможность использования любых функций операционной системы.
Исходный текст программы Visual Basic может считывать и обрабатывать построчно, сразу же выполняя операторы языка, то есть, функционировать как интерпретатор.
Но он же может быть и компилятором, создающим исполняемые файлы, которые работают независимо от самой среды программирования.
Работа в среде Visual Basic очень комфортна, чему способствует наличие большого количества мастеров, многоуровневой справочной системы и удобных средств отладки приложений.
Все это говорит в пользу того, что Visual Basic является мощной средой программирования, с помощью которой можно разрабатывать широкий круг профессиональных приложений для Windows.
Редакции Visual Basic
Фирма Microsoft выпускает Visual Basic 6.0 в нескольких редакциях, которые различаются своими возможностями, поставляемой документацией и, конечно же, своей стоимостью:
Learning Edition (Учебная редакция) — включает основные возможности по созданию приложений и базовый набор элементов управления,
Professional Edition (Профессиональная редакция) — содержит больше инструментов и вспомогательных средств разработки, а также ряд дополнительных элементов управления,
Enterprise Edition (Промышленная редакция) — предназначено для разработчиков корпоративных систем и клиент-серверных приложений, поэтому охватывает все аспекты создания и поддержки больших баз данных, базирующихся на различных технологиях.
Несмотря на имеющиеся отличия, все редакции языка программирования Visual Basic, имеют много общего в среде разработки и совсем не отличаются по своему синтаксису, поэтому практически идентичны между собой для начинающего программиста.
Visual Basic 6.0 Enterprise Edition, какой мы будем рассматривать в этой книге, поставляется не отдельно, как это было в предыдущих версиях, а в составе интегрированного пакета Microsoft Visual Studio 6.0, предназначенного для разработчиков программного обеспечения.
В этот пакет входит, кроме Microsoft Visual Basic еще и Microsoft Visual C++, Microsoft Visual FoxPro, а также ряд других вспомогательных программ и компонентов.
Теперь рассмотрим основные обозначения, принятые в данной книге, которые помогут вам свободно в ней ориентироваться.
Списки, в которых перечисляются какие-либо понятия, выглядят так:
• элемент списка 1,
• элемент списка 2,
Если вам нужно выполнить практическое действие для получения определенного результата, то это будет выглядеть примерно так:
Сделайте это… На экране появится следующее…
Названия клавиш, которые придется нажимать на клавиатуре, заключены в квадратные скобки и выделены жирным шрифтом, например: [F1]. Комбинации клавиш, нажимаемые одновременно, содержат между собой знак «плюс», например: [Ctrl] + [Break].
Последовательно выбираемые мышью пункты меню разделены знаком «дефис», а в скобках приводится их перевод на русский язык: File — Open… (Файл — Открыть…).
Названия программ в тексте выглядят таким образом: Microsoft Visual Basic.
Исходные тексты программ, которые придется набирать на клавиатуре вручную, отделены от остального текста пустыми строками и выделены жирным шрифтом, например:
If Check1.Value = Checked Then
Frame1.Enabled = False
Frame1.Enabled = True
Учебник. Создание простого консольного приложения Visual Basic
В этой статье показано, как с помощью Visual Studio создать простое приложение Visual Basic, консольное приложение. В этом приложении будет запрашиваться имя пользователя, которое затем будет отображаться с информацией о текущем времени. Вы также изучите некоторые функции интегрированной среды разработки Visual Studio, включая управление версиями в Git. Visual Basic — это типобезопасный язык программирования, который прост в изучении. Консольное приложение принимает входные данные и выводит результаты в окне командной строки (также называется консоль).
В этом руководстве описано следующее:
- Создание проекта Visual Studio
- Запуск приложения по умолчанию
- Добавление кода для запроса ввода данных пользователем
- Дополнительное задание: добавление двух чисел
- Добавление системы управления исходным кодом Git
- Очистка ресурсов
Необходимые компоненты
Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого.
Создание проекта
Сначала вы создадите проект приложения Visual Basic. Шаблон проекта по умолчанию включает все файлы, необходимые для запускаемого приложения.
На некоторых снимках экрана в этом учебнике используется темная тема. Если вы не используете темную тему, но хотите переключиться на нее, см. страницу Персонализация интегрированной среды разработки и редактора Visual Studio.
- Откройте Visual Studio 2019.
- На начальном экране выберите Создать проект.

- В окне Создание проекта выберите Visual Basic в списке языков. Затем выберите Windows в списке платформ и Консоль в списке типов проектов. Применив фильтры по языку, платформе и типу проекта, выберите шаблон Консольное приложение и щелкните Далее.

Примечание. Если шаблон Консольное приложение отсутствует, его можно установить в окне Создание проекта. В сообщении Не нашли то, что искали? выберите ссылку Установка других средств и компонентов.
После этого в Visual Studio Installer выберите рабочую нагрузку Кроссплатформенная разработка .NET Core.
Затем нажмите кнопку Изменить в Visual Studio Installer. Вам может быть предложено сохранить результаты работы. Выберите Продолжить, чтобы установить рабочую нагрузку. После этого вернитесь к шагу 2 в процедуре Создание проекта.

Новый проект открывается в Visual Studio.- Откройте Visual Studio.
- На начальном экране выберите Создать проект.

- В окне Создание проекта выберите Visual Basic в списке языков. Затем выберите Windows в списке платформ и Консоль в списке типов проектов. После применения фильтров типов языков, платформы и проекта выберите шаблон консольного приложения и нажмите кнопку «Далее«.

Примечание. Если шаблон Консольное приложение отсутствует, его можно установить из окна Создание проекта. В сообщении Не нашли то, что искали? выберите ссылку Установка других средств и компонентов.
После этого в Visual Studio Installer выберите рабочую нагрузку Разработка классических приложений .NET.
Затем нажмите кнопку Изменить в Visual Studio Installer. Вам может быть предложено сохранить результаты работы. Выберите Продолжить, чтобы установить рабочую нагрузку. После этого вернитесь к шагу 2 в процедуре Создание проекта.

Новый проект открывается в Visual Studio.Выполнить приложение
Когда вы выберете шаблон проекта Visual Basic и зададите имя для своего проекта, Visual Studio создаст файл Program.vb. Код по умолчанию вызывает метод WriteLine для отображения литеральной строки «Hello World!»в окне консоли.
Существует два способа выполнения этого кода: в Visual Studio в режиме отладки и на компьютере в качестве обычного автономного приложения.
Запуск приложения в режиме отладки

- Нажмите кнопку WhatIsYourName или клавишу F5, чтобы запустить код по умолчанию в режиме отладки.

- При запуске приложения в консоли отладки Microsoft Visual Studio отображается текст «Hello World!». Нажмите любую клавишу, чтобы закрыть окно консоли отладки и завершить работу приложения:


- Нажмите кнопку WhatIsYourName или клавишу F5, чтобы запустить код по умолчанию в режиме отладки.

- При запуске приложения в консоли отладки Microsoft Visual Studio отображается текст «Hello World!». Нажмите любую клавишу, чтобы закрыть окно консоли отладки и завершить работу приложения:

Запуск приложения в автономном режиме
Чтобы просмотреть выходные данные за пределами Visual Studio, в окне системной консоли выполните сборку и запуск исполняемого файла (EXE-файл).
- В меню Сборка выберите Собрать решение.
- В Обозревателе решений щелкните правой кнопкой мыши элемент WhatIsYourName и выберите Открыть файл в проводнике.
- В проводнике перейдите к каталогу bin\Debug\net5.0 и запустите WhatIsYourName.exe.
- Процедура Main завершается после выполнения одной инструкции, а окно консоли сразу же закрывается. В следующем разделе показано, как сделать так, чтобы окно консоли отображалось до нажатия клавиши пользователем.
- В меню Сборка выберите Собрать решение.
- В Обозревателе решений щелкните правой кнопкой мыши элемент WhatIsYourName и выберите Открыть файл в проводнике.
- В проводник перейдите в каталог bin\Debug\net8.0 и запустите WhatIsYourName.exe.
- Процедура Main завершается после выполнения одной инструкции, а окно консоли сразу же закрывается. В следующем разделе показано, как сделать так, чтобы окно консоли отображалось до нажатия клавиши пользователем.
Добавление кода для запроса ввода данных пользователем
Затем добавьте код Visual Basic, который запрашивает ваше имя, а затем отображает его вместе с текущей датой и временем. Кроме того, вы добавляете код, который приостанавливает окно консоли, пока пользователь не нажимает клавишу.
- Введите следующий код Visual Basic после строки Sub Main(args As String()) и перед строкой End Sub , заменив строку WriteLine:
Console.Write("Please enter your name: ") Dim name = Console.ReadLine() Dim currentDate = DateTime.Now Console.WriteLine($"Hello, , on at ") Console.Write("Press any key to continue. ") Console.ReadKey(True)
- Write и WriteLine записывают строку в консоль.
- ReadLine считывает входные данные из консоли, в нашем случае — строку.
- DateTime представляет дату и время, а Now возвращает текущее время.
- ReadKey() приостанавливает работу приложения и ожидает нажатия клавиши.


- Введите следующий код Visual Basic после строки Sub Main(args As String()) и перед строкой End Sub , заменив строку WriteLine:
Console.Write("Please enter your name: ") Dim name = Console.ReadLine() Dim currentDate = DateTime.Now Console.WriteLine($"Hello, , on at ") Console.Write("Press any key to continue. ") Console.ReadKey(True)
- Write и WriteLine записывают строку в консоль.
- ReadLine считывает входные данные из консоли, в нашем случае — строку.
- DateTime представляет дату и время, а Now возвращает текущее время.
- ReadKey() приостанавливает работу приложения и ожидает нажатия клавиши.


Теперь, когда новый код находится в приложении, выполните сборку и запуск исполняемого файла (EXE-файл) в окне системной консоли, как описано выше в разделе Запуск приложения в автономном режиме. Теперь при нажатии клавиши приложение завершает работу, в результате чего окно консоли закрывается.
Дополнительное задание: добавление двух чисел
В этом примере показано, как считывать числа, а не строки и выполнять некоторые арифметические операции. Попробуйте изменить свой код:
Module Program Sub Main(args As String()) Console.Write("Please enter your name: ") Dim name = Console.ReadLine() Dim currentDate = DateTime.Now Console.WriteLine($"Hello, , on at ") Console.Write("Press any key to continue. ") Console.ReadKey(True) End Sub End Module
Module Program Public num1 As Integer Public num2 As Integer Public answer As Integer Sub Main(args As String()) Console.Write("Type a number and press Enter") num1 = Console.ReadLine() Console.Write("Type another number to add to it and press Enter") num2 = Console.ReadLine() answer = num1 + num2 Console.WriteLine("The answer is " & answer) Console.Write("Press any key to continue. ") Console.ReadKey(True) End Sub End Module
Затем запустите обновленное приложение, как описано в предыдущем разделе, запустите приложение.
Добавление системы управления исходным кодом Git
Теперь, когда вы создали приложение, вы можете добавить его в репозиторий Git. Visual Studio упрощает этот процесс с помощью инструментов Git, которые вы можете использовать непосредственно из IDE.
Git — это наиболее широко используемая современная система контроля версий, поэтому, независимо от того, являетесь ли вы профессиональным разработчиком или учитесь программировать, Git может быть для вас весьма полезным. Если вы новичок в Git, вы можете начать с сайта https://git-scm.com/. Там вы найдете памятки, популярную электронную книгу и видеоматериалы по основам GIT.
Чтобы связать свой код с Git, начните с создания нового репозитория Git, в котором находится ваш код:
- В строке состояния в правом нижнем углу Visual Studio нажмите Добавить в систему управления версиями и выберите Git.

- В диалоговом окне Создать репозиторий Git войдите в GitHub.
Имя репозитория заполняется автоматически в зависимости от расположения вашей папки. Ваш новый репозиторий является частным по умолчанию. Это означает, что только вы можете получить к нему доступ.
Совет Независимо от того, является ли ваш репозиторий общедоступным или частным, лучше всего иметь удаленную резервную копию кода, надежно хранящуюся на GitHub. Даже если вы не работаете с командой, удаленный репозиторий позволит получать доступ к коду с любого компьютера.

Чтобы узнать больше о том, как использовать Git с вашим приложением, см. документацию по управлению версиями Visual Studio.
Очистка ресурсов
Если вы не планируете использовать это приложение в дальнейшем, удалите проект.
- В Обозревателе решений, щелкните правой кнопкой элемент WhatIsYourName, чтобы открыть контекстное меню для вашего проекта. Затем выберите Открыть папку в проводнике.
- Закройте Visual Studio.
- В диалоговом окне проводника перейдите на два уровня папок вверх.
- Щелкните правой кнопкой мыши папку WhatIsYourName и выберите пункт Удалить.
Следующие шаги
Поздравляем с завершением этого учебника! Дополнительные сведения см. в следующем руководстве.
Руководство по программированию на Visual Basic
Как и в случае с любым современным языком программирования, Visual Basic поддерживает множество общих конструкций программирования и языковых элементов. В этом руководстве описываются все основные элементы программирования с помощью Visual Basic.
в этом разделе
Соглашения о структуре программы и коде
Содержит документацию по базовой структуре и соглашениям кода Visual Basic, таким как соглашения об именовании, комментарии в коде и ограничения в Visual Basic.
Возможности и элементы языка Visual Basic
Содержит ссылки на разделы с описанием важных элементов Visual Basic, включая LINQ и XML-литералы.
COM-взаимодействие
Рассматривает проблемы взаимодействия, связанные с созданием и использованием объектов модели COM в Visual Basic.
Связанные разделы
Справочник по языку Visual Basic
Содержит справочные сведения о различных аспектах программирования Visual Basic.
Компилятор Visual Basic с интерфейсом командной строки
Предоставляет сведения об использовании компилятора командной строки Visual Basic, параметров компилятора и средства обновления ключевых слов.
Обратная связь
Были ли сведения на этой странице полезными?
Программирование на Visual Basic 7 (.NET)
Это пособие создавалось как вводный курс по языку программирования 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. Информацию по этим темам также следует искать в книгах более высокого уровня.
Знаете ли Вы, в чем ложность понятия «физический вакуум»?
Физический вакуум — понятие релятивистской квантовой физики, под ним там понимают низшее (основное) энергетическое состояние квантованного поля, обладающее нулевыми импульсом, моментом импульса и другими квантовыми числами. Физическим вакуумом релятивистские теоретики называют полностью лишённое вещества пространство, заполненное неизмеряемым, а значит, лишь воображаемым полем. Такое состояние по мнению релятивистов не является абсолютной пустотой, но пространством, заполненным некими фантомными (виртуальными) частицами. Релятивистская квантовая теория поля утверждает, что, в согласии с принципом неопределённости Гейзенберга, в физическом вакууме постоянно рождаются и исчезают виртуальные, то есть кажущиеся (кому кажущиеся?), частицы: происходят так называемые нулевые колебания полей. Виртуальные частицы физического вакуума, а следовательно, он сам, по определению не имеют системы отсчета, так как в противном случае нарушался бы принцип относительности Эйнштейна, на котором основывается теория относительности (то есть стала бы возможной абсолютная система измерения с отсчетом от частиц физического вакуума, что в свою очередь однозначно опровергло бы принцип относительности, на котором постороена СТО). Таким образом, физический вакуум и его частицы не есть элементы физического мира, но лишь элементы теории относительности, которые существуют не в реальном мире, но лишь в релятивистских формулах, нарушая при этом принцип причинности (возникают и исчезают беспричинно), принцип объективности (виртуальные частицы можно считать в зависимсоти от желания теоретика либо существующими, либо не существующими), принцип фактической измеримости (не наблюдаемы, не имеют своей ИСО).
Когда тот или иной физик использует понятие «физический вакуум», он либо не понимает абсурдности этого термина, либо лукавит, являясь скрытым или явным приверженцем релятивистской идеологии.
Понять абсурдность этого понятия легче всего обратившись к истокам его возникновения. Рождено оно было Полем Дираком в 1930-х, когда стало ясно, что отрицание эфира в чистом виде, как это делал великий математик, но посредственный физик Анри Пуанкаре, уже нельзя. Слишком много фактов противоречит этому.
Для защиты релятивизма Поль Дирак ввел афизическое и алогичное понятие отрицательной энергии, а затем и существование «моря» двух компенсирующих друг друга энергий в вакууме — положительной и отрицательной, а также «моря» компенсирующих друг друга частиц — виртуальных (то есть кажущихся) электронов и позитронов в вакууме.
Однако такая постановка является внутренне противоречивой (виртуальные частицы ненаблюдаемы и их по произволу можно считать в одном случае отсутствующими, а в другом — присутствующими) и противоречащей релятивизму (то есть отрицанию эфира, так как при наличии таких частиц в вакууме релятивизм уже просто невозможен). Подробнее читайте в FAQ по эфирной физике.