Abstrakcijoje saugoma tik svarbiausia informacija apie tam tikrą objektą, kad būtų lengviau jį pakartotinai naudoti.

Abstrakcija susijusi su būdais, kuriais aukštesnės, mažiau realios sąvokos išvedamos iš pažodinių ("realių" arba "konkrečių") duomenų ar kitos informacijos naudojimo ir klasifikavimo.

Abstrakcijos gali būti formuojamos mažinant sąvokos ar reiškinio informacijos turinį, dažnai siekiant išsaugoti tik tą informaciją, kuri reikalinga konkrečiam tikslui. Pavyzdžiui, abstrahuojant odinį futbolo kamuolį į bendresnę kamuolio idėją, išsaugoma tik informacija apie bendruosius kamuolio požymius ir elgseną, paliekant šio konkretaus kamuolio savybes. Palyginkite su žodžiu: apibendrinimas. Būdvardžio "abstraktus" priešingybė paprastai yra žodis "konkretus".

Kas tai reiškia praktiškai?

Abstrakcija — tai sąmoningas detalizacijos laipsnio sumažinimas. Ji leidžia:

  • sutrumpinti ir supaprastinti sudėtingus objektus ar procesus;
  • kurti bendresnes taisykles, kurios taikomos daugeliui atvejų;
  • atskirti esmę nuo smulkmenų, kad būtų lengviau kurti, suprasti ir prižiūrėti sistemas.

Pavyzdžiai skirtingose srityse

  • Informatika: duomenų abstrakcija (pvz., duomenų tipai), procedūrinė abstrakcija (funkcijos, metodai) ir objektinė abstrakcija (klasės, sąsajos). Abstrakcijos leidžia programuotojams naudoti komponentus be reikalo žinoti jų vidinę veikimo logiką.
  • Matematika: simboliai ir formos (pvz., kintamieji, operacijos) reprezentuoja skaičius ir santykius, todėl galima spręsti problemas abstrakčiame lygyje.
  • Menai: abstraktusis menas nesiekia atvaizduoti realybės tiksliai, o perteikti idėjas, jausmus ar kompoziciją per supaprastintus ar deformuotus vaizdus.
  • Kartografija: žemėlapiai abstrahuoja realų pasaulį — jie rodo tik tam tikrą informaciją (keliai, upės) ir nutyli smulkesnes detales.
  • Kasdienis gyvenimas: terminai kaip "automobilis", "namas", "veikla" yra abstrakcijos — jos apima daugybę skirtingų konkrečių objektų ir variantų.

Kaip kuriama abstrakcija?

Tipinis procesas apima keletą žingsnių:

  • Identifikuoti tikslą — kam reikalinga abstrakcija.
  • Nustatyti esmines savybes, kurios turi būti išsaugotos.
  • Atskirti ir pašalinti nereikalingas arba detalizuotas savybes.
  • Apibrėžti sąsajas ar taisykles, kaip abstrakcija naudojama.
  • Išbandyti ir patikrinti, ar abstrakcija veikia įvairiuose kontekstuose, bei koreguoti ją pagal poreikį.

Nauda ir trūkumai

Nauda:

  • Palengvina kompleksiškumo valdymą.
  • Skatina pakartotinį naudojimą ir moduliškumą.
  • Leidžia koncentruotis į svarbiausius dalykus ir greičiau spręsti problemas.

Trūkumai:

  • Gali prarasti svarbią informaciją, reikalingą tam tikriems sprendimams.
  • Per didelė abstrakcija gali sukelti neaiškumų arba klaidingus lūkesčius.
  • Abstrakcijos klaidos (netinkamai pasirenkant esmę) gali tapti sudėtingų sistemų gedimo priežastimi.

Kaip pasirinkti tinkamą abstrakcijos lygį

Pasirinkimas priklauso nuo:

  • tikslo ir vartotojų poreikių;
  • sistemos sudėtingumo;
  • poreikio lanksčiai adaptuoti abstrakciją ateityje;
  • galimos rizikos dėl prarastų detalių.

Gera praktika — pradėti nuo paprastesnio modelio ir laipsniškai jį sudėtinginti, dokumentuoti prielaidas ir testuoti, ar abstrakcija tinkamai atlieka savo funkciją.

Santrauka

Abstrakcija yra galingas mąstymo ir projektavimo įrankis, leidžiantis supaprastinti realybę, išsaugant tik tai, kas svarbu konkrečiam tikslui. Teisingai naudojama, ji didina suprantamumą, pakartotinį naudojimą ir efektyvumą; neteisingai — gali nuslėpti svarbias detales ir sukelti klaidas. Todėl svarbu aiškiai apibrėžti, kas laikoma esmine informacija, ir nuolat vertinti abstrakcijos tinkamumą praktikoje.