Документ взят из кэша поисковой машины. Адрес оригинального документа : http://oit.cmc.msu.ru/lectures/q_baj_basP_2005.htm
Дата изменения: Mon Dec 19 13:23:32 2005
Дата индексирования: Mon Oct 1 21:25:36 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-приложения.

Языки, используемыk