Автор: Пользователь скрыл имя, 24 Февраля 2013 в 13:20, курсовая работа
Целью разработки проекта «Программный симулятор формирования каталога файлов» является создание программного приложения.
Основными функциями, которого будут являться: начальное формирование каталога файлов, вывод каталога файлов, удаление файлов, дата создания которых меньше заданной, выборку файла с наибольшим количеством обращений, поиск файлов по имени, по расширению.
Пояснительная записка состоит из шести разделов, содержащих необходимую информацию по организации эксплуатации программного приложения.
В первом разделе «Постановка задачи» раскрывается организационная сущность задачи, и круг задач, которые должна выполнять программа. Описывается задача, перечисляются основные функции программы. Строится информационная модель, отражающая сущности задачи, их свойства и взаимосвязи.
Рисунок 5 – Искомый элемент дерева
Для демонстрации работы функции свернем все дерево.
Рисунок 6 – Закрытый каталог
Рисунок 7 – Форма для ввода имени искомого файла
Рисунок 8 – Результат работы функции
Рассмотрим функцию поиска «Find by Extension». Данная функция предназначена для поиска элемента или элементов в дереве по его расширению. Для поиска элементов необходимо нажать на меню «File» затем выбрать вкладку «Find» и в открывшемся подменю выбрать «Find by Extension». В открывшейся форме пользователю будет предложено ввести расширение для поиска элементов, после введения расширения и подтверждения нажатием на кнопку «Искать» найденные элементы будут подсвечены желтым цветом, а все дерево, если находилась в закрытом состоянии, станет открытым. Работа данной функции представлена на рисунках 9,10,11,12.
Рисунок 9 – Элементы, которые будем искать
Рисунок 10 – Сокрытие дерева
Рисунок 11 – Форма для ввода искомого расширения
Рисунок 12 – Результат работы функции
Рассмотрим функцию поиска «Find by Request». Данная функция предназначена для поиска элемента с максимальным количеством обращений. Для поиска элемента с максимальным количеством обращений необходимо нажать на меню «File» затем выбрать вкладку «Find» и в открывшемся подменю выбрать «Find by Request», после чего искомый элемент сразу же примет желтый фоновый цвет. Результаты работы функции представлены на рисунках 13,14.
Рисунок 13 – Вызов функции
Рисунок 14 – Результат работы функции «Find by Request»
6 Применение
6.1 Назначение программы
Главным назначением программы является отображение элементов структуры дерева в графическом виде. Работа с этими элементами.
Разработанное приложение имеет понятный интерфейс, довольно просто в применении.
6.2 Условия применения
Необходимо отметить, что данное программное средство не обладает средствами, ограничивающими доступ к нему, а также средствами, препятствующими свободному распространения программы. Для работы с приложением требуется установленный Framework 2.0 или выше.
6.3 Справочная система
Справочная система для
Рисунок 15 – Справочная информация
6.4 Демонстрационный пример использования
Полную проверку программы гарантирует исчерпывающее тестирование. Оно требует проверить все наборы исходных данных, все варианты их обработки и включает большое количество тестовых вариантов. Хорошим считают тестовый вариант с высокой вероятностью обнаружения еще нераскрытой ошибки. Успешным называют тест, который обнаруживает до сих пор не раскрытую ошибку.
На главной форме расположены две вкладки меню: «File» и «Help». При запуске программы загружается информация из файла «FileStructure.xml». Все содержимое сразу отражается на компоненте TreeView в виде каталогов и файлов.
Протестируем функцию создание нового элемента в дереве. Для того чтобы создать новый элемент на «Disk» то необходимо выделить «Disk» и нажать по вкладке меню «File» и в раскрывшемся меню выбрать интересующую нам кладку «Create Dir» или «Create File». После этого на появившейся форме необходимо ввести «Имя» для нового элемента и нажать кнопку «ОК». Если же необходимо добавить элемент в уже существующую ветку, то необходимо выделить элемент, в которой хотим поместить элемент и повторить вышеуказанную операцию. Если же будет введено имя, которое уже существует, то после подтверждения нажатием на кнопку «ОК», появится сообщение об ошибке. После того как введено имя элемента и нажата кнопка «ОК» новый созданный элемент сразу отобразится в дереве, ему будет присвоено текущее время создания, количество обращений будет равно 0, а отображаться будет в соответствующем ему месте создания. Реализация данных функций представлена на рисунке 16,17,18,19,20,21,22.
Рисунок 16 – Выделение
Рисунок 17 – Вкладки меню
Рисунок 18 – Форма создания элемента
Рисунок 19 – Форма создания элемента
Выделяем каталог «Полное
Рисунок 20 – Создание элемента в существующей ветке дерева
Попробуем создать копию существующего файла. Выделяем каталог «Полное тестирование» нажимаем «File» затем «Create File» в открывшейся форме вводим имя «Полное тестирование.exe» и подтверждаем нажатием кнопки «ОК»
Рисунок 21 – Ошибка при создании в каталоге «Полное тестирование » файла «Полное тестирование.exe»
Рисунок 22– Отображение созданных элементов с параметром.
Протестируем функцию удаления элемента из дерева. Для этого необходимо выделить элемент, открыть меню «File» затем выбрать вкладку меню «Delete Dir/File» после чего появится окно подтверждения удаления, на котором следует выбрать кнопку «ОК» для удаления или же «Cancel» для возврата в предыдущее меню. После подтверждения удаления кнопкой «ОК», удаляемый вами элемент исчезнет из дерева. Если же удаляется каталог, который в себе имеет файлы или другие каталоги, то после подтверждения удаления будут удалены и вложенные в него элементы. Работа данной функции представлена на рисунках 23,24,25,26.
Рисунок 23 – удаление элемента «Полное тестирование.txt»
Рисунок 24 – После подтверждения удаления элемент исчезает из дерева
Сейчас удалим каталог с именем «Полное тестирование», который содержит вложенный файл «Полное тестирование.exe»
Рисунок 25 – Удаления каталога с вложенным файлом
Рисунок 26 – Результат удаления каталога с вложенным файлом
Рисунок 27 – Содержимое xml файла
Заключение
В рамках курсового проектирования по предмету «Конструирование программ и языки программирования» было разработано программное приложение «Симулятор файлового менеджера», позволяющее получить достаточный уровень знаний для работы компонентой TreeView и XML файлами.
Программное средство имеет ряд достоинств: простой и понятный интерфейс, небольшой объем памяти, занимаемый приложением на различных носителях информации, удобно для быстрой обработки информации.
В программе реализованы такие задачи, как: начальное формирование каталога файлов, вывод каталога файлов, удаление файлов, дата создания которых меньше заданной, выборку файла с наибольшим количеством обращений, поиск файлов по имени, по расширению. Данные сохраняются в виде файлов.
Программа реализована в полном объеме и в соответствии с заданными требованиями. Полностью отлажена и протестирована. Поставленные задачи выполнены.
Возможными недостатками является низкий уровень защиты данных, также нельзя упускать и тот момент, что работа велась не с настоящими каталогами и файлами что и планируется доработать в последующих версиях программы.
В процессе разработки программы использовался в большом объеме материал по программированию, что способствовало получению новых знаний, закреплению наработанных навыков и умений в этой интересной области знаний.
Приложение А
(обязательное)
Текст программы
FORM 1:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.Runtime.Serialization.
using System.IO;
namespace File_Simulator
{
public partial class Form1 : Form
{
public string DirName;
public bool Del;
int FindReq= 0;
public List<ClassSaveTree> listKategor = new List<ClassSaveTree>();
public ClassTag newTag, oldTag;
bool DirNameCreate;
private TreeNode node;
Form2 form2 = new Form2();
Form3 form3 = new Form3();
Form4 form4 = new Form4();
public Form1()
{
InitializeComponent();
node = new TreeNode();
node.Name = "Node0";
node.Text = "Disk";
node.ImageIndex = 2;
node.SelectedImageIndex = 2;
newTag = new ClassTag();
newTag.tag = "DIR";
newTag.date = new DateTime(2009, 5, 1, 10, 0, 0);
newTag.request = 0;
newTag.extencion = "";
node.Tag = newTag;
treeView1.Nodes.Add(node);
open();
buildTree(0);
}
private void createDirToolStripMenuItem_
{
form2.form1 = this;
form2.label1.Text = "Cоздать новый каталог:";
form2.ShowDialog();
if (DirName != "")
{
node = treeView1.SelectedNode;
DirNameCreate = false;
for (int i = 0; i < node.Nodes.Count; i++)
{
if (node.Nodes[i].Text == DirName)
{
oldTag = new ClassTag();
oldTag = (ClassTag)node.Nodes[i].Tag;
if (Convert.ToString(oldTag.tag) == "DIR")
DirNameCreate = true;
}
}
if (!DirNameCreate)
{
oldTag = new ClassTag();
oldTag = (ClassTag)node.Tag;
if (Convert.ToString(oldTag.tag) == "DIR")
{
TreeNode NewNode = new TreeNode();
NewNode.Text = DirName;
NewNode.ImageIndex = 0;
NewNode.SelectedImageIndex = 0;
newTag = new ClassTag();
newTag.tag = "DIR";
newTag.request = 0;
newTag.date = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second);
newTag.extencion = "";
NewNode.Tag = newTag;
node.Nodes.Add(NewNode);
saveTreeStructure();
}
else
MessageBox.Show("Ошибка!\n Каталог не может быть создан");