Come forse saprai, XMLHTTPRequest
può essere usato in modo sincrono o asincrono, ma le richieste sincronizzate sono sempre state considerate una cattiva pratica, e sono sempre d'accordo con questo.
Non solo l'ideologia dello sviluppo del JS moderno si basa pesantemente su un modello di eventi, ma c'erano anche alcuni motivi più prosaici per evitare richieste sincronizzate. Ad esempio, le vecchie versioni di Internet Explorer potrebbero semplicemente bloccarsi all'improvviso.
Oggi ho visto una richiesta sincronizzata nel codice sorgente di Liferay e ho pensato "Che peccato, come osi loro. Non sanno che è sbagliato?". Ma poi mi sono chiesto che cosa c'è di sbagliato in questo approccio nei tempi moderni, e non sono stato in grado di dare una risposta precisa e logica.
Ad esempio, sul lato server è prassi comune utilizzare le richieste HTTP sincronizzate. Naturalmente tutti i dati possono essere recuperati in modo asincrono, e forse dovrebbero essere recuperati in questo modo, ma spesso abbiamo bisogno di dati che verranno utilizzati per recuperare un'altra porzione di dati, quindi in tal caso la richiesta deve essere sincronizzata.
Quindi, dovrebbe essere ancora considerato una cattiva pratica?
PS : non ho usato il termine AJAX
poiché il primo A sta per asincrono. :)