関連サイト
本書の関連ページが用意されています。
内容紹介
Webクリエイターのための、Node.jsによるサーバーサイドJavaScript入門です。
JavaScriptは今、もっとも注目されているプログラミング言語ですが、サーバー開発の世界でもJavaScriptが急速に広まりつつあります。それが「Node.js」です。
本書は、「JavaScriptの基本はだいたいわかっている」という人でも読めるように、基本的なインストールや設定などから順を追って説明しています。また、サーバーサイドの技術的な説明よりも「Webアプリケーションを作りたい」と思うクリエイターに役に立つ知識を中心にまとめました。
「Chapter1 Node.js 開発の準備を整える」では、Node.jsというのがどういうものか、どんな準備をすればいいのか、どうやって作って動かすのかといった「プログラミング以前」のところからインストール、環境構築まで説明します。
「Chapter2 アプリケーションの基本を覚える」では、Node.jsの基本的な書き方をまとめて解説します。これが分かるようになれば、すぐにでもごく簡単なWebアプリケーションを作成できるようになるでしょう。また、テンプレートエンジンEJSを使って、テンプレートエンジンの利用方法も習得します。
「Chapter3 クッキーとテンプレート」では、Webの開発で重要な「クッキー」について説明します。また、より効率的なページ作成に不可欠なテンプレートエンジンとして、「Jade」の使い方も解説します。
「Chapter4 Webアプリケーションライブラリ「Express」」では、Node.jsのWebアプリケーションライブラリのデファクトスタンダードとも言える「Express」を導入して、効率的にアプリケーションを作るための方法をマスターします。
「Chapter5 PostgreSQLの利用」では、代表的なオープンソースデータベース「PostgreSQL」を使い、Node.js のデータベースアクセスの基本について学んでいきます。リレーショナルデータベースの利用は、Web アプリケーションでは必須と言えるものです。
「Chapter6 MongoDBの利用」では、NoSQLタイプのユニークなデータベース、MongoDBについて解説します。MongoDBをNode.jsで使えるようになれば、一般的なSQLとはまた一味違ったデータベース処理が実現できるようになります。
「Chapter7 Sails.jsによるMVCアプリケーション」では、Sails.jsを使った本格的なMVCアプリケーション開発を行います。Webアプリケーションの開発では「MVCアーキテクチャー」と呼ばれるものが用いられますが、このMVCに基づいてアプリケーション開発を行うパッケージモジュールが「Sails.js」です。
最後の章が、「Chapter8 Sails.jsのデータベース開発」。Sails.jsでは独自のデータベース機能を搭載しており、それによってSQL に依存しないデータベースアクセスを実現しています。Modelによるデータベース利用について、ここでまとめて説明します。
これらをひと通りマスターすれば、一般的なWebアプリケーションであればたいていのものが作れるようになっているでしょう。ぜひ、本書でサーバーサイドJavaScriptの世界に足を踏み入れてください。
書誌情報
- 著者: 掌田 津耶乃
- 発行日: 2014-03-25 (紙書籍版発行日: 2014-03-25)
- 最終更新日: 2014-03-25
- バージョン: 1.0.0
- ページ数: 334ページ(PDF版換算)
- 対応フォーマット: PDF
- 出版社: マイナビ出版
対象読者
著者について
掌田 津耶乃
日本初のMac専門月刊誌「Mac+」の頃から主にMac系雑誌に寄稿する。ハイパーカードの登場により「ビギナーのためのプログラミング」に開眼。以後、Mac、Windows、Web、Android、iPhoneとあらゆるプラットフォームのプログラミングビギナーに向けた書籍を執筆し続ける。
※最近の著作
「Play Framework徹底入門」(共著、翔泳社)
「Spring MVC/Rooプログラミング入門」(秀和システム)
「Eclipse PDTではじめるPHPプログラミング入門 PHP5/PDT3対応」(秀和システム)
「EclipseではじめるJavaプログラミング入門 Eclipse 4.3Kepler対応」(秀和システム)
「見てわかるUnityゲーム制作超入門」(秀和システム)
「はじめてのJavaScript」(秀和システム)
「EclipseではじめるJavaフレームワーク入門 第4版」(秀和システム)
目次
Chapter1 Node.js 開発の準備を整える
Chapter 1-1 Node.jsのセットアップ
- Node.jsとは?
- Node.jsを入手するには?
- Windowsへのインストール
- Mac OS Xへのインストール
- Node.jsの開発環境は?
- エディタか、Eclipseか?
- Notepad++の利用
- Eclipseのインストール
- 日本語とPleiades
- Pleiadesのインストール
- Eclipseを起動してみよう
- 主なビューを覚えよう
- Nodeclipseをインストールしよう
Chapter 1-2 アプリケーションの作成から実行まで
- アプリケーションを作ろう
- Eclipseでアプリケーションを作る
- 作成されたプロジェクトの内容
- プロジェクトを実行する
- ファイルのエンコーディングについて
Chapter2 アプリケーションの基本を覚える
Chapter 2-1 Node.jsの基本コードを理解する
- hello-world-server.jsの中身をチェックする
- HTTPオブジェクトとrequire関数
- HTTPでサーバーを実行する
- createServerの実行関数
- setHeaderとendメソッド
- ログ出力とconsoleオブジェクト
- 関数を書き換えてみよう
- onイベントを利用する
- HTMLファイルを利用しよう
- index.htmlのソースコード
- HTMLファイルを表示する
- FSオブジェクトによるファイルの読み込み
Chapter 2-2 Webアプリケーションの基本処理を覚えよう
- プログラムの値を表示するには?
- 複数ページの対応
- URLオブジェクトの利用
- フォームの送信
- QueryStringオブジェクトによるPOSTデータ処理
Chapter 2-3 テンプレートエンジンを利用する
- テンプレートエンジンを使おう
- EJSについて
- npmでEJSをインストールする
- EJSテンプレートファイルを作る
- index.ejsの作成
- スタイルシートを用意する
- プログラムを作成する
- プログラムをチェックする
- スタイルシート利用の処理について
- <% %>でコードを埋め込む
- データをテンプレートに表示する
Chapter3 クッキーとテンプレート
Chapter 3-1 クッキー
- クッキーの利用
- ヘッダー情報とクッキーの関係
- cookieモジュールによるパーサー処理
- cookieモジュールの使い方
Chapter 3-2 テンプレートエンジン「Jade」
- HTMLベースではないテンプレートエンジン「Jade」
- Jadeテンプレートを作る
- index.jadeのソースコード
- Jadeテンプレートのレンダリング
- Jade利用の基本を理解する
- Jadeテンプレートの基本
- テンプレートにコードを記述する
- プログラムとテンプレートの値のやり取り
- フォームをオブジェクトで管理する
- Node.jsプログラムを書き換える
Chapter 3-3 テンプレートを制御する
- テンプレートの「if」
- テンプレートの「for」
- switchの働きをする「when」
- 外部テンプレートのロード
- テンプレートを組み合わせて画面表示をする
- index.jadeを作成する
- テンプレートの継承
- 継承を使ってみる
- EJSか、Jadeか?
Chapter4 Webアプリケーションライブラリ「Express」
Chapter 4-1 Expressの基本をマスターする
- Webアプリケーションフレームワークとは?
- Expressを用意しよう
- もっとも小さいExpressアプリケーション
- アプリケーションの仕組み
- Expressアプリケーションを生成する
- Eclipseでのプロジェクト作成
- Expressアプリケーションの内容
- パッケージモジュールについて
- app.jsをチェックする
- 「views」のテンプレートについて
- 「routes」フォルダのプログラム
- package.jsonについて
Chapter 4-2 Expressを使ったWebアプリ開発
- プログラムからテンプレートに値を渡す
- index.jsとindex.jadeの編集
- フォームの送信
- index_post.jsの作成
- app.jsの変更
- クエリーテキストによるパラメータ送信
- パラメータ送信のアドレス形式を考える
Chapter 4-3 Webアプリケーションのための各種機能
- クッキーの利用について
- クッキーを読み書きする
- クッキーの保存と取得
- セッション管理について
- セッション利用の実際
- プログラムの変更
- セッションの利用
- セッションが途切れるとき
- セッション用クッキーについて
- JSONを利用したAjax通信
- クライアント側をJadeテンプレートで作る
- Ajax通信の基本
- ソースコードを修正する
- includeによる表示用パーツの利用・
Chapter5 PostgreSQLの利用
Chapter 5-1 PostgreSQLを準備しよう
- PostgreSQLを用意する
- PostgreSQLのインストール
- pgAdmin IIIを起動しよう
- ログインロールを作成する
- データベースを作成する
- テーブルを作成する
- テーブルにデータを追加する
- Node.jsからPostgreSQLを使うには?
- PostreSQLアクセスの基本
Chapter 5-2 データベースのCRUDをマスターしよう
- mydataの一覧を表示しよう
- index.jsを作成する
- テーブルアクセスの流れを整理する
- レコードの新規作成
- プログラムの新規作成
- レコードの更新
- 更新処理のプログラム作成
- index.jadeを変更する
- クエリーテキストをわかりやすく記述する
- レコードの削除
- 削除のプログラム作成
- app.jsとindex.jadeの変更
Chapter 5-3 データベースアクセスのその他の機能
- レコードの検索について
- 検索のプログラム作成
- drainイベントについて
- rowイベントについて
- トランザクションについて
- ロールバックについて
- トランザクションとロールバックの実際
Chapter6 MongoDBを利用しよう
Chapter 6-1 MongoDBを使ってみる
- MongoDBとは?
- MongoDBを用意する
- MongoDBを使ってみる
- データベースを利用する
- データの保存について
- データを表示する
- MongoDBとNode.js
Chapter 6-2 Mongooseの基本
- MongoDB利用の流れを理解する
- データベースを利用する
- index.jadeの用意
- プログラムを作成する
- MongoDB利用の流れを整理する
- データの一覧取得
- データの保存
Chapter 6-3 更新と削除
- データの更新
- edit.jadeテンプレートの用意
- プログラムの変更
- index.jadeの変更
- データの削除
- delete.jadeの変更
- プログラムの作成
- データの削除処理
- index.jadeの変更
Chapter 6-4 データの検索
- 検索の準備
- find.jadeの変更
- 検索プログラムの作成
- whereによるフィルター設定
- where.equals.execによる検索
- 等式・不等式のためのメソッド
- 配列を使った検索条件の指定
- and/orによる論理演算
- sortによる並べ替え
- ページネーションについて
- トップページをページネーションする
Chapter7 Sails.jsによるMVCアプリケーション
Chapter 7-1 Sails.jsの基本を覚える
- MVCアーキテクチャーとは?
- Sails.jsとは?
- Sails.jsを準備する
- アプリケーションを作って動かす
- アプリケーションの構成を知る
- Eclipseにインポートするには?
- 外部プログラムによるアプリケーション実行
Chapter 7-2 Sails.jsアプリケーションの基本
- Controllerを作成しよう
- EclipseでController作成外部ツールを用意する
- HeloController.jsをチェックする
- テキストを表示させる
- sendメソッドの働き
- Viewを使用する
- HeloController.jsを変更する
- Controller-View間の値の受け渡し
- 送られたクエリーテキストの処理
- アドレスのパスでパラメータを渡す
- routes.jsにルート情報を追加する
- トップページを変更する
- フォームの送信
Chapter 7-3 テンプレートとパーシャル
- Viewのレイアウトについて
- レイアウトの設定とviews.js
- レイアウトを作成する
- パーシャルによるレイアウト
- ヘッダー/フッターのパーシャルを作る
Chapter8 Sails.jsのデータベース開発
Chapter 8-1 Modelによるデータ処理
- Modelの働き
- Modelを作成する
- Eclipseの外部ツールを作成する
- 生成されたModelのソースコード
- Controllerの作成
- MyDataにアクセスする
- データを作成する
- データの削除
- データベースはどこに保存される?
- Modelオブジェクトを編集する
- 利用可能な型名
Chapter 8-2 データのCRUD
- データの一覧表示
- indexアクションの作成
- findとdoneメソッドについて
- データの新規作成
- dd/createアクションの作成
- createメソッドについて
- データの更新
- edit/updateアクションの作成
- findOneによる特定IDのデータ取得
- updateメソッドによるデータ更新
- データの削除
- destroyメソッドによる削除
Chapter 8-3 検索とバリデーション
- 検索用アクションを用意しよう
- 検索とダイナミックファインダー
- nameから検索を行う
- 検索のクエリーオプション
- クエリーオプションの利用例
- ANDとOR
- バリデーションについて
- MyDataにバリデーションを設定する
- addアクションを変更する
- バリデーションエラーの処理法
- add.ejsを変更する
- ValidationErrorオブジェクトの内容について
- 用意されているバリデーションルール
- ここから先は?