Sfairadora

  • Referenční příručka

Úvod

Jedno z podstatných využití počítače je uchovávání a zpracování nejrůznějších údajů, jako jsou databáze klientů, seznamy knih či CD, vedení účetnictví a podobně. Jako nástroj jsou k tomu v současné době využívány buď tabulkové kalkulátory nebo relační databáze. Obě tyto technologie byly navrženy v sedmdesátých letech minulého století v době, kdy počítače měly řádově nižší výkon i paměťovou kapacitu (kvantitativní nárůst výpočetního výkonu i paměti – jak vnitřní tak diskové – je od té doby téměř neuvěřitelný: tehdejší počítače byly tisíckrát pomalejší a měli tisíckrát menší paměť). Tomu také odpovídá základní návrh zmiňovaných technologií – jsou navrženy s maximální jednoduchostí, aby je bylo možno vůbec realizovat na tehdejších počítačích. Průběžná zlepšování těchto technologií jsou prováděna nekoncepčně a povrchně, takže ve výsledku narůstá jejích nepřehlednost a komplikovanost až na hranici použitelnosti.

Jednoduchost a složitost

Sfairadora je pokus nově promyslet základní požadavky, které klade člověk na počítač při zpracování dat. Na rozdíl od starých technologií nebyla primárně zohledňována složitost technické realizace, ale přístupnost lidskému myšlení. Jinými slovy: v centru zájmu nestál stroj, ale člověk. Zatímco dnešní počítač provede jednu instrukci, neurazí světlo více než deset centimetrů. Tuto ohromující výpočetní sílu je třeba nechat sloužit člověku.
Vůdčí představou je, že jednoduchost je třeba výhradně chápat jako přístupnost lidskému myšlení a představivosti, a že takto pojatá jednoduchost vůbec nemusí být provázena jednoduchostí příslušných vnitřních mechanismů programu. A vskutku, mnohé funkce Sfairadory skrývají komplikovaný vnitřní mechanismus, aby při užití působily jednoduše a elegantně. Zároveň nelze podléhat iluzi, že vše je možné udělat zcela jednoduše. Složitost je nezrušitelnou součástí našeho světa. Věci je však třeba uspořádat tak, aby byly nejprve a především jednoduché. Zároveň však toto tíhnutí k jednoduchosti nesmí bránit tomu, aby v případě nevyhnutelné potřeby bylo možné použít skutečně silné a efektivní nástroje k řešení složitějších problémů. Prostě s tím, jak roste složitost problému a zkušenost uživatele, musí být možné užít komplexnější řešení – začátečník nesmí být maten nesrozumitelnými technickými nuancemi a odborník nesmí být obtěžován bezdůvodnými omezeními vydávanými za jednoduchost.

Data – pohledy – zobrazení – výstupy

Sfairadora slouží k organizaci s zpracování menších objemů dat. Na strukturu dat se nekladou žádná omezení (jaká kladou relační databáze a tabulkové kalkulátory – v nich mají data povahu dvojrozměrné tabulky). Vzhledem k účelu programu je nejpodstatnějším datovým typem tabulka. Ve Sfairadoře se nekladou žádná omezení na to, co je prvkem sloupce tabulky, takže jím může být i znovu tabulka. Takové uspořádání je široce použitelné, dokonce se dá říct, že typické. Je velice přirozené, máme-li například tabulku se seznamem zákazníků, ke každému zákazníkovi přiřadit seznam objednávek jako podřízenou tabulku příslušející zákazníkovi.
Uspořádání, kdy je v tabulce vnořená podtabulka, je vzato za základ manipulace s tabulkami. Pomocí základních operací seskupení a rozeskupení tabulky, spolu s operacemi uspořádání, filtrování a vypuštění duplicit, lze velice intuitivně konstruovat pohledy na data. Tento způsob konstruování pohledů (databázových dotazů) založený na operacích seskupení a rozeskupení je nejen silnější než způsob pomocí kartézského součinu, který je použit v relačních databázích, ale je i snáze srozumitelný. Navíc je možné vytvářet počítané datové položky, jejichž hodnota je určována podle ostatních hodnot na základě zadaného výrazu. To lze nahlížet jako analogii funkce tabulkového kalkulátoru s tím, že místo kryptických výrazů odkazujících na souřadnice buněk tabulky lze data přirozeně pojmenovávat. Navíc není složitost výrazů nijak omezena – výpočet lze zadat od jednoduchého výrazu po složitý program. Pohledy na data lze pojmenovat a uložit, takže jsou neustále k dispozici ty informace, které uživatele zajímají.
Ke všem datům a pohledům vytváří Sfairadora automaticky příslušná zobrazení. Zobrazením se rozumí prezentace dat ve vizuální podobě na monitoru – tedy grafické znázornění tabulek, dialogová okna pro zadávání dat a podobně. Systém správy zobrazení neustále dbá, aby okna a ovládací prvky měly optimální velikost a polohu, aby zbytečně nezakrývaly jiné údaje, ale zároveň aby byly vidět údaje obsažené ve vlastním ovládacím prvku. Vzhled zobrazení lze přizpůsobit pomocí stylů, obdobně jako vzhled textového dokumentu. K pohodlí práce přispívá i to, že program při ukončení práce uloží celkový aktuální stav zobrazení, takže při opětovném spuštění pokračuje v té situaci, ve které byl ukončen. Pokud nedostačují automaticky vytvořená zobrazení, lze je libovolně upravovat nebo vytvořit zcela nová. Pro vytváření zobrazení byl vyvinut R-D/C model (rekurzivní data/control model), který je efektivní a snadno použitelný. O jeho možnostech svědčí skutečnost, že celé uživatelské rozhraní Sfairadory bylo napsáno pomocí něj.
K vytváření textových výstupů lze nechat ke všem datům, pohledům či zobrazením automaticky vytvořit adekvátní šablonu výstupu. Při změně dat se potom automaticky vytváří výsledný text podle šablony. V případě potřeby lze šablonu výstupu upravit či napsat zcela novou. K vytváření šablon byl navržen jazyk Enkidu. Šablony se vytvářejí pomocí textového editoru, který umožňuje zadávat formátování znaků (písmo, styl...), odstavců (zarovnání, řádkování, odsazení) i používat textové tabulky.

Vždy po ruce

V neposlední řadě je podstatné, že strukturu dat lze průběžně libovolně měnit a Sfairadora v maximální možné míře zachovává aktuální hodnoty dat. Kromě toho, změny promítá do všech souvisejících komponent – přidáte-li sloupec do tabulky v datech, přidá se i do odpovídajících pohledů a samozřejmě se k němu vytvoří odpovídající zobrazení.
Podstatná je i chybová diagnostika – dojde-li při výpočtu s daty k chybě, je indikována červeným čtverečkem v rohu příslušného ovládacího prvku. V kontextové nabídce je pak vidět řetězec příčin, které vedly k chybě. Je tak možné vybrat a skočit na příslušné místo v řetězci a chybu napravit.
Užitečná je dále schopnost Sfairadory mnoha způsoby kopírovat data. Lze tak snadno vytvořit novou tabulku, do které se okopírují vybraná data právě upravované tabulky či uložit okamžitý stav pohledu. Překopírováním řádků datové tabulky do textového editoru se v něm vytvoří příslušná textová tabulka. Existuje celá řada dalších možností.