Framework

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Framework (aplikační rámec) je softwarová struktura, která slouží jako podpora při programování a vývoji a organizaci jiných softwarových projektů. Může obsahovat podpůrné programy, knihovny API, podporu pro návrhové vzory nebo doporučené postupy při vývoji.

Účel[editovat | editovat zdroj]

Cílem frameworku je převzetí typických problémů dané oblasti, čímž se usnadní vývoj tak, aby se návrháři a vývojáři mohli soustředit pouze na své zadání. Například, tým, který používá Apache Struts k vývoji webových stránek pro banku, se může zaměřit na to, jak se budou provádět bankovní operace a ne jak zajistit bezchybnou navigaci mezi jednotlivými stránkami.

Vyskytují se námitky, že použitím frameworku bude kód pomalý či jinak neefektivní a že čas, který se ušetří použitím cizího kódu, se musí věnovat nastudování frameworku. Nicméně při jeho opakovaném nasazení nebo ve velkém projektu dojde k výrazné úspoře času. Při odinstalování frameworku již nebude možné některé aplikace spustit.

Architektura[editovat | editovat zdroj]

Framework se skládá z tzv. frozen spots a hot spots. Frozen spots definují celkovou architekturu softwarové struktury, její základní komponenty a vztahy mezi nimi. Tyto části se nemění při žádném použití frameworku. Naproti tomu hot spots jsou komponenty, které spolu s kódem programátora vytvářejí zcela specifickou funkcionalitu, a proto jsou skoro pokaždé jiné.

V objektově orientovaném prostředí je framework tvořen abstraktními a klasickými (neabstraktními) třídami. Frozen spots pak mohou být reprezentovány abstraktními třídami a vlastní kód (hot spots) se přidá implementací abstraktních metod.

Příklady[editovat | editovat zdroj]

  • JUnit je framework sloužící k testování jednotek pro programovací jazyk Java.
  • Spring je aplikační framework pro platformu Java s otevřeným zdrojovým kódem.
  • Zend Framework je framework pro webové aplikace v PHP s otevřeným zdrojovým kódem.
  • Vaadin je framework pro webové aplikace v Javě s otevřeným zdrojovým kódem.
  • Nette Framework je framework od českého autora pro webové aplikace v PHP s otevřeným zdrojovým kódem.
  • CakePHP Framework je framework pro webové aplikace v PHP s otevřeným zdrojovým kódem.
  • Symfony je framework pro vývoj webových aplikací v PHP s otevřeným zdrojovým kódem.
  • CodeIgniter je framework pro vývoj webových aplikací v PHP s otevřeným zdrojovým kódem.
  • Apache Wicket je framework pro vývoj webových aplikací v Javů s otevřeným zdrojovým kódem.
  • Ruby on Rails je framework pro webové aplikace v jazyce Ruby s otevřeným zdrojovým kódem.
  • jQuery je lehký JavaScript framework s otevřeným zdrojovým kódem.
  • .NET Framework je framework pro jazyk C#

Související články[editovat | editovat zdroj]

Externí odkazy[editovat | editovat zdroj]

Logo Wikimedia Commons
Wikimedia Commons nabízí obrázky, zvuky či videa k tématu