ASP.NET Ajax, jQuery ve JavaScript hakkında karıştı [kapalı]


15

Dün ASP.NET Ajax ve jQuery'de ASP.NET 4 kitabımdan birkaç bölüm okudum ve bu çerçeveleri oldukça ilginç buldum ve onlar hakkında daha fazla bilgi edinmeye karar verdim.

Bugün Ajax ve JavaScript kitaplığından bazı kitaplar ödünç aldım. ASP.NET Ajax, Ajax'tan farklı ve jQuery "yeni" JavaScript gibi görünüyor.

JavaScript'i atlayıp doğrudan jQuery öğrenebileceğim anlamına mı geliyor?

Öte yandan, ödünç aldığım non-ASP.NET Ajax kitabı sadece istemci tarafı web programlaması için geçerli gibi görünüyor ve ASP.NET Ajax'tan öğrendiklerimden oldukça farklı görünüyor. Ben bir ASP.NET geliştiricisi iseniz, sanırım istemci tarafı Ajax yerine ASP.NET Ajax ile sopa gerekir? PHP ne olacak? ASP.NET Ajax benzer bir "PHP Ajax" var mı?

Diğer araçları öğrenmek için tembel değilim, ama sadece doğru olanlara odaklanmak istiyorum.


3
Sorunuzun web programlama dünyasının bir bölümünde nasıl özetlendiğini + 1'leyin.
gideon

Yanıtlar:


31

Bu karmaşık bir konu ama işte tüm bu şeylerin ne olduğunu ve ilişkilerini nasıl damıtmaya çalışıyorum.

AJAX: Bu, tüm sayfayı yeniden yüklemeden verileri bir web uygulamasına eşzamansız olarak çekmeyi içeren bir kavramdır . Masaüstü uygulamaları gibi davranan ancak bir tarayıcıda çalışan Google Mail gibi dinamik kullanıcı arayüzlerine izin verir.

ASP.NET AJAX: Bu, AJAX kavramını ASP.NET geçmişine sahip geliştiriciler tarafından erişilebilir hale getirmeye çalışan Microsoft tarafından yazılmış bir kitaplıktır. String.Format ve diğerleri gibi .NET Framework yöntemlerine benzer yöntemler sağlar. JQuery ile biraz örtüşüyor, ancak her ikisi de farklı güçlü ve zayıf yanları olduğu için birlikte uyum içinde kullanılabilir. Bunun bir istemci tarafı kitaplığı olduğunu ve aslında ASP.NET'e bağımlı olmadığını hatırlamak önemlidir. ASP.NET AJAX'ı herhangi bir sunucu tarafı teknolojisiyle kullanabilirsiniz.

jQuery: AJAX uygulamalarının yazılmasını kolaylaştıran bir çerçeve sağlayan bir JavaScript kitaplığıdır. Tarayıcı DOM ile etkileşime geçmek için CSS benzeri bir sözdizimi kullanarak güçlü bir seçim modeli sağlar. Ayrıca, farklı tarayıcılar ve sürümler arasındaki farkların çoğunu da soyutlar. Bu nedenle, tarayıcıya özgü DOM veya AJAX API'lerinin aksine jQuery'ye karşı kodlama yapmak neredeyse her zaman daha iyidir. Web uygulamalarınıza her türlü güçlü davranışı sizin açınızdan çok fazla çalışma yapmadan ekleyebileceğiniz zengin bir jQuery eklentileri ekolojisi vardır.

JavaScript: Bu, tüm büyük tarayıcılar tarafından uygulanan ve web sitelerinde dinamik, istemci tarafı davranışına izin veren yorumlanmış bir dildir. Dilin kendisi oldukça sağlamdır, ancak farklı tarayıcıların sağladığı farklı API'ler, "ham" JavaScript'i etkili bir şekilde yazmayı karmaşık hale getirir. Bu yüzden tüm bu kütüphaneler var.

Şimdi, bir ASP.NET geliştiricisi olarak ne öğrenmeniz gerektiği sorusuna gelince. Hem ASP.NET AJAX hem de jQuery işlevselliğini tanımanızı tavsiye ederim. Microsoft her ikisini de onaylar ve her ikisi de VS 2010'a dahildir. Farklı güçlü ve zayıf yanları vardır ve bunların ne olduğunu anlarsanız, bunları kullanmanız daha etkili olacaktır.

ASP.NET web siteleri için AJAX kullanmanıza gerek yoktur, ancak web siteleriniz daha güçlü ve kullanıcı dostu olur. AJAX'ın ne zaman etkili olduğu ve ne zaman etkili olmadığı konusunda bir fikir geliştirirseniz, daha iyi bir web geliştiricisi olacaksınız.

Oh, ve UpdatePanels'den uzak dur. MS'in AJAX'a ilk cevabı buydu, ancak genellikle kötüydü ve AJAX'ı iyi yapan birçok kavramla karşı karşıya kaldılar. Size kısa vadeli bir fayda sağlarlar, ancak uzun vadede deneyimlerime göre bir sürdürülebilirlik kabusu.


3
Ekleyeceğim tek şey ASP.NET AJAX'ın istemci tarafında bazı ayrıntıları gizlemesi. Kitaplık hala tüm istemci tarafındadır, ancak tüm ayrıntıları bilmek zorunda kalmadan istemci ve sunucu tarafını bağlamak için uygun yollar sağlar. Gerçekten web programlama hakkında daha iyi bir anlayış istiyorsanız, nasıl çalıştığını anlamak için jQuery kullanmaya ve ASP.NET yöntemlerinizi çağırmaya başlamak isteyebilirsiniz.
Bryan Rehbein

1
+1 Çok güzel bir özet. VS2008 ile küçük kelime oyunu jQuery de dahil edildi
Conrad Frix

@Conrad Frix çok doğru. Ama bugünlerde eski çöpleri kim kullanıyor? :-) (sadece bir şaka beni alevlendirmiyor)
RationalGeek

Ben de alev makinemi almak üzereydim. Garip bir şekilde 2003 :(, 2005: |, ve 2010 :) günlük işimde kullanıyorum, ancak 2008
Conrad Frix

JQuery paragrafınız en azından Javascript'ten bahsedebilir! Bunun dışında, tekniklerin büyük açıklaması sordu
ozz

5

Hayır, PHP AJAX yoktur.

İstemci geliştirme yapmanız gerekiyorsa, önce saf javascript'i öğrenin. Sonra jQuery öğrenin. Sadece jQuery ile başlarsanız, önemli javascript kavramlarını kaçıracaksınız ve temel olarak kes ve yapıştır programlaması yapacaksınız.

JavaScript ve jQuery olan herhangi bir HTML geliştirme neredeyse kullanılabilecek evrensel ve standardize aletler. PHP programcıları istemci işleri yaparken js + jq, Ruby programcıları js + jq vb.

Şimdi, bildiğim kadarıyla, ASP.NET AJAX, ASP.NET ile çalışmaya uygun daha yüksek seviyeli bir JavScript çerçevesidir, çünkü ASP.NET, muhtemelen bildiğiniz gibi, HTML'den oldukça yüksek bir soyutlamadır. Bu yüzden belirli bir JS şeyleri var. Temelde sunucu tarafı ASP.NET bileşenleri ile iyi oynamak ve onları geliştirmek için söz. Ayrıca, ASP.NET AJAX değildi zamanlarda başlamış olduğu jQuery defacto standart olacağını açıkça. Veya açıktı, ama Microsoft ;-) için değil - aslında kendi orta düzey JS kütüphanelerini oluşturmayı planladılar (jQuery gibi).

Dürüst olmak gerekirse, ben bir Microsoft adam değilim ve kesinlikle işveren / proje tam olarak ASP.NET AJAX gerektirmiyorsa, ben mümkün olduğunca saf JavaScript + jQuery için sopa. Size, istemci tarafında programlama konusunda en çok tanınan bilgileri verecektir.


4

Kısaca anlaşma

(1) JQuery Javascript'in yerini almaz, yaygın JavaScript görevlerini basitleştiren bir kütüphanedir. Herhangi bir JQuery kodu aslında JavaScript ile yazılmıştır.

(2) AJAX, yalnızca web sayfasını istemci tarafında işleyen ve genellikle sayfanın tamamını yeniden yüklemeye zorlamadan içeriği sunucudan aşağı çeken JavaScript kodudur. AJAX için birden fazla "Sürüm" yoktur.

(3) Yukarıdaki # 2'ye bakmadan. ASP.NET ve JQuery'nin her ikisi de AJAX tabanlı web siteleri oluşturma görevini kolaylaştıran kitaplıklara veya araçlara sahiptir. Bunu yapan başka araçlar da vardır. Hepsi aynı AJAX, onu üretmenin sadece farklı yolları veya onu çevreleyen kütüphaneler.

(4) Hangi kütüphaneyi öğrenmelisiniz? Bu çoğunlukla tercih edilen bir şey. Web denetimlerini çok fazla ve ASP.NET ile sürükle bırak web geliştirmeyi kullanmayı seviyorsanız, yalnızca ASP.NET denetimlerini kullanmayı tercih edebilirsiniz. Ayrıca bir ASP.NET geliştiricisiyim, ancak bazen biraz daha fazla iş olsa bile, genellikle bana daha ince taneli kontrol verdiğinden JQuery kullanmayı tercih ediyorum . Ayrıca, JQuery yolunu öğrenirseniz, PHP dahil herhangi bir platformda kullanabilirsiniz.


3

AJAX yapmanın birçok yolu vardır ve ASP.NET yapıyorsanız, ASP.NET AJAX bu yollardan biridir. Son yıllarda, şahsen bunu jQuery ve AJAX uygulaması lehine yapmaktan uzaklaştım.

Ben bir ASP.NET geliştirici iseniz Ben sanırım istemci tarafı AJAX yerine ASP.NET AJAX ile sopa gerekir?

ASP.NET AJAX hala istemci tarafı ajax. ASP.NET AJAX tarafından sizin için oluşturulan (çok büyük) JavaScript kitaplıklarına bakın (ScriptResource.axd veya WebResource.axd dosyasında çalışırken bunları göreceksiniz).

Bu, javascript'i atlayıp doğrudan jQUERY öğrenebileceğim anlamına mı geliyor?

jQuery sadece JavaScript işlevlerinin bir kütüphanesidir. JQuery'yi doğru bir şekilde kullanmak için yine de JavaScript'i anlamanız gerekir. jQuery bazı zor JavaScript'i soyutlar, bu yüzden jQuery, bence, JavaScript'i kullanmaya ve öğrenmeye başlamak için iyi bir yoldur (ancak kullanmaya başlamadan önce en azından bazı JavaScript'leri bilmeniz daha iyi olur).

ASP.NET AJAX benzer bir "PHP AJAX" var mı?

AJAX'ı sizin için soyutlamak için birçok JavaScript kütüphanesi var. jQuery bunlardan sadece biri, ama çok popüler ve çok sağlam.


0

ASP.Net AJAX gibi ne kadar iyi entegre olduklarını bilmiyorum ama http://ajaxpatterns.org/PHP_Ajax_Frameworks çeşitli PHP Ajax çerçeveleri listeler. AJAX J'nin Javascript için olması nedeniyle, çoğu AJAX çerçevesinin bir kısmı bazı istemci tarafı kodu içerecektir.

Microsoft ASP.Net AJAX koymak önce AJAX işlevselliği elde etmek için başka uygulamalar vardı burada Anthem.Net yıllar önce kullandığım bir örnek.


0

JavaScript, tarayıcı sayfası bileşenleri üzerinde kontrol sahibi olmanızı sağlayan, istemci tarafından yorumlanan bir dildir; HTML belgesi ve tarayıcı kendi kendine. jQuery, DOM ile etkileşimi kolaylaştıran çapraz tarayıcı JavaScript işlevlerinin bir kütüphanesidir.

ASP.NET ve PHP'nin her ikisi de sunucu tarafı komut dosyası dilidir; burada ASP.NET yerleşik sayfası .NET derleme DLL'sinde derlenirken, ASP.NET JIT (Tam Zamanında) Derleyici tarafından PHP'de yerleşik bir sayfa yorumlanır.

Teknik olarak, ASP.NET gerçekten bir dil değildir, C # veya VB.NET kullanılarak erişilebilen API'leri ortaya çıkaran bir çerçeve ve çalışma zamanıdır. Bu nedenle, ASP.NET uygulamaları geliştirmek için C # veya VB.NET'i bilmeniz gerekir.

Deneyimlerime göre, zaman ayırıp JavaScript öğrenmenizi ve ardından jQuery öğrenmeye devam etmenizi tavsiye edeceğim. Tabii ki çapraz öğrenme de yapabilirsiniz, yani jQuery ve çekirdek JavaScript.

AJAX, hem jQuery hem de ASP.NET AJAX'ta kullanılabilen istemci tarafı asenkron programlama teknolojisidir. ASP.NET AJAX, Microsoft'un AJAX teknolojisini uygulamasıdır.


-5

İstemci tarafı dilleri, isteklerin sunucu yükünü azaltmak için kullanılır.

Javascript bir istemci tarafı kodlama dilidir ve Jquery bir javascript çerçevesidir ve isteğe bağlıdır. Js, jquery sisteminizin kendisinde çalışır ve şifre doğrulama, web sayfasındaki animasyon vb.Gibi görevleri yerine getirir, veritabanına erişmezler.

Veritabanı MYSQL, ORACLE olacak ve web hostunda bulunacaktır; ASP, PHP sunucu tarafı kodlama dilleridir. Veritabanına erişmek için ASP veya PHP kullanabilirsiniz, ancak web sitelerinde çalışmak için SQL de gereklidir.


1
ajax ve jquery dil değildir
Raynos

1
Şifre doğrulama istemcide de yapılmaz. Bu sadece süslü bir "şifreniz yanlış", ama yine de geçebilir.
Florian Margaine

@Florian Margaine, javascript'i kullanarak şifreyi doğrulayabilir ve form gönderebilirsiniz.
pandu

korkunç, kötü yapılandırılmış cevap.
ozz

1
Kabul etmeliyim ki, bunu gözden geçirmek için tökezlediğimde, en azından okunabilirliği artırmaya çalışmak beni oldukça çabaladı. Zaten -3 oy altında muhtemelen fark edilmeden gidecek (kavramsal hataları olması daha da kötüsü düzeltmek için yazarına kadar), ama en azından umarım şimdi daha okunabilir ve yazara nasıl yazdığını nasıl gösterebilir Cevap.
Oeufcoque Penteano
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.