Materiały do nauki Blazor Server i rozważania czy to dobra droga.

0

Zna ktoś może dobrze skondensowany kurs Blazor Server. Wydaje mi się to całkiem przyjemnym sposobem dla .NETowca na pisanie webówek na potrzeby wewnętrzne firmy w intranecie (CRUDy, panele konfiguracyjne, konfigurowanie procesów). Mam już trochę dość ASP MVC, bo dodawanie interaktywności do strony jsem wygląda paskudnie, a w firmie angular, gdzie pisałoby się już przyzwoicie nie przejdzie póki co. Chociaż ASP MVC "z pudełka" oferuje mnóstwo "ficzerów", dzięki którym apkę się szybko pisze zwłaszcza u nas z obsługą AD.

Niestety materiałów nie ma tak dużo, przeważnie się powtarzają zagadnienia podstawowe pokazując sample, które nawet nie aspirują do pokazania w małej skali jak duża apka może wyglądać z zachowaniem czystego kodu. Wiedza jest mocno rozproszona po blogach i yt, przez co nauka jest mocno nie efektywna.

Jak macie swoją opinię, czy się pchać do takich zastosowań w blazora to też się podzielcie.

0

Materiałów nie polecę bo sam się niedawno zainteresowałem ale jak na razie to wygląda zajebiscie.
Ja korzystam z jakichś filmów z YT. I od razu poznaje kontrolki Syncfusion i Devexpress.

0

pisze zwłaszcza u nas z obsługą AD możesz trochę dokładniej opisać temat bo jestem zainteresowany integrację projektów ASP.NET Core z AD?

1

W sumie nie czaje firmy Angular który jest stabilny, jest x lat na rynku ma nie przejść. A losowo dziłajacy blazor xD ma przejść?

Blazor to test nie widzałem przed covidem nigdize by ktoś się chwalił ze go produkcyjnie używa do czegoś więcej niż sample proejct. Teraz covid to po meetupach się nie włuczę ale jedno jest pewno i tak korzystając z blazora do JS będziesz musiał zajrzeć. Spróbuj przekonać firmę do Angulara/Vue/React bo mamy 2020 roku a widze ze tu dalej ASP MVC jest popularne xD

0

@Akihito: Byłem kiedyś w projekcie z angularem w dość dużej firmie jako producent owner. 7 czy 8 miesięcy, średnio 5 osób w zespole.
Sam napisałbym to w miesiąc w XAF lub 2 miesiące w mvc.
W życiu nie zlecę nikomu nic w Angularze.
A co do Blazora to mam kawałek przypisanej aplikacji z mvc i działa stabilnie. Co masz na myśli, pisząc o losowości działania?

0

@obscurity: dzięki za poinformowanie o oficjalnej premierze Blazora, myślałem że still jest w fazie beta :). W takim razie cofam moje słowa dotyczące jego użycia.
Co do ASP MVC to zgodze się, że użycie tego do prostych tooli czy naprawdę prostych stron jest spoko. Problem zaczyna się jak ktoś chce mieć więcej z tego i zaczyna się zabawa z dzikim js mieszającym się z kodem C#. Niestety tworzenie dużych projektów z dużą ilością logiki w js i responwyności jakieś ajaxy i inne pierodły i tak naprawdę produkt z razor pagami w asp mvc zaczyna przypominać potworka. Dlatego proposuje stosowanie dla prodktów enterprise podejścia SAP lub corsowego jeśli nie jest to możliwe. Naprawdę sam wiem ile się męczyłem z frontowymi rzeczami w razorze a z jaka łatwością przychodziło mi rozwiązywanie tych samych problemów w angularze.

@jacek.placek "I wtedy wchodze ja PO cały na biało..." Nie wiem ile managmenotwi płacą ale jśli ty potrafisz zrobić sam w 4 x krótszym czasie niż 5 osobowy zespół to może weź ich pensje i sam to napisz? Albo może ja jestem idiotą i nie potrafię docenić jakości razor pagów z mvc... podaj może przykład co razor page robi lepiej od angulara? o XAF pierwszy raz słysze nie wypowiem się ale tak jak mówiłem wcześniej. Nie zmienia to faktu, że kibicuje blazorowi ale nadal potrzeba dotykac z jego poziomu JS....

1

Ja Angulara w zyciu nawet nie dotknalem, wiec nie wiem z czego to wynikalo. To byl dosc prosty intranet i sam byłem w szoku. Mvc z js ma swoje problemy ale, jak pisałem, przepisalem sobie część aplikacji mvc na Blazora i było to nawet przyjemne. W mvc mam sporo jsa w tej aplikacji A w Blazorze zero. Wiec jakos sie da. System średnio skomplikowany.

2

@Akihito

ale tak właściwie to o co chodzi?

bo od strony backendu to czy zwracasz Ok(data) czy View(data) lub czy musisz również zwrócić user's input to aż tak ogromnej różnicy chyba nie robi?

a jeżeli chodzi o front i ktoś stosuje MVC tam, gdzie chce mieć znaczną ilość dynamiki na stronie, no to już nie wina MVC :D

Zresztą chciałbym tutaj trochę rozdzielić Razor Pages i MVC, bo Razor Pages to po prostu pewien sposób realizowania MVC(imo), gdzie zamiast kontrolerów mamy podział na Pages oraz narzuca niektóre rzeczy.

Nie rozumiem też tego wręcz hejtu na Blazora - napisałeś w tym coś w ogóle?

Fakt jest to technologia(nie tylko Blazor, ale rownież WASM) która na ten moment na wiele różnych wad, ale sam koncept jest naprawdę interesujący, a możliwość pisania frontu za pomocą C# i istniejących jego bibliotek jest bardzo przyjemna.

Wyobraź sobie że wydzielasz sobie jakiś projekt który współdzieli np. modele IO czy logikę walidacji, dzięki temu masz zagwarantowaną spójność, bo np. mógłbyś stosować Fluent Validation w obu miejscach z tego samego źródła - na froncie, jak i na backendzie.

0

@WeiXiao: troche sie z tym MVC rozpedzilem. Kibicuje blazorowi jednak jestem realista i nie do konca do niego przekonanym. Cieszy mnie ze wkoncu wyszedl z fazy bety o czym dowiedzialem sie tutaj.jOczywisice zalety o ktorych mowisz daja ogromny potencjał dla blazora i ogolnie podejscia WASM. Moze dozyjemy czasow ze bedzie szlo programwoac weba bez JS :)

Moge wygladac jak buc ale tutaj mowaicy o blazorze i pewno tak tez jestem postrzegany ale mam dosyc czesci ludzi z kotyrmi sie spotykam. Ktorzy w zyciu niczego po za 2 liniami w html nie napisali i juz sie w blazor chca pakowac bo "nie bede musial sie tego js uczyc" i zostane webdevem. Plus pisalem o tym na mirkoblogu mam wrazenie ze czesc ludzi sie odibja od sciany i zatacza koło:
Razor pages -> dodam troche js -> sprobuej zrobic cos bardizej user friendly dam AJAXA -> w sumie jest ten angular moze sprobuje....

1

Pisałem testowo prosty kalkulator (który nie działa przy trudniejszych wariantach xD) dla koleżanki, nie ma tutaj ani jednej linijki napisanej przeze mnie w JS.

Wszystko w C#.

https://drewpartner.korodak.hostingasp.pl/

Jak się chce to można ;-)

PS. Pokazuję tylko moją próbę z Blazorem, nie chcę tutaj nic udowadniać ale moim zdaniem przyszłość jest w tym za 2-3 lata jak się upowszechni.

0

Ja używam od dawna Blazora i jestem z niego zadowolony.
Z materiałami ciężko - polecam czytanie dokumentacji na MSDN, oraz śledzenie na bieżąco ich bloga np.
https://devblogs.microsoft.com/aspnet/asp-net-core-updates-in-net-5-release-candidate-2/

Jeśli chodzi o kontrolki to zdecydowanie polecam Radzena
https://blazor.radzen.com/

1

@WileCoyote: Radzen nie jest przypadkiem sklejonym na szybko wraperem bibliotek js jak MatBlazor? Trochę mnie odrzuca takie podejście. Trochę z większym optymizmem patrzę na MudBlazora. Projekt stara się być klonem mojego ulubionego materialUI. Na razie są dostępne podstawowe funkcjonalności, bo projekt młody, ale już gotowe na masterze są kolejne funkcjonalności na następny release.

Swoją drogą .NET5 wygląda miodnie przypakowując blazora. Mnie np. bardzo podoba się dodanie izolacji css. Piszesz style tylko dla danego komponentu i wiesz że nie wpłynie on na resztę aplikacji nawet jak się nazwy dublują przy deklaracji.

2

@Akihito: Mam porównanie ile powstaje stabilna wersja aplikacji api + front w react czy angular, a jak szybko w .NET Core MVC. Przepaść ogromna. Zanim zrobisz obsługę JTW, autoryzacji, routingu, walidacji itd. to MVC po 20min. edycji template'a ma już wszystko gotowe z pudełka z bardzo sprawdzonymi rozwiązaniami i ochroną przed csrf. No chyba, że potem stronka ma robić interaktywne cuda po stronie klienta to dłubanie w JSie na widokach razorowych robi się piekłem.

0

@shusty Tak, Radzen używa JS (jeśli chodzi o o kontrolkę do wykresów czy tabelę) i w mojej opinii jest "lżejszy" niż Syncfusion czy Telerik. Oraz jest też dobrze dopracowany - używam go ponad rok.
MudBlazor o którym wspomniałeś wygląda ciekawie, jednak tam widzę same proste kontrolki które da się zrobić za pomocą css. Nie ma wykresów, kontrolki do ustalenia czasu (jest tylko do daty https://mudblazor.com/components/datepicker a ustawienie czasu jest bardzo przydatne ;) ), datagrida, comboboxa z kilkoma kolumnami, i jeszcze paru innych które się przydadzą do większego projektu.

Od JS jednak nie uciekniesz. Ja wykorzystuje w swoim projekcie canvas'a i tutaj już tylko JS. Udało mi się też napisać w C++ plik Wasm i go umieścić w Blazorze (rysowanie kwadratów - WebGL2) jednak komunikacja Blazor - WASM C++ też tylko po JS. Może jest inny sposób, jeszcze jego nie znalazłem ;)

Mam nadzieje że jak pojawi się WebGPU to będzie dobrze zintegrowany z Blazorem bo teraz, mimo że Blazor "współczesny" a ten sprzed roku to niebo a ziemia, to jeszcze jest sporo rzeczy do zrobienia.

1 użytkowników online, w tym zalogowanych: 0, gości: 1