Тақырыбы: Кросплатформалы ортада цифрлық білім беру ресурстарын құрастыруда параллель есептеулер қолдану.
Оқытудың әдістемесі мен формасы: Баяндау, дәріс
RadStudio XE7 ортасында жоғары өнімді параллель есептейтін VCL және FireMonkey қосымшаларын құруға болады. RadStudio XE7 ортасында енгізілген параллель есептеулер кітапханасы (Parallel Computing Library) System.Threading.pas блогында орналасқан. Кросплатформалы қосымшаларды құруда бұл кітапхананың көмегімен параллель есептеулерге болады.
System.Threading.pas блогында орналасқан параллель есептеулер кітапханасының мынадай қызметтері бар:
· TTask - кодты жеке ағымда тез және бірнеше есептер тобын жеке бөліктерге бөліп орындауға және есептеулердің соңы аяқталғанша оның нәтижелерін көруді, күтумен ұйымдастыруға мүмкіндік береді.
· TFuture - берілген есептеулердің бөлігін қажет болғанға дейін кейінге қалдыруға (күтуге) мүмкіндік береді.
· TParallel - жүйеде процессорларының барлық ядроларының мүмкіндігін тиімді қолданатындай цикл ұйымдастыруға мүмкіндік береді.
Онымен қоса параллель есептеулер кітапханасы арқылы:
· асинхронды есептеуге;
· бірнешеесептердібіріктіреесептеуге болады [4].
RAD Studio XE7 ортасында электронды оқу басылымын құрастыру үшін ортаның қызметін толық меңгеріп, электронды оқу басылымын құруға арналған компоненттердің қасиеттері мен оқиғаларын қолдана білу керек. Бағдарлама интернет жүйесі арқылы оқыту процесін жүргізу үшін қажетті мүмкіндіктердің барлығына ие.
RAD Studio XE7 ортасы С++ немесе Object Pascal программалау тілдерімен жұмыс істейді. Программа құрастырар алдында платформаларды таңдау екі ортада бірдей болып келеді. Программа құрастыру кезінде С++ немесе Object Pascal программалау тілдерінің қайсысын жетік білесіз, соған сәйкес C++ Builder XE7 немесе Delphi XE7орталарының біреуін таңдап жұмыс істеуіңізге болады. Біздің жағдайдаDelphi XE7 таңдалды. Әрі қарай RadStudio XE7 ортасында параллель есептеулерді білім беруде қолдануды практикалық тұрғыда көрсету үшін электронды оқу басылым құру жолын қарастырайық.
Delphi XE7 ортасында кросплатформалы қосымша құру үшін File->New->Multi-Device application - >Delphi командалары орындалады.
Шыққан терезеден Blank Application таңдалады. Электронды оқу басылым қолданушыға қажетті платформада жұмыс істеу үшін алдымен платформа түрін таңдаймыз. Кейін жұмыс істейтін құрылғыны программа құрастырылатын компьютерге қосып баптау қажет. Әрі қарай құралдар тақтасынан қажетті операциялық жүйе түрін таңдайсыз [5]. Біздің жағдайда Android (сурет 2).
Сурет 2 - RAD Studio XE7 ортасында кросплатформалы қосымша құру
Егер қажетті құрылғыны компьютерге дұрыс қоссаңыз, онда жанындағы таңдаудан сол құрылғының атауы шығады. Егер шықпаса, ұялы телефон суреті тұрған Refresh Device командасын таңдап жаңартасыз. Біздің жағдайда SM-T113 құрылғысы қосымша құруға дайын (сурет 3).
Сурет 3 - Қосылған құрылғының моделін таңдау
Әрі қарай Style бөлімінен де, Andriod таңдайсыз. Ал құрылғыңызды көрсету үшін Views бөлімінен өз құрылғыңыздың түрін таңдайсыз (сурет 4).
Сурет 4 - Қажетті құрылғынының пішінін таңдау
Осылайша Radstudio ортасы Android - қа қосымша құруға дайын болды. RAD Studio XE7 ортасында электрондық оқу басылымын Web-құжаттармен байланыстыруға болады. RAD Studio XE7 ортасын электронды оқу басылымының мәтінімен байланыстыру үшін алдымен жаңа Web-құжаттарды жасап алу керек. Біздің жағдайда мынадай Web-құжаттар құрастырылды [6]:
- index.htm – негізгі бет;
- glos.htm – глоссарий;
- lecture.htm– теориялық материалдар;
- prak.htm – практикалық жұмыстар;
- video.htm – бейне сабақтар;
- adeb. htm – қолданылған әдебиеттер.
Ол құжаттарды электрондық оқу басылымның негізгі терезесімен байланыстыруға болады. Ол үшін 1-кестеде келтірілген компоненттерді таңдап, олардың қасиеттерін өзгертіп, оқиғаларына программа кодын жазамыз.
Кесте 1 – Қолданатын компоненттердің қасиеттері
Компонент |
Қасиеті |
Қасиеттің мәні |
Оқиға |
Form1 |
- |
- |
OnGreate |
WebBrowser1 |
- |
- |
- |
SpeedButton1-5 |
Flat |
True |
- |
SpeedButton1 |
Caption |
Глоссарий |
OnClick |
SpeedButton2 |
Caption |
Теориялық материалдар |
OnClick |
SpeedButton3 |
Caption |
Практикалық жұмыстар |
OnClick |
SpeedButton4 |
Caption |
Бейне сабақ |
OnClick |
SpeedButton5 |
Caption |
Қолданылған әдебиеттер |
- |
SpeedButton6 |
Caption |
Негізгі бет |
OnClick |
SpeedButton7 |
Caption |
Білімді бақылау |
OnClick |
Memo1 |
Lines-TStrings |
Тазартыңыз (параллель есептеулер қолданғанда жүктелу уақытын бақылау үшін) |
- |
Visible |
False- программист уақытты өзі бақылау үшін |
- |
Ол үшін формаға компоненттер тақтасынан WebBrowser компонентін қоямыз. Алдағы уақытта *.html кеңейтіліміндегі файлдар осы терезеде ашылады. Программа кодын жазбас бұрын модуль бөліміне ShellApi -WebBrowser компонентін Web құжатпен байланыстыру үшін және System.Threading -параллель есептеулер үшін, System.Diagnostics -жүктелу уақытты бақылау үшін жазамыз. Негізгі бет жүктелгенде OnGreate оқиғасының кодтарын [7] параллель есептеулер қолданып жазамыз.
procedure OpenFile(FileName: string);
var
c: array[0..800] of Char;
begin
StrPCopy(c,FileName);
ShellExecute(Application.Handle, 'open', c, nil, nil, SW_NORMAL);
//web құжатпен жұмыс істеуге арналған
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
TTask.Run(procedure // параллель есептеулер
var
Stopwatch: TStopWatch; //жүктелу уақытын бақылау үшін
ElapsedSeconds: Double;
begin
TThread.Synchronize(nil, procedure //синхронизациялау
begin
Stopwatch := TStopwatch.StartNew;
WebBrowser1.Navigate(z+'index.htm');
//index.html файлымен негізгі терезені байланыстыру
ElapsedSeconds := StopWatch.ElapsedMilliseconds;
Memo1.Lines.Add(Format('Жүктелу %:2f миллисекундта жүзеге асты', [ElapsedSeconds]));
end); end);
end;
Ал «Теориялық материалдар» SpeedButton1 батырмасының OnClick оқиғасына мынадай код жазамыз:
WebBrowser1.Navigate(z+ 'lecture.htm');
Программа кодын негізгі парақпен байланыстыру үшін WebBrowser1 компонентінің Navigate қасиетін қолданамыз. Сол сияқты кодтар SpeedButton2-SpeedButton6 батырмаларының OnClick оқиғаларына жазылады. Ал білімді бақылауды түрлі әдіспен автоматтандыруға болады. Сонымен қатар электронды оқу басылымға бейнесабақтар, білімді бақылауға арналған ребус, анограммалар, ашық немесе жабық тесттер қосуға болады. Бұл білім алушынға өз беттерімен жұмыс істеуіне жағдай жасайды. Осылай параллель есептеулер қолданып құрастырылған электрондық оқу басылымының негізгі терезесі мынадай (5-сурет) [8]:
Сурет 5 -Параллель есептеулер қолданылған электрондық оқу басылымы
Қорытa кeлгeндe, электрондық оқулыққа параллель есептеулер қолдансаңыз жүктелу уақытын процесссордың санына ядро санына байланысты үнемдейсіз. Оны сурет немесе анимациясы бар электронды оқу басылымын қолданған кезде анық көруге болады. Біздің жағдайда осы электронды оқу басылымның тізбектей жүктелген жүктелу уақыты - 62 миллисекунд болса, параллель есептеулер қолданған электронды оқу басылымының жүктелу уақыты - 38 миллисекунд болды. Сондықтан қазіргі таңдағы білім беруге арналған түрлі қосымша құруда аппараттың бар мүмкіндігін қолданатын кросплатформалы программалық жабдықтарды, параллель есептеулер қолданып RadStudio XE7 ортасында құрастыру қолданушылар үшін тиімді болады.
Пайданылған әдебиеттер тізімі:
1. Михалевич В. С. Словарь по кибернетике //Киев: Главная редакция Украинской Советской Энциклопедии имени М. П. Бажана, -1989.- 751 с.
2. Gottlieb, Allan; Almasi, George S. Highly parallel computing //Redwood City, Calif.: Benjamin/Cummings, -1989. – p. 256.
3. Самый быстрый способ разработать кросс-платформенные нативные приложения с гибкой поддержкой облачных сервисов и IoT [Электрон.ресурс]. – 2017.– URL: https://www.embarcadero.com/ru/products/rad-studio/features/design (дата обращения: 07.10.2017)
4. Новые возможности RAD Studio XE7 [Электрон.ресурс]. – 2016.– URL: http://cwer.ws, (дата обращения: 07.02.2017)
5. Как настроить Android и RAD Studio XE7 [Электрон.ресурс]. – 2015.– URL: https://habrahabr.ru/company/delphi/blog/253929 (дата обращения: 07.08.2017)
6. Карелхан Н., Шахманов С. Б. Орта мектепте информатика пәнінен факультатив ретінде оқытуға арналған С++ электрондық оқу басылымын құру. //Білімді ақпараттандыру халықаралық конференция жинағы. Л.Н. Гумилев атынлдағы ЕҰУ, -Астана, 2015, Б. 191-195
7. Nick Hodges. Coding in Delphi / Nepeta Enterprises.- 2014.-219 p.
8. Серік М., Зулпыхар Ж.Е., Шындалиев Н.Т., Бакиев М.Н. Параллель есептеулер (MatLab ортасы )//РУМС ұсынған. - Астана, 2014. - 93 б.