Avatar
Luboš Hnědý:24. února 8:34

Zdravím mám otázku ohledně toho jaký projekt si v .net core vybrat. Mluvím o webové aplikace. Jde mi hlavně o to jestli si vybrat klasické mvc a nebo razor pages. Přečetl jsem si pár článků a svůj názor mám, ale stejně budu radši, když mi k tomu ještě napíše někdo kdo s tím má zkušenost v praxi. Mám pouze následující dvě otázky

  1. Co si myslíte že je lepší použít a proč? Výhody, nevýhody? mvc/razor pages
  2. Pokud mám například nějakou frontend aplikaci, můžu tam použít směs mvc a angularu? Například přehledy v angularu a vytváření, editaci v .net? Tohle je otázka trochu mimo, ale taky se to týká výběru projektu.

Předem díky za každou radu :)

Zkusil jsem: Četl jsem si různé články, ale stejně bych chtěl vědět názor zkušenějších programátorů.

Chci docílit: Snažím se dosáhnout toho, abych si rozšířil znalosti.

 
Odpovědět 24. února 8:34
Avatar
Ilja Židkov
Člen
Avatar
Ilja Židkov:24. února 9:12

Co si myslíte že je lepší použít a proč?

Tady bych neřešil, co je lepší nebo horší, spíše vyplatí nebo nevyplatí.

1. Výhody MVC
Jednoduchá implementace
Vyžaduje znalost jednoho programovacího jazyka (C#)
Užití: Blogy, nákupní košíky, částečně sociální sítě
"Nevýhody"
Obnovení stránky
Přeci jenom rendrování HTML je pro server náročnější, než například vracet JSON.

2.

Pokud mám například nějakou frontend aplikaci, můžu tam použít směs mvc a angularu?

Ano, to lze. Pomocí Angular můžeš posílat AJAX požadavky na server bez potřeby o obnovení stránky. (I když Angular pouze na AJAX je docela mazec. Zvolil bych spíše React nebo Vue).

Chci docílit: Snažím se dosáhnout toho, abych si rozšířil znalosti.

To, že SPA (Single Page Application) je populární, neznamená, že je to "lepší". Pokud tvá aplikace bude často aktualizovaná (například Chat, geolokace, objednávky v reálném čase, hry apod.) tady by se vyplatilo použít SPA a nenutit uživatele obnovovat stránku.

V roce 2019, bych nejspíše volil metodu Web API a vracel JSON na rozdíl od HTML. Později se rozhodneš, jestli chceš jako pohled použít Razor, WinForm, WPF, Xamarin cokoliv...

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět  +3 24. února 9:12
Avatar
Lako
Člen
Avatar
Odpovídá na Luboš Hnědý
Lako:24. února 9:36

Záleží jak velký projekt se chystáš tvořit. Na ty menší jsou lepší Razor Pages - jsou trochu jednodušší. Komplexnější logiku poskládáš lépe na MVC..
Začal bych na Razor pages.

 
Nahoru Odpovědět 24. února 9:36
Avatar
Odpovídá na Ilja Židkov
Luboš Hnědý:24. února 9:54

Supr moc děkuji za rady :) Opravdu moc si toho cením. Ok vím tedy, že pro klomplexnější řešení je spíše mvc, pro menší řešení můžu použít razor pages. V mvc dělám již dlouhou dobu a zaujalo mě, že .net chce přijít s něčím jiním, tak se na to když tak podívám :) Angular se nehodí použít z jakého důvodu? TypeScript? Kanón na vrabce? Ano chápu, že single page application se hodí použít pouze někdy. Myslel jsem to spojit nechat například editaci, vytváření stále jako mvc/razor pages a třeba přehledy(tabulky) bych udělal ajaxově přeci jenom je to dost otravné a když to funguje přes javascript je to hned příjemněšjí. :) Proto nemusím mít SPA nebo ano? Ano výhoda api je mi samozřejmě jasná :) Chápu, že to nese spousty výhod. Je to použitelné na jakoukoli technologii což je super a samozřejmě tím zachráním nějaké ty internety.

 
Nahoru Odpovědět 24. února 9:54
Avatar
Ilja Židkov
Člen
Avatar
Odpovídá na Luboš Hnědý
Ilja Židkov:24. února 10:13

Angular se nehodí použít z jakého důvodu? TypeScript? Kanón na vrabce?

Dle mého názoru, pro většinu C# vývojářů TypeScript je nejjednodušší volba. (TypeScript je ve své podstatě C# v prohlížeči). Nicméně ano, mnohdy je Angular "kanón na vrabce" a frustrujicí technologie. Jádro Angular se takřka neměnilo od verze 2, za to RxJS (na kterém Angular závisí) se celé přepisovalo.

Myslel jsem to spojit nechat například editaci, vytváření stále jako mvc/razor pages a třeba přehledy(tabulky) bych udělal ajaxově...

Ano, to je možnost. Pokud tabulka je "jednoduchá" vynechal bych front-end framework zcela. Moderní JavaScript je více než dost, a ani není třeba jQuery. Zůstal bych u nativního fetch API.

Proto nemusím mít SPA nebo ano?

Platí stejná odpověď, jako na předchozí otázku.

 
Nahoru Odpovědět 24. února 10:13
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.