CoffeeScriptでは、?は 「?の手前の値が存在するかチェックするコード」 に変換するためのものだから、 三項演算子にコンパイルするすべがないと思ってたけど、 普通にあった。
まずAlloyってなんぞ?というと、Titaniumによるモバイル開発で利用可能なMVCフレームワークです。 そしてこれがRailsに非常に似ています。なのでRubyistにとっては非常に扱いやすいんじゃないでしょうか。 Alloyについて Titaniumは基本的にResourceディレクトリ以下にコードを書いていくらしい(たぶん)のですが、Alloyによる開発ではこのディレクトリは触りません。その代わりにappフォルダがあるので、ここにコードを書いていきます。Rubyist大喜びですね。 app以下のディレクトリ構造はざっくり書くと以下のような感じです。 app |- models # モデルを格納するディレクトリ |- views # ビューを格納するディレクトリ |- controllers # コントローラを格納するディレクトリ |- assets # 各種リソース(画像とか)を
Table of contents Why not use JavaScript? JavaScript has a lot of warts in the language and while the ECMAScript community is doing a good job with its upcoming revisions, it’s still left with a lot of the old cruft. Also, for those who want to code for older browsers, all the shiny new features that the newer versions of ECMAScript provide are for all intents and purposes unreachable. Some of the
原因 Phantom.jsのpage.evaluateに渡す関数は外側のスコープの変数を利用できないのに、CoffeeScriptのコンパイラが外側のスコープの変数を利用する関数を生成してしまうため。 対策 次のような関数を利用することでpage.evaluateに渡す関数が変数を自身のスコープ内のみで解決できるようにする。 toBeExecutableInBrowser = (func) -> str = func.toString().replace /\n/, '\n var __slice = [].slice;\n' eval "(#{str})" あるいは次のようにしてpage.evaluateの動作を変更し、ブラウザ内に__sliceという変数を事前に定義するようにしておく。 do () -> evaluate = page.evaluate page.evaluate =
jade だけだったら watch とか使えば良いと思うんですが, Coffeescript も自動ビルドしたい. しかしぱっと見 guard-jade とかなさそう. Coffeescript の自動ビルドは guard-coffeescript でなんとかして頂きたい. ということで jade については自分で書く. $ gem install guard $ gem install guard-coffeescript $ gem install guard-shell $ gem install jade諸事情で jade は実は npm でインストールしてあるんだが, 恐らく大丈夫. Guardfile はこんな感じ. # jade/ にある .jade ファイルの変更を検知してビルドしたものを public に出力 # .swp ファイルは排除 ( vim で書いてるので...
cordovaを使う時にhamlとsassとcoffeeを使いたかったのでguardでそれぞれをwatchするようにした。 普段は何らかのWebサーバーが立ち上がってて出力を直接返すからこういう風にそれぞれの静的ファイルを必要とすることって意外と少ないですね。 $ gem install guard-haml guard-sass guard-coffeescript このようなディレクトリ構成にする場合。 # Guardfile haml_options = { format: :html5, attr_wrapper: '"', ugly: true } guard "haml", input: "haml", output: "www", haml_options: haml_options do watch %r{^haml/.+\.haml} end guard "sass",
A社coffee-scriptエヴァンジェリストのmizchiです。今日は昨今の大規模JSの需要の高まりに応えるべく、お前が知ってる資料をまとめろとのお達しが下ったので、社内wiki面倒だしここに載せてますん。 前提 大規模JSをモジュール化する為にcoffee-scriptのシンタックスシュガーでOOPのパラダイムを持ち込む coffee-scriptの煩雑なコンパイル作業を避けるために、Rails/Nodeではアセットパイプラインを使って動的にコンパイルと圧縮を行う JSプロジェクトを部分的にnode化してTDDでサイクルを回す coffee-scriptに関しては、基本的には本家チュートリアルと The Little Book on CoffeeScript を読めばいい coffee-script チュートリアル 本家チュートリアル CoffeeScript little book
まず、自分は受託制作がメインの会社(PixelGrid)に務めていて、一応、JavaScriptやる会社ですと謳っているのもあって、JavaScriptでUIを組む仕事が結構多い。自分は、マークアップ出身なJavaScriptプログラマーみたいな感じになってる。最近よくあるのが、いままでFlashで作っていたものをJSでーとかだったり、WebアプリをAjaxベースでーとか、そういうのとかをメインにやったりしてる。 そのような状況で、複雑なUIを組むためには、設計方法に悩む。jQueryは素晴らしいけども、入り組んだUIを設計するための手段は提供してくれない。そんな状況で、自分はjQuery UIのベースになっているwidgetというフレームワークを使ってイベントのやりくりをしていたけれども、これはあくまでjQueryプラグインをOOPで書けるようにしたようにしたもので、そこまで豊富な機能が
久々にTitaniumを触るにあたってCoffeeScriptのコンパイルをGuardにまかせることにしてみたメモ。 Guardはファイルの変更を監視して、変更があったタイミングで何らかの処理を実行できるツール。 これを利用するとCoffeeScriptを書いたそばから自動的にJavaScriptに変換するなんてことも簡単にできるわけで。 そしてそのものずばりのことを実現するGuard::CoffeeScriptなんてものがあったりします。 Guard::CoffeeScriptの導入 gem install guard-coffeescript これでGuard本体も入る。あ、要Rubyです。 追記 ファイルシステム監視のために以下のGemも必要だった。 gem install rb-fsevent 上記はMacの場合でLinuxとWindowsの場合は違うGemになるので詳しくはGua
最近、まわりでCoffeeScriptがすごいという声が。 CoffeeScriptって? Javascriptを洗練させてPythonやRubyライクな文法で書ける言語。 コンパイルするとクロスブラウザでJS Lintも通るJavascriptになるというもの。 某WebベースのTwitterクライアントも、JS部分はこれで書いてるとか。 CoffeeScript - sappari wiki https://sites.google.com/site/sappariwiki/coffeescript CoffeeScriptについては、日本語だと、ここがよくまとまってます。 さっそく、CoffeeScritptを入れて、Titaniumの最初のコード(プロジェクトを新規作成するとできるやつ)をCoffeeScriptで書きなおしました。 https://gist.github.com/
☕ CoffeeScript CoffeeScript is a little language that compiles into JavaScript. Think of it as JavaScript's less ostentatious kid brother — the same genes, roughly the same height, but a different sense of style. Apart from a handful of bonus goodies, statements in CoffeeScript correspond one-to-one with their equivalent in JavaScript, it's just another way of saying it. Disclaimer: CoffeeScript i
こんにちは。毎年花粉症になりかけている飯塚です。 最近のNode.jsの普及などによってサーバサイドJavaScript界隈が盛り上がっています。 そんなホットなJavaScriptをラクにかつエレガントに書くためのCoffeeScriptという言語をチュートリアル風に紹介します。 何かしらのライブラリを自分で書く程度にJavaScriptで開発している人は絶対に使ったほうがいいと思います。 JavaScriptを知っていれば1-2時間程度で十分駆使できるようになります。 (2011/6/28:@m_satyr様にご指摘頂いた箇所を修正しました。) 目次 CoffeeScriptとは? インストール Hello World 構文 関数 変数展開 Objectの生成 ループ 存在チェック ヒアドキュメント thisのバインド クラス 無名関数 {var} Tips ?の使い分け 存在チェック
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く