О книге
Эта книга создавалась как вводный курс по языку программирования Visual Basic .NET для читателей, обладающих определенным опытом программирования. Впрочем, опыт работы на Visual Basic не обязателен. | Хоть в книге и приводится описание нового синтаксиса VB.NET, это не главное.Введение
Среда программирования VB.NET: Visual Studio .NET
Приступаем к работе
Создание нового решения
Основные окна IDE
Редактор
Окно решения. Окно свойств.
Окно внешних ссылок
Окно вывода и окно команд
Работа с решением
Включение новых проектов
Компиляция
Пакетная компиляция
Параметры компиляции. Отладочная и окончательная версии. Выходные файлы.
Отладка в VB.NETВыражения, операторы и передача управления
Консольные приложения
Команды VB.NET. Комментарии.
Переменные и присваивание
Литералы и их соответствие типам данных
Объявление переменных
Преобразования разнотипных значений
Строки. Строковые функции.
Форматирование данных
Математические операторы
Круглые скобки и приоритет операций
Математические функции и математические константы
Константы. Циклы.
Цикл с определенным условием
Циклы с неопределенным условием
Условные команды и принятие решений. Изменения в видимости переменных. Ускоренная проверка.
Select Case. GoTo.
Логические операторы. Массивы.
Массивы с индексацией элементов в заданном интервале. Цикл For-Each.
Многомерные массивы. Процедуры и функции.
Функции
Процедуры. Преждевременный выход из функций или процедур.
Передача массивов функциям и процедурам. Процедуры и функции с необязательными аргументами.
Именованные аргументы. Рекурсия.Классы и объекты
Введение в ООП (объектно-ориентированное программирование)
Классы как пользовательские типы. Как объекты взаимодействуют друг с другом?
Терминология ООП. Отношения между классами в программах.
Абстракция. Инкапсуляция.
Наследование
Полиморфизм
Переход к использованию объектов
Экземпляры. Преимущества ООП.
Создание объектов в VB.NET
Параметризованные конструкторы
Пример: класс String, класс StringBuilder
Хронометраж – насколько быстрее работает класс StringBuilder?
Пространства имен. Импортирование. Класс DirectoryInfo.
Справочная система и .NET Framework
Классы коллекций в .NET Framework. ArrayList.
Хэш-таблицы
Объектные переменные
Is и Nothing. TypeName и TypeOf.
Проблемы с передачей объектных переменных по значению
Определение классов в программе
Атрибуты уровня доступа и создание объектов. Me.
Перегрузка членов класса
Снова о конструкторах
Снова о свойствах. Свойства и инкапсуляция.
Область видимости переменных
Вложенные классы. Практическое использование вложенных классов на примере связанного списка.
Общие данные в классах. Общие члены классов.
Жизненный цикл объекта. Уничтожение объектов.
Структурные типы
Перечисляемые типы
Структуры. Определение структур в программе.
Пространства имен для создаваемых классов
Окно классов
Отладка объектно-ориентированных программНаследование и интерфейсы
Основы наследования
Знакомство с наследованием
Обращение к функциональности базового класса
Переопределение свойств и методов
Как стать начальником? Просмотр иерархии наследования. Правила преобразования и обращения к членам классов в иерархии наследования.
Полиморфизм на практике
Замещение
Абстрактные базовые классы. Пример: класс CollectionBase.
Корневой базовый класс Object. Основные методы класса Object.
Equals и ReferenceEquals. Метод ToString.
Функция GetType и рефлексия
MemberWiseClone
Проблема неустойчивости базовых классов и контроль версии
Интерфейсы
Механика реализации интерфейса. Нетривиальное применение интерфейсов.
Выбор между интерфейсами и наследованием. Важнейшие интерфейсы: ICloneable и IDisposable.
Коллекции. For Each и интерфейс lEnumerable.
ICollection
IDictionary
IComparable
Интерфейс IComparerОбработка событий и делегаты
Обработка событий с точки зрения ООП
Передача данных функциям, вызываемым в результате событий
Простейшее инициирование событий
Подключение приемников к источнику
Все вместе
Построение классов событий
Динамическая обработка событий
Отключение обработчиков событий. Обработка событий в иерархии наследования.
Делегаты
Создание делегата
Практический пример: специализированная сортировка
Групповые делегаты
Групповые делегаты как члены классов. Делегаты и события.Обработка ошибок в VB.NET
Формы Windows, графический вывод и печать
Немного истории
Дизайнер форм
Сохранение пропорций: свойства Anchor и Dock. Меню Tab Order.
Снова о простой программе
Свойства форм
Элементы меню и новый редактор меню Visual Studio. Контекстные меню.
Формы MDI
Диалоговые формы и диалоговые окна. ColorDialog. FontDialog. FileDialog. Создание диалоговых окон.
Размещение элементов на форме во время выполнения
Наследование форм. Построение нестандартных элементов на базе наследования.
Переопределение события
Добавление новых событий. Добавление новых свойств.
Иерархия пространства имен System.Windows.Forms
Средства базового класса Control. События клавиатуры. События проверки.
Графика: GDI+
Простейший вывод
Вывод текста
Пример: вывод всех шрифтов в системе
Печать
Многостраничный вывод. О классе PrintPageEventArgs.
Элемент PrintDialog и конфигурация печати. Самостоятельное программирование печати.
Предварительный просмотрВвод-вывод
Каталоги и файлы
Класс Path
Класс Directory
Классе File. Атрибуты файла.
Классы DirectoryInfo и FileInfo
Рекурсивный просмотр дерева каталогов
Важнейшие члены классов FileSystemInfo, FileInfo и DirectoryInfo
Потоки данных
Запись в файл
Чтение и запись двоичных данных: классы BinaryReader и BinaryWriter
TextReader, TextWriter и производные классы. Объектные потоки: сохранение и восстановление объектов.
Простая сериализация. Простое восстановление. Применение сериализации при клонировании объектов.
Практический пример: динамический список с поддержкой сериализации
Сетевые потоки
Монитор файловой системыМногопоточные приложения
Многозадачность
Знакомство с многопоточностью
Домены приложений
Создание потоков
Метод Join. Имена потоков, CurrentThread и ThreadState.
Окно потоков. Приостановка потока.
Завершение или прерывание программных потоков
Приостановка и уничтожение потоков. Фоновые потоки (демоны).
Более серьезный пример: извлечение данных из кода HTML
Главная опасность (общие данные)
Решение проблемы: синхронизация
Команда SyncLock и класс Monitor
Взаимная блокировка
Совместная работа с данными по мере их создания
Многопоточность в графических программах
Следующий шаг: кнопка Show CountПоддержка баз данных в VB.NET
Почему ADO.NET – не ADO++
Автономные наборы данных: новый подход к работе с базами данных. Классы сборки System.Data.DLL.
Пространство имен System.Data.OleDb
System.Data.SqlClient
Вызов хранимой процедуры
Нетривиальный пример работы с базами данных в VB.NET (часть 1)
Нетривиальный пример работы с базами данных в VB.NET (часть 2)Краткий обзор ASP.NET
Сборки .NET, установка приложений и COM Interop
SamoYchiteli.ru
Иллюстрированные самоучители