Blog

API! API! API! API!

26. 04. 2018

Popularita využití API (Application Programming Interface) v moderních aplikacích rok od roku stoupá.

Nicméně se nejedná o nový koncept, prvně byl použit už v 60 letech minulého století\tisíciletí a častěji začal být využíván o 10 až 20 let později.

API je rozhraní pro komunikaci mezi aplikacemi nebo mezi programátorem a aplikací. V obecném slova smyslu musí jakákoliv knihovna (soubor funkcí nebo metod) nebo programovací jazyk nabízet API pro komunikaci nebo jeho používání. Bez tohoto rozhraní by nebylo možné knihovnu či jazyk používat.

V naší společnosti se nejčastěji setkáváme s následujícím využitím API ve webových aplikacích:

   -  MVC s WEB API – klasické aplikace s třívrstvou architekturou (model – controller – view)

   -  REST API – dvou vrstvá architektura bez uživatelského rozhraní

Obě výše uvedené možnosti mají své výhody a nevýhody. Nicméně obecně můžeme říct, že designový návrh MVC s WEB API je starší technologie, která je již pomalu na ústupu. Přináší sice kompletní řešení bez nutnosti dalšího programování či úprav, její hlavní nevýhodou je větší objem odesílaných dat a s tím související rychlost resp. odezva a pracnější implementace změn. Zákazníkovi je tedy dodána aplikace, která je již připravena k finálnímu použití. Toto řešení je úzce spjato s UI (User Interface) a přístupem pouze oprávněných uživatelů.

Oproti tomu architektura, která využívá pouze REST API, najde své využití u firem, které nepotřebují uživatelské rozhraní nebo chtějí řešit UI pomocí Javascriptových frameworků (SPA aplikace). Toto řešení je velice moderní a v dnešní době prosazované.  Výhodou je, že lze naprogramovat a dodat „jen“ byznys logiku a komunikace s aplikací bude probíhat pomocí rozhraní API. Typickým příkladem jsou aplikace, kde zákazník poskytuje data třetím stranám a nezajímá ho, jak s těmito daty dále pracují. Druhým příkladem použití je, kdy zákazník má již aplikaci s UI naprogramovanou (přičemž ji může poskytovat třetím stranám) a nechce ji již měnit nebo ji chce mít oddělenou od byznys logiky. Obrovskou výhodou tohoto modelu je rychlost výsledné aplikace, vysoká přístupnost a “bezstavovost“, tedy všichni uživatelé dostávají stejnou informaci při stejném požadavku (aplikace pošle pouze data a nijak je nemění).

Pravděpodobně nejznámějším využitím návrhu s použití REST API jsou Google\Seznam mapy, aplikace o počasí nebo zobrazování sportovních výsledků.

Základem pro využití REST API je správná dokumentace k tomuto rozhraní. Nejrozšířenější aplikací pro tuto dokumentaci je Swagger či také velice populární Apiary z dílny českých vývojářů, které obsahuje seznam všech http požadavků včetně ukázky struktury posílaných dat (nejčastěji JSON) a možností tuto komunikaci otestovat.

Výše zmíněná řešení mají své výhody i nevýhody a jejich implementace je vždy závislá na plánovaném využití. MVC API přináší kompletní (krabicové) řešení, REST API vždy počítá s využitím další aplikace. V rámci naší společnosti jsme již dodávali i řešení s REST API a současně s vytvořenou UI vrstvou. Tedy kombinace obou dvou řešení.


zpět

Reference

Tvorba rozsáhlého rezervačního, objednávkového, výměnného a prodejního systému pro nové vozy určeného pro zahraniční prodejní sítě Škoda Auto a SEAT. Poskytování komplexních služeb v oblasti systémového návrhu, vývoje a dlouhodobé údržby a rozvoje systému....

Tvorba systému BMS (Business Management Škoda) pro evidenci a následné zpracování ekonomických informací obchodníků prodejní sítě Škoda Auto externí poradenskou firmou. Princip systému spočívá ve sběru ekonomických dat jednotlivých prodejců, jejich vyhodnocení a porovnání s...

Tvorba intranetového systému SQS (Škoda Quality System), který je určen pro sběr a vyhodnocení dat o kvalitě aktuálně vyráběných vozů v reálném čase. Poskytli jsme služby v oblasti systémové analýzy, návrhu, vývoje, údržby a rozvoje systému. produktový list v PDF

Vývoj aplikace zajišťující kalkulaci cen střešních krytin, přípravu objednávek a faktur pro zákazníky. Systém je určen především pro smluvní partnery společnosti Bramac, kterým usnadňuje přípravu stavebních zakázek. 

Cílem projektu bylo vytvořit informační systém pro cenotvorbu, nastavení procesu pro prodej nových bytů, rodinných domů a parcel a poskytnutí second-level hotline, technické podpory a komplexního outsourcingu provozu softwarové a hardwarové infrastruktury systému. Informační systém...

Součástí informačního systému pro on-line prezentaci nejen produktů společnosti (domy, byty a parcely) je redakční modul, který čerpá data přímo z databáze systému CMS CG a umožňuje snadné nastavení zobrazovaných informací, správu verzování publikovaných dat. Umožňuje vytvoření...

Společnost DEFINITY Systems se podílela na vývoji extranetového řešení pro evidenci, zpracování a analýzu dat protikorozní katodové ochrany produktovodů společnosti Čepro. Přínosy řešení: Řešení přispívá k včasnému odhalování potenciálních defektů potrubí, čímž...

Implementace extranetového řešení pro evidenci, zpracování a analýzu dat protikorozní katodové ochrany plynovodů pro distribuční společnosti E.On. Systém sdružuje data z celé této oblasti s cílem usnadnit kontrolu a řízení procesů katodové ochrany na úrovni celé sledované soustavy. ...

Tvorba distribuovaného účetního a ekonomického systému pro jídelny sítě Eurest. Prostřednictvím systému se provádí sběr a zpracování účetních dat a příprava fakturace poboček sítě Eurest.  Přínosy: Umožnění elektronického sběru dat z jednotlivých závodů Eurest...

Specializovaný obchodní (B2B) a konfigurační systém vyvinula společnost DEFINITY Systems pro potřeby prodejní sítě Hewlett-Packard. Systém vytváří on-line kanál pro distribuci serverů HP ProLiant a veškerého příslušenství. Přínosy: Systém realizuje přímou vazbu mezi výrobním...

Společnost DEFINITY Systems vytvořila pro Konica Minolta specializovaný kalkulační nástroj pro výpočet tiskových nákladů a následný návrh jejich optimalizace.   Vyjádření klienta:   "Služba KM eDOC, která výrazně pomáhá našim konzultantům a obchodníkům...

Tým DEFINITY Systems vyvinul extranetové řešení pro evidenci, zpracování a analýzu dat protikorozní katodové ochrany plynovodů pro distribuční společnosti RWE Energy Czech Republic. Přínosy: Systém přispívá k včasnému odhalování potenciálních defektů potrubí, čímž...

Tým DEFIINITY Systems vyvinul extranetové řešení pro evidenci, zpracování a analýzu dat protikorozní katodové ochrany produktovodů společnosti MERO. Přínosy Systém přispívá k včasnému odhalování potenciálních defektů potrubí, čímž předchází potenciálním ekologickým a...

Rozsah projektu: Tvorba podnikového informačního systému pro sledování a vyhodnocování produktivity a efektivity výroby (pro výrobní závod Zruč). Poskytování second-level hot-line a technické podpory. Průběžná údržba a rozvoj software.

Rozsah projektu: Tvorba on-line rezervačního a prodejního systému pro celostátní prodejní sítě vstupenek TICKET ART CZ, PL a SK. Poskytování komplexních služeb v oblasti systémové analýzy, návrhu, vývoje a dlouhodobé údržby a rozvoje systému.  Vývoj...

Tvorba rozsáhlého rezervačního, objednávkového, výměnného a prodejního systému pro nové vozy určeného pro zahraniční prodejní sítě Škoda Auto a SEAT. Poskytování komplexních služeb v oblasti systémového návrhu, vývoje a dlouhodobé údržby a rozvoje systému....

Tvorba systému SEFI, který eviduje a zpracovává poruchy a problémy nových automobilů. Přínos systému spočívá ve schopnosti sledovat poruchovost v globálním měřítku, čímž umožňuje rychle analyzovat, jakým způsobem upravit výrobní postupy, aby se zjištěná poruchovost snížila. Přínos...

Projekt Web CCS: Web CCS je specializovaný systém, který zajišťuje podporu procesu tvorby rozpočtů a prognóz v elektronické podobě a jejich následný oběh mezi odpovědnými osobami, včetně zajištění schvalovacího procesu. Systém automaticky vyhodnocuje odchylky v rozpočtech jednotlivých...

Vytvoření informačního systému  AIS (Asset Management Information System) Budget  pro podporu procesů tvorby rozpočtů komerčních budov a jejich schvalování. Výchozí situace: Rozpočet byl schvalován pomocí komplexního excelovského souboru. Časově náročné ruční...

Mobilní verze projektu Karta života ZP211 umožňuje pojištěncům  Zdravotní pojišťovny ministerstva vnitra České republiky získat okamžitý přístup k informacím o svém zdravotním stavu. Každý vlastník Karty života zde má uložené záznamy o alergiích, chronických onemocněních,...

Základní funkcí systému SPH je administrace elektronických hodnotících formulářů pracovníků úseku letového provozu a jejich následné vyhodnocení na základě přidělených kompetencí. Systém je vyvinut jako kombinace webové aplikace pro sběr formulářů a desktopové aplikace pro jejich...

Nahrazení a rozšíření informačního systému AIS (Asset Management Information System) Report pro reporting finančních a provozních údajů z komerčních budov v centrální a východní Evropě. Výchozí situace: Již existoval systém vyvinutý najatým samostatným vývojářem....

Rozpočtování, controlling a forecasting je díky tomu dnes v CZ LOKO bezpečnější, s menší chybovostí a bez závislosti na MS Excel souborech. Finanční řízení není v rámci holdingu jednoduchou záležitostí. Musí pojmout 25 nákladových středisek a 200 rozpočtových účtů,...

Eurest řešil problémy s rozpočtovými a reportingovými procesy . Firma se potýkala se složitostí a chybovostí procesů, spojených s budgety a reporty pomocí souborů MS Excel. Závody posílaly svoje rozpočty vyplněné v Excelu, které pak musely být pracně nahrávány do informačního systému...

Vyjádření klienta: "Našemu kontrolingovému oddělení Fimis plně vyhovuje svojí přizpůsobivostí a mírou detailu zároveň. Plánování a řízení desítek nákladových středisek se tak stalo efektivnější díky okamžité konsolidaci a porovnání hodnot plánů a účetní skutečnosti."...

Společnost DEFINITY Systems provedla implementaci zakázkového informačního systému Lab Management Software ve společnosti EMERSON Climate Technologies s.r.o. Výsledkem je usnadnění a zefektivnění spolupráce mezi oddělením inženýringu a testovací laboratoří a snížení nákladů na zařízení a...

CMI Fakturační systém sloužící ke zpracování faktur, evidenci faktur a pokladních dokladů na základě objednávek vytvořených v systému PS2 popř. faktur doručených od klientů a dodavatelů. PS2 Provozní systém pro evidenci objednávek na základě plánování a pro...

Systém HRA byl vyvinut pro HR oddělení za účelem přehledu o docházce a přítomnosti zaměstnanců, žádostí o dovolenou a plánování služebních cest. Na základě administrace lze vytvářet exporty pro další zpracování. Systém je vyvinut jako webová aplikace pro firemní intranet/extranet....

Systém MEC Smart Metering vyřešil společnosti HEC Services, s.r.o. problém povinnostmi hlášení údajů o spotřebě elektrické energie. Usnadnil fakturaci odběratelům, přehled o vytížení distribuční sítě a odhalení kritických míst v rámci distribuce elektrické energie. Kromě toho systém...

Společnost Lundegaard hledala nástroj, se kterým by bylo možné mít firemní plánování pod kontrolou i po chystaném organizačním rozdělení společnosti na střediska.  Nasazení FIMISu zabránilo očekávané neúměrné náročnosti v plánování v MS Excel a hrozícímu nárůstu...

Super Zoubek je aplikací na čištění zoubků pro děti od 3 do 5 let. Super Zoubek má dětem hlavně přinést zábavu při čištění zoubků! Super Zoubek motivuje děti k pravidelnému čištění zoubků. Naučí se formou hry čistit si zoubky metodou čištění kousací, vnější a vnitřní plochy...

Informační systém CEPSIS je specializovaný systém, který zajišťuje pokročilou podporu procesů napříč celou společností CEPS. Aplikace je tvořena z několika sekcí, které jsou vzájemně provázány.  Mezi velmi důležité sekce patří ekonomika, assets, výkazy a reporty....

Informační systém EVLID byl realizován jako webová aplikace s inovativním uživatelským rozhraním usnadňujícím uživatelům každodenní práci se systémem. Klíčová část produktu umožňuje detailní evidenci členů politické strany. V neposlední řadě je dodané řešení integrováno do...

Realizovali jsme desítky SW řešení
v mnoha oborech.

S čím tedy můžeme pomoci vám?

*