Programare structurată vs. Programare orientată pe obiecte
Programarea orientată pe obiecte (OOP) și programarea structurată sunt două paradigme de programare. O paradigmă de programare este un stil fundamental al programării pe calculator. Paradigmele de programare diferă în modul în care este reprezentat fiecare element al programelor și modul în care sunt definite pașii pentru rezolvarea problemelor. După cum sugerează și numele, OOP se concentrează pe reprezentarea problemelor care utilizează obiectele din lumea reală și comportamentul lor, în timp ce Programarea Structurată se ocupă cu organizarea programului într-o structură logică.
Ce este programarea structurată?
Se presupune că anul nașterii programării structurate este 1970. Programarea structurată este considerată un subset de programare imperativă. Un program structurat este alcătuit din simple structuri de flux de programe, organizate ierarhic. Ele sunt secvență, selecție și repetare. Secvența este o ordine a declarațiilor. Selectarea înseamnă selectarea unei instrucțiuni dintr-un set de instrucțiuni bazate pe starea curentă a programului (de exemplu, folosind instrucțiunile if) și repetarea înseamnă executarea unei instrucțiuni până la atingerea unei anumite stări (de ex., Folosind sau pentru declarații). ALGOL, Pascal, Ada și PL / I sunt câteva dintre limbile de programare structurate utilizate astăzi.
Ce este programarea orientată pe obiecte?
În PLO, accentul se pune pe gândirea problemei care trebuie rezolvată în ceea ce privește elementele lumii reale și reprezentând problema în ceea ce privește obiectele și comportamentul lor. Clasele descriu reprezentările abstracte ale obiectelor din lumea reală. Clasele sunt asemenea unor planuri sau șabloane, care adună elemente similare sau lucruri care pot fi grupate împreună. Clasele au proprietăți numite atribute. Atributele sunt implementate ca variabile globale și de instanță. Metodele din clase reprezintă sau definesc comportamentul acestor clase. Metodele și atributele clasei sunt numite membrii clasei. O instanță a unei clase se numește un obiect. Prin urmare, un obiect este o structură de date care seamănă foarte mult cu un obiect din lumea reală.
Există câteva concepte OOP importante, cum ar fi abstractizarea datelor, încapsularea, polimorfismul, mesajele, modularitatea și moștenirea. În mod tipic, încapsularea este realizată prin crearea atributelor private, în timp ce se creează metode publice care pot fi utilizate pentru a accesa atributele respective. Moștenirea permite utilizatorului să extindă clase (numite subclase) din alte clase (numite super-clase). Polimorfismul permite programatorului să înlocuiască un obiect al unei clase în locul unui obiect din clasa sa superioară. De obicei, substantive găsite în definiția problemei devin direct clase în program. Și în mod similar, verbele devin metode. Unele dintre cele mai populare limbi OOP sunt Java și C #.
Care este diferența dintre programarea structurată și programarea orientată pe obiecte?
Diferența majoră între Programarea Structurată și OOP constă în faptul că programarea structurată are ca obiectiv structurarea programului într-o ierarhie a subprogramelor, în timp ce obiectivul OOP este de a descompune sarcina de programare în obiecte care încapsulează date și metode. OOP este considerat mai flexibil decât programarea structurată, deoarece OOP separă un program într-o rețea de subsisteme, mai degrabă decât structurând programul într-o ierarhie. Chiar dacă structurarea oferă o anumită claritate, o mică modificare a unui program structurat foarte mare poate provoca un efect de ripple de a trebui să schimbe mai multe subprograme.