JavaScript'e alternatifler


144

Şu anda, tam olarak desteklenen tek dil ve tarayıcıdaki DOM ağacı manipülasyonu için fiili standart JavaScript'tir. Görünüşe göre onu acemi için böcek ve güvenlik delikleri mayın tarlası yapan derin tasarım sorunları var.

Yeni nesil tarayıcılarda DOM ağacı manipülasyonu ve HTTP istekleri için daha iyi (yeniden tasarlanmış) bir dil (sadece javascript değil) tanıtmak için mevcut veya planlanan bir girişim biliyor musunuz? Evet ise, örneğin Firefox ile entegrasyonu için yol haritası nedir ve hayırsa, hangi nedenlerle (birlikte çalışabilirlik dışında) tarayıcı platformunda desteklenen tek dil JavaScript olmalıdır?

Zaten jQuery kullandım ve "javascript: iyi parçalar" da okudum. Gerçekten öneriler iyi, ama anlayamadığım şey: neden sadece javascript? Sunucu tarafında (en sevdiğiniz işletim sistemi platformu), bir DOM ağacını her dilde, hatta fortran'da manipüle edebiliriz. İstemci tarafı (tarayıcı platformu) neden yalnızca javascript'i destekliyor?


4
Google Dart, Script #, CoffeeScript, JSX (her ikisi de farklı JS uygulaması), JavaScript Harmony vb. Daha fazla bilgi
nawfal

25
İyi soru. 10 günde geliştirilen dil 2013'te hala bizimle. Wtfjs.com
Den

2
"neden sadece javascript? Sunucu tarafında (en sevdiğiniz işletim sistemi platformu), bir DOM ağacını her dilde, hatta fortran'da manipüle edebiliriz. İstemci tarafı (tarayıcı platformu) neden sadece javascript'i destekliyor?" Sunucu tarafında istediğinizi yükleyebilirsiniz, ancak istemcilerinizi eklentiler / eklentiler yüklemeye zorlayamam, ayrıca javascript ile bu kadar çok hata ve güvenlik sorunumuz varsa, kaç hata ve güvenlik sorunumuz olduğunu tahmin edersek birkaç tane daha ekliyoruz?
Peter

6
@Peter Argümanın ciddi mi yoksa şaka mı olduğunu söyleyemem. İnsanların istedikleri takdirde platformları yüklemeleri son derece kolaydır. Javascript'e bir alternatif mevcut ve iyi çalıştıysa, ticari sağlayıcılar kullanıcıların her zaman Flash ile yaptıkları gibi ve Silverlight ile bir süre yaptıkları gibi çalıştırmak için gereken her şeyi indirmelerini ister. İstemci tarafında alternatiflerin ortaya çıkmamasının tüm nedenlerinden ötürü, kullanıcılarınızın platformunuza sahip olmasının zorluğu bunlardan önemli değildir.
ely

1
@ely: İyi oldu mu? Flaş? Java uygulamaları? Silverlight? Silverlight'ın bir örneğini bile yüklememiştim.
Sebastian Mach

Yanıtlar:


41

Javascript ile ilgili sorun dilin kendisi değildir - mükemmel bir prototip ve dinamik dildir. Bir OO arka planından geliyorsanız, biraz öğrenme eğrisi vardır, ancak bu dilin hatası değildir.

Çoğu insan Javascript'in Java gibi olduğunu varsayar, çünkü benzer bir sözdizimine ve benzer bir ada sahiptir, ancak aslında lisp'e çok benzer. Aslında DOM manipülasyonu için oldukça uygun.

Asıl sorun tarayıcı tarafından derlenmiş olması ve istemciye bağlı olarak çok farklı bir şekilde çalışması anlamına geliyor.

Gerçek DOM yalnızca tarayıcıya bağlı olarak farklı değildir, aynı zamanda performans ve düzende büyük bir fark vardır.


Söz konusu açıklamayı düzenleyin

Birden fazla yorumlanmış dilin desteklendiğini varsayalım - yine de aynı sorunlarınız var. Çeşitli tarayıcılar hala hatalı ve farklı DOM'lere sahip olacaklardı.

Ayrıca, her dil için tarayıcıda yerleşik bir tercümana sahip olmanız veya bir şekilde eklenti olarak (sayfayı hizmet etmeden önce kontrol edebileceğiniz) yüklemeniz gerekir. Javascript'i tutarlı hale getirmek uzun zaman aldı.

Derlenmiş dilleri aynı şekilde kullanamazsınız - sonra yaptığı şey için kolayca incelenemeyen bir yürütülebilir dosya sunarsınız. Birçok kullanıcı çalışmasına izin vermemeyi tercih eder.

Tamam, derlenmiş kod için bir tür korumalı alan ne olacak? Bana Java Applets gibi geliyor. Veya Flash'ta ActionScript. Veya Silverlight'ta C #.

Bir çeşit IL standardına ne dersiniz? Bunun daha fazla potansiyeli var. İstediğiniz dilde geliştirin ve daha sonra tarayıcının JIT'leri kullandığı IL'ye derleyin.

Dışında, Javascript zaten bu IL - sadece GWT bak . Java ile program yazmanıza, ancak HTML ve JS olarak dağıtmanıza izin verir.


Söz konusu diğer açıklamaların ardından düzenleyin

Javascript, tarayıcılar tarafından desteklenen tek dil değildir veya daha çok değildi: Internet Explorer karanlık çağlarında IE'de çalıştırmak için Javascript veya VBScript arasında seçim yapabilirsiniz. Teknik olarak IE, Javascript bile çalıştırmadı - JScript'i çalıştırdı (esas olarak Sun'a java kelimesi için ödeme yapmaktan kaçınmak için , Oracle hala Javascript ismine sahip ).

Sorun, VBScript'in Microsoft'a ait olmasıydı, ama aynı zamanda çok iyi değildi. Javascript işlevsellik eklerken ve diğer tarayıcılarda (FireBug gibi) en üst düzey hata ayıklama araçlarını alırken VBScript yalnızca IE'de kaldı ve hemen hemen hata ayıklanamadı (IE4 / 5 / 6'daki dev araçları yoktu). Bu arada VBScript, işletim sisteminde oldukça güçlü bir komut dosyası oluşturma aracı olarak genişledi, ancak bu özelliklerin hiçbiri tarayıcıda mevcut değildi (ve olduklarında büyük güvenlik açıkları haline geldiler).

Hala VBScript kullanan bazı kurumsal dahili uygulamalar var (ve bazıları bu güvenlik açıklarına güveniyor) ve hala IE7 çalıştırıyorlar (MS sonunda onu öldürdüğü için sadece IE6'yı durdurdular).

Javascript'i şu anki durumuna getirmek bir kabus oldu ve 20 yıl sürdü. Bazı tarayıcılarda dil özellikleri (1999'da belirtilen) hala eksik ve hala çok sayıda şim gerekli olmakla birlikte, hala tutarlı bir desteğe sahip değil.

Tarayıcılarda yorumlamak için alternatif bir dil eklemek iki önemli sorunla karşı karşıyadır:

  • Tüm tarayıcı satıcılarının yeni dil standardını uygulamalarını sağlamak - 20 yıldır Javascript için yönetemedikleri bir şey.

  • İkinci bir dil, potansiyel olarak zaten sahip olduğunuz desteği sulandırır (örneğin) IE'nin ikinci sınıf Javascript desteğine sahip olmasına izin verir, ancak harika VBScript (tekrar). Gerçekten farklı tarayıcılar için farklı dillerde kod yazmak istemiyorum.

Javascript'in 'bitmemiş' olduğuna dikkat edilmelidir - yeni tarayıcılarda daha iyi olmak için hala gelişmektedir. En son sürüm , tarayıcıların uygulamalarından yıllar öncesidir ve bir sonraki sürüm üzerinde çalışıyorlar.


5
Tarayıcı tarafından "derlenmedi", "yorumlandı" diyebilirim.
Flavius ​​Stef

19
Daha yeni tarayıcılar JavaScript'te JIT derlemesi yapar.
Nosredna

4
Ayrıca jit iddiasını da araştırdım ve ortaya çıktığı gibi Firefox 3.1'de destek var. Andreasgal.com/2008/08/22/tracing-the-web veya people.mozilla.com/~schrep/ tm-image-adjustment.swf
Flavius ​​Stef

2
V8 JavaScript motoru (krom) doğrudan derlenir.
Dave W. Smith

3
İlk yanıtınıza "JavaScript ile ilgili sorun dilin kendisi değil" diye kesinlikle katılmıyorum. Bence sözdizimsel olarak çok çirkin bir dil ve diğer birçok dilde sahip olduğunuz özelliklerden yoksundur. En azından ben hala büyük uygulamalarda ihtiyaç duyulan özellikler (yükleme bağımlılıkları, okunabilir OO ilkeleri). Şimdi (internet) yapmak zorunda kalsaydık, JavaScript'in bir dil için 'en iyi' seçenek olacağını düşünmüyorum.
SirLenz0rlot

28

Javascript'e Derleyin

Şimdilik, Javascript'i derleyen bir dil kullanmak, daha akıllı kod yazarken tüm platformlara ulaşmanın tek gerçekçi yolu gibi görünüyor ve bu muhtemelen uzun süre devam edecek. Herhangi bir yeni teklifle, bir veya daha fazla tedarikçinin onu göndermek için acele etmemesinin bir nedeni her zaman olacaktır.

(Ama bunun gerçekten bir sorun olduğunu düşünmüyorum. Javascript şimdiye kadar güzelce optimize edildi. Elle yazılmışsa makine kodu da güvenli değil, ancak derleme hedefi ve yürütme dili olarak iyi çalışıyor.)

Pek çok seçenek

Javascript için derlenen ve sürekli büyüyen bir dil havuzu vardır. Oldukça kapsamlı bir liste burada bulunabilir:

dikkate değer

Dikkate değer olduğunu düşündüğüm birkaçından bahsedeceğim (şüphesiz, farkında olmadığım bazı mücevherleri ihmal ederken):

  • Örümcek 2016'da ortaya çıktı. Go, Swift, Python, C # ve CoffeeScript'in en iyi fikirlerini aldığını iddia ediyor. Tipik değildir, ancak bazı küçük güvenlik özellikleri vardır .

  • Karaağaç : Haskell hepsinin en akıllı dili olabilir ve Karaağaç Javascript için Haskell'in bir çeşididir. Son derece farkında ve özlüdür ve Reaktif şablonlara veya MVC spagetti'ye temiz bir alternatif olarak Fonksiyonel Reaktif Programlama sunar . Ancak prosedürel programcılar için oldukça şok edici olabilir .

  • Google'ın Go kısalığı, sadeliği ve güvenliği hedeflemektedir. Go kodu GopherJS tarafından Javascript'e derlenebilir .

  • Dart , Google'ın daha sonra Javascript'i değiştirme girişimiydi. İsteğe bağlı yazarak C / Java benzeri bir sözdizimi aracılığıyla arabirimler ve soyut sınıflar sunar.

  • Haxe , Flash'ın ActionScript'i gibidir, ancak birden fazla dili hedefleyebilir, böylece kodunuz Java, C, Flash, PHP ve Javascript programlarında yeniden kullanılabilir. Güvenli ve dinamik nesneler sunar.

  • Opalang , doğrudan veritabanı erişimi , akıllı süreklilikler, tür denetimi ve istemci / sunucu ayrılmasına yardımcı olmak için Javascript'e sözdizimsel şeker ekler . (NodeJS ve MongoDB'ye bağlıdır.)

  • GorillaScript , "bazı yaygın hataları önlemeye çalışırken kullanıcıyı güçlendirmek için tasarlanmış bir JavaScript derleme dili." Coffeescript'e benzer, ancak daha kapsamlıdır, güvenliği arttırmak ve tekrarlanan kazan plakası kalıplarını azaltmak için bir dizi ekstra özellik sağlar.

  • LiteScript, Coffeescript ve GorillaScript arasında bir yere düşer. "Satır içi" geri çağrılar ve değişken yazım hataları için zaman uyumsuzluk / verim sözdizimi sunar.

  • Microsoft'un TypeScript , işlev bağımsız değişkenlerine tür kısıtlamaları koymanıza olanak tanıyan küçük bir Javascript üst kümesidir ve birkaç hatayı yakalayabilir. Benzer şekilde BetterJS , ekstra çağrılar ekleyerek veya JSDoc yorumlarında türleri belirterek kısıtlamalar uygulamanıza izin verir, ancak saf Javascript'te. Ve şimdi Facebook ek olarak tür çıkarımı gerçekleştiren Flow'u sundu .

  • LiveScript , Coffeescript'ten, kısalığı için popüler olan, ancak benim için çok okunabilir görünmeyen bir spin-off. Muhtemelen takımlar için en iyisi değil.

Nasıl seçilir?

Ne zaman seçerek alternatif bir dil, bazı vardır dikkate faktörler :

  • Gelecekte başka geliştiriciler projenize katılırsa, bu dili hızlandırmak ve öğrenmek için ne kadar zaman alacaktır veya zaten bildikleri ihtimaller nelerdir?

  • Dilin çok az özelliği (kod hala kaynatma plakasıyla dolu olacak) veya çok fazla özelliği var mı (ustalaşması uzun sürecek ve o zamana kadar bazı geçerli kodlar çözülemeyebilir)?

  • Projeniz için ihtiyaç duyduğunuz özelliklere sahip mi? (Projenizin tip kontrolü ve arayüzlere ihtiyacı var mı? Yuvalanmış geri çağrı cehenneminden kaçınmak için akıllı sürekliliklere ihtiyaç var mı? Çok fazla reaktivite var mı? Gelecekte diğer ortamları hedeflemek gerekebilir mi?)

Gelecek...

Jeff Walker, neden Javascript sorunu hakkında, ne TypeScript ne de Dart ne de Coffeescript'in neden yeterli çözümler sunduğunu düşünmediğini düşünen bir dizi blog yazısı yazdı . Sonuçta iyileştirilmiş bir dil için bazı arzu edilen özellikler önermektedir .


ES6, Javascript'i sınıfların daha net bir şekilde belirtilmesini sağlayan bir grup özellik ve jeneratörler aracılığıyla "satır içi zaman uyumsuzluğu" ile genişletir. Yine de dinamik olarak yazılmış!
joeytwiddle

Karaağaç'ın yaklaşımı Azot veya N2O'ya (erlang çerçeveleri) benzer, bu yüzden hoşuma gidiyor.
DenisKolodin

Günümüzde CoffeeScript'in ES8 ve TypeScript'te sözdizimsel şekerinin yanı sıra asenkron beklememiz de var. TypeScript, sürprizler için hala bazı fırsatlar olmasına rağmen, işyerimdeki birçok hatayı önledi!
joeytwiddle

Ayrıca, çeşitli diğer dillerin tarayıcıda çalışmasına izin veren Wasm da var . Ancak DOM ile iletişim hala JavaScript üzerinden yapılıyor.
joeytwiddle

22

tarayıcı platformunda desteklenen tek dil JavaScript olmalı?

Evet ve hayır. JavaScript tarafından derlenen Dart by Google adında bir alternatif var ve jQuery gibi DOM manipülasyonunu biraz daha kolay hale getirmeye çalışıyor. Denemek eğlenceli olabilir, kontrol edin.

Ayrıca bakınız


15

Javascript'in bir noktada başa çıkılması zor olduğu doğrudur, ancak web geliştirme topluluğu o zamandan beri uzun bir yol kat etmiştir. Bunun yerine, jQuery'ye göz atmanızı öneririm . Kolay ve çeşitli sorunları soyutlar.

Ve gerçekten de tümüyle çalışan alternatifler yok. Flash akla geliyor ama bu da ECMA betiği ve muhtemelen çoğu şey için öldürüldü.


1
veya MooTools, Prototype ve Dojo. jqueryvsmootools.com mootools ve jquery arasında mükemmel bir karşılaştırmadır.
Ryan Florence

Javascript ile doğası gereği yanlış bir şey yoktur / yoktur. Muhtemelen IE'nin JScript'indeki sorunlardan ve genel oluşturma sorunlarından ve çeşitli tarayıcılarla tutarsızlıklardan bahsediyorsunuz.
Gavin

7

Kısa vadede, tarayıcı uyumsuzluklarını gizlemek için jQuery gibi şeyleri kullanırdım. Uzun vadede, Silverlight veya Adobe AIR gibi teknolojiler bunu gelecekte çok farklı bir mayın tarlası (ancak yine de bir mayın tarlası) yapabilir.


1
Tarayıcı uyumsuzluklarını gizlemek için jQuery kullanmak için +1. Bu mekanizmaların bazılarının nasıl çalıştığını açıklayan bir kitap okudum ve jQuery'nin bu bölümde programcıların baş ağrılarını kurtardığını söylediğimde bana inanıyorum.
Vivian River

1
teknik cevaplara arkadan bakmak her zaman garip bir görüştür. şimdi web'in kazandığını biliyoruz: silverlight, flash ve air hepsi öldü ve kalan victor tüm garip ve harika büyülerinde javascript.
oligofren

6

Doug Crockford , Google ile JavaScript'in ve geleceğinin kötü ve iyi bölümlerini detaylandıran bir konuşma yaptı . Aslında 1999'dan beri hiç değişmedi - ki bu iyi bir şey olduğu söylenebilir (hemen hemen tüm tarayıcılar sınırlarının farkında olduğunuz sürece aynı kodu çalıştırabilir) ve Doug iyi parçaların nerede olduğunu gösterir çoğunlukla çok güçlü olduğu anlaşılan yanlış anlamalardı.

DOM manipülasyonu için, JQuery'ye, korkunç DOM API'sinin çoğunu, yazması daha kolay olan oldukça zarif kod parçalarına yazmak için acı olan işlemlerle değiştiren bir istemci tarafı kitaplığı olarak bakın.


5

JavaScript'in derin sorunları olduğunu düşünüyorsanız, Doug Crockford'un JavaScript: İyi Parçalar kitabını öneriyorum . (Ya da yaptığı "çeşitli video sunumları bulmak için" Crockford JavaScript "için Google)

DOM'u değiştirmenin fiili aracı olarak JavaScript'i değiştirme planlarının farkında değilim . Bu yüzden en iyi güvenli ve iyi kullanmayı öğrenin.


1
Yeniden oku. Cevapları okuduktan sonra sorusunu düzenlediği açıktır.
Dave W. Smith

4

İstemci tarafı açısından, DOM'u manipüle etmenin tek yolu Javascript'tir. Sunucu tarafı açısından birçok yol vardır.


4

Internet Explorer takılabilir komut dosyası dillerini destekler, ancak JScript dışında IE ile güvenilir bir şekilde dahil edilen tek VBScript'tir.

Gördüğüm kadarıyla, tarayıcıda dinamik dillere karşı genel bir önyargı var gibi görünüyor ve JavaScript, ağ efektlerinin başka bir dili başlangıç ​​olmayan bir hale getirecek kadar bu ihtiyacı yeterince dolduruyor gibi görünüyor. Dil aslında oldukça güçlü olsa da, tarayıcılarda uygulanması arzulanan çok şey bırakıyor.


1
IE'de VBScript kullanmayın - büyük MS düşüncesinin çıkaracağı ama yapmadığı VB'nin korkunç bir çeşidi. Aslında normal VB veya VBScript gibi çalışmaz ve Javascript daha yavaştır.
Keith

1
Örneğin, WebKit'in veya Gecko'nun tarayıcı dışı uygulamalarda bulunan JavaScript / ECMAScript uygulamalarında eksik olan nedir? Bu yorum benim için tamamen kafa karıştırıcı.
göz kapaksızlığı

4

Müşterilerinizi / ziyaretçilerinizi belirli tarayıcılarla sınırlamak istiyorsanız ve muhtemelen bir eklenti yüklemelerini istemiyorsanız, MS Silverlight'a bakabilirsiniz - okunabilir bir genel bakış wikipedia'dadır . Silverlight 2 ile, C #, IronPython, IronRuby, VB.NET, vb. Mono projesinden Silverlight'ın ücretsiz Moonlight klonu, aynı işlevselliği Linux'a getirmeyi vaat ediyor.

Uygulamada, web uygulamalarının ve sitelerinin çoğu geliştiricisi Silverlight'ın (ve sonunda Moonlight'ın) şu anda sunabileceğinden daha geniş kitlelere ulaşmayı tercih ediyor - bu da Javascript veya muhtemelen Flash (benzer bir programlama dili olan Actionscript kullanan) ile yapışmak anlamına geliyor.

Bu nedenle, büyük mühendisler ve pazarlama bütçeleri ve yan taraftaki ücretsiz yazılım projesi ile Microsoft için bile önemli bir zihniyet paylaşımı, benimsenmesi ve çekiş kazanması (tescilli kilitleme konusunda endişeleri hafifletmek için) ) - bu, örneğin Mozilla Vakfı'nın neden böyle bir hedefe doğru itmeye çok az ilgi duyduğunu açıklamaya yardımcı olabilir. "Birlikte çalışabilirlik dışında" diyorsunuz: ama açıkça birlikte çalışabilirlik meselesi, Silverlight'ın ilerlemesini gözlemlediğimiz göz önüne alındığında, burada biggie ...


3

Daha önce de belirtildiği gibi, tarayıcınızda eklentilerle çalışabilen Flash (ActionScript, Javascript'ten türetilmiş bir dil) ve Silverlight / Moonlight (IronPython, IronRuby, JScript, VBScript, C #) var (ilki çok daha yaygın) .

Ruby: HotRuby gibi isterseniz başka bir alternatif daha var, javascript tarayıcıda çalışacak bir yakut uygulamasıdır. Henüz çok olgun değil, ama bir göz atabilirsiniz.


3

Bahsetmediğim bir şey (oh, yazarken AlcRidy'den HotRuby'den bahsettiğim ve Nosredna GWT ve Script #'dan bahsettiğimi görüyorum) ve dışarı atmak istiyorum [dil ekle] -on- JavaScript (örn. Ruby , Python , C # , Java , Obj-J / Cappuccino [Obj-C / Cocoa benzeri] veya İşleme [Tuval için] 'yi istemcide veya dağıtımdan önce JavaScript'e dönüştürmenize izin veren çevirmenler [ve bazıları bunların da çeşitli soyutlama kütüphaneleri vardır]). Elbette, istemciye çevriliyorsa bir performans yükü vardır, ancak başka bir dilden daha rahatsanız, size biraz esneklik sağlayacaktır.

Şahsen, JavaScript'i sevmeyi öğrenmenizi öneririm. Mükemmel, güçlü bir dil ve onu tanıdığınızda oldukça zarif. Tüm ihtiyaçlarımı karşılayan yetenekli bir sunucu tarafı JavaScript / DOM çözümü için biraz chomping, karşıt ikilemle karşı karşıyayım. / istenmeyen görüş


GWT ve Script # 'dan bahsettim. Script # ile ilgilenenler için bağlantı projelerdir.
Nikhilk.net/ScriptSharp

Beni Obj-J / Cappuccino'ya yönlendirdiğiniz için teşekkür ederim. Web uygulamaları oluşturmak için şaşırtıcı ve sadece açtınız ve adı (ve Kakao ile ilgili) beni ilgilendirdiği için açtım.
Timo

2

Hayır. JavaScript budur, ancak gelişecektir. Bir sonraki sürüm "JavaScript Harmony" dir ve bunu Google'da yaparsanız daha fazla bilgi edinebilirsiniz.

Şimdi ve sonra birisi JavaScript ile birlikte tarayıcılara bir bayt kodu yorumlayıcı koymanızı önerir. Muhtemelen olmayacak, en azından bir süreliğine.

JavaScript'i seviyorum. Ancak, Java'yı JavaScript'e derleyen GWT ve C #'ı JavaScript'e derleyen Script # gibi başka çözümler de vardır.


2

Jquery (hala javascript ama) gerçekten hemen hemen tüm tarayıcılar için desteğe sahip olmalarına yardımcı olacak ve öğrenmek o kadar da zor değil :)


2

JavaScript web'in İngilizce dilidir. İngilizce tarihsel olarak yayıldı çünkü çeşitli ülkeleri fetheden güçlü bir donanmaya sahipti. Bu, web'i JavaScript ile fetheden büyük şirketler ile karşılaştırılabilir. Birden fazla Avrupa kaynağından (Yunanca, Latince, Cermen dilleri, Fransızca ve hatta bazı Çince ve Hint kelimeleri) toplanan bir dildir. JavaScript yıllar boyunca diğer dillerden (yapısal, OO, fonksiyonel) birçok kavram ödünç almıştır. İngilizce, farklı yerlerde konuşulur ve lehçede ve aksanda küçük farklılıklar vardır, bu da anlayışı zorlaştırabilir. Tıpkı JavaScript'in biraz farklı yorumladığı farklı tarayıcılara sahip olması gibi.

İngilizce'nin başlangıçta öğrenmesi kolay olsa da, kurallardan çok tutarsız telaffuz ve istisnalar vardır. Tıpkı JavaScript gibi, her zaman bir sürpriz sunmak için var.

Farklı aksanlara rağmen, JavaScript web'in ortak dilidir. Tıpkı İngilizce olamayacağınız ve burada İngilizce yazamayabileceğiniz gibi, her web tarayıcısının belirli bir derecede İngilizce bilgisi vardır. IE6 özgeçmişinde akıcı olduğunu söyleyen, ancak sadece iki haftalık bir yabancı dil olarak İngilizce kursuna giden adam gibidir.

İngilizceyi dünyanın ana dili olan Esperanto gibi desteklemek için girişimlerde bulunulmuştur. Ama hepsi başarısız oldu, çünkü dünyadaki çoğu insan biraz İngilizce konuşuyor. Aynı şekilde JavaScript'e daha iyi alternatifler getirmek zor olacaktır.


1

Javascript yakında değiştirilecek sanmıyorum. Zengin istemcilere tamamen farklı bir yaklaşım için, Flash tabanlı bir teknoloji olan Flex'i araştırmak isteyebilirsiniz.


1

Belki haxe gibi bir şey (bkz. Haxe.org) size yardımcı olabilir. JavaScript'ten daha temiz görünen ve JavaScript'e derlenebilen bir dildir, böylece bir tarayıcı içinde çalıştırılabilir.

Bunun sorunuza doğrudan bir cevap olmadığını biliyorum, ama yine de sizin için ilginç olabileceğini düşündüm.


1

Birçok kişi Javascript'in şimdiye kadarki en iyi ve en güzel dil olmadığını anlıyor. Bununla birlikte, şu anda tarayıcılar tarafından desteklenmektedir ve bu nedenle farklı bir dil tanıtmak son derece zor olacaktır. Başka bir tarayıcı savaşına ihtiyacımız yok.

Bu, neden farklı bir istemci tarafı diline geçme planı olmadığını bildiğimi açıklıyor.

Ancak DOM modeli ve bununla nasıl çalışacağını düşünmeye başlarsanız Javascript'in o kadar da kötü olmadığını düşünüyorum. JS ile karışık olan birçok şey DOM modelinin çalışma şeklinin sonucudur.

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.