Разработка программного обеспечения для быстрого поиска принтеров на территории колледжа

Изучение возможностей среды программирования delphi при разработке приложения с визуальным интерфейсом. Отладка программных модулей с использованием специализированных средств. Способы работы с динамическими массивами. Оптимизация программного кода.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 23.12.2016
Размер файла 1,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

ДЕПАРТАМЕНТ ОБРАЗОВАНИЯ, НАУКИ И МОЛОДЕЖНОЙ ПОЛИТИКИ ВОРОНЕЖСКОЙ ОБЛАСТИ

ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ПРОФЕССИОНАЛЬНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВОРОНЕЖСКОЙ ОБЛАСТИ «СЕМИЛУКСКИЙ ПОЛИТЕХНИЧЕСКИЙ КОЛЛЕДЖ»

КУРСОВОЙ ПРОЕКТ

Специальность 09.02.03 Программирование в компьютерных системах

Серебрякова Л.В.

Семилуки 2016

РЕФЕРАТ

Курсовой проект

Ключевые слова: ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ, СПЕЦИФИКАЦИЯ, ОТЛАДКА, ТЕСТИРОВАНИЕ, ДОКУМЕНТАЦИЯ, ИНТЕРФЕЙС, РЕКИ РОССИИ.

Объектом исследования являются сведения о реках России.

Предмет исследования - исследование возможностей интегрированной среды разработки Delphi для структурирования сведений о реках РФ.

Цель проекта - составление программного обеспечения для структурирования сведений о реках России, а также документации для него.

В процессе работы исследованы теоретические сведения о реках РФ, изучены способы работы с динамическими массивами с использованием компонента StringGrid, способы работы с файлами, … в среде Delphi. На основе этого было создано приложение, которое позволяет …

Все неоговоренные в курсовом проекте рисунки и таблицы составлены автором по материалам практики и учебной литературы.

СОДЕРЖАНИЕ

  • Введение
  • Раздел 1. Возможности среды программирования delphi при разработке приложения с визуальным интерфейсом
  • Раздел 2. Разработка программного обеспечения
  • 2.1 Разработка спецификации программного обеспечения
  • 2.2 Разработка кода программного продукта на основе готовой спецификации
  • 2.3 Отладка программных модулей с использованием специализированных программных средств
  • 2.4 Тестирование программного обеспечения
  • 2.5 Оптимизация программного кода
  • 2.6 Разработка компонентов проектной и технической документации с использованием графических языков спецификаций
  • Заключение
  • Список использованных источников
  • Приложение

ВВЕДЕНИЕ

Цель курсового проекта: разработка программного обеспечения.

Задачи : Разработка программы на языке Delphi

Создание удобного интерфейса

Углубление знаний о языке программирования Delphi.

Данное программное обеспечение было решено разработать для быстрого и удобного нахождения принтерах, находящихся в колледже, а также сведений о них. Программа предназначена для администрации, преподавателей и техника-программиста колледжа. В случае, если нужно устранить поломку в принтере, поменять картридж, программа должна позволить быстро найти данные о нужном принтере в кабинетах. Это позволит не тратить время на поиск моделей по колледжу для замены картриджей.

Для разработки программного обеспечения было решено указывать сведения о принтере:

1. Название модели.

2. Инвентарный номер.

3. Скорость печати.

4. Кабинет расположения принтера.

5. Преподаватель.

Предусматривается разработать данную программу на языке программирования Delphi. Для удобства просмотра данных, они выводятся в виде таблицы.

РАЗДЕЛ 1. ВОЗМОЖНОСТИ СРЕДЫ ПРОГРАММИРОВАНИЯ DELPHI ПРИ РАЗРАБОТКЕ ПРИЛОЖЕНИЯ С ВИЗУАЛЬНЫМ ИНТЕРФЕЙСОМ

Delphi представляет собой средство разработки приложений для Microsoft Windows. Delphi является мощным и простым в использовании инструментом для создания автономных программ, обладающих графическим интерфейсом (GUI), или 32-битных консольных приложений (программ, которые не имеют графического интерфейса).

В сочетании с Borland Kylix, программисты Delphi могут создавать из одного исходного текста приложения и для Windows и для Linux, и это открывает новые возможности и увеличивает потенциальную отдачу от усилий, вложенных в изучение Delphi.

В Delphi используется кросс-платформенная библиотека компонентов CLX и визуальные дизайнеры для создания высокопроизводительных приложений для Windows, которые повторной компиляцией можно легко превратить в приложения для Linux.

Delphi является первым языком программирования, обладающим простой в использовании средой для быстрой разработки приложений, разрушающей барьеры между языками высокого уровня, и языками, на низком уровне разговаривающими с системой на языке битов и байтов.

При создании графического интерфейса приложений Delphi, у вас все возможности языка программирования Object Pascal, "завернутого" в среду RAD.

Такие компоненты окна графического пользовательского интерфейса, как формы, кнопки и списки объектов, включены в состав Delphi. Это означает, что вам не нужно писать никакого кода при добавлении их в ваше приложение. Вы просто "кладёте" их на вашу Форму, как в графическом редакторе. Вы можете также добавить на Форму элементы управления ActiveX, для создания в считанные минуты специализированных программ таких, например, как веб-браузеры. Delphi позволяет разработчикам дизайна внедрять в интерфейс новые элементы и кодировать их события одним щелчком мыши.

Delphi поставляется в различных конфигурациях, настроенных на потребности различных предприятий. В Delphi вы можете писать программы для Windows быстрее и легче, чем это было возможно раньше.

В рамках выполнения курсового проекта для разработки программного обеспечения используется компонент StringGrid, потому что он имеет много возможностей.

За внешний вид компонента Delphi StringGrid отвечают такие основные свойства таблицы как наличие внешних границ таблицы, наличие и толщина линий, разделяющих ячейки, количество строк и столбцов "фиксированной" зоны и их цвет, размеры и цвет "обычных" ячеек, возможность пользователю менять размеры ячеек мышкой, наличие полос прокрутки.

Что касается информационных свойств таблицы Delphi StringGrid, то они касаются доступа к содержимому ячеек по индексу (номеру) столбца и строки, возможности редактирования содержимого ячеек и того, как именно это будет происходить, перемещения строк и столбцов вместе с их содержимым на новые места, выделения области ячеек с данными - как отдельных строк, так и региона ячеек, очистка строк и столбцов от содержимого.

Таблица Delphi StringGrid также обладает очень важным и полезным свойством, характерным для компонентов с графическими возможностями - Canvas(канва).

Это свойство позволяет как произвольно рисовать в пределах таблицы, так и размещать в ячейках рисунки и другие графические данные. А также именно это свойство позволяет управлять расположением строк в ячейках. Дело в том, что сама таблица Delphi StringGrid размещает содержимое своих ячеек у их левого края. Программист, работая с канвой таблицы, может разместить данные как по центру, так и у правого края ячеек, в зависимости от потребностей. Тем самым, таблица Delphi StringGrid обладает широким спектром свойств, помогающим программисту придать нужный стиль, соответствующий дизайн и информационную наполненность приложениям, использующим табличное представление и обработку рабочих данных.

РАЗДЕЛ 2. РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

2.1 Разработка спецификации программного обеспечения

Спецификация это законченное поведение программы и требования к ней, которую требуется разработать.

Программный продукт должен иметь главную форму с находящейся на ней таблицы для вывода данных. В программе должны иметься кнопки управления самой программой, которые позволяют добавлять информацию в таблицу, удалять информацию из таблицы, сохранять содержимое таблицы. Размещено на http://www.allbest.ru/

Программа должна иметь информацию о самой программе, открытие происходит с помощью специальной кнопки, и информацию об авторе программы, которая открывается после нажатия специальной кРазмещено на http://www.allbest.ru/

нопки.

Для безопасной и правильной работы программы рекомендуется иметь Источник бесперебойного питания.

Размещено на http://www.allbest.ru/

Температура компьютера не должна выходить за рамки значения температуры -20 + 35 градусов по цельсию;Размещено на http://www.allbest.ru/

Для исключения возможности потери информации программа должна иметь возможность быстро сохранять эту информацию. Специальной защиты данных для пользователя не предусматривается в программе. Размещено на http://www.allbest.ru/

Программа должна иметь удобный и понятный интерфейс для работы с самой программой. Размещено на http://www.allbest.ru/

Все функции и кнопки должны располагаться рядом друг с другом. У интерфейса должен быть приятный внешний вид.Размещено на http://www.allbest.ru/

2.2 Разработка кода программного продукта на основе готовой спецификации

Было разработано главное окно программы, Данные представлены в виде таблицы, поэтому основная часть формы занимает таблица StrinGrid. На форме были расположены кнопки, они отображены на (Рисунок 1).

Рисунок 1 - Главная форма программы

программный код визуальный интерфейс

Кнопка «Открыть» позволяет открыть диалоговое окно с информацией о принтерах колледжа. Причем в заголовке отображено назначение диалогового окна. Оно отображено на рисунке 2. Для этого окна были установлены фильтры для открытия различных типов документов: текстовые файлы, все файлы (рисунок 3). Для реализации этой кнопки используется код:

procedure TForm2.Button1Click(Sender: TObject); //Кнопка Открыть

begin

if OpenDialog1.Execute then begin

s:=OpenDialog1.FileName ;

assignfile(f,s);

reset (f);

k:=0;

while not eof(f) do

begin

readln (f);

readln (f);

readln (f);

readln (f);

readln (f);

inc(k);

readln (f);

end;

closefile(f);

assignfile(f,s);

reset(f);

SG1.ColCount:=5;

SG1.rowCount:=k;

SG1.cells[0,0]:='Заголовок 1 столбца';

SG1.cells[0,1]:='Заголовок 1 столбца';

for i:= 1 to SG1.RowCount-1 do

begin

for j:= 0 to SG1.ColCount-1 do begin

readln(f,x);

SG1.Cells[j,i]:=x;

end;

readln(f,x);

end;

closefile(f);

end

else

showmessage ('Вы не выбрали файл');

end;

Рисунок 2 - Открытие данных о принтерах

Рисунок 3 - Установленные фильтры

Кнопка «Добавить» позволяет открыть другую форму «Добавление» (Рисунок 4), которое содержит текстовые поля и 2 кнопки: «Добавить» - добавляет на форму строку с данными указанными в тестовых полях и «Вернуться» - возвращается на главную форму. Для реализации этой кнопки используется код:

procedure TForm2.Button6Click(Sender: TObject);

begin

Form4.show;

end;

procedure TForm2.Button7Click(Sender: TObject);

var n: integer;

a: string;

begin

a:=inputbox ('Поиск','Введите инвентарный номер, которых хотите удалить','1');

n:=0 ;

with SG1 do begin

for i:=1 to RowCount - 1 do

if (cells [1,i]=a) then n:=i;

if n <> 0 then begin

for i := n to RowCount-1 do

for j := 0 to ColCount - 1 do

cells [j,i]:=cells [j,i+1];

RowCount:=RowCount - 1;

end

else showmessage ('Нет такого инвентарного номера');

end;

end;

Рисунок 4 - форма «Добавления»

Кнопка «Удалить» просит пользователя указать инвентарный номер и по этому номеру удаляет строку из таблицы. Для реализации этой кнопки используется код:

procedure TForm2.Button7Click(Sender: TObject);

var n: integer;

a: string;

begin

a:=inputbox ('Поиск','Введите инвентарный номер, которых хотите удалить','1');

n:=0 ;

with SG1 do begin

for i:=1 to RowCount - 1 do

if (cells [1,i]=a) then n:=i;

if n <> 0 then begin

for i := n to RowCount-1 do

for j := 0 to ColCount - 1 do

cells [j,i]:=cells [j,i+1];

RowCount:=RowCount - 1;

end

else showmessage ('Нет такого инвентарного номера');

end;

end;

Кнопка «Сохранить» сохраняет данные в открытом ранее пользователем файле. Для этого была описана глобальная переменная s в которой сохраняется путь к файлу при работе. Для реализации этой кнопки используется код:

procedure TForm2.Button2Click(Sender: TObject); //сохранить

begin

if s <> '' then begin

assignfile(f,s);

rewrite(f);

for i:=1 to SG1.RowCount-1 do

begin

for j:=0 to SG1.ColCount-1 do

writeln(f,SG1.cells[j,i]);

writeln(f,'');

end;

closefile(f)

end

else

showmessage ('Вы не выбрали файл.'+#10#13+'Нужно открыть файл или создать новый и нажать кнопку "Сохранить как"');

end;

Кнопка «Сохранить как» сохраняет данные введенные в таблице как отдельный новый файл (Рисунок 5). Для реализации этой кнопки используется код:

procedure TForm2.Button3Click(Sender: TObject); //сохранить как

begin

if SaveDialog1.Execute then begin

S:=SaveDialog1.FileName+'.txt';

assignfile(f,s);

rewrite(f);

for i:=1 to SG1.RowCount-1 do

begin

for j:=0 to SG1.ColCount-1 do

writeln(f,SG1.cells[j,i]);

writeln(f,'');

end;

closefile(f)

end

else

showMessage('Вы не выбрли файл');

end;

Рисунок 5 - сохранение файла.

Кнопка «О программе» открывает информацию о самой созданной программе (Рисунок 6). ). Для реализации этой кнопки используется код:

procedure TForm2.Button4Click(Sender: TObject);

begin

Form1.show;

end;

Рисунок 6 - О программе

Кнопка «Об авторе» открывает информацию об авторе созданной программы (Рисунок 7). Для реализации этой кнопки используется код:

procedure TForm2.Button5Click(Sender: TObject);

begin

Form3.show;

end;

Рисунок 7 - Об авторе программы

Кнопка «Выход» закрывает программу. Для реализации этой кнопки используется код:

procedure TForm2.BitBtn1Click(Sender: TObject);

begin

Form2.close;

end;

2.3 Отладка программных модулей с использованием специализированных программных средств

Отладка ПС - это деятельность, направленная на обнаружение и исправление ошибок в ПС с использованием процессов выполнения его программ. В программе был использован способ «Трассировка». Это процесс выполнения программы по шагам (step-by-step), инструкция за инструкцией. Во время трассировки программист дает команду: выполнить очередную инструкцию программы. Ниже приведены фрагменты из кода программы позволяющие избежать ошибок.

Для кнопки «Открыть» :

If … //Условия для открытия файла

else

showmessage ('Вы не выбрали файл');

Для кнопки «Удалить»:

If…///Удаление строки

else

showmessage ('Нет такого инвентарного номера');

Для кнопки «Сохранить как»:

If…//Сохранение файла

else

showMessage('Вы не выбрали файл');

2.4 Тестирование программного обеспечения

Тестирование - это любая деятельность, направленная на обнаружение ошибок в программном продукте. Тестирование проводится для того, чтобы найти ошибки в программе и тем самым повысить ее надежность.

Тестирование программы приведено ниже:

При запуске программы открывается главная форма программы (Рисунок 8).

Рисунок 8 - Главная форма

При нажатии на кнопку «Открыть» открывается окно (Рисунок 9) и заполняется таблица выбранными данными (Рисунок 10).

Рисунок 9 - Работа кнопки «Открыть»

Рисунок 10 - Заполнение таблицы

Если файл не был выбран появляется окно (Рисунок 11).:

Рисунок 11 - Сообщение об ошибке

При нажатии на кнопку добавить открывается следующая форма (Рисунок 11).:

Рисунок 12 - Форма «Добавление»

В эти строки можно ввести данные и они добавятся в таблицу.

При нажатии на кнопку «Удалить» пользователю предлагается ввести Инвентарный номер, по которому удалится выделенная строка, если номер выбран не правильно, выводится сообщение об ошибке (Рисунок 13).

Рисунок 13 - Работа кнопки «Удалить»

Кнопки «Сохранить» сохраняет данные в документе. Кнопка «Сохранить как» сохраняет документ в выбранном пользователем документе (Рисунок 14).

Рисунок 14 - Сохранение документа

Кнопки «Об программе» и «Об авторе» открывают информацию об программе и ее разработчике. (Рисунок 15-16).

Рисунок 15 - О программе

Рисунок 16 - Об авторе

На формах (Рисунок 12, 15, 16) расположенная кнопка «Вернуться» возвращает пользователя на главную форму. Расположенная на главной форме кнопка «Выход» закрывает программу.

2.5 Оптимизация программного кода

Оптимизация программы - улучшение программы, поиск лучших вариантов для более быстрой и стабильной работы программы. Для оптимизации программы следует убирать «мертвые коды», которые не используются при работе программы. Устранять мелкие небрежности кода программы и т.п.

procedure TForm2.Button3Click(Sender: TObject); //позволяет сохранить файл с новым именем

begin

if SaveDialog1.Execute then begin

S:=SaveDialog1.FileName+'.txt';

assignfile(f,s);

rewrite(f);

for i:=1 to SG1.RowCount-1 do

begin

for j:=0 to SG1.ColCount-1 do

writeln(f,SG1.cells[j,i]);

writeln(f,'');

end;

closefile(f)

end

else

showMessage('Вы не выбрали файл');//Сообщение выводимое на экран в случае не выбранного файла для сохранения

end;

2.6 Разработка компонентов проектной и технической документации с использованием графических языков спецификаций

Блок-схема детализируемой программы (в соответствии с ГОСТ 19.701-90).

Рисунок 17 - блок схема программы

ЗАКЛЮЧЕНИЕ

Разработанное программное обеспечение предназначено для быстрого и удобного поиска принтеров на территории колледжа и сведений о данном оборудовании. Это может позволить быстро устранить поломку в принтере, поменять картридж и совершить другие действия по их обслуживанию, не приходя в аудиторию для ознакомления с моделью принтера. Программа предназначена для администрации, преподавателям и программистам колледжа, она позволила легче получить информацию о местонахождении и функции принтерах в колледже. Это позволило потратить меньше времени на поиск моделей для исправления их поломок.

В созданной программе были указаны сведения о принтере:

1. Название модели.

2. Инвентарный номер.

3. Скорость печати.

4. Кабинет расположения принтера.

5. Преподаватель.

Были углублены знания о возможностях Delphi, работы с таблицами StringGrid и другими возможностями данной программы.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Культин Н.Б. Embarcadero Delphi.

2. Дмитрий Осипов Базы данных и Delphi. Теория и практика.

3. Рубанцев Валерий. Описание книги Delphi в примерах, играх и программах.

4. Сергей Бобровский. Технологии Delphi 2006. Новые возможности.

5. Михаил Голованов, Евгений Веселов. Создание компонентов в среде Delphi. Руководство разработчика.

6. Иван Хладни. Внутренний мир Borland Delphi.

7. А. Я. Архангельский. Программирование в Delphi для Windows.

8. А. Чиртик, В. Борисок, Ю. Корвель. Трюки и эффекты.

9. М. Е. Фленов. Delphi глазами хакера.

10. Д. Тейлор, Дж. Мишель, Дж. Пенман. Delphi, библиотека программиста.

ПРИЛОЖЕНИЕ

Листинг программы

Form 2

procedure TForm2.BitBtn1Click(Sender: TObject);

begin

Form2.close;

end;

procedure TForm2.Button1Click(Sender: TObject); //Кнопка Открыть

begin

if OpenDialog1.Execute then begin

s:=OpenDialog1.FileName ;

assignfile(f,s);

reset (f);

k:=0;

while not eof(f) do

begin

readln (f);

readln (f);

readln (f);

readln (f);

readln (f);

inc(k);

readln (f);

end;

closefile(f);

assignfile(f,s);

reset(f);

SG1.ColCount:=5;

SG1.rowCount:=k;

SG1.cells[0,0]:='Заголовок 1 столбца';

SG1.cells[0,1]:='Заголовок 1 столбца';

for i:= 1 to SG1.RowCount-1 do

begin

for j:= 0 to SG1.ColCount-1 do begin

readln(f,x);

SG1.Cells[j,i]:=x;

end;

readln(f,x);

end;

closefile(f);

end

else

showmessage ('Вы не выбрали файл');

end;

procedure TForm2.Button2Click(Sender: TObject); //сохранить

begin

if s <> '' then begin

assignfile(f,s);

rewrite(f);

for i:=1 to SG1.RowCount-1 do

begin

for j:=0 to SG1.ColCount-1 do

writeln(f,SG1.cells[j,i]);

writeln(f,'');

closefile(f)

end

else

showmessage ('Вы не выбрали файл.'+#10#13+'Нужно открыть файл или создать новый и нажать кнопку "Сохранить как"');

end;

procedure TForm2.Button3Click(Sender: TObject); //сохранить как

begin

if SaveDialog1.Execute then begin

S:=SaveDialog1.FileName+'.txt';

assignfile(f,s);

rewrite(f);

for i:=1 to SG1.RowCount-1 do

begin

for j:=0 to SG1.ColCount-1 do

writeln(f,SG1.cells[j,i]);

writeln(f,'');

end;

closefile(f)

end

else

showMessage('Вы не выбрали файл');

end;

procedure TForm2.Button4Click(Sender: TObject);

begin

Form1.show;

end;

procedure TForm2.Button5Click(Sender: TObject);

begin

Form3.show;

end;

procedure TForm2.Button6Click(Sender: TObject);

begin

Form4.show;

end;

procedure TForm2.Button7Click(Sender: TObject);

var n: integer;

a: string;

begin

a:=inputbox ('Поиск','Введите инвентарный номер, которых хотите удалить','1');

n:=0 ;

with SG1 do begin

for i:=1 to RowCount - 1 do

if (cells [1,i]=a) then n:=i;

if n <> 0 then begin

for i := n to RowCount-1 do

for j := 0 to ColCount - 1 do

cells [j,i]:=cells [j,i+1];

RowCount:=RowCount - 1;

end

else showmessage ('Нет такого инвентарного номера');

end;

end;

procedure TForm2.FormCreate(Sender: TObject);

begin

Form2.Color:=rgb(255, 214, 155);

end;

procedure TForm2.SG1Click(Sender: TObject);

begin

end;

procedure TForm2.SG1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect;

State: TGridDrawState);

var

s:string;

h: integer;

begin

with Sender as TStringGrid do

begin

Canvas.FillRect(Rect);

DrawText (Canvas.Handle,

PChar(Cells[ACol, ARow]),

Length(Cells[ACol, ARow]),

Rect, DT_WORDBREAK or

DT_EXPANDTABS);

end;

end;

Form3

procedure TForm3.Button1Click(Sender: TObject);

begin

Form3.Hide;

end;

procedure TForm3.FormCreate(Sender: TObject);

begin

Form3.Color:=rgb(255, 214, 155);

end;

Form4

procedure TForm4.Button1Click(Sender: TObject);

begin

With Form2 do begin

SG1.rowcount:=SG1.RowCount+1;

SG1.Cells [0, SG1.rowcount-1]:= Form4.edit1.Text;

SG1.Cells [1, SG1.rowcount-1]:= Form4.edit2.Text;

SG1.Cells [2, SG1.rowcount-1]:= Form4.edit3.Text;

SG1.Cells [3, SG1.rowcount-1]:= Form4.edit4.Text;

SG1.Cells [4, SG1.rowcount-1]:= Form4.edit5.Text;

ShowMessage ('Строка была добавлена в таблицу');

end;

end;

procedure TForm4.Button2Click(Sender: TObject);

begin

Form4.Hide;

end;

procedure TForm4.FormCreate(Sender: TObject);

begin

Form4.Color:=rgb(255, 214, 155);

end;

O_programme

procedure TForm1.Button1Click(Sender: TObject);

begin

Form1.Hide;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

Form1.Color:=rgb(255, 214, 155);

end;

end.

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.