crossline

Sass ~Grunt~

font-size:12px;line-height: 150%;

 

 

Sassをコンパイルしてくれるものが「Grunt」

あれ?そしたら「Koala」ってどうなの?って思うけど、これもコンパイルするためのもの。なにが違うか、と言えば、

 

「imgも加工できるか。」的なとこです。

だから、「Koala」はコンパイルだけするならOK。だってそれならターミナルでもできるもんね。

でもやぱりimgの色々な作業とか出てくるからGruntのがいいってこと。ってことを私も最近知ったんだけどねえ笑

 

========================単語予習========================

Node.jsはサーバ側で動作するJavascriptであり

※通常、Javascriptはユーザーのブラウザで動作するプログラミング用語。

 

PHPRubyのように、サーバーサイドのプログラムをJavaScriptで記述できるのがNode.js。

 

・Node.js

Node.jsとは,ブラウザGoogle Chrome用に開発されたJavaScriptエンジンV8がサーバ上でプログラムを実行できるように,ファイルやネットワークI/Oなど多くの機能を追加したものです。

C10K問題(クライント1万代接続問題)を解決する

・従来のWebサーバーは、1万接続もあるとパフォーマンスが落ちる...ので、その問題を解決する!

 

【特徴】

・サーバーサイドのJavaScript(→サーバーサイドで動くJavaScriptの実行環境)

・非同期(*I/Oの処理結果を待たず処理を進める)

  ・ノンブロッキングI/O(I/Oの結果を待たないで処理を進める。I/O処理が終了したらコールバック関数を実行。)→大量の処理に対応・たくさんの接続の処理がめっちゃ早い!!

(リクエストやコールバックの発生は、イベントとして登録して扱い、そのイベントに関する処理が終わったら、次のイベントを処理する。)

・イベントドリブン

・シングルスレッド(メモリ消費が少ない、仕事切り替えが少ないので早い)

JavascriptエンジンがGoogleのV8で早い

 

*I/O(アイオー):Input/Outputの略。情報を入力(input)し、計算結果を出力(output)するという処理のこと。もしデータのI/Oがいっぱい行われたら、ハードウェアやネットワークにI/O処理の付加が発生することがある。

 

【Node.jsで作られたアプリの特徴】

・小さいデータや小さい計算の場合、速い

・メモリ消費量が少ない

・ローカルとリモートともデータのやり取りをシームレスに行うフレームワーク(Meteor)などができている

・サーバー側、クライント側で処理の共通化ができる(入力値チェックなど)

・サーバーサイドのコード変更したとき、Node.jsアプリの再起動が必要な(場合が多い)

・リアルタイムなアプリケーションに合う。

  ・シングルページアプリケーションに合っている。

  ・WebSocketを利用するアプリに合っている

  

 

※ちなみに通常、Node.jsを『node』と呼ぶらしい。

なんかドーモクンみたい。↓NHKの茶色いキャラクター。

f:id:ishuko:20150530193251g:plain