
Ovaj članak posvećen je komparativnoj analizi logičkih entiteta iz djela njemačkog filozofa Georga Wilhelm Friedricha Hegela "Znanost logike" s njihovim analogijama ili odsustvom u programiranju.
Entiteti iz "Znanosti logike" istaknuti su kurzivom kako bi se izbjegla zabuna s općeprihvaćenim definicijama tih riječi.
Čista egzistencija
Ako otvorite definiciju čiste egzistencije u knjizi, vidjet ćete zanimljivu rečenicu "bez daljnje definicije". No, oni koji nisu čitali ili nisu razumjeli, nemojte žuriti s optužbama protiv autora zbog demencije. Čista egzistencija — to je osnovni pojam u Hegelovoj logici koji označava da neki objekt postoji, molim vas, nemojte to brkati s postojanjem objekta; objekt možda ne postoji u stvarnosti, ali ako smo ga nekako odredili u našoj logici, on postoji. Ako malo razmislite, doista je teško definirati nešto poput čiste egzistencije i svaka takva pokušaj svesti će se na to da ćete jednostavno upućivati na njegove sinonime ili antonime. Čista egzistencija toliko apstraktni pojam da se može primijeniti apsolutno na bilo što, uključujući i samoga sebe. U nekim objektno-orijentiranim jezicima postoji mogućnost predstavljanja bilo čega u obliku objekta, uključujući operacije nad objektima, što nam u principu daje takvu razinu apstrakcije. Međutim, u programiranju ne postoji izravni analog čiste egzistencije Nema. Da bismo provjerili postojanje objekta, moramo provjeriti njegovo odsustvo.
if(obj != null);Čudno je da takvog sintaktičkog šećera još nema, s obzirom da je ova provjera prilično popularna.
Ništa
Kako se moglo naslutiti, ništa je odsustvo bilo čega. Njegov analog može biti NULL. Vrijedi napomenuti da u znanstvenoj logici ništa je postao čista egzistencija, jer ona također postoji. Tu leži određena zamka; prema NULL-u ne možemo pristupiti kao objektu u bilo kojem jeziku, iako je u suštini on također objekt.
Postanak i trenuci
Postanak — to je prijelaz od ništa u bivanja i od bivanja u ništa. To nam daje dva trenutka, prvi se naziva nastankom, a drugi prelazom. Prelaz je nazvan tako umjesto nestanka, jer logički entitet u suštini ne može nestati osim ako ga ne zaboravimo. Oduzimanjem Prevazilaženjem kako se može nazvati postupak dodjele. U slučaju kada se inicijalizira objekt, dolazi do trenutka nastajanja, a u slučaju dodjeljivanja druge vrijednosti ili NULL trenutka odlaska.
obj = new object(); //nastanak
obj = null; //odlazakPostojanje
Ukratko postojanje — to je objekt koji nema jasno definiranu definiciju, ali ima određenost. Što to znači. Kanonični primjer je obična stolica. Ako pokušate dati jasnu definiciju, naići ćete na mnoštvo poteškoća. Na primjer, reći ćete: 'to je komad namještaja namijenjen sjedenju', ali naslonjač je također stvoren za to itd. Međutim, nedostatak jasne definicije ne sprječava nas da ga istaknemo u prostoru i koristimo prilikom prijenosa informacija o njemu, to je zato što u našim glavama imamo određenost stolice. Moguće je da su neki već shvatili da su neuronske mreže stvorene za isticanje takvih objekata iz toka podataka. Neuronska mreža može se definirati kao funkcija koja određuje ovu određenost, ali nema vrsta objekata koji uključuju jasne i nejasne definicije, stoga se takvi objekti ne mogu koristiti na istoj razini apstrakcije.
Zakon prijelaza kvantitativnih promjena u kvalitativne
Ovaj zakon formulirao je Friedrich Engels kao rezultat interpretacije Hegelove logike. Međutim, može se lako uočiti u prvom dijelu u poglavlju o mjeri. Suština je u tome da kvantitativne promjene u objektu mogu utjecati na njegov kvalitet. Na primjer, imamo objekt led, pri akumulaciji temperature on će se pretvoriti u tekuću vodu i promijeniti svoje kvalitete. Za implementaciju takvog ponašanja u objektu postoji obrazac dizajniranja 'Stanje'. Nastanak takvog rješenja izazvan je nedostatkom u programiranju takve stvari kao što je temelj za nastanka objekta. Temelj određuje uvjete pod kojima objekt može nastati, a u algoritmu sami odlučujemo kada trebamo inicijalizirati objekt.
PS: Ako je ova informacija zanimljiva, održat ću pregled drugih entiteta iz 'Znanosti logike'.
Izvor: habr.com
