Автор: Пользователь скрыл имя, 23 Декабря 2011 в 13:46, отчет по практике
Практика проходила в ООО «ЮМИС». Общество с ограниченной ответственностью «ЮМИС», в дальнейшем «ЮМИС», создано в соответствии с Гражданским кодексом Российской Федерации и Федеральным законом Российской федерации от 08.02.1998 года № 14-Ф3 «Об обществах с ограниченной ответственностью».
Цели практики:
расширить и систематизировать знания, полученные в ходе обучения;
разработка программного продукта «Записная книжка» для компании ООО «ЮМИС».
Введение 3
1.Характеристика предприятия ООО «ЮМИС» 4
1.1 Организационная структура предприятия 4
1.2 Описание аппаратного обеспечения 4
1.3 Описание программного обеспечения 6
2 Разработка программного продукта 9
2.1 Средство разработки. 9
2.2 Описание программного продукта. 10
2.3 Дизайн интерфейса. 12
2.4 Программный код. 13
Заключение 25
Список использованных источников 26
Delphi - это язык программирования, на основе языка Pascal (точнее более развитая его форма) является объектно-ориентированным. Пользуется значительной популярностью среди программистов, так как предоставляет значительные возможности в реализации тех или иных программ, при относительной своей простоте.
В России Borland Delphi появляется в конце 1993 г. и сразу же завоевывает широкую популярность. Новые версии выходят практически каждый год. В них реализуются все новые мастера, компоненты и технологии программирования.
Действительно, процесс разработки в Delphi предельно упрощен. В первую очередь это относится к созданию интерфейса, на который уходит 80% времени разработки программы. Вы просто помещаете нужные компоненты на поверхность Windows-окна (в Delphi оно называется формой) и настраиваете их свойства с помощью специального инструмента (Object Inspector). С его помощью можно связать события этих компонентов (нажатие на кнопку, выбор мышью элемента в списке и т.д.) с кодом его обработки - и вот простое приложение готово. Причем разработчик получает в свое распоряжение мощные средства отладки (вплоть до пошагового выполнения команд процессора), удобную контекстную справочную систему (в том числе и по Microsoft API), средства коллективной работы над проектом, всего просто не перечислить. Вы можете создавать компоненты ActiveX без использования Microsoft IDL, расширять возможности web-сервера (скрипты на стороне сервера), практически ничего не зная об HTML, XML или ASP. Можно создавать распределенные приложения на базе СОМ и CORBA, Интернет- и intranet-приложения, используя для доступа к данным Borland DataBase Engine, ODBC-драйверы или Microsoft ADO. Появившаяся, начиная с Delphi 3, поддержка многозвенной технологии (multi-tiered) доступа к данным позволяет создавать масштабируемые приложения (относительно слабо зависящие от сервера БД) за счет перенесения методов обработки информации (бизнес-правил) на среднее звено.
Как уже говорилось ранее, в Delphi используется язык Object Pascal, который постоянно расширяется и дополняется Borland. Язык в полной мере поддерживает все требования, предъявляемые к объектно-ориентированному языку программирования. Как и положено строго типизированному языку, классы поддерживают только простое наследование, но зато интерфейсы могут иметь сразу несколько предков. К числу особенностей языка следует отнести поддержку обработки исключительных ситуаций (exceptions), а также перегрузку методов и подпрограмм (overload) в стиле C++. К числу удачных, на взгляд автора, относится также поддержка длинных строк в формате WideChar и AnsiChar. Последний тип (AnsiStrmg) позволяет использовать все прелести динамического размещения информации в памяти без всяких забот о ее выделении и сборке мусора Delphi делает это автоматически. Для поклонников свободного стиля программирования имеются открытые массивы, варианты и вариантные массивы, позволяющие размещать в памяти все, что душе угодно и смешивать типы данных.
Вы можете создавать свои собственные компоненты, импортировать ОСХ-компоненты, создавать <шаблоны> проектов и <мастеров>, создающих <заготовки> проектов. Мало того, Delphi предоставляет разработчику интерфейс для связи ваших приложений (или внешних программ) с интегрированной оболочкой Delphi (IDE).
Таким образом, вы можете использовать Delphi для создания как самых простых приложений, на разработку которых требуется 2-3 часа, так и серьезных корпоративных проектов, предназначенных для работы десятков и сотен пользователей. Причем для этого можно использовать самые последние веяния в мире компьютерных технологий с минимальными затратами времени и сил.
Разработанный программный продукт «Записная книга» имеет главное окно, в котором имеются следующие объекты:
– TMainMenu - Этот компонент представляет главное меню формы и наследует все методы и свойства TMenu. Особенность его в том, что в нем реализован сложный механизм объединения меню. Это необходимо по следующим причинам:
Если в приложении имеется несколько форм со своими меню, то для упрощения работы целесообразно соединить их в одно и управлять меню из главной формы.
Объединение меню нужно при работе с интерфейсом MDI и его под окнами.
Механизм объединения меню используется серверами OLE, запускаемыми по месту нахождения объекта OLE. Загружаясь, сервер дописывает осуществляемые им операции к меню другого приложения.
– TOpenDialog - Компонент TOpenDialog отображает модальное диалоговое окно для выбора файлов. Для отображения диалогового окна вы должны вызвать его метод Execute. После нажатия пользователем кнопки "Открыть" ("Open") в диалоге, он закрывается, а выбранные файлы (точнее, полные пути к ним) сохраняются в свойстве Files компонента.
– TSaveDialog - служит для отображения модального диалогового окна, позволяющего пользователю сохранять файлы.Диалог не отображается, пока не вызван его метод Execute. Когда пользователь нажимает кнопку "Сохранить" ("Save"), диалог закрывается и полный путь к выбранному пользователем файлу заносится в свойство FileName.
– TMemo позволяет вводить многострочный текст с клавиатуры, загружать его из файла, редактировать и сохранять в файл текстового формата.
– TTreeView – элемент управления древовидным представлением. В нем имеется верхний объект, называется корневым элементом. От корневого элемента каскадом распределяются дочерние элементы и отображаются с отступом с целью их выделения. Каждый уровень может быть свернут и развернут с использованием малой кнопки, напоминающей знак плюс или минус.
– TADOConnection - связной компонент, который связывает программу с базой данных Microsoft Office Access.
– TADOQuery – компонент предназначен для получения набора записей из одной или нескольких таблиц базы данных.
– TDataSource – представляет собой источник данных, который обеспечивает связь между набором данных и компонентами отображения и редактирования данных.
– Tpanel на которой расположены кнопки такие как:
«Печать» - распечатать текст;
«На диск» - сохранить текст в *.txt формате;
«С диска» - открыть текст в программе «Записная книга» с *.txt формата;
«В БД» - сохранить текст в базе данных Microsoft Office Access.
Программа имеет главное окно (рисунок 3).
«О программе» - при нажатии появляется окно, где написано о программе: название программы и кем написана программа (рисунок 4).
«Выход» - программа закрывается при нажатии.
«Печать» - распечатать текст.
«На диск» - сохранить текст в *.txt формате.
«С диска» - открыть текст в программе «Записная книга» с *.txt формата.
«В БД» - сохранить текст в базе данных Microsoft Office Access.
Рисунок 3- Главное окно программы.
в котором можно делать различные записи и сохранять их в базу данных Microsoft Office Access.
В программе имеются следующие кнопки:
«Соединение»
- программа соединяется и
«Утилиты» - «Упаковать в БД» - упаковать текст в таблицу базы данных Microsoft Office Access.
Описать
Рисунок 4 – окно «О программе».
описать
unit uBook;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, DB, ADODB, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls,
DBCtrls, Menus, uRichEditWithLinks, Printers, DAO2000, ComObj, ImgList;
type
TForm1Tree = class(TForm)
ADOConnection1: TADOConnection;
qTreeCompanies: TADOQuery;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Splitter1: TSplitter;
Panel4: TPanel;
TreeCompanies: TTreeView;
Panel5: TPanel;
DataSource1: TDataSource;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
MainMenu1: TMainMenu;
Connect1: TMenuItem;
Exit1: TMenuItem;
ools1: TMenuItem;
About1: TMenuItem;
RichEditWithLinks1: TRichEditWithLinks;
Panel6: TPanel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
SaveDialog1: TSaveDialog;
OpenDialog1: TOpenDialog;
PopupMenu2: TPopupMenu;
MenuItem1: TMenuItem;
MenuItem2: TMenuItem;
MenuItem3: TMenuItem;
N4: TMenuItem;
CompactBase1: TMenuItem;
Edit1: TEdit;
ImageList1: TImageList;
Procedure ExpandLevel( Node : TTreeNode);
procedure TreeCompaniesExpanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean);
procedure TreeCompaniesChange(Sender: TObject; Node: TTreeNode);
procedure DBGrid1DblClick(Sender: TObject);
procedure MyConnect(Sender: TObject);
procedure TreeCompaniesClick(Sender: TObject);
procedure POPupMenuAdd(Sender: TObject);
procedure POPupMenuAddIN(Sender: TObject);
procedure POPupMenuDelete(Sender: TObject);
procedure TreeCompaniesEdited(Sender: TObject; Node: TTreeNode;
var S: String);
procedure About1Click(Sender: TObject);
procedure Exit1Click(Sender: TObject);
procedure MenuItem1Click(Sender: TObject);
procedure MenuItem2Click(Sender: TObject);
procedure MenuItem3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure CompactBase1Click(Sender: TObject);
procedure Edit1Locate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1Tree: TForm1Tree;
RedoDone:Boolean;
DataBaseName:string;
implementation
uses about;
{$R *.dfm}
Procedure DeclarePar;
begin
with Form1Tree.qTreeCompanies.
Name := 'ParentID';
DataType := ftInteger;
Direction := pdInput;
Value := 0;
end;
with Form1Tree.qTreeCompanies.
Name := 'ID';
DataType := ftInteger;
Direction := pdInput;
Value := 0;
end;
Информация о работе Разработка программного продукта «Записная книжка»