Методические указания ЛР 9 (Методические указания к лабораторным работам)
Описание файла
Файл "Методические указания ЛР 9" внутри архива находится в следующих папках: Методические указания к лабораторным работам, ЛР9_ПКШ. Документ из архива "Методические указания к лабораторным работам", который расположен в категории "". Всё это находится в предмете "программирование на основе классов и шаблонов" из 2 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "программирование на основе классов и шаблонов" в общих файлах.
Онлайн просмотр документа "Методические указания ЛР 9"
Текст из документа "Методические указания ЛР 9"
8
ПКШ (ООП) – Большаков С.А. 2014/2015 1-й курсМетодические указания к лабораторной работе № 9 по курсу
Программирование на основе классов и шаблонов
"Работа с файлами в системах программирования С++"
Москва, МГТУ - 2014
_____________________________________________________________________________________________
СОДЕРЖАНИЕ
1. Цель работы 3
2. Задачи, решаемые в лабораторной работе 3
3. Основные понятия и примеры 4
3.1. Понятие файла и файловой системы 4
3.2. Основные режимы работы с файлами 4
3.3. Основные операции для работы с файлами 4
3.4. Разновидности файлов 4
3.5. Функции для работы с файлами в RTL 4
3.6. Классы для работы с файлами в STL 4
3.7. Классы для работы с файлами в MFC 4
3.8. Классы для работы с файлами в ATL 4
3.9. Классы для работы с файлами в .NET 4
4. Порядок работы и методические указания (основные требования) 4
4.1. Создать в VS 2005 консольный проект (LAB9). 4
4.2. Обеспечить русификацию консольного ввода и вывода. 4
4.3. Познакомиться с методами работы с файлами и запомнить в отчете 5
4.4. Выполнить описание классов для работы 5
4.5. Продемонстрировать работу с файлами в RTL 5
4.6. Продемонстрировать работу с файлами в STL(потоковый ввод/вывод) 5
4.7. Продемонстрировать работу с файлами в MFC 5
4.8. Продемонстрировать работу с файлами в ATL 5
4.9. Дополнительные требования для самых сильных студентов 5
5. Варианты по группам и студентам 6
6. Диаграммы классов 6
7. Блок-схемы алгоритмов 6
8. Ошибки и их запоминание (требования) 6
9. Контрольные вопросы 6
10. Оформление отчета (требования) 6
11. Сроки и порядок защиты ЛР 7
12. Литература 7
13. Шаблон отчета 7
14. Справочные материалы 7
1 Цель работы
Целью лабораторной работы №9 является изучение библиотек классов для работы в VS на языке С++ с файлами. Студенты изучают функции и классы для работы с файлами в библиотеках: RTL, STD, MFC и ATL. В различных средах изучаются операции: открытия и закрытия файлов, работы с файлами в режимах записи и чтения. Изучаются режимы последовательного и прямого доступа к файлам.
2 Задачи, решаемые в лабораторной работе
В процессе выполнения ЛР студенты индивидуально должны выполнить следующие задачи. Перечислим основные требования к лабораторной работе:
-
Создать в VS 2005 консольный проект (LAB9).
-
Выполнить все задания из раздела “4. Порядок выполнения работы“:
-
Обеспечить русификацию ввода и вывода с консоли.
-
Изучить и зафиксировать основные понятия для работы с файлами.
-
Изучить функции RTL для работы с файлами.
-
Изучить функции STL для работы с файлами.
-
Изучить функции MFC для работы с файлами.
-
Изучить функции ATL для работы с файлами.
-
Все действия по программированию выполняются в интерактивном режиме с использованием отладчика.
-
После выполнения перечисленных действий студенты: демонстрируют работу программы, оформляют на основе шаблона отчет по лабораторной работе и защищают ее, отвечая на контрольные вопросы представленные в данных методических указаниях.
Примечания. 1. Для удобства восприятия текста используется цвет и тип шрифта. Фрагменты исходного текста, включаемые в программы, я буду выделять синим цветом. Например, вставка заголовочного файла в программу будет выглядеть так:
#include <iostream>
2. Вывод результата в консольное окно, который формируется программой, будем помечать коричневым цветом и устанавливать непропорциональный шрифт Courier New. Например:
Введите iVal: 10
3. Формализованные описания языка и синтаксические правила будем записывать зеленым цветом:
<левая часть выражения присваивания> = <правая часть выражения присваивания>;
4. Если в тексте встречается переменная, которая подчеркнута, то это означает, что дается определение важного понятия и это понятие встречается в данном тексте первый раз. Например:
Программа – это упорядоченная совокупность операторов …
Примечание 2. По каждой ЛР вам даются методические указания (данный документ) и шаблон оформления отчета. Эти материалы вы можете получить на сайте – www.sergebolshakov.ru в разделе “Лабораторные работы”. Пароль для доступа сообщу на лекции или во время ЛР. Кроме того, на сайте вы найдете общие методические указания к ЛР и ДЗ по курсу (“Общие методические указания по дисциплине ПКШ”). Для выполнения ЛР нужно познакомиться в первую очередь с разделами 4 и 8 (“Технология создания исполнимых программ” и “Разработка блок схем”). С этим материалом желательно познакомиться до начала ЛР. Изучаемые материалы с сайта считаются актуальными, если в колонтитуле документа стоит год соответствующий текущему семестру (например, 2012-2013 уч. год).
Примечание 3. После выполнения ЛР необходимо четко отвечать на все контрольные вопросы, которые приведены в данных МУ. Эти вопросы задаются преподавателем при защите ЛР, включаются в перечень вопросов рейтингов и экзаменационных билетов.
3 Основные понятия и примеры
Для сильных студентов данный раздел предлагается написать самостоятельно и внести в отчет по лабораторной работе.
4 Понятие файла и файловой системы
Раздел для самостоятельной проработки.
5 Основные режимы работы с файлами
Раздел для самостоятельной проработки.
6 Основные операции для работы с файлами
Раздел для самостоятельной проработки.
7 Разновидности файлов
Раздел для самостоятельной проработки.
8 Функции для работы с файлами в RTL
Раздел для самостоятельной проработки.
9 Классы для работы с файлами в STL
Раздел для самостоятельной проработки.
10 Классы для работы с файлами в MFC
Раздел для самостоятельной проработки.
11 Классы для работы с файлами в ATL
Раздел для самостоятельной проработки.
12 Классы для работы с файлами в .NET
Раздел для самостоятельной проработки.
13 Порядок работы и методические указания (основные требования)
14Создать в VS 2005 консольный проект (LAB9).
Создать проект в VS2005 как было рассмотрено в предыдущих ЛР (1-8 ЛР). Для дополнительных требований может понадобиться создание проекта в среде .NET и Windows.
15 Обеспечить русификацию консольного ввода и вывода.
Выполнить русификацию для консольного проекта, как было показано в предыдущих лабораторных работах.
16 Познакомиться с методами работы с файлами и запомнить в отчете
По литературе, по справочникам познакомиться с понятием файла и принципами работы с ними. Необходимо, в порядке самостоятельной проработки материала, по оглавлению раздела “Основные понятия” составить конспект материала и внести его в отчет по лабораторной работе.
17 Выполнить описание классов для работы
Для демонстрации операций работы с файлами описать класс (классы), которые будут использоваться в качестве примеров для выполнения операций ввода и вывода. Варианты типов классов, используемых в ЛР, можно выбрать классы, как в ДЗ. Это могут быть классы: элементный или контейнерный класс, или любой другой класс, входящий в систему классов ДЗ.
18 Продемонстрировать работу с файлами в RTL
Изучить функции работы с файлами из RTL: fopen, fclose , feof , fgetc , fgetpos, fgets, fprintf, fputc, fread , freopen , fscanf, fsetpos, fseek, fwrite, rewind. Продемонстрировать работу перечисленных функций для текстовых и двоичных файлов. Демонстрация должна проводиться с использованием объектов собственного класса. Результаты вывести на экран и включить в отчет.
19 Продемонстрировать работу с файлами в STL(потоковый ввод/вывод)
Изучить классы потокового ввода и вывода для файлов: fstream, ifstream, basic_ifstream, basic_ios, ofstream. Изучить и продемонстрировать использование методов классов потокового ввода и вывода для файлов: open, close , “>>” , “<<”,fail, seekpos , eof и других. Результаты вывести на экран и включить в отчет.
20 Продемонстрировать работу с файлами в MFC
Изучить и продемонстрировать использования класс MFC – CFile. Изучить и продемонстрировать использование всех методов этого класса для собственного класса. Результаты вывести на экран и включить в отчет.
21 Продемонстрировать работу с файлами в ATL
Изучить и продемонстрировать использования класс ATL – CAtlFile. Изучить и продемонстрировать использование всех методов этого класса для собственного класса. Результаты вывести на экран и включить в отчет.
22 Дополнительные требования для самых сильных студентов
Для сильных студентов предлагаются дополнительные требования при выполнении ЛР №9. Эти требования могут быть выполнены в любой последовательности и в любом объеме. На титульном листе отчета по ЛР необходимо указать, что дополнительные требования выполнены. Нужно:
-
Перегрузить для своего классы операции ввода и вывода для файлов.
-
Продемонстрировать работу с файлами на основе классов .NET.
-
Продемонстрировать работу с файлами в проекте под Windows с оконным пользовательским интерфейсом.
23 Варианты по группам и студентам
В данной лабораторной работе не назначаются индивидуальные варианты для каждого конкретного студента и группы.
24 Диаграммы классов
В данной лабораторной работе должны быть построены и приведены диаграммы всех изучаемых классов (STL, MFC и ATL).
25 Блок-схемы алгоритмов
Для процедур и фрагментов программ, в которых используются циклы, переключатели и ветвления необходимо оформить блок-схемы программ, в соответствии нотацией, изложенной в пособии по ЛР [6].
26 Ошибки и их запоминание (требования)
Для накопления профессионального опыта в программировании рекомендуется запоминать и фиксировать ошибки, возникающие на различных стадиях разработки программ: разработки алгоритмов, подготовки текста, компиляции и отладки программ. С этой целью вводится требование размещения в отчете по ЛР фиксации ошибок в специальной таблице (см. шаблон отчета по ЛР в конце документа). При этом запоминается: тип и суть ошибки, этап возникновения и способ устранения. Такая работа является очень полезной и позволяет избавиться от ошибок и легче находить способы их устранения.
27 Контрольные вопросы
-
Дайте определение файла.
-
Дайте определение каталога или директории.
-
Какие файловые системы вы знаете.
-
Чем отличаются файловые системы?
-
Какие функции используются для работы с файлами в RTL?
-
Какие классы используются для работы с файлами в STL?
-
Какие классы используются для работы с файлами в MFC?
-
Какие классы используются для работы с файлами в ATL?
-
Чем отличаются классы CFile и CAtlFile?
28 Оформление отчета (требования)
Студенты должны приходить на отработку лабораторной работы подготовленными. Подготовка включает в себя знакомство с данными методическими указаниями, осмысление поставленных задач. Усвоение основных понятий, связанных с данной темой. Полезным может быть предварительная подготовка отчета в электронном виде для дальнейшего его заполнения в процессе работы.
Отчет по ЛР должен включать следующие разделы:
-
Титульный лист с указанием группы и фамилии студента и преподавателя.
-
Цель лабораторной работы
-
Основные положения и понятия для работы с файлами
-
Ответы на разделы “Основных понятий”, полученные в результате самостоятельной проработки.
-
Порядок выполнения основных шагов ЛР (крупно)
-
Диаграммы изученных классов.
-
Блок-схема алгоритмов программы и функций (с циклами и ветвлением).
-
Перечень, обнаруженных ошибок (в таблице), возникших при разработке и отладки программы ЛР.
-
Исходный текст всех модулей программы, включая и заголовочные файлы, и проект для VS 2005 в электронном виде, желательно представить на CD.
-
Результаты работы программы в текстовом формате, скопированные с консольного окна при ее выполнении.
-
Выводы по работе
Для защиты отчет предоставляется в распечатанном виде, кроме того, студент должен иметь все исходные и загрузочные файлы, включая и файлы проекта под VS 2005.
29 Сроки и порядок защиты ЛР
Данная лабораторная работа выполняется сильными студентами до заключительного рейтинга по второму модулю курса ПКШ (14-15 недели). Выполнение этой ЛР контролирует и принимает только лектор по курсу, поэтому сдача будет производиться во время консультаций или приема ДЗ, предварительно назначенного со старостами.
30 Литература
-
Г. Шилдт “С++ Базовый курс”: Пер. с англ.- М., Издательский дом “Вильямс”, 2011 г. – 672с
-
Г. Шилдт “С++ Руководство для начинающих” : Пер. с англ. - М., Издательский дом “Вильямс”, 2005 г. – 672с
-
Г. Шилдт “Полный справочник по С++”: Пер. с англ.- М., Издательский дом “Вильямс”, 2006 г. – 800с
-
Бьерн Страуструп "Язык программирования С++"- М., Бином, 2010 г.
-
MSDN Library for Visual Studio 2005 (Microsoft Document Explorer – входит в состав дистрибутива VS. Нужно обязательно развернуть при установке!)
-
Общее методическое пособие по курсу для выполнения ЛР и КЛР/ДЭ (см. на сайте 1-й курс www.sergebolshakov.ru) – см. кнопку в конце каждого раздела сайта!!!
-
Г.С.Иванова, Т.Н. Ничушкина, Е.К.Пугачев "Объектно-ориентированное программирование". – М., МГТУ, 2001 г.
-
Другие методические материалы по дисциплине с сайта www.sergebolshakov.ru.
-
Конспекты лекций по дисциплине “Программирование на основе классов и шаблонов”.
-
Страуструп Б. "Дизайн и эволюция С++. Классика CS" – СПб,: Питер , 2007. – 445с.
31 Шаблон отчета