Изменения документа Оглавление

Редактировал(а) Alexandr Fokin 2022/12/12 12:01

От версии 1.2
отредактировано Alexandr Fokin
на 2022/12/12 12:01
Изменить комментарий: К данной версии нет комментариев
К версии 1.1
отредактировано Alexandr Fokin
на 2022/12/12 11:59
Изменить комментарий: К данной версии нет комментариев

Сводка

Подробности

Свойства страницы
Содержимое
... ... @@ -1,2837 +1,0 @@
1 -{{html clean="false"}}
2 -<html>
3 -
4 -<head>
5 -<meta http-equiv=Content-Type content="text/html; charset=windows-1251">
6 -<meta name=Generator content="Microsoft Word 15 (filtered)">
7 -<style>
8 -<!--
9 - /* Font Definitions */
10 - @font-face
11 - {font-family:Wingdings;
12 - panose-1:5 0 0 0 0 0 0 0 0 0;}
13 -@font-face
14 - {font-family:"Cambria Math";
15 - panose-1:2 4 5 3 5 4 6 3 2 4;}
16 -@font-face
17 - {font-family:"Calibri Light";
18 - panose-1:2 15 3 2 2 2 4 3 2 4;}
19 -@font-face
20 - {font-family:"Segoe UI";
21 - panose-1:2 11 5 2 4 2 4 2 2 3;}
22 - /* Style Definitions */
23 - p.MsoNormal, li.MsoNormal, div.MsoNormal
24 - {margin-top:0cm;
25 - margin-right:0cm;
26 - margin-bottom:8.0pt;
27 - margin-left:0cm;
28 - line-height:107%;
29 - font-size:11.0pt;
30 - font-family:"Calibri",sans-serif;}
31 -h1
32 - {mso-style-link:"Заголовок 1 Знак";
33 - margin-top:12.0pt;
34 - margin-right:0cm;
35 - margin-bottom:0cm;
36 - margin-left:0cm;
37 - margin-bottom:.0001pt;
38 - line-height:107%;
39 - page-break-after:avoid;
40 - font-size:16.0pt;
41 - font-family:"Calibri Light",sans-serif;
42 - color:#2E74B5;
43 - font-weight:normal;}
44 -h2
45 - {mso-style-link:"Заголовок 2 Знак";
46 - margin-top:2.0pt;
47 - margin-right:0cm;
48 - margin-bottom:0cm;
49 - margin-left:0cm;
50 - margin-bottom:.0001pt;
51 - line-height:107%;
52 - page-break-after:avoid;
53 - font-size:13.0pt;
54 - font-family:"Calibri Light",sans-serif;
55 - color:#2E74B5;
56 - font-weight:normal;}
57 -h3
58 - {mso-style-link:"Заголовок 3 Знак";
59 - margin-top:2.0pt;
60 - margin-right:0cm;
61 - margin-bottom:0cm;
62 - margin-left:0cm;
63 - margin-bottom:.0001pt;
64 - line-height:107%;
65 - page-break-after:avoid;
66 - font-size:12.0pt;
67 - font-family:"Calibri Light",sans-serif;
68 - color:#1F4D78;
69 - font-weight:normal;}
70 -h4
71 - {mso-style-link:"Заголовок 4 Знак";
72 - margin-top:2.0pt;
73 - margin-right:0cm;
74 - margin-bottom:0cm;
75 - margin-left:0cm;
76 - margin-bottom:.0001pt;
77 - line-height:107%;
78 - page-break-after:avoid;
79 - font-size:11.0pt;
80 - font-family:"Calibri Light",sans-serif;
81 - color:#2E74B5;
82 - font-weight:normal;
83 - font-style:italic;}
84 -p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
85 - {mso-style-link:"Текст выноски Знак";
86 - margin:0cm;
87 - margin-bottom:.0001pt;
88 - font-size:9.0pt;
89 - font-family:"Segoe UI",sans-serif;}
90 -p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
91 - {margin-top:0cm;
92 - margin-right:0cm;
93 - margin-bottom:8.0pt;
94 - margin-left:36.0pt;
95 - line-height:107%;
96 - font-size:11.0pt;
97 - font-family:"Calibri",sans-serif;}
98 -p.MsoListParagraphCxSpFirst, li.MsoListParagraphCxSpFirst, div.MsoListParagraphCxSpFirst
99 - {margin-top:0cm;
100 - margin-right:0cm;
101 - margin-bottom:0cm;
102 - margin-left:36.0pt;
103 - margin-bottom:.0001pt;
104 - line-height:107%;
105 - font-size:11.0pt;
106 - font-family:"Calibri",sans-serif;}
107 -p.MsoListParagraphCxSpMiddle, li.MsoListParagraphCxSpMiddle, div.MsoListParagraphCxSpMiddle
108 - {margin-top:0cm;
109 - margin-right:0cm;
110 - margin-bottom:0cm;
111 - margin-left:36.0pt;
112 - margin-bottom:.0001pt;
113 - line-height:107%;
114 - font-size:11.0pt;
115 - font-family:"Calibri",sans-serif;}
116 -p.MsoListParagraphCxSpLast, li.MsoListParagraphCxSpLast, div.MsoListParagraphCxSpLast
117 - {margin-top:0cm;
118 - margin-right:0cm;
119 - margin-bottom:8.0pt;
120 - margin-left:36.0pt;
121 - line-height:107%;
122 - font-size:11.0pt;
123 - font-family:"Calibri",sans-serif;}
124 -span.1
125 - {mso-style-name:"Заголовок 1 Знак";
126 - mso-style-link:"Заголовок 1";
127 - font-family:"Calibri Light",sans-serif;
128 - color:#2E74B5;}
129 -span.2
130 - {mso-style-name:"Заголовок 2 Знак";
131 - mso-style-link:"Заголовок 2";
132 - font-family:"Calibri Light",sans-serif;
133 - color:#2E74B5;}
134 -span.3
135 - {mso-style-name:"Заголовок 3 Знак";
136 - mso-style-link:"Заголовок 3";
137 - font-family:"Calibri Light",sans-serif;
138 - color:#1F4D78;}
139 -span.4
140 - {mso-style-name:"Заголовок 4 Знак";
141 - mso-style-link:"Заголовок 4";
142 - font-family:"Calibri Light",sans-serif;
143 - color:#2E74B5;
144 - font-style:italic;}
145 -span.a
146 - {mso-style-name:"Текст выноски Знак";
147 - mso-style-link:"Текст выноски";
148 - font-family:"Segoe UI",sans-serif;}
149 -.MsoPapDefault
150 - {margin-bottom:8.0pt;
151 - line-height:107%;}
152 -@page WordSection1
153 - {size:595.3pt 841.9pt;
154 - margin:36.0pt 36.0pt 36.0pt 36.0pt;}
155 -div.WordSection1
156 - {page:WordSection1;}
157 - /* List Definitions */
158 - ol
159 - {margin-bottom:0cm;}
160 -ul
161 - {margin-bottom:0cm;}
162 --->
163 -</style>
164 -
165 -</head>
166 -
167 -<body lang=RU>
168 -
169 -<div class=WordSection1>
170 -
171 -<h1 style='margin-left:36.0pt;text-indent:-18.0pt'><span style='font-family:
172 -Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
173 -</span></span>Часть I. Основы CLR</h1>
174 -
175 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
176 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
177 -1. Модель выполнения кода в среде CLR</h2>
178 -
179 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
180 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Компиляция
181 -исходного кода в управляемые модули</h3>
182 -
183 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
184 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Объединение
185 -управляемых модулей в сборку</h3>
186 -
187 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
188 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Загрузка
189 -CLR</h3>
190 -
191 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
192 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Исполнение
193 -кода сборки </h3>
194 -
195 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
196 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
197 -</span></span>IL-код и верификация</h4>
198 -
199 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
200 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
201 -</span></span>Небезопасный код</h4>
202 -
203 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
204 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
205 -</span></span>IL и защита интеллектуальной собственности</h4>
206 -
207 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span lang=EN-US
208 -style='font-family:Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
209 -</span></span><span lang=EN-US>NGen.exe</span></h3>
210 -
211 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span lang=EN-US
212 -style='font-family:Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
213 -</span></span>Библиотека <span lang=EN-US>FCL </span></h3>
214 -
215 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span lang=EN-US
216 -style='font-family:Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
217 -</span></span><span lang=EN-US>CTS</span></h3>
218 -
219 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
220 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>CLS</h3>
221 -
222 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
223 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Взаимодействие
224 -с неуправляемым кодом</h3>
225 -
226 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
227 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
228 -2. Компоновка, упаковка, развертывание и администрирование приложений и типов</h2>
229 -
230 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
231 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Задачи
232 -развертывания в <span lang=EN-US>.</span>NET Framework</h3>
233 -
234 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
235 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Компоновка
236 -типов в модуль</h3>
237 -
238 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
239 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
240 -</span></span>Файл параметров</h4>
241 -
242 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
243 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Несколько
244 -слов о метаданных</h3>
245 -
246 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
247 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Объединение
248 -модулей для создания сборки</h3>
249 -
250 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
251 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
252 -</span></span>Добавление сборок в проект в среде Visual Studio</h4>
253 -
254 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
255 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
256 -</span></span>Использование утилиты Assembly Linker</h4>
257 -
258 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
259 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
260 -</span></span>Включение в сборку файлов ресурсов</h4>
261 -
262 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
263 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Ресурсы
264 -со сведениями о версии сборки</h3>
265 -
266 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
267 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
268 -</span></span>Номера версии</h4>
269 -
270 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
271 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Региональные
272 -стандарты</h3>
273 -
274 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
275 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Развертывание
276 -простых приложений (закрытое развертывание сборок)</h3>
277 -
278 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
279 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Простое
280 -средство администрирования (конфигурационный файл)</h3>
281 -
282 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
283 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
284 -</span></span>Алгоритм поиска файлов сборки</h4>
285 -
286 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
287 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
288 -3. Совместно используемые сборки и сборки со строгим именем</h2>
289 -
290 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
291 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Два
292 -вида сборок — два вида развертывания</h3>
293 -
294 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
295 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Назначение
296 -сборке строгого имени</h3>
297 -
298 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
299 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Глобальный
300 -кэш сборок</h3>
301 -
302 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
303 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Построение
304 -сборки, ссылающейся на сборку со строгим именем</h3>
305 -
306 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
307 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Устойчивость
308 -сборок со строгими именами к несанкционированной модификации</h3>
309 -
310 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
311 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Отложенное
312 -подписание</h3>
313 -
314 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
315 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Закрытое
316 -развертывание сборок со строгими именами</h3>
317 -
318 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
319 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Как
320 -исполняющая среда разрешает ссылки на типы</h3>
321 -
322 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
323 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Дополнительные
324 -административные средства (конфигурационные файлы)</h3>
325 -
326 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
327 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
328 -</span></span>Управление версиями при помощи политики издателя</h4>
329 -
330 -<h1 style='margin-left:36.0pt;text-indent:-18.0pt'><span style='font-family:
331 -Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
332 -</span></span>Часть II. Проектирование типов</h1>
333 -
334 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
335 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
336 -4. Основы типов</h2>
337 -
338 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
339 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Все
340 -типы — производные от System.Object</h3>
341 -
342 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
343 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Приведение
344 -типов</h3>
345 -
346 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
347 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
348 -</span></span>Приведение типов в C# с помощью операторов is и as</h4>
349 -
350 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
351 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Пространства
352 -имен и сборки</h3>
353 -
354 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
355 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
356 -</span></span>Связь между сборками и пространством имен</h4>
357 -
358 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
359 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Как
360 -разные компоненты взаимодействуют во время выполнения</h3>
361 -
362 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
363 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
364 -5. Примитивные, ссылочные и значимые типы</h2>
365 -
366 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
367 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Примитивные
368 -типы в языках программирования</h3>
369 -
370 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
371 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
372 -</span></span>Проверяемые и непроверяемые операции для примитивных типов</h4>
373 -
374 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
375 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Ссылочные
376 -и значимые типы</h3>
377 -
378 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
379 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
380 -</span></span>Как CLR управляет размещением полей для типа </h4>
381 -
382 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
383 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Упаковка
384 -и распаковка значимых типов</h3>
385 -
386 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
387 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
388 -</span></span>Изменение полей в упакованных значимых типах посредством интерфейсов
389 -(и почему этого лучше не делать)</h4>
390 -
391 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
392 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
393 -</span></span>Равенство и тождество объектов</h4>
394 -
395 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
396 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Хеш-коды
397 -объектов</h3>
398 -
399 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
400 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Примитивный
401 -тип данных dynamic</h3>
402 -
403 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
404 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
405 -6. Основные сведения о членах и типах</h2>
406 -
407 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
408 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Члены
409 -типа</h3>
410 -
411 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
412 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Видимость
413 -типа</h3>
414 -
415 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
416 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
417 -</span></span>Дружественные сборки</h4>
418 -
419 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
420 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Доступ
421 -к членам типов</h3>
422 -
423 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
424 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Статические
425 -классы</h3>
426 -
427 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
428 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Частичные
429 -классы, структуры и интерфейсы</h3>
430 -
431 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
432 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Компоненты,
433 -полиморфизм и версии</h3>
434 -
435 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
436 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
437 -</span></span>Вызов виртуальных методов, свойств и событий в CLR</h4>
438 -
439 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
440 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
441 -</span></span>Разумное использование видимости типов и модификаторов доступа к членам</h4>
442 -
443 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
444 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
445 -</span></span>Работа с виртуальными методами при управлении версиями типов</h4>
446 -
447 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
448 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
449 -7. Константы и поля</h2>
450 -
451 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
452 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Константы</h3>
453 -
454 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
455 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Поля</h3>
456 -
457 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
458 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
459 -8. Методы</h2>
460 -
461 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
462 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Конструкторы
463 -экземпляров и классы (ссылочные типы)</h3>
464 -
465 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
466 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Конструкторы
467 -экземпляров и структуры (значимые типы)</h3>
468 -
469 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
470 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Конструкторы
471 -типов</h3>
472 -
473 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
474 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Методы
475 -перегруженных операторов</h3>
476 -
477 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
478 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
479 -</span></span>Операторы и взаимодействие языков программирования</h4>
480 -
481 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
482 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
483 -</span></span>Особое мнение автора о правилах Microsoft, связанных с именами методов
484 -операторов</h4>
485 -
486 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
487 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Методы
488 -операторов преобразования</h3>
489 -
490 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
491 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Методы
492 -расширения</h3>
493 -
494 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
495 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
496 -</span></span>Правила и рекомендации</h4>
497 -
498 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
499 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
500 -</span></span>Расширение разных типов методами расширения</h4>
501 -
502 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
503 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
504 -</span></span>Атрибут расширения</h4>
505 -
506 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
507 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Частичные
508 -методы</h3>
509 -
510 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
511 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
512 -</span></span>Правила и рекомендации</h4>
513 -
514 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
515 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
516 -9. Параметры</h2>
517 -
518 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
519 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Необязательные
520 -и именованные параметры</h3>
521 -
522 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
523 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
524 -</span></span>Правила использования параметров.</h4>
525 -
526 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
527 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
528 -</span></span>Атрибут DefaultParameterValue и необязательные атрибуты</h4>
529 -
530 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
531 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Неявно
532 -типизированные локальные переменные</h3>
533 -
534 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
535 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Передача
536 -параметров в метод по ссылке</h3>
537 -
538 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
539 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Передача
540 -переменного количества аргументов</h3>
541 -
542 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
543 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Типы
544 -параметров и возвращаемых значений</h3>
545 -
546 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
547 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Константность</h3>
548 -
549 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
550 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
551 -10. Свойства</h2>
552 -
553 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
554 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Свойства
555 -без параметров</h3>
556 -
557 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
558 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
559 -</span></span>Автоматически реализуемые свойства</h4>
560 -
561 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
562 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
563 -</span></span>Осторожный подход к определению свойств</h4>
564 -
565 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
566 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
567 -</span></span>Свойства и отладчик Visual Studio</h4>
568 -
569 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
570 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
571 -</span></span>Инициализаторы объектов и коллекций</h4>
572 -
573 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
574 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
575 -</span></span>Анонимные типы</h4>
576 -
577 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
578 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
579 -</span></span>Тип System.Tuple</h4>
580 -
581 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
582 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Свойства
583 -с параметрами</h3>
584 -
585 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
586 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
587 -</span></span>Выбор главного свойства с параметрами</h4>
588 -
589 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
590 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Производительность
591 -при вызове методов доступа</h3>
592 -
593 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
594 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Доступность
595 -методов доступа свойств</h3>
596 -
597 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
598 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обобщенные
599 -методы доступа свойств</h3>
600 -
601 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
602 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
603 -11. События</h2>
604 -
605 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
606 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Разработка
607 -типа, поддерживающего событие</h3>
608 -
609 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
610 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Этап
611 -1. Определение типа для хранения всей дополнительной информации, передаваемой получателям
612 -уведомления о событии</h3>
613 -
614 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
615 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Этап
616 -2. Определение члена-события</h3>
617 -
618 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
619 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Этап
620 -3. Определение метода, ответственного за уведомление зарегистрированных объектов
621 -о событии</h3>
622 -
623 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
624 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Этап
625 -4. Определение метода, преобразующего входную информацию в желаемое событие</h3>
626 -
627 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
628 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Реализация
629 -событий компилятором</h3>
630 -
631 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
632 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Создание
633 -типа, отслеживающего событие</h3>
634 -
635 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
636 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Явное
637 -управление регистрацией событий</h3>
638 -
639 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
640 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
641 -12. Обобщения</h2>
642 -
643 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
644 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обобщения
645 -в библиотеке FCL</h3>
646 -
647 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
648 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Инфраструктура
649 -обобщений</h3>
650 -
651 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
652 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
653 -</span></span>Открытые и закрытые типы</h4>
654 -
655 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
656 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
657 -</span></span>Обобщенные типы и наследование</h4>
658 -
659 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
660 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
661 -</span></span>Идентификация обобщенных типов</h4>
662 -
663 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
664 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
665 -</span></span>Разрастание кода</h4>
666 -
667 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
668 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обобщенные
669 -интерфейсы</h3>
670 -
671 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
672 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обобщенные
673 -делегаты</h3>
674 -
675 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
676 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
677 -</span></span>Контравариантные и ковариантные аргументы-типы в делегатах и интерфейсах</h4>
678 -
679 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
680 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обобщенные
681 -методы</h3>
682 -
683 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
684 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
685 -</span></span>Обобщенные методы и выведение типов</h4>
686 -
687 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
688 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обобщения
689 -и другие члены</h3>
690 -
691 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
692 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Верификация
693 -и ограничения</h3>
694 -
695 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
696 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
697 -</span></span>Основные ограничения</h4>
698 -
699 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
700 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
701 -</span></span>Дополнительные ограничения</h4>
702 -
703 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
704 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
705 -</span></span>Ограничения конструктора</h4>
706 -
707 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
708 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
709 -</span></span>Другие проблемы верификации</h4>
710 -
711 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
712 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
713 -13<span lang=EN-US>.</span><span lang=EN-US> </span>Интерфейсы</h2>
714 -
715 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
716 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Наследование
717 -в классах и интерфейсах</h3>
718 -
719 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
720 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Определение
721 -интерфейсов</h3>
722 -
723 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
724 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Наследование
725 -интерфейсов</h3>
726 -
727 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
728 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Подробнее
729 -о вызовах интерфейсных методов</h3>
730 -
731 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
732 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Явные
733 -и неявные реализации интерфейсных методов (что происходит за кулисами)</h3>
734 -
735 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
736 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обобщенные
737 -интерфейсы</h3>
738 -
739 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
740 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обобщения
741 -и ограничения интерфейса</h3>
742 -
743 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
744 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Реализация
745 -нескольких интерфейсов с одинаковыми сигнатурами и именами методов</h3>
746 -
747 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
748 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Совершенствование
749 -безопасности типов за счет явной реализации интерфейсных методов</h3>
750 -
751 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
752 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Опасности
753 -явной реализации интерфейсных методов</h3>
754 -
755 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
756 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Дилемма
757 -разработчика: базовый класс или интерфейс?</h3>
758 -
759 -<h1 style='margin-left:36.0pt;text-indent:-18.0pt'><span style='font-family:
760 -Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
761 -</span></span>Часть III. Основные типы данных</h1>
762 -
763 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
764 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
765 -14. Символы, строки и обработка текста</h2>
766 -
767 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
768 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Символы</h3>
769 -
770 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
771 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Тип
772 -System.String</h3>
773 -
774 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
775 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
776 -</span></span>Создание строк</h4>
777 -
778 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
779 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
780 -</span></span>Неизменяемые строки</h4>
781 -
782 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
783 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
784 -</span></span>Сравнение строк</h4>
785 -
786 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
787 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
788 -</span></span>Интернирование строк</h4>
789 -
790 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
791 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
792 -</span></span>Создание пулов строк</h4>
793 -
794 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
795 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
796 -</span></span>Работа с символами и текстовыми элементами в строке</h4>
797 -
798 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
799 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
800 -</span></span>Прочие операции со строками</h4>
801 -
802 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
803 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Эффективное
804 -создание строк</h3>
805 -
806 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
807 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
808 -</span></span>Создание объекта StringBuilder</h4>
809 -
810 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
811 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
812 -</span></span>Члены типа StringBuilder</h4>
813 -
814 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
815 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Получение
816 -строкового представления объекта</h3>
817 -
818 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
819 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
820 -</span></span>Форматы и региональные стандарты</h4>
821 -
822 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
823 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
824 -</span></span>Форматирование нескольких объектов в одну строку</h4>
825 -
826 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
827 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
828 -</span></span>Создание собственного средства форматирования</h4>
829 -
830 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
831 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Получение
832 -объекта посредством разбора строки</h3>
833 -
834 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
835 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Кодировки:
836 -преобразования между символами и байтами</h3>
837 -
838 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
839 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
840 -</span></span>Кодирование и декодирование потоков символов и байтов</h4>
841 -
842 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
843 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
844 -</span></span>Кодирование и декодирование строк в кодировке Base-64</h4>
845 -
846 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
847 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Защищенные
848 -строки</h3>
849 -
850 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
851 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
852 -15. Перечислимые типы и битовые флаги</h2>
853 -
854 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
855 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Перечислимые
856 -типы</h3>
857 -
858 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
859 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Битовые
860 -флаги</h3>
861 -
862 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
863 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Добавление
864 -методов к перечислимым типам</h3>
865 -
866 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
867 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
868 -16. Массивы</h2>
869 -
870 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
871 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Инициализация
872 -элементов массива</h3>
873 -
874 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
875 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Приведение
876 -типов в массивах</h3>
877 -
878 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
879 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Базовый
880 -класс System Array</h3>
881 -
882 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span lang=EN-US
883 -style='font-family:Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
884 -</span></span>Реализация интерфейсов <span lang=EN-US>IEnumerable, ICollection </span>и
885 -<span lang=EN-US>IList</span></h3>
886 -
887 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
888 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Передача
889 -и возврат массивов</h3>
890 -
891 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
892 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Массивы
893 -с ненулевой нижней границей</h3>
894 -
895 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
896 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Внутренняя
897 -реализация массивов</h3>
898 -
899 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
900 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Небезопасный
901 -доступ к массивам и массивы фиксированного размера</h3>
902 -
903 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
904 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
905 -17. Делегаты</h2>
906 -
907 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
908 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Знакомство
909 -с делегатами</h3>
910 -
911 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
912 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обратный
913 -вызов статических методов</h3>
914 -
915 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
916 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обратный
917 -вызов экземплярных методов</h3>
918 -
919 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
920 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Тонкости
921 -использования делегатов</h3>
922 -
923 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
924 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обратный
925 -вызов нескольких методов (цепочки делегатов)</h3>
926 -
927 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
928 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
929 -</span></span>Поддержка цепочек делегатов в C#</h4>
930 -
931 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
932 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
933 -</span></span>Дополнительные средства управления цепочками делегатов</h4>
934 -
935 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
936 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Обобщенные
937 -делегаты</h3>
938 -
939 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
940 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Упрощенный
941 -синтаксис работы с делегатами</h3>
942 -
943 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
944 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
945 -</span></span>Упрощение 1: не создаем объект делегата</h4>
946 -
947 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
948 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
949 -</span></span>Упрощение 2: не определяем метод обратного вызова</h4>
950 -
951 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
952 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
953 -</span></span>Упрощение 3: не создаем обертку для локальных переменных для передачи
954 -их методу обратного вызова</h4>
955 -
956 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
957 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Делегаты
958 -и отражение</h3>
959 -
960 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
961 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
962 -18. Настраиваемые атрибуты</h2>
963 -
964 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
965 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Сфера
966 -применения настраиваемых атрибутов</h3>
967 -
968 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
969 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Определение
970 -класса атрибутов</h3>
971 -
972 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
973 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Конструктор
974 -атрибута и типы данных полей и свойств</h3>
975 -
976 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
977 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Выявление
978 -настраиваемых атрибутов</h3>
979 -
980 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
981 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Сравнение
982 -экземпляров атрибута</h3>
983 -
984 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
985 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Выявление
986 -настраиваемых атрибутов без создания объектов, производных от Attribute</h3>
987 -
988 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
989 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Условные
990 -атрибуты</h3>
991 -
992 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
993 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
994 -19. Null-совместимые значимые типы</h2>
995 -
996 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
997 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Поддержка
998 -в C# null-совместимых значимых типов</h3>
999 -
1000 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1001 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Оператор
1002 -объединения null-совместимых значений</h3>
1003 -
1004 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1005 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Поддержка
1006 -в CLR null-совместимых значимых типов</h3>
1007 -
1008 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1009 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1010 -</span></span>Упаковка null-совместимых значимых типов</h4>
1011 -
1012 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1013 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1014 -</span></span>Распаковка null-совместимых значимых типов</h4>
1015 -
1016 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1017 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1018 -</span></span>Вызов метода GetType через null-совместимый значимый тип</h4>
1019 -
1020 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1021 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1022 -</span></span>Вызов интерфейсных методов через null-совместимый  значимый тип</h4>
1023 -
1024 -<h1 style='margin-left:36.0pt;text-indent:-18.0pt'><span style='font-family:
1025 -Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1026 -</span></span>Часть IV. Ключевые механизмы</h1>
1027 -
1028 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1029 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1030 -20. Исключения и управление состоянием 496</h2>
1031 -
1032 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1033 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Определение
1034 -«исключения»</h3>
1035 -
1036 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1037 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Механика
1038 -обработки исключений</h3>
1039 -
1040 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1041 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1042 -</span></span>Блок try</h4>
1043 -
1044 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1045 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1046 -</span></span>Блок catch</h4>
1047 -
1048 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1049 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1050 -</span></span>Блок finally</h4>
1051 -
1052 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1053 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1054 -</span></span>CLS-совместимые и CLS-несовместимые исключения</h4>
1055 -
1056 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1057 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Класс
1058 -System<span lang=EN-US>.</span>Exception</h3>
1059 -
1060 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1061 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Классы
1062 -исключений, определенные в FCL</h3>
1063 -
1064 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1065 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Генерирование
1066 -исключений</h3>
1067 -
1068 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1069 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Создание
1070 -классов исключений</h3>
1071 -
1072 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1073 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Продуктивность
1074 -вместо надежности</h3>
1075 -
1076 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1077 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Приемы
1078 -работы с исключениями</h3>
1079 -
1080 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1081 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1082 -</span></span>Активно используйте блоки finally</h4>
1083 -
1084 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1085 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1086 -</span></span>Не надо перехватывать все исключения</h4>
1087 -
1088 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1089 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1090 -</span></span>Корректное восстановление после исключения</h4>
1091 -
1092 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1093 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Отмена
1094 -незавершенных операций при невосстановимых исключениях</h3>
1095 -
1096 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1097 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Сокрытие
1098 -деталей реализации для сохранения контракта</h3>
1099 -
1100 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1101 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Необработанные
1102 -исключения</h3>
1103 -
1104 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1105 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Отладка
1106 -исключений</h3>
1107 -
1108 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1109 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Скорость
1110 -обработки исключений</h3>
1111 -
1112 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1113 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Области
1114 -ограниченного выполнения</h3>
1115 -
1116 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1117 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Контракты
1118 -кода</h3>
1119 -
1120 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1121 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1122 -21. Автоматическое управление памятью (уборка мусора)</h2>
1123 -
1124 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1125 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Управляемая
1126 -куча</h3>
1127 -
1128 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1129 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1130 -</span></span>Выделение ресурсов из управляемой кучи</h4>
1131 -
1132 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1133 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1134 -</span></span>Алгоритм уборки мусора</h4>
1135 -
1136 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1137 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1138 -</span></span>Уборка мусора и отладка</h4>
1139 -
1140 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1141 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Поколения</h3>
1142 -
1143 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1144 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1145 -</span></span>Запуск уборки мусора</h4>
1146 -
1147 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1148 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1149 -</span></span>Большие объекты</h4>
1150 -
1151 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1152 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1153 -</span></span>Режимы уборки мусора</h4>
1154 -
1155 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1156 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1157 -</span></span>Программное управление уборщиком мусора</h4>
1158 -
1159 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1160 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1161 -</span></span>Мониторинг использования памяти приложением</h4>
1162 -
1163 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1164 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Освобождение
1165 -ресурсов при помощи механизма финализации</h3>
1166 -
1167 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1168 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1169 -</span></span>Типы, использующие системные ресурсы</h4>
1170 -
1171 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1172 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1173 -</span></span>Интересные аспекты зависимостей</h4>
1174 -
1175 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1176 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1177 -</span></span>Другие возможности уборщика мусора для работы с системными ресурсами</h4>
1178 -
1179 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1180 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1181 -</span></span>Внутренняя реализация финализации</h4>
1182 -
1183 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1184 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Мониторинг
1185 -и контроль времени жизни объектов</h3>
1186 -
1187 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1188 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1189 -22. Хостинг CLR и домены приложений</h2>
1190 -
1191 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1192 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Хостинг
1193 -CLR</h3>
1194 -
1195 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1196 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Домены
1197 -приложений</h3>
1198 -
1199 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1200 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1201 -</span></span>Доступ к объектам из других доменов</h4>
1202 -
1203 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1204 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Выгрузка
1205 -доменов</h3>
1206 -
1207 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1208 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Мониторинг
1209 -доменов</h3>
1210 -
1211 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1212 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Уведомление
1213 -о первом управляемом исключении домена</h3>
1214 -
1215 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1216 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Использование
1217 -хостами доменов приложений</h3>
1218 -
1219 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1220 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1221 -</span></span>Исполняемые приложения</h4>
1222 -
1223 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1224 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1225 -</span></span>Полнофункциональные интернет-приложения Silverlight</h4>
1226 -
1227 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1228 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1229 -</span></span>Microsoft ASPNET и веб-службы XML</h4>
1230 -
1231 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1232 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1233 -</span></span>Microsoft SQL Server</h4>
1234 -
1235 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1236 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1237 -</span></span>Будущее и мечты</h4>
1238 -
1239 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1240 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Нетривиальное
1241 -управление хостингом</h3>
1242 -
1243 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1244 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1245 -</span></span>Применение управляемого кода</h4>
1246 -
1247 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1248 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1249 -</span></span>Разработка надежных хост-приложений</h4>
1250 -
1251 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1252 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1253 -</span></span>Возвращение потока в хост</h4>
1254 -
1255 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1256 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1257 -23. Загрузка сборок и отражение</h2>
1258 -
1259 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1260 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Загрузка
1261 -сборок</h3>
1262 -
1263 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1264 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Использование
1265 -отражения для создания динамически расширяемых приложений</h3>
1266 -
1267 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1268 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Производительность
1269 -отражения</h3>
1270 -
1271 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1272 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1273 -</span></span>Нахождение типов, определенных в сборке</h4>
1274 -
1275 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1276 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1277 -</span></span>Объект Type</h4>
1278 -
1279 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1280 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1281 -</span></span>Создание иерархии типов, производных от Exception</h4>
1282 -
1283 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1284 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1285 -</span></span>Создание экземпляра типа</h4>
1286 -
1287 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1288 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Создание
1289 -приложений с поддержкой подключаемых компонентов</h3>
1290 -
1291 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1292 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1293 -</span></span>Нахождение членов типа путем отражения</h4>
1294 -
1295 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1296 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1297 -</span></span>Нахождение членов типа</h4>
1298 -
1299 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1300 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1301 -</span></span>Обращение к членам типов</h4>
1302 -
1303 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1304 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1305 -</span></span>Использование дескрипторов привязки для снижения потребления памяти
1306 -процессом</h4>
1307 -
1308 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1309 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1310 -24. Сериализация</h2>
1311 -
1312 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1313 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Практический
1314 -пример сериализации/десериализации</h3>
1315 -
1316 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1317 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Сериализуемые
1318 -типы</h3>
1319 -
1320 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1321 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Управление
1322 -сериализацией и десериализацией</h3>
1323 -
1324 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1325 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Сериализация
1326 -экземпляров типа</h3>
1327 -
1328 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1329 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Управление
1330 -сериализованными и десериализованными данными</h3>
1331 -
1332 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1333 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1334 -</span></span>Определение типа, реализующего интерфейс ISerializable, не реализуемый
1335 -базовым классом</h4>
1336 -
1337 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1338 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Контексты
1339 -потока ввода-вывода</h3>
1340 -
1341 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1342 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Сериализация
1343 -в другой тип и десериализация в другой объект</h3>
1344 -
1345 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1346 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Суррогаты
1347 -сериализации</h3>
1348 -
1349 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1350 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1351 -</span></span>Цепочка селекторов суррогатов</h4>
1352 -
1353 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1354 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Переопределение
1355 -сборки и/или типа при десериализации объекта</h3>
1356 -
1357 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1358 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1359 -25. Взаимодействие с компонентами WinRT</h2>
1360 -
1361 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1362 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Проекции
1363 -уровня CLR и правила системы типов компонентов WinRT</h3>
1364 -
1365 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1366 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1367 -</span></span>Основные концепции системы типов WinRT</h4>
1368 -
1369 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1370 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Проекции
1371 -уровня .NET Framework</h3>
1372 -
1373 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1374 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1375 -</span></span>Асинхронные вызовы WinRT API из кода  NET</h4>
1376 -
1377 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1378 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1379 -</span></span>Взаимодействия между потоками WinRT и потоками  NET</h4>
1380 -
1381 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1382 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1383 -</span></span>Передача блоков данных между CLR и WinRT</h4>
1384 -
1385 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1386 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Определение
1387 -компонентов WinRT в коде C#</h3>
1388 -
1389 -<h1 style='margin-left:36.0pt;text-indent:-18.0pt'><span style='font-family:
1390 -Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1391 -</span></span>Часть V. Многопоточность</h1>
1392 -
1393 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1394 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1395 -26. Потоки исполнения</h2>
1396 -
1397 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1398 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1399 -</span></span>Для чего Windows поддерживает потоки?</h4>
1400 -
1401 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1402 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1403 -</span></span>Ресурсоемкость потоков</h4>
1404 -
1405 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1406 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1407 -</span></span>Так дальше не пойдет!</h4>
1408 -
1409 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1410 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1411 -</span></span>Тенденции развития процессоров</h4>
1412 -
1413 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1414 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1415 -</span></span>CLR- и Windows-потоки</h4>
1416 -
1417 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1418 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1419 -</span></span>Потоки для асинхронных вычислительных операций</h4>
1420 -
1421 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1422 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1423 -</span></span>Причины использования потоков</h4>
1424 -
1425 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1426 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1427 -</span></span>Планирование и приоритеты потоков</h4>
1428 -
1429 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1430 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1431 -</span></span>Фоновые и активные потоки</h4>
1432 -
1433 -<h4 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1434 -Wingdings;font-style:normal'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1435 -</span></span>Что дальше?</h4>
1436 -
1437 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1438 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1439 -27. Асинхронные вычислительные операции</h2>
1440 -
1441 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1442 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Пул
1443 -потоков в CLR</h3>
1444 -
1445 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1446 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Простые
1447 -вычислительные операции</h3>
1448 -
1449 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1450 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Контексты
1451 -исполнения</h3>
1452 -
1453 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1454 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Скоординированная
1455 -отмена</h3>
1456 -
1457 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1458 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Задания</h3>
1459 -
1460 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1461 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1462 -</span></span>Завершение задания и получение результата</h4>
1463 -
1464 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1465 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1466 -</span></span>Отмена задания</h4>
1467 -
1468 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1469 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1470 -</span></span>Автоматический запуск задания по завершении предыдущего </h4>
1471 -
1472 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1473 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1474 -</span></span>Дочерние задания</h4>
1475 -
1476 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1477 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1478 -</span></span>Структура задания</h4>
1479 -
1480 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1481 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1482 -</span></span>Фабрики заданий</h4>
1483 -
1484 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1485 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1486 -</span></span>Планировщики заданий</h4>
1487 -
1488 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span lang=EN-US
1489 -style='font-family:Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp;
1490 -</span></span>Методы <span lang=EN-US>For, ForEach </span>и <span lang=EN-US>Invoke
1491 -</span>класса <span lang=EN-US>Parallel</span></h3>
1492 -
1493 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1494 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Встроенный
1495 -язык параллельных запросов</h3>
1496 -
1497 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1498 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Периодические
1499 -вычислительные операции </h3>
1500 -
1501 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1502 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1503 -</span></span>Разновидности таймеров</h4>
1504 -
1505 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1506 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Как
1507 -пул управляет потоками</h3>
1508 -
1509 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1510 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1511 -</span></span>Ограничение количества потоков в пуле</h4>
1512 -
1513 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1514 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1515 -</span></span>Управление рабочими потоками</h4>
1516 -
1517 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1518 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1519 -28. Асинхронные операции ввода-вывода</h2>
1520 -
1521 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1522 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Операции
1523 -ввода-вывода в Windows</h3>
1524 -
1525 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1526 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Асинхронные
1527 -функции C#</h3>
1528 -
1529 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1530 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Преобразование
1531 -асинхронной функции в конечный автомат</h3>
1532 -
1533 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1534 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Расширяемость
1535 -асинхронных функций</h3>
1536 -
1537 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1538 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Асинхронные
1539 -функции и обработчики событий</h3>
1540 -
1541 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1542 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Асинхронные
1543 -функции в FCL</h3>
1544 -
1545 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1546 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Асинхронные
1547 -функции и исключения</h3>
1548 -
1549 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1550 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Другие
1551 -возможности асинхронных функций</h3>
1552 -
1553 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1554 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Потоковые
1555 -модели приложений</h3>
1556 -
1557 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1558 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Асинхронная
1559 -реализация сервера</h3>
1560 -
1561 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1562 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Отмена
1563 -операций ввода-вывода</h3>
1564 -
1565 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1566 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1567 -</span></span>Некоторые операции ввода-вывода должны выполняться синхронно</h4>
1568 -
1569 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1570 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1571 -</span></span>Проблемы FileStream</h4>
1572 -
1573 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1574 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Приоритеты
1575 -запросов ввода-вывода</h3>
1576 -
1577 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1578 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1579 -29. Примитивные конструкции синхронизации потоков</h2>
1580 -
1581 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1582 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Библиотеки
1583 -классов и безопасность потоков</h3>
1584 -
1585 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1586 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Примитивные
1587 -конструкции пользовательского режима </h3>
1588 -
1589 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1590 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>и режима
1591 -ядра</h3>
1592 -
1593 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1594 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Конструкции
1595 -пользовательского режима</h3>
1596 -
1597 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1598 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1599 -</span></span>Volatile-конструкции</h4>
1600 -
1601 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1602 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1603 -</span></span>Interlocked-конструкции</h4>
1604 -
1605 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1606 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1607 -</span></span>Реализация простой циклической блокировки</h4>
1608 -
1609 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1610 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1611 -</span></span>Универсальный Interlocked-паттерн</h4>
1612 -
1613 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1614 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Конструкции
1615 -режима ядра</h3>
1616 -
1617 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1618 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1619 -</span></span>События</h4>
1620 -
1621 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1622 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1623 -</span></span>Семафоры</h4>
1624 -
1625 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1626 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1627 -</span></span>Мьютексы</h4>
1628 -
1629 -<h2 style='margin-left:72.0pt;text-indent:-18.0pt'><span style='font-family:
1630 -"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span>Глава
1631 -30. Гибридные конструкции синхронизации потоков</h2>
1632 -
1633 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1634 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Простая
1635 -гибридная блокировка</h3>
1636 -
1637 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1638 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Зацикливание,
1639 -владение потоком и рекурсия</h3>
1640 -
1641 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1642 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Гибридные
1643 -конструкции в FCL</h3>
1644 -
1645 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1646 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1647 -</span></span>Классы ManualResetEventSlim и SemaphoreSlim</h4>
1648 -
1649 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1650 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1651 -</span></span>Класс Monitor и блоки синхронизации</h4>
1652 -
1653 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1654 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1655 -</span></span>Класс ReaderWriterLockSlim</h4>
1656 -
1657 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span lang=EN-US
1658 -style='font-family:Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1659 -</span></span>Класс <span lang=EN-US>OneManyLock</span></h4>
1660 -
1661 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span lang=EN-US
1662 -style='font-family:Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1663 -</span></span>Класс <span lang=EN-US>CountdownEvent</span></h4>
1664 -
1665 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span lang=EN-US
1666 -style='font-family:Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1667 -</span></span>Класс <span lang=EN-US>Barrier</span></h4>
1668 -
1669 -<h4 style='margin-left:144.0pt;text-indent:-18.0pt'><span style='font-family:
1670 -Symbol;font-style:normal'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1671 -</span></span>Выводы по гибридным конструкциям</h4>
1672 -
1673 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1674 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Блокировка
1675 -с двойной проверкой</h3>
1676 -
1677 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1678 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Паттерн
1679 -условной переменной</h3>
1680 -
1681 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1682 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Асинхронная
1683 -синхронизация</h3>
1684 -
1685 -<h3 style='margin-left:108.0pt;text-indent:-18.0pt'><span style='font-family:
1686 -Wingdings'>§<span style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>Классы
1687 -коллекций для параллельного доступа</h3>
1688 -
1689 -</div>
1690 -
1691 -</body>
1692 -
1693 -</html>
1694 -
1695 -{{/html}}
1696 -
1697 -(% class="WordSection1" %)
1698 -(((
1699 -(% style="margin-left:36.0pt;text-indent:-18.0pt" %)
1700 -= (% style="font-family:Symbol" %)·(% style="font-family: Symbol; font: 7pt ~"Times New Roman~"" %)       (%%)Часть I. Основы CLR =
1701 -
1702 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1703 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 1. Модель выполнения кода в среде CLR ==
1704 -
1705 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1706 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Компиляция исходного кода в управляемые модули ===
1707 -
1708 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1709 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Объединение управляемых модулей в сборку ===
1710 -
1711 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1712 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Загрузка CLR ===
1713 -
1714 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1715 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Исполнение кода сборки ===
1716 -
1717 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1718 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)IL-код и верификация ====
1719 -
1720 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1721 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Небезопасный код ====
1722 -
1723 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1724 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)IL и защита интеллектуальной собственности ====
1725 -
1726 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1727 -=== (% lang="EN-US" style="font-family:Wingdings" %)§(% lang="EN-US" style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (% lang="EN-US" %)NGen.exe(%%) ===
1728 -
1729 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1730 -=== (% lang="EN-US" style="font-family:Wingdings" %)§(% lang="EN-US" style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Библиотека (% lang="EN-US" %)FCL(%%) ===
1731 -
1732 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1733 -=== (% lang="EN-US" style="font-family:Wingdings" %)§(% lang="EN-US" style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (% lang="EN-US" %)CTS(%%) ===
1734 -
1735 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1736 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)CLS ===
1737 -
1738 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1739 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Взаимодействие с неуправляемым кодом ===
1740 -
1741 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1742 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 2. Компоновка, упаковка, развертывание и администрирование приложений и типов ==
1743 -
1744 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1745 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Задачи развертывания в (% lang="EN-US" %).(%%)NET Framework ===
1746 -
1747 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1748 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Компоновка типов в модуль ===
1749 -
1750 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1751 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Файл параметров ====
1752 -
1753 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1754 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Несколько слов о метаданных ===
1755 -
1756 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1757 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Объединение модулей для создания сборки ===
1758 -
1759 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1760 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Добавление сборок в проект в среде Visual Studio ====
1761 -
1762 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1763 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Использование утилиты Assembly Linker ====
1764 -
1765 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1766 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Включение в сборку файлов ресурсов ====
1767 -
1768 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1769 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Ресурсы со сведениями о версии сборки ===
1770 -
1771 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1772 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Номера версии ====
1773 -
1774 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1775 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Региональные стандарты ===
1776 -
1777 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1778 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Развертывание простых приложений (закрытое развертывание сборок) ===
1779 -
1780 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1781 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Простое средство администрирования (конфигурационный файл) ===
1782 -
1783 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1784 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Алгоритм поиска файлов сборки ====
1785 -
1786 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1787 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 3. Совместно используемые сборки и сборки со строгим именем ==
1788 -
1789 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1790 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Два вида сборок — два вида развертывания ===
1791 -
1792 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1793 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Назначение сборке строгого имени ===
1794 -
1795 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1796 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Глобальный кэш сборок ===
1797 -
1798 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1799 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Построение сборки, ссылающейся на сборку со строгим именем ===
1800 -
1801 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1802 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Устойчивость сборок со строгими именами к несанкционированной модификации ===
1803 -
1804 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1805 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Отложенное подписание ===
1806 -
1807 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1808 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Закрытое развертывание сборок со строгими именами ===
1809 -
1810 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1811 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Как исполняющая среда разрешает ссылки на типы ===
1812 -
1813 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1814 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Дополнительные административные средства (конфигурационные файлы) ===
1815 -
1816 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1817 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Управление версиями при помощи политики издателя ====
1818 -
1819 -(% style="margin-left:36.0pt;text-indent:-18.0pt" %)
1820 -= (% style="font-family:Symbol" %)·(% style="font-family: Symbol; font: 7pt ~"Times New Roman~"" %)       (%%)Часть II. Проектирование типов =
1821 -
1822 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1823 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 4. Основы типов ==
1824 -
1825 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1826 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Все типы — производные от System.Object ===
1827 -
1828 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1829 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Приведение типов ===
1830 -
1831 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1832 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Приведение типов в C# с помощью операторов is и as ====
1833 -
1834 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1835 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Пространства имен и сборки ===
1836 -
1837 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1838 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Связь между сборками и пространством имен ====
1839 -
1840 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1841 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Как разные компоненты взаимодействуют во время выполнения ===
1842 -
1843 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1844 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 5. Примитивные, ссылочные и значимые типы ==
1845 -
1846 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1847 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Примитивные типы в языках программирования ===
1848 -
1849 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1850 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Проверяемые и непроверяемые операции для примитивных типов ====
1851 -
1852 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1853 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Ссылочные и значимые типы ===
1854 -
1855 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1856 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Как CLR управляет размещением полей для типа ====
1857 -
1858 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1859 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Упаковка и распаковка значимых типов ===
1860 -
1861 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1862 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Изменение полей в упакованных значимых типах посредством интерфейсов (и почему этого лучше не делать) ====
1863 -
1864 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1865 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Равенство и тождество объектов ====
1866 -
1867 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1868 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Хеш-коды объектов ===
1869 -
1870 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1871 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Примитивный тип данных dynamic ===
1872 -
1873 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1874 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 6. Основные сведения о членах и типах ==
1875 -
1876 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1877 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Члены типа ===
1878 -
1879 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1880 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Видимость типа ===
1881 -
1882 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1883 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Дружественные сборки ====
1884 -
1885 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1886 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Доступ к членам типов ===
1887 -
1888 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1889 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Статические классы ===
1890 -
1891 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1892 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Частичные классы, структуры и интерфейсы ===
1893 -
1894 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1895 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Компоненты, полиморфизм и версии ===
1896 -
1897 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1898 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Вызов виртуальных методов, свойств и событий в CLR ====
1899 -
1900 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1901 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Разумное использование видимости типов и модификаторов доступа к членам ====
1902 -
1903 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1904 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Работа с виртуальными методами при управлении версиями типов ====
1905 -
1906 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1907 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 7. Константы и поля ==
1908 -
1909 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1910 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Константы ===
1911 -
1912 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1913 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Поля ===
1914 -
1915 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1916 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 8. Методы ==
1917 -
1918 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1919 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Конструкторы экземпляров и классы (ссылочные типы) ===
1920 -
1921 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1922 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Конструкторы экземпляров и структуры (значимые типы) ===
1923 -
1924 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1925 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Конструкторы типов ===
1926 -
1927 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1928 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Методы перегруженных операторов ===
1929 -
1930 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1931 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Операторы и взаимодействие языков программирования ====
1932 -
1933 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1934 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Особое мнение автора о правилах Microsoft, связанных с именами методов операторов ====
1935 -
1936 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1937 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Методы операторов преобразования ===
1938 -
1939 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1940 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Методы расширения ===
1941 -
1942 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1943 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Правила и рекомендации ====
1944 -
1945 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1946 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Расширение разных типов методами расширения ====
1947 -
1948 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1949 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Атрибут расширения ====
1950 -
1951 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1952 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Частичные методы ===
1953 -
1954 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1955 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Правила и рекомендации ====
1956 -
1957 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1958 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 9. Параметры ==
1959 -
1960 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1961 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Необязательные и именованные параметры ===
1962 -
1963 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1964 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Правила использования параметров. ====
1965 -
1966 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1967 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Атрибут DefaultParameterValue и необязательные атрибуты ====
1968 -
1969 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1970 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Неявно типизированные локальные переменные ===
1971 -
1972 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1973 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Передача параметров в метод по ссылке ===
1974 -
1975 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1976 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Передача переменного количества аргументов ===
1977 -
1978 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1979 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Типы параметров и возвращаемых значений ===
1980 -
1981 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1982 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Константность ===
1983 -
1984 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
1985 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 10. Свойства ==
1986 -
1987 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
1988 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Свойства без параметров ===
1989 -
1990 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1991 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Автоматически реализуемые свойства ====
1992 -
1993 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1994 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Осторожный подход к определению свойств ====
1995 -
1996 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
1997 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Свойства и отладчик Visual Studio ====
1998 -
1999 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2000 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Инициализаторы объектов и коллекций ====
2001 -
2002 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2003 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Анонимные типы ====
2004 -
2005 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2006 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Тип System.Tuple ====
2007 -
2008 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2009 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Свойства с параметрами ===
2010 -
2011 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2012 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Выбор главного свойства с параметрами ====
2013 -
2014 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2015 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Производительность при вызове методов доступа ===
2016 -
2017 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2018 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Доступность методов доступа свойств ===
2019 -
2020 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2021 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обобщенные методы доступа свойств ===
2022 -
2023 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2024 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 11. События ==
2025 -
2026 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2027 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Разработка типа, поддерживающего событие ===
2028 -
2029 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2030 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Этап 1. Определение типа для хранения всей дополнительной информации, передаваемой получателям уведомления о событии ===
2031 -
2032 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2033 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Этап 2. Определение члена-события ===
2034 -
2035 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2036 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Этап 3. Определение метода, ответственного за уведомление зарегистрированных объектов о событии ===
2037 -
2038 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2039 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Этап 4. Определение метода, преобразующего входную информацию в желаемое событие ===
2040 -
2041 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2042 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Реализация событий компилятором ===
2043 -
2044 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2045 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Создание типа, отслеживающего событие ===
2046 -
2047 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2048 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Явное управление регистрацией событий ===
2049 -
2050 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2051 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 12. Обобщения ==
2052 -
2053 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2054 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обобщения в библиотеке FCL ===
2055 -
2056 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2057 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Инфраструктура обобщений ===
2058 -
2059 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2060 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Открытые и закрытые типы ====
2061 -
2062 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2063 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Обобщенные типы и наследование ====
2064 -
2065 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2066 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Идентификация обобщенных типов ====
2067 -
2068 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2069 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Разрастание кода ====
2070 -
2071 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2072 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обобщенные интерфейсы ===
2073 -
2074 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2075 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обобщенные делегаты ===
2076 -
2077 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2078 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Контравариантные и ковариантные аргументы-типы в делегатах и интерфейсах ====
2079 -
2080 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2081 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обобщенные методы ===
2082 -
2083 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2084 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Обобщенные методы и выведение типов ====
2085 -
2086 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2087 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обобщения и другие члены ===
2088 -
2089 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2090 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Верификация и ограничения ===
2091 -
2092 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2093 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Основные ограничения ====
2094 -
2095 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2096 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Дополнительные ограничения ====
2097 -
2098 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2099 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Ограничения конструктора ====
2100 -
2101 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2102 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Другие проблемы верификации ====
2103 -
2104 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2105 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 13(% lang="EN-US" %). (%%)Интерфейсы ==
2106 -
2107 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2108 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Наследование в классах и интерфейсах ===
2109 -
2110 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2111 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Определение интерфейсов ===
2112 -
2113 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2114 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Наследование интерфейсов ===
2115 -
2116 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2117 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Подробнее о вызовах интерфейсных методов ===
2118 -
2119 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2120 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Явные и неявные реализации интерфейсных методов (что происходит за кулисами) ===
2121 -
2122 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2123 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обобщенные интерфейсы ===
2124 -
2125 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2126 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обобщения и ограничения интерфейса ===
2127 -
2128 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2129 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Реализация нескольких интерфейсов с одинаковыми сигнатурами и именами методов ===
2130 -
2131 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2132 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Совершенствование безопасности типов за счет явной реализации интерфейсных методов ===
2133 -
2134 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2135 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Опасности явной реализации интерфейсных методов ===
2136 -
2137 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2138 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Дилемма разработчика: базовый класс или интерфейс? ===
2139 -
2140 -(% style="margin-left:36.0pt;text-indent:-18.0pt" %)
2141 -= (% style="font-family:Symbol" %)·(% style="font-family: Symbol; font: 7pt ~"Times New Roman~"" %)       (%%)Часть III. Основные типы данных =
2142 -
2143 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2144 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 14. Символы, строки и обработка текста ==
2145 -
2146 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2147 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Символы ===
2148 -
2149 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2150 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Тип System.String ===
2151 -
2152 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2153 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Создание строк ====
2154 -
2155 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2156 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Неизменяемые строки ====
2157 -
2158 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2159 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Сравнение строк ====
2160 -
2161 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2162 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Интернирование строк ====
2163 -
2164 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2165 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Создание пулов строк ====
2166 -
2167 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2168 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Работа с символами и текстовыми элементами в строке ====
2169 -
2170 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2171 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Прочие операции со строками ====
2172 -
2173 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2174 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Эффективное создание строк ===
2175 -
2176 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2177 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Создание объекта StringBuilder ====
2178 -
2179 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2180 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Члены типа StringBuilder ====
2181 -
2182 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2183 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Получение строкового представления объекта ===
2184 -
2185 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2186 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Форматы и региональные стандарты ====
2187 -
2188 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2189 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Форматирование нескольких объектов в одну строку ====
2190 -
2191 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2192 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Создание собственного средства форматирования ====
2193 -
2194 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2195 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Получение объекта посредством разбора строки ===
2196 -
2197 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2198 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Кодировки: преобразования между символами и байтами ===
2199 -
2200 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2201 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Кодирование и декодирование потоков символов и байтов ====
2202 -
2203 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2204 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Кодирование и декодирование строк в кодировке Base-64 ====
2205 -
2206 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2207 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Защищенные строки ===
2208 -
2209 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2210 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 15. Перечислимые типы и битовые флаги ==
2211 -
2212 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2213 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Перечислимые типы ===
2214 -
2215 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2216 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Битовые флаги ===
2217 -
2218 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2219 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Добавление методов к перечислимым типам ===
2220 -
2221 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2222 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 16. Массивы ==
2223 -
2224 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2225 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Инициализация элементов массива ===
2226 -
2227 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2228 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Приведение типов в массивах ===
2229 -
2230 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2231 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Базовый класс System Array ===
2232 -
2233 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2234 -=== (% lang="EN-US" style="font-family:Wingdings" %)§(% lang="EN-US" style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Реализация интерфейсов (% lang="EN-US" %)IEnumerable, ICollection (%%)и (% lang="EN-US" %)IList(%%) ===
2235 -
2236 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2237 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Передача и возврат массивов ===
2238 -
2239 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2240 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Массивы с ненулевой нижней границей ===
2241 -
2242 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2243 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Внутренняя реализация массивов ===
2244 -
2245 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2246 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Небезопасный доступ к массивам и массивы фиксированного размера ===
2247 -
2248 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2249 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 17. Делегаты ==
2250 -
2251 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2252 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Знакомство с делегатами ===
2253 -
2254 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2255 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обратный вызов статических методов ===
2256 -
2257 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2258 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обратный вызов экземплярных методов ===
2259 -
2260 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2261 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Тонкости использования делегатов ===
2262 -
2263 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2264 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обратный вызов нескольких методов (цепочки делегатов) ===
2265 -
2266 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2267 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Поддержка цепочек делегатов в C# ====
2268 -
2269 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2270 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Дополнительные средства управления цепочками делегатов ====
2271 -
2272 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2273 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Обобщенные делегаты ===
2274 -
2275 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2276 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Упрощенный синтаксис работы с делегатами ===
2277 -
2278 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2279 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Упрощение 1: не создаем объект делегата ====
2280 -
2281 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2282 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Упрощение 2: не определяем метод обратного вызова ====
2283 -
2284 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2285 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Упрощение 3: не создаем обертку для локальных переменных для передачи их методу обратного вызова ====
2286 -
2287 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2288 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Делегаты и отражение ===
2289 -
2290 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2291 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 18. Настраиваемые атрибуты ==
2292 -
2293 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2294 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Сфера применения настраиваемых атрибутов ===
2295 -
2296 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2297 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Определение класса атрибутов ===
2298 -
2299 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2300 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Конструктор атрибута и типы данных полей и свойств ===
2301 -
2302 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2303 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Выявление настраиваемых атрибутов ===
2304 -
2305 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2306 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Сравнение экземпляров атрибута ===
2307 -
2308 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2309 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Выявление настраиваемых атрибутов без создания объектов, производных от Attribute ===
2310 -
2311 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2312 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Условные атрибуты ===
2313 -
2314 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2315 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 19. Null-совместимые значимые типы ==
2316 -
2317 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2318 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Поддержка в C# null-совместимых значимых типов ===
2319 -
2320 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2321 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Оператор объединения null-совместимых значений ===
2322 -
2323 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2324 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Поддержка в CLR null-совместимых значимых типов ===
2325 -
2326 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2327 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Упаковка null-совместимых значимых типов ====
2328 -
2329 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2330 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Распаковка null-совместимых значимых типов ====
2331 -
2332 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2333 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Вызов метода GetType через null-совместимый значимый тип ====
2334 -
2335 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2336 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Вызов интерфейсных методов через null-совместимый значимый тип ====
2337 -
2338 -(% style="margin-left:36.0pt;text-indent:-18.0pt" %)
2339 -= (% style="font-family:Symbol" %)·(% style="font-family: Symbol; font: 7pt ~"Times New Roman~"" %)       (%%)Часть IV. Ключевые механизмы =
2340 -
2341 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2342 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 20. Исключения и управление состоянием 496 ==
2343 -
2344 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2345 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Определение «исключения» ===
2346 -
2347 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2348 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Механика обработки исключений ===
2349 -
2350 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2351 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Блок try ====
2352 -
2353 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2354 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Блок catch ====
2355 -
2356 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2357 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Блок finally ====
2358 -
2359 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2360 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)CLS-совместимые и CLS-несовместимые исключения ====
2361 -
2362 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2363 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Класс System(% lang="EN-US" %).(%%)Exception ===
2364 -
2365 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2366 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Классы исключений, определенные в FCL ===
2367 -
2368 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2369 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Генерирование исключений ===
2370 -
2371 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2372 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Создание классов исключений ===
2373 -
2374 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2375 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Продуктивность вместо надежности ===
2376 -
2377 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2378 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Приемы работы с исключениями ===
2379 -
2380 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2381 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Активно используйте блоки finally ====
2382 -
2383 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2384 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Не надо перехватывать все исключения ====
2385 -
2386 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2387 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Корректное восстановление после исключения ====
2388 -
2389 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2390 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Отмена незавершенных операций при невосстановимых исключениях ===
2391 -
2392 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2393 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Сокрытие деталей реализации для сохранения контракта ===
2394 -
2395 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2396 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Необработанные исключения ===
2397 -
2398 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2399 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Отладка исключений ===
2400 -
2401 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2402 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Скорость обработки исключений ===
2403 -
2404 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2405 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Области ограниченного выполнения ===
2406 -
2407 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2408 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Контракты кода ===
2409 -
2410 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2411 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 21. Автоматическое управление памятью (уборка мусора) ==
2412 -
2413 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2414 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Управляемая куча ===
2415 -
2416 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2417 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Выделение ресурсов из управляемой кучи ====
2418 -
2419 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2420 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Алгоритм уборки мусора ====
2421 -
2422 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2423 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Уборка мусора и отладка ====
2424 -
2425 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2426 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Поколения ===
2427 -
2428 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2429 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Запуск уборки мусора ====
2430 -
2431 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2432 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Большие объекты ====
2433 -
2434 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2435 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Режимы уборки мусора ====
2436 -
2437 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2438 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Программное управление уборщиком мусора ====
2439 -
2440 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2441 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Мониторинг использования памяти приложением ====
2442 -
2443 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2444 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Освобождение ресурсов при помощи механизма финализации ===
2445 -
2446 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2447 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Типы, использующие системные ресурсы ====
2448 -
2449 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2450 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Интересные аспекты зависимостей ====
2451 -
2452 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2453 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Другие возможности уборщика мусора для работы с системными ресурсами ====
2454 -
2455 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2456 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Внутренняя реализация финализации ====
2457 -
2458 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2459 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Мониторинг и контроль времени жизни объектов ===
2460 -
2461 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2462 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 22. Хостинг CLR и домены приложений ==
2463 -
2464 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2465 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Хостинг CLR ===
2466 -
2467 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2468 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Домены приложений ===
2469 -
2470 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2471 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Доступ к объектам из других доменов ====
2472 -
2473 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2474 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Выгрузка доменов ===
2475 -
2476 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2477 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Мониторинг доменов ===
2478 -
2479 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2480 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Уведомление о первом управляемом исключении домена ===
2481 -
2482 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2483 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Использование хостами доменов приложений ===
2484 -
2485 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2486 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Исполняемые приложения ====
2487 -
2488 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2489 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Полнофункциональные интернет-приложения Silverlight ====
2490 -
2491 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2492 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Microsoft ASPNET и веб-службы XML ====
2493 -
2494 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2495 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Microsoft SQL Server ====
2496 -
2497 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2498 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Будущее и мечты ====
2499 -
2500 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2501 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Нетривиальное управление хостингом ===
2502 -
2503 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2504 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Применение управляемого кода ====
2505 -
2506 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2507 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Разработка надежных хост-приложений ====
2508 -
2509 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2510 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Возвращение потока в хост ====
2511 -
2512 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2513 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 23. Загрузка сборок и отражение ==
2514 -
2515 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2516 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Загрузка сборок ===
2517 -
2518 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2519 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Использование отражения для создания динамически расширяемых приложений ===
2520 -
2521 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2522 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Производительность отражения ===
2523 -
2524 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2525 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Нахождение типов, определенных в сборке ====
2526 -
2527 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2528 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Объект Type ====
2529 -
2530 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2531 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Создание иерархии типов, производных от Exception ====
2532 -
2533 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2534 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Создание экземпляра типа ====
2535 -
2536 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2537 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Создание приложений с поддержкой подключаемых компонентов ===
2538 -
2539 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2540 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Нахождение членов типа путем отражения ====
2541 -
2542 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2543 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Нахождение членов типа ====
2544 -
2545 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2546 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Обращение к членам типов ====
2547 -
2548 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2549 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Использование дескрипторов привязки для снижения потребления памяти процессом ====
2550 -
2551 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2552 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 24. Сериализация ==
2553 -
2554 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2555 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Практический пример сериализации/десериализации ===
2556 -
2557 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2558 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Сериализуемые типы ===
2559 -
2560 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2561 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Управление сериализацией и десериализацией ===
2562 -
2563 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2564 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Сериализация экземпляров типа ===
2565 -
2566 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2567 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Управление сериализованными и десериализованными данными ===
2568 -
2569 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2570 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Определение типа, реализующего интерфейс ISerializable, не реализуемый базовым классом ====
2571 -
2572 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2573 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Контексты потока ввода-вывода ===
2574 -
2575 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2576 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Сериализация в другой тип и десериализация в другой объект ===
2577 -
2578 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2579 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Суррогаты сериализации ===
2580 -
2581 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2582 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Цепочка селекторов суррогатов ====
2583 -
2584 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2585 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Переопределение сборки и/или типа при десериализации объекта ===
2586 -
2587 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2588 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 25. Взаимодействие с компонентами WinRT ==
2589 -
2590 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2591 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Проекции уровня CLR и правила системы типов компонентов WinRT ===
2592 -
2593 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2594 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Основные концепции системы типов WinRT ====
2595 -
2596 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2597 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Проекции уровня .NET Framework ===
2598 -
2599 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2600 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Асинхронные вызовы WinRT API из кода NET ====
2601 -
2602 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2603 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Взаимодействия между потоками WinRT и потоками NET ====
2604 -
2605 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2606 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Передача блоков данных между CLR и WinRT ====
2607 -
2608 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2609 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Определение компонентов WinRT в коде C# ===
2610 -
2611 -(% style="margin-left:36.0pt;text-indent:-18.0pt" %)
2612 -= (% style="font-family:Symbol" %)·(% style="font-family: Symbol; font: 7pt ~"Times New Roman~"" %)       (%%)Часть V. Многопоточность =
2613 -
2614 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2615 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 26. Потоки исполнения ==
2616 -
2617 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2618 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)Для чего Windows поддерживает потоки? ====
2619 -
2620 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2621 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)Ресурсоемкость потоков ====
2622 -
2623 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2624 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)Так дальше не пойдет! ====
2625 -
2626 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2627 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)Тенденции развития процессоров ====
2628 -
2629 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2630 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)CLR- и Windows-потоки ====
2631 -
2632 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2633 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)Потоки для асинхронных вычислительных операций ====
2634 -
2635 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2636 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)Причины использования потоков ====
2637 -
2638 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2639 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)Планирование и приоритеты потоков ====
2640 -
2641 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2642 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)Фоновые и активные потоки ====
2643 -
2644 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2645 -==== (% style="font-family:Wingdings; font-style:normal" %)§(% style="font-family: Wingdings; font-style: normal; font: 7pt ~"Times New Roman~"" %)  (%%)Что дальше? ====
2646 -
2647 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2648 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 27. Асинхронные вычислительные операции ==
2649 -
2650 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2651 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Пул потоков в CLR ===
2652 -
2653 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2654 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Простые вычислительные операции ===
2655 -
2656 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2657 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Контексты исполнения ===
2658 -
2659 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2660 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Скоординированная отмена ===
2661 -
2662 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2663 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Задания ===
2664 -
2665 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2666 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Завершение задания и получение результата ====
2667 -
2668 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2669 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Отмена задания ====
2670 -
2671 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2672 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Автоматический запуск задания по завершении предыдущего ====
2673 -
2674 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2675 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Дочерние задания ====
2676 -
2677 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2678 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Структура задания ====
2679 -
2680 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2681 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Фабрики заданий ====
2682 -
2683 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2684 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Планировщики заданий ====
2685 -
2686 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2687 -=== (% lang="EN-US" style="font-family:Wingdings" %)§(% lang="EN-US" style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Методы (% lang="EN-US" %)For, ForEach (%%)и (% lang="EN-US" %)Invoke (%%)класса (% lang="EN-US" %)Parallel(%%) ===
2688 -
2689 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2690 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Встроенный язык параллельных запросов ===
2691 -
2692 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2693 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Периодические вычислительные операции ===
2694 -
2695 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2696 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Разновидности таймеров ====
2697 -
2698 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2699 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Как пул управляет потоками ===
2700 -
2701 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2702 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Ограничение количества потоков в пуле ====
2703 -
2704 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2705 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Управление рабочими потоками ====
2706 -
2707 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2708 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 28. Асинхронные операции ввода-вывода ==
2709 -
2710 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2711 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Операции ввода-вывода в Windows ===
2712 -
2713 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2714 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Асинхронные функции C# ===
2715 -
2716 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2717 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Преобразование асинхронной функции в конечный автомат ===
2718 -
2719 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2720 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Расширяемость асинхронных функций ===
2721 -
2722 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2723 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Асинхронные функции и обработчики событий ===
2724 -
2725 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2726 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Асинхронные функции в FCL ===
2727 -
2728 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2729 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Асинхронные функции и исключения ===
2730 -
2731 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2732 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Другие возможности асинхронных функций ===
2733 -
2734 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2735 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Потоковые модели приложений ===
2736 -
2737 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2738 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Асинхронная реализация сервера ===
2739 -
2740 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2741 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Отмена операций ввода-вывода ===
2742 -
2743 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2744 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Некоторые операции ввода-вывода должны выполняться синхронно ====
2745 -
2746 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2747 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Проблемы FileStream ====
2748 -
2749 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2750 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Приоритеты запросов ввода-вывода ===
2751 -
2752 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2753 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 29. Примитивные конструкции синхронизации потоков ==
2754 -
2755 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2756 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Библиотеки классов и безопасность потоков ===
2757 -
2758 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2759 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Примитивные конструкции пользовательского режима ===
2760 -
2761 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2762 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)и режима ядра ===
2763 -
2764 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2765 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Конструкции пользовательского режима ===
2766 -
2767 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2768 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Volatile-конструкции ====
2769 -
2770 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2771 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Interlocked-конструкции ====
2772 -
2773 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2774 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Реализация простой циклической блокировки ====
2775 -
2776 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2777 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Универсальный Interlocked-паттерн ====
2778 -
2779 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2780 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Конструкции режима ядра ===
2781 -
2782 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2783 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)События ====
2784 -
2785 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2786 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Семафоры ====
2787 -
2788 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2789 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Мьютексы ====
2790 -
2791 -(% style="margin-left:72.0pt;text-indent:-18.0pt" %)
2792 -== (% style="font-family:~"Courier New~"" %)o(% style="font-family: ~"Courier New~"; font: 7pt ~"Times New Roman~"" %)   (%%)Глава 30. Гибридные конструкции синхронизации потоков ==
2793 -
2794 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2795 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Простая гибридная блокировка ===
2796 -
2797 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2798 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Зацикливание, владение потоком и рекурсия ===
2799 -
2800 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2801 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Гибридные конструкции в FCL ===
2802 -
2803 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2804 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Классы ManualResetEventSlim и SemaphoreSlim ====
2805 -
2806 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2807 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Класс Monitor и блоки синхронизации ====
2808 -
2809 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2810 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Класс ReaderWriterLockSlim ====
2811 -
2812 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2813 -==== (% lang="EN-US" style="font-family:Symbol; font-style:normal" %)·(% lang="EN-US" style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Класс (% lang="EN-US" %)OneManyLock(%%) ====
2814 -
2815 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2816 -==== (% lang="EN-US" style="font-family:Symbol; font-style:normal" %)·(% lang="EN-US" style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Класс (% lang="EN-US" %)CountdownEvent(%%) ====
2817 -
2818 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2819 -==== (% lang="EN-US" style="font-family:Symbol; font-style:normal" %)·(% lang="EN-US" style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Класс (% lang="EN-US" %)Barrier(%%) ====
2820 -
2821 -(% style="margin-left:144.0pt;text-indent:-18.0pt" %)
2822 -==== (% style="font-family:Symbol; font-style:normal" %)·(% style="font-family: Symbol; font-style: normal; font: 7pt ~"Times New Roman~"" %)         (%%)Выводы по гибридным конструкциям ====
2823 -
2824 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2825 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Блокировка с двойной проверкой ===
2826 -
2827 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2828 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Паттерн условной переменной ===
2829 -
2830 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2831 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Асинхронная синхронизация ===
2832 -
2833 -(% style="margin-left:108.0pt;text-indent:-18.0pt" %)
2834 -=== (% style="font-family:Wingdings" %)§(% style="font-family: Wingdings; font: 7pt ~"Times New Roman~"" %)  (%%)Классы коллекций для параллельного доступа ===
2835 -)))
2836 -
2837 -(% style="background:url(~"https://wiki.denhome.ru/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.55/plugins/widget/images/handle.png~") rgba(220, 220, 220, 0.5); left:0px; top:-15px" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||height="15" role="presentation" title="Нажмите и перетащите, чтобы переместить" width="15"]]