ORDA, což je zkratka pro Object Relational Data Access, je metoda přístupu k datům, která kombinuje výhody objektově orientovaného programování s výhodami relačních databází a umožňuje vývojářům soustředit se na řešení obchodních problémů spíše než na správu přístupu k datům.
Ať už jste v oblasti ORDA nováčci, nebo ji již znáte a chcete si rozšířit své znalosti, považujte tento příspěvek na blogu za plán, který vás provede procesem učení.
Tento blogový příspěvek obsahuje následující informace:
- Výhody ORDA
- Přehled systému ORDA
- Hlavní koncept
- Rozhraní API ORDA
- Abstrakční vrstva ORDA
- Vzdálená práce
- Optimalizace požadavků
- Systém oprávnění
- Sdílení dat mezi procesy
Bez dalších okolků se pusťme do práce!
Proč bych se měl zajímat o ORDA?
Než se pustíme do technických detailů, uveďme si některé výhody systému ORDA:
Vše je objekt
ORDA je svět, ve kterém je vše objektem, včetně databáze.
Tento přístup umožňuje přistupovat kcelé databázi 4D pomocí objektového přístupu, což usnadňuje práci s daty a může pomoci snížit složitost kódu. ORDA mapuje data na koncepty reálného světa, takže používání dat se stává jednoduchým a odstraňuje potřebu hlubokého porozumění relační struktuře.
Obchodně orientovaný kód s třídami
ORDA přichází s třídami určenými pro datový model. Díky třídám lze skrýt složitost fyzické implementace dat a aplikace může snadno vystavit služby, být lépe spravovatelná, snadněji udržovatelná a bezproblémově integrovatelná s jinými aplikacemi.
Výkon z výroby
ORDA může pomoci zlepšit výkon aplikací tím, že poskytuje několik optimalizačních technik, například kontexty a líné načítání. Tyto techniky mohou pomoci snížit počet databázových dotazů, které je třeba provést, což vede k rychlejší odezvě aplikace. Nejlepší část? Vše je automatické; na rozdíl od jazyka SQL nebo nástroje ORM není třeba nic programovat.
Zvýšená škálovatelnost
ORDA může pomoci zvýšit škálovatelnost aplikací díky podpoře distribuovaných databázových architektur. To znamená, že data lze rozložit na více databázových serverů, což může pomoci zvýšit výkon a zpracovat významnější množství dat.
Otevřenost a rozšiřitelnost
ORDA umožňuje vytvářet bezproblémovou integraci mezi různými systémy. Lze ji kombinovat se serverem REST a vystavit tak obchodní logiku s řízeným rozhraním API (prostřednictvím vašich tříd) pro další nástroje, například webové frameworky jako Angular nebo React.
Poté, co jsme se seznámili s některými výhodami ORDA a s tím, jak může tato technologie pozitivně ovlivnit vaši aplikaci, se vrhneme na technické detaily.
Globální přehled ORDA
Toto schéma zobrazuje globální přehled veškerého použití ORDA:
- ORDA poskytuje rozhraní API pro práci s daty a robustní abstrakční vrstvu, která bude vystavena jako obchodní rozhraní API.
- K dispozici je kompletní systém oprávnění pro filtrování přístupu k vašim datům.
- S ORDA můžete pracovat se serverem REST pomocí vzdálených datových úložišť nebo rozhraní REST API.
- ORDA můžete používat, pokud pracujete v režimu klient-server.
- Kód ORDA lze také použít ve webové aplikaci (4DACTION, 4D tagy).
Toto schéma by vám mělo poskytnout přehled o tom, jak se ORDA připojuje k různým částem 4D. Jakmile je vám tato představa jasná, vydejte se podle následujících kroků na cestu učení.
Nechť cesta za poznáním začne!
Krok 1 – Hlavní pojmy
Hlavní pojmy ORDA můžete objevit zde.
Nejprve se seznamte s pojmy datové úložiště, datová třída, entita a výběry entit. Pochopte význam těchto pojmů, protože se s nimi budete při práci s ORDA často setkávat.
Krok 2 – Rozhraní API ORDA
Zadruhé se podívejte na objektově orientovaná rozhraní API ORDA a zjistěte, jak můžete pomocí těchto rozhraní API pracovat s daty.
Například nejčastěji používaným rozhraním API je query(), které slouží ke spuštění dotazu na vaši databázi.
Abyste mohli lépe objevovat jednotlivá rozhraní API, najdete zde seznam příspěvků na blogu s ukázkovými aplikacemi, se kterými si můžete hrát.
- Dotazování do databáze pomocí objektově orientovaného přístupu
- Přechod mezi aktuálními výběry do ORDA a zpět
- Akce CRUD
- Logické operace
- Manipulace s entitami
- Práce s objekty a kolekcemi
- Výpočet statistik
- Řazení podle vzorce
- Dotazování pomocí vzorců
- Pojmenované zástupné znaky pro cesty k atributům
- Pojmenované zástupné symboly
- Výběr entit: metody extract() a refresh()
- Členské metody pro získání informací o struktuře
- Porovnání dvou výběrů entit
- Optimistické mechanismy zamykání
- Uzamykání entit
- Psaní obecného kódu
- Příklad generického kódu
- Tahák ORDA
objevte sílu vztahů s ordou
Jak jsme již uvedli, ORDA je metoda přístupu k datům, která kombinuje objektově orientované programování s výhodami relačních databází.
Pokud chcete jít ještě dál a objevit všechny výhody, které můžete z relací pomocí ORDA vytěžit, přinášíme vám sérii ukázek, kde se dozvíte, jak ušetřit mnoho řádků kódu a vytvořit uživatelsky přívětivé rozhraní.
Propojení s klasickým kódem 4D
Pokud stále používáte klasický kód 4D (který všichni známe a milujeme), můžete jej v případě potřeby spojit s kódem ORDA.
To je užitečné pro postupné zavádění konceptů ORDA ve vaší aplikaci.
Podrobnosti najdete v tomto příspěvku na blogu.
Krok 3 – Abstraktní vrstva ORDA.
Chcete-li jít s ORDA dále, využijte abstrakční vrstvu.
V této vrstvě budete implementovat veškerou obchodní logiku prostřednictvím tříd datového modelu ORDA.
Manipulace s třídami je v objektově orientovaném programování o krok dále. Každá třída může přebírat obchodní logiku ve funkcích.
Objevte výhody vypočtených atributů a aliasů. Je snadné nastavit vypočtený atribut definující jeho vzorec výpočtu a veškerou jeho obchodní logiku. Nebo definujte alias jako jakýkoli jiný atribut v datovém modelu.
Vývojáři tedy budou tuto abstrakční vrstvu konzumovat místo toho, aby se zabývali fyzickou implementační vrstvou.
krok 4 – Práce na dálku
Nyní je čas na zábavnou část 🙂
klient-server
ORDA můžete používat v režimu klient-server. Pomocí příkazu ds získáte objekt datového úložiště a můžete začít pracovat s daty.
Zde jsou uvedeny další podrobnosti o konkrétních funkcích pro práci v C/S.
Vzdálený datový sklad
Pokud pracujete v klientském serveru, jste omezeni na aktuální databázi, což vyžaduje trvalé připojení k síti.
Díky vzdálenému datovému skladu může aplikace získávat data z jiné vzdálené databáze 4D vystavené na serveru 4D!
Tato funkce pokrývá mnoho případů použití:
- organizovat své aplikace tak, aby pracovaly offline a synchronizovaly místní data pouze tehdy, když jsou vzdálená data dostupná.
- publikovat data na více serverech a podle potřeby přepínat z jednoho na druhý
- rozdělte svůj datový model do různých databází( např. místní data, mezinárodní data). Pak můžete mít svá data distribuovaná na různých místech a přesto přístupná prostřednictvím jediného kódu klienta 4D (metody projektu a objekty formuláře).
Přečtěte si tyto příspěvky na blogu a dozvíte se více:
Rozhraní API REST
Rozhraní API serveru REST se opírají o koncepty ORDA.
Zde je několik cenných příspěvků na blogu, kde se dozvíte, jak používat rozhraní REST API.
Krok 5 – optimalizace požadavků
Při vzdálené práci s ORDA mějte na paměti, že požadavky jsou automaticky optimalizovány tak, aby se serveru dotazovaly pouze na potřebné atributy. Kromě toho můžete také přizpůsobit vlastní optimalizační pravidla pro zlepšení výkonu.
Chcete-li se krok za krokem dozvědět více, zde je seznam příspěvků na blogu.
- Použití ORDA ke zvýšení výkonu
- Úplná kontrola nad požadavky REST
- Optimalizace požadavků a ukázka
- Protokolování požadavků
A zde je živá videoukázka, která byla pořízena během Summitu 2020
krok 6 – Systém oprávnění pro filtrování přístupu k datům
Filtrování přístupu k datům je nezbytnou funkcí, která zabrání škodlivému přístupu k vaší aplikaci.
Od verze v19R8 můžete využívat výkonný a plně přizpůsobitelný systém pro ochranu dat před neoprávněnými uživateli. Jedná se o systém ochrany vašich dat v závislosti na tom, kdo k nim přistupuje a ke kterým datům.
Zahrnuje všechny webové procesy, jako jsou požadavky REST, požadavky přijaté ve vzdáleném datovém úložišti a webové procesy, jako je 4DACTION nebo 4D tagy.
Přečtěte si tento příspěvek na blogu a dozvíte se více.
Na závěr
Nezapomeňte, že ORDA je výkonný nástroj, který může zrychlit a zefektivnit váš vývojový proces a přístup k datům.
Doufáme, že vám tento příspěvek na blogu pomohl. Neváhejte se ptát na fóru.
Rádi vám s nástrojem ORDA pomůžeme!