Obyektyönümlü proqramlaşdırma -
Obyektyönümlü vizual proqramlaşdırmanın əsasları
Visual Basic və Visual Basic for Applications adlı obyekt-istinad proqramlaşdırma dillərində yazılmış proqram əlavələri obyektlərdən qurulur. Hazır obyektlər bir proqram kitabxanası təşkil edir ki, həmin kitabxana sözügedən proqramlaşdırma sistemlərinin tərkibinə daxildir.
Obyekt-istinad proqramlaşdırma sistemləri hazırlanacaq proqram əlavəsinin qrafik interfeysini yaratmağa, yəni prosesi vizuallaşdırmağa, gözlə görünən etməyə imkan verir.
Çünki bu sistemlər özlərinin dialoq pəncərəsinin köməyi ilə obyekt yaratmağa və ona müəyyən xassələr verməyə imkan yaradır.
Proqram obyektlərinin qarşılıqlı fəaliyyəti və dəyişməsi proqram kodu ilə təsvir edilir. Proqram kodları xətti, budaqlanan və dövr quruluşlarından istifadə edilməklə hazırlanır. Beləliklə, obyektlər həmin alqoritmik strukturların icraçısına çevrilirlər.
Obyekt sinifləri, sinif nüsxələri və obyekt ailələri
Obyekt-istinad proqramlaşdırmasının əsas vahidi proqram obyektidir ki, bu da obyektə aid verilənləri (xassələri) və həmin verilənlərin işlənməsi vasitələrini (metodları) özündə birləşdirir. Obtekt – isim, xassə - sifət, metod – feil kimidir. Proqram obyektləri xassələrə malikdir, metodlardan istifadə edə bilir və hadisələrə reaksiya verir.
Obyekt sinifləri. Obyekt sinifləri xassələr, metodlar və hadisələr yığımını müəyyən edən şablonlardır. Obyektlər həmin şablonlar üzrə yaradılır. Visual Basic dilində proqram əlavəsinin qrafik interfeysini reallaşdıran obyekt sinifləri əsasdır. VBA dilində yüzdən artıq müxtəlif obyekt siniflərindən istifadə edilir ki, bunlar da Windows&Office mühitində mövcuddur. Hər iki dildə əlavə proqram obyektləri kitabxanalarını və proqramçının özü tərəfindən yaradılmış obyekt siniflərini daxil etmək imkanı vardır. Hər bir obyektlər sinfi özünəməxsus xassələr, metodlar və hadisələr yığımına malikdir. Məsələn, Word –də
―sənəd‖ obyektlər sinfi mövcuddur ki, bu da aşağıdakı yığımları özündə birləşdirir: xassələr: ad (Name), tam ad (Full Name) və s;
metodlar: sənədi: aç (Open), çap et (PrintOut), saxla (Save) və s;
hadisələr: sənədin açılması (Document_New()), sənədin bağlanması (Docu- ment_Close()) və s.
Sinif nüsxələri. Obyekt sinifləri şablonu üzrə yaradılmış obyekt sinif nüsxəsi adlanır və verilmiş sinfə aid bütün xassə, metod və hadisə yığınlarına varis olur. Hər bir nüsxə verilmiş sinif üzrə unikal (təkrar olunmayan) ada malik olur. Məsələn, Document (―Azər.doc‖).
Bütün sinif nüsxələri eyni xassələrə malik olsalar da xassələrinin qiymətləri fərqli olur. Məsələn, Word-də Document sinfinə aid olan müxtəlif disklərdə, müxtəlif kataloqlarda, müxtəlif adlı bir neçə sənəd açılmış ola bilər:
Obyektin adı
Obyektin xassələri və onların qiymətləri
|
FullName (tam adı)
|
Path (yol)
|
Azər.doc
|
C:\Kurs\Azər.doc
|
C:\Kurs\
|
Azər.txt
|
D:\ Azər.txt
|
D:\
|
Göründüyü kimi, Azər.doc C: diskində, Kurs kataloqunda, Azər.txt obyekti isə D: diskində kök kataloqda yerləşir.
Obyekt ailələri. Bir sinfə aid olan açılmış obyektlər bir ailə yaradır. Ailə Documents () kimi işarə edilir. Ailədəki obyektə müraciət ad və ya indeks vasitəsilə həyata keçirilir. Adla müraciət: Documents (―Azər.doc‖)
Sənədin ayrılmış fraqmentinə daxil olan bütün simvollar (Selection obyekti) Characters () ailəsinə daxildir. Simvola müraciət onun indeksi vasitəsi ilə həyata keçirilir: Characters (7).
Obyektlər: xassələr, metodlar, hadisələr
Obyektlərin xassələri (Properties). Hər bir obyekt müəyyən xassələr yığımına malik- dir ki, bunların da başlanğıc qiymətlərini dialoq pəncərəsindən təyin etmək mümkündür.
Xassənin qiymətini proqram kodunda da dəyişmək olar. Bunun üçün: Obyekt.Xassə = QiymətXassə təlimatına əməl etmək lazımdır. Məsələn, fərz edək ki, mətnin ayrılmış fraqmentində (Selection obyekti) birinci simvol (Characters (1) obyekti) yarımqalın olmalıdır, yəni Bold xassəsi verilməlidir. Bold xassəsi verilərkən xassənin qiyməti True, əks halda False olacaqdır. Simvola Bold xassəsinin verilməsi üçün: Selection.Characters (1). Bold = True yazmaq lazımdır.
Adətən obyektin bir neçə xassəsi olur. With…End With təlimatından istifadə etməklə, obyektə bir neçə xassəni bir dəfəyə mənimsətmək olar. Bunu etmək üçün:
With Obyekt
.Xassə1 = QiymətXassə1
.Xassə2 = QiymətXassə2
...
.XassəN = QiymətXassəN
End With
yazmaq kifayətdir.
Məsələn, 10 simvoldan ibarət olan ayrılmış mətn fraqmentinə ―yarımqalın kursiv‖ vermək üçün aşağıdakı proqram kodundan istifadə etmək olar:
For I=1 to 10
With Selection.Characters (I)
.Bold = True
.Italic = True End With
Next I
Obyekt metodları (Methods). Obyektin hər hansı əməli icra etməsi üçün onun malik olduğu metodlardan biri tətbiq edilməlidir. Bir çox metodlar icra ediləcək əməliyyatların parametrlərini daxil etməyə imkan verən arqumentlərə malikdir. Arqumentlərə konkret qiymət vermək üçün := işarəsindən, arqumentləri bir-birindən ayırmaq üçün isə vergüldən istifadə edilir. Metoda da, xassəyə müraciət edildiyi kimi, nöqtəli notasiya97 ilə müraciət edilir, yəni, metod sözündən əvvəl nöqtə qoyulur:
Obyekt.Metod arq1:=qiymət, arq2:=qiymət
Məsələn, açılmış Word sənədinin diskdə saxlanması üçün arqumentsiz Save
metodundan istifadə edilir: Documents (―Azər.doc‖).Save Word sənədini açmaq üçün:
Documents ().Open FileName:=‖C: \Kurs\Azər.doc‖ yazmaq, yəni, yolu da göstərmək lazımdır.
Azər.doc sənədinin ilk 3 səhifəsini çap etmək üçün bir-neçə arqumentli PrintOut metodundan istifadə edilir. Bu halda Range (çap diapazonunun formatını verir), From və To (çap ediləcək başlanğıc və son səhifələrin nömrələrini) arqumentləri daxil edilməlidir:
Documents (―Azər.doc‖).PrintOut Range:=wdPrintFromTo, From:=‖1‖, To :=‖3‖
Yəni, qrafik interfeysin ―çap‖ dialoq pəncərəsində 1-3 yazmaqla sənədin ilk 3 səhifəsi çap edilir.
Hadisələr (Events). Hadisə obyektin tanıdığı əməldir. Hadisə istifadəçi tərəfindən (məsələn, klaviatura düyməsini basmaqla) və digər proqram obyektlərinin təsiri ilə
97 Şərti yazılı işarələr sistemi
yaradıla biləndir. Hadisəyə reaksiya (cavab) vermək üçün obyektin xassələrinin qiymətini dəyişən, metodları çağıran və s. prosedurlardan istifadə edilir. Məsələn, Document (sənəd) obyekti Open (açmaq), New (yaratmaq) və Close (bağlamaq) hadisələrinə, Selection (sənədin ayrılmış fraqmenti) obyekti isə Cut (kəsmək), Copy (üzköçürmə), Paste (yapışdırma), Delete (Silmə) və s. hadisələrə reaksiya verir.
Dostları ilə paylaş: |