Martin Dybal

Vývojářský blog Martina Dybala

Podle kategorie

Úvod do DDD (Do main driven design)

Martin Dybal       01.04.2020             6932 zobrazení

Na poli softwarové architektury se pomaluje schyluje k další revoluci. Už od 70. let jsme si pomalu zvykali na vyšší programovací jazyky, užívali si návrhových vzorů a s přibývajícím výkonem PC jsme si mohli dovolit jím více plýtvat. Pomalu jsme používali čím dál vyšší jazyky, až jsme došli k objektovým jazykům, také používáme mnohem víc návrhových vzorů, které používají hodně malých tříd, ctíme pravidla CleanCode a SOLID. Někteří došli až ke Clean Architecture s použitím IoC/DI a to je skvělé, kód je dobře testovatelný, skvěle se uržuje i rozšiřuje. Problém jsou, ale zvýšené nároky na CPU. Na PC problém nemáme, ale uživatelé si zvykly na přenosná zařízení. Na nich ne jen že bojujeme s výdrží baterie, ale často i výkonem CPU samotným. Roste počet uživatelů tabletů a mobilních telefonů a především se stále více rozrůstá Internet of Trash (IoT). Zařízení jsou malá, baterie i výkon slabé, zde není místo pro šifrování komunikace nebo jiné složité operace. Ne jen proto se mezi vývojáři poslední době rychle šíří vlna DDD, které nabízí řešení.

Do main driven design

Název je sám o sobě vše říkající. Vše co lze, dáme do main metody. Tím zminimalizujeme počet skoků. Také se pokusíme zminimalizovat počet tříd nebo je nepoužíváme vůbec a ušetříme tak alokace. Pokud přeci jen potřebujeme nějakou metodu, můžeme ji opatřit atributem [MethodImpl(MethodImplOptions.AggressiveInlining)]. Do main driven design přínáší i další výhody, například není potřeba pracovat s velkým množstvým souborů, vystačíme si s jedním i když poněkud delším souborem program.cs.

 

hodnocení článku

0       Hodnotit mohou jen registrované uživatelé.

 

Nový příspěvek

 

                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.

Nyní zakládáte pod článkem nové diskusní vlákno.
Pokud chcete reagovat na jiný příspěvek, klikněte na tlačítko "Odpovědět" u některého diskusního příspěvku.

Nyní odpovídáte na příspěvek pod článkem. Nebo chcete raději založit nové vlákno?

 

  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback