Документ взят из кэша поисковой машины. Адрес оригинального документа : http://old.master.cmc.msu.ru/lectures/q_baj_basP_2005.htm
Дата изменения: Mon Dec 19 13:23:32 2005
Дата индексирования: Tue Oct 2 03:52:19 2012
Кодировка:
New Page 1

Общие данные о курсе Основы программирования

Краткая аннотация

В курсе рассматриваются основные конструкции языков программирования, анализируются различные структуры данных, освещаются вопросы объектно-ориентированного программирования и сетевого программирования, дается краткий обзор компонентной технологии программирования.

 

Подробное описание

Курс содержит краткий обзор эволюции развития языков программирования. Вводится понятие среды программирования.

Приводится применение НБФ-нотаций для описания синтаксиса языка.

Несколько лекций посвящены рассмотрению основных конструкций языков программирования. Рассматривается синтаксис и семантика высокоуровневых языков программирования, включая языки С++, Pascal, Java, С#.

Вводится понятие рекурсии; математических рекурсивных функций; приводятся примеры рекурсивных процедур.

В курсе описываются основные структуры данных. Определяются простые типы, массивы, записи и структуры. Рассматривается статическое и динамическое управление памятью, размещение в памяти различных типов данных. Описывается применение стеков , очередей и хеш-таблиц.

Вводится понятие объектно-ориентированного программирования. Рассматривается механизмы наследования, инкапсуляции и полиморфизма. Приводится сравнение объектно-ориентированной модели, используемой в языках C++, Java, C# и Object Pascal. Описываются правила использования объектных типов данных.

Рассматривается событийно-управляемое и параллельное программирование.

Курс вводит в круг вопросов связанных с сетевым программированием. Рассматриваются аспекты применения языков программирования для Internet.

Описывается применение прикладных программных интерфейсов (API), вводится понятие компонентной технологии.

 

Цель курса

Цель данного курса - ознакомить студентов с основами синтаксиса и семантики высокоуровневых языков программирования, с концепциями объектно-ориентированного программирования, а также дать представление о функциональных возможностях наиболее распространенных сред проектирования и необходимые умения по их использованию.

 

Длительность

Годовой

Предварительные знания

не предусмотрены

Темы курса лекций:

 Развитие языков программирования

Краткий обзор эволюции развития языков программирования. Стандартизация языков программирования.
Среды программирования.

НБФ-нотации

Применение НБФ-нотаций для описания синтаксиса языка.

Основные конструкции языков программирования.

Управление последовательностью действий.

Управление подпрограммами.

Управление памятью.

Структуры данных

Простые  типы.

Контроль типов и преобразование типов.

Массивы и структуры. Статическое и динамическое распределение памяти.

Объектно-ориентированное программирование

Классы. Абстрактные типы данных.

Событийная модель управлений.

С++. Механизмы наследования. Производные типы данных.

Object Pascal. Механизмы наследования. Производные типы данных. Сравнение механизмов наследования.

Java. Механизмы наследования. Производные типы данных. Интерфейсы. Вложенные классы.

Java . Классы адаптеры. Модель управления событиями.

Java. JDK. Технология программирования на языке Java.

С++. Указатели и ссылки.

С++. Приведение типов. Раннее и позднее связывание.

С++. Шаблоны классов и шаблоны функций. Перегрузка функций.

С#. Управляемый код. Сборки.

С#. Механизмы наследования.

С#. Массивы. Индексаторы. Атрибуты.

Системы программирования

Среда проектирования Visual Studio .NET (C++ и C#). Библиотеки классов.

Среда проектирования Delphi. Библиотека VCL.

Среда проектирования JBuilder. Классы пакетов JDK.

Сетевое программирование

Введение в трехзвенную архитектуру.

Языки, реализующие клиентские WEB-приложения.

Языки, используемые для создания серверных WEB-приложений.

Язык C++.  CGI и ISAPI. Серверы приложений.

Язык Object Pascal. CGI и ISAPI. Обработка HTTP-запросов.

Язык Java. Сервлеты и JSP.

Язык XML

Применение API-интерфейсов.

Использование стандартных библиотек. Windows API.

Основы компонентной технологии.

Основы модели компонентных объектов COM. GUID. Реестр Windows.

Язык IDL. MIDL.

 

Литература

1.        Т. Пратт, М. Зелковиц. Языки программирования. Разработка и реализация. Пер. с англ. СПб.: Питер, 2002. - 688 с.

2.        Д. Э. Кнут Искусство программирования, том 3. Пер. с англ. М.: Издательский дом "Вильямс", 2000. - 832 с.

3.        Баженова И. Ю. С++ & Visual Studio.NET. Учеб. пособие. М.: КУДИЦ-ОБРАЗ, 2003. - 464 с.

4.        Майкл Морган. Java 2. Руководство разработчика. Пер. с англ.: Учеб. пособие. М.: Издательский дом "Вильямс", 2000. - 720 с.

5.        Баженова И.Ю. JBuilder 5. Программирование на Java. Учеб. пособие. М.: КУДИЦ-ОБРАЗ, 2001. - 448 с.

6.        Баженова И.Ю. Delphi 7. Самоучитель программиста. Учеб. пособие. М.: КУДИЦ-ОБРАЗ, 2003. - 496 с.

Т. Арчер. Основы С#. Новейшие технологии. Пер. с англ. М.: Издательско-торговый дом "Русская Редакция", 2001. - 448 с.