О книге |
2 |
Введение |
3 |
Visual Basic: прошлое и настоящее |
4 |
Версии Visual Basic |
5 |
.NET и изменение парадигмы. Common Language Runtime. |
6 |
VB как объектно-ориентированный язык |
7 |
Автоматическая сборка мусора (ликвидация утечки памяти). Структурная обработка ошибок. Многопоточность. |
8 |
Трудности перехода на VB.NET |
9 |
Сравнение С# с VB.NET |
10 |
Среда программирования VB.NET: Visual Studio .NET |
11 |
Приступаем к работе |
12 |
Создание нового решения |
13 |
Основные окна IDE |
16 |
Редактор |
17 |
Окно решения. Окно свойств. |
20 |
Окно внешних ссылок |
21 |
Окно вывода и окно команд |
22 |
Работа с решением |
23 |
Включение новых проектов |
26 |
Компиляция |
27 |
Пакетная компиляция |
28 |
Параметры компиляции. Отладочная и окончательная версии. Выходные файлы. |
30 |
Отладка в VB.NET |
31 |
Выражения, операторы и передача управления |
34 |
Консольные приложения |
35 |
Команды VB.NET. Комментарии. |
37 |
Переменные и присваивание |
38 |
Литералы и их соответствие типам данных |
39 |
Объявление переменных |
41 |
Преобразования разнотипных значений |
42 |
Строки. Строковые функции. |
44 |
Форматирование данных |
46 |
Математические операторы |
47 |
Круглые скобки и приоритет операций |
49 |
Математические функции и математические константы |
50 |
Константы. Циклы. |
51 |
Цикл с определенным условием |
52 |
Циклы с неопределенным условием |
53 |
Условные команды и принятие решений. Изменения в видимости переменных. Ускоренная проверка. |
54 |
Select Case. GoTo. |
55 |
Логические операторы. Массивы. |
56 |
Массивы с индексацией элементов в заданном интервале. Цикл For-Each. |
57 |
Многомерные массивы. Процедуры и функции. |
58 |
Функции |
59 |
Процедуры. Преждевременный выход из функций или процедур. |
60 |
Передача массивов функциям и процедурам. Процедуры и функции с необязательными аргументами. |
61 |
Именованные аргументы. Рекурсия. |
62 |
Классы и объекты |
63 |
Введение в ООП (объектно-ориентированное программирование) |
64 |
Классы как пользовательские типы. Как объекты взаимодействуют друг с другом? |
65 |
Терминология ООП. Отношения между классами в программах. |
66 |
Абстракция. Инкапсуляция. |
67 |
Наследование |
68 |
Полиморфизм |
69 |
Переход к использованию объектов |
70 |
Экземпляры. Преимущества ООП. |
71 |
Создание объектов в VB.NET |
72 |
Параметризованные конструкторы |
74 |
Пример: класс String, класс StringBuilder |
75 |
Хронометраж – насколько быстрее работает класс StringBuilder? |
77 |
Пространства имен. Импортирование. Класс DirectoryInfo. |
78 |
Справочная система и .NET Framework |
81 |
Классы коллекций в .NET Framework. ArrayList. |
83 |
Хэш-таблицы |
85 |
Объектные переменные |
87 |
Is и Nothing. TypeName и TypeOf. |
88 |
Проблемы с передачей объектных переменных по значению |
89 |
Определение классов в программе |
90 |
Атрибуты уровня доступа и создание объектов. Me. |
92 |
Перегрузка членов класса |
93 |
Снова о конструкторах |
94 |
Снова о свойствах. Свойства и инкапсуляция. |
95 |
Область видимости переменных |
96 |
Вложенные классы. Практическое использование вложенных классов на примере связанного списка. |
97 |
Общие данные в классах. Общие члены классов. |
99 |
Жизненный цикл объекта. Уничтожение объектов. |
101 |
Структурные типы |
103 |
Перечисляемые типы |
104 |
Структуры. Определение структур в программе. |
105 |
Пространства имен для создаваемых классов |
107 |
Окно классов |
108 |
Отладка объектно-ориентированных программ |
109 |
Наследование и интерфейсы |
111 |
Основы наследования |
112 |
Знакомство с наследованием |
114 |
Обращение к функциональности базового класса |
115 |
Переопределение свойств и методов |
116 |
Как стать начальником? Просмотр иерархии наследования. Правила преобразования и обращения к членам классов в иерархии наследования. |
118 |
Полиморфизм на практике |
119 |
Замещение |
121 |
Абстрактные базовые классы. Пример: класс CollectionBase. |
122 |
Корневой базовый класс Object. Основные методы класса Object. |
125 |
Equals и ReferenceEquals. Метод ToString. |
126 |
Функция GetType и рефлексия |
127 |
MemberWiseClone |
128 |
Проблема неустойчивости базовых классов и контроль версии |
130 |
Интерфейсы |
133 |
Механика реализации интерфейса. Нетривиальное применение интерфейсов. |
134 |
Выбор между интерфейсами и наследованием. Важнейшие интерфейсы: ICloneable и IDisposable. |
137 |
Коллекции. For Each и интерфейс lEnumerable. |
139 |
ICollection |
141 |
IDictionary |
142 |
IComparable |
143 |
Интерфейс IComparer |
144 |
Обработка событий и делегаты |
145 |
Обработка событий с точки зрения ООП |
146 |
Передача данных функциям, вызываемым в результате событий |
147 |
Простейшее инициирование событий |
148 |
Подключение приемников к источнику |
149 |
Все вместе |
150 |
Построение классов событий |
152 |
Динамическая обработка событий |
153 |
Отключение обработчиков событий. Обработка событий в иерархии наследования. |
155 |
Делегаты |
156 |
Создание делегата |
157 |
Практический пример: специализированная сортировка |
158 |
Групповые делегаты |
160 |
Групповые делегаты как члены классов. Делегаты и события. |
161 |
Обработка ошибок в VB.NET |
162 |
Проверка ошибок и обработка исключений |
163 |
Подготовка к структурной обработке исключений |
164 |
Анализ исключений. Наличие нескольких секций Catch. |
165 |
Инициирование исключений |
167 |
Иерархия исключений. Исключения как замена для goto. |
169 |
Секция Finally. Рекомендации по использованию исключений. |
170 |
Формы Windows, графический вывод и печать |
171 |
Немного истории |
172 |
Дизайнер форм |
174 |
Сохранение пропорций: свойства Anchor и Dock. Меню Tab Order. |
175 |
Снова о простой программе |
177 |
Свойства форм |
180 |
Элементы меню и новый редактор меню Visual Studio. Контекстные меню. |
182 |
Формы MDI |
185 |
Диалоговые формы и диалоговые окна. ColorDialog. FontDialog. FileDialog. Создание диалоговых окон. |
187 |
Размещение элементов на форме во время выполнения |
189 |
Наследование форм. Построение нестандартных элементов на базе наследования. |
190 |
Переопределение события |
191 |
Добавление новых событий. Добавление новых свойств. |
193 |
Иерархия пространства имен System.Windows.Forms |
195 |
Средства базового класса Control. События клавиатуры. События проверки. |
197 |
Графика: GDI+ |
198 |
Простейший вывод |
199 |
Вывод текста |
200 |
Пример: вывод всех шрифтов в системе |
201 |
Печать |
203 |
Многостраничный вывод. О классе PrintPageEventArgs. |
204 |
Элемент PrintDialog и конфигурация печати. Самостоятельное программирование печати. |
205 |
Предварительный просмотр |
206 |
Ввод-вывод |
207 |
Каталоги и файлы |
208 |
Класс Path |
209 |
Класс Directory |
210 |
Классе File. Атрибуты файла. |
211 |
Классы DirectoryInfo и FileInfo |
212 |
Рекурсивный просмотр дерева каталогов |
213 |
Важнейшие члены классов FileSystemInfo, FileInfo и DirectoryInfo |
214 |
Потоки данных |
216 |
Запись в файл |
218 |
Чтение и запись двоичных данных: классы BinaryReader и BinaryWriter |
221 |
TextReader, TextWriter и производные классы. Объектные потоки: сохранение и восстановление объектов. |
222 |
Простая сериализация. Простое восстановление. Применение сериализации при клонировании объектов. |
224 |
Практический пример: динамический список с поддержкой сериализации |
226 |
Сетевые потоки |
228 |
Монитор файловой системы |
230 |
Многопоточные приложения |
232 |
Многозадачность |
233 |
Знакомство с многопоточностью |
234 |
Домены приложений |
235 |
Создание потоков |
236 |
Метод Join. Имена потоков, CurrentThread и ThreadState. |
239 |
Окно потоков. Приостановка потока. |
240 |
Завершение или прерывание программных потоков |
241 |
Приостановка и уничтожение потоков. Фоновые потоки (демоны). |
242 |
Более серьезный пример: извлечение данных из кода HTML |
243 |
Главная опасность (общие данные) |
245 |
Решение проблемы: синхронизация |
247 |
Команда SyncLock и класс Monitor |
248 |
Взаимная блокировка |
249 |
Совместная работа с данными по мере их создания |
252 |
Многопоточность в графических программах |
255 |
Следующий шаг: кнопка Show Count |
257 |
Поддержка баз данных в VB.NET |
259 |
Почему ADO.NET – не ADO++ |
260 |
Автономные наборы данных: новый подход к работе с базами данных. Классы сборки System.Data.DLL. |
261 |
Пространство имен System.Data.OleDb |
262 |
System.Data.SqlClient |
264 |
Вызов хранимой процедуры |
265 |
Нетривиальный пример работы с базами данных в VB.NET (часть 1) |
266 |
Нетривиальный пример работы с базами данных в VB.NET (часть 2) |
269 |
Краткий обзор ASP.NET |
272 |
Немного истории |
273 |
Простое web-приложение для ASP.NET |
274 |
Что передается клиенту? |
276 |
Файл Web.config |
277 |
Простая web-служба |
279 |
Использование web-службы на стороне клиента |
281 |
Сборки .NET, установка приложений и COM Interop |
284 |
Принципы работы СОМ |
285 |
Сборки .NET |
286 |
Манифест |
287 |
Исследование манифеста |
288 |
Общие сборки и GAC. Включение и удаление сборок из GAC. |
289 |
Сильные имена и совместное использование сборок. Построение ключей. Сертификация сборки. |
290 |
COM Interop и вызовы функций DLL. Вызовы функций DLL. |
291 |