Objektorientētas programmēšanas priekšrocības un trūkumi

Datora kods. Dziļi zaļš ekrāns

Lielākā daļa mūsdienu datoru un mobilo lietotņu izmanto OOP metodes.

Attēla kredīts: SoulArt/iStock/Getty Images

Objektorientētās programmēšanas valodas, piemēram, C++, Java un Visual Basic, izstrādāja datorzinātnieki, lai paātrinātu programmēšanu un uzlabotu programmatūras kvalitāti. OOP programmatūras metodes sadala programmas funkcionālos blokos, ko sauc par objektiem, padarot tos bieži nepieciešamus tādas funkcijas kā vadības pogas, datu bāzes pārvaldība un matemātika, ko ir vieglāk izmantot un koplietot programmētājiem. Tomēr priekšrocības ir saistītas ar kompromisiem, piemēram, papildu programmatūras sarežģītību un samazinātu veiktspēju.

Labāka produktivitāte

OOP metodes ievieš programmētājam noteikumus, kas ilgtermiņā palīdz viņai paveikt vairāk darba; Pabeigtās programmas darbojas labāk, tām ir vairāk funkciju, un tās ir vieglāk lasāmas un uzturējamas. Programmas, kas neizmanto OOP, parasti ir lielas, nepārtrauktas teksta plātnes, piemēram, ļoti garas grāmatas nodaļas. Kad programmētāji iesaistās, lai to mainītu, teksts galu galā kļūst nesakārtots un grūtāk izsekot. Turpretim OOP programmētāji ņem jaunus un esošus programmatūras objektus un "savieno" tos, lai izveidotu jaunas programmas. Tā kā objektu bibliotēkās ir daudz noderīgu funkciju, programmatūras izstrādātājiem nav tik bieži jāizgudro ritenis; vairāk laika tiek veltīts jaunās programmas veidošanai.

Dienas video

Zemākas programmēšanas izmaksas

Īpaši lielākiem projektiem OOP palīdz samazināt programmēšanas darbaspēka izmaksas. Darbinieki, kas strādā pie projekta, var izveidot savu programmatūras objektu bibliotēku, ļaujot programmētājiem viegli izmantot vienam otra darbu un samazinot programmu izstrādei nepieciešamās stundas. Pateicoties uzlabotai programmatūras kvalitātei, izstrādātāji pavada mazāk laika, lai labotu nepareizi strādājošas programmas, tādējādi vēl vairāk samazinot darbaspēka izmaksas.

Stāvāka mācīšanās līkne

Lai apgūtu OOP, iesācējam ir jāapgūst jauni, abstrakti jēdzieni, piemēram, polimorfisms - objektu atkārtota izmantošana, vienlaikus pievienojot tiem jaunas funkcijas - un iekapsulēšana - objekta iekšējo datu daļu slēpšana, lai uzlabotu drošību, un neviena no šīm idejām nav atrodama vecākos programmēšanas stilos. Šo jēdzienu apguve ne tikai prasa laiku, bet arī var būt pārāk sarežģīta jaunākiem topošajiem programmētājiem vai tiem, kas programmē tikai reizēm.

Lēnāka programmatūra

Objektorientētā programmatūra var ietvert papildu mājturības kodu, kas nav nepieciešams citās datoru valodās; datoram ir jāizpilda papildu programmēšana, palēninot lietojumprogrammas reakcijas laiku. Projektiem, kur ātrums ir svarīgs, programmētāji var izvēlēties rakstīt laika kritiskākās daļas, kas nav OOP valodas, piemēram, assembler vai C, rezervējot OOP kodu logiem vai pogām — apgabali, kuros objektiem ir skaidra priekšrocība.