Mühazirə 1 Giriş Əsas anlayışlar. "Məlumat"



Yüklə 0,95 Mb.
səhifə29/54
tarix02.05.2022
ölçüsü0,95 Mb.
#56812
növüMühazirə
1   ...   25   26   27   28   29   30   31   32   ...   54
mühazirə struktur

Məhsulun markası


Il

Miqdarı (min ton)

AI-83

2003

19

AI-83

2004

25

AI-83

2005

27

AI-93

2003

32

AI-93

2004

35

AI-93

2005

36

AI-95

2004

15

AI-95

2005

16


b)


Məhsulun markası


2003

2004

2005

AI-83

20

25

28

AI-93

30

35

37

AI-95

Nul

15

17

Şəkil 6.3. Verilənlərin relyasiya (a ) və çoxölçülü (b) təsviri
Verilənlərin statikliyi verilənlərin və onlar arasındakı əlaqələrin yüksək səviyyədədəyişməzliyini və onların vaxtla baclılıcını nəzərdə tutur. Verilənlərin statikliyi onların emalında xüsusiləşdirilmiş, saxlam a, yükləmə seçmə və indeksləşdirmə metodlarından istifadə etməyə imkan verir.
Verilənlərin aqreqatlaşması-onların müxtəlif səviyyələrdə ümumiləş-dirilməsinə imkan verməkdeməkdir. Təqdim edilən informasiyanındetallaşdırılmadərəcəsi müxtılif informasiya sistemlərində istifadəçinin səviyyəsindən asılı olur, məsələn: istifadəçi- rəhbər , istifadəçi-operator, istifadəçi-analitik, istifadəçi-idarəedici.
Verilənlərin təsviri və emalı zamanı onların strukturunun çoxölçülü məntiqi təsviri - verilənlərin modelinin çoxölçülüyüdeməkdir. Relyasiya modeli ilə müqayisədə verilənlərin çoxölçülü təşkilidaha artıq əyaniliyə və informativliyə malik olur. Nümayiş üçün şəkil 6.3-də neftayırma zavodunda illər üzrə məhsul istehsalına aid eyni verilənlərin relyasiya (a) və çoxölçülü (b) modellərlə təsviri göstərilmişdir.

Əgər iki ölçüdən daha artıq çoxölçülü modeldən söhbət gedirsə, informasiyanın vizual olaraq çoxölçülü obyektlər formasında (üç,dörd vədaha böyük ölçülü hiperkublarla) təsviri vacibdeyil. Belə hallarda istifadəçiyə yalnız ikiölçülü qrafiklər və ya cədvəllərlə işləməkdaha əlverişlidir. Bu zaman verilənləri müxtəlifdetallaşdırmadərəcəsi ilə hazırlanan «kəsiklər»lə təsvir etmək olar.

Verilənlərin çoxölçülü modellərinin əsas anlayışlarına baxaq.



Ölçü (Dimension)-hiperkubun bir üzünü təşkil edən eyni tipli verilənlər çoxlucudur. Ən çox istifadə edilən zamanla əlaqəli ölçülərinə misal olaraq Günləri, Ayları, Kvartalları və Illəri göstərmək olar. Cocrafi ölçülər kimi Rayonlar, Şəhərlər, Ölkələr, Ərazilər geniş tətbiq olunur. Çoxölçülü modeldə ölçü hiperkubun xanalarındakı konkret qiymətləri təyin edən indeks rolunu oynayırlar.

Obyektyönümlü model


Obyektyönümlü proqramlaşdırmadillərindəki uycun vasitələrə VB-nin yazıları ilə onların emalı funksiyaları arasında oxşar mexanizmlərin köməyilə qarşılıqlı əlaqələr qurulur. Obyektyönümlü model ilə verilənlərin təsvirində VB-nin ayrı-ayrı yazılarını təyin etmək mümkün olur.

Obyektyönümlü model Objectdatabase Management Group-93 (ODMG) - Obyektyönümlü verilənlər bazasının idarə olunması üzrə qrup standartının tövsiyyələrində standartlaşdırılmış olaraq şərh olunur. ODMG-93 standartının tövsiyyələrini tam şəkildə reallaşdırmaq hələ ki mümkün olmamışdır. Obyektyönümlü modelin ideyalarını dəqiq nümayiş etdirmək üçün obyektyönümlü VB-nin sadələşdirilmiş modelində iş prinsipinə baxaq.

Qrafiki olaraq hər bir təpəsi müxtəlif obyekt olan acac köməyi ilə obyektyönümlü VB-nin strukturunu təsvir etmək mümkündür. Obyektlərin xassələri isə hər hansı mövcud standart tiplə (məsələn, String- sətir) və ya istifadəçi tərəfindən «class» (sinif) kimi təyin edilə bilən bir obyekt tipi ilə təsvir olunur.

«String» tipli belə xassənin qiyməti simvollardan ibarət bir sətr ola bilər. Uycun sinfin nüsxəsi olan obyekt «Class» tipli xassənin qiymətidir. Həmin obyekt Class-da göstərilən bütün xassələrə malik olan obyektin törəməsi, oxşarı hesab olunur. Hər bir obyekt – yəni sinfin nüsxəsi öz sinfinə mənsub olub, bir valideyn sinfə malikdir. Obyektlərin iyerarxik əlaqələri VB-də cədvəllərin qohumluq munasibətlərini təşkil edir.

Xarici görünüşünə görə obyektyönümlü VB-nin məntiqi strukturu iyerarxik VB-nin məntiqi strukturuna oxşayır. Onlar verilənlərin emalı metodları ilə fərqlənir. Polimorfizm, varislik inkapsulyasiya və mexanizmləri ilə gücləndirilmiş məntiqi əməliyyatlardan obyektyönümlü VB-nin verilənlərinin emalında tətbiq olunur. Müəyyən məhdudluqlarla SQL operatorlarına oxşar əməliyyatlarda tətbiq edilə bilər (məsələn, VB-nin yaradılması üçün).

VB-nin yaradılması və modifikasiyası, verilənlərin axtarışını sürətləndirmək üçün tətbiq edilən indeks cədvəllərinin avtomatik tərtib və təshih edilməsi ilə müşayiət olunur.



Polimorfizm eyni proqram kodunun müxtəlif tipli obyektlərlə işləyə bilməsini təmin edən bir xassədir. Başqa sözlə, polimorfizm eyni adlı metodların müxtəlif tip obyektlərdə olmasını mümkün edir. Obyektyönümlü proqramın icrası zamanı arqumentin tipindən asılı olaraq eyni metodlar müxtəlif obyektlərlə onlara uyğun əməliyyat aparır.

Varislikdə isə, əksinə, obyektin xassələrinin görünmə sahəsini bütün varislər üçün genişləndirir. Əgər varislik mexanizminin təsir sahəsinin bilavasitə qohum olmayan obyektlər üçündə genişlənməsi tələb olunursa, onda həmin obyektlərin ümumi valideyni olan obyektdə «abs» tipli mücərrəd xassə təyin edilir.
Inkapsulyasiya xassənin adının görünmə sahəsini, ona müdaxiləni həmin xassənin aid olducu sinfin sərhədləiridairəsində məhdudlaşdırır. Buna aid nümunəyə nəzər salaq

public class Employee{

private String name;

private String surname;

private int age;

public String getName() {

return name;

}

public void setName(String name) {



this.name = name;

}

public String getSurname() {



return surname;

}

public void setSurname(String surname) {



this.surname = surname;

}

public int getAge() {



return age;

}

public void setAge(int age) {



this.age = age;

}

public class MainClass {



public static void main(String[] args) {

Employee emp = new Employee();

emp.setName("Fuad");

emp.setAge(25);

System.out.println(emp.getName() + " " + emp.getAge());

}

}


İstifadəçinin sorcuda göstərdiyi obyektlə VB-də saxlanan obyekt arasındakı oxşarlıcı müəyyənləşdirməklə obyektyönümlü VB-də axtarış həyta keçirilir. Istifadəçinin təklif etdiyi və «məqsəd» adlandırılan obyekt (xassəsi «goal» tipi ilə təyin edilir). Bu ümumi halda VB-də saxlanan bütün obyektlər iyerarxiyasının alt çoxlucu ola bilər. Sorcunun nəticəsi və obyekt-məqsəd VB-nin özündə saxlana bilər.

Obyektlərin mürəkkəb əlaqələri haqqında informasiyani əks etdirmək imkanının olması verilənlərin obyektyönümlü modelinin relyasiya modeli ilə müqayisədə üstünlüyünü göstərir. Obyektyönümlü model imkan verir ki, VB-nin ayrı-ayrı yazıları və onların emalı funksiyaları təyin edilsin.

Obyektyönümlü modelin çatışmazlıcı isə onun strukturunun mürəkkəbliyindən, eləcə də, verilənlərin emalının rahat olmamasından və sorcuların yerinə yetirilmə müddətinin yüksək olmasından ibarətdir.

90-cı illərdə obyektyönümlü verilənlər bazalarının yalnız eksperimental protipləri mövcud idi. Hazırda bu tip sistemlər geniş yayılmışdır. Misal olaraq Iris, ODB-Jupiter, Orion, POET (POET Softcare firması), Versant (Versant Technologies),Jasmine (Computer Associates), Postyres, O2 (Ardent Softcare) sistemlərini göstərmək olar.


Mühazirə 11

Əsas alqoritmlər



  • Alqoritm — verilmiş məsələni həll etmək üçün ilkin verilənlərlə icra olunan hesabi və məntiqi əməliyyatların sonlu sayda ardıcıllığıdır.

  • Latınca qayda-qanun deməkdir.

  • Alqoritm 783 - 850-ci illərdə Xarəzmdə (indiki Özbəkistanda şəhər) yaşamış IX əsrin məşhur fars riyaziyyatçısı Məhəmməd İbn Musa əl-Xarəzminin (yəni Xarəzmli Musa oğlu Məhəmmədin) adının latın hərflərilə olan "alqoritmi" yazılışıyla bağlıdır.

  • Əl-Xarəzminin yazdığı traktatın XII əsrdə latın dilinə tərcümə olunması sayəsində avropalılar mövqeli say sistemi ilə tanış olmuş, onluq say sistemini və onun hesab qaydalarını alqoritm adlandırmışlar.

  • Ümumiyyətlə, alqoritm-verilmiş məsələnin həlli üçün lazım olan əməliyyatları müəyyən edən və onların hansı ardıcıllıqla yerinə yetirilməsini göstərən formal yazılışdır. Hesablama maşınlarının əsas fərqləndirici xüsusiyyətlərindən biri də onun proqramla idarə olunmasıdır. Yəni, istər sadə, istərsə də mürəkkəb məsələni maşının həll etməsi üçün proqram tərtib edilməlidir.

  • Alqoritmik problemlərdə ümumiliyi pozmadan həmişə arqumentləri mənfi, olmayan tam qiymətlər alan funksiyanın mənfi olmayan tam qiymətlərinin tapılmasından söhbət gedir. Ümumiliyi pozmadan bunu həmişə qəbul etmək olar. Qiyməti müəyyən alqoritm vasitəsilə tapılan funksiyalara hesablanan funksiyalar deyilir. Bu tərif intuitivdir. Dəqiq riyazi deyil. Çünki burada alqoritm anlayışından istifadə olunur. Arqumentlərinin heç də hamısında təyin olunmayan funksiyalar, yəni arqumentlərinin müəyyən hissəsində təyin olunmuş funksiyalara qismən funksiyalar deyilir. Qiyməti hər hansı alqoritmin tətbiqi ilə tapıla bilən qismən funksiyalara hesablanan qismən funksiyalar deyilir. Bu vaxta qədər məlum bütün hesablanan qismən funksiyalar məlum olmuşdur ki, qismən rekursiv funksiyalardır. Rekursiv funksiyaların isə ciddi riyazi tərifi var. Bundan sonra biz funksiya dedikdə ilkin verilənlər üzərində müəyyən əməllər ardıcıllığı, yığımı başa düşəcəyik. Deməli, bizə məlum olan alqoritmin hər birinə biz müəyyən funksiya kimi baxa bilərik. Klini belə bir tezisi irəli sürmüşdür ki, alqoritmik hesablanan qismən funksiyalar sinfi ilə qismən rekursiv funksiyalar sinfi üst-üstə düşür. Qeyd edək ki, hesablanan qismən funksiyaların tərifi intuitiv olduğu halda qismən rekursiv funksiyaların tərifi dəqiq riyazi şəkildə verilir. Klinidən bir qədər əvvəl Çerç belə bir tezis vermişdir ki, hər yerdə təyin olunmuş hesablanan qismən funksiyalar sinfi ilə qismən rekursiv funksiyalar sinfi eynidir. Bu iki tezis birləşdirilib Klini-Çerç tezisi adı ilə verilir. Tezisin əhəmiyyəti ondan ibarətdir ki, hər hansı problemi əks etdirən funksiyaların rekursiv funksiyalar tərifini ödədiyini bilsək onun həll alqoritminin olduğu birbaşa aydındır. Lakin o, problemi əks etdirən funksiya rekursiv funksiya tərifini ödəmədikdə deyirik ki, Klini-Çerç tezisinə görə həmin məsələnin həll alqoritmi yoxdur. Beləliklə, rekursiv funksiya anlayışını verməliyik. Onun tərifini və xassələrini göstərməklə, alqoritmin tərifini dəqiqləşdirmək olar. Alqoritmin tərifini dəqiqiləşdirmək üçün yuxarıdakı birinci yanaşmadır.

Əsas Alqoritmlər

  • Axtarış və Sıralama Alqoritmləri

  • Ədədlər Nəzəriyyəsi

  • Sadə Ədədlər üçün alqoritmlər

  • Qraflar

  • ƏBOB-ƏKOB hesablanması

  • Dinamik Proqramlaşdırma

  • Ağac, Stek, Növbə, siyahı və s.

Məşhur Sıralama Alqoritmləri



  • Bubble Sort

  • Selection sort

  • Insertion sort

  • Merge Sort

  • Quick Sort

  • Radix Sort

  • Bucket Sort və s.



Yüklə 0,95 Mb.

Dostları ilə paylaş:
1   ...   25   26   27   28   29   30   31   32   ...   54




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin