Система для обеспечения работы книгохранилища библиотеки
Проектирование программы, которая ведет учет книг в книгохранилище библиотеки. Выбор языка программирования. Разработка и элементы тестового приложения, его структура. Заполнение основных полей для добавления книги. Тестирование программы, ее алгоритм.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 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