Tvorba přenositelných aplikací
Pokud jste už vytvořili několik webových aplikací, určitě jste si všimli, že se některé části těchto aplikací dost podobají nebo jsou úplně stejné. Možná vás také napadlo, jak si co nejvíce zjednodušit tvorbu další aplikace využitím toho, co jste vytvořili již dříve. Tento článek je teoretickým úvodem k malé sérii, která vám se znovupoužitím kódu vašich aplikací trochu pomůže.
Typy aplikací
Nejprve zde popíšu typy aplikací podle struktury propojení vstupů, výstupů a zdrojů dat. Vstupy jsou údaje získané od uživatele, nejčastěji to budou GET, POST požadavky, XML požadavek webové služby a další. Výstupy jsou údaje, které se posílají zpět uživateli (formát se může různit od HTML přes XML až po grafiku. Zdroje dat jsou data, která má server k dispozici prostřednictvím databáze, souborů, webových služeb atd.
Monolitická aplikace
Taková aplikace je tvořena nejčastěji jedním kusem kódu v jediném souboru, bez použití složitějších struktur jako jsou funkce nebo objekty:
Využití části aplikace je možné pouze použitím metody „Copy&Paste“. Pozdější úpravy kódu jsou úměrné délce a složitosti kódu. Tento způsob je vhodný pro opravdu jednoduché aplikace.
Rozčleněná aplikace
Aplikace je rozčleněna na více částí. Jednotlivé části se starají o různé skupiny akcí, jedna třeba o přístup k datovým zdrojům a jiná zase o generování HTML výstupů.
Při správném rozčlenění aplikace není problém znovu použít jednotlivé části, také úpravy aplikace jsou jednodušší.
Použití filtrů
V aplikacích se setkáte s různými formáty vstupních a výstupních dat – například GET a POST požadavky, SQL dotazy posílané do DB, výsledná data z DB, data v XML, výstupní HTML kód a další. Občas se také stane, že potřebujete změnit formát dat (můžete mít výstup jednou jako HTML a jindy jako WAP, XML, PDF nebo obyčejný text). Stejně tak vstupní data mohou být jednou GET nebo POST požadavkem a jindy třeba XML dokumentem.
Při této metodě se vstupní data nejprve zpracují vstupním filtrem, ten podle typu dat je zanalyzuje, zkontroluje, zda neobsahují chyby, doplní určité hodnoty a výsledek pak převede do nějakého interního formátu. Výstupní filtr zase naopak převádí interní formát na požadovaný výstupní formát (výstupní filtr může být například šablonový systém). Jak funguje filtr zdrojů dat už asi tušíte.
Výhodou této metody je odděleni aplikační logiky od toho, jakým způsobem aplikace komunikuje s okolím.
Aplikační logika mimo aplikaci
V tomto případě je aplikační logika uložena v samostatném modulu. Tato metoda se hodí také v případě, že chcete jednu aplikační logiku používat ve více aplikacích. Jedna aplikace může být například elektronický magazín a druhá aplikace jeho redakční systém:
Jaký vnitřní formát použijete, záleží na tom, jaký jazyk nebo jakou platformu požíváte. V PHP to může být například asociativní pole, v jiném prostředí to může být třeba XML.
Způsoby znovupoužití částí aplikace
Metoda „Copy&Paste“
Nelekejte se, i toto je jedna z možností, jak znovu použít část aplikace. Tento způsob má jednu výhodu a tou je jednoduchost. Nevýhoda je, že pokud něco změníte v původní aplikaci, nezmění se zkopírovaná část. Další nevýhodou je, že před zasazením kódu do nové aplikace je často potřeba množství úprav.
Použití funkcí a objektů.
Pokud se některá část kódu často opakuje nebo tvoří nějaký logický celek, je vhodné ji zapsat jako funkci nebo třídu.
Pokud se jedná o jednoduchou operaci, která má několik vstupních parametrů a jednu nebo žádnou výstupní hodnotu, stačí použít funkci. Třídu je vhodné použít tam, kde je zapotřebí třeba vyšší počet vstupních a výstupních proměnných, zpracování dat ve více fázích (například tvorba mailu – nejprve přidáte text, potom přílohu a nakonec vše odešlete, přičemž každá tato akce se provádí jinou metodou třídy), zpracování jedné sady dat více způsoby (máte tabulku s hodnotami, jednou metodou získáte počet hodnot, druhou průměrnou hodnotu) a podobně.
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Fandíme českým sportovcům a rozdáváme hosting ZDARMA!
26. července 2024 -
Praktické rady na zabezpečení redakčního systému WordPress
27. února 2023 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
Jak nainstalovat šablonu ve WordPressu
23. července 2024
Nejnovější
-
Jak rozšířit úložiště Macu za pětinovou cenu?
16. prosince 2024 -
Nové trendy v doménách pro osobní projekty – DIY, LIVING a LIFESTYLE
9. prosince 2024 -
Jak chránit webové stránky před Web/AI Scrapingem
27. listopadu 2024 -
Jaký monitor je nejlepší k novému Macu Mini?
25. listopadu 2024