Objekt-orienteret programmering er et koncept, fejede gennem universiteternes datalogiske afdelinger i 80'erne og produktion software samfund i 90'erne. Ligesom " modulær programmering" , før det og " Internet programmering" , efter det var OOP genstand for en del debat . Nu er begreberne modulær programmering universelt accepteret , og mange af begreberne OOP er almindeligt accepteret , selv om nogle indvendinger mod OOP paradigme tilbage. Den grundlæggende idé med OOP
OOP , edb-programmer er samspillet med " objekter ". Et objekt har " instansvariabler " og " metoder ". Instansvariablerne rekord værdier forbundet med objektet . Metoder er funktioner , der involverer nogle aspekter af objektet . I et spil program , kan der være et objekt kaldet " rumskib ", som har instansvariabler som brændstof beløb . En metode kunne være " brand torpedo ". Rumskibe kunne tilhøre en "klasse" af objekter kaldet " bevægelige objekter . " Asteroider hører også til denne klasse . Kørsel af programmet består af de objekter, sende "budskaber " til hinanden.
Fordele ved OOP
Den første fordel til objekter konceptet er, at al kode , der har noget at gøre med rumskibe er placeret ét sted. En anden fordel er, at objekter kan besidde iboende egenskaber fra den klasse, de tilhører , for eksempel både rumskibe og asteroider kan have en XY holdning, fordi alle genstande, som tilhører den klassen af bevægelige objekter har en XY position. Skrive kode er ofte lettere , fordi du kan konceptualisere det som noget der sker til et objekt . En anden fordel er, at PK gør store programmer mere håndterbar. Hvis alle vinduer tilhører et hierarki af vinduer klasser og alt den kode, der refererer til et bestemt vindue er med dette vindue objekt, kan alle vinduet manipulationer skrives som overførslen af simple budskaber .
< Br > Ulemperne ved OOP
Ikke alle programmer kan modelleres nøjagtigt af objekter modellen. Hvis du blot ønsker at læse i nogle data , gør noget simpelt til det og skrive det ud igen , har du ikke behov for at definere klasser og objekter . Men i nogle OOP sprog , kan du nødt til at udføre denne ekstra trin . En anden ulempe er, at hvis du tvinger sproget i OOP konceptet , mister du nogle af funktionerne af nyttige sprog som de " funktionelle sprog. " En anden ulempe er, at en programmør opfattelse af, hvad der udgør en abstrakt objekt ikke kan matche visionen om en anden programmør. Objekterne ofte kræve omfattende dokumentation.
Fremtiden for OOP
Fremtiden for OOP formentlig ligger hos sprog som Ruby og Lua , hvor objektet konceptet er bygget ind sproget og er ikke altid eksplicit styres af programmøren . Ruby , for eksempel, behandler alt som et objekt , herunder strenge, tal , dit program og indholdet af den mappe du befinder dig i. Du næsten aldrig nødt til at erklære noget at være et objekt. Du er velkommen til at bruge det sprog, som du vil : som OOP , som en funktionel sprog , som en proceduremæssig sprog eller endda på måder, der blandes op modaliteter
.