Uvod u programiranje - matematika – XII predavanje Moduli. OOP

Slides:



Advertisements
Сличне презентације
[napisati ime inovacije]
Advertisements

Računarstvo i informatika
ARITMETIČKO LOGIČKA JEDINICA
Građevinski fakultet u Beogradu, školska 2018/19 godina
Data mining Izdvajanje informacije iz skupa podataka i transformacija u jasnu strukturu za buduće korišćenje Data Mining koristi/prati isti opšti pristup.
Програмски језик Parallaxis
Olivera Hrnjaković, Marko Tot, Aleksandar Kupusinac, Rade Doroslovački
Рад са листама. Рад са хипервезама
Показивачи у програмском језику C Дамјан Илић; Е32 Габриела Миленковић
Primjena programiranja u nastavi matematike
Показивачи.
Uvod u funkcije Kolegij: Programski jezik C++ Ak. god. 2018/19
Nastavna jedinica: 4.4. Jezik HTML 4.5. Oznake i parametri HTML jezika
LabVIEW Kratak opis softvera
ANALITIČKA METODA ZA KINEMATIČKU ANALIZU – METODA KOMPLEKSNOG BROJA
3. 4. Дизајн статичких веб страна
BREGASTI MEHANIZMI.
Novi standard za poslovanje – Zašto Cloud tehnologija?
VEDSKA MATEMATIKA (Trikovi lakšeg računanja) 
UVOD, STRUKTURNA ANALIZA
Елементи на програмски јазици
OSNOVNI ELEMENTI PLC KONTROLERA
Uvod o webu.
VJEŽBA složenie naredbe.
ПРИКАЗ ИЗБОРНОГ ПРЕДМЕТА: ЕЛЕМЕНТИ ТЕОРИЈЕ АЛГОРИТАМА
Uvod u programiranje - matematika – VI predavanje Petlje. FOR. WHILE
Nastavna cjelina: 1. Osnove IKT-a
5 NAREDBE.
Dinamičke strukture podataka
Osnove pseudo jezika operatori, funkcije
Python 8. razred Miodrag Maksimović.
Оператори и изрази Аритметички оператори Оператори на нивоу битова
Primena softvera u usvajanju strategija samoregulacije
OSNOVE PROGRAMIRANJA U VISUAL BASIC-U predavanje 6: kolekcija selektovanih objekata Blok, atributi, automatsko kreiranje linije i kružnice Replace this.
Uvod u programiranje - matematika – VIII predavanje
Naredba case Komanda "Select Case" se koristi kada u izrazu imamo više uslova. U sledećem primjeru prikazano je korištenje naredbe “If - else“ Izraz postaje.
PyGame.
Спецификатори Иницијализација
CIKLIČNE ALGORITAMSKE STRUKTURE
Kreiranje događaja.
Uskladištene procedure
A evo kako je trebalo.....
Uvod u programiranje - matematika – XII predavanje
Podaci.
Logički sklopovi Zadaci.
PROJEKTOVANJE RAZGRANATE ALGORITAMSKE STRUKTURE
CIKLIČNE ALGORITAMSKE STRUKTURE
Uvod u programiranje - matematika – V predavanje
BAZE PODATAKA.
JEZIK RAČUNALA: bit i bajt
Пример.
Увод у објектно оријентисано програмирање
UPRAVLJANJE OSNOVNIM SREDSTVIMA SA POSEBNIM OSVRTOM NA DALEKOVODE
Osnovna Struktura programa
Tipkovnica engl. Keyboard.
Relacione baze –primer modelovanja baze
Programski jezici.
Програмски језик Parallaxis (2)
Структура програма у Паскалу
Logičko projektovanje računarskih sistema 2
Logičko projektovanje računarskih sistema 2
Programiranje za Internet
Prof. dr Vlado Simeunović OSNOVE RAČUNARSKE TEHNIKE vlado
HTML 2.
Napisati program koji izračunava sledeću formulu
Principi programiranja
Principi programiranja
Rešavanje problema pomoću računara
Sadržaj predavanja Uvod u postupak procjene Metodologija procjene
Cascading Style Sheets
Транскрипт презентације:

Uvod u programiranje - matematika – XII predavanje Moduli. OOP Vesna Veličković vesna@pmf.ni.ac.rs

Rekurzija Potprogram se poziva unutar njega samog. procedure Alpha (...); var ... begin ... Alpha (...); end;

Uzajamno pozivanje dva potprograma Sve što se koristi (poziva) u Delphi-ju mora predhodno biti deklarisano. Potprogram Alpha poziva Beta, a Beta poziva Alpha. Koji potprogam staviti ispred koga?

procedure Alpha (. ); var. begin. Beta ( procedure Alpha (...); var ... begin ... Beta (...); // Beta nije deklarisano end; procedure Beta(...); Alpha (...);

procedure Beta(. ); var. begin. Alpha ( procedure Beta(...); var ... begin ... Alpha (...); // Alpha nije deklarisano end; procedure Alpha (...); Beta (...);

Deklaracija unapred Da bi se potprogram iskoristio, dovoljno je da znamo njegovo ime i parametre, tj. dovoljno je da imamo zaglavlje tog potprograma. Jedan potprogram se samo deklariše, a umesto tela se zapiše ključna reč forward, što znači da će se taj potprogram napisati u delu programa koji sledi. Zatim se taj potprogram može koristiti na uobičajen način.

procedure Beta (. ); forward; procedure Alfa (. ); begin. Beta( procedure Beta (...); forward; procedure Alfa (...); begin ... Beta(...); end; procedure Beta (...); Alfa(...);

Modularno progamiranje U modularnom programiranju koristimo module (unit-e). U jednom modulu pišemo potprograme koji su povezani po nekoj tematici i dovoljno su značajni da se mogu koristiti više puta.

Moduli Moguće je objediniti nekoliko potprograma (koji su tipično logički povezani) i zapisati ih u jedan fajl, koji se naziva moduo (unit). Jedan moduo se može koristiti u okviru drugog. unit primer; uses nizovi, matrice; ...

Struktura modula Moduo se sastoji iz dva dela, interfejsa i implementacije. U interfejsu su samo deklaracije potprograma. One će biti vidljive u svakom modulu koji koristi naš moduo. U implementaciom delu modula se nalaze kompletni potprogrami (deklaracija i telo). Ovo nije dostupno u modilima koji koriste naš moduo. Ova osobina se naziva eknapsulacija.

unit prvi; interface procedure alfa (. ); procedure beta ( unit prvi; interface procedure alfa (...); procedure beta (...); implementation begin ... beta(...); end; alfa(...);

Upotreba modula unit drugi; interface uses prvi; ... implementation procedure gamma (..); begin alfa (...); end; end.

unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs; type ... var ... implementation {$R *.DFM} end.

Klasa Kod record-a, nekoliko promenljivih je povezano u jednu celini, a kod modula je nekoliko potprograma povezano u jednu celinu Ako povežemo ova dva koncepta, pa nekoliko promenljivih i nekoliko potprograma koji rade sa tim promenljivama povežemo u jednu celinu, dobijamo koncept klase.

Objekat U današnje vreme je glavni trend u programiranju – objektno orijentisano programiranje. Objekat je jedna instanca klase. Objekat se prema klasi odnosi kao promenljiva prema tipu.

Promenljiva i tip Tip opisuje kako će neka promenljiva tog tipa izgledati kada se bude napravila. Definicijom tipa se ne pravi nikakva promenljiva (ne odvaja se memorijski prostor) Deklaracijom promenljive se odvaja memorijski prostor za nju (primenljiva se pravi), dodeljuje joj se ime i navodi njen tip. Tip odredjuje kako se tumače bitovi tee promenljive i šta se sa njom može raditi.

Objekat i klasa Na isti način kao tip, klasa odredjuje kako će neki objekat izgledati kada se bude napravio i šta se može uraditi sa tim objektom. Deklaracijom objekta odredjenog tipa (klase) se odvaja memorijski prostor potreban za taj objekat, uvodi se njegovo ime, i navodi se njegov tip (klasa). Do pojedinačnih članova objekta se dolazi navodjenjem imena tog objekta, tačke i imena člana (kao kod record-a).

interface type TForm1 = class (TForm) // deklaracija klase interface type TForm1 = class (TForm) // deklaracija klase. Nasledjivanje Button1: TButton; // članovi klase Label1: TLabel; // atribut klase Edit1: TEdit; procedure Button1Click(Sender: TObject); // metoda klase private { Private declarations } public { Public declarations } end; implementation procedure TForm1.Button1Click(Sender: TObject); // implementacija metode begin ....

type Klasa = class ... a,b : real; m,n : integer; function SaberiRealne (x,y:real) : real; function SaberiCele (x,y:integer) : integer; end; var Objekat : Klasa; ... Objekat.a := ... Objekat.SaberiRealne (2 * 3.14, b-c);

Glavne karakteristike OOP Glavne karakteristike objektno-orijentisanog programiranja su: Enkapsulacija Nasledjivanje Polimorfizam