Распределенная обработка данных. Найханова Л.В. - 115 стр.

UptoLike

Составители: 

115
//----------------------------------------------------------------
-
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//----------------------------------------------------------------
-
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
int i; double x1,y;
for (i=1;i<60;i++)
{
x1=0.1*float(i-13);
y=fun1(x1);
Chart1->Series[0]->AddXY(x1,y,FloatToStr(x1),clWhite);
}
}
double fun1(double x)
{
double r=x*x*x-5*x*x+3*x+5;
return(r);
}
//----------------------------------------------------------------
-
Результатом работы такого приложения будет график нашего полинома, появляющийся при
нажатии на кнопку "График" (рис. 4.2):
Рис. 4.2. То же приложение на этапе выполнения
Это обычное Windows-приложение, содержащее в себе и пользовательский
интерфейс, и функциональность, связанную с проведением расчетов (вычисление
значений функции).
Теперь попробуем разбить это приложение на две части, отделив пользовательский
интерфейс (кнопки и компонент TChart) от функциональности. Иными словами, создадим
сервер функциональности, вычисляющий значение функции, и клиентское приложение,
использующее этот сервер как поставщика результатов расчетов.
Создание переносимого сервера функциональности
Создадим CORBA-сервер, осуществляющий проведение расчетов. Сразу же
заметим, что подобного рода серверы, как правило, не нуждаются в пользовательском
     //----------------------------------------------------------------
-
     __fastcall TForm1::TForm1(TComponent* Owner)
             : TForm(Owner)
     {
     }
     //----------------------------------------------------------------
-
     void __fastcall TForm1::BitBtn1Click(TObject *Sender)
     {
         int i; double x1,y;
       for (i=1;i<60;i++)
       {
         x1=0.1*float(i-13);
         y=fun1(x1);
         Chart1->Series[0]->AddXY(x1,y,FloatToStr(x1),clWhite);
       }
     }
       double fun1(double x)
     {
       double r=x*x*x-5*x*x+3*x+5;
       return(r);
     }
     //----------------------------------------------------------------
-
     Результатом работы такого приложения будет график нашего полинома, появляющийся при
нажатии на кнопку "График" (рис. 4.2):




                       Рис. 4.2. То же приложение на этапе выполнения

     Это обычное Windows-приложение, содержащее в себе и пользовательский
интерфейс, и функциональность, связанную с проведением расчетов (вычисление
значений функции).
     Теперь попробуем разбить это приложение на две части, отделив пользовательский
интерфейс (кнопки и компонент TChart) от функциональности. Иными словами, создадим
сервер функциональности, вычисляющий значение функции, и клиентское приложение,
использующее этот сервер как поставщика результатов расчетов.
Создание переносимого сервера функциональности
     Создадим CORBA-сервер, осуществляющий проведение расчетов. Сразу же
заметим, что подобного рода серверы, как правило, не нуждаются в пользовательском
                                                                                     115