1 / 22

ADA

ADA. Ajalugu. Põlvneb Pascalist 1960ndatel ja 70ndatel DoD kasutas kuni 2000 erinevat programmeerim i skeelt Iga keel sobis vaid mingiks kindlaks otstarbeks Vaja oli keelt, mis sobiks kõikjale Korraldati võistlus uue keele loomiseks, mille võitis keel, mida hiljem hakati kutsuma „Ada“ks.

Download Presentation

ADA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ADA

  2. Ajalugu • Põlvneb Pascalist • 1960ndatel ja 70ndatel DoD kasutas kuni 2000 erinevat programmeerimiskeelt • Iga keel sobis vaid mingiks kindlaks otstarbeks • Vaja oli keelt, mis sobiks kõikjale • Korraldati võistlus uue keele loomiseks, mille võitis keel, mida hiljem hakati kutsuma „Ada“ks

  3. Ajalugu (2) • 1979 DoD dokumenteeris „Ada“ • 1983 keel standartdiseeriti ja nimeks sai „Ada 83“ • Lisandus osaline OOPi tugi • DoD kontrollis algselt kõiki kompilaatoreid • 1987 see muutus, kui DoD lasi keele avalikuks • Aastaks 1990 oli olemas juba üle 200 kompilaatori

  4. Ajalugu (3) • 1995 uus standard ja keel sai nimeks „Ada 95“ • Esimene rahvusvaheliselt standardiseeritud objekt-orienteeritud keel • Pakub liideseid keeltele C, FORTRAN, COBOL

  5. Kompilaatorid • GNAT on peamine „Ada 95“ kompilaator ja vabalt saadaval • Toetatud platvormid: SunOS/Solaris, Linux, NetBSD, SGI IRIX, IBM's AIX, DEC's Digital Unix, WinNT, Win95, MacOS, DOS („EZ2Load“)

  6. Süntaks (1) • 'Põlvneb Pascalist ja on C nõbu' • Struktueeritud keel, moodulid • Sektsioonide paiknemine vaba • Tugev tüübikontroll • Erindid

  7. Süntaks (2) with Paketi_nimi; use Paketi_nimi; procedure Programmi_nimi is -- alamprogrammid procedure AlamProgramm1( Muutuja1, Muutuja2, ... : in Sisend_Tüüp, Muutuja2_Tüüp, ... out Tagastus_Tüüp) is Muutuja : Tüüp begin Käsud; end AlamProgramm1; -- järgmised alamprogammid

  8. Süntaks (3) -- programm Muutuja : Tüüp (:= väärtus); begin Muutuja := Alamproramm1(Param1, Param2, ...); end Programmi_nimi;

  9. Süntaks (4) Muutujad • Loomine Muutuja : Tüüp := Väärtus • Väärtustamine Muutuja := väärtus

  10. Süntaks (5) If if tingimus1 then tegevused1; elsif tingimus2 then tegevused2; else if tingimus3 then tegevused3; else tegevused4; end if; end if;

  11. Süntaks (6) Case Case muutuja is when väärtus1 => tegevused1; when väärtus2 => tegevused2; when others => tegevused3; end case;

  12. Süntaks (6) Loop Loop if tingimus then exit; end loop; for Muutuja in algus .. lõpp loop tegevused; end loop; while Tingimus loop tegevused; end loop;

  13. Süntaks (7) Erindid Procedure Programm is muutujad; begin tegevused; exception when Mingi_Erind1 => tegevused; when Mingi_Erind2 => tegevused; end Programm;

  14. Süntaks (8) Teksti IO With Ada.Text_IO; use Ada.Text_IO; Procedure Programm is Sisend : String(1..pikkus); begin Put_Line(„Sisesta midagi:“); Get(Sisend); New_Line; Put(Sisend (1..pikkus)); Put_Line(„ - sinu sisestus“); end Programm;

  15. Süntaks (9) Operaatorid • +, -, *, /, ** • =, /=, <, <=, >, >= • Rem, mod, abs • And, or, xor, not

  16. Süntaks (10) Andmetüübid • Integer • Character • Long • Boolean • String • Enda poolt defineeritud

  17. Süntaks (11) Jadad Array_muutuja : array (1..lõpp) of tüüp; begin for Muutuja in 1..lõpp loop Array_Muutuja(Muutuja) tegevused; end loop; -- multidimensionaalne näide Array_muutuja : array (1..3) of String (1..3) := („QWE“, „SAD“, „RTY“); -- Array_muutuja(2)(1) tagastab „S“ tähe

  18. Lisaks • Preprotsessori käsud • OOP • Klassid • Pärimine • Isendi ja klassi muutujad ning funktsioonid • Ligipääsu piirangud jne. • Puudu mitmekordne pärimine

  19. Tulevik • Pideva standardiseerimis protsessi ühe osana vaadatakse keelt pidevalt üle • Hetkel on tekkinud suur hulk ettepanekuid keele muutmiseks • Need loodetakse sisse viia aastaks 2005 - „Ada 2005“ • Eesmärgiks on vähendada piiranguid, suurendada olemasolevaid võimalusi ning lisada uusi

  20. Tulevik (2) • Eeldefineeritud pakettide arvu suurendamine ja ühtlustamine • Objekt-orienteerituses on ettepanek lihtsustatud kujul mitmekordse pärimise sisseviimiseks

  21. Programminäited Mõned ADAs kirjutatud programmid

  22. Täname

More Related