next up previous contents index
Next: Teorie [] Up: Objektově orientované programování v Prologu Previous: Obsah   Obsah   Index


Úvod

Cílem tohoto ročníkového projektu je vytvořit na českém Internetu webové stránky, které poskytují ucelenou informaci o problematice propojení objektově orientovaných programovacích nástrojů s technikami logického programování. Bylo nutné sesbírat podklady k této tématice v anglickém jazyce a z nich sestavit tento materiál.

OO filozofie definuje mocný nástroj vývoje životního cyklu kombinací abstrakce, zapouzdření a modularity. Avšak programování a ladění v OO jazycích v současnosti používaných je složité a klade spousty překážek při vývoji i ladění. Logické programování umožňuje řešení problémů popsaných deklarativním způsobem, kdy známe pouze cíl, kterého chceme dosáhnout, ale nemusíme znát konkrétní kroky řešení. Nástroje logického programování bohužel neposkytují silnou podporu pro tvorbu rozsáhlých aplikací. V minulosti myšlenka spojení OO a LP vzbudila velký ohlas a bylo navrženo mnoho takových programovacích jazyků. Ty však většinou ztroskotaly při implementaci základních OO nástrojů.

V této práci se snažím popsat několik takových pokusů ať už více či méně úspěšných. Zaměřil jsem se zejména na dva zástupce tohoto směru a to na Pluto a LogTalk. Popisuji, jak jsou v těchto konkrétních řešeních implementovány jednotlivé nástroje objektově orientovaného přístupu v prostředí logického programování, jako jsou např.: definice objektů a tříd, jejich atributů a metod, některé formy dědičnosti, zapouzdření, skrývání informací a polymorfismus.

První kapitolou je Úvod, jehož řádky právě pročítáte. Následuje kapitola nazvaná Teorie, která obsahuje veškeré získané myšlenky o zpracovávaném tématu. V dalších částech LogTalk a PLUTO rozebírám podrobně syntaxi a strukturu těchto programovacích jazyků. V další kapitole Implementace osvětluji, jak vznikaly webové stránky, které jsou výsledkem tohoto ročníkového projektu. V Závěru shrnuji celou práci, její přínos a možnosti navázání na ni.


next up previous contents index
Next: Teorie [] Up: Objektově orientované programování v Prologu Previous: Obsah   Obsah   Index
Tomáš Kubíček 2002-05-19