hokuriku.net 2013 01-26 node.js

18
Node.jsVisual Studioでがんばってみる 石坂忠広

Upload: tadahiro-ishisaka

Post on 13-Jul-2015

717 views

Category:

Technology


4 download

TRANSCRIPT

Node.jsをVisual Studioでがんばってみる石坂忠広

自己紹介

静岡県伊豆の国市で生活しています

幕末に活躍した江川太郎左衛門(坦庵(たんあん))で有名です

みなもとたろう先生の風雲児たち幕末編はもちろん読んでますよね?

担庵が作った反射炉があります

源頼朝が流された蛭が小島が会ったと言われているところです

仕事はSEです

火力発電所とかLNG基地とか。。。

JAZUG静岡支部長(謝る係)をしています

2

みなさんNode.js

は知ってますよね?

3

WindowsでNode.js

4

WindowsでNode.jsを動かすには ここ1年で状況がすごく良くなりました

Windows向けインストーラーの公開

FOSSの言語処理系インストーラーとしては非常に優秀

npmがVS / VS Expressに対応

別の見方を知ればVC++ Expressのインストールが必要になるケースがある。

iisnode

IIS7.x/8の支配下でnodeアプリケーションを動かすためのソフトウェア

IIS配下にするといろいろ良いことがある。

こちら参照 https://github.com/tjanczuk/iisnode/wiki

WebMatrix2

Windows Azure

5

WebMatrix2 6

祝 二周年!!

WebMatrix2のNode.js機能

Expressフレームワークのサポート

iisnodeのサポート

Windows Azure Websiteのサポート

テンプレート

iisnode用のweb.config

三種類のテンプレート

空のサイト (最低限のファイル)

Expressサイト (Expressでの最低限のファイル)

スターターサイト (サンプル)

7

WebMatrix2のNode.js機能

インテリセンス

Node.jsのインテリセンス機能が実装されている

拡張機能

NodePowerTools

Node Inspectorの起動などのサポート

GUIベースのnpmツール

デプロイツール

Azureへのデプロイも簡単!!

8

WebMatrix2が高機能なのはわかった。

だがヲレはVisualStudioで書きたいんだよ!!

9

Visual Studioには

テンプレートが無い

→仕方が無いWebMatrixとの組み合わせだ!

WebMatrixからVSを起動!

デバッグが無い

→仕方が無いChrome入れてNode Inspectorだ

Node.jsのインテリセンスが無い

→作った

10

Node.js VisualStudio IntelliSense

Node.js用のインテリセンス定義ファイルを作った

現在Alphaリリース

永遠のAlphaかもしれん

GitHubで絶賛公開中だよ

Node.js 0.8.17に対応

MITライセンスなので勝手にして

11

インテリセンス!! 12

クラスもメソッドも!

VisualStudioでインテリセンス!! 13

もちろんメソッド引数も!

でも1からVSでNode.jsのWebサイトを作るには?

以下の手順でがんばりましょう

1. Visual StudioでWebサイトを新規作成します。

2. Node.js VisualStudio Intellisenseからnodelibディレクトリをディレクトリごと作成したWebサイトのディレクトリにコピー

3. Webサイトのプロパティページ、開始オプションで外部プログラムを選択し、以下の様に設定します。

C:\Windows\System32\cmd.exeを指定する

コマンドライン引数:

/k node <ルートになるnode.jsのファイル> & pause & exit

作業ディレクトリ: Webサイトのディレクトリ

4. デバッグ無しで実行

元ネタ http://www.seesharprun.net/leveraging-visual-studio-2012-for-node.js-development

14

まとめ

node.jsについては芝村さんの技評での

連載を読めばいいんじゃ無いかな

15

ご清聴ありがとうございました!

17

No Code, No Life.

18