Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
trnkto
Člen
Avatar
trnkto:11.2.2021 7:56

Ahoj,
chtěl bych se zeptat jaké máte zkušenosti s vývojem full stack aplikace v javascriptu. Jakým stylem tvoříte jednotlivé části aplikace a jaké nástroje k tomu využíváte? Jedná se hlavně o kategorie databáze, serverová část (API)+ GraphQL, clientská část, vzhled, hosting.

  • na serveru poběží nodeJS. Tady bych se chtěl zeptat jestli někdo z Vás má zkušenost provozu na windows serverech, bez dockeru. Jakým způsobem zajistit chod několika aplikací současně (cca do 20-ti). Je pro toto vhodné využívat nginx případně něco jiného?
  • db používáme MSSQL (případně bych zkusil klidně MongoDB),
  • Používá se v současné době převážně express na serverové části nebo existují i nějaké lepší moduly?
  • Máte někdo nějakou větší zkušenost třeba s více "frameworky" pro frontend jako třeba Reactem a Vue, dá se určit, že pro nějaký typ aplikací bude vhodnější jeden nebo druhý?
  • Material design pro vzhled - jaký používáte "komponentovací" nástroj
  • Je myslíte do začátku vhodné/lepší/nutné používat GraphQL pro api případně nějaké rozšížení jako je Apollo
  • Jak je to s případný hostováním aplikací na heroku,fireba­se,netlify apod.
  • Kdy je vhodné využít nějaké nástroje jako je GatsbyJs

Nepodstatný text:
Ve firmě používáme C# MVC s entity frameworkem pro mssql db a bootstrap. Aplikace beží na interních windows serverech s IIS. Chceme zkusit něco jiného. Do nedávna jsme tvořili stále podobné aplikace ve zmíněném, takže vše co jsem vypsal výše je pro mě nové, ale chtěl bych se do toho nějak dostat. Jde mi spíš o směr kudy se vydat a co je pro náš případ vhodné využít. Jestli se učit od základu nejdříve čisté js řešení s dotazy do db, nebo použít rovnou nějaký Sequelize/mongoose a dále redux nebo rovnou Apollo s GQL. Případně jestli je vhodné tvořit vždy API oddělené od frontendu nebo vždy používat nějeký stack jako MERN.

Zkusil jsem: Zkouším stále hledat další materiály a tutoriály. Zkoušel jsem tutoriály na js, nodejs, node s expressem, node s expressem a mongodb, přihlašování přes google oauth20, react, vue, bootstrap, material design, firebase hosting, heroku s githubem, netlify, PWA
vše jen testovací mini aplikace.

Chci docílit: Snažím se naučit napsat zhruba dva typy aplikací které budou mít:

  1. typ: webová aplikace s db na mssql (až 20k uživatelů větší množství dat, ale většinou se jedná o záspis, výpočet a načítání dat a statistiky pro tyto data)
  2. typ: webová/mobilní (PWA) aplikace menšího rozsahu

obecně

  • db mssql nebo mongoDb
  • serverovou část aplikace na nodejs asi s Expressem, které bude předávat API pro front end
  • clientskou část využívající asi react (ale pokud máte jiný názor nebránim se angularu, vue)
  • pro vzhled jsem douho používal bootstrap a teď bych rád zkusil material.
 
Odpovědět
11.2.2021 7:56
Avatar
Odpovídá na trnkto
Petr Štechmüller:11.2.2021 8:25

Ahoj, odpovím pouze podle vlastní zkušenosti s čím jsem se setkal a co mi vyhovovalo.

Pokud přemýšlíte o NodeJS na server, určitě zkuste NestJS

Jedná se framework postavený nad expresem/fastify (podle toho, který adaptér zvolite). Velká výhoda je v rychlém vývoji. Routování je implementováno velmi jednoduše a přehledně. Celý framework se skládá z modulů
pro komunikaci s SQL databází se nabízí TypeORM nebo nějaké "lite" verze od komunity
pro komunikaci s NoSQL databázemi reprezentovanými MongoDB je tu Mongoose.
CQRS modul
webSockets
graphQL
swagger pro popis REST api

a mnoho dalšího
Framework je koncepčně postaven velmi podobně, jako Angular. Obsahuje "jednodušší" verzi DI, která je nenahraditelným pomocníkem u velkých aplikací. V neposlední řadě má framework výbornou podporu pro testování.

Pokud napíšete klienta v Angularu, můžete využít SSR, čímž opět ušetříte výkon na klientovi a zlepšíte UX.

S reactem/vue zkušenosti nemám, tak k nim nic neřeknu :-P

Nahoru Odpovědět
11.2.2021 8:25
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
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 2 zpráv z 2.