初めてのProcessing 第2版

[cover photo]
  • 2018年12月15日 発売予定
  • 592ページ
  • ISBN978-4-87311-861-1
  • 原書: Learning Processing, 2E
  • フォーマット 本 PDF

オライリー・ジャパンで書籍を購入:
定価3,996円


オブジェクト指向プログラミングの入門書。インタラクティブメディアやクリエイティブコーディングという興味深い文脈で、オブジェクト指向プログラミングをゼロから学びます。デザイナーやアーティストなどプログラミングによって何かを創造したい人だけでなく、プログラミングを学びたい人、プログラミングに興味があるすべての人を対象に、ProcessingによるプログラミングおよびProcessing環境の使い方を初心者にもわかりやすいステップアップ形式で丁寧に解説します。インタラクティブアート、ライブビデオ、データ可視化といった最先端のグラフィックアプリケーションを作成するために必要なプログラミングの基礎およびプログラムの構成要素を学ぶことができる、ユニークな実習形式のマニュアルです。

関連書籍

Processingをはじめよう 第2版
あなたの知らないところでソフトウェアは何をしているのか?
コンピュータシステムの理論と実装
ゼロから作るDeep Learning
ゼロから作るDeep Learning ❷
退屈なことはPythonにやらせよう
入門 Python 3
ビジュアライジング・データ

恩師Red Burnsを偲んで
謝辞
訳者まえがき
イントロダクション

レッスン1 はじめの一歩

    1章  ピクセル(画素)
        1.1 グラフ用紙
        1.2 簡単な図形
        1.3 グレースケールカラー
        1.4 RGBカラー
        1.5 色の透明度
        1.6 色の範囲のカスタム設定

    2章 Processing
        2.1 Processing が手助けをする
        2.2 Processing をどうやって手に入れたらいいの?
        2.3 Processing アプリケーション
        2.4 スケッチブック
        2.5 Processing でコーディングする
        2.6 エラー
        2.7 Processing リファレンス
        2.8 実行ボタン
        2.9 最初のスケッチ

    3章  インタラクション
        3.1 流れとともに進める
        3.2 私たちの良き友人:setup() とdraw()
        3.3 マウスによる変化
        3.4 マウスのクリックとキーの押し下げ

レッスン2 条件式と繰り返し

    4章 変数
        4.1 変数とは何か?
        4.2 変数の宣言と初期化
        4.3 変数を使う
        4.4 たくさんの変数
        4.5 システム変数
        4.6 ランダム(乱数):変化に富むことは人生のスパイスである
        4.7 変数のZoog
        4.8 移動(Translation)

    5章 条件文
        5.1 論理式
        5.2 条件文:if、else、else if
        5.3 スケッチ内での条件文
        5.4 論理演算子
        5.5 複数のロールオーバー
        5.6 ブーリアン変数
        5.7 跳ね返るボール
        5.8 物理学初級講座

    6章 ループ
        6.1 真面目な話、繰り返しとは何か?
        6.2 while ループ:必要なだけループする
        6.3 「終了」条件
        6.4 for ループ
        6.5 ローカルvs グローバル変数(別名「変数のスコープ」)
        6.6 draw() ループ内のループ
        6.7 Zoogの腕が成長する

レッスン3 関数とオブジェクト

    7章 関数
        7.1 分解する
        7.2 「ユーザー定義」関数
        7.3 関数を定義する
        7.4 簡単なモジュール性
        7.5 引数
        7.6 コピーを渡す
        7.7 戻り値の型
        7.8 Zoogの再編成

    8章  オブジェクト
        8.1 オブジェクト指向プログラミング(OOP)をよく理解する
        8.2 オブジェクトを使う
        8.3 クッキーの抜き型を書く
        8.4 オブジェクトを使う:その詳細
        8.5 タブを使ってひとつにまとめる
        8.6 コンストラクタのパラメータ
        8.7 オブジェクトはデータ型でもある!
        8.8 オブジェクト指向のZoog

レッスン4 配列処理

    9章 配列
        9.1 配列:なぜ気にしないといけないのか?
        9.2 配列とは何か?
        9.3 配列の宣言と生成
        9.4 配列の初期化
        9.5 配列の操作
        9.6 簡単な配列の例:蛇
        9.7 オブジェクトの配列
        9.8 インタラクティブなオブジェクト
        9.9 Processing の配列関数
        9.10 1001 匹Zoogちゃん

レッスン5 ひとつにまとめる

    10章  アルゴリズム
        10.1 我々はどこにいて、どこに向かうのか?
        10.2 アルゴリズム
        10.3 アイデアからパーツへ
        10.4 パーツ1:キャッチャー
        10.5 パーツ2:交差判定
        10.6 パーツ3:タイマー
        10.7 パーツ4:雨粒
        10.8 統合:ドレスアップする
        10.9 この後の学習の進め方

    11章 デバッグ
        11.1 助言#1:休憩をとる
        11.2 助言#2:他の人に参加してもらう
        11.3 助言#3:単純化
        11.4 助言#4:println() は、あなたの友人です

    12章 ライブラリ
        12.1 ライブラリ
        12.2 組み込みライブラリ
        12.3 寄稿されたライブラリ(Contributed libraries)
        12.4 手動でライブラリをインストールする

レッスン6 数学と3D

    13章 数学
        13.1 数学とプログラミング
        13.2 モジュロ
        13.3  乱数
        13.4 確率レビュー
        13.5 コードでの発生確率
        13.6 パーリンノイズ
        13.7  map() 関数
        13.8  角度
        13.9 三 角法
        13.10 振動
        13.11 再帰
        13.12  2 次元配列

    14章 3Dでの移動と回転
        14.1  z 軸
        14.2 P3Dとはいったい何?
        14.3 バーテックス図形
        14.4 カスタム3D図形

        14.5 単純な回転
        14.6 異なる軸での回転
        14.7 スケール
        14.8 行列:プッシュする、ポップする
        14.9 Processing の太陽系
        14.10 PShape

レッスン7 画像と動画

    15章 画像
        15.1 画像から始める
        15.2 画像を用いたアニメーション
        15.3 最初の画像処理フィルター
        15.4 画像の配列
        15.5 ピクセル、ピクセル、さらにピクセル
        15.6 画像処理入門
        15.7 2 つ目の画像処理フィルター:独自のtint() を作る
        15.8 もうひとつのPImageオブジェクトのピクセルへの書き込み
        15.9 レベル2:ピクセル集合処理
        15.10 クリエイティブな可視化

    16章 ビデオ
        16.1 ライブビデオの基礎
        16.2 録画ビデオ
        16.3 ソフトウェアミラー
        16.4 センサーとしてのビデオ、コンピュータビジョン
        16.5 背景除去
        16.6 モーション検出
        16.7 コンピュータビジョンのライブラリ

レッスン8 テキスト処理

    17章 テキスト
        17.1 String はどこから来るのか?
        17.2 文字列とは何か?
        17.3 テキストを表示する
        17.4 テキストアニメーション
        17.5 テキストモザイク
        17.6 回転するテキスト
        17.7 テキストを1 文字ずつ表示する

    18章 データ入力
        18.1 文字列の操作
        18.2 分割と結合
        18.3 データを扱う
        18.4 テキストファイルで作業する
        18.5 表形式データ
        18.6 標準化されていないフォーマットのデータ
        18.7 データ分析
        18.8 XML
        18.9 Processing のXMLクラスを使う
        18.10 JSON
        18.11 JSONObjectとJSONArray
        18.12 スレッド
        18.13  API

    19章  データストリーム
        19.1 ネットワーク通信
        19.2 サーバーを作る
        19.3 クライアントを作成する
        19.4 ブロードキャスティング
        19.5 マルチユーザー通信パート1:サーバー
        19.6 マルチユーザー通信パート2:クライアント
        19.7 マルチユーザー通信パート3:すべてをひとつにまとめる
        19.8 シリアル通信
        19.9 ハンドシェイクによるシリアル通信
        19.10 文字列のシリアル通信

レッスン9 音声処理

    20章 サウンド
        20.1 基本的なサウンドの再生
        20.2 より魅力的なサウンドの再生
        20.3 サウンド合成
        20.4 サウンド解析
        20.5 サウンドの閾値
        20.6 スペクトラム解析

    21章 書き出し
        21.1 ウェブへ書き出す
        21.2 スタンドアローンアプリケーション
        21.3 高解像度のPDF
        21.4 画像とsaveFrame()
        21.5 ビデオを録画する

レッスン10 Processingを支える技術

    22章  高度なオブジェクト指向プログラミング
        22.1  カプセル化
        22.2  継承
        22.3 継承の実例:図形
        22.4 多態性(ポリモーフィズム)
        22.5 オーバーロード

    23章 Java言語
        23.1 魔法を明かす
        23.2 Processing がなければコードはどんな風になるか
        23.3 Java API を探索する
        23.4 その他の便利なJava クラス:ArrayList
        23.5 その他の便利なJava クラス:Rectangle
        23.6 例外処理(エラー処理)
        23.7 Processing 以外のJava 開発環境

付録A 一般的なエラー

    A.1	コンパイル時のエラー
        Missing a semi-colon ";"
        Missing left parentheses "("
        Missing right curly bracket "}"
        The variable "myVar" doesn't exist.
        The local variable "myVar" may not have been initialized.
        The class "Thing" doesn't exist.
        The function "myFunction()" expects parameters like this: myFunction
        (type, type, type, ...)
        The method "function(type, type, type, ...)" does not exist.
        Error on " _____ "
    A.2	ランタイムエラー
        java.lang.NullPointerException
        java.lang.ArrayIndexOutOfBoundsException:

索引

Feedback

皆さんのご意見をお聞かせください。ご購入いただいた書籍やオライリー・ジャパンへのご感想やご意見、ご提案などをお聞かせください。より良い書籍づくりやサービス改良のための参考にさせていただきます。
[feedbackページへ]