programare

Programare orientată pe obiecte. Programa prelegerii. Principiile de bază ale programării OOP orientate obiect și structura programului orientat obiect Incapsulare Polimorfism Moștenire Cele mai utilizate limbaje de programare orientate obiect.

Programare orientată pe obiecte

Transcriere de prezentare

Programa prelegerii • Principiile de bază ale programării OOP orientate obiect și structura programului orientat obiect. Moștenirea polimorfismului de încapsulare • Cele mai utilizate limbaje de programare orientate obiect.

Programare orientată pe obiecte • Este o modalitate eficientă de organizare a programului • Principiul de bază: programul constă dintr-un set de obiecte care sunt capabile să stocheze și să proceseze date și să comunice cu alte obiecte • Istoric: PPE a apărut într-un moment în care programele obișnuite au început să depășească o anumite programe structurale și de lungime au devenit confuze. Utilizat în mod obișnuit la începutul anilor '90 • Principalul avantaj: structura obiectului bine concepută a programului permite o orientare mult mai bună în cod

Principiul EIP • Filosofia EIP se bazează pe dispunerea lumii reale • Concepte de bază ale EIP: clasă și obiect • Trei principii de bază: Încapsulare Polimorfism Moștenire

Clasa • Este un tip de date structurat caracterizat prin proprietăți (date, atribute) și abilități (metode) • Exemplu: Clasa umană • Proprietăți: nume, vârstă, înălțime, greutate, culoarea părului. • Abilități: să se prezinte, să-și spună vârsta, măsurile etc., să ceară altei persoane numele, vârsta.

Obiect • Un element specific al clasei, cu caracteristici date clar Janko Kováč Majka Nováková 45 ani 35 ani păr castaniu deschis, 180 cm păr castaniu, 165 cm

Program orientat obiect 2. Definirea metodelor Man: Write_your_data

Program orientat obiect 3. Crearea și utilizarea obiectelor Man Janko, Majka Janko.Zapíš_si_svoje_údaje Majka.Zapíš_si_svoje_údaje Janko.Predstav_sa Janko.Povedz_svoj_vek Janko.Povedz_svoju_výšku Majka.Predstav_sa Majka.Pvz_zv

Program orientat pe obiecte 4. Ascensiune Bună, sunt Janko Kovac Bună, sunt Majka Novakova Am 45 de ani Am 35 de ani Am 180 de centimetri Am 165 de centimetri

Incapsularea • Un mecanism care leagă datele și codul împreună • Într-un program orientat pe obiect, toate datele și funcțiile aparțin unei clase (cu excepția programului principal) • Incapsularea permite o vizibilitate mai bună a programului și, în special, poate proteja datele de interferențele nedorite de în afara • În interiorul clasei pot fi toate datele sau metodele definite ca private - accesibile numai clasei în sine, publice - accesibile și altor clase

Incapsularea Omul de clasă < verejné: znakový reťazec meno Predstav_sa >Om Majka Majka.Predstav_sa Spune „Bună, eu sunt” Majka.meno

Incapsularea Omul de clasă < súkromné: znakový reťazec meno verejné: Predstav_sa >Om Majka Majka.Predstav_sa Spune „Bună ziua, eu sunt” Majka.meno

Tehnica de ascundere a datelor • Este cel mai sigur și cel mai comun mod de a proiecta clase • Principiul de bază: toate datele sunt private Clasa a creat o interfață, adică metode care permit schimbarea și comunicarea datelor dacă este necesar • Acest lucru va asigura faptul că atunci când utilizați clasa sunt accesibile și schimbătoare numai datele pe care le permite interfața, ceea ce este important de ex. atunci când programează biblioteci pentru a fi utilizate de alți programatori etc.

Tehnica de ascundere a datelor • Clasa umană proiectată corect Clasa umană

Constructor și destructor • Acestea sunt funcții care rulează automat la crearea (constructorul) și distrugerea (distructorul) unui obiect dintr-o anumită clasă • Constructorul este utilizat în principal pentru setarea inițială a valorii datelor obiectului și pentru alocarea memoriei necesare • Destructorul este utilizat pentru „curățarea ”, Adică în principal pentru alocarea memoriei rezervate

Constructor și destructor • Clasa umană modificată Clasa umană

Polimorfism • Este o versatilitate, resp. utilizarea multifuncțională a metodelor • O metodă cu un singur nume poate fi utilizată pentru diferite tipuri de date sau pentru un număr diferit de intrări, ceea ce facilitează orientarea în program 

Moştenire • Fiecare clasă poate avea „copilul” său, adică clasa care este derivată din ea, preia toate datele și metodele sale (cu excepția constructorului și distructorului) • Clasa derivată poate fi un descendent al oricărui număr de clase și fiecare clasă poate au orice număr de descendenți • Pentru că clasa părinte își poate pune la dispoziție descendenții datele sale private, aceste date sunt denumite protejate și, în afară de clasa în sine și de subclasele sale, nu sunt altfel accesibile din exterior

Moştenire Clasa alimentară: data de consum a prețului de producție Clasa Legume: prețul de producător data consumului clasa de calitate Clasa de mărfuri: preț de producător Clasa încălțăminte: mărimea prețului de producător

Moştenire Părinte de clasă: public: Predstav_sa Povedz_adresu protejat: nume adresă privată: PIN Clasa copil: Predstav_sa Povedz_adresu Povedz_zálnyného_zástupce nume adresă legal_represent PIN - inaccesibil!

Moştenire Cadou de clasă: od_koho pre_koho Bunuri de clasă: cena dodavatel Clasă: Plantă: plant_name Buchet de clasă: cena dodavatel name_of_plants od_koho pre_koho delivery_address

Metode virtuale • Dacă metoda clasei părinte este virtuală, înseamnă că copilul care o moștenește o poate modifica în funcție de nevoile lor Metodă Imaginație: Numele meu este Peter Slovák Locuiesc în Bratislava Metodă Imaginație: Numele meu este Miro Slovacă Locuiesc în Bratislava Tatăl meu este Peter Slovak Method Imaginație: Bună, eu sunt Miro Slovak Tatăl meu este Peter Slovak

Cursuri prietenoase • Fiecare clasă poate permite altor clase să își acceseze datele private dacă le marchează ca o clasă prietenoasă Părinte: clasă prietenoasă Copil public: Imagine_protected: nume privat: PIN Clasa Copil: Imagine_legal_representative name legal_representative PIN

rezumat • Programarea orientată pe obiecte este un mod de organizare eficientă a programului în care un program este un set de obiecte care interacționează • Într-un program complet orientat pe obiecte, toate datele și funcțiile (cu excepția programului principal și a variabilelor globale) fac parte dintr-o clasă • Principiile de bază ale programării orientate pe obiecte sunt: ​​Moștenirea polimorfismului de încapsulare

Limbaje orientate obiect • Simula (1967) - primul limbaj OO utilizat pentru simulări în construcția de circuite integrate, grafică pe computer, educație etc. • C ++ (1983) - unul dintre cele mai răspândite limbaje folosite comercial, cu multe aplicații, permite programarea OO și procedurală • Common Lisp - un limbaj care permite operațiuni foarte generale, cu un număr mare de tipuri de date, utilizat pentru a programa aplicații Internet, software de proiectare, jocuri etc. • Java (1995) - un limbaj dezvoltat pentru a rula programe pe diverse platforme și din surse la distanță, cu suport de rețea încorporat • JavaScript (1995) - un limbaj de scriptare (instrucțiunile sunt executate direct din cod, fără compilare) dezvoltat pentru a crea Internet aplicații • Perl (1987) - un limbaj dinamic dezvoltat inițial pentru procesarea textelor, astăzi este utilizat în programarea aplicațiilor Internet, în gestionarea sistemului etc., este eficient în manipularea șirurilor și în gestionarea memoriei

Limbaje orientate spre obiecte • PHP (1994) - un limbaj de programare reflectiv (un program își poate schimba structura în timpul rulării), utilizat în principal în dezvoltarea web • Python (1980) - un limbaj care susține diverse tehnici de programare, cu accent pe codul ușor de citit, multe software îl folosesc ca limbaj de scriptare • Smalltalk (1970) - limbaj reflectorizant OO, dezvoltat inițial în scopuri educaționale, dar mai târziu a găsit și o bogată aplicație comercială • Visual Basic - limbaj bazat pe evenimente (programul care rulează depinde de interacțiunea utilizatorului), are o utilizare foarte mare în aplicații de afaceri • TCL - un limbaj de scriptare cu sintaxă simplă, dezvoltat cu intenția de a deveni parte a diferitelor aplicații