Реферат: Автостоянки
Язык программирования служит двум связанным между собой целям: он дает программисту аппарат для задания действий, которые должны быть выполнены, и формирует концепции, которыми пользуется программист, размышляя о том, что делать. Первой цели идеально отвечает язык, который настолько "близок к машине", что всеми основными машинными аспектами можно легко и просто оперировать достаточно очевидным для программиста образом. С таким умыслом первоначально задумывался C. Второй цели идеально отвечает язык, который настолько "близок к решаемой задаче", чтобы концепции ее решения можно было выражать прямо и коротко. С таким умыслом предварительно задумывались средства, добавленные к C для создания C++.
Связь между языком, на котором мы думаем/программируем, и задачами и решениями, которые мы можем представлять в своем воображении, очень близка. По этой причине ограничивать свойства языка только целями исключения ошибок программиста в лучшем случае опасно. Как и в случае с естественными языками, есть огромная польза быть по крайней мере двуязычным. Язык предоставляет программисту набор концептуальных инструментов; если они не отвечают задаче, то их просто игнорируют. Например, серьезные ограничения концепции указателя заставляют программиста применять вектора и целую арифметику, чтобы реализовать структуры, указатели и т.п. Хорошее проектирование и отсутствие ошибок не может гарантироваться чисто за счет языковых средств.
Cистема типов должна быть особенно полезна в нетривиальных задачах. Действительно, концепция классов в C++ показала себя мощным концептуальным средством.
Постановка задачи
Написать информационную систему по учёту автомобилей. Организовать автостоянки по районам. Осуществлять поиск автомобилей на конкретной автостоянке и по всем автостоянкам по владельцу, по номеру автомобиля, по марке автомобиля.
Добавление, удаление автомобилей со стоянок.
Для реализации поставленной задачи используется система классов, организующая интерфейс работы с базой данных: добавления, удаления, изменения и получения записей, хранящихся в, базе данных.
3. Структура выходных и входных данных
Программа использует 4 файла для хранения информации о районах, стоянках, автомобилях и марках машин. Каждый из файлов имеет структуру, представленную ниже:
Смещение в файле | Описание |
0х00 | Индефикатор файла ( “AM” ) |
0х02 | Количество столбцов |
0х03 | Номер автоувеличивающегося столбца |
0х04 | Номер последнего автоувеличения |
0x06 | Описание полей базы (размер, название) |
Область с данными (информация о длине берётся из описания полей). |
Для хранения информации о марках машин используется файл models.bas. Структура файла представлена ниже:
id | model |
“id”- индефикатор марки машины
“model ”- название марки машины
Для хранения информации о районах используется файл districts.bas. Структура файла представлена ниже:
id | district |
“id”- индефикатор района
“district”- название района
Для хранения информации о стоянках используется файл stations.bas. Структура файла представлена ниже:
id | station | sid |
“id”- индефикатор стоянки
“station”- название стоянки
“sid”- индефикатор района, к которому принадлежит стоянка
. Для хранения информации о автомобилях используется файл cars.bas. Структура файла представлена ниже:
id | model | number | owner | cid | did |
“id”- индефикатор автомобиля
“ model ”- модель автомобиля
“ number ”- номер автомобиля
“ owner ”- имя владельца автомобиля
“ cid ”- индефикатор стоянки, в котором стоит автомобиль
“ did ”- индефикатор района, в котором стоит автомобиль
Диаграмма классов
5 Описание классов.
Далее приводится описание 4 основных классов проекта, предназначенных для работы с базой данных, остальные являются стандартными и предназначены для отображения информации.
5.1 CColumn
Класс предназначен для задания типов столбцов таблицы.
class CColum
--> ЧИТАТЬ ПОЛНОСТЬЮ <--