Filozofia vs Programowanie Obiektowe

W świecie, który jest już bardzo skomplikowany, warto czasem sięgnąć do filozofii, by odpowiedzieć sobie na pytania o podstawy jego funkcjonowania. Paradygmat obiektowy to coś, co stosuje się w bardzo wielu projektach i sytuacjach. Istnieje kilka mechanizmów: abstrakcja, hermetyzacja, polimorfizm i dziedziczenie. Dlaczego akurat takie? To właśnie należy sobie wyjaśnić. Myli się ten, kto uważa, że obiektowe podejście do modelowania rzeczywistości jest czymś nowym. Co więcej przyglądając się tej koncepcji, można pokusić się o następujące stwierdzenie. Paradygmat obiektowy został rozwinięty znacznie wcześniej i był to rok około 300 p.n.e. Otóż w tym okresie żyło paru mądrych osobników, m.in Platon, Sokrates i Arystoteles. Dlaczego akurat oni? Ci filozofowie na czele z Platonem stworzyli dzieło, dzięki któremu my dziś programujemy obiektowo - “Teorię Form”.

Filozofia jest wszędzie
(by vintagedept via Flickr)
Została ona stworzona po to, by odpowiedzieć na podstawowe pytanie o naturę wiedzy. Zaczęto od prostego założenia: coś może zostać zrozumiane, jeśli tylko zostanie zdefiniowane. Do poszukiwania definicji rzeczywistości na początku wykorzystano metodę Sokratesa, nazwaną przez niego “metodą położnictwa umysłowego”. Polegała na takim zadawaniu pytań i kierowaniu odpowiedziami, aby w końcu osiągnąć podstawowe określenie danego pojęcia. Sokrates mniemał, ze każdy nosi w sobie wiedzę, lecz jej sobie nie uświadamia, trzeba mu więc w tym pomóc. Działanie metody polegało na zadawaniu wielu pytań nakierowujących osobę badaną na właściwy trop. Jej skuteczność udowodnił zaś na przypadkowej osobie, której zadaniem było stworzenie definicji o Twierdzeniu Pitagorasa. Analizując zebrane wyniki badań Sokrates i Platon stwierdzili, że nauka prowadzi badane osoby do formułowania idei oraz form. Platon teoretyzował, że Formy, bądź też Idee, są centralnymi elementami wiedzy, oraz że znajomość Formy danej rzeczy jest adekwatna do zrozumienia natury tej rzeczy. Formy to własności lub też abstrakcyjne niematerialne cechy przypisane danym rzeczom bądź obiektom. Zdefiniowane przez Platona „obiekty” w rzeczywistym świecie są określone, mają swoją rzeczywistą reprezentację. Formy natomiast są uniwersalne, dodatkowo poszczególne rzeczywiste obiekty mogą być tworzone z ich abstrakcyjnych odpowiedników. Platon przypuszczał, że poszukiwanie wiedzy zawiera w sobie definiowanie, badanie Form poprzez metodę dialektyczną (Sokratesową), która to dzięki wielu hipotezom doprowadzi do skupienia wiedzy. Dopracowanie tej teorii przyszło we współpracy z Arystotelesem, który stworzył “procedurę kolekcji i podziału”.
Filozofia jest sprytna
(via Wallpaper Junction)
Kolekcja polegać miała na wyodrębnieniu ogólnej formy spośród wielu podanych w konkretnie rozpatrywanym przypadku. Następnie forma ogólna dzielona była na formy bardziej szczegółowe, spełniające pewne grupy wyselekcjonowanych kryteriów. Grupy kryteriów dobierane były poprzez selekcję skrajnych różnic pomiędzy danymi na wstępie formami szczegółowymi. Platon jako motywacje do stworzenia "procedury kolekcji i podziału" podał zasadę "jeden ponad wiele". Zasada "jeden ponad wiele" stwierdzała, że tam, gdzie występuje wiele elementów (przypadków) dzielących między sobą ten sam zbiór własności, jest również jedna forma zastępująca je wszystkie, posiadająca ten właśnie zbiór własności. Konsekwencją tego działania stała się teoria znajdowania uniwersum spośród zbioru rozpatrywanych przypadków - “forma idealna” - abstrakcja.

Kolejnym przełomem było w teorii było zdefiniowanie przez Arystotelesa pojęcia “argument trzeci człowiek”. Postanowił on zaangażować matematykę do zrozumienia istoty form. Twierdził, że logika formalna musi zastąpić miejsce metody dialektycznej. Ogłosił również sprzeciw przeciwko separacji form od rzeczywistych przypadków, które miały opisywać, na wzór substancji z świata rzeczywistego (substancja = materia + forma), które są złożone zarówno z materii jak i formy. Twierdził również, że przyczyna tego, co jest wspólne wszystkim rozpatrywanym przypadkom (np. ludziom), leży po za nimi. Pozostawała jednak odpowiedź na pytanie, co jest przyczyną tego, co wspólne ludziom i idei człowieka. Filozof stwierdził, że jeśli leży ona poza pierwszym i drugim człowiekiem, jest „trzecim człowiekiem”. Z kolei biorąc pod uwagę fakt istnienia kolejnych abstrakcyjnych wersji określanego przypadku, Arystoteles doszedł do wniosku, że proces ten należy powtarzać, co z kolei skutkuje powstaniem regresu w nieskończoność. Rozwiązaniem był fakt, że to, co wspólne wszystkim ludziom, nie ma zewnętrznej przyczyny.

Ilustracja idei "Teorii Form"

Podsumowując zmagania filozofów w obrębie teorii form można przytoczyć następujące stwierdzenia:

  • idee są domniemanymi przyczynami form,
  • idee są przed rzeczą (jeśli są), formy są w rzeczy,
  • forma jest tym, co ogólne w rzeczy,
  • materia jest tym, co indywidualne, jest zasadą tożsamości.


Natomiast żeby porównać tą koncepcje (oczywiście w bardzo skróconej tutaj formie) z tym co realizujemy dziś w programowaniu obiektowym, warto przejżeć następujące zestawienie:


Oczywiście jest to tylko częściowy zarys problemu przytoczony po części z mojej pracy magisterskiej, chcąc go zgłębić udaj się do publikacji takich autorów jak: Sinan Si Alhir, A. Grobler, A. Morton and W. Lutosławski.

Komentarze


  • Facebook
  • Twitter
  • Digg
  • Delicious
  • Google Buzz