43
1 Izradba Izradba programa programa

PROG1 Izradba Programa

Embed Size (px)

DESCRIPTION

hgj

Citation preview

  • *Izradba programa

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. C++Jezik C++ je jezik ope namjene za profesionalnu uporabu.Jezik je nastao osamdesetih godina 20.tog stoljea. Autor jezika je Bjarne Stroustrup.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Inaice prevoditelja C++-aNa tritu postoji vie inaica prevoditelja jezika C++. Neke su komercijalne, a neke besplatne. Najpoznatije su:Microsoft Visual C++, Borland C++ Builder,Borland komandni C++prevoditelj,GNU djgpp.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Microsoft Visual C++Osnovni postupci programiranja u jeziku C++ pokazat e se pomou programa Microsoft Visual C++.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Izradba programaPostupak izradbe programa moe se podijeliti u etiri koraka:Pisanje izvornog koda.Prevoenje izvornog koda.Povezivanje u izvrni kod.Izvravanje i provjera programa.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Integrirana razvojna okruenjaPostoje posebni programi za svaki od navedenih koraka izradbe programa.Umjesto uporabe odvojenih programa, danas se uglavnom rabe integrirana razvojna okruenja (engl. integrated development environment, IDE).IDE objedinjuju programe za pisanje izvornog koda, prevoenje, povezivanje, pohranu, izvrenje i pronalazak pogreaka.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Datoteka izvornog programaZapisivanjem naputka za rjeavanje zadatka naredbama programskog jezika (kodiranjem) nastaje datoteka izvornog programa (engl. source code). Izvorni je kod mogue pisati u bilo kojem programu za ureivanje teksta (engl. text editor). Datoteka izvornog koda ima nastavak *.cpp

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Prevoenje izvornog kodaProgram prevoditelj prevodi izvorni kod iz simbolikog jezika visoke razine u objektni kod (meukorak do strojnog jezika) te provjerava sintaksu napisanog izvornog koda.Prevoenjem nastaje datoteka objektnog koda (engl. object code), nastavka *.obj.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Prevoenje izvornog kodaAko program prevoditelj pronae sintaktike pogreke (engl. syntax error), ispisuje poruke i upozorenja o njima.Otkrivene pogreke treba ispraviti pa ponovo pokrenuti program prevoditelj.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. PovezivanjeDatoteka objektnog koda nije izvrni (engl. executable) program i ne moe se izravno izvriti na raunalu.U izvrni je oblik pretvara program poveziva (engl. linker) povezujui objektnu datoteku s bibliotekama i drugim potrebnim datotekama.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. BibliotekeBiblioteke (engl. libraries) su datoteke koje sadre gotove, prevedene funkcije.Pod pojmom funkcije podrazumijeva se dio programa koji obavlja tono utvreni zadatak.Funkcije se mogu rabiti u drugim programima tako da ih se ukljui iz postojeih biblioteka.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. PovezivanjeAko se pri povezivanju pojavi pogreka (engl. link-time error), o tome e se ispisati poruka. Pogreku treba ispraviti pa ponovno pokrenuti prevoenje i povezivanje.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Izvrna datotekaRezultat uspjenog povezivanja je izvrna datoteka (*.exe). U naelu, izvrnoj datoteci nisu potrebni nikakvi dodaci pa se moe izvravati i bez izvornog programa, prevoditelja, povezivaa, biblioteka itd.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Izvrna datotekaIzvrna datoteka se moe izravno izvriti na raunalu za koje je prevedena.Primjerice IBM i Apple raunala su meusobno nesukladna (nekompatibilna), pa se izvrni program preveden za IBM PC sukladno raunalo ne moe izvriti na Macintosh raunalu i obrnuto.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Logike pogrekeTijekom rada se osim sintaktikih pogreaka i pogreaka povezivanja mogu javiti i logike pogreke.Za otkrivanje logikih pogreaka (engl. run-time error) potrebno je provjeriti program s podacima za koje je unaprijed poznat krajnji rezultat. Ispravljanje pogreaka nastalih u ovoj fazi je najtee.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. UpozorenjaOsim pogreaka, prevoditelj i poveziva mogu javiti i upozorenja (engl. warnings). Upozorenja ne spreavaju prevoenje, povezivanje i izvravanje programa ve ukazuju na dijelove programa koji u odreenim okolnostima mogu prouzroiti pogreku pa je stoga najbolje ukloniti njihove uzroke.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. ProjektDa bi se stvorila izvrna datoteka potrebno je pokrenuti nekoliko programa.Svaki od tih programa stvara nekoliko datoteka.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. ProjektProgrameru nije lako pamtiti koje sve radnje treba pokrenuti za stvaranje izvrne datoteke. Posao je znatno olakan rabi li se objedinjavanje svih datoteka vezanih za jedan program u projekt (engl. project).

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. ProjektProjekt je skup meusobno povezanih datoteka.Projekt "brine" o svemu to je potrebno uiniti da bi od izvornog kda nastala datoteka izvrnog kda.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Microsoft Visual C++Program Microsoft Visual C++ se pokree na uobiajeni nain:Start/Programs, Microsoft Visual Studio 6.0, Microsoft Visual C++ 6.0

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Prozor programaokvir poruka (engl. output).okvir alata (engl. toolbox).glavni prozor (engl. main window)

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Prozor programaNamjene okvira poruka i okvira alata ovise o trenutnom djelovanju programa i izabranim pripadajuim karticama.U okviru poruka se prikazuju razliite poruke koje govore npr. o tijeku prevoenja ili povezivanja. U okviru alata su obino smjeteni razliiti alati koji pomau pri izradi i prevoenju programa.U glavnom prozoru se npr. pie izvorni kod.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Novi projekt

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Novi projekt

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Novi projektU prozoru New birati:Projects, Win32 Console Application.Nakon toga treba zadati ime projekta i mjesto spremanja.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Spremanje projektaU okvir Project name upisuje se ime projekta.U okviru Location zadaje se mjesto spremanja. Biranje mjesta moe se pokrenuti gumbom

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Spremanje projektaProjekt nazvati prvi.Spremiti ga u vlastitu mapu Prezime koja je prethodno otvorena na radnoj povrini (Desktop).

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Novi prazni projektOvdje je potrebno odabrati novi, prazni projekt, a potom Finish.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Obiljeja novog projektaOvo su podaci o novootvorenom projektu koji jo uvijek ne sadri niti jednu datoteku. Sada treba stvoriti novu datoteku izvornog koda.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Nova datoteka izvornog kodaU pogledu FileView oznaiti stavku: Source Files koja se nalazi pod nazivom projekta (prvi). Nakon toga: File, New.

    123

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Nova datoteka izvornog kodaU prozoru New birati:Files, C++ Source File.Nakon toga zadati ime datoteke.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Spremanje datotekeDatoteku nazvati prvi.Zadrati postavljeno mjesto spremanja.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Datoteka izvornog kodaStvorena je datoteka izvornog koda, nastavka *.cpp.Otvara se radno podruje za unos izvornog koda.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Datoteka izvornog kodaUnijeti sljedei kod.(Znaenje koritenih naredbi bit e objanjeno u sljedeim vjebama.)

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Datoteka izvornog koda#includeusing namespace std;int main(){ cout
  • *(c) S.utalo i D.Grundler, 2009. PrevoenjePo unosu, kod je potrebno prevesti:

    Build, Compile.

    ili birati gumb za prevoenje iz pripadajue vrpce s alatima.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Pogreke prevoenjeTijekom prevoenja mogu se javiti sintaktike pogreke:

    O pogrekama se ispisuju poruke (opis i broj retka u kojem je pogreka nastala). Potrebno ih je ispraviti pa ponovo pokrenuti prevoenje.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. PovezivanjeNakon prevoenja potrebno je pokrenuti povezivanje:Build, Build.

    ili birati gumb za povezivanje iz pripadajue vrpce sa alatima.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Pogreke povezivanjaTijekom povezivanja mogu se javiti pogreke:

    Potrebno ih je ispraviti pa ponovo pokrenuti prevoenje i povezivanje.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Izvrna datotekaNakon uklanjanja sintaktikih pogreaka i pogreaka povezivanja, prikazuje se poruka o nastanku izvrne datoteke.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Pokretanje izvrne datotekeIzvrna se datoteka pokree:Build,Execute.Ili gumbom za pokretanje (izvravanje programa) iz pripadajue vrpce sa alatima.

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Pokretanje izvrne datotekePokretanjem izvrne datoteke otvara se DOS prozor (ili Command Prompt).U njemu se po potrebi upisuju ulazni podaci i ispisuje rezultat programa.U naem e primjeru biti ispisano:

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. ProjektPosljedica stvaranja projekta:

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Pokretanje izvrne datotekeIzvrnu se datoteku moe pokrenuti dvoklikom sa mjesta na kojem je pohranjena.

    Moe se dogoditi da se DOS prozor u kome je ispisan rezultat zatvori prebrzo, pa korisnik ne moe proitati rezultat!

    (c) S.utalo i D.Grundler, 2009.

  • *(c) S.utalo i D.Grundler, 2009. Prebrzo zatvaranje prozoraPrebrzo zatvaranje DOS prozora moe se sprijeiti tako da se prethodni primjer dopuni na sljedei nain: Nakon dopune program eka unos znaka s tipkovnice prije nastavka izvoenja.

    (c) S.utalo i D.Grundler, 2009.

    **Javno dostupna programska podrka (http://www.gnu.org) nudi besplatni gcc prevoditelj.Prevoditelj se pokree 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.htmlVerzija za DOS zove se djgpp moe se skinuti sa adrese http://www.delorie.com/djgppdjgpp moe se koristiti i na Windows platformama, pokretanjem iz DOS/komandnog prozora.Prevoditelj po prevoenju i povezivanju stvara izvedbenu datoteku a.out******************************************