CoffeeScript
| CoffeeScript | |
| Paradygmat | wieloparadygmatowy: bazujący na prototypach, imperatywny, funkcyjny, skryptowy |
| Typowanie | dynamiczne, słabe |
| Aktualna wersja stabilna | 1.1.0 |
| Twórca | Jeremy Ashkenas |
| Platforma sprzętowa | wieloplatformowy |
| Platforma systemowa | wieloplatformowy |
| http://coffeescript.org | |
CoffeeScript to język programowania kompilowany do JavaScriptu. CoffeeScript dodaje lukier składniowy zainspirowany przez Rubiego i Pythona aby zwiększyć czytelność kodu. Język oferuje także bardziej wyrafinowane funkcje, takie jak przetwarzanie tablic i dopasowywanie do wzorców. Ponieważ CoffeScript kompiluje się do JavaScriptu, programy mogą być krótsze o około 1/3 bez strat dla szybkości działania.[1] Na dzień 2 maja 2011 CoffeeScript należy do najbardziej obserwowanych projektów na Githubie.[2]
CoffeScript cieszy się stosunkowo dużą popularnością w społeczności programistów Rubiego. Jest używany produkcyjnie przez 37signals.[3] CoffeeScript jest domyślnym językiem po stronie klienta w Ruby on Rails od wersji 3.1.[4] Brendan Eich stwierdził, że CoffeeScript miał wpływ na jego rozważania o przyszłości JavaScriptu.[5]
[edytuj] Przykłady
Typowy fragment kodu JavaScript z użyciem biblioteki jQuery
$(document).ready(function() { // Kod inicjalizacyjny });
W CoffeeScript słowo kluczowe function jest zastąpione przez symbol ->. Wcięcia zastępują nawiasy klamrowe, podobnie jak w Pythonie. Dodatkowo, najczęściej nawiasy mogą być pominięte. Analogiczny do powyższego fragment kodu w CoffeeScript wygląda następująco:
$(document).ready -> # Kod inicjalizacyjny
Lub krócej
$ -> # Kod inicjalizacyjny
Przypisy
- ↑ Read Write Hack. Interview with Jeremy Ashkenas, Jan 7, 2011
- ↑ Github. Popular Watched Repositories
- ↑ Carson, Ryan. "New Rails-like Framework from 37signals for HTML5 Mobile Apps", Think Vitamin blog, Nov 8, 2010
- ↑ Peek, Joshua. Tweet by Rails Core Team Member on Apr 13, 2011
- ↑ Eich, Brendan. "Harmony of My Dreams"
[edytuj] Linki zewnętrzne
- CoffeeScript.org - Oficjalna strona
- Repozytorium kodu na GitHubie
|
||||||||||||||||||||||||||||||||||||||||||||||||||