• 12/01/2020
  • 6 minut, aby si
    • Y
    • g
    • P
    • +1

„Atwood Zákona: Jakékoli aplikace, která může být napsán v Javascriptu, bude nakonec být napsaný v Javascriptu.,“
– Jeff Atwood

Existují dva obecné přístupy k budování webových aplikací dnes: tradiční webové aplikace, které provádějí většinu aplikační logiky na serveru a single-page aplikace (Spa), které vykonávají většinu uživatelské rozhraní, logika webový prohlížeč komunikuje s webovým serverem, a primárně pomocí webového rozhraní Api. Hybridní přístup je také možný, nejjednodušší je hostit jednu nebo více bohatých spa-like subapplications v rámci větší tradiční webové aplikace.,

používejte tradiční webové aplikace, pokud:

  • Požadavky vaší aplikace na straně klienta jsou jednoduché nebo dokonce pouze pro čtení.

  • vaše aplikace musí fungovat v prohlížečích bez podpory JavaScriptu.

  • váš tým není obeznámen s technikami vývoje JavaScriptu nebo TypeScriptu.

použijte SPA, když:

  • vaše aplikace musí vystavit bohaté uživatelské rozhraní s mnoha funkcemi.

  • váš tým je obeznámen s vývojem JavaScriptu, TypeScriptu nebo Blažor WebAssembly.,

  • vaše aplikace již musí vystavit API pro jiné (interní nebo veřejné) klienty.

navíc lázeňské rámce vyžadují větší architektonické a bezpečnostní znalosti. Díky častým aktualizacím a novým rámcům zažívají větší churn než tradiční webové aplikace. Konfigurace automatizovaných procesů sestavení a nasazení a využití možností nasazení, jako jsou kontejnery, může být u lázeňských aplikací obtížnější než tradiční webové aplikace.

zlepšení uživatelských zkušeností umožněných lázeňským přístupem musí být zváženo proti těmto úvahám.,

Blazor

ASP.NET Jádro obsahuje model pro vytváření bohatých, interaktivních, a composable uživatelská rozhraní, tzv. Blazor. Blazor server-side umožňuje vývojářům vytvářet uživatelské ROZHRANÍ pomocí C# a Břitva na server a ROZHRANÍ, aby se interaktivně připojena do prohlížeče v reálném čase pomocí trvalé SignalR připojení. Blazor WebAssembly představuje další možnost pro aplikace Blazor, která jim umožňuje běžet v prohlížeči pomocí WebAssembly. Protože je to skutečné. Net běží na WebAssembly, můžete znovu použít kód a knihovny ze serverových částí aplikace.,

Blazor nabízí novou, třetí možnost, kterou je třeba zvážit při hodnocení, zda vytvořit čistě serverem vykreslenou webovou aplikaci nebo lázně. Můžete vytvářet bohaté, lázeňské chování na straně klienta pomocí Blazor, bez nutnosti významného vývoje JavaScriptu. Aplikace Blazor mohou volat API pro vyžádání dat nebo provádění operací na straně serveru. V případě potřeby mohou spolupracovat s JavaScriptem, aby mohli využít knihoven JavaScriptu a rámců.,

Zvážit budování své webové aplikace s Blazor, když:

  • Vaše žádost musí vystavit bohaté uživatelské rozhraní,

  • Váš tým je mnohem pohodlnější .NET vývoj, než JavaScript nebo Stroji vývoj

Pokud máte existující web forms uvažujete o migraci .NET Core nebo nejnovější .NET, přečtěte si zdarma e-book, Blazor pro Web Forms Vývojáře, aby zjistili, zda má smysl uvažovat o migraci, aby to Blazor.

pro více informací o Blazor, viz Začínáme s Blazor.,

kdy zvolit tradiční webové aplikace

následující část je podrobnějším vysvětlením dříve uvedených důvodů pro výběr tradičních webových aplikací.

vaše aplikace má jednoduché, možná pouze pro čtení, požadavky na straně klienta

mnoho webových aplikací je primárně spotřebováno pouze pro čtení drtivou většinou jejich uživatelů. Aplikace pouze pro čtení (nebo převážně pro čtení) bývají mnohem jednodušší než aplikace, které udržují a manipulují s velkým státem., Například, vyhledávač se může skládat z jednoho vstupního bodu do textového pole a druhou stránku pro zobrazení výsledků vyhledávání. Anonymní uživatelé mohou snadno vytvářet požadavky a logiku na straně klienta není třeba. Stejně tak aplikace pro správu blogů nebo obsahu, která čelí veřejnosti, obvykle sestává hlavně z obsahu s malým chováním na straně klienta. Takové aplikace jsou snadno postaveny jako tradiční webové aplikace založené na serverech, které provádějí logiku na webovém serveru a vykreslují HTML, které mají být zobrazeny v prohlížeči., Skutečnost, že každá jedinečná stránka webu má svou vlastní adresu URL, kterou lze záložkami a indexovat pomocí vyhledávačů (ve výchozím nastavení, aniž byste museli tuto funkci přidávat jako samostatnou funkci aplikace), je v takových scénářích také jasnou výhodou.

Vaše aplikace potřebuje funkce v prohlížečích bez podpory Javascriptu

Webové aplikace, které potřebují fungovat v prohlížečích s omezenou nebo žádnou podporu Javascriptu by měly být zapsány pomocí tradiční webové aplikace, pracovní postupy (nebo alespoň být schopen padat zpět k takovému chování)., Lázně vyžadují JavaScript na straně klienta, aby fungovaly; pokud není k dispozici, lázně nejsou dobrou volbou.

Váš tým je obeznámeni s JavaScript nebo Stroji rozvoj techniky,

Pokud váš tým je obeznámeni s JavaScript nebo Stroji, ale je obeznámen s server-side webové aplikace, vývoj, pak se bude pravděpodobně schopen dodat tradiční webové aplikace rychleji, než LÁZNĚ., Pokud není cílem naučit se programovat lázně, nebo je vyžadována uživatelská zkušenost poskytovaná lázněmi, tradiční webové aplikace jsou produktivnější volbou pro týmy, které jsou již obeznámeny s jejich budováním.

kdy zvolit SPAs

následující část je podrobnějším vysvětlením, kdy zvolit styl vývoje aplikací na jedné stránce pro Vaši webovou aplikaci.,

Vaše žádost musí vystavit bohaté uživatelské rozhraní s mnoha funkcemi,

Lázní může podporovat bohaté na straně klienta funkce, které nevyžaduje znovunačtení stránky jako uživatelé provádět akce, nebo navigovat mezi oblastmi aplikace. SPAs se může načítat rychleji, načítat data na pozadí a jednotlivé uživatelské akce jsou citlivější, protože plné načítání stránek je vzácné. SPAs může podporovat přírůstkové aktualizace, ukládání částečně vyplněných formulářů nebo dokumentů, aniž by uživatel musel kliknout na tlačítko pro odeslání formuláře., Lázně mohou podporovat bohaté chování na straně klienta, jako je drag-and-drop, mnohem snadněji než tradiční aplikace. SPAs může být navržen tak, aby běžel v odpojeném režimu, takže aktualizace modelu na straně klienta, které jsou nakonec synchronizovány zpět na server po obnovení připojení. Vyberte si aplikaci ve stylu SPA, pokud požadavky vaší aplikace zahrnují bohatou funkčnost, která přesahuje to, co nabízejí typické HTML formuláře.,

Často, Lázně je třeba implementovat funkce, které jsou integrovány do tradiční webové aplikace, jako je například zobrazení smysluplné URL v adresním řádku odrážející aktuální operaci (a který umožňuje uživatelům na záložku nebo odkaz na tuto adresu URL pro návrat k ní). SPAs by také měl uživatelům umožnit používat tlačítka zpět a vpřed prohlížeče s výsledky, které je nepřekvapí.

Váš tým je obeznámen s JavaScript a/nebo Stroji vývoj

Psaní Lázně vyžaduje znalost Javascriptu a/nebo Stroji a client-side programovací techniky a knihovny., Váš tým by měl být kompetentní při psaní moderního JavaScriptu pomocí lázeňského rámce, jako je Angular.

Vaše žádost již musí vystavit API pro další (vnitřní či veřejné), klienty,

Pokud jste již podporuje webové rozhraní API pro použití jinými klienty, může to vyžadovat méně úsilí vytvořit SPA implementace, která využívá těchto rozhraní Api, spíše než reprodukci logiky na straně serveru podobě. SPAs rozsáhle využívají webové rozhraní API k dotazování a aktualizaci dat, protože uživatelé komunikují s aplikací.,

kdy zvolit Blazor

následující část je podrobnější vysvětlení, kdy zvolit Blazor pro Vaši webovou aplikaci.

Vaše žádost musí vystavit bohaté uživatelské rozhraní,

Jako je JavaScript-založené Lázně, Blazor aplikace může podporovat bohaté klientské chování, aniž by se stránka znovu načte. Tyto aplikace jsou více citlivé na uživatele, načítání pouze data (nebo HTML) potřebné k reakci na danou interakci uživatele. Správně navržené aplikace Blazor na straně serveru lze nakonfigurovat tak, aby fungovaly jako aplikace Blazor na straně klienta s minimálními změnami, jakmile je tato funkce podporována.,

Váš tým je mnohem pohodlnější .NET vývoj, než JavaScript nebo Stroji vývoj

Mnoho vývojářů jsou více produktivní .ČISTÝ a Břitva, než s client-side jazyky, jako je JavaScript nebo Stroji. Od server-side aplikace je již vyvíjen .NET, pomocí Blazor zajišťuje každý .NET developer na tým může pochopit a potenciálně vytvořit chování front-end aplikace.,

rozhodovací tabulka

následující tabulka rozhodnutí shrnuje některé ze základních faktorů, které je třeba zvážit při výběru mezi tradiční webovou aplikací, lázněmi nebo aplikací Blazor.,

Požadované Týmu Znalost JavaScript/TypeScript Minimální Vyžaduje Minimální Podpora Prohlížečů bez Skriptování Podporována Není Podporován Podporována Minimální Client-Side Aplikace Chování Vhodný Overkill Životaschopné Bohaté, Komplexní Uživatelské Rozhraní Požadavky Omezené Vhodný Vhodný

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *