Система для обеспечения работы книгохранилища библиотеки

Проектирование программы, которая ведет учет книг в книгохранилище библиотеки. Выбор языка программирования. Разработка и элементы тестового приложения, его структура. Заполнение основных полей для добавления книги. Тестирование программы, ее алгоритм.

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

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

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

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

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Владимирский государственный университет

имени Александра Григорьевича и Николая Григорьевича Столетовых»

(ВлГУ)

Кафедра «Физика и прикладная математика»

Пояснительная записка к курсовой работе по дисциплине «Объектно-ориентированное программирование»

«Система для обеспечения работы книгохранилища библиотеки»

Выполнил:

ст. гр. ИТс-113

Кузин Ю.С.

Принял:

доцент каф. ФиПМ

Лексин А.Ю.

Владимир 2014

Анализ задания

Написать программу, которая ведет учет книг в книгохранилище библиотеки. Программа должна обеспечивать ввод данных, касательной каждой книги, поступающей в библиотеку (название книги, автор, количество станиц в книге, год издания, ISBN, издательство). Информация о книге должна заноситься максимально подробная. Каждой книге должен присваивается свой идентификационный номер

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

Разработка библиотеки классов

Диаграмма классов

Рисунок 2.1 показывает классы, их атрибуты и операторы, а также взаимосвязи этих классов.

Рисунок 2.1 - Схема классов программы

Структура программы состоит из основного класса Book и двух дополнительных Autor и Publisher. В данном классе имеются шесть полей, которые доступны только внутри класса, при этом значения полей id_publisher и id_autor передаются непосредственно из классов Autor и Publisher по идентификатору. В данном классе содержится конструктор, который инициализирует эти шесть полей. Класс содержит метод ToString для вывода информацию о книге.

Класс Autor cодержит в себе конструктор, который инициализирует поля firstname, lastname и middlename. Класс так же содержит метод ToString для вывода информацию об авторе.

Класс Publisher cодержит в себе конструктор который инициализирует поля address, nazvanie и sity. Класс так же содержит метод ToString для вывода информацию об издательстве.

Класс Form создает формы ввода параметром для книги, автора и издательства.

Выбор языка программирования

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

В C# реализовано многое количество вещей, которые либо отсутствуют в C++, либо имитируются специальным образом. Например, в C# выделено понятие интерфейса и абстрактного класса в явную выделено понятие свойств, запрещено множественное наследование от классов (зато можно наследоваться от интерфейсов), деструктор играет незначительную роль.

Аппарат ООП C# более продуманный, нежели в C++. Основное преимущество C# - ускоренная разработка, значительно более простая отладка (в частности, потому что там нет указателей), больше возможностей для автоматизированных средств тестирования из-за более жестких ограничений. Написание Windows - приложений с использованием Windows - Forms проще, чем на MFC или тем более Win32API (имеется в виду интерфейсная часть), при этом нужно признать для доступа ко многим возможностям необходимо импортировать WIN32API.

Реализация классов

Система классов реализована на языке C#.

Class Program запрашивает ввод данных из классов.

1) Класс Book :

а) id_autor - переменная содержит имя, фамилию и отчество автора с номером id в списке авторов.

б) id_publisher - переменная содержит город, название и адрес издательства с номером id в списке издательств.

в) pager - количество станиц в книге.

г) title - название книги.

д) year - год издания книги.

е) ISBN - Международный Стандартный Номер Книги.

2) Класс Autor:

а) firstname - имя автор.

б) lastname - фамилия автора.

в) middlename - отчество автора.

3) Класс Publisher:

а) nazvanie - название издательства.

б) sity - город издательства.

в) address - адрес издательства.

Класс Form содержит конструктор выделение памяти для сохранения данных, методы добавления данных о книга, авторах, издательствах и вывода их на экран.

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

Методика тестирования

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

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

Тестовое приложение разработано на языке C#.

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

Структура тестового приложения

Программа выглядит следующим образом:

Рисунок 3.1 - меню программы

На рисунке видно, что меню программы состоит из четырех основных разделов. Для начала работы в программе пользователю необходимо добавить автора и издательство в список. Затем заполнить поля в разделе "Добавление книги в список" и нажать кнопку "Добавить в список". Для того, чтобы показать весть список введенных книг необходимо нажать кнопку "Вывести список". Список будет отображен в поле справа.

Результаты тестирования

Рисунок 4.1 - Тестирование программы

На рисунке 4.1 показано, что пользователю необходимо ввести данные об авторе: Фамилию, Имя, Отчество и нажать клавишу добавить. Результат сохраняется. Так необходимо заполнить данные и об издательстве.

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

Затем, как показано на рисунке 4.2 необходимо заполнить основные поля для добавления книги, введя название, год издания, ISBN, количество станиц и выбрать из списка авторов и издательств, добавленных ранее, нужную строку и нажать кнопку "Добавить с список".

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

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

На рисунке 4.3 показаны все данные о книгах.

Список использованных источников

1. Герберт Шилдт - C#. Учебный курс.

2. А. В. Фролов, Г. В. Фролов- Язык C#. Самоучитель.

3. ru.wikipedia.org/wiki/C_Sharp- пояснение о языке C#.

Приложение А. Система классов

Класс Autor

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Linq;

using System.Text;

namespace с_формами

{

class Autor

{

public string lastname;

public string firstname;

public string middlename;

public Autor(string lastname, string firstname, string middlename)

{

this.lastname=lastname;

this.firstname = firstname;

this.middlename = middlename;

}

public override string ToString()

{ программа учет книга

return string.Format(this.lastname + " " + this.firstname + " " + this.middlename);

}

}

}

Класс Publisher

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Linq;

using System.Text;

namespace с_формами

{

class Publisher

{

public string nazvanie;

public string sity;

public string address;

public Publisher(string nazvanie, string sity, string address)

{

this.nazvanie=nazvanie;

this.sity = sity ;

this.address =address ;

}

public override string ToString()

{

return string.Format(this.nazvanie + "; Город: " + this.sity + "; Адрес: " + this.address);

}

}

}

Класс Book

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Linq;

using System.Text;

namespace с_формами

{

//static class Program1

class Book

{

public string id_autor;

public string title;

public string year;

public string ISBN;

public string pages;

public string id_publicher;

public Book(string id_autor, string title, string year, string ISBN, string pages, string id_publicher)

{

this.id_autor = id_autor;

this.title = title;

this.year = year;

this.ISBN = ISBN;

this.pages = pages;

this.id_publicher = id_publicher;

}

public override string ToString()

{

return string.Format("Автор: " + this.id_autor + Environment.NewLine + "Название книги: " + this.title + "; Год издания: " + this.year + "; ИСБН:" + this.ISBN + "; Количество станиц: " + this.pages + Environment.NewLine + "Издательство: " + this.id_publicher + Environment.NewLine);

}

}

}

Приложение Б. Программный код тестового приложения

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace с_формами

{

public partial class Книгохранилище : Form

{

public Книгохранилище()

{

InitializeComponent();

//---------------------------------------------------------------

autors.Add(new Autor("Никитин", "Аркадий", "Андреевич"));

autors.Add(new Autor("Сергеев", "Иван", "Викторович"));

autors.Add(new Autor("Борисов", "Николай", "Иванович"));

foreach (object i in autors)

{

comboBox1.Items.Add(i.ToString());

}

//---------------------------------------------------------------

publishers.Add(new Publisher("АБВ", "Москва", "ул.Ленина 24"));

publishers.Add(new Publisher("Дрофа", "Воронеж", "ул.Мечникова 45"));

publishers.Add(new Publisher("РосПечать", "Нижний Новгород", "ул.Строителей 156"));

foreach (object i in publishers)

{

comboBox2.Items.Add(i.ToString());

}

//---------------------------------------------------------------

}

List<object> books = new List<object>();

List<object> autors = new List<object>();

List<object> publishers = new List<object>();

private void textBox1_TextChanged(object sender, EventArgs e)

{

}

// кнопка добавления книги в список

private void button1_Click_1(object sender, EventArgs e)

{

books.Add(new Book(comboBox1.Text,textBox5.Text, textBox6.Text, textBox7.Text,textBox8.Text, comboBox2.Text));

}

// кнопка вывода списка книг

private void button2_Click_1(object sender, EventArgs e)

{

int id = 0;

textBox1.Clear();

foreach (object n in books)

{

textBox1.AppendText(id+") "+n.ToString() + Environment.NewLine);

id++;

}

}

// кнопка добавления автора в список

private void button4_Click(object sender, EventArgs e)

{

autors.Add(new Autor (textBox3.Text, textBox2.Text,textBox4.Text ));

comboBox1.Items.Clear();

foreach (object i in autors)

{

comboBox1.Items.Add(i.ToString());

}

}

// кнопка добавления издательства в список

private void button5_Click(object sender, EventArgs e)

{

publishers.Add(new Publisher(textBox9.Text, textBox10.Text, textBox11.Text));

comboBox2.Items.Clear();

foreach (object i in publishers)

{

comboBox2.Items.Add(i.ToString());

}

}

// кнопка удаления книги из списка

private void button6_Click(object sender, EventArgs e)

{

books.RemoveAt(Convert.ToInt32(textBox12.Text));

int id = 0;

textBox1.Clear();

foreach (object n in books)

{

textBox1.AppendText(id + ") " + n.ToString() + Environment.NewLine);

id++;

}

}

}

}

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


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

  • Разработка программы для рисования различных правильных многоугольников с помощью объектно-ориентированного языка программирования. Использование для разработки среды C++ Builder 6 и библиотеки VCL. Разработка интерфейса приложения и алгоритма его работы.

    курсовая работа [616,4 K], добавлен 18.10.2010

  • Технико-математическое описание задачи. Требования к программе учета книг и читателей библиотеки. Описание языка программирования. Алгоритмы обработки информации. Текст программы. Инструкция на выполнение: вызов и загрузка, входные и выходные данные.

    дипломная работа [1,2 M], добавлен 29.06.2012

  • Проектирование базы данных для библиотеки и разработка программы для её удобного использования. Пример работы приложения на примере поиска статей по заданным условиям, а также основных операций с данными – добавления в базу, редактирования и удаления.

    курсовая работа [2,5 M], добавлен 23.02.2014

  • Разработка программы, моделирующей работу библиотеки. Функция поиска по базе книг и граждан, записанных в библиотеку. Поиск книги. Добавление или удаление абонента. Текст программы на С#. Просмотр списка должников. Запись книги на абонента в программе.

    курсовая работа [426,9 K], добавлен 20.02.2014

  • Алгоритм работы программы. Анализ предметной области. Структура таблиц БД "Библиотека". Инфологическое и даталогическое проектирование. Запросы для поиска и извлечения только требуемых данных. Формы для просмотра, добавления, изменения данных в таблицах.

    курсовая работа [5,1 M], добавлен 14.06.2014

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

    отчет по практике [700,5 K], добавлен 24.11.2014

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

    курсовая работа [506,5 K], добавлен 21.02.2011

  • Порядок составления программы, тестирующей знания пользователя по разделу физики "Электрическое поле", написанной на языке Visual C++ с использование библиотеки MFC. Листинг программы и ее практическое значение, принципы работы, структура и элементы.

    курсовая работа [172,5 K], добавлен 22.06.2011

  • Структура математической модели линейной задачи, алгоритм симплекс-метода. Разработка программы: выбор языка программирования, входные и выходные данные, пользовательский интерфейс. Описание программы по листингу, тестирование, инструкция по применению.

    курсовая работа [1,2 M], добавлен 31.05.2013

  • Исследование основных отличий ассоциативных массивов от массивов скаляров. Разработка библиотеки классов. Выбор языка программирования. Сравнение языка C++ с Delphi, Java и JavaScript. Изучение методики тестирования и структуры тестового приложения.

    практическая работа [390,2 K], добавлен 06.01.2013

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