Dzień dobry wszystkim!
Ma pewną potrzebę, gdzie aplikacja musi być dostępna gdziekolwiek, a wiec rozwiązania webowe.
Jest to aplikacja typu LoB (line of business - aplikacje biznesowe do wewnętrznego użytku firmy) i co do zasady nie będzie serwowana przez Internet, aczkolwiek nie należy tego wykluczyć.
Projekt w tej chwili jest totalnie green-field i mogę sobie pozwolić na robienie czegoś zupełnie nowego bez ograniczeń, ale musi być to stabilna i pewna droga rozwoju/utrzymania.
Na pierwszy ogień idzie aplikacja typu "panel operatorski"; włącza się to "cudo" i ma działać non-stop.
Musi być być odporna na pracę offline; nie tyle chodzi o możliwość pracy offline, co pewną i stabilną obsługę utraty/odzyskania połączenia. Innymi słowy, jak sieć (lub serwer) pada, to aplikacja ma o tym elegancko informować, ale nie może się "wysypać". Żaden reload/refresh inicjowany przez użytkownika nie wchodzi w grę.
Aplikacja oczywiście ofertuje określone przypadki użycia dla użytkowników (wprowadzają i podpatrują dane), ale równocześnie jest dashbordem który musi pracować w czasie rzeczywistym (lub do niego zbliżonym) - a więc reaguje na powiadomienia otrzymane z serwera (brokera).
Reaktywność tej aplikacji (i całego systemu) jest kluczowa.
W ogóle nacisk jest tu położony na logikę biznesową, a nie na super-fancy web-app. Oczywiście ma być schludnie, działać szybko i wyglądać na drogie
Podkreślam, że cały backend będzie tworzony wyłącznie w .NET Core i z radością wykorzystałbym możliwości, jakie oferuje ta technologia w zakresie Web/WASM (Blazor).
No ale, są ale...
Mój zespół (zespolik ) jest podzielony; jeden za Angularem, drugi za Blazorem a ja się trochę waham...
I to też jest argument; to nie korpo, a wiec idealnie by było, aby każdy orientował się w każdym aspekcie używanych technologii - raczej nie będę miał dedykowanego zespołu do frontend.
Za Angularem przemawia to, że jakieś 40% jest już zrobione - tylko dla mnie to też nie jest argument, ponieważ dokładnie wiemy co chcemy osiągnąć.
Jest pewny, znany i działa.
Ale on ma masę funkcyjności/metodyk, które nie są mi do niczego potrzebne.
I nie mam na myśli tego że twardo trzyma się reguł i krzywa wejścia jest spora, to nie jest problem.
Ja w życiu nie będę robił czegoś na kształt portalu/strony webowej.
Nie podoba mi się ten cały web-syf i naprawdę mi to nie leży
Druga opcja to Blazor (albo Razor Pages a może MVC?), może potem i MAUI - nie wiadomo.
Czy ten Blazor będzie WASM, Server czy Hybrid - to w sumie teraz bez znaczenia.
Ale podoba mi się idea pisania tego wszystkiego w jednej technologii, środowisku i języku.
Uważam, że to bardzo wygodne i może oferować ciekawe możliwości.
Gdybym miał pewność, że Blazor będzie rozwijany przez następne 5 lat to nie byłoby pytania.
Ale nie mam jej...
Zatem pytanie do Was - co byście wybrali na moim miejscu?
I dlaczego?