Sdílet prostřednictvím


Návrh aplikační vrstvy mikroslužeb a webového rozhraní API

Tip

Tento obsah je výňatek z eBooku, architektury mikroslužeb .NET pro kontejnerizované aplikace .NET, které jsou k dispozici na .NET Docs nebo jako zdarma ke stažení PDF, které lze číst offline.

.NET Microservices Architecture for Containerized .NET Applications eBook cover thumbnail.

Použití principů SOLID a injektáž závislostí

Principy SOLID jsou kritické techniky, které se mají použít v jakékoli moderní a klíčové aplikaci, jako je vývoj mikroslužby se vzory DDD. SOLID je zkratka, která seskupuje pět základních principů:

  • Princip jednotné odpovědnosti

  • Princip otevření/uzavření

  • Princip nahrazení Liskovu

  • Princip oddělení rozhraní

  • Princip inverze závislostí

Solid je další informace o tom, jak navrhnout interní vrstvy aplikace nebo mikroslužby a jak oddělit závislosti mezi nimi. Nesouvisí s doménou, ale s technickým návrhem aplikace. Poslední princip, princip Inversion závislostí, umožňuje oddělit vrstvu infrastruktury od zbytku vrstev, což umožňuje lepší oddělení implementace vrstev DDD.

Injektáž závislostí (DI) je jedním ze způsobů implementace inverze závislostí. Jedná se o techniku pro dosažení volné vazby mezi objekty a jejich závislostmi. Místo přímé vytvoření instance spolupracovníků nebo použití statických odkazů (tj. pomocí nového...) jsou objekty, které třída potřebuje k provedení svých akcí, poskytnuty (nebo "vložené do") třídy. Třídy nejčastěji deklarují své závislosti prostřednictvím jejich konstruktoru, což jim umožní dodržovat explicitní závislosti princip. Injektáž závislostí je obvykle založená na konkrétních kontejnerech Inversion of Control (IoC). ASP.NET Core poskytuje jednoduchý integrovaný kontejner IoC, ale můžete také použít svůj oblíbený kontejner IoC, jako je Autofac nebo Ninject.

Dodržováním principů SOLID budou vaše třídy přirozeně malé, dobře faktorované a snadno testované. Jak ale můžete zjistit, jestli se do tříd vkládají příliš mnoho závislostí? Pokud di použijete prostřednictvím konstruktoru, bude snadné to zjistit pouhým pohledem na počet parametrů pro konstruktor. Pokud existuje příliš mnoho závislostí, obvykle se jedná o znaménko ( zápach kódu), že se vaše třída snaží udělat příliš mnoho a pravděpodobně porušuje princip single responsibility.

Další průvodce by podrobně pokrývala SOLID. Proto tato příručka vyžaduje, abyste měli pouze minimální znalosti těchto témat.

Další materiály