$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
大阪Node学園 七時限目 「ゼロからはじめるnode.js」
Search
Shunsuke Watanabe
September 28, 2013
Technology
1
410
大阪Node学園 七時限目 「ゼロからはじめるnode.js」
JAWS FESTA Kansai 2013でのスライドです。
node.jsの概要から主なモジュールの紹介、ElasticBeanStalkでのアプリケーション実行までを紹介しています。
Shunsuke Watanabe
September 28, 2013
Tweet
Share
More Decks by Shunsuke Watanabe
See All by Shunsuke Watanabe
いますぐ {id: number;} をやめろ
craftgear
1
300
forループを越えて / beyond for loop
craftgear
0
510
Reactハンズオン 01 入門編 コード部分抜粋 / React Handson 01 components (excerpt)
craftgear
1
540
Reactハンズオン 02 redux編 コード部分抜粋 / React Handson 02 redux (excerpt)
craftgear
0
530
Reactハンズオン 01 入門編 コード部分抜粋 / React Handson 01 components (excerpt)
craftgear
0
630
Reactで作るDrupalサイト
craftgear
0
440
大阪Node学園 六時限目 「generator小咄」
craftgear
1
330
大阪Node学園四時限目 "This crazy testless world"
craftgear
1
340
Other Decks in Technology
See All in Technology
意外と知らない状態遷移テストの世界
nihonbuson
PRO
1
150
Fashion×AI「似合う」を届けるためのWEARのAI戦略
zozotech
PRO
2
1.1k
Bedrock AgentCore Evaluationsで学ぶLLM as a judge入門
shichijoyuhi
0
100
20251219 OpenIDファウンデーション・ジャパン紹介 / OpenID Foundation Japan Intro
oidfj
0
390
事業の財務責任に向き合うリクルートデータプラットフォームのFinOps
recruitengineers
PRO
2
160
接客歴・営業歴の方が長いエンジニアから見たre:Invent2025
yama3133
0
100
M&Aで拡大し続けるGENDAのデータ活用を促すためのDatabricks権限管理 / AEON TECH HUB #22
genda
0
190
【ServiceNow SNUG Meetup LT deck】WorkFlow Editorの廃止と Flow Designerへの移行戦略
niwato
0
120
AI駆動開発の実践とその未来
eltociear
1
460
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
440
SQLだけでマイグレーションしたい!
makki_d
0
1.2k
20251222_サンフランシスコサバイバル術
ponponmikankan
2
130
Featured
See All Featured
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
87
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
31
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
85
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
83
How to make the Groovebox
asonas
2
1.8k
Faster Mobile Websites
deanohume
310
31k
Site-Speed That Sticks
csswizardry
13
1k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
140
Designing for Performance
lara
610
69k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
88
Transcript
JAWS FESTA Kansai 2013 出張版 大阪 Node 学園七時限目 ゼロからはじめる node.js
2013/09/28
Agenda 1. はじめに 2. node.js の概要 3. node.js の特徴 4.
はじめよう node.js 5. node packaged modules 6. サーバサイド環境としての node.js 7. コーディングツールとしての node.js 8. node.js と AWS 9. 今後の予定 10. 宣伝
はじめに
想定対象者 これから node.js を触り始めようという方
リンクは です 上の例をのぞいてスライド内のリンクはクリックで外部のサイトが開きます この色
自己紹介 渡辺俊輔 フリーランス Web エンジニア 大阪 Node 学園主催 Blog :
質問、訂正な ありましたら下記から うぞ google+ twitter gmail A Node in Nodes 大阪 node 学園 @craftgear
[email protected]
node.js の概要
node.js 正式名称 node 生まれてから 4 年
runs javascript javascript で処理を書く
runs on google V8 google v8 上で動く v8 は chrome
に乗っている javascript エンジン
without DOM DOM はない
with APIs ファイル操作な の API がある Node.js v0.10.18 Manual &
Documentation
二つの側面 サーバサイド環境としての node.js コーディングツールとしての node.js
javascript の実行環境
node.js の特徴
高いハフォーマンス I/O バウンドな処理のみ
非同期処理 従来の LL 言語はほぼすべて同期処理 javascript は生まれながらにして非同期
豊富なモジュール node packaged modules https://npmjs.org/
活発なコミュニティ 主に欧米
node.js の採用例 eBay, LinkedIn, Microsoft, Yahoo な node.js を利用している企業、団体の一覧
非同期処理がもたらす恩恵 豊かなエコシステム
はじめよう node.js
インストール バイトリをダウンロードして解凍するのが早くて簡単 自分でコンハイルしたい人は nodebrew とか http://nodejs.org/download/
まず覚えたいこと 2 つのコマンド node コマンド npm コマンド 2 つの概念 コールバック関数
イベントドリブン
node コマンド node.js の本体 スクリプトを実行する バージョン表示 スクリプト実行 対話環境 > node
--version v0.11.6 > node hello.js Hello! > node > console.log('Hello!'); Hello!
npm コマンド node package manager npm モジュールの管理を行う 個別モジュールのインストール モジュールのアンインストール ※
Mac の homebrew で node.js をインストールした場合には npm コマンドの 実行に sudo が必要 > npm install less > npm uninstall less
コールバック関数 jQuery で 馴染み jQuery の document.ready の例 jQuery での呼び名はネンドラ
node.js でのファイル読み出しの例 4 行目から 7 行目の function がコールバック関数 $( document ).ready(function() { // Handler for .ready() called. }); 1 2 3 var fs = require('fs'); fs.readFile(__dirname + '/ong6.txt', {encoding: 'utf-8'} , function (error, result) { console.log(result); process.exit(); } ); 1 2 3 4 5 6 7 8
イベントドリブン こちらも jQuery で 馴染み jQuery の例 document が ready
になったらネンドラを実行する node.js の例 ファイルを読み込ん らコールバック関数を実行する 何かの状態になった → 何かの処理をする || || イベント発生 → コールバック関数を実行
node と npm の二つのコマンドを使う コールバックスタイルに慣れよう
node packaged modules
モジュールの探し方 npm search でモジュールを探せる ウゥブサイトを利用すると便利 キーワードでインクリメンタルサーチ フォーク数、スター数な でソート可能 カテゲリから探せる しばらく落ちている模様
本家サイト 検索結果の総数が出ない上、ソートが出来ないので使い らい > npm search less nipster node toolbox npmjs.org
サーバサイド環境としての node.js
Web サーバ 標準の http モジュール express restify sailsjs
WebSocket サーバ ws Socket.IO SockJS
データベースアクセス (driver) node-mongodb-native redis node-postgres node-mysql
データベースアクセス (ODM/ORM) mongoose sequalize bookshelf jugglingdb
テストフレームワーク mocha nodeunit QUnit
ユーティリティ ... and more and more underscore async johnny-five
コーディングツールとしての node.js
メタ言語 coffee-script jade less
ユーティリティ ... and more and more UglifyJS jshint grunt yeoman
モジュールを活用しよう Github のフォーク数、スター数、最終更 新日を見る
node.js と AWS
Elastic Beanstalk 自分でサーバを作る必要がない オートスケーリング 対応言語 Java .NET node.js Python PHP
Ruby 参考: 5 ステップでらくらく!アプリ開発者のためのクラウド まかせ構築術
Elastic Beanstalk 環境の作成 から ElasticBeanstalk を選択 自動で構築が始まるのでしばらく待つ グリーンになったら完了 Default Environment
のリンクをクリックす ると起動中のサーバにアクセスできる マネジメントコンソール
node.js のバージョンをあげる 起動時のデフォルトが 0.8.24 なので 0.10.10 に変更する Configuration の Edit
ボタンをクリックする Software Configuration の歯車をクリック Node version に 0.10.10 と入力 ページ下部の save ボタンをクリックすると自動 で環境のアップデートが始まる 最新バージョンはドキュメントににひっそりと書いてある
自作アプリのアップロード app.js を含むファイル一式を zip にまとめる このときディレクトリ と zip にしないこと、 "Failed
to find package.json" というエラーの原因になる Upload and Deploy ボタンをクリックする ファイルを選択をクリックし、先ほ 作った zip ファイルを選択する Deploy をクリックすると自動でアップデートが 始まる
Elastic Beanstalk を使うと node.js アプリケーションのデプロイも簡単
今後の予定 大阪 Node 学園八時限目 node.js みちしるべ 10/28 Innovation EGG 第一回勉強会
出張版
宣伝 半年ほ 前に本を書きました HTML5 と JavaScript による iPhone/Android 両対応アプリ開発ガイド (DESIGN
& WEB TECHNOLOGY)
Thank you! photo by from flickr Lance Johnson