今回は,CoffeeScriptについて記述したいと思います.
まず,CoffeeScriptって何?新しいプログラミング言語?と思っている方の為に解説から.
CoffeeScriptとは・・・
- プログラミング言語の一種.コードはJavaScriptに変換される
- JavaScriptと比較して
- 簡潔
- 可読性が高い
- コードを短く記述できる
- RubyやPythonに影響を受けている
「JavaScriptより高性能なRuby・Pythonライクなプログラミング言語」
という事です.
ソースコードはGitHubで公開されており,注目を集めているプロジェクトです.
そんなこんなで,さっそくコードを書いていきたいと思います.
今回は,
- Mac OS X
- Node.jsの実行環境導入済み
- npmのインストール済み
Node.jsとnpmがインストールされていない方は,Google先生に質問するか,CoffeeScriptのサイトに実行環境があるので,そこで実行してみてください.
まずnpmでCoffeeScriptのモジュールをインストールしてパスを通します.
#CoffeeScriptモジュールのインストール npm install coffee-script #zshrcに記述 cd vi .zshrc export PATH="$PATH:/$HOME/node_modules/coffee-script/bin" source .zshrcこれだけで,実行環境の設定は終わりです.簡単ですね. 次に,恒例のHelloWorldを表示させます. 任意のファイル(拡張子->.coffee)を作成し,記述します.
#hello.coffee hello = -> console.log("Hello World") hello()これだけです.このファイルを先ほど導入したcoffeeコマンドによりコンパイルします.
coffee -c hello.coffeeコンパイルが成功すると,hello.jsというファイルが同ディレクトリに作成されます. 新しく作成されたファイルの中身を覗いてみましょう.
(function() { var hello; hello = function() { return console.log("Hello World"); }; hello(); }).call(this);たったあれだけのコードだけで,変数定義,関数定義,クロージャーもしっかり記述されています.便利ですね。実行します.
node hello.js Hello World表示されました!やったね! これだけのコードでは,よくわからないと思うので,とりあえずFizzBuzzのコードを書いてみたいと思います.
#FizzBuzz 1~15 for i in [1...16] if i%3 is 0 and i%5 is 0 console.log 'FizzBuzz' else if i%3 is 0 console.log 'Fizz' else if i%5 is 0 console.log 'Buzz' else console.log iCoffeeScriptでは,!=や==といった曖昧な演算子を使わず, ===であるisを利用します. また括弧やセミコロンも省かれます. 同様にコンパイルを行い,作成されたファイルを見てみましょう.
(function() { var i, _i; for (i = _i = 1; _i < 16; i = ++_i) { if (i % 3 === 0 && i % 5 === 0) { console.log('FizzBuzz'); } else if (i % 3 === 0) { console.log('Fizz'); } else if (i % 5 === 0) { console.log('Buzz'); } else { console.log(i); } } }).call(this);実行します.
1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz表示されました!やったね! 今回は簡単な説明だったので,興味を持った方はいろいろ調べてみてください.
では,今回はこの辺で終わります.ありがとうございました.
返信削除I’m excited to uncover this page. I need to thank you for your time for this, particularly fantastic read!! I definitely really liked every part of it and I also have you saved to fav to look at new information in your site.
Python classes in Mumbai
Python classes in Delhi
Python classes in Chennai
Python classes in Noida