Разработка программных средств базы данных видеодисков - Программирование, компьютеры и кибернетика курсовая работа

Разработка программных средств базы данных видеодисков - Программирование, компьютеры и кибернетика курсовая работа




































Главная

Программирование, компьютеры и кибернетика
Разработка программных средств базы данных видеодисков

Модели баз данных. Локальная, файл-серверная, клиент-серверная и распределенная архитектуры. Технология BDE для доступа к данным. Драйверы баз данных. Создание таблицы, интерфейс программы, дерево объектов, инсталлятор. Системы визуальной разработки.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

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

Министерство Образования Российской Федерации
Рязанский Государственный Радиотехнический Университет
Дисциплина: «Инженерная и компьютерная графика»
«Разработка программных средств БД видеодисков»
2.3 Технология BDE для доступа к данным
База данных -- это совокупность записей различного типа, содержащая перекрестные ссылки.
Записи одного типа внутри базы данных хранятся в таблицах.
Файл -- это совокупность записей одного типа, в котором перекрестные ссылки отсутствуют.
Более того, в определении вообще нет упоминания о компьютерной архитектуре. Дело в том, что, хотя в большинстве случаев база данных действительно представляет собой один или (чаще) несколько файлов, физическая их организация существенно отличается от логической. Таблицы могут храниться как в отдельных файлах, так и все вместе. И наоборот, для хранения одной таблицы иногда используются несколько файлов. Для поддержки перекрестных ссылок и быстрого поиска обычно выделяются дополнительные специальные файлы.
В ряде случаев базы данных реализуются вообще без привлечения файловой системы. Это связано как с ее ограничениями (в ряде операционных систем размер файла не может превышать 2 Гбайта), так и с необходимостью обеспечить максимально быструю работу с жестким диском. Например, некоторые системы работают с носителями, подвергнутыми простейшему форматированию, несовместимому со стандартами DOS или Windows и предназначенному исключительно для упрощения процесса доступа к данным. Есть программы, обрабатывающие данные на специализированных дисковых носителях RAID и множестве других периферийных устройств, назначение которых только одно: повысить скорость доступа к большим объемам сведений.
Поэтому при работе с базами данных обычно применяются понятия более высокого логического уровня: запись и таблица, без углубления в подробности их физической структуры.
Таким образом, сама по себе база данных -- это только набор таблиц с перекрестными ссылками. Чтобы универсальным способом извлекать из нее группы записей, обрабатывать их, изменять и удалять, требуются специальные программы, которые называются системами управления базами данных или сокращенно СУБД.
Функциональные возможности разных СУБД лежи в весьма широком диапазоне. В некоторые комплексы встроены специализированные языки программирования и даже целые системы визуальной разработки, генераторы сложных отчетов, аналитические модули. Они способны поддерживать одновременную работу с данными десятков тысяч пользователей. Другие СУБД обладают только базовым набором возможностей (хранение данных в таблицах и выполнение запросов). При их использовании разработчикам приходится самостоятельно программировать работу по созданию отчетов, удобному просмотру и редактированию содержимого базы данных и так далее. В зависимости от предоставляемых ими средств СУБД обычно сильно различаются по цене.
Таблицы, в которых хранятся данные, состоят из наборов записей одинаковой структуры. Можно сказать, что таблица -- это двумерный массив, где строки образованы отдельными записями, а столбцы -- полями этой записи. Более точно таблица представляется как одномерный массив переменной длины из записей конкретной структуры (тип record Паскаля).
Модель базы данных, состоящей из подобных таблиц, называется реляционной. Практически все ведущие производители СУБД поддерживают именно эту модель баз данных, и в книге в дальнейшем будет рассказываться именно о ней. Реляционная модель хороша тем, что проста в работе и реализации и позволяет создавать быстро работающие системы.
Имеется еще несколько моделей баз данных. Некоторые из них значительно эффективнее реляционной, но не получили широкого распространения из-за сложности создания подходящих СУБД.
О В иерархической модели данные организованы в виде деревьев.
О В сетевой модели каждый узел (набор) базы данных взаимодействует с другими узлами посредством сложной системы связей.
О В последнее время признание завоевывает объектная модель данных, когда в базе хранятся не только данные, но и методы их обработки в виде программного кода. Это перспективное направление, пока также не получившее активного распространения из-за сложности создания и применения подобных СУБД.
Приложения, использующие базы данных, обычно принято относить к одной из программных архитектур, имеющих свои плюсы и минусы.
И программа, и база данных расположены на одном компьютере. В такой архитектуре работает большинство настольных приложений.
База данных расположена на мощном выделенном компьютере (сервере), а персональные компьютеры подключены к нему по локальной сети. На этих компьютерах установлены клиентские программы, обращающиеся к базе данных по сети. Преимущество такой архитектуры заключается в возможности одновременной работы нескольких пользователей с одной базой данных.
Недостаток такого подхода -- большие объемы информации, передаваемой по сети. Вся обработка выполняется на клиентских местах, где фактически формируется копия базы данных. Это приводит к ограничению максимально возможного числа пользователей и большим задержкам при работе с базой. Эти задержки вызываются тем, что на уровне конкретной таблицы одновременный доступ невозможен. Пока программа на одном из клиентских мест не закончит работу с таблицей (например, не выполнит модификацию записей), другие программы не могут обращаться к этой таблице. Это называется блокировкой на уровне таблицы и исключает возникновение путаницы в ее содержимом.
В такой архитектуре на сервере не только хранится база данных, но и работает программа СУБД, обрабатывающая запросы пользователей и возвращающая им наборы записей. При этом программы пользователей уже не работают напрямую с базой данных как набором физических файлов, а обращаются к СУБД, которая выполняет операции. Нагрузка с клиентских мест при этом снимается, так как большая часть работы происходит на сервере. СУБД автоматически следит за целостностью и сохранностью базы данных, а также контролирует доступ к информации с помощью службы паролей. Клиент-серверные СУБД допускают блокировку на уровне записи и даже отдельного поля. Это означает, что с таблицей одновременно может работать любое число пользователей, но доступ к функции изменения конкретной записи или одного из ее полей обеспечен только одному из них.
Основной недостаток этой архитектуры -- не очень высокая надежность. Если сервер выходит из строя, вся работа останавливается.
В сети работает несколько серверов, и таблицы баз данных распределены между ними для достижения повышенной эффективности. На каждом сервере функционирует своя копия СУБД. Кроме того, в подобной архитектуре обычно используются специальные программы, так называемые серверы приложений. Они позволяют оптимизировать обработку запросов большого числа пользователей и равномерно распределить нагрузку между компьютерами в сети. Если, помимо работы с данными, требуется выполнить интенсивные вычисления (например, анализ сложной информации), программы для выполнения этих задач (они обычно называются компонентами) могут автоматически запускаться на более мощных сетевых компьютерах. Это практически полностью снимает нагрузку с клиентских мест. Такая архитектура гакже называется компонентной.
Недостаток распределенной архитектуры заключается в довольно сложном и дорого
стоящем процессе ее создания и сопровождения (администрирования), а также в высоких требованиях к серверным компьютерам.
Доступ к базе данных и СУБД (расположенным на одном компьютере или в сети) осуществляется из браузера по стандартному протоколу. Это предъявляет минимальные требования к клиентскому оборудованию. Такие программы называют «тонкими клиентами», потому что они способны работать даже на ПК с процессором 80386.
Благородя стандартизации всех протоколов и интерфейсов взаимодействия в Интернете такие системы легко создавать и внедрять. Например, можно не организовывать локальную сеть, а обращаться к серверу через Интернет или использовать протоколы Интернета в локальной сети (в таком случае говорят о технологиях интранет). В этом случае не требуется разрабатывать специальные клиентские программы или придумывать собственные спецификации обмена данными между сервером и клиентскими местами. Достаточно использовать готовые браузеры и программные решения.
В данной книге рассматриваются способы создания программ для всех описанных архитектур.
2.3 Технология BDE для доступа к данным
При создании программ, работающих с базами данных, в системе Delphi традиционно используется механизм Borland Database Engine (BDE). В состав Delphi 7 входит версия BDE 5.2, которую, впрочем, можно бесплатно обновлять разными способами (например, обратившись к Web-узлу http://www.borland.com/).
Этот механизм реализован в виде набора библиотек, которые обеспечивают для программы, написанной на Паскале, простой и удобный доступ к базам данных независимо от их архитектуры. При использовании механизма BDE разработчик может не задумываться о том, как его программа будет работать с базой данных на физическом уровне: локально, в файл-серверной, либо в клиент-серверной архитектуре. Вдобавок при переходе к использованию СУБД разных производителей программисту не потребуется менять исходный код своей программы. Достаточно внести изменения только в настройки BDE.
Такое удобство достигается благодаря тому, что механизм BDE представляет собой программную прослойку (middleware) между клиентской программой и базой данных (или СУБД). Запрос из приложения передается внутрь механизма BDE, который использует специализированные системные программы (драйверы) для непосредственной работы с СУБД.
ВНИМАНИЕ В дальнейшем для простоты под СУБД будем понимать как специальную серверную программу управления базой данных, так и драйвер для обращения к наборам файлов в формате файл-серверных СУБД.
Такие драйверы выпускаются для каждой СУБД, и механизм BDE настраивается на их использование с помощью специального редактора, вызываемого из утилиты SQL Explorer (Проводник SQL), которая открывается командой Database > Explore (База данных > Проводник). Драйверы могут работать с базами данных в стандарте таких СУБД, как Paradox, dBase, FoxPro. Эти СУБД ранее были построены как файл-серверные, поэтому драйвер реально представляет собой весьма сложную программу, выполняющую множество функций СУБД.
Существуют и драйверы для работы с клиент-серверными СУБД (MS SQL Server, InterBase, Oracle). Такие драйверы устроены проще. Они только передают запросы и команды из BDE в СУБД и получают обратно результаты их выполнения. Всю работу по обработке данных выполняет СУБД.
В поставку BDE входит два набора драйверов.
О Первый набор предназначен для файл-серверных СУБД dBASE, Paradox, FoxPro, Access и данных в текстовом формате.
О Второй набор ориентирован на клиент-серверные СУБД InterBase, IBMDB2, Informix, ORACLE, Sybase и Microsoft SQL Server. Этот набор называется SQL Links.
Конечно, кроме системы Delphi в мире существует немало пакетов создания программ, которые позволяют обращаться к любым СУБД. Поэтому давно разработан и существует стандартный протокол ODBC (Open Database Connectivity Interface, открытый интерфейс взаимодействия с базами данных), напоминающий независимую работу BDE. Драйверы ODBC выпущены для всех без исключения СУБД, и разработчик может использовать в BDE драйверы ODBC.
Реализация в системе Delphi прослойки BDE позволяет не привязывать программу к конкретной СУБД. Если потребуется расширить число пользователей программы и перейти, например, с файл-серверной СУБД dBase на более мощную СУБД InterBase, достаточно изменить несколько настроек BDE, не исправляя исходные тексты.
Так как справочник рассчитан на одного пользователя, достаточно использовать локальную СУБД. Выберем СУБД Paradox, поддерживаемая механизмом BDE.
Используемая база данных будет состоять из одной таблицы так как в таблице будет всего 4 поля (Имя фильма, жанр, информация и имя файла изображения/видео), и перекрестные ссылки не имеет смысла делать.
Для поля имя выделим 50 символов, этого достаточно для большинства названий фильмов.
Для поля имя файла выделим тоже 20 символов.
Таблица создаётся с помощью программы Database Desktop. Тип таблицы выбираем Paradox 7.
1) ID - ключевое поле, номер записи.
2) Name - название фильма, текстовое поле длиной 50 символов.
3) Ganre - жанр фильма, текстовое поле длиной 20 символов
4) Info - информация о фильме, поле типа Formatted Memo.
5) Img - текстовое поле длиной 20 символа для хранения имени файла видео или/и изображения.
Полю Name назначаем вторичный индекс NameID. Вторичный индекс нужен что бы была возможность произвести поиск и сортировку в поле Name.
Рис2. Назначение вторичного индекса
Сохраняем базу данных как Films.DB. В результате создаются 5 файлов. Из которых файл с расширением .MB - это поле типа Formatted Memo, .XGO, .YGO - в них индексируется поле Name, .DB - непосредственно сам файл таблицы.

Фильтр - фильтрация фильмов по жанру. При нажатии “фильтр” появляется окно с выбором жанра фильма. Жанр можно выбрать из списка, либо ввести вручную. Фильтр чувствителен к регистру. Фильтрация организуется запросом.
Сохранить описание - сохраняет описание фильма в текстовый файл. Название текстового файла будет совпадать с названием фильма, при желании можно изменить на дугое название. Организуется стандартным в Дельфи диалогом “Save dialog”
Рис5. Окно сохранения описания фильма
Редактирование записей - окно редактирования (удаления, добавления, изменения и т.д.) записей в таблице.
Проиграть видео - становится доступной если для данного фильма имеется видео ролик. При нажатие кнопки начнётся воспроизведение клипа.
Выход - завершение работы с программой.

Imagelist1 - изображения для кнопок
ProgressBar1 - отображает статус фильтрации БД
SaveDialog1 - сохранение описания фильма в файл
DBNavigator1 - Управление базой данных
OpenPictureDialog1 - окно загрузки изображения/видео
SpeedButton1 - вызов окна загрузки изображения/видео
В качестве создания инсталлятора используем программу WinRAR 3.6x
Устанавливаем каталог в который будет распакована программа:
Добавляем ярлыки на рабочий стол и в ПУСК -> Программы
В результате генерируется SFX сценарий:
Справка сделана в виде HTM страниц, создавалась в редакторе Microsoft FrontPage (рис.13).
Справка вызывается при нажатии горячей клавиши [F1] либо при выборе из меню Помощь -> Справка (рис.12).
Unit1 in 'Unit1.pas' {Form1}, //основная форма
Unit2 in 'Unit2.pas' {Form2}, //форма добавления записи
Unit3 in 'Unit3.pas' {Form3}, //фильтр
Unit4 in 'Unit4.pas' {Form5}, //заставка
Unit6 in 'Unit6.pas' {Form6}; //окно о программе
Form5 := TForm5.Create(Application);//форма заставки
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm6, Form6);
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, Mask, Grids, DBGrids, ComCtrls, Menus,
ToolWin, DB, DBTables, XPMan, ImgList, ExtCtrls, hkdunit1, MPlayer,
procedure N4Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure ChangeEdit(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure ChangeIMG(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure TForm1.N4Click(Sender: TObject);
procedure TForm1.Creat_(Sender: TObject);
Database1.DatabaseName:= 'MyNewAlias';
Database1.Params.Add('PATH=.\base');//путь к базе данных
Table1.DatabaseName:= 'MyNewAlias';
Table1.TableName:= 'Films';//имя базы данных
{----конец инициализации бд---------}
DBGrid1.Columns.Add.FieldName:='Name';
Statusbar1.Panels.Items[0].text :=' Всего записей: '+inttostr(Table1.RecordCount); //кол-во записей в бд
{-----------progressBar in Statusbar---------}
Width := 150//StatusBar1.Panels[0].Width - Left;
procedure TForm1.N2Click(Sender: TObject);//сохранение опиёсания игры в текстовый файл
s:=Table1.FieldByName('Name').DisplayText;
Savedialog1.Title:=' Сохранить описание фильма: '+s;
Savedialog1.FileName:=strtst(s,'\/:*?<>|',2); //удаление спец символов
DBmemo1.Lines.SaveToFile(Savedialog1.Filename);
procedure TForm1.ChangeEdit(Sender: TObject);// приблизительный поиск
procedure TForm1.N10Click(Sender: TObject);
procedure TForm1.ChangeIMG(Sender: TObject); // загрузка изображения и видио файла
if CheckFile('.\base\img\'+table1.FieldByName('Img').DisplayText+'.bmp')=0 //проверка наличия файла
Image1.Picture.LoadFromFile('.\base\img\'+table1.FieldByName('Img').DisplayText+'.bmp'); //загрузкафайла изображения
else Image1.Picture.Graphic := nil;//иначе удаляем изображение
if CheckFile('.\base\img\'+table1.FieldByName('Img').DisplayText+'.avi')=0 then //проверка наличия файла
N11.Enabled:=true; //делаем кнопку проиграть видео доступной
procedure TForm1.N11Click(Sender: TObject);//проиграть видео
Filename := '.\base\img\'+table1.FieldByName('Img').DisplayText+'.avi';
procedure TForm1.N6Click(Sender: TObject); //фильтрация базы данных
procedure TForm1.N8Click(Sender: TObject);
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, Mask, Grids, DBGrids, ExtCtrls, ShellApi,
OpenPictureDialog1: TOpenPictureDialog;
procedure Create_(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
function WindowsCopyFile(FromFile, ToDir : string) : boolean;
FromFile:=FromFile+#0; F.pFrom:=pchar(FromFile);
ToDir:=ToDir+#0; F.pTo:=pchar(ToDir);
F.fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION;
function RenameFiles( Handle : HWnd; Src : string; New : string;
Result := SHFileOperation( SHFileOpStruct );
procedure TForm2.Create_(Sender: TObject);
DBedit1.DataSource:= Form1.DataSource1;
DBedit2.DataSource:= Form1.DataSource1;
Dbmemo1.DataSource:= Form1.DataSource1;
DBGrid1.DataSource:= Form1.DataSource1;
DBGrid1.Columns.Add.FieldName:='Name';
DBNavigator1.DataSource:=Form1.DataSource1;
procedure TForm2.SpeedButton1Click(Sender: TObject);
Showmessage('Error#02 Введите новое имя файла')//Ошибка - не введено новое имя файла
if CheckFile('.\base\img\'+OpenPictureDialog1.FileName)<>0 //проверка наличия файла
if not WindowsCopyFile(OpenPictureDialog1.FileName, ApplicationPath+'\base\img\') then //копирование файла
ShowMessage('Error#01 Copy Failed')
RenameFiles(Handle,ApplicationPath+'\base\img\'+ //переименование файла с извлечением расширения
ExtractFileNameEx(OpenPictureDialog1.FileName,true),ApplicationPath+'\base\img\'+DBEdit2.Text+'.bmp',false);
Showmessage('Error#03 Copy Failed');
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure TForm3.SpeedButton1Click(Sender: TObject);
if Combobox1.Text<>'Выберите жанр:' then
for i:=0 to (Form1.progressbar1.max) do
Form1.Table1.Filter:='Ganre = ' + QuotedStr(ComboBox1.Text); //SQL запрос
procedure TForm3.SpeedButton2Click(Sender: TObject);
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, jpeg, StdCtrls,unit1;
procedure Timer1Timer(Sender: TObject);
procedure TForm5.Timer1Timer(Sender: TObject);
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, ExtCtrls, StdCtrls;
procedure SpeedButton1Click(Sender: TObject);
procedure TForm6.SpeedButton1Click(Sender: TObject);
Uses SysUtils,Messages,Windows,MMSystem,Classes,Variants,Dialogs,Graphics,Forms,
Controls,ShlOBJ,comctrls, WinInet, Masks, ExtCtrls, ShellAPI,StdCtrls, Menus,
aCTIVEx,RichEdit, inifiles, ImgList;
{--------------РАБОТА С ФАЙЛАМИ------------------------------------}
//Проверка файла: 1-нет файла;0-файл присутствует
function CheckFile(filename:string):integer;
{--------------ПРИЛОЖЕНИЕ----------------------------------}
//Возвращает путь запущенной программы
{-------------РАБОТА СО СТРОКАМИ----------------------------}
//Удаление из строки ненужных символов
function strtst(var Input: string; EArray: string; Action: integer): string;
//Процедура приведения строки к верхниму регистру
procedure strtoBig(s_1 : string; var s_2: string);
function ExtractFileNameEx(FileName: string; ShowExtension: Boolean): string;
{--------------------END---------------------------------------------------------}
{------------------------------------------------------------------------------}
function ExtractFileNameEx(FileName: string; ShowExtension: Boolean): string;
while (FileName[i] <> '\') and (i > 0) do
S := Copy(FileName, i + 1, Length(FileName) - i);
procedure strtoBig(s_1 : string; var s_2: string);
s__:='абвгдеёжзийклмнопрстуфхцчшщъыьэюяabcdefghijklmnopqrstuvwxyz';
s__2:='АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯABCDEFGHIJKLMNOPQRSTUVWXYZ';
{------------------------------------------------------------------------------}
function strtst(var Input: string; EArray: string; Action: integer): string;
messagebox(0, 'Не корректный вызов функции.', '', mb_ok);
function CheckFile(filename:string):integer;
{------------------------------------------------------------------------------}
Result := ExtractFilePath(ParamStr(0));
{------------------------------------------------------------------------------}
1. Delphi7 учебный курс. С.Бобровский. Питер, 2004г. 735л.
Изучение функций автоматизированных банков данных. Общие принципы описания, хранения и манипулирования данными. Анализ требований к базам данных. Файл-серверная и клиент-серверная архитектура БД. Преимущества введения системы управления базами данных. презентация [91,5 K], добавлен 13.08.2013
Этапы проектирования базы данных. Определение цели создания. Присвоение ключевых полей. Добавление данных и создание других объектов. Инфологическая и даталогическая модель. База данных "Прокат видеодисков". Создание пользовательского интерфейса. курсовая работа [2,3 M], добавлен 24.10.2014
Разработка модели и создание структуры реляционной базы данных. Организация данных в таблицах для предоставления оперативного доступа к данным. Основные структурные единицы базы данных Access: таблицы, запросы, формы, отчеты, страницы, макросы и модули. реферат [4,0 M], добавлен 03.02.2013
Модели информационного процесса обработки данных. Классификация баз данных. Сеть архитектуры и технология клиент-сервер. Создание запросов к реляционным базам данных на SQL. Работа с электронными таблицами MS Excel: форматирование данных, вычисления. контрольная работа [17,8 K], добавлен 17.01.2010
Выбор состава технических и программных средств разработки системы. Описание входных и выходных данных. Выбор модели базы данных. Разработка подсистемы наполнения базы данных, формирования отчетов. Разработка интерфейса пользователя, тестирование системы. курсовая работа [3,7 M], добавлен 04.12.2014
Особенности проектирования программы на языке С++ для обработки данных из таблиц базы данных. Основные функции программы, создание концептуальной модели базы данных и диаграммы классов, разработка интерфейса пользователя и запросов к базе данных. курсовая работа [2,1 M], добавлен 08.06.2012
Представление данных в памяти компьютера. Обобщенные структуры и модели данных. Методы доступа к информации. Физическая организация системы управления базами данных, структура сервера. Архитектура "клиент-сервер". Создание базы данных с помощью "Денвер". курсовая работа [770,3 K], добавлен 17.11.2014
Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д. PPT, PPTX и PDF-файлы представлены только в архивах. Рекомендуем скачать работу .

© 2000 — 2021



Разработка программных средств базы данных видеодисков курсовая работа. Программирование, компьютеры и кибернетика.
Финансовая Безопасность Рф Реферат
Урок Контрольная Работа Сложносочиненное Предложение
Сочинение На Любую Тему Про Дубровского
Курсовая работа по теме Dнешнеторговая политика России
Реферат На Тему Загальна Характеристика Табличного Процесора Microsoft Excel
Сочинение Повествование Помню Раннее Свежее Тихое Утро
ФУНКЦИОНАЛЬНО – ПРАГМАТИЧЕСКИЕ АСПЕКТЫ ФРАЗЕОЛОГИЧЕСКИХ ИНТЕНСИФИКАТОРОВ В СОВРЕМЕННОМ АНГЛИЙСКОМ ЯЗЫКЕ
Газовая гангрена
Курсовая работа по теме Некоторые проблемы теории доказательств
Отчет По Преддипломной Практике Турфирма
Доклад: Слово о полку Игореве
Тактические особенности производства эксгумации.
Реферат: Расчет наматывающего устройства
Реферат Единая Государственная Система
Контрольная Работа По Теме Духовная Жизнь Общества
Реферат На Тему Внезапная Сердечная Смерть
Реферат: Нелинейная оптика
Курсовая работа: Методика преподавания наречий и слов категорий состояния в школе
Реферат: Структура страхового рынка за рубежом. Скачать бесплатно и без регистрации
Русский Язык Сочинение 9.2
Административное право - Государство и право контрольная работа
Влияние нетеплового СВЧ излучения на фотосинтетическую активность - Биология и естествознание контрольная работа
Историческое своеобразие культуры Древнего Рима - Культура и искусство контрольная работа


Report Page