Реферат: Программа дисциплины по кафедре Экономическая кибернетика высокоуровневые методы информатики
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
Государственное образовательное учреждение высшего профессионального образования
Тихоокеанский государственный университет
Утверждаю
Проректор по учебной работе
______________ С.В. Шалобанов
“_____” ________________2007 г.
Программа дисциплины
по кафедре Экономическая кибернетика
высокоуровневые методы информатики
Утверждена научно-методическим советом университета для направлений подготовки (специальностей) в области «^ Информатики и вычислительной техники»
Специальность 071900
«Прикладная информатика в экономике»
Хабаровск 2007 г.
Программа разработана в соответствии с требованиями государственного образовательного стандарта, предъявляемыми к минимуму содержания дисциплины и в соответствии с примерной программой дисциплины, утвержденной департаментом образовательных программ и стандартов профессионального образования с учетом особенностей региона и условий организации учебного процесса Тихоокеанского государственного технического университета.
Программу составил (и)
Масляев П. А.
кафедра Экономической кибернетики, преподаватель
Программа рассмотрена и утверждена на заседании кафедры
протокол № от « » 2007г.
Зав. кафедрой__________«__»_____ 2007г
Пазюк К. Т.
Подпись дата
Ф.И.О.
Программа рассмотрена и утверждена на заседании УМК и рекомендована к изданию
протокол № от « » 2007г
Председатель УМК _______«__»_______ 2007г
_________________
Подпись дата
Ф.И.О.
Директор института _______«__»_______ 2007г
__________________
(декан факультета) Подпись дата
Ф.И.О.
^ 1. Цели и задачи дисциплины
Основной целью и задачей курса “Высокоуровневые методы информатики” является получение студентами систематизированных сведений о методах программирования, знакомство с основными подходами в написании программ, получение навыков по разработке программ с использованием этих методов. А также дополнительно, приобретение студентами знаний по базовым технологиям программирования, получение навыков системного подхода по их использованию.
В результате изучения дисциплины студент должен знать основные понятия высокоуровнего подхода программирования, средства разработки программного обеспечения.
Изучение дисциплины базируется на знаниях, полученных при изучении дисциплин «Информатика», «Операционные системы», «Алгоритмические языки программирования», «Объектно-ориентированное программирование», «Структуры данных».
^ 2. требования к уровню освоения содержания дисциплины
В результате изучения дисциплины студент должен:
- знать
основы современных технологий программирования
основы языков программирования(C#, С++);
основные методы программирования;
основные подходы к разработке программ;
-уметь
проводить декомпозицию;
составлять программы;
использовать средства разработки для создания и отладки программного обеспечения;
использовать готовые программные решения;
-иметь опыт
проектирования программ средств;
разработки программ;
-иметь представление
возможностях языков программирования;
о тенденциях и перспективах развития средств разработки программного обеспечения.
^ 3. Объём дисциплины и виды учебной работы.
Таблица 1.
Наименование
По учебным планам (УП)
с максимальной трудоёмкостью
с минимальной трудоёмкостью
^ Общая трудоёмкость дисциплины
по ГОС
___
___
по УП
68
68
Изучается в семестрах
5
5
^ Вид итогового контроля по семестрам
зачет
5
5
экзамен
Курсовой проект (КП)
Курсовая работа (КР)
расчетно-графические работы (РГР)
^ Реферат (РФ)
Домашние задания (ДЗ)
^ Аудиторные занятия:
всего
68
68
В том числе: лекции (Л)
17
17
Лабораторные работы (ЛР)
17
17
Практические занятия (ПЗ)
^ Самостоятельная работа
общий объем часов (С2)
34
34
В том числе на подготовку к лекциям
17
17
на подготовку к лабораторным работам
17
17
на подготовку к практическим занятиям
на выполнение КР
на выполнение РГР
16
16
на написание РФ
на выполнение ДЗ
^ 4. Содержание дисциплины
Тема
Наименование тем лекционного курса
Декомпозиция
Понятия декомпозиции. Отличие объектно-ориентированного подхода от структура. История возникновения объектно-ориентированного подхода.
Методы проектирования
Проектирование, основные понятия проектирования, цели и задачи проектирования.
Абстрагирование
Абстракция, ее сущность. Полнота описания. Цели абстракции.
Классы. Основные понятия
Описание объектов реального мира классами. Возможности классов. Моделирование процессов.
Конструкторы и деструкторы
Создание и уничтожение экземпляров классов.
Инкапсуляция. Указатель this
Друзья классы и функции. Указатель this, его функции. Нарушение инкапсуляции
Иерархия. Виды иерархий
Наследование. Множественное наследование.
Полиморфизм. Виды полиморфизма
Поведение классов, при различных видах использования
Шаблоны
Программирование с использованием шаблонов, его преимущества и недостатки.
^ Разделы дисциплины и виды занятий и работ
№
Раздел дисциплины Л
ЛР
ПЗ
КП
(КР)
РГР
ДЗ
РФ
С2
1
2
3
4
5
6
7
8
9
10
Декомпозиция
*
*
Методы проектирования
*
Абстрагирование
*
*
*
Классы. Основные понятия
*
*
*
Конструкторы и деструкторы
*
*
*
Инкапсуляция. Указатель this
*
*
Иерархия. Виды иерархий
*
*
*
Полиморфизм. Виды полиморфизма
*
*
*
Шаблоны
*
*
^ 5.Лабораторный практикум
Знакомство с С++.
Цель работы: знакомство с основами языка C++.
Исполнение: знакомство с элементарными типами данных языка C++ и применение их при написании программ.
Обеспечение: Персональный компьютер; Среда разработки Borland C++ Builder.
Оценка: По результатам выполнения определяются основные характеристики элементарных типов данных. Обучающийся должен иметь представление об элементарных типах данных, уметь правильно выбирать нужный тип данных для написания программ.
^ Время выполнения работы: 2 часа.
Реализация класса.
Цель работы: Изучение создания классов.
Исполнение: Знакомство с созданием собственных типов данных, их обработки. Получение первоначальных навыков по создание классов. Написание программы с использованием классов.
Обеспечение: Персональный компьютер; Среда разработки Borland C++ Builder.
Оценка: В результате выполнения должно быть представлена программа, выполняющая заданные действия с пользовательскими типами данных. Обучающийся должен знать процесс создания пользовательских типов данных и классов.
^ Время выполнения работы: 2 часов.
Дружественные функции.
Цель работы: Изучение дружественных функций.
Исполнение: Работа с дружественными классами и функциями. Написать программу с использованием дружественных классов и функций.
Обеспечение: Персональный компьютер; Среда разработки Borland C++ Builder.
Оценка: В результате выполнения должно быть представлено приложение, выполняющее заданные действия на ПК. Обучающийся должен знать порядок описания дружественных классов и функций.
^ Время выполнения работы: 2 часов.
Перегрузка функций.
Цель работы: Изучение перегрузки функций.
Исполнение: Изучить методы перегрузки функций. Написать программу с использованием перегрузки функций.
Обеспечение: Персональный компьютер; Среда разработки Borland C++ Builder.
Оценка: В результате выполнения должно быть представлено приложение, выполняющее заданные действия на одном ПК. Обучающийся должен знать методы перегрузки функций.
^ Время выполнения работы: 2 часов.
Указатели.
Цель работы: Изучение перегрузки операторов.
Исполнение: Изучить методы перегрузки операторов. Написать программу с использованием перегрузки операторов.
Обеспечение: Персональный компьютер; Среда разработки Borland C++ Builder.
Оценка: В результате выполнения должно быть представлено приложение, выполняющее заданные действия на одном ПК. Обучающийся должен знать методы перегрузки операторов.
^ Время выполнения работы: 3 часов.
Наследование.
Цель работы: Изучение возможностей работы с классами с использованием наследования. Получение практических навыков в наследования классов.
Исполнение: Изучить возможности С++ для наследования классов.
Обеспечение: Персональный компьютер; Среда разработки Borland C++ Builder.
Оценка: В результате выполнения должно быть представлено приложение, выполняющее заданные действия на одном ПК. Обучающийся должен детально ознакомиться с наследованием классов.
^ Время выполнения работы: 4 часа.
Шаблоны.
Цель работы: Изучение основ программирование на С++ с использованием шаблонов.
Исполнение: Изучить возможности по описанию шаблонных классов и алгоритмов на языке С++. Написать программу с использованием шаблонов.
Обеспечение: Персональный компьютер; Среда разработки Borland C++ Builder.
Оценка: В результате выполнения должно быть представлено приложение, выполняющее заданные действия на одном ПК. Обучающийся должен ознакомиться с возможностями описания шаблонных классов и алгоритмов на языке С++.
^ Время выполнения работы: 2 часа.
Лабораторные занятия и их взаимосвязь с содержанием лекционного курса
№ п/п
№ раздела по варианту содержания
Наименование лабораторной работы
1.
1
Знакомство с С++
2.
3,4
Реализация класса
3.
3,4,5
Дружественные функции
4.
5,6
Перегрузка функций
5.
5,6
Перегрузка операторов
6.
8
Наследование
7.
9
Шаблоны
^ 6. Контроль знаний студентов
Тематика вопросов входного контроля.
Студент должен знать:
- Основные приемы работы с различными текстовыми редакторами.
-.Основы информатики
-.Основы операционных систем
- Основы структурного и объектно-ориентированного программирования
^ Текущий контроль знаний студентов.
Текущий контроль осуществляется на лабораторных занятиях путем решения задач, ответов на контрольные вопросы, защите лабораторных работ. Тематика лабораторных работ приведена выше.
^ Выходной контроль знаний студентов.
Дисциплина завершается зачетом. На зачете проверяется степень усвоения студентами основных понятий дисциплины, понимание их взаимосвязи, знание построения программных средств.
^ Примерный состав вопросов в билетах экзамена по дисциплине
Понятие декомпозиции, задачи декомпозиции, структурный подход, его недостатки, отличие объектно-ориентированного подхода от структурного.
Методы проектирования.
Составные части объектно-ориентированного подхода: анализ, проектирование, программирование. Основные и дополнительные элементы объектной модели.
Абстрагирование: понятие абстракции, пять парадигм программирования, понятие объекта и способы его абстрагирования.
Абстрагирование: абстракция сущности, понятие клиента и сервера, понятие интерфейса класса и атрибута класса.
Описание (объявление) класса на языке С++, создание объекта класса и работа с ним, перегрузка методов.
Понятие конструктора и деструктора, их особенности, способы их вызова.
Инкапсуляция, ограничение доступа к элементам класса в языке С++, реализация методов, дружественные классы и функции.
Инкапсуляция, аналог класса С++ структуре в языке С, скрытый указатель this, статические функции.
Операторы, основные наборы операторов, четыре способы объявления оператора.
Модульность, понятие модуля и интерфейса модуля, назначение модульности, правила разбиения на модули, средства для поддержания модульности в языке С++.
Иерархия, виды иерархий, ассоциация, обозначение на диаграмме, пример на языке С++.
Иерархия, виды иерархий, агрегация, два вида агрегаций, физическая агрегация (композиция), обозначение на диаграмме, пример на языке С++.
Иерархия, виды иерархий, агрегация, два вида агрегаций, концептуальная агрегация, обозначение на диаграмме, пример на языке С++.
Иерархия, виды иерархий, использование, обозначение на диаграмме, пример на языке С++.
Иерархия, виды иерархий, наследование (одиночное), обозначение на диаграмме, пример на языке С++, аналог дочерних классов структурам на С.
Иерархия, виды иерархий, наследование (множественное), обозначение на диаграмме, пример на языке С++, аналог дочерних классов структурам на С.
Иерархия, виды иерархий, наследование (одиночное и множественное), принципы работы конструкторов и деструкторов.
Иерархия, виды иерархий, схожесть композиции и наследования, концепции их применения, полностью закрытое и частично зарытое наследование.
Полиморфизм, повышающее приведение типа, понятие связывания, виртуальная функция, виртуальный деструктор, отличие понятий “переопределение” и “ перегрузка ” функции.
Полиморфизм, понятие связывания, реализация механизма позднего связывания, понятие чисто виртуальной функции.
Полиморфизм, вызов виртуальных и чисто виртуальных функций из конструкторов и деструкторов.
Полиморфизм, понятие чисто виртуальной функции и абстрактного класса, основная и побочная цели его создания.
Полиморфизм, виртуальные функции при множественном наследовании, виртуальные базовые классы (аналог структуре на языке С).
Полиморфизм, статическое и динамическое приведение типа, механизм RTTI (runtime type identification), пример использования.
^ 8. Контроль самостоятельной работы студентов-заочников
Каждый студент должен выполнить одну контрольную и одну лабораторную работу.
Выполнение контрольной работы является важным звеном в обучении студентов-заочников и преследует следующие цели:
-оказать помощь студенту в овладении необходимыми навыками правильной организации самостоятельной работы в межсессионный период;
-привить навыки самостоятельного изучения материала по учебной дисциплине;
-указать правильную последовательность в изучении данной учебной дисциплины;
-закрепить знания основных положений учебной дисциплины;
-систематизировать знания по учебной дисциплине;
-выработать умение анализировать достоинства и недостатки отдельных технических решений;
-привить навыки применения теоретических знаний для решения практических вопросов;
-научить студента грамотно, лаконично излагать материал;
-проверить работу студента-заочника в межсессионный период по изучению данной дисциплины.
В контрольной работе студент должен продемонстрировать понимание предложенных в контрольной работе вопросов, показать знание теории разработки программных систем, знания программирования.
^ Примерный состав вопросов для контрольной работы
Понятие декомпозиции, задачи декомпозиции, структурный подход, его недостатки, отличие объектно-ориентированного подхода от структурного.
Методы проектирования.
Составные части объектно-ориентированного подхода: анализ, проектирование, программирование. Основные и дополнительные элементы объектной модели.
Абстрагирование: понятие абстракции, пять парадигм программирования, понятие объекта и способы его абстрагирования.
Абстрагирование: абстракция сущности, понятие клиента и сервера, понятие интерфейса класса и атрибута класса.
Описание (объявление) класса на языке С++, создание объекта класса и работа с ним, перегрузка методов.
Понятие конструктора и деструктора, их особенности, способы их вызова.
Инкапсуляция, ограничение доступа к элементам класса в языке С++, реализация методов, дружественные классы и функции.
Инкапсуляция, аналог класса С++ структуре в языке С, скрытый указатель this, статические функции.
Операторы, основные наборы операторов, четыре способы объявления оператора.
Модульность, понятие модуля и интерфейса модуля, назначение модульности, правила разбиения на модули, средства для поддержания модульности в языке С++.
Иерархия, виды иерархий, ассоциация, обозначение на диаграмме, пример на языке С++.
Иерархия, виды иерархий, агрегация, два вида агрегаций, физическая агрегация (композиция), обозначение на диаграмме, пример на языке С++.
Иерархия, виды иерархий, агрегация, два вида агрегаций, концептуальная агрегация, обозначение на диаграмме, пример на языке С++.
Иерархия, виды иерархий, использование, обозначение на диаграмме, пример на языке С++.
Иерархия, виды иерархий, наследование (одиночное), обозначение на диаграмме, пример на языке С++, аналог дочерних классов структурам на С.
Иерархия, виды иерархий, наследование (множественное), обозначение на диаграмме, пример на языке С++, аналог дочерних классов структурам на С.
Иерархия, виды иерархий, наследование (одиночное и множественное), принципы работы конструкторов и деструкторов.
Иерархия, виды иерархий, схожесть композиции и наследования, концепции их применения, полностью закрытое и частично зарытое наследование.
Полиморфизм, повышающее приведение типа, понятие связывания, виртуальная функция, виртуальный деструктор, отличие понятий “переопределение” и “ перегрузка ” функции.
Полиморфизм, понятие связывания, реализация механизма позднего связывания, понятие чисто виртуальной функции.
Полиморфизм, вызов виртуальных и чисто виртуальных функций из конструкторов и деструкторов.
Полиморфизм, понятие чисто виртуальной функции и абстрактного класса, основная и побочная цели его создания.
Полиморфизм, виртуальные функции при множественном наследовании, виртуальные базовые классы (аналог структуре на языке С).
Полиморфизм, статическое и динамическое приведение типа, механизм RTTI (runtime type identification), пример использования.
Студент должен выбрать 5 вопросов для выполнения контрольной работы в зависимости от последней цифры студенческого билета или зачетной книжки.
Приступая к выполнению контрольной работы, студент должен выписать из общего списка вопросы, которые включены в его вариант контрольной работы, уяснить какого ответа требуют предлагаемые вопросы. Затем в первом приближении изучить учебную дисциплину по рекомендованной литературе, руководствуясь учебной программой или списком вопросов для подготовки к экзамену с тем, чтобы иметь общее представление по всем вопросам учебной дисциплины и чувствовать взаимосвязь предложенных в контрольной работе вопросов с другими вопросами дисциплины. После этого можно приступить к более глубокому изучению материала по тем вопросам, которые заданы в контрольной работе и подготовке ответа на них.
Отрабатывать вопросы контрольной работы следует по нескольким рекомендованным пособиям, делая в тетради отдельные выписки и приводя необходимые рисунки (схемы). При отработке вопросов контрольной работы можно привлекать и другие источники, не приведённые в списке рекомендованной литературы. После сбора необходимого материала для ответа на вопросы контрольной работы, разработки необходимых схем, следует написать черновой вариант контрольной работы, используя сделанные ранее выписки. После этого следует отредактировать текст контрольной работы и оформить работу начисто. Писать текст контрольной работы следует собственным языком. Не допускается компиляция и плагиат текста из используемой литературы.
Лабораторная работа выбирается из предложенного списка в разделе «Лабораторные работы».
9. Учебно-методическое обеспечение дисциплины
Основная литература
^ 7. СПИСОК ЛИТЕРАТУРЫ
Керниган Б., Ритчи Д Язык программирования С: Пер. с англ. - М.: Финансы и статистика, 1992. - 272 с.
American National Standard for Programming Languages - С Language. ANSI/ISO 9899-1990. - NY: ANSI, 1992. - 219 pp.
Подбельский В.В., Фомин С.С. Программирование на языке С. - М: Финансы и статистика, 2003. - 600 с.
Керниган Б., Пайк Р. Практика программирования: Пер. с англ. - СПб.: Невский диалект, 2001. - 381с.
Шилдт Г. Полный справочник по С. - 4-е изд.: Пер. с англ. - М.: Издат. дом "Вильяме", 2002. - 704 с.
Дополнительная литература
Кнут Д. Искусство программирования для ЭВМ. - Т. 3. Сортировка и поиск: Пер. с англ. - М.: Мир, 1978. - 844 с.
Таненбаум Э. Современные операционные системы (Modern Operating Systems), 2002 г.
Гордеев А. В. Операционные системы, 2004 г.
Столлингс В. Операционные системы - М: Вильямс, 2004 г.
Дансмур М., Дейвис Г. Операционная система UNIX и программирование на языке Си, 1989 г.
^ 10. Материально-техническое обеспечение дисциплины.
Персональный компьютер. Операционная система Windows. Среда разработки Borland C++ Builder.
11. Методические рекомендации по организации изучения дисциплины
Курс рассматривает основы высокоуровневых методов информатики, основные понятия и методы программирования, используемые на современном этапе науки и техники.
Рассмотрение ведется на базе теории высокоуровневых методов информатики, детально отраженной в основных литературных источниках 1-3. Все разделы лекционного курса представляются студентам как с привязкой к языку С++, в конце каждого раздела приводится достаточное количество примеров реализаций функций/технологий/методов/стратегий/алгоритмов, что позволяет студентам усвоить теоретические разделы и наглядно продемонстрировать их применение.
На лабораторных работах значительное внимание уделяется использованию современных средств разработки и программированию на языке С++.
^ Организация самостоятельной работы
Самостоятельная работа предполагает, что:
отдельные темы могут быть отнесены на самостоятельное изучение;
теоретическая подготовка к лабораторным работам с использованием МУ может осуществляться дома самостоятельно.
^ Словарь терминов и персоналий
Административная система (management system) – система, обеспечивающая управление сетью либо ее частью.
Адрес (address) – закодированное обозначение пункта отправления либо назначения данных.
Адрес IP – адрес, однозначно определяющий компьютер в сети (адрес состоит из 32 двоичных разрядов и не может повторяться во всей сети TCP/IP). Адрес IP обычно разбивается на четыре октета по восемь двоичных разрядов (один байт); каждый октет преобразуется в десятичное число и отделяется точкой, например 102.54.94.97.
Анонимные подключения – эта функция, которая разрешает удаленный доступ к ресурсам компьютера по учетной записи компьютера без предъявления имени и пароля с правами, определяемыми этой учетной записью.
Архитектура – концепция, определяющая модель, структуру, выполняемые функции и взаимосвязь компонентов сети. Архитектура охватывает логическую, физическую и программную структуры и функционирование сети, а также элементы, характер и топологию взаимодействия элементов.
^ База данных (БД) – совокупность взаимосвязанных данных, организованная по определенным правилам в виде одного или группы файлов.
Базовый порт ввода/вывода (base I/O port) – адрес памяти, по которому центральный процессор и адаптер проверяют наличие сообщений, которые они могут оставлять друг для друга.
^ Безопасность данных (data security) – концепция защиты программ и данных от случайного либо умышленного изменения, уничтожения, разглашения, а также несанкционированного использования.
^ Блок данных (data unit) – последовательность символов фиксированной длины, используемая для представления данных или самостоятельно передаваемая в сети.
Булева алгебра – алгебраическая структура с тремя операциями И, ИЛИ, НЕ.
Буфер (buffer) – временная область, которую устройство использует для хранения входящих данных перед тем, как они смогут быть обработаны на входе, или для хранения исходящих данных до тех пор, пока не появится возможность их передачи.
Буфер (buffer) – запоминающее устройство, используемое между объектами при передаче данных для временного хранения данных с целью согласования скоростей.
Гигабайт (gigabyte) – обычно 1000 мегабайтов. Точно 1024 мегабайт, где 1 мегабайт равен 1 048 576 байтам (220).
Гипертекст – текст, представленный в виде ассоциативно связанных друг с другом блоков.
^ Гипертекстовый протокол HTTP – протокол сети Internet, описывающий процедуры обмена блоками гипертекста.
Главный контроллер домена (Primary Domain Controller, PDC) – компьютер, на котором устанавливается Windows NT Server в режиме PDC для хранения главной копии базы данных учетных записей.
^ Глобальная вычислительная сеть, ГВС (Wide Area Network, WAN) – компьютерная сеть, использующая средства связи дальнего действия.
Группа (group) – совокупность пользователей, определяемая общим именем и правами доступа ресурсам.
Данные (data) – информация, представленная в формализованном виде, пригодном для автоматической обработки при возможном участии человека.
Дейтаграммы (datagrams) – сообщения, которые не требуют подтверждения о приеме от принимающей стороны. Термин, используемый в некоторых протоколах для обозначения пакета.
^ Диагностическое программное обеспечение (diagnostic software) – специализированные программы или специфические системные компоненты, которые позволяют исследовать и наблюдать систему с целью определения, работает она правильно или нет, и попробовать определить причину проблемы.
Дистрибутив – это форма распространения программного обеспечения. Дистрибутив обычно содержит программы для начальной инициализации системы (в случае дистрибутива операционной системы — инициализация аппаратной части, загрузка урезанной версии системы и запуск программы-установщика), программу-установщик (для выбора режимов и параметров установки) и набор специальных файлов, содержащих отдельные части системы (так называемые пакеты).
Домен (domain) – совокупность компьютеров, использующих операционную систему Windows NT Server, имеющих общую базу данных и систему защиты. Каждый домен имеет неповторяющееся имя.
еще рефераты
Еще работы по разное
Реферат по разное
Программа дисциплины (Стандарт ) Екатеринбург
17 Сентября 2013
Реферат по разное
Программа по предмету литература для обучающихся
17 Сентября 2013
Реферат по разное
Обучение грамоте и пропедевтический курс русского языка обеспечиваются
17 Сентября 2013
Реферат по разное
Учебная программа дисциплины содержание программы
17 Сентября 2013