Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

[Обложка не готова]

Язык C#. Самоучитель

Оглавление

Книга представляет собой методическое руководство по изучению современного языка программирования C#. Рассмотрена платформа Microsoft .NET Framework, в среде которой работают программы C#, а также все основные возможности языка C#. Это классы, типы данных, поля, методы, интерфейсы, свойства, делегаты, работа с контейнерами, файлами, потоками и др. Одновременно с изучением языка, читатель получит навыки объектно-ориентированного и компонентно-ориентированного программирования, познакомится с обширной библиотекой классов Microsoft .NET Framework. Приводятся многочисленные примеры программ, демонстрирующих различные возможности языка C#. Книга рассчитана на всех, кто желает самостоятельно изучить новый язык программирования C#. Она может использоваться в качестве учебного пособия для студентов и школьников.



Понравился сайт? Угостите автора кофе! ❤
Авторы: А.В. Фролов, Г.В. Фролов
Дата выхода: сентябрь-октябрь 2002 г.

Книга выйдет в издательстве Диалог-МИФИ

Оглавление

  • ПРЕДИСЛОВИЕ
    • ОТ АССЕМБЛЕРА К C#
    • КЛАССИЧЕСКИЕ ЯЗЫКИ ПРОГРАММИРОВАНИЯ
      • Ассемблер
      • C
      • C++
      • Pascal
      • Basic
      • Java
    • ЯЗЫКИ ДЛЯ СОЗДАНИЯ ИНТЕРНЕТ-ПРИЛОЖЕНИЙ
      • HTML
      • JavaScript
      • JScript
      • VB Script
      • Perl
      • PHP
    • НОВЫЕ ТЕХНОЛОГИИ MICROSOFT .NET
      • Платформа Microsoft .NET Framework
      • Совмещение разных языков программирования
      • Интегрирование с ранее созданными проектами
      • Библиотека классов Microsoft .NET Framework
      • Виртуальная машина CLR
      • Домены приложений
      • Компилятор JIT
      • Сборки
    • УПРОЩЕНИЕ ОТЛАДКИ ПРОГРАММ C#
    • ПРОГРАММИРОВАНИЕ НА C# ДЛЯ MICROSOFT WINDOWS
    • ПРОЕКТ DOTGNU ИЛИ C# ДЛЯ LINUX
    • ОТЛИЧИЯ C# ОТ С++
      • Классы и наследование
      • Интерфейсы
      • Типы данных
      • Указатели
      • Массивы
      • Структуры
      • Операторы и ключевые слова
      • Директивы препроцессора
    • ЧЕМ ТРАНСЛИРОВАТЬ ПРОГРАММЫ C#
    • УСЛОВНЫЕ ОБОЗНАЧЕНИЯ В КНИГЕ
    • БЛАГОДАРНОСТИ
    • КАК СВЯЗАТЬСЯ С АВТОРАМИ КНИГИ
  • ГЛАВА 1. БАЗОВЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ
    • ПЕРВАЯ ПРОГРАММА НА ЯЗЫКЕ C#
      • Исходный текст простейшей программы
        • Пространство имен System
        • Определение собственного пространства имен
        • Класс HelloApp
        • Метод Main
      • Трансляция программы при помощи .NET Framework SDK
        • Использование Microsoft Visual Studio .NET
        • Создание нового проекта
        • Проекты и решения
        • Изменение проекта
    • ЭЛЕМЕНТАРНЫЕ ТИПЫ ДАННЫХ
      • Бит
      • Байт
      • Числовые типы данных
      • Текстовые символы и строки
    • ОБОЗНАЧЕНИЕ ТИПОВ ДАННЫХ В C#
      • Числа без знака
      • Числа со знаком
      • Числа с плавающей точкой
      • Числа для финансистов
      • Текстовые символы
      • Текстовые строки
      • Логический тип данных
      • Перечисления
    • ЛИТЕРАЛЫ
      • Целочисленные литералы
      • Литералы с плавающей точкой
      • Символьные литералы
      • Строковые литералы
      • Логические литералы
      • Литерал null
    • БАЗОВЫЕ ВЫРАЖЕНИЯ И ОПЕРАТОРЫ C#
      • Инициализация переменных и оператор присваивания
      • Инициализация перечислений
      • Проверка результата инициализации
      • Значение в левой части
      • Математические операторы
        • Сложение
        • Вычитание
        • Умножение
        • Деление
        • Вычисление остатка при целочисленном делении
      • Унарные операторы
        • Унарный плюс
        • Унарный минус
        • Инкремент и декремент
        • Унарное логическое отрицание
        • Унарная поразрядная операция дополнения
        • Преобразование типа выражения
      • Пример использования унарных операторов
      • Составные операторы
      • Поразрядные операторы
        • Поразрядное логическое И
        • Поразрядное логическое ИЛИ
        • Поразрядное логическое Исключающее ИЛИ
        • Унарная поразрядная операция дополнения
        • Поразрядный сдвиг
      • Пример использования поразрядных операторов
      • Логические операторы
      • Операторы отношения
    • ПРИОРИТЕТЫ ОПЕРАТОРОВ
  • ГЛАВА 2. УПРАВЛЯЮЩИЕ ОПЕРАТОРЫ
    • УСЛОВНЫЙ ОПЕРАТОР
      • Простой условный оператор
      • Вложенный условный оператор
      • Оператор проверки
      • Множественный выбор
      • Применение логических операций
    • ОПЕРАТОР ВЫБОРА
      • Примеры применения оператора выбора
      • Объединение меток case
      • Пропущенный break
    • ИТЕРАЦИОННЫЕ ОПЕРАТОРЫ
      • Оператор for
        • Прерывание цикла
        • Возобновление цикла
      • Оператор while
      • Оператор do
      • Оператор foreach
      • Пример использования итерационных операторов
    • ОПЕРАТОРЫ БЕЗУСЛОВНОГО ПЕРЕХОДА
      • Операторы break и continue
      • Оператор return
      • Оператор goto
        • Организация цикла с помощью goto
        • Применение goto в операторе выбора switch
        • Другие применения оператора goto
    • ПУСТОЙ ОПЕРАТОР
    • СОСТАВНОЙ ОПЕРАТОР
  • ГЛАВА 3. ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ
    • ПЕРВЫЕ ШАГИ К ООП
      • Программная модель телевизора
        • Данные
        • Методы
      • Объединяем все вместе
        • Создание объектов класса TelevisionSet
        • Вызов методов класса
        • Обращение к полям класса
      • Пример программы
    • НАСЛЕДОВАНИЕ
      • Базовый класс
      • Производный класс
      • Множественное наследование
      • Представление иерархии классов
      • Пример программы
    • МАСКИРОВАНИЕ МЕТОДОВ БАЗОВОГО КЛАССА
    • МОДИФИКАТОРЫ ДОСТУПА
      • Модификатор private
      • Модификатор public
      • Модификатор protected
      • Модификатор internal
      • Пример программы
    • СТАТИЧЕСКИЕ ЧЛЕНЫ КЛАССА
      • Статические поля класса
      • Статические константы
      • Статические методы класса
    • ПЕРЕГРУЗКА МЕТОДОВ
    • КОНСТРУКТОР
      • Конструктор по умолчанию
      • Конструкторы и наследование
        • Инициализатор конструктора base
        • Инициализатор конструктора this
      • Статический конструктор
    • ДЕСТРУКТОР
    • ЕЩЕ О КЛАССАХ И ПОЛЯХ
      • Поля readonly
      • Передача параметров по ссылке
      • Запрет наследования классов
  • ГЛАВА 4. ПОЛИМОРФИЗМ
    • ПРИМЕНЕНИЕ ПОЛИМОРФИЗМА
      • Применение классов
      • Попытка обобщения с помощью наследования
      • Виртуальные методы
    • РАНЕЕ И ПОЗДНЕЕ СВЯЗЫВАНИЕ
    • АБСТРАКТНЫЕ КЛАССЫ
    • ПЕРЕГРУЗКА ОПЕРАТОРОВ
      • Краткая теория комплексных чисел
        • Сравнение
        • Сложение
        • Вычитание
        • Умножение
        • Деление
      • Класс для представления комплексных чисел
      • Перегрузка бинарных операторов
      • Перегрузка унарных операторов
      • Перегрузка операторов сравнения
      • Пример программы
    • КЛАСС SYSTEM.OBJECT
  • ГЛАВА 5. ПРЕОБРАЗОВАНИЕ ТИПОВ ОБЪЕКТОВ
    • НЕЯВНОЕ ПРЕОБРАЗОВАНИЕ ЧИСЛОВЫХ ТИПОВ
      • Числа без знака
      • Числа со знаком
      • Текстовые символы char
      • Числа с плавающей точкой
    • ЯВНОЕ ПРЕОБРАЗОВАНИЕ ЧИСЛОВЫХ ТИПОВ
    • ПРОВЕРКА ПРЕОБРАЗОВАНИЯ ЧИСЛОВЫХ ТИПОВ
    • ПРЕОБРАЗОВАНИЯ ТИПОВ И КЛАССЫ
      • Псевдонимы типов данных
      • Приведение производных и базовых классов
      • Операторы is и as
    • НЕСТАНДАРТНОЕ ПРЕОБРАЗОВАНИЕ
  • ГЛАВА 6. СВОЙСТВА ОБЪЕКТОВ
    • ОБЪЯВЛЕНИЕ СВОЙСТВА
      • Процедура доступа set
      • Процедура доступа get
      • Свойства только для чтения и только для записи
    • ПРИМЕР ПРОГРАММЫ
    • НАСЛЕДОВАНИЕ СВОЙСТВ
    • СТАТИЧЕСКИЕ СВОЙСТВА
  • ГЛАВА 7. МАССИВЫ И ИНДЕКСАТОРЫ
    • ТИПЫ МАССИВОВ
      • Одномерные массивы
      • Многомерные массивы
      • Массивы массивов
      • Пример программы
    • МАССИВЫ И ЦИКЛЫ
      • Обработка одномерного массива чисел
      • Обработка одномерного массива строк
      • Использование оператора foreach
      • Многомерный массив объектов класса String
      • Несимметричный массив объектов класса String
    • ИНДЕКСАТОРЫ
      • Объявление индексатора
      • Индексаторы многомерных массивов
    • ДОПОЛНИТЕЛЬНЫЕ ОПЕРАЦИИ С МАССИВАМИ В C#
      • Определение размеров массива
      • Сортировка и реверсирование массивов
      • Поиск в массиве
  • ГЛАВА 8. ИНТЕРФЕЙСЫ
    • ПРИМЕНЕНИЕ ИНТЕРФЕЙСОВ
      • Объявление интерфейса
      • Реализация интерфейса
      • Вызов методов интерфейса
      • Пример программы
    • ПРОВЕРКА РЕАЛИЗАЦИИ ИНТЕРФЕЙСА
    • КОМБИНИРОВАННЫЕ ИНТЕРФЕЙСЫ
    • ИНТЕРФЕЙСЫ И НАСЛЕДОВАНИЕ КЛАССОВ
    • СВОЙСТВА В ИНТЕРФЕЙСАХ
    • ИНДЕКСАТОРЫ В ИНТЕРФЕЙСАХ
  • ГЛАВА 9. ОБРАБОТКА ИСКЛЮЧЕНИЙ
    • КЛАССИЧЕСКИЕ СПОСОБЫ ОБРАБОТКИ ОШИБОК
      • Предварительная проверка параметров
      • Проверка кодов возврата функций и методов
    • ПРИМЕНЕНИЕ МЕХАНИЗМА ИСКЛЮЧЕНИЙ
      • Блоки try-catch
      • Использование нескольких блоков catch
      • Исключение при арифметическом переполнении
    • СТАНДАРТНЫЕ КЛАССЫ ИСКЛЮЧЕНИЙ
    • СОЗДАНИЕ ИСКЛЮЧЕНИЙ
      • Создание исключений класса Exception
      • Новый класс на базе класса Exception
    • КОНСТРУКТОРЫ КЛАССА EXCEPTION
    • ПЕРЕДАЧА ИСКЛЮЧЕНИЯ ДЛЯ ПОВТОРНОЙ ОБРАБОТКИ
    • ПРИМЕНЕНИЕ БЛОКА FINALLY
  • ГЛАВА 10. МНОГОПОТОЧНОСТЬ
    • ВИДЫ МНОГОПОТОЧНОСТИ
      • Переключательная многопоточность
      • Совместная многопоточность
      • Вытесняющая многопоточность
    • ПРОЦЕССЫ, ПОТОКИ И ПРИОРИТЕТЫ
      • Процесс
      • Поток
      • Домен приложения AppDomain
    • ПРИМЕРЫ МНОГОПОТОЧНЫХ ПРОГРАММ
      • Создание и запуск потока класса Thread
      • Использование делегатов
      • Модели многопоточности
      • Завершение работы созданного потока
      • Потоки и классы
    • УПРАВЛЕНИЕ ПОТОКАМИ
      • Аварийное завершение потока
      • Пауза в работе потока
      • Приостановка и возобновление работы
      • Управление приоритетами потоков
    • СИНХРОНИЗАЦИЯ ПОТОКОВ
      • Ожидание завершения потока
      • Критические секции
      • Применение ключевого слова lock
      • Использование класса Mutex
      • Использование класса Monitor
  • ГЛАВА 11. ДЕЛЕГАТЫ И СОБЫТИЯ
    • ИСПОЛЬЗОВАНИЕ ДЕЛЕГАТОВ
      • Статические делегаты
      • Массивы делегатов
    • ОБРАБОТКА СОБЫТИЙ
      • Публикация событий
      • Создание события
      • Подписка на события
      • Программа с обработкой событий
  • ГЛАВА 12. РАБОТА С ТЕКСТОВЫМИ СТРОКАМИ
    • ПРИМЕНЕНИЕ КЛАССА SYSTEM.STRING
      • Создание строк
        • Преобразование массива символов в строку
        • Создание строки на базе фрагмента массива
        • Заполнение строки символом
        • Небезопасные конструкторы в классе System.String
      • Копирование и клонирование строк
      • Конкатенация строк
      • Извлечение подстроки
      • Вставка подстроки
      • Замена символов и строк
      • Удаление символов из строки
      • Удаление незначащих пробелов
      • Преобразование к верхнему и нижнему регистру
      • Выравнивание по левому и правому краю поля
      • Объединение массива строк
      • Разбор строки
      • Сравнение строк
    • ФОРМАТИРОВАНИЕ ТЕКСТОВЫХ СТРОК
      • Представление целых чисел
        • Автоматическое форматирование
        • Представление чисел в шестнадцатеричном формате
        • Определение ширины поля вывода
        • Выравнивание числа внутри поля вывода
      • Представление чисел с фиксированной десятичной точкой
        • Формат по умолчанию
        • Указание количества знаков после десятичной точки
        • Ограничение ширины поля вывода
        • Извлечение целой части числа
        • Избыточная точность при выводе
      • Представление чисел в научном формате
      • Выделение тысяч при отображении больших чисел
      • Универсальный формат для представления чисел
      • Формат для представления денежных сумм
    • ИСПОЛЬЗОВАНИЕ ШАБЛОНОВ ПРИ ФОРМАТИРОВАНИИ
      • Форматирование целых чисел
      • Форматирование чисел с плавающей десятичной точкой
      • Форматирование чисел с процентами
      • Форматирование с учетом знака чисел
    • СОЗДАНИЕ НОВЫХ ФОРМАТОВ
    • ПРЕОБРАЗОВАНИЕ ТЕКСТОВЫХ СТРОК В ЧИСЛА
  • ГЛАВА 13. КОНТЕЙНЕРЫ ДЛЯ ХРАНЕНИЯ ОБЪЕКТОВ
    • КОНТЕЙНЕРЫ В БИБЛИОТЕКЕ КЛАССОВ .NET FRAMEWORK
    • МАССИВ ARRAYLIST
      • Создание массива
      • Добавление элементов в массив
      • Чтение элементов массива
        • Использование итераторов
        • Использование индексов
      • Изменение элементов массива
      • Емкость и текущий размер массива
      • Объединение массивов
      • Удаление элементов из массива
      • Запрет записи данных в массив
      • Ограничение размера массива
      • Сортировка
      • Обратное расположение элементов массива
      • Поиск в массиве
      • Работа в многопоточном режиме
        • Применение метода Synchronized
        • Свойство IsSynchronized
        • Свойство SyncRoot
      • Недостатки массивов ArrayList
    • СЛОВАРЬ HASHTABLE
      • Создание словаря
        • Конструктор без параметров
        • Копирование словаря
        • Указание начальной емкости словаря
        • Другие конструкторы
      • Добавление новых элементов
      • Чтение содержимого словаря
      • Поиск по ключу
      • Предварительная проверка содержимого словаря
      • Удаление элементов из словаря
      • Емкость и текущий размер словаря
      • Словари и многопоточность
    • СОРТИРОВАННЫЙ СПИСОК SORTEDLIST
      • Создание и наполнение списка
      • Извлечение данных из списка
      • Определение индекса по ключу и значению
      • Изменение значения по индексу
      • Удаление элементов списка
      • Работа в многопоточном режиме
    • СТЕК STACK
      • Создание стека
      • Добавление элементов в стек
      • Извлечение элементов из стека
      • Проверка содержимого верхушки стека
      • Просмотр стека с помощью итератора
      • Удаление элементов стека
      • Другие методы и свойства класса Stack
      • Пример программы
    • ОЧЕРЕДЬ QUEUE
      • Создание очереди
      • Добавление элемента в очередь
      • Извлечение элементов из очереди
      • Проверка содержимого начала очереди
      • Просмотр очереди с помощью итератора
      • Удаление элементов очереди
      • Другие методы и свойства класса Queue
      • Пример программы
    • БИТОВЫЙ МАССИВ BITARRAY
      • Создание массива BitArray
      • Инициализация ячеек массива
      • Извлечение значений из массива
      • Просмотр массива
      • Логические операции над массивами
  • ГЛАВА 14. ФАЙЛЫ И ПОТОКИ
    • ПОТОКИ ДАННЫХ И КЛАССЫ
      • Стандартные потоки
      • Базовые классы для работы с файлами и потоками
        • Основные классы ввода и вывода
        • Классы на базе FilesystemInfo
        • Классы для работы с потоками
        • Классы для работы с потоками текстовых символов
      • Перечисления
    • РАБОТА СО СТАНДАРТНЫМИ ПОТОКАМИ
      • Стандартный поток ввода
      • Стандартный поток вывода
      • Стандартный поток вывода сообщений об ошибках
      • Программа StdStreams
    • СОЗДАНИЕ ПОТОКОВ, СВЯЗАННЫХ С ФАЙЛАМИ
      • Открытие потока FileStream
      • Открытие потоков BinaryWriter и BinaryReader
      • Закрытие потоков
      • Запись двоичных данных
      • Чтение двоичных данных
      • Программа Binary
      • Работа с текстовыми файлами
    • ВЫБОР КОДИРОВКИ СИМВОЛОВ
      • Кодовые страницы
      • Недостатки модели кодовых страниц
      • Стандарт UNICODE
        • Unicode в Microsoft Windows NT/2000/XP
        • UNICODE в Microsoft Windows 95
      • Кодировка текстовых потоков
      • Кодировка текстовых строк в двоичных потоках
    • БУФЕРИЗАЦИЯ ПОТОКОВ
      • Буферизация двоичных потоков
      • Буферизация текстовых потоков
      • Принудительный сброс буферов
    • ПОТОКИ В ОПЕРАТИВНОЙ ПАМЯТИ
      • Создание потока
      • Чтение данных
      • Запись данных
      • Доступ к буферу потока MemoryStream
      • Потоки на базе строк string
      • Потоки класса StringBuilder
    • УПРАВЛЕНИЕ КАТАЛОГАМИ
      • Список логических дисков
      • Текущий каталог
      • Просмотр содержимого каталога
      • Создание каталога
      • Удаление каталога
      • Получение информации о каталоге
    • УПРАВЛЕНИЕ ФАЙЛАМИ
      • Проверка существования файла или каталога
      • Создание файла
      • Удаление файла
      • Определение времени создания файла
      • Определение времени доступа и изменения файла
      • Определение атрибутов файлов и каталогов
      • Изменение атрибутов файлов и каталогов
      • Переименование или перемещение файлов
    • ПРОИЗВОЛЬНЫЙ ДОСТУП К ФАЙЛАМ
      • Проверка возможности позиционирования
      • Метод Seek
      • Приложение DirectFileAccess
        • Класс SimpleDBMS
        • Конструктор класса SimpleDBMS
        • Добавление новой записи
        • Извлечение записи по ее номеру
    • ОБРАБОТКА ИСКЛЮЧЕНИЙ
  • ПРИЛОЖЕНИЕ 1. ЗАРЕЗЕРВИРОВАННЫЕ КЛЮЧЕВЫЕ СЛОВА C#
  • ПРИЛОЖЕНИЕ 2. ИМЕНА И КОДЫ НАЦИОНАЛЬНЫХ КУЛЬТУР
  • БИБЛИОГРАФИЧЕСКИЙ СПИСОК
  • ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ
  • ОГЛАВЛЕНИЕ