Objektově orientované vývojové nástroje

Všechny vývojové nástroje a programovací jazyky, které se dnes k vývoji aplikací používají, podporují objektově o...


Všechny vývojové nástroje a programovací jazyky, které se dnes k vývoji
aplikací používají, podporují objektově orientované programování. Prakticky
všechny aplikace, které dnes vznikají, jsou vytvářeny objektově. Je ale stále
poměrně velké množství starších aplikací, které jsou dnes ve stadiu údržby, a
které nebyly vytvořeny tímto způsobem. Proto jsou i dále vyvíjeny pomocí
strukturovaného programování.
Silná podpora objektových technik v moderních vývojových nástrojích je
nepochybná. Rozlišme ale v této souvislosti podporu objektů na úrovni
programovacích jazyků a objektů na úrovni vývojových nástrojů.

Podpora na straně jazyka
Pokud jde o podporu objektů v programovacích jazycích, jinde snad nelze
demonstrovat nepružnost (a snad i neschopnost) různých oficiálních
standardizačních komisí lépe, než právě zde. Důsledkem toho je, že de facto
žádný objektově orientovaný jazyk není doposud oficiálně standardizován.
Prakticky byly ale o podporu objektů rozšířeny všechny běžně používané
programovací jazyky C, Pascal nebo Basic a všechny nové programovací jazyky již
podporu objektů zahrnují (např. Java). Problémem ovšem je, že různí výrobci
implementovali podporu objektů různě. V případě C++ jsou sice jednotlivé
implementace vesměs dobře kompatibilní, ale i zde se nyní objevila zcela nová
implementace C# (Sí šárp), která posouvá implementaci objektů o velký kus
kupředu a která mnoho věcí řeší nově.
Všechny programovací jazyky nabízejí vlastnosti pro tradiční techniky objektově
orientovaného programování třídy, atributy a metody. Zde jsou možnosti různých
programovacích jazyků vesměs identické. Velice odlišně ale přistupují různé
programovací jazyky k dědičnosti některé jazyky ji nepodporují vůbec, jiné
podporují pouze jednoduchou dědičnost a jiné podporují i dědičnost
vícenásobnou. Nejnovější nástroje ale podporují rovněž vlastnosti a události i
ty jsou v různých programovacích jazycích řešeny velice odlišně. Pokud tedy
hovoříme o objektově orientovaném programování bez ohledu na programovací
jazyk, je nutné si uvědomit značné rozdíly v implementaci objektů.

Vývojová prostředí
Jednotlivá vývojová prostředí obsahují také řadu prostředků, které zjednodušují
vývoj objektově orientovaných aplikací. Ačkoliv se i v tomto bodě jednotlivé
vývojové nástroje značně odlišují, nemají tyto rozdíly přímý vliv na možnost
tvorby programového kódu.
Většina vývojových nástrojů obsahuje také různé nástroje, které zjednodušují
tvorbu tříd včetně atributů, metod a případně vlastností. Taktéž většina
vývojových nástrojů umožňuje zobrazit graficky hierarchii tříd (na základě
analýzy zdrojového kódu). Podstatně užitečnější objektový model, který
zachycuje také asociace (vazby) jednotlivých objektů, již zobrazují jen některé
nástroje, neboť jeho vytvoření je mnohem náročnější. Většina nástrojů obsahuje
také jakýsi "Object Browser", který umožňuje zobrazovat detaily o jednotlivých
třídách (atributy, metody, jejich parametry, výsledky apod.).
U podobných nástrojů je důležitá jejich dvoucestnost tedy to, aby nejen pomocí
různých průvodců generovaly nějaký zdrojový kód a jeho grafickou reprezentaci,
ale aby také dokázaly ruční zásahy do kódu automaticky promítnout do všech
grafických reprezentací a interaktivních seznamů. Pokud vývojový nástroj není
dvojcestný, musíte veškeré změny v třídách provádět pouze pomocí k tomu
určených nástrojů (má-li být zachována konzistence zobrazovaných dat).
Moderní vývojové nástroje bývají také často propojeny přímo s různými CASE
nástroji, takže umožňují na základě modelů generovat přímo zdrojový kód.

Reálné aplikace
Jednou z prvních oblastí použití objektově orientovaných technik byla tvorba
uživatelského rozhranní. Zde tyto techniky zcela pevně zakořenily a jen málokdo
si dnes dovede představit tvorbu GUI bez využití objektů. Je to nejspíše proto,
že za jednotlivými prvky rozhraní máme možnost zřetelně vidět konkrétní objekty
reálného světa, které se poměrně dobře modelují pomocí tříd v konkrétním
programovacím jazyce.
Většina vývojových nástrojů obsahuje také prostředky pro vizuální návrh
uživatelského rozhranní. Ačkoliv jsou možnosti těchto prostředků více či méně
omezené a často se nevyhneme ručnímu programování některých částí uživatelského
rozhraní, přesto přinášejí značnou úsporu času. Při tvorbě uživatelského
rozhraní se také často používají události, pomocí kterých jsou jednotlivým
objektům zasílány informace o stavu prostředí.
Objekty se také používají pro zapouzdření obecné obchodní logiky aplikací. Zde
se však již dnes rekrutují zcela zřetelně následovníci objektů komponenty.
1 0463 / pen









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.