Digital Data Cube Framework – vývoj databázových aplikací bez kompromisů
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

Digital Data Cube Framework – vývoj databázových aplikací bez kompromisůDigital Data Cube Framework – vývoj databázových aplikací bez kompromisů

 

Digital Data Cube Framework – vývoj databázových aplikací bez kompromisů

Google       Google       14. 3. 2016       6 264×

Systém Digital Data Cube© Framework přináší zcela odlišný způsob pohledu na vývoj databázových aplikací, než je doposud běžné. To je patrné zejména ve způsobu návrhu datového modelu a kolekce abstraktních tříd, které s tímto modelem pracují. Nasazení Digital Data Cube© Frameworku vede ke zpřehlednění zdrojového kódu, minimalizaci chyb, zkrácení vývojového cyklu a podstatným úsporám nákladů na vývoj.

Reklama
Reklama

Používáte pro podporu vývoje databázových aplikací produkty třetích stran, ORM frameworky a pod.? Pak jste asi zaznamenali okamžik, kdy se od jisté velikosti projektu začnete potýkat s řadou problémů, o nichž jste na počátku vývoje neměli nejmenší tušení. Čím více je Váš projekt rozsáhlejší, tím více se cítíte být omezenější a svázanější počátečními pravidly. Máte pocit, že jste zahnáni do slepé uličky. Vzniklé problémy pak řešíte nestandardní implementací. Zjišťujete, že se Vaše původně ideální koncepce rozpadá, ztrácíte přehled nad konzistencí zdrojového kódu, řízením projektu i náklady na vývoj. Ty byly, mimo jiné, již dávno překročeny.

V takovém případě je nutné hledat jiná řešení. Jedním z nich, které naznačené problémy řeší, je Digital Data Cube© Framework. Framework, který Vám nabízí mnohem více.

Digital Data Cube© Framework (dále jen DDCF) vznikl na základě dlouholetých zkušeností s vývojem databázových aplikací, neboť použití dostupných ORM frameworků nevedlo k předpokládaným výsledkům - usnadnění vývojového cyklu. DDCF je systémové řešení, určené jako jádro pro vývoj rozsáhlých databázových systémů, kde je důležitou součástí ochrana uložených údajů a sofistikované řízení jejich změn.

DDCF je postaven na definici základních premis:

  1. Databázové aplikace běží v multiuživatelském prostředí.
  2. Výsledky zpracování, které vrátí databázový server klientovi, jsou v ten okamžik zastaralé
  3. Data, uložená v databázi, odrážejí realitu a v čase mohou nabývat různých hodnot.
  4. Provedené změny dat musí (mohou) být schvalovány nebo odmítány
  5. Aplikace může čerpat data z jakéhokoliv datového zdroje bez nutnosti úprav zdrojového kódu.

Dodržení základní myšlenky umožnilo vyvinout koncepční řešení, které dává vývojářům databázových aplikací možnosti, jenž u jiných systémů (ORM a pod.) nejsou dostupná. Vaše databázové aplikace, postavené na DDCF mohou:

  • pracovat s jakoukoliv databází bez úpravy zdrojového kódu aplikace
  • napojovat se na datové zdroje jak přes VPN tak přes webové služby
  • držet plnou historii změn záznamů
  • vracet aktuální data k jakémukoliv dni v minulosti tak, jak byla k tomuto dni uložena
  • vybírat záznamy, které byly za zvolené období vytvořeny, modifikovány či odstraněny
  • monitorovat provedené změny v databázi
  • schvalovat a případně odmítat prováděné změny a to až do 49 úrovní
  • identifikovat uživatele, který data změnil (maker) či změnu schválil (checker)
  • zabezpečovat ochranu přepisování dat v multiuživatelském provozu
  • odstraňovat již nepotřebné záznamy a v případě potřeby je opětovně obnovovat do původní podoby
  • současně ukládat a zpracovávat data v tzv. multijazykovém režimu
  • být nezávislé na počtu jazyků, ve kterých jsou data simultálně ukládána
  • komentovat jakékoliv záznamy a změny záznamů poznámkami v daném jazyce
  • připojovat binární přílohy ke všem záznamům v databázi

DDCF přináší zcela nový způsob řešení vývoje. Umožňuje implementaci jisté, předem dané, množiny požadavků na vlastnosti a chování databázových aplikací (viz. výše), a to pomocí tříd odvozených ze základních virtuálních tříd DDCF. Mechanismy databáze (zde relačního typu, s jejich systémem tabulek a sloupců) jsou rozšířeny o zcela nový způsob definice struktur dat v databázi a k nim příslušných ovládacích funkcí a tvoří základ funkčnosti DDCF.

Schéma vnitřní struktury DDCF

Pro snadné nasazení nabízí DDCF množství abstraktních tříd (předků), jenž mají implementovány veškeré kontrolní mechanismy. Tyto třídy pokrývají všechna možná řešení, potřebná pro vývoj databázových aplikací. Z nich si vývojový tým již odvozuje (dědí) své vlastní konkrétní implementace. Řada tříd (předků) je připravena ve finálním stavu. Ty je možné pouze zdědit bez dalšího rozšíření. Jedná se např. o Poznámku, Přílohu a pod. Ostatní typy tříd je po odvození nutné rozšířit o konkrétní požadované vlastnosti.

Unikátní implementovanou vlastností DDCF jsou jazykové verze záznamů. Pozor, neplést si s jazykovou verzí aplikace! DDCF umožňuje současné zpracování údajů multijazyčně. To znamená, že přihlášení uživatelé pracují s aplikací na jedné databázi ve svém nativním jazyce a data jsou jim z databáze vracena (zobrazována) podle jejich jazykového nastavení (v češtině, němčině, angličtině a pod). Systém DDCF zabezpečuje, aby se např. skladová položka „šroub“ zobrazila v němčině jako „Schraube“, v angličtině jako „bolt“ a ve slovenštině jako „skrutka“. Počet současně používaných jazyků není omezen a v případě implementace dalšího jazyka není nutné upravovat jak zdrojový kód aplikace, tak ani strukturu databáze!

Veškeré možnosti DDCF nelze ošetřit pouze v kódu frameworku. Je nutné implementovat i řadu kontrolních mechanismů přímo v databázi. DDCF je využitelný v rámci databází, které umožňují pracovat s uloženými procedurami nebo minimálně s parametrizovanými dotazy. Proto se vývojový tým neobejde bez znalostí konkrétní databáze, což může znalec ORM frameworků považovat za nevýhodu. Pozitiva převládají v okamžiku vývoje rozsáhlých databázových systémů, kdy potřebujeme mít řadu věcí pod kontrolou. Lze tak plně využít všech možností databáze - schémata databáze, vracet počítané sloupce, provádět validace vstupně – výstupních operací přímo v databázi a pod. Samozřejmě rychlost odezvy je, oproti jiným frameworkům, nesrovnatelná.

DDCF nepodporuje tvorbu dotazů přímo v kódu aplikace (např. pomocí LINQ2SQL a pod.), neboť se jedná o nejčastější příčinu vzniku chyb. To proto, že v aplikacích nejsou vytvářeny pouze triviální dotazy typu „podej záznam podle Id“, ale i dotazy složitější. Je-li tvořen složitý dotaz, spojující více tabulek, včetně použití agregovaných funkcí, dochází k větší pravděpodobnosti vzniku chyby. Případně chybný výsledek dotazu může být zapříčiněn jak omezenou množinou testovaných dat, na níž se dotaz ladí, tak i znalostmi a zkušenostmi vývojáře. Nepříjemný problém může nastat v okamžiku ostrého nasazení, kdy je nutné zpracovávat již obsáhlé množiny záznamů. Pak jakákoliv banální chyba v konstrukci dotazu, který vrací nesprávné výsledky, vede k nutnosti opravy zdrojového kódu, k nové kompilaci a novým instalacím, což je nepřijatelné. Z pohledu DDCF jsou tyto situace řešeny právě na straně databáze.

DDCF komunikuje s datovými zdroji prostřednictvím poskytovatelů dat (data providers) a to jak v rámci VPN (prostřednictvím connection stringu), tak v rámci webových služeb. Součástí dodávaného řešení je MSSQL data provider a WebService data provider. Vývojáři si ale mohou snadno odvodit jakéhokoliv data providera dle svých potřeb.

Rozsáhké konfigurace, známé z jiných systémů, nejsou při nasazení DDCF potřebné. Výhodou DDCF, mimo jiné, je snadná implementace a jednotný přístup. Tím je docíleno zpřehlednění a zjednodušení zdrojového kódu (standardizace), včetně minimalizace vzniku potencionálních chyb v kódu, což vede ke snadnému osvojení si systému vývojáři a zkrácení vývojového cyklu.

Jak bylo zmíněno výše, DDCF je úzce propojen s databází. Ne však ve smyslu závislosti na SQL syntaxi konkrétní databáze, ale ve smyslu struktury tabulek a dalších podpůrných prvků, které je nutné do příslušné databáze implementovat. Nasazení DDCF předchází školení vývojového týmu, jehož cílem je objasnit jak strukturu a implementaci DDCF, tak i seznámení se s návrhem datového modelu a základním obsahem databáze.

DDCF je synonymem pro inovativní řešení v oblasti vývoje rozsáhlých databázových systémů, kam vnáší zcela odlišný pohled. Implementuje řadu unikátních vlastností a odstraňuje tzv. úzké profily při  vývoji. Umožňuje přímé nasazení ve firmách, které vyvíjejí rozsáhlé databázové systémy s důrazem na zabezpečení citlivých dat, jako je státní správa, zdravotnictví, finanční a pojišťovací oblast, ekonomická či personální oblast a pod. Popsané vlastnosti jsou snadno aplikovatelné na jakékoliv databázové řešení, aniž by muselo být dodatečně vyvíjeno či upravováno.

Pomocí DDCF nejenže můžete postavit jakoukoliv databázovou aplikaci s výše uvedenými vlastnostmi, ale současně zkrátit časový limit a dosáhnout významných úspor nákladů na její vývoj.

Podrobnější informace získáte na http://digitaldata3d.eu.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

2 názory  —  2 nové  
Hlasování bylo ukončeno    
0 hlasů

Nové články

Obrázek ke článku Blockchain & Bitcoin konference

Blockchain & Bitcoin konference

V pátek 19. 5. 2017 se v pražském konferenčním centru Andel’s konala Blockchain & Bitcoin konference. Řada odborníků a podnikatelů v oboru blockchainu a kryptoměn představila možnosti budoucího směřování tohoto oboru. Speakeři většinou rusky mluvící provenience prezentovali řešení svých firem založená na technologii blockchainu.

Reklama
Reklama
Obrázek ke článku Malware KONNI se úspěšně skrýval 3 roky. Odhalil ho bezpečnostní tým Cisco Talos

Malware KONNI se úspěšně skrýval 3 roky. Odhalil ho bezpečnostní tým Cisco Talos

Bezpečnostní tým Cisco Talos odhalil celkem 4 kampaně dosud neobjeveného malwaru, který dostal jméno KONNI. Ten se dokázal úspěšně maskovat od roku 2014. Zpočátku se malware zaměřoval pouze na krádeže citlivých dat. Za 3 roky se ale několikrát vyvinul, přičemž jeho současná verze umožňuje útočníkovi z infikovaného počítače nejenom krást data, ale i mapovat stisky na klávesnici, pořizovat screenshoty obrazovky či v zařízení spustit libovolný kód. Pro odvedení pozornosti oběti zasílali útočníci v příloze také obrázek, zprávu a výhružkách severokorejského režimu či kontakty na členy mezinárodních organizací.

Obrázek ke článku Pouze jedna z deseti lokálních firem ví o pokutách plynoucích z GDPR

Pouze jedna z deseti lokálních firem ví o pokutách plynoucích z GDPR

Trend Micro, celosvětový lídr v oblasti bezpečnostních řešení a VMware, přední světový dodavatel cloudové infrastruktury a řešení pro podnikovou mobilitu, oznámily výsledky výzkumu mezi českými a slovenskými manažery zodpovědnými za ochranu osobních údajů, který zjišťoval, jak jsou připraveni na nové nařízení o ochraně osobních údajů (GDPR). Většina firem v České republice a na Slovensku nad 100 zaměstnanců je již s novým nařízením GDPR obeznámena. Výzkum provedený ve spolupráci s agenturou Ipsos ukázal, že téměř 8 firem z 10 o nařízení ví, přičemž jeho znalost je o něco vyšší na Slovensku (89 %) než v České republice (69 %).

Obrázek ke článku Vyděračský software Locky se vrací, tváří se jako potvrzení platby, odhalil tým Cisco Talos

Vyděračský software Locky se vrací, tváří se jako potvrzení platby, odhalil tým Cisco Talos

Jeden z nejznámějších ransomwarů, Locky, se vrací. Po většinu roku 2016 patřil mezi nejrozšířenější vyděračské softwary. Ke svému šíření využíval emailové kampaně s infikovanými přílohami. Ransomware Locky byl rozesílán prostřednictvím botnetu (internetový robot zasílající spamy) Necurs. Jeho aktivita na konci roku 2016 téměř upadla a spolu s ní i šíření ransomwaru Locky. Před několika týdny se Necurs opět probudil a začal posílat spamy nabízející výhodný nákup akcií. Dne 21. dubna zaznamenal bezpečnostní tým Cisco Talos první velkou kampaň ransomwaru Locky prostřednictvím botnetu Necurs za posledních několik měsíců.

Reklama autora

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý