CoffeeScript

CoffeeScript kaynaktan kaynağa derleme yapan ve JavaScript kodu üreten bir geliştirme aracıdır. Sözdizimi Python ve Ruby dillerine benzer, kod blokları girintiler ile ayrılır, JavaScript'in satır sonlarında noktalı virgül kullanma gibi yazım kurallarını da içermez, bu nedenle okunması kolaydır. Kullandığı bazı sözcükler ve yapılar sayesinde JavaScript ile uzun yazılabilecek ve okunaksız hale gelecek kodları neredeyse 3/1 oranında kısaltabilir ve kolay okunabilme imkânı sunar. Derleme işlemi çalışma zamanında değil geliştirme aşamasında yapıldığından tarayıcılarda performans kaybı söz konusu değildir.

CoffeeScript
Paradigması Betik dili
İlk çıkışı 2009
Tasarımcı Jeremy Ashkenas
Geliştirici Jeremy Ashkenas
Kararlı sürüm

1.9.3

(14 Mayıs 2015)
Etkilendikleri jQuery, MooTools, ProtoType
Etkiledikleri MoonScript
Uygulama dili JavaScript
Platformu çapraz platform
Lisans MIT Lisansı
Olağan dosya uzantıları .coffee
Web sitesi http://coffeescript.org

CoffeScript yine CoffeeScript ile yazılmış bir JavaScript derleyici sunar, bu derleyici Node.js veya başka bir JavaScript runtime ile çalıştırılabilir bir derleyicidir. Derlenmiş JavaScript dosyaları doğrudan tarayıcıda veya herhangi bir JavaScript runtime ile çalıştırılabilir.

Kod örneği

Aşağıdaki örnekte CoffeeScript kodu ve bunun derlenmiş halini karşılaştırabilirsiniz.

CoffeeScript
switch day
  when "Mon" then go work
  when "Tue" then go relax
  when "Thu" then go iceFishing
  when "Fri", "Sat"
    if day is bingoDay
      go bingo
      go dancing
  when "Sun" then go church
  else go work
JavaScript
switch (day) {
 case "Mon":
   go(work);
   break;
 case "Tue":
   go(relax);
   break;
 case "Thu":
   go(iceFishing);
   break;
 case "Fri":
 case "Sat":
   if (day === bingoDay) {
     go(bingo);
     go(dancing);
   }
   break;
 case "Sun":
   go(church);
   break;
 default:
   go(work);
}
CoffeeScript
# The first ten global properties.

globals = (name for name of window)[0...10]
JavaScript
var globals, name;

globals = ((function() {
 var _results;
 _results = [];
 for (name in window) {
   _results.push(name);
 }
 return _results;
})()).slice(0, 10);

Dış bağlantılar

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.