Иллюстрированный самоучитель по VB.NET


Трудности перехода на VB .NET


 

Трудности перехода на VB .NET


Возникает заманчивая картина: вы запускаете программу преобразования, немного дорабатываете полученный результат, и программа VB автоматически адаптируется для VB .NET!

Поверьте, этот путь ведет в тупик. Чтобы в полной мере использовать преимущества VB .NET, необходимо основательно разобраться в объектно-ориентированном программировании и принципах работы .NET Framework. Вам не придется запоминать тысячи методов, входящих в .NET Framework, но для сознательного чтения документации или использования средств IntelliSense, встроенных в IDE, нужно знать, как работает .NET. Без хорошего понимания этого материала вы попросту не сможете работать в IDE с дизайнерами форм Windows и Web.

Чтобы представить масштаб изменений, достаточно рассмотреть простейший пример — форму, на которой находится кнопка. В прежних версиях VB весь код, связанный с кнопкой (и выполнявшийся при ее нажатии), находился в процедуре события Click.

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

Приведенный ниже фрагмент (в основном автоматически сгенерированный) размещает кнопку на форме и выводит окно сообщения при нажатии кнопки. Числа в скобках к программе не относятся, они просто используются для ссылок на строки листинга в тексте книги.

(1) Public Class Form1

(2) Inherits System.Windows.Forms.Form

(3) #Region " Windows Form Designer generated code "

(4) Public Sub New()

(5) MyBase.New()

' Вызов необходим для работы дизайнера форм Windows

(6) InitializeComponent()

' Дальнейшая инициализация выполняется ' после вызова InitializeComponent()

End Sub

' Форма переопределяет Dispose для очистки списка компонентов.

(7) Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) If disposing Then



- Начало -  - Назад -  - Вперед -