Рекомендуем

Книга

Основы современного программирования. Разработка гетерогенных систем в Интернет-ориентированной среде

Учебное пособие для вузов
2-е изд., стереотип.
2012 г.
444 стр.
Тираж 100 экз.
Формат 60х90/16 (145x215 мм)
Исполнение: в мягкой обложке
ISBN 978-5-9912-0234-3
ББК 32.97
УДК 681.3
Гриф УМО
Рекомендовано УМО по образованию в области прикладной информатики в качестве учебного пособия для студентов высших учебных заведений, обучающихся по специальности «Прикладная информатика» и другим междисциплинарным специальностям»
Аннотация
Систематизированы теоретические и практические сведения в области современного программирования. Рассмотрены основы функционального подхода к программированию на основе метаязыка SML.NET и подходы к объектно-ориентированному и компонентному программированию на языках SML и C#. Особое внимание уделено применению языковых конструкций для создания корректных, эффективных и надежных программ. Книга написана на основании курса лекций, прочитанного ранее автором на факультете информационной безопасности МИФИ, и построена на основе творческого синтеза избранных формальных теорий (лямбда-исчисление, комбинаторная логика, теория категорий и др.) и интернет-ориентированной технологической платформы Microsoft .NET, обеспечивающей практически прозрачную интеграцию кода на языках программирования различных типов. Каждая глава учебного пособия сопровождается контрольными вопросами. Начиная с 2008 г. и до настоящего времени, автор читает этот курс на Кафедре управления разработкой программного обеспечения ГОУ ВПО "Высшая школа экономики". Для студентов, аспирантов, специализирующихся в области компьютерных наук и информационных технологий, может быть полезной для опытных программистов.

Оглавление

Предисловие научного редактора

Предисловие автора

ЧАСТЬ I. ФУНКЦИОНАЛЬНЫЙ ПОДХОД К ПРОГРАММИРОВАНИЮ

Глава 1. МЕСТО ФУНКЦИОНАЛЬНОГО ПОДХОДА И MICROSOFT .NET В СЕМЕЙСТВЕ ЯЗЫКОВ И ПОДХОДОВ К ПРОГРАММИРОВАНИЮ
Раздел 1. Классификация языков программирования
Раздел 2. Концепция и возможности подхода .NET
Раздел 3. Функциональный подход к программированию

Глава 2. ФОРМАЛЬНЫЕ СИСТЕМЫ, ПОДДЕРЖИВАЮЩИЕ ФУНКЦИОНАЛЬНЫЙ ПОДХОД
Раздел 1. Лямбда-исчисление как формализация языка функционального программирования
Раздел 2. Комбинаторная логика как формальная система
Раздел 3. Теория типов и ее моделирование средствами комбинаторной логики

Глава 3. СИНТАКСИС И СЕМАНТИКА ФУНКЦИОНАЛЬНЫХ ПРОГРАММ
Раздел 1. Синтаксис языков программирования
Раздел 2. Семантика языков программирования

Глава 4. РЕКУРСИЯ И МОДЕЛИРОВАНИЕ СРЕДЫ ВЫЧИСЛЕНИЙ
Раздел 1. Рекурсивные функции и множества
Раздел 2. Абстрактные машины и категориальная комбинаторная логика
Раздел 3. Категориальная абстрактная машина
Раздел 4. Оптимизация вычислений в абстрактных машинах
Итоговое задание к ч. I
Практикум по гетерогенному программированию в среде Microsoft .NET
Раздел 1. Функциональное программирование и computer science
Введение 137
Процедура установки компилятора SML.NET
Лабораторная работа 1. Базисные типы и стандартные функции языка SML
Лабораторная работа 2. Функции SML для основных комбинаторов
Лабораторная работа 3. Рекурсивные вычисления
Лабораторная работа 4. Функции для синтаксического разбора простых языковых конструкций
Лабораторная работа 5. Реализация категориальной абстрактной машины
Список литературы и учебных материалов
Приложение. Особенности инсталляции интегрированной среды разработки Visual Studio .NET

ЧАСТЬ II. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ ПОДХОД И ЕГО РАСШИРЕНИЯ

Глава 5. ОСНОВЫ ЯЗЫКОВОЙ И ПРОГРАММНОЙ СРЕДЫ
Раздел 1. Введение в объектно-ориентированный подход к программированию
Раздел 2. Среда Microsoft .NET и ее использование для гетерогенного программирования
Раздел 3. Основы объектно-ориентированного программирования на языке C#

Глава 6. КОНЦЕПТУАЛЬНЫЕ ОСНОВЫ И СЕМАНТИКА ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПОДХОДА
Раздел 1. Семантика основных конструкций языка программирования C#
Раздел 2. Основные понятия объектно-ориентированного подхода: объекты, классы и методы

Глава 7. ДИСЦИПЛИНА ТИПОВ И ВАЖНЕЙШИЕ КОНЦЕПЦИИ ГЕТЕРОГЕННОЙ СРЕДЫ ВЫЧИСЛЕНИЙ
Раздел 1. Теория типов и типизация в .NET
Раздел 2. Концепция наследования и ее реализация в языке C#
Раздел 3. Концепция инкапсуляции и ее реализация в языке C#
Раздел 4. Концепция полиморфизма и ее реализация в языке C#

Глава 8. РАСШИРЕНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПОДХОДА
Раздел 1. Расширенные возможности полиморфизма в языке C#
Раздел 2. Событийно-управляемое программирование в среде .NET
Раздел 3. Компонентное программирование в .NET

Практикум по гетерогенному программированию в среде Microsoft .NET
Объектно-ориентированное программирование и его расширения

Введение
Необходимое программное обеспечение
Лабораторная работа 1. Разработка элементарных программ на языке программирования C#
Лабораторная работа 2. Объекты и классы (наследование, конструкторы, деструкторы)
Лабораторная работа 3. Полиморфные методы
Лабораторная работа 4. Расширенные возможности языка программирования C#
Лабораторная работа 5. Событийно-ориентированное программирование
Лабораторная работа 6. Проектирование и реализация гетерогенных приложений

Список литературы и учебных материалов

Список учебной литературы

Список использованной литературы

Интернет-источники