Path: csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Alessandro Pellizzari Newsgroups: it.comp.lang.javascript Subject: =?UTF-8?Q?Re=3a_perch=c3=a8_non_eliminare_il_javascript=3f?= Date: Sat, 8 Jan 2022 13:44:21 +0000 Lines: 82 Message-ID: References: <19vaen6kx45b8.dlg@news.luis.invalid> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Trace: individual.net 8fK/fqUd15RBUxNKEmWKHQWyhnkzh4g4eiKTip3QoDfCOOO7A= Cancel-Lock: sha1:jXXCQUL4T03jBO0Ru7vpwtN0OPY= User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.3.1 Content-Language: en-GB In-Reply-To: Xref: csiph.com it.comp.lang.javascript:8362 On 08/01/2022 13:00, bramante wrote: > Il 05/01/22 21:51, Alessandro Pellizzari ha scritto: >> - Parti da jQuery. Tanti diranno di no, ma è semplice, molto intuitivo e >> ha un sacco di plugin > > dando questo consiglio, stai dicendo di imparare jQuery (una libreria) e > non ecmascript (il linguaggio) > questa non la capisco, se deve imparare un linguaggio client side, > imapara il linguaggio non una libreria. È vero che il 90% di quello che faceva jQuery è stato integrato in JS nelle ultime versioni, ma proprio questo dimostra che è ben integrato col linguaggio stesso. E allo stesso tempo riesce ancora a semplificare alcune operazioni, soprattutto sugli elementi del DOM. L'OP conosce già diversi linguaggi C-like, quindi non ha problemi con la sintassi di JS, ma solo con concetti più oscuri tipo la OOP. Usando jQuery evita la OOP (spinge "gentilmente" verso un approccio funzionale), deve comunque imparare il linguaggio di base, e diventa produttivo in meno tempo. Meno frustrazioni e più voglia di andare avanti. Poi con calma può approfondire i concetti più oscuri. >> - Quando hai preso mano, e devi fare applicazioni più complesse, >> guardati Svelte e Vue (o, bleah, React :P ). Lascia perdere Angular > > a questo punto ti chiedeo "perchè?" > gli suggerisci di imparare una libreria e gli sconsigli un framework? I framework, soprattutto quelli moderni, stravolgono completamente il tradizionale flusso di lavoro di JS (funzionale ed event-based) per andare verso il dichiarativo. È un cambio completo di mentalità e di approccio ai problemi. Non aiutano per niente a imparare il linguaggio, e dalle (centinaia, ormai) di interview che ho fatto a "sviluppatori frontend" (che si traduce quasi 1:1 con "sviluppatori React"), ho notato che una buona percentuale non conosce JS, ma solo React. Si trovano in crisi a gestire promise senza axios, o a usare map e filter sugli array, o non hanno chiaro le conseguenze e i vantaggi della programmazione asincrona, e mettono `await` ovunque "perché altrimenti non funziona". Per non parlare di HTML e CSS :P Quando inizi ad avere un'applicazione complessa, con diversi stati di cui tenere conto, un framework moderno è l'unica salvezza (ma può essere anche la tua tomba, se lo usi male). È semplicemente un discorso di percorso di studio: parti semplice e produttivo, poi impari i concetti più complessi un po' alla volta, e alla fine fai il progetto grosso con i tool grossi. Per non parlare dello scaffolding. Credo non esista più nessuno in grado di inizializzare un'applicazione react senza create-react-app, mentre per jQuery basta uno