1 / 55

Objektno orijentirani programi, nastanak programa 3. Dio

(c) S.

Antony
Télécharger la présentation

Objektno orijentirani programi, nastanak programa 3. Dio

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. (c) S.utalo i D.Grundler, 2007. 1 C++ Objektno orijentirani programi, nastanak programa 3. Dio

    2. (c) S.utalo i D.Grundler, 2007. 2 Racunalne komponente Racunalo se sastoji od mnogo komponenti.

    3. (c) S.utalo i D.Grundler, 2007. 3 Racunalne komponente Pouzdanost i djelotvornost racunala ovisi o pouzdanosti i djelotvornosti svake od ugradenih komponenata.

    4. (c) S.utalo i D.Grundler, 2007. 4 Konstruktor racunala Kada bi se konstruktor racunala morao baviti unutarnjom gradom svake od sastavnih komponenti te poboljanjima njihove kvalitete i pouzdanosti, njegov bi se posao bitno povecao, a pouzdanost racunala smanjila.

    5. (c) S.utalo i D.Grundler, 2007. 5 Proizvodaci komponeneti Za olakanje rada konstruktoru racunala posao se dijeli, pa o gradi i pouzdanosti svake od komponenti brine njen proizvodac. Proizvodac pojedine komponente tehnoloki je specijaliziran ba za tu komponentu, pa su njegovi proizvodi kvalitetni i pouzdani.

    6. (c) S.utalo i D.Grundler, 2007. 6 Proizvodaci komponenti Komponente su normirane pa se mogu ugraditi u razlicite elektronicke uredaje to omogucava proizvodnju velikih serija i snienje cijena.

    7. (c) S.utalo i D.Grundler, 2007. 7 Konstruktor racunala Konstruktor koristi gotove komponente i ne mora poznavati unutarnju gradu svake od njih, dovoljno je da zna zadacu koju ta komponenta obavlja i nacin njezina spajanja s ostalim dijelovima racunala. To mu bitno olakava posao i omogucuje izradu pouzdanijih i djelotvornijih racunala.

    8. (c) S.utalo i D.Grundler, 2007. 8 Objekti Zamisao uporabe gotovih komponenti pri gradnji sloenih sustava primjenjena je i pri izradi programa. Programski se zadatak dijeli na manje dijelove koji se mogu neovisno rjeavati i provjeravati. Gotovi dijelovi programa nazivaju se objekti (engl. object). Objekti se mogu pisati i provjeravati odvojeno od cjeline i rabiti u razlicitim programima.

    9. (c) S.utalo i D.Grundler, 2007. 9 Objektno orijentirani program Programi koji koriste objekte nazivaju se objektno orijentirani programi (engl. OOP, object oriented programs). U objektno orijentirani program ugraduju se gotovi objekti. Ovakav nacin rada povecava djelotvornost programera i kvalitetu programa, a sniava cijenu izrade programa.

    10. (c) S.utalo i D.Grundler, 2007. 10 C++ Jezik C++ je jedan od objektno orijentiranih programa. Jezik je nastao osamdesetih godina 20.tog stoljeca. Autor jezika je Bjarne Stroustrup.

    11. (c) S.utalo i D.Grundler, 2007. 11 Inacice prevoditelja C++-a Na tritu postoji vie inacica prevoditelja jezika C++. Neke su komercijalne, a neke besplatne. Najpoznatije su: Microsoft Visual C++, Borland C++ Builder, Borland komandni C++prevoditelj, GNU djgpp. Javno dostupna programska podrka (http://www.gnu.org) nudi besplatni gcc prevoditelj. Prevoditelj se pokrece iz komandne linije, ali postoje dostupne i besplatne razvojne okoline koje se mogu povezati sa prevoditeljem. Verzije za razne platforme http://www.gnu.org/software/gcc/gcc.html Verzija za DOS zove se djgpp moe se skinuti sa adrese http://www.delorie.com/djgpp djgpp moe se koristiti i na Windows platformama, pokretanjem iz DOS/komandnog prozora. Prevoditelj po prevodenju i povezivanju stvara izvedbenu datoteku a.outJavno dostupna programska podrka (http://www.gnu.org) nudi besplatni gcc prevoditelj. Prevoditelj se pokrece iz komandne linije, ali postoje dostupne i besplatne razvojne okoline koje se mogu povezati sa prevoditeljem. Verzije za razne platforme http://www.gnu.org/software/gcc/gcc.html Verzija za DOS zove se djgpp moe se skinuti sa adrese http://www.delorie.com/djgpp djgpp moe se koristiti i na Windows platformama, pokretanjem iz DOS/komandnog prozora. Prevoditelj po prevodenju i povezivanju stvara izvedbenu datoteku a.out

    12. (c) S.utalo i D.Grundler, 2007. 12 Microsoft Visual C++ Osnove objektno orijentiranog programiranja bit ce pokazane pomocu programa Microsoft Visual C++.

    13. (c) S.utalo i D.Grundler, 2007. 13 Nastanak programa Nastanak programa moe se podijeliti na: pisanje izvornog koda, prevodenje izvornog koda, povezivanje u izvrni kod, provjeravanje programa.

    14. (c) S.utalo i D.Grundler, 2007. 14 Izvorni kod Kombinacijom naredbi programskog jezika nastaje izvorni kod (engl. source code). Izvorni je kod moguce pisati u bilo kojem programu za uredivanje teksta (engl. text editor). Danas se uglavnom programi za pisanje izvornog koda objedinjuju u cjelinu sa prevodiocem i povezivacem (integrirana razvojna okolina, IDE).

    15. (c) S.utalo i D.Grundler, 2007. 15 Datoteka izvornog koda Izvorni kod programa C++ sprema se u datoteku izvornog koda pod smislenim imenom i nastavkom *.cpp

    16. (c) S.utalo i D.Grundler, 2007. 16 Izvrni oblik Programi se mogu izvriti na racunalu samo ako su u binarnom obliku. Takav se oblik programa naziva izvrni oblik (engl. executable). Izvorni se kod mora prevesti u izvrni. Prevodi se pomocu programa koji se nazivaju prevoditelj (engl. compiler) i povezivac (engl. linker).

    17. (c) S.utalo i D.Grundler, 2007. 17 Prevodenje izvornog koda Program prevoditelj prevodi izvorni kod iz vieg programskog jezika u strojni oblik te provjerava sintaksu napisanog izvornog koda. Ako pronade pogreke (engl. compile-time error), ispisuje poruke i upozorenja o njima.

    18. (c) S.utalo i D.Grundler, 2007. 18 Prevodenje izvornog koda Otkrivene pogreke treba ispraviti pa ponovo pokrenuti program za prevodenje. Prevodenjem nastaje datoteka objektnog koda (engl. object code), nastavka *.obj.

    19. (c) S.utalo i D.Grundler, 2007. 19 Objektni kod Objektni kod nije izvrni program i ne moe se izravno izvriti na racunalu. Objektni kod je medukorak do izvrnog koda i uz ostalo omogucava ukljucivanje gotovih dijelova programa iz drugih datoteka.

    20. (c) S.utalo i D.Grundler, 2007. 20 Biblioteke Datoteke koje sadravaju gotove dijelove programa nazivaju se biblioteke (engl. libraries). Takvi se gotovi dijelovi programa mogu rabiti u drugim programima.

    21. (c) S.utalo i D.Grundler, 2007. 21 Biblioteke Kada se koriste biblioteke vie nije potrebno uvijek iznova zapisivati radnje (funkcije) koje se cesto rabe. Takve se radnje u program ukljucuju iz postojecih biblioteka. Npr. moe postojati biblioteka formula za izracunavanje povrina geometrijskih likova cije formule mogu rabiti drugi programi.

    22. (c) S.utalo i D.Grundler, 2007. 22 Povezivac Program koji povezuje objektnu datoteku s bibliotekama i drugim potrebnim datotekama naziva se povezivac (engl. linker). Ako se pri povezivanju pojavi pogreka (engl. link-time error), bit ce ispisana poruka o tome. Pogreku valja ispraviti pa ponovno pokrenuti prevodenje i povezivanje.

    23. (c) S.utalo i D.Grundler, 2007. 23 Povezivac Rezultat uspjenog povezivanja je izvrna datoteka (*.exe). U nacelu, izvrnoj datoteci nisu potrebni nikakvi dodaci pa se moe izvravati i bez izvornog programa, objektnih datoteka, prevoditelja, povezivaca itd.

    24. (c) S.utalo i D.Grundler, 2007. 24 Izvrna datoteka Izvrna datoteka je oblik programa i moe se izravno izvriti na racunalu za koji je prevedena. Primjerice IBM i Apple racunala su medusobno nesukladna (nekompatibilna, tj. nisu udruiva), pa se izvrni program preveden za IBM PC sukladno racunalo ne moe se izvriti na Macintosh racunalu i obrnuto.

    25. (c) S.utalo i D.Grundler, 2007. 25 Projekt Da bi se stvorila izvrna datoteka C++ programa potrebno je pokrenuti nekoliko programa (tekst editor, prevoditelj, povezivac). Kao posljedica nastaje vie datoteka koje su medusobno vezane.

    26. (c) S.utalo i D.Grundler, 2007. 26 Projekt Korisniku koji zadatak rijeava C++ programom neprakticno je pamtiti koje programe i kojim redoslijedom treba pokrenuti, te koje su sve datoteke potrebne za stvaranje izvrne datoteke. Stoga se korisniku posao olakava pomocu takozvanog projekta (engl. project).

    27. (c) S.utalo i D.Grundler, 2007. 27 Projekt Projekt je datoteka u kojoj su zapisane sve potrebne informacije o prevoditelju, povezivacu, datotekama, bibliotekama i ostalom potrebnom za izradu izvrne datoteke. Projekt dakle brine o svemu to je potrebno uciniti da bi od izvornog koda nastala datoteka izvrnog koda.

    28. (c) S.utalo i D.Grundler, 2007. 28 Pogreke Tijekom rada mogu se javiti tri vrste pogreaka: sintakticke pogreke (otkriva ih program prevoditelj), pogreke povezivanja (otkriva ih program povezivac), logicke pogreke (mora ih pronaci korisnik sam).

    29. (c) S.utalo i D.Grundler, 2007. 29 Provjera programa Za otkrivanje logickih pogreaka (onih koje dovode do pogrenih rezultata) potrebno je provjeriti program s podacima za koje je unaprijed poznat krajnji rezultat. Ispravljanje pogreaka nastalih u ovoj fazi (engl. run-time error) je najtee. Logicke pogreke otkriva i ispravlja covjek a ne racunalni program.

    30. (c) S.utalo i D.Grundler, 2007. 30 Microsoft Visual C++ Program Microsoft Visual C++ se pokrece na uobicajeni nacin: Start/Programs, Microsoft Visual Studio 6.0, Microsoft Visual C++ 6.0

    31. (c) S.utalo i D.Grundler, 2007. 31 Prozor programa

    32. (c) S.utalo i D.Grundler, 2007. 32 Novi projekt U prozoru New treba birati: Projects, Win32 Console Application. Nakon toga treba zadati ime projekta i mjesto pohrane.

    33. (c) S.utalo i D.Grundler, 2007. 33 Novi projekt

    34. (c) S.utalo i D.Grundler, 2007. 34 Pohrana U okvir Project name upisuje se ime projekta.

    35. (c) S.utalo i D.Grundler, 2007. 35 Pohrana

    36. (c) S.utalo i D.Grundler, 2007. 36 Novi projekt Ovdje je potrebno odabrati novi, prazni projekt, pa Finish.

    37. (c) S.utalo i D.Grundler, 2007. 37 Novi projekt Ovo su podaci o novootvorenom projektu koji jo uvijek ne sadri niti jednu datoteku.

    38. (c) S.utalo i D.Grundler, 2007. 38 C++ datoteka izvornog koda Da bi se stvorila nova datoteka izvornog koda potrebno je u pogledu FileView oznaciti stavku Source Files koja se nalazi pod nazivom projekta (prvi). Nakon toga File, New.

    39. (c) S.utalo i D.Grundler, 2007. 39 C++ datoteka izvornog koda U prozoru New treba birati: Files, C++ Source File. Nakon toga treba zadati ime datoteke.

    40. (c) S.utalo i D.Grundler, 2007. 40 Pohrana

    41. (c) S.utalo i D.Grundler, 2007. 41 C++ datoteka izvornog koda Stvorena je datoteka izvornog koda, nastavka *.cpp.

    42. (c) S.utalo i D.Grundler, 2007. 42 Datoteka izvornog koda Otvara se radno podrucje za unos izvornog koda.

    43. (c) S.utalo i D.Grundler, 2007. 43 Datoteka izvornog koda Unijeti sljedeci kod. (Znacenje koritenih naredbi bit ce pojanjeno u sljedecim vjebama.)

    44. (c) S.utalo i D.Grundler, 2007. 44 #include<iostream> using namespace std; int main() { cout<<"Puno uspjeha u ucenju!<<endl; return 0; }

    45. (c) S.utalo i D.Grundler, 2007. 45 Prevodenje i povezivanje Po unosu, kod je potrebno prevesti i povezati: Build, Build. ili birati za to predvideni gumb iz pripadajuce vrpce sa alatima.

    46. (c) S.utalo i D.Grundler, 2007. 46 Prevodenje i povezivanje Ako nije bilo pogreaka, u donjoj ce se plohi pojaviti poruka ovakva oblika:

    47. (c) S.utalo i D.Grundler, 2007. 47 Pogreke pri prevodenju Namjerno cemo pokvariti program da bi se vidjelo kako se pri prevodenju otkrivaju pogreke. Prethodni kod treba prepraviti kao u primjeru.

    48. (c) S.utalo i D.Grundler, 2007. 48 #include<iostream> using namespace std; int main() { cout<<"Puno uspjeha u ucenju!<<endl; return 0; }

    49. (c) S.utalo i D.Grundler, 2007. 49 Pogreke pri prevodenju Poto sada postoje pogreke bit ce ispisane poruke i upozorenja o njima. Uz svaku je pogreku ispisan, osim njenog opisa i broj retka u kojem je pogreka nastala.

    50. (c) S.utalo i D.Grundler, 2007. 50 Datoteka izvrnog koda Sve pogreke treba ukloniti. Nakon toga je potrebno ponovno pokrenuti prevodenje i povezivanje. Krajnji je rezultat datoteka izvrnog koda.

    51. (c) S.utalo i D.Grundler, 2007. 51 Datoteka izvrnog koda Datoteku izvrnog koda pokrece se: Build, Execute.

    52. (c) S.utalo i D.Grundler, 2007. 52 Pokretanje izvrne datoteke Pokretanjem izvrne datoteke otvara se DOS prozor (ili Command Prompt). U njemu se po potrebi upisuju ulazni podaci i ispisuje rezultat programa. U naem ce primjeru biti ispisano:

    53. (c) S.utalo i D.Grundler, 2007. 53 Projekt Posljedica stvaranja projekta:

    54. (c) S.utalo i D.Grundler, 2007. 54 Pokretanje izvrne datoteke Izvrnu se datoteku moe pokrenuti dvoklikom sa mjesta na koje je pohranjena. Moe se dogoditi da se DOS prozor u kome je ispisan rezultat zatvori prebrzo, pa korisnik ne moe procitati rezultat.

    55. (c) S.utalo i D.Grundler, 2007. 55 Problem prebrzog zatvaranja prozora Prebrzo zatvaranje DOS prozora moe se sprijeciti tako da se prethodni primjer dopuni na sljedeci nacin: Dopuna uvodi cekanje unosa znaka s tipkovnice prije nastavka izvodenja programa.

More Related