Рабочая программа дисциплины «Методы визуального и параллельного программирования» по направлению подготовки магистра техники и технологии 552800 «Информатика и вычислительная техника» Магистерская программа 552805 «Интеллектуальные системы»
Вид материала | Рабочая программа |
- Рабочая программа дисциплины методы оптимизации для подготовки бакалавров по направлению, 136.34kb.
- Рабочая программа дисциплины микропроцессорные технологии для подготовки магистров, 174.5kb.
- Рабочая программа дисциплины сети ЭВМ и телекоммуникации для подготовки бакалавров, 155.67kb.
- Рабочая программа дисциплины компьютерная графика для подготовки бакалавров по направлению, 180.06kb.
- Рабочая программа дисциплины операционные системы для подготовки бакалавров по направлению, 274.73kb.
- Образовательный стандарт по направлению бакалавриата 552800 "Информатика и вычислительная, 565.08kb.
- Рабочая программа дисциплины «Методы оптимизации» по направлению подготовки дипломированного, 132.79kb.
- Образовательный стандарт по направлению 552800 «Информатика и вычислительная техника», 199.12kb.
- Образовательный стандарт по направлению 552800 «Информатика и вычислительная техника», 245.41kb.
- Рабочая программа дисциплины «Современные технологии разработки интеллектуальных автоматизированных, 121.51kb.
Министерство образования Российской Федерации
Московский государственный горный университет
УТВЕРЖДАЮ
Председатель УМК по направлению
«Информатика и вычислительная техника»
проф., д.т.н. Федунец Н.И.
«_____» ____________2002 г.
Рабочая программа
дисциплины «Методы визуального и параллельного программирования»
по направлению подготовки магистра техники и технологии 552800 - «Информатика и вычислительная техника»
Магистерская программа 552805 – «Интеллектуальные системы»
Магистерская программа 552818 – «Компьютерное моделирование»
Москва 2002
^ 1. ЦЕЛИ И ЗАДАЧИ ДИСЦИПЛИНЫ
Цели изучения дисциплины:
- сформировать представление, первичные знания, умения и навыки студентов по основам визуального и параллельного программирования, лежащих в основе проектирования современных информационных систем;
- дать общие представления о прикладных методах визуального и параллельного программирования;
- подготовить студентов к применению концепций построения современных программных систем с параллельными вычислительными процессами и методов визуального программирования для написания магистерской диссертации по направлению 552800.
^ Основными задачами изучения дисциплины являются:
- усвоение студентами основных принципов использования методов визуального и параллельного программирования при построении современных компьютерных систем;
- получение ими практических навыков в проектировании современных компьютерных систем.
При изучении дисциплины «^ Методы визуального и параллельного программирования» необходимы знания по дисциплинам: «Теория принятия решений», «Математическая логика и теория алгоритмов», «Вычислительная математика», «Основы теории управления», «Алгоритмические языки и технология программирования».
^ 2. ТРЕБОВАНИЯ К УРОВНЮ ОСВОЕНИЯ СОДЕРЖАНИЯ ДИСЦИПЛИНЫ
Изучение и освоение методов создания приложений для операционных систем Windows 95-98/NT с использованием средств автоматизированного программирования (на примере использования MFC AppWizard, MFC ActiveX ControlWizard, ATL COM AppWizard, ClassWizard, AppStudio); приобретение навыков программирования в среде Microsoft Visual C++ с использованием библиотеки классов MFC и библиотеки шаблонов ATL, рассмотрение Delphi как среды визуального программирования, ознакомление с SmallTalk и Rational Rose.
^ 3. ОБЪЕМ ДИСЦИПЛИНЫ И ВИДЫ УЧЕБНОЙ РАБОТЫ
Вид учебной работы | Всего часов | Семестры |
Общая трудоемкость дисциплины Аудиторные занятия | 119 85 | 10 |
Лекции Практические занятия (ПЗ) Лабораторные занятия (ЛЗ) | 51 34 | 51 34 |
Самостоятельная работа (СР) | 34 | 34 |
Курсовая работа (КР) | | |
Расчетно-графические работы (РГР) | | |
Вид итогового контроля | | экзамен |
^ 4. СОДЕРЖАНИЕ ДИСЦИПЛИНЫ
4.1. Содержание разделов дисциплины
Введение. Методы визуального и параллельного программирования в разработке современных компьютерных систем. (1 час.)
Раздел 1. Техника визуального программирования. Общие характеристики и особенности применения C++Builder 4. (6 час.)
C++Builder 3: основные характеристики. Скорость визуальной разработки. Продуктивность компонентов. Мощность языковых средств C++. Масштабируемый доступ к базам данных. Вхождение в Интернет.
Другие программные продукты Inprise.
Проблемы совместимости. C++Builder и Borland C++. C++Builder и Delphi. Какую систему выбрать? Какая система является более мощной? Как использовать код Delphi в C++Builder. Как использовать код C++Builder в Delphi. Перевод с Паскаля на C++. C++Builder и Microsoft Visual C++.
^ Раздел 2. C++BUILDER 4: основные компоненты. (4 час.)
Палитра компонентов - краткий обзор. Первое приложение. Свойства, методы и события. Технология двунаправленной разработки.
Приложение текстового редактора. Использование проектных шаблонов. Поиск и замена. Drag-and-Drop. Список файлов предыстории. Еще один текстовый редактор. Что делать, если…Приложения баз данных. Пример из существующего проекта. Использование модулей данных. Использование Мастера форм. Поиск в таблице.
^ Раздел 3. Объектно-ориентированное программирование и C++. (12 час.)
Инкапсуляция. Классы, компоненты и объекты. Наследование. Разработка классов. Объявление базового класса. Конструкторы и деструкторы. Объявление производных классов. Полиморфизм. Виртуальные функции. Дружественные функции.
Особенности стандарта C++. Шаблоны. Пространства имен. Явные объявления. Непостоянные объявления. Быстрый вызов функций. Исключения.
Расширения стандарта C++ и компонентная модель приложения. Объявления компонентных классов. Пакеты. Объявления компонентных свойств. Объявления обработчиков событий. Идентификация типов RTTI. Расширенные типы данных Delphi. Автоматизированные свойства и методы.
Строки. Символьные массивы. Класс string языка C++. Класс basic_string из библиотеки STL. Класс String из библиотеки VCL.
Списки. Класс TStringList: строчный список. Класс TList: список общего назначения. Списочные классы STL.
Файлы. Поточные классы C++. Режим открытия файла. Операторы включения и извлечения. Класс ifstream: чтение файлов. Класс ofstream: запись файлов. Бинарные файлы. Класс fstream: произвольный доступ к файлу. TFileStream: поточный класс VCL. Свойства и методы. Режим открытия файла.
^ Раздел 4. Новые инструменты интегрированной среды. (10 час.)
Расширенный Менеджер проектов. Построение проектной группы. Командный файл. DLL. Консольное приложение. Приложение с компонентами VCL. Расширенные проектные опции.
Дизайнер форм. Инспектор объектов. Хранилище объектов. Разделение объектов. Включение объектов в проект. Добавление объектов к Хранилищу. Проект и формы по умолчанию.
Редактор кода. Основные операции. Контекстное меню. Новые особенности. Поиск в файлах. Настройки. Приемы отладки. Отладка приложений проектной группы. Консольное приложение. Приложение с компонентами VCL. Новые возможности.
^ Раздел 5. Использование визуальных компонентов. (18 час.)
Стандартные компоненты. TMainMenu: главное меню. TPopUpMenu: выскакивающее меню. TLabel: метка. TEdit: редактируемый ввод. TMemo: комментарий. TButton: простая кнопка. TCheckBox: ячейка состояния. TRadioButton: радио-кнопка. TListBox: простой список. TComboBox: комбинированный список. TScrollBar: линейка прокрутки. TGroupBox: группирующая рамка. TRadioGroup: группа радио-кнопок. TPanel: простая панель.
Дополнительные компоненты. TBitBtn: графическая кнопка. TSpeedButton: быстрая кнопка. TMaskEdit: форматный ввод. TStringGrid: текстовая таблица. TDrawGrid: графическая таблица. TImage: изображение. TShape: фигура. TBevel: обрамление. TScrollBox: контейнер прокрутки. TCheckListBox*: список с ячейками. TSplitter*: разделитель. TStaticText*: статический текст. TChart*: диаграмма.
Компоненты Win32. TTabControl: вкладки. TPageControl: страницы. TImageList: коллекция изображений. TRichEdit: комментарий RTF. TTrackBar: регулятор. TProgressBar: прогресс-индикатор. TUpDown: спаренные кнопки. THotKey: горячая клавиша. TAnimate*: аниматор. TDateTimePicker*: Дата/Время. TTreeView: древовидный перечень. TListView: табличный список. THeaderControl: заголовки. TStatusBar: панели статуса. TToolBar*: панель инструментов. TCoolBar*: панель со шторками.
Системные компоненты. TTimer: таймер. TPaintBox: канва рисования. TMediaPlayer: панель мультимедиа. TOleContainer: объект OLE. TDdeClientConv: клиент DDE. TDdeClientItem: объект клиента DDE. TDdeServerConv: сервер DDE. TDdeServerItem: объект сервера DDE.
Компоненты сети Интернет. TClientSocket: клиент TCP/IP. TServerSocket: сервер TCP/IP. TWebDispatcher: диспетчер Web. TPageProducer: генератор гипертекста. TQueryTableProducer: генератор гипертекста по запросу. TDataSetTableProducer: генератор гипертекста по набору данных. TNMDayTime: дата/время по Интернету. TNMTime: время по Интернету. TNMEcho: эхо сервера. TNMFinger: статус пользователя. TNMFTP: клиент FTP. TNMHTTP: клиент HTTP. TNMMsg: посылка сообщений. TNMMSGServ: прием сообщений. TNMNNTP: обмен новостями. TNMPOP3: прием почты. TNMSMTP: отправка почты. TNMUUProcessor: кодировщик файлов. TNMStrm: посылка файлов. TNMStrmServ: прием файлов. TNMUDP: обмен датаграммами. TPowersock: базовый класс TCP/IP. TNMGeneralServer: класс сервера. THTML: просмотр гипертекста. TNMURL: кодировщик URL.
Компоненты доступа к базам данных. TDataSource: источник. TTable: таблица. TQuery: запрос. TStoredProc: хранимая процедура. TDatabase: база данных. TSession: сессия. TBatchMove: пакетная операция. TUpdateSQL: кэшируемые обновления. TProvider*: провайдер. TClientDataSet*: набор данных клиента. TRemoteServer*: соединение DCOM. TMIDASConnection*: соединение TCP или OLEnterprise.
Компоненты представления данных. TDBGrid: сетка. TDBNavigator: навигатор. TDBText: метка. TDBEdit: редактируемое поле. TDBMemo: комментарий поля. TDBImage: изображение поля. TDBListBox: список для выбора поля. TDBComboBox: комбинированный список выбора поля. TDBCheckBox: ячейка состояния поля. TDBRadioGroup: группа радио-кнопок выбора поля. TDBLookupListBox: список ссылок. TDBLookupComboBox: комбинированный список ссылок. TDBRichEdit*: комментарий. TDBCtrlGrid*: сетка с панелями. TDBChart*: диаграмма.
Компоненты принятия решений. TDecisionCube: Куб решений. TDecisionQuery: запрос. TDecisionSource: источник. TDecisionPivot: переключатель. TDecisionGrid: сетка. TDecisionGraph: диаграмма.
Компоненты отчетов. TQuickRep: лист отчета. TQRSubDetail*: полоса деталировки. TQRBand: основная полоса. TQRChildBand*: дочерняя полоса. TQRGroup: группа. TQRLabel: название заголовка. TQRDBText: текст поля записи. TQRExpr*: выражение. TQRSysData: системные данные. TQRMemo: комментарий. TQRRichEdit*: комментарий RTF. TQRDBRichEdit* комментарий поля. TQRShape: фигура. TQRImage*: изображение. TQRDBImage*: изображение поля. TQRCompositeReport*: сводный отчет. Настройка вида отчета TQRPreview. Диаграмма в отчете TQRChart*.
Диалоговые компоненты. TOpenDialog: открыть файл. TSaveDialog: сохранить файл. TOpenPictureDialog*: открыть изображение. TSavePictureDialog*: сохранить изображение. TFontDialog: выбор шрифта. TColorDialog: выбор цвета. TPrintDialog: печать. TPrinterSetupDialog: принтер. TFindDialog: поиск. TReplaceDialog: замена.
Компоненты Samples. TPie: секторная диаграмма. TPerformanceGraph*: плывущий график. TCSpinButton: спаренные кнопки. TCSpinEdit: настройка значения. TCGauge: индикатор. TCDirectory*: древовидный перечень. TCColorGrid: палитра красок. TCCalendar: календарь. TIBEventAlerter*: события InterBase.
Компоненты ActiveX 350. TChartfx: диаграмма. TVSSpell*: проверка правописания. TF1Book*: рабочая книга. TVtChart*: трехмерная диаграмма. TGraph*: график.
Раздел 6. Заключение.
^ 5. ЛАБОРАТОРНЫЙ ПРАКТИКУМ
№ п/п | № раздела дисциплины | Наименование лабораторных работ |
1 2 3 4 5 6 7 8 | 1-5 1-5 1-5 1-5 1-5 1-5 1-5 1-5 | Классы общего назначения TList, TStrings, TStringList, TStream. Защищенные блоки. Обзор стандартных классов. Создание собственных классов типа Exception. Глобальные объекты Application, Screen, Printer, Clipboard. Создание и установка собственных компонентов. Разработка динамически подключаемых библиотек DLL. Использование компонентов TDataSet и визуальных компонент отображения данных. Обзор графич. компонент. Работа с графикой. Работа с принтером. Вывод текста и графики. |
^ 6. УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ
6.1. Рекомендуемая литература
а) основная литература
- Шамис В.А. Borland C++Builder 4.0. Техника визуального программирования., Нолидж, Москва, 2000 г., 656 с.
- Д.Элджер. С++Библиотека Программиста., Питер, 1999 г., 320 с.
- Г.Буч. Объектно-ориентированный анализ и проектирование с примерами на С++. Бином, 1998 г., 560 с.
- С.Холзнер. Visual C++6: учебный курс.
- Архангельский А.Я. Программирование в C++Builder 4.0. Бином, 2000 г., 1088 с.
- Б.Страуструп. Язык программирования С++. Бином, 1999 г., 991 с.
- А.Я.Архангельский. 100 компонентов общего назначения библиотеки Delphi5. Бином, 1999, 272 с.
- В.Гофман, А.Хономенко. Delphi5 – Наиболее полное руководство. BHV-Санкт-Петербург, 1999, 800 с.
- А.Я.Архангельский. Object Pascal в Delphi5. Бином, 1999 г., 224 с.
- П. Дарахвелидзе, Е.Марков. Среда визуального программирования в подлиннике., BHV-Санкт-Петербург, 1999г., 816 с.
б) дополнительная литература
- М.Краснов. OpenGL. Графика в проектах Delphi.BHV, 2000 г., 352 с.
- А.М.Епанешников, В.А.Епанешников. Delphi4. Среда разработки. Диалог – МИФИ, 1999, 204 с.
- И.Ю. Баженова. Delphi 5. Самоучитель программиста. КУДИЦ-ОБРАЗ, 2000 г., 336 с.
- Н.Тюкачев, Ю. Свиридов. Delphi 5. Создание мультимедийных приложений. Нолидж, 2000 г., 384 с.
- C. Бобровский. Delphi 5. Учебный курс. Питер, 2000 г., 640 с.
- В.В.Фаронов. Delphi 5. Учебный курс.Нолидж, 2000 г., 608 с.
- А.Д.Александровский, В.В.Шубин. Delphi для профессионалов. Опыт практического применения. Питер, 2000 г., 240 с.
- А.Чекмарев. Средства визуального проектирования на JAVA. BHV-Санкт-Петербург, 1998 г., 400 с.
^ 6.2. Средства обеспечения освоения дисциплины
Программные комплексы Microsoft Windows(95,98,NT,2000), специализированные программы лабораторного комплекса.
- ^ МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ
Компьютерные классы сетевых технологий, ЛВС, серверы Internet.
- МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО ОРГАНИЗАЦИИ ИЗУЧЕНИЯ ДИСЦИПЛИНЫ
^ 8.1. Методические рекомендации преподавателю
При изучении материала по дисциплине показывать студентам необходимость использования системного подхода.
Следует использовать методы письменного тестирования процесса усвоения студентами лекционного материала.
Инициировать у студентов потребность во внеаудиторном изучении материалов по дисциплине путем выдачи им заданий на рефераты по отдельным темам курса лекций.
Привлекать студентов к созданию или модификации лабораторных работ по дисциплине.
Стимулировать у студентов опережающее и более глубокое познание материалов по дисциплине путем привлечения их для чтения самостоятельных докладов по курсу с поощрением в виде «автоматической сдачи экзамена» на соответствующую оценку.
^ 8.2. Темы самостоятельных работ
- Сравнительный анализ реализации основных принципов объектно-ориентированного программирования в различных языках.
- История развития языков объектно-ориентированного программирования.
- Разработка многозвенных приложений (стр. Midas).
- Работа с графикой средствами OpenGL
- Работа с графикой средствами WIN API
- Управление пакетом EXCEL из DELPHI 5.0 (использование СОМ-технологии).
- Rational Rose – CASE средство для автоматизации этапов анализа и проектирования ПО.
^ 8.3. Методические рекомендации студентам
Использовать лабораторный практикум по дисциплине при подготовке к предстоящей лабораторной работе.
Использовать дополнительную литературу и материалы из Internet при регулярной самостоятельной работе по изучению материалов по дисциплине.
Готовить рефераты по дисциплине (темы должны быть согласованы с лектором).
Рекомендуется выступать с докладами на лекциях по дисциплине.
Отчеты по лабораторным работам должны оформляться в соответствии с требованиями, указанными в лабораторном практикуме по дисциплине.
Программа составлена в соответствии с Государственным образовательным стандартом высшего профессионального образования по направлению подготовки магистра техники и технологии 552800 - «Информатика и вычислительная техника» и магистерским программам 552805 – «Интеллектуальные системы» и 552818 – «Компьютерное моделирование».
Программу составили:
доц, к.т.н. Фомичева О.Е.
Рецензент
Программа одобрена на заседании кафедры АСУ
«___» ___________2002 г. протокол №
Зав. кафедрой АСУ