Книги: [Классика] [Базы данных] [Internet/WWW] [Сети] [Программирование] [UNIX] [Windows] [Безопасность] [Графика] [Software Engineering] [ERP-системы] [Hardware]
Содержание
Предисловие
Благодарности
О книге
Введение
Зачем создавать еще один язык?
Основные цели проектирования С#
Создание программных компонентов
Надежность и устойчивость программного кода
Практическое программирование
От издательства
ГЛАВА 1. ОСНОВЫ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПРОГРАММИРОВАНИЯ
Что такое объект?
Наследование
Включение
Полиморфизм и виртуальные функции
Инкапсуляция и видимость
ГЛАВА 2. СРЕДА .NET RUNTIME
Среда выполнения
Упрощенная модель программирования
Безопасность и надежность
Мощная инструментальная поддержка
Распространение и поддержка
Метаданные
Сборки
Межъязыковое взаимодействие
Атрибуты
ГЛАВА 3. ПЕРВОЕ ЗНАКОМСТВО С С#
Hello, Universe
Пространства имен и команда using
Пространства имен и сборки
Основные типы данных
Классы, структуры и интерфейсы
Команды
Перечисления
Делегаты и события
Свойства и индексаторы
Атрибуты
ГЛАВА 4. ОБРАБОТКА ИСКЛЮЧЕНИЙ
Чем плохи коды возврата?
Проверка и перехват исключений
Иерархия исключений
Передача исключений вызывающей стороне
Игнорирование
Промежуточная обработка
Возврат дополнительной информации
Пользовательские классы исключений
Блок finally
Эффективность и затраты
Архитектурные рекомендации
ГЛАВА 5. КЛАССЫ
Простой класс
Функции класса
Параметры ref и out
Перегрузка
ГЛАВА 6. БАЗОВЫЕ КЛАССЫ И НАСЛЕДОВАНИЕ
Класс Engineer
Простое наследование
Массивы объектов
Виртуальные функции
Абстрактные классы
Модификатор sealed
ГЛАВА 7. ДОСТУПНОСТЬ ЧЛЕНОВ КЛАССА
Доступность на уровне класса
Модификатор internal для членов класса
Модификатор internal protected
Взаимодействие уровней доступа класса и отдельных членов
ГЛАВА 8. СНОВА О КЛАССАХ
Вложенные классы
Варианты вложенности
Создание, инициализация, уничтожение
Конструкторы
Инициализация
Деструкторы
Перегрузка и замещение имен
Замещение имен
Статические переменные
Статические функции класса
Статические конструкторы
Константы
Модификатор readonly
Закрытые конструкторы
Списки параметров переменной длины
ГЛАВА 9. СТРУКТУРНЫЕ ТИПЫ
Структура Point
Упаковка и распаковка
Структуры и конструкторы
Архитектурные рекомендации
ГЛАВА 10. ИНТЕРФЕЙСЫ
Простой пример
Работа с интерфейсами
Оператор as
Интерфейсы и наследование
Архитектурные рекомендации
Множественная реализация
Явная реализация интерфейсов
Маскировка реализации
Интерфейсы, основанные на других интерфейсах
ГЛАВА 11. КОНТРОЛЬ ВЕРСИИ
Пример контроля версии
ГЛАВА 12. КОМАНДЫ
Условные команды
if
switch
Циклические команды
while
do
for
foreach
Команды перехода
break
continue
goto
return
Однозначное присваивание
Однозначное присваивание и массивы
ГЛАВА 13. ОБЛАСТЬ ВИДИМОСТИ ЛОКАЛЬНЫХ ПЕРЕМЕННЫХ
ГЛАВА 14. ОПЕРАТОРЫ
Приоритет операторов
Встроенные операторы
Пользовательские операторы
Преобразования числовых типов
Математические операторы
Унарный плюс
Унарный минус
Сложение
Вычитание
Умножение
Деление
Вычисление остатка
Сдвиг
Инкремент и декремент
Операторы отношения, логические и поразрядные операторы
Логическое отрицание
Операторы отношения
Логические и поразрядные операторы
Оператор проверки
Операторы присваивания
Простое присваивание
Сложное присваивание
Операторы типа
typeof
is
as
ГЛАВА 15. ПРЕОБРАЗОВАНИЯ
Числовые типы
Преобразования и идентификация функций класса
Явные преобразования числовых типов
Проверяемые преобразования
Преобразования классов
Преобразование к базовому классу объекта
Преобразование к типу интерфейса, реализуемого объектом
Преобразование к интерфейсу, который может
быть реализован объектом
Преобразование из одного типа интерфейса к другому
Преобразования структурных типов
ГЛАВА 16. МАССИВЫ
Инициализация массива
Многомерные и ступенчатые массивы
Многомерные массивы
Ступенчатые массивы
Массивы ссылочных типов
Преобразования массивов
Тип System.Array
Сортировка и поиск
Инверсия
ГЛАВА 17. СТРОКИ
Операции
Преобразование объектов в строки
Пример
Класс StringBuilder
Регулярные выражения
Нетривиальный анализ строковой информации
ГЛАВА 18. СВОЙСТВА
Функции доступа
Свойства и наследование
Применение свойств
Побочные эффекты при модификации свойств
Статические свойства
Эффективность свойств
ГЛАВА 19. ИНДЕКСАТОРЫ
Целочисленная индексация
Индексаторы и команда foreach
Архитектурные рекомендации
ГЛАВА 20. ПЕРЕЧИСЛЕНИЯ
Перечисление для выбора стиля линий
Базовые типы перечислений
Инициализация
Работа с битовыми флагами
Преобразования
ГЛАВА 21. АТРИБУТЫ
Применение атрибутов
Подробнее об атрибутах
Сохранение атрибутов
Пользовательские атрибуты
Использование атрибута
Параметры атрибутов
Типы параметров атрибутов
Рефлексия
ГЛАВА 22. ДЕЛЕГАТЫ
Использование делегатов
Делегаты как статические члены класса
Делегаты как статические свойства
ГЛАВА 23. СОБЫТИЯ
Обработка новых сообщений электронной почты
Переменная события
Групповая рассылка
Редкие события
ГЛАВА 24. ПОЛЬЗОВАТЕЛЬСКИЕ ПРЕОБРАЗОВАНИЯ
Простой пример
Последовательные преобразования
Преобразования между структурами
Классы и последовательные преобразования
Архитектурные рекомендации
Неявные преобразования должны быть безопасными
Определяйте преобразование в более сложном типе
По одному преобразованию к иерархии и обратно
Определяйте преобразования только при необходимости
Преобразования, работающие в других языках
Как это происходит
Поиск преобразований
ГЛАВА 25. ПЕРЕГРУЗКА ОПЕРАТОРОВ
Унарные операторы
Бинарные операторы
Пример
Ограничения
Архитектурные рекомендации
ГЛАВА 26. НЕКОТОРЫЕ ОСОБЕННОСТИ ЯЗЫКА С#
Функция Main
Возврат кода завершения
Параметры командной строки
Дублирование функции Main
Препроцессор
Препроцессорные директивы
Препроцессорные выражения
Дополнительные препроцессорные директивы
Краткая сводка лексики
Идентификаторы
Литералы
Глава 27. Согласование с.NET Frameworks
Функции, общие для всех объектов
ToString()
Equals()
Хэш-коды и функция GetHashCode()
ГЛАВА 28. SYSTEM.ARRAY И КЛАССЫ-КОЛЛЕКЦИИ
Сортировка и поиск
Интерфейс IComparable
Интерфейс IComparer
IComparer как свойство
Перегрузка операторов отношения
Нетривиальное использование хэш-кодов
ICloneable
Архитектурные рекомендации
Функции и интерфейсы классов-коллекций
ГЛАВА 29. ВЗАИМОДЕЙСТВИЕ С СУЩЕСТВУЮЩИМ ПРОГРАММНЫМ КОДОМ
Использование объектов СОМ
Использование кода объектами СОМ
Вызов функций DLL
ГЛАВА 30. КРАТКИЙ ОБЗОР .NET FRAMEWORKS
Форматирование чисел
Стандартные форматные строки
Нестандартные форматные строки
Форматирование даты и времени
Нестандартный формат даты и времени
Нестандартное форматирование объектов
Новое форматирование существующих типов
Анализ строк с числовыми данными
Использование XML в С#
Ввод/вывод
Двоичные данные
Текстовые данные
XML
Чтение и запись файлов
Перебор содержимого каталогов
Сериализация
Многонитевые приложения
Чтение Web-страниц
ГЛАВА 31. РЕКОМЕНДАЦИИ ПО ПРОГРАММИРОВАНИЮ НА С#
Стиль программирования С#
Выбор имен
Инкапсуляция
Рекомендации для авторов библиотек
Соответствие стандарту CLS
Выбор имен классов
Ненадежный код
Раскладка структуры
Документация XML
Вспомогательные теги компилятора
Теги документирования XML
Сборка мусора в .NET Runtime
Выделение памяти
Пометка и сжатие
Поколения
Завершители
Управление поведением сборщика мусора
Подробнее о рефлексии
Получение списка всех типов сборки
Поиск членов класса
Вызов функций
Оптимизация
ГЛАВА 32. ЗАЩИЩЕННОЕ ПРОГРАММИРОВАНИЕ
Условный вызов функций
Классы Debug и Trace
Утверждения
Выходные данные Debug и Trace
Управление классами Debug и Trace при помощи ключей
Класс BooleanSwitch
Класс TraceSwitch
Класс Switch
ГЛАВА 33. КОМАНДНАЯ СТРОКА
Простая компиляция
Подстановочные файлы
Параметры командной строки
ГЛАВА 34. С# И ДРУГИЕ ЯЗЫКИ
С# и C/C++
Управляемая среда
Объекты .NET
Команды С#
Атрибуты
Проверка версии
Организация программного кода
Отсутствующие черты
С# и Java
Типы данных
Расширение системы типов
Классы
Интерфейсы
Свойства и индексаторы
Атрибуты
Команды
С# и Visual Basic 6
Внешний вид программ
Типы данных и переменные
Операторы и выражения
Классы, типы, функции и интерфейсы
Последовательность выполнения
Select Case
On Error
Отсутствующие команды
Другие языкиNET
ГЛАВА 35. ПЕРСПЕКТИВЫ С#
АЛФАВИТНЫЙ УКАЗАТЕЛЬ
Начало
О чем эта книга
Краткое содержание
Предисловие
Введение
Заказать книгу в магазине "Мистраль"
|
|