Confuso su ASP.NET Ajax, jQuery e JavaScript [chiuso]

15

Ieri ho letto un paio di capitoli su ASP.NET Ajax e jQuery dal mio libro ASP.NET 4 e ho trovato questi framework piuttosto interessanti e ho deciso di saperne di più su di loro.

Oggi ho preso in prestito alcuni libri dalla biblioteca su Ajax e JavaScript. Sembra che ASP.NET Ajax sia diverso da Ajax e jQuery sembra il "nuovo" JavaScript.

Significa che posso saltare JavaScript e imparare direttamente jQuery?

D'altra parte, il libro Ajax non-ASP.NET che ho preso in prestito sembra applicarsi solo alla programmazione web lato client e sembra molto diverso da quanto ho appreso da Ajax di ASP.NET. Se sono uno sviluppatore ASP.NET, suppongo che dovrei rimanere con Ajax di ASP.NET invece di Ajax lato client, giusto? Che mi dici di PHP? Esiste un "Ajax PHP" simile a Ajax di ASP.NET?

Non è che sono pigro per imparare altri strumenti, ma voglio solo concentrarmi su quelli giusti.

    
posta Mr.Y 17.12.2010 - 16:21
fonte

7 risposte

31

Questo è un argomento complicato, ma qui è il mio tentativo di distillare cosa sono tutte queste cose e come si relazionano.

AJAX: Questo è un concetto che implica il pull dei dati in modo asincrono in un'applicazione web senza ricaricare l'intera pagina. Permette interfacce utente dinamiche come Google Mail che si comportano come applicazioni desktop ma che vengono eseguite in un browser.

ASP.NET AJAX: Questa è una libreria creata da Microsoft che tenta di rendere il concetto AJAX accessibile agli sviluppatori che hanno uno sfondo ASP.NET. Fornisce metodi simili ai metodi di .NET Framework come String.Format e altri. Ha qualche sovrapposizione con JQuery ma possono essere usati insieme in armonia perché hanno punti di forza e punti deboli diversi. È importante ricordare che questa è una libreria lato client e in realtà non ha una dipendenza da ASP.NET. È possibile utilizzare ASP.NET AJAX con qualsiasi tecnologia lato server.

jQuery: Questa è una libreria JavaScript che fornisce un framework per rendere le applicazioni AJAX facili da scrivere. Fornisce un potente modello di selezione usando una sintassi simile a CSS per interagire con il DOM del browser. Inoltre, astrae molte delle differenze tra i diversi browser e versioni. Quindi stai quasi sempre meglio codificando contro jQuery in opposizione alle API DOM o AJAX specifiche del browser. Esiste una ricca ecologia di plugin jQuery che possono aggiungere ogni sorta di potente comportamento alle tue applicazioni web, senza molto lavoro da parte tua.

JavaScript: questo è un linguaggio interpretato implementato da tutti i principali browser che consente un comportamento dinamico sul lato client nei siti web. Il linguaggio stesso è piuttosto solido, ma le diverse API fornite dai diversi browser rendono complicato scrivere in modo efficace JavaScript "crudo". Ecco perché ci sono tutte queste librerie su di esso.

Ora, per quanto riguarda la domanda su cosa dovresti imparare come sviluppatore ASP.NET. Consiglierei di familiarizzare con le funzionalità di ASP.NET AJAX e jQuery. Microsoft appoggia entrambi, ed entrambi sono inclusi in VS 2010. Hanno diversi punti di forza e di debolezza e se capisci cosa sono, sarai più efficace nell'usarli.

Non devi usare AJAX per fare siti Web ASP.NET, ma i tuoi siti web saranno più potenti e più user-friendly se lo fai. E se sviluppi un senso per quando AJAX è efficace e quando non lo è, sarai uno sviluppatore web migliore.

Oh, e stai lontano da UpdatePanels. Questa è stata la prima risposta di MS all'AJAX, ma in genere sono cattive e vanno contro molti dei concetti che rendono AJAX buono. Ti danno un beneficio a breve termine, ma a lungo termine sono un incubo di manutenibilità nella mia esperienza.

    
risposta data 17.12.2010 - 16:30
fonte
5

No, non c'è PHP AJAX.

Se devi fare lo sviluppo del client impara prima puro javascript. Quindi impara jQuery. Se inizi con jQuery perderai importanti concetti di javascript e in pratica eseguirai una programmazione di incolla e taglio.

JavaScript e jQuery sono gli strumenti universali e standardizzati che possono essere utilizzati quasi in qualsiasi sviluppo HTML. I programmatori PHP usano js + jq quando fanno cose client, i programmatori Ruby usano js + jq ecc.

Ora, per quanto ne so, ASP.NET AJAX è anche un framework JavScript di livello superiore che è adatto per lavorare con ASP.NET, perché ASP.NET, come probabilmente sapete, è di per sé un'astrazione molto bella da HTML . Ecco perché hanno uno specifico JS. Fondamentalmente è utile giocare bene con i componenti ASP.NET sul lato server e migliorarli. Inoltre, ASP.NET AJAX è stato avviato nei momenti in cui non era che ha chiarito che jQuery sarà defacto-standard. O, era chiaro, ma non a Microsoft ;-) - in realtà hanno pianificato di creare la propria libreria JS di livello medio (come jQuery è).

Onestamente, non sono un ragazzo di Microsoft e rimarrò fedele a jQuery JavaScript puro per tutto il tempo che potrei, se il tuo datore di lavoro / progetto non richiede esattamente ASP.NET AJAX. Vi darà la conoscenza più universalmente riconosciuta della programmazione lato client.

    
risposta data 17.12.2010 - 16:39
fonte
4

Ecco l'accordo in breve

(1) JQuery non sostituisce Javascript, è una libreria che semplifica le attività comuni di JavaScript. Qualsiasi codice JQuery è in realtà scritto in JavaScript.

(2) AJAX è solo un codice JavaScript che manipola la pagina Web lato client e spesso estrae il contenuto dal server senza forzare il ricaricamento dell'intera pagina. Non ci sono più "versioni" di AJAX.

(3) Notwithsdanding # 2 above. Sia ASP.NET che JQuery dispongono di librerie o strumenti che semplificano il compito di creare siti Web basati su AJAX. Ci sono anche una serie di altri strumenti che fanno anche questo. È tutto lo stesso AJAX, solo modi diversi di generarlo o librerie che lo incapsulano.

(4) Quale libreria dovresti imparare? Questa è principalmente una cosa preferita. Se ti piace usare molto i controlli Web e lo sviluppo web di drag-drop con ASP.NET potresti preferire semplicemente usare i controlli ASP.NET per fare lo stesso. Sono anche uno sviluppatore ASP.NET, ma preferisco usare JQuery perché spesso mi dà un controllo più fine, anche se a volte può essere leggermente più lavoro. Inoltre, se impari il modo JQuery, puoi usarlo su qualsiasi piattaforma, incluso PHP.

    
risposta data 17.12.2010 - 16:26
fonte
3

Ci sono molti modi per fare AJAX, e se stai facendo ASP.NET, ASP.NET AJAX è uno di quei modi. Negli ultimi anni, personalmente mi sono allontanato dal fare così in favore di jQuery e della sua implementazione di AJAX.

If I'm a ASP.NET developer I guess I should stick with ASP.NET AJAX instead of client side AJAX right?

ASP.NET AJAX è ancora ajax sul lato client. Cerca le (enormi) librerie JavaScript generate per te da ASP.NET AJAX (le vedrai mentre sono in esecuzione in ScriptResource.axd o WebResource.axd.

Is that means I can skip javascript and learn jQUERY directly?

jQuery è solo una libreria di funzioni JavaScript. Avrai ancora bisogno di una comprensione di JavaScript per usare jQuery correttamente. jQuery fa astrarre alcuni JavaScript ingannevoli, quindi jQuery è, a mio parere, un buon modo per iniziare a utilizzare e imparare JavaScript (anche se è meglio conoscere almeno alcuni JavaScript prima di iniziare a usarlo).

Is there a "PHP AJAX" similar to ASP.NET AJAX?

Ci sono un lotto di librerie JavaScript per astrarre AJAX lontano per te. jQuery è solo uno di questi, ma è molto popolare e molto robusto.

    
risposta data 17.12.2010 - 16:29
fonte
0

Il link elenca vari framework PHP Ajax anche se non so quanto bene siano integrati come ASP.Net AJAX. Parte della maggior parte dei framework AJAX coinvolgerà alcuni codici lato client poiché J di AJAX è per Javascript.

Esistevano altre implementazioni per ottenere la funzionalità AJAX prima che Microsoft inserisse ASP.Net AJAX dove Anthem. La rete è un esempio che ho utilizzato anni fa.

    
risposta data 10.04.2012 - 21:02
fonte
0

JavaScript è un linguaggio interpretato lato client che ti dà il controllo sui componenti della pagina del browser; cioè il documento HTML e anche il browser stesso. jQuery è una libreria di funzioni JavaScript cross-browser che facilita l'interazione con il DOM.

ASP.NET e PHP sono entrambi linguaggi di scripting lato server, dove una pagina costruita ASP.NET è compilata in una DLL di assembly .NET, dal compilatore JIT di ASP.NET (Just In Time), una pagina costruita in PHP è interpretato.

Tecnicamente, ASP.NET non è realmente un linguaggio, è un framework e un tempo di esecuzione, che espone le API a cui è possibile accedere usando C # o VB.NET. Pertanto, per sviluppare app ASP.NET, è necessario conoscere C # o VB.NET.

Dalla mia esperienza, ti consiglierò di dedicare tempo e imparare JavaScript, quindi procedere all'apprendimento di jQuery. Ovviamente si può anche fare il cross learning, cioè jQuery e core JavaScript.

AJAX è una tecnologia di programmazione asincrona lato client, che può essere utilizzata sia in jQuery che in ASP.NET AJAX. ASP.NET AJAX è l'implementazione di Microsoft della tecnologia AJAX.

    
risposta data 28.12.2013 - 11:23
fonte
-5

I linguaggi lato client vengono utilizzati per ridurre il carico di richieste del server.

Javascript è un linguaggio di scripting lato client e Jquery è un framework di javascript ed è facoltativo. Js, jquery funziona nel sistema stesso ed esegue attività come la convalida della password, l'animazione nella pagina Web, ecc., Non accedono al database.

Il database sarà MYSQL, ORACLE ed esiste nell'host web; ASP, PHP sono linguaggi di scripting lato server. È possibile utilizzare ASP o PHP per accedere al database, ma SQL è anche necessario per lavorare sui siti Web.

    
risposta data 10.04.2012 - 20:30
fonte

Leggi altre domande sui tag