Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Применение структурных и объектно-ориентированных методов программирования






 

Широкое применение структурных и объектно-ориентированных методов программирования с использованием графических моделей объединялось отсутствием инструментальных средств. Это породило потребность в программно-технологических средствах специального класса -CASE (Computer Aided Software Engineering), реализующих технологию создания и сопровождения ПО различных систем. Предпосылки для появления CASE-технологий возникли к концу 1980-х гг. Первоначально термин «CASE» применялся только к вопросам автоматизации разработки ПО, теперь программная инженерия имеет более широкое значение для разработки систем в целом. В CASE-технологии входит разработка и внедрение языков высокого уровня, методов структурного и модульного программирования, языков проектирования и средств их поддержки, формальных и неформальных языков описания системных требований.

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

В начале этого столетия текстовые процессоры стали более совершенными. Наряду с более простыми (например, Professional Write и др.) появились такие мощные, как MS WinWord, Word Perfect Word Star 2000 и др. Из отечественных широкое распространение получил текстовый процессор Лексикон.

С начала 1980-х гг. для подготовки и обработки числовой информации стали использоваться табличные процессоры. В 1979 г. Д. Брикклин предложил первую программу для работы с электронными таблицами VisiCalc. В 1981 г. была разработана система Super Calc фирмы «Computer Associates», в 1982 г. -- Multiplan фирмы «Microsoft», далее - пакет для IBM PC Lotus -2-3 фирмы «Lotus Development», русифицированные пакеты АБАК, ДРАКОН и др. В 1985 г. появился табличный процессор Excel фирмы «Microsoft» первоначально для персонального компьютера Macintosh, а затем для совместимых с IBM PC. Этот процессор разрабатывался параллельно с ОС Windows, его версии вобрали в себя все черты графического интерфейса, вплоть до версий Excel 5.0 как приложения Windows 3.1, Excel 7.0 как приложения Windows 95 и т. д. В последние годы создано достаточно много систем подготовки табличных документов, т. е. электронных таблиц, табличных процессоров (например, Corel Quattro 6.0 фирмы «Corel Co», Lotus 5.0 фирмы «Lotus Development Co», Office Proftessional for Windows фирмы «Microsoft») - но наиболее широко используют электронные таблицы Excel.

Разработано большое количество стандартных реляционных систем управления базами данных - СУБД (например, MS Access, paradox и др.), на основе которых строят реляционные базы данных в различных предметных областях.

Для многих организаций (особенно управленческих) разработаны так называемые офисные пакеты, в которых на основе единой ОС функционируют приложения, включающие в себя системы для работы с различными видами информации. Например, созданы пакеты приложений к ОС Windows (MS Office, Word Perfect Office фирмы «Corel», Star Office фирмы «Sun Microsystems» и др.), которые включают программные средства для выполнения функций обработки всех видов информации. Например, MS Office включает совершенствующиеся год от года (в зависимости от последней версии ОС Windows) средства обработки текста (MS Word), графики (PhotoDraw) и презентаций (PowerPoint), таблиц (Excel), баз данных (Access), электронной почты (Outlook), работы во Всемирной паутине (FrontPage), создания звуковых клипов (MS Sound Recorder).


 

2 ПРАКТИЧЕСКАЯ ЧАСТЬ

 

2.1 Обоснование программного обеспечения

 

Delphi

Delphi– это среда разработки программ, ориентированных на работу в операционных системах семейства Windows. Программы в Delphi создаются на основе современной технологии визуального проектирования которая, в свою очередь, базируется на идеях объектно-ориентированного программирования. Программы в Delphi пишутся на языке ObjectPascal, который является преемникоми развитием языка TurboPascal. Как следует из его названия, этот язык также воплотил концепцию объектно-ориентированного программирования.

С помощью Delphi можно создавать различные типы программ – и консольные приложения, и оконные приложения, и приложения для работы с базами данных и Internet. В консольных приложениях для ввода и вывода данных используются процедурыRead, Readln, Write, Writeln. Для выполнения консольного приложения эмулируется режим операционной системы MS DOS.

Оконные приложения – основной вид приложений, используемых в операционных системах семейства Windows. Оконными приложениями является подавляющее большинство прикладных программ, созданных для работы в Windows, например, такие программы, как Проводник, текстовый процессорWord, табличный процессор Excel, графические редакторы и многие другие. Delphi использует для создания оконных приложений специальные компоненты. С их помощью производится ввод и отображение текстовой информации, создание графического интерфейса пользователя и т.п.

 

Ms Acces

Microsoft Office Access или просто Microsoft Access — реляционная система управления базами данных (СУБД) корпорацииMicrosoft. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных. Благодаря встроенному языку VBA, в самом Access можно писать приложения, работающие с базами данных.

Основные компоненты MS Access:

· построитель таблиц;

· построитель экранных форм;

· построитель SQL-запросов (язык SQL в MS Access не соответствует стандарту ANSI);

· построитель отчётов, выводимых на печать.

Они могут вызывать скрипты на языке VBA, поэтому MS Access позволяет разрабатывать приложения и БД практически «с нуля» или написать оболочку для внешней БД.

Microsoft Jet Database Engine (англ.), которая используется в качестве движка базы данных MS Access является файл-серверной СУБД и потому применима лишь к приложениям, работающим с небольшими объёмами данных и при небольшом числе пользователей, одновременно работающих с этим данными. Непосредственно в Access отсутствует ряд механизмов, необходимых в многопользовательских базах данных, таких, например, как триггеры.

Access, при работе с базой данных, иначе взаимодействует с жёстким (или гибким) диском, нежели другие программы.

В других программах, файл-документ, при открытии, полностью загружается в оперативную память, и новая редакция этого файла (изменённый файл) целиком записывается надиск только при нажатии кнопки «сохранить».

В Access новая редакция содержимого изменённой ячейки таблицы записывается на диск (сохраняется) сразу, как только курсор клавиатуры будет помещён в другую ячейку (или новая редакция изменённой записи записывается на диск сразу, как только курсор клавиатуры будет поставлен в другую запись (строку)). Таким образом, если внезапно отключат электричество, то пропадёт только изменение той записи, которую не успели покинуть.

Целостность данных в Access обеспечивается также за счёт механизма транзакций.

Кнопка «Сохранить» в Access тоже есть, но в Access в режиме просмотра данных она нужна, в первую очередь, для сохранения изменённого режима показа таблицы или другого объекта — то есть, для сохранения таких изменений, как:

· изменение ширины столбцов и высоты строк,

· перестановка столбцов в режиме просмотра данных, «закрепление» столбцов и освобождение закреплённых столбцов,

· изменение сортировки,

· применение нового фильтра,

· изменение шрифта; цвета текста, сетки и фона,

· и т. п.

Кроме того, в Access эта кнопка нужна в режиме «Конструктор» для сохранения изменений структуры объекта базы данных, сделанных в этом режиме.

Даже если в процессе работы с файлом базы данных не применялся режим «Конструктор» и новые данные в базу данных не добавлялись (то есть если база данных только просматривалась), то всё равно файл базы данных имеет тенденцию со временем, в процессе работы с ним, всё больше и больше увеличиваться в размере. Очень способствует увеличению размера файла применение новых сортировок и фильтров (особенно если было применено несколько разных, сильно отличающихся друг от друга сортировок/фильтров).

Это приращение размера файла является, фактически, пустотой, но эта пустота лежит внутри файла, увеличивая его объём.

Чтоб вернуть файлу базы данных нормальный (минимальный) объём (то есть чтоб убрать из файла пустоту), в Access есть кнопка «Сжать и восстановить базу данных» — эту кнопку нужно время от времени нажимать (при нажатии этой кнопки никакая информация, никакие данные из файла базы данных не удаляются). Так же базу данных можно запустить с параметром compact, что выполнит сжатие автоматически и закроет базу по окончании процесса.

 

2.2 Создание базы данных

 

В базе данных было создано четыре таблицы: Адрес, Личные данные, Должность, Телефоны.

В таблице Адрес храниться информация о месте проживания сотрудников. В ней были созданы следующие поля: Сотрудник, Страна, Город, Дом_Адрес.

На рисунке 1 представлена таблица Адрес в режиме конструктора.

 

Рисунок 1 – Таблица «Адрес»

 

Рисунок 2 – Таблица «Должность»

 

Рисунок 3 – Таблица «Личные данные»

 

Рисунок 4 – Таблица «Телефоны»

 

 

2.3 Запуск приложения

 


 

ЗАКЛЮЧЕНИЕ

 

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

 

 


 

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

1. Немнюгин С.А. Turbo Pascal (практикум): СПб. «Питер», 2003. – 475с.

2. Кирнос В.Н. Информатика 10 – 11 класс: Кокшетау: «Кешелек», 2005. – 208с.

3. Фаронов В.В. Turbo Pascal 7.0. Начальный курс. - Нолидж, 1998. -620 с.

4. Грызлов В.И., Грызлова Т.П. Турбо Паскаль 7.0. - М.: " ДМК", 2000. - 416 с.

5. Зуев Е.А. Turbo Pascal. Практическое программирование. - Приор, 1997. - 336с.

6. Пильщиков В.Н. Сборник упражнений по языку Паскаль. – М.: Наука, 1989. – 160 с.

7. Йенсен К., Вирт Н. Руководство для пользователя и описание языка. – М., 1982. 151 с.

8. Абрамов С.А., Зима Е.В. Начала программирования на языке Паскаль. – М.: Наука, 1987. – 112 с.

9. Павловская Т.А. Паскаль. Программирование на языке высокого уровня. - СПб: Питер, 2003. -393с.

10. Эллиот Б.К. Turbo Pascal = Turbo Pascal Web Update. — М.: Вильямс, 2005. — 896с.

11. Лукин С.Н. TURBO PASCAL 7.0. Самоучитель для начинающих. -Диалог-МИФИ, 2005. -400с.

12. Епанешников А. М., Епанешников В. А. Программирование в среде TurboPascal7.0. -1995. -278с.

13. Немнюгин С., Перколаб Л. Изучаем Turbo Pascal. - Питер, 2007. -320с.

14. Технология программирования. Основные понятия и подходы [Электронный ресурс] / https://www.arctic-cooler.com/programming/1/comptechnology0.htm

15. Якунин, Ю. Ю. Технологии разработки программного обеспечения. Версия 1.0 [Текст]: / Ю. Ю. Якунин.- Красноярск, 2008. – 225 с.

16. Лекции по информационным технологиям [Электронный ресурс]/ https://www.studfiles.ru/dir/cat32/subj1177/file9554/view96799/page20.html

17. Лекции по технологии программирования (Гвоздев) [Электронный ресурс] / https://gendocs.ru/v28091/? cc=10

 


Приложение А

Код формы заставка

 

unit Unit2;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ExtCtrls, StdCtrls, jpeg, ComCtrls;

 

type

TForm2 = class(TForm)

Timer1: TTimer;

Image1: TImage;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

procedure Timer1Timer(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form2: TForm2;

 

implementation

 

{$R *.dfm}

 

procedure TForm2.Timer1Timer(Sender: TObject);

begin

 

 

Timer1.Enabled: = false;

end;

 

end.


 

Приложение B

Код главной формы

 


unit Unit1;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids, DBGrids, ExtCtrls;

 

type

TfName = class(TForm)

Panel1: TPanel;

Panel2: TPanel;

Panel3: TPanel;

Splitter1: TSplitter;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

Bevel1: TBevel;

Label1: TLabel;

Edit1: TEdit;

Bevel2: TBevel;

Button2: TButton;

Button3: TButton;

DBGrid1: TDBGrid;

DBGrid2: TDBGrid;

procedure Button3Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure DBGrid1DblClick(Sender: TObject);

procedure RadioButton1Click(Sender: TObject);

procedure RadioButton2Click(Sender: TObject);

procedure RadioButton3Click(Sender: TObject);

procedure Edit1Change(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

fName: TfName;

 

implementation

 

uses Unit3, Unit4;

 

{$R *.dfm}

 

procedure TfName.Button3Click(Sender: TObject);

begin

fDM.TLichData.Append;

fDM.TDoljnost.Append;

FDM.TAdres.Append;

fDM.TTelephones.Append;

fEditor.ShowModal;

end;

 

procedure TfName.Button2Click(Sender: TObject);

begin

fEditor.ShowModal;

end;

 

procedure TfName.DBGrid1DblClick(Sender: TObject);

begin

fEditor.ShowModal;

end;

 

procedure TfName.RadioButton1Click(Sender: TObject);

begin

if RadioButton1.Checked then

DBGrid2.DataSource: = fDM.DSAdres;

end;

 

procedure TfName.RadioButton2Click(Sender: TObject);

begin

if RadioButton2.Checked then

DBGrid2.DataSource: = fDM.DSTelephones;

end;

 

procedure TfName.RadioButton3Click(Sender: TObject);

begin

if RadioButton3.Checked then

DBGrid2.DataSource: = fDM.DSDoljnost;

end;

 

procedure TfName.Edit1Change(Sender: TObject);

begin

fDM.MyLocate(Edit1.Text);

end;

 

end.



Приложение C

Код модуля данных


 


unit Unit3;

 

interface

 

uses

SysUtils, Classes, DB, ADODB;

 

type

TfDM = class(TDataModule)

ADOConnection1: TADOConnection;

TLichData: TADOTable;

TDoljnost: TADOTable;

TTelephones: TADOTable;

TAdres: TADOTable;

DSLichData: TDataSource;

DSDoljnost: TDataSource;

DSTelephones: TDataSource;

DSAdres: TDataSource;

TLichDataDSDesigner: TAutoIncField;

TLichDataDSDesigner2: TWideStringField;

TLichDataDSDesigner3: TWideStringField;

TLichDataDSDesigner4: TWideStringField;

TLichDataDSDesigner5: TWideStringField;

TLichData_: TBooleanField;

TLichDataDSDesigner6: TWordField;

TLichData_2: TDateTimeField;

TLichData_3: TDateTimeField;

TLichDataDSDesigner7: TWordField;

TLichDataDSDesigner8: TWideStringField;

TLichDataDSDesigner9: TBooleanField;

TDoljnostDSDesigner: TIntegerField;

TDoljnostDSDesigner2: TWideStringField;

TDoljnostDSDesigner3: TWideStringField;

TTelephonesDSDesigner: TIntegerField;

TTelephonesDSDesigner2: TWideStringField;

TTelephonesDSDesigner3: TWideStringField;

TAdresDSDesigner: TIntegerField;

TAdresDSDesigner2: TWideStringField;

TAdresDSDesigner3: TWideStringField;

TAdres_: TWideStringField;

private

{ Private declarations }

public

{ Public declarations }

procedure MyLocate(s: String);

end;

 

var

fDM: TfDM;

 

implementation

 

{$R *.dfm}

 

 

{ TfDM }

 

procedure TfDM.MyLocate(s: String);

begin

TLichData.Locate('фамилия', s, [loPartialKey]);

end;

 

end.



 

Приложение D

Код формы редактора

 


unit Unit4;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, StdCtrls, Mask;

 

type

TfEditor = class(TForm)

GroupBox1: TGroupBox;

GroupBox2: TGroupBox;

GroupBox3: TGroupBox;

GroupBox4: TGroupBox;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

DBEdit4: TDBEdit;

DBEdit5: TDBEdit;

DBEdit6: TDBEdit;

DBEdit7: TDBEdit;

DBEdit8: TDBEdit;

DBCheckBox1: TDBCheckBox;

DBCheckBox2: TDBCheckBox;

DBComboBox1: TDBComboBox;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Label9: TLabel;

DBEdit9: TDBEdit;

DBEdit10: TDBEdit;

Label10: TLabel;

Label11: TLabel;

DBEdit11: TDBEdit;

DBEdit12: TDBEdit;

DBEdit13: TDBEdit;

Label12: TLabel;

Label13: TLabel;

Label14: TLabel;

DBEdit14: TDBEdit;

DBComboBox2: TDBComboBox;

Label15: TLabel;

Label16: TLabel;

Button1: TButton;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

Label17: TLabel;

Button2: TButton;

Button3: TButton;

procedure GroupBox1Exit(Sender: TObject);

procedure GroupBox2Exit(Sender: TObject);

procedure GroupBox3Exit(Sender: TObject);

procedure GroupBox4Exit(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

fEditor: TfEditor;

 

implementation

 

uses Unit3;

 

{$R *.dfm}

 

procedure TfEditor.GroupBox1Exit(Sender: TObject);

begin

if fDM.TLichData.Modified then

fDM.TLichData.Post;

end;

 

procedure TfEditor.GroupBox2Exit(Sender: TObject);

begin

if fDM.TDoljnost.Modified then

fDM.TDoljnost.Post;

end;

 

procedure TfEditor.GroupBox3Exit(Sender: TObject);

begin

if fDM.TAdres.Modified then

fDM.TAdres.Post;

end;

 

procedure TfEditor.GroupBox4Exit(Sender: TObject);

begin

if fDM.TTelephones.Modified then

fDM.TTelephones.Post;

end;

 

procedure TfEditor.Button1Click(Sender: TObject);

begin

if fDM.TTelephones.Modified then

fDM.TTelephones.Post;

fDM.TTelephones.Append;

DBEdit14.SetFocus;

 

end;

 

procedure TfEditor.Button2Click(Sender: TObject);

begin

if fDM.TLichData.Modified then

fDM.TLichData.Post;

if fDM.TDoljnost.Modified then

fDM.TDoljnost.Post;

if fDM.TAdres.Modified then

fDM.TAdres.Post;

if fDM.TTelephones.Modified then

fDM.TTelephones.Post;

Close;

end;

 

procedure TfEditor.Button3Click(Sender: TObject);

begin

fDM.TLichData.Append;

fDM.TDoljnost.Append;

FDM.TAdres.Append;

fDM.TTelephones.Append;

DBEdit1.SetFocus;

end;

 

end.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.