МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ УТВЕРЖДАЮ
УТВЕРЖДАЮ
Начальник Управления образовательных программ и стан...
33 downloads
202 Views
162KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ УТВЕРЖДАЮ
УТВЕРЖДАЮ
Начальник Управления образовательных программ и стандартов высшего и профессионального образования
Председатель УМС по прикладной математике и информатике
В.И. Кружалин “
”
2003 г.
Е.И. Моисеев “
”
2003 г.
Примерная программа дисциплины
Основы программирования II (Введение в объектно-ориентированное программирование) Рекомендуется Минобразованием России для направления подготовки 511900 Информационные технологии
Москва 2003
Цель и задачи курса Цель дисциплины “Основы программирования” - ознакомить студентов с основами программирования и основами современных языков программирования с точки зрения пользователей языков. В частности, в курсе рассматриваются основные конструкции языков программирования, анализируются основные типы и структуры данных, освещаются вопросы объектно-ориентированного программирования и сетевого программирования, дается краткий обзор компонентной технологии программирования.
1.
Введение в языки программирования
Эволюция языков программирования. Краткий обзор эволюции языков программирования (ЯП). Стандартизация языков программирования. Понятие синтаксиса и семантики ЯП. Среды программирования.
2.
Основные конструкции языков программирования
Синтаксис и семантика высокоуровневых языков программирования. Константы и переменные, скалярные и составные типы данных, контроль типов и преобразование типов, выражения и присваивание; условные и циклические управляющие структуры; функции и способы передачи параметров; структурные конструкции, средства ввода/вывода.
3.
Алгоритмы и процесс решения задачи
Стратегии решения задачи; роль алгоритма в процессе решения задачи; стратегии реализация алгоритма; стратегии отладки; определения и свойства алгоритма.
4.
Объектно-ориентированное программирование
Объектно-ориентированная разработка; инкапсуляция и информационное упрятывание; отделение описания поведения от реализации; классы, подклассы и наследование; полиморфизм; иерархия классов; пакеты классов и протоколы взаимодействия; программирование на основе шаблонов.
5.
Основные структуры данных
Основные структуры данных: массивы, записи, строки и их представление данных в памяти. Методы распределения памяти (статическое, автоматическое, динамическое); управление памятью периода выполнения. Представление и реализация списков; стеков, очередей, хеш-таблиц, графов и деревьев.
6.
Рекурсия
Понятие рекурсии; математические рекурсивные функции; примеры рекурсивных процедур; рекурсия и метод “разделяй и властвуй”; реализация бэктрекинга (backtracking) посредством рекурсии; реализация рекурсии с помощью стека, примеры рекурсивных функций, применение рекурсии при трансляции языков программирования, метод рекурсивного спуска.
7. Событийно-управляемое, программирование
параллельное
и
распределенное
Методы обработки и распространение событий; управление параллелизмом с помощью механизма обработки событий; обработка исключений. Методы программирования сетевых приложений.
8.
Прикладные программные интерфейсы (API) и их применение
API-программирование; браузеры; программирование по примерам (example); отладка в API-окружении; методы обработки данных, основанные на компонентных технологиях; понятие промежуточного программного обеспечения (Middleware). 2
РАСПРЕДЕЛЕНИЕ ЧАСОВ КУРСА ПО ТЕМАМ И ВИДАМ РАБОТ
Всего № Наименование тем и разделов (часов) п/ п 1. Введение в языки программировани 4 2. Основные конструкции языков 18 программирования 3. Алгоритмы и процесс решения 10 задачи 4. Понятия объектно- 10 ориентированного программирования 5. Основные структуры данных 24 6. Рекурсия 10 8 7. Событийно-управляемое, параллельное и распределенное программирование 8. Прикладные программные 8 интерфейсы (API) и их применение ИТОГО 90
Аудиторные занятия (часов) 2 10
Самостоятельная работа (часов) 2 8
6
4
6
4
14 6 4
10 4 4
4
4
50
40
Примечание. Во всех разделах таблицы указано минимальное число часов, необходимое для усвоения соответствующего раздела. Оставшиеся часы используются в рабочей программе для более глубокого изложения отдельных разделов курса. Форма итогового контроля: экзамен. ЛИТЕРАТУРА (Основная) 1. Т. Пратт, М. Зелковиц. Языки программирования. Разработка и реализация. Пер. с англ. СПб.: Питер, 2002. - 688 с. 2. Д. Э. Кнут Искусство программирования, том 3. Пер. с англ. М.: Издательский дом "Вильямс", 2000. - 832 с. 3. Баженова И. Ю. Visual С++. Уроки программирования. Учеб. пособие. М.: Диалог-МИФИ, 2002. - 416 с. 4. Майкл Морган. Java 2. Руководство разработчика. Пер. с англ.: Учеб. пособие. М.: Издательский дом "Вильямс", 2000. - 720 с. 5. Баженова И.Ю. JBuilder 5. Программирование на Java. Учеб. пособие. М.: КУДИЦ-ОБРАЗ, 2000. - 448 с. 6. Р. Шварц, Т. Кристиансен. Изучаем Perl. Пер. с англ.: Учеб. пособие. К.: Издательская группа BHV, 2000. - 320 с. 7. Баженова И.Ю. Delphi 6. Самоучитель программиста. Object Pascal. Учеб. пособие. М.: КУДИЦ-ОБРАЗ, 2002. - 432 с. 8. Т. Арчер. Основы С#. Новейшие технологии. Пер. с англ. М.: Издательскоторговый дом "Русская Редакция", 2001. - 448 с. 9. Король В.И. Visual Basic 6. Язык программирования. Учеб. пособие. М.: КУДИЦ-ОБРАЗ, 2000. - 448 с. Список дополнительной литературы устанавливается кафедрой. 3
Программа составлена д.т.н., профессором В.А. Сухомлиным (Московский государственный университет им. М.В. Ломоносова). Рецензент:
4