SlideShare une entreprise Scribd logo
1  sur  51
Processingについて
@reona396
 @reona396
 情報電気電子工学専攻 修士1年
 Processingについて研究中
 ブログ:だらっと学習帳
http://blog.livedoor.jp/reona396/
 BNN新社「[普及版]ジェネラティブ・アート」
日本語版編集協力
2
 プログラミング初心者の方へ
 Processingとはどのようなものか
 どうしてProcessingがオススメなのか
 プログラミング経験者の方へ
 近年のProcessingの進化
 プログラミング教育とProcessing
3
そもそもProcessingとは
4
 Javaベースのプログラミング言語および環境
 コンピュータグラフィック作成に特化
 もちろんオープンソース&無料!
5
6
PDE
(Processing Develop Environment)
スケッチ
7
エディタ
PDE
(Processing Develop Environment)
実行ボタン
&
停止ボタン
コンソール
モードチェンジボタン
(Java,JavaScript,Android…)
8
PDEのモードチェンジボタンから変更可能
 Javaモード : 通常モード、実行ファイル作成
 JavaScriptモード :Webへの公開
 Androidモード : Androidアプリ作成
 Tweakモード : スケッチの気軽な編集
9
1. Processing.org からProcessingの
zipファイルをダウンロード
2. zipファイルを展開
3. PDEを起動
4. コードを書く
5. 実行ボタンを押す
10
Processingで何が作れるのか
11
“Magnetosphere”
iTunes 公式ビジュアライザ
引用元 絵心がなくても簡単に絵が描けるProcessing - @IT 12
メジャーリーグにおける
勝率ランキングと
チーム運営費の比較
引用元
書籍「ビジュアライジング・データ」13
アメリカの郵便番号対応地図
14引用元 書籍「ビジュアライジング・データ」
アメリカの郵便番号対応地図
15引用元 書籍「ビジュアライジング・データ」
16
17
 ArduinoはProcessingベース
 センサーデータをProcessingでグラフ化等
18
 PDEに「Android」モード搭載
 ProcessingのスケッチをAndroid上で動作可能
19
Processingがオススメな理由
20
 文法が簡単
 環境を整えるのが簡単
 プログラムの結果がすぐにわかる
 プログラムの結果が楽しくわかる
 応用が利く
 充実の制作サポート
 Tweakモード
 デバッグとコード補完
 OpenProcessing
21
 文法が簡単
 環境を整えるのが簡単
 プログラムの結果がすぐにわかる
 プログラムの結果が楽しくわかる
 応用が利く
 充実の制作サポート
 Tweakモード
 デバッグとコード補完
 OpenProcessing
22
例 : 以下の条件をProcessingとJavaで描く
 大きさは200×200
 背景は白
 (x,y) = (100,100) の位置に黒いドットを描く
23
引用元
ProcessingとJavaの関係 – Expressive Programming |Yasushi NoguchiClass
size(200, 200);
background(255);
// Draw a dot
point(100, 100);
Processingの場合
24
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Color;
public class GraphicsTest extends Applet{
public void paint(Graphics g){
g.setColor(Color.white);
g.fillRect(0, 0, 200, 200);
g.setColor(Color.black);
g.drawLine(100, 100, 100, 100);
}
}
Javaの場合
25
引用元
ProcessingとJavaの関係 – Expressive Programming |Yasushi NoguchiClass
 文法が簡単
 環境を整えるのが簡単
 プログラムの結果がすぐにわかる
 プログラムの結果が楽しくわかる
 応用が利く
 充実の制作サポート
 Tweakモード
 デバッグとコード補完
 OpenProcessing
26
エディタは
アレじゃないと…
まずは
コンパイラを…初心者を悩ませる壁
27
初心者を悩ませる壁
実際に「プログラミング」を始めるまでが
長い!!
28
29
1. Processing.org からProcessingの
zipファイルをダウンロード
2. zipファイルを展開
3. PDEを起動
4. コードを書く
5. 実行ボタンを押す
Processingならこの5ステップだけ!
 文法が簡単
 環境を整えるのが簡単
 プログラムの結果がすぐにわかる
 プログラムの結果が楽しくわかる
 応用が利く
 充実の制作サポート
 Tweakモード
 デバッグとコード補完
 OpenProcessing
30
 プログラムを書いて実行ボタンを押すだけ
 エラーもコンソールに出力
31
 文法が簡単
 環境を整えるのが簡単
 プログラムの結果がすぐにわかる
 プログラムの結果が楽しくわかる
 応用が利く
 充実の制作サポート
 Tweakモード
 デバッグとコード補完
 OpenProcessing
32
従来のプログラミングの演習
 四則演算の結果を出力
 数字のソート
33
従来のプログラミングの演習
 四則演算の結果を出力
 数字のソート
本当はゲームを
作りたいのに…
なんか退屈…
これでアプリとか
作れるのかな…
34
Processingを利用したプログラミング演習
 単純なお絵描き
 ゲーム作り
 Webに展示して品評会
 Androidアプリへの応用
35
Processingを利用したプログラミング演習
 単純なお絵描き
 ゲーム作り
 Webに展示して品評会
 Androidアプリへの応用
36
モチベーションを保ったまま
学習に取り組める
 文法が簡単
 環境を整えるのが簡単
 プログラムの結果がすぐにわかる
 プログラムの結果が楽しくわかる
 応用が利く
 充実の制作サポート
 Tweakモード
 デバッグとコード補完
 OpenProcessing
37
 ProcessingはJavaベース
→それほどクセは強くない
 JavaScriptモードやPythonモード等
他言語との連携の充実化
 アプリケーション作成など実践につながる
38
 文法が簡単
 環境を整えるのが簡単
 プログラムの結果がすぐにわかる
 プログラムの結果が楽しくわかる
 応用が利く
 充実の制作サポート
 Tweakモード
 デバッグとコード補完
 OpenProcessing
39
 スケッチを実行しながらプログラムを編集
 変数、色を結果を見ながら変更可能
 他の人がつくったプログラムの解析に便利
40
41
 文法が簡単
 環境を整えるのが簡単
 プログラムの結果がすぐにわかる
 プログラムの結果が楽しくわかる
 応用が利く
 充実の制作サポート
 Tweakモード
 デバッグとコード補完
 OpenProcessing
42
 デバッグ機能が搭載されたことで
リアルタイムにエラーを検出
 コード補完機能による入力補助
43
 文法が簡単
 環境を整えるのが簡単
 プログラムの結果がすぐにわかる
 プログラムの結果が楽しくわかる
 応用が利く
 充実の制作サポート
 Tweakモード
 デバッグとコード補完
 OpenProcessing
44
 Processingの作品投稿・共有サイト
 多くのProcessingユーザが利用
 コード閲覧やコメント機能等
45
実際に授業をしてみて
46
 学部二年生向け「プログラミング演習」
 本来はC言語によるアルゴリズムの実装の学習
 毎回冒頭でProcessingの情報を提供
 毎回のアルゴリズム実装の課題はC言語で出題
 学期末課題としてProcessingで自由に作品制作
 学部一年生向け「情報リテラシー実習」
 本来はLinuxの操作に関する授業
 学期末にプログラミング入門として導入
47
 二年生の授業
 C言語より興味を持って接してもらえた
 意欲的な学生は本格的なゲームを制作
 一年生の授業
 「このしくみはゲームではこういう所に
利用されています」で注目度が上がった
 導入、Processingの独自文法の解説、
プログラミングの基礎が90分に収まった
 自分でプログラムを改造して
積極的にしくみを試している学生も多数
48
まとめ
49
 プログラミング初心者の方へ
 Processingとはどのようなものか
 どうしてProcessingがオススメなのか
 プログラミング経験者の方へ
 近年のProcessingの進化
 プログラミング教育とProcessing
50
ご意見、ご感想はこちらへお願いします
Twitter : @reona396
ご覧いただきありがとうございました!
解説記事もぜひご覧ください!
オープンソースカンファレンス2014福岡 に
参加しました : だらっと学習帳
51

Contenu connexe

En vedette

En vedette (6)

Processingでジャバジャバ稼ぐ
Processingでジャバジャバ稼ぐProcessingでジャバジャバ稼ぐ
Processingでジャバジャバ稼ぐ
 
プログラミング初心者さんにもオススメ!アートなプログラミング言語 Processingについて
プログラミング初心者さんにもオススメ!アートなプログラミング言語 Processingについてプログラミング初心者さんにもオススメ!アートなプログラミング言語 Processingについて
プログラミング初心者さんにもオススメ!アートなプログラミング言語 Processingについて
 
WordPress でプロフィールサイトをつくってみた
WordPress でプロフィールサイトをつくってみたWordPress でプロフィールサイトをつくってみた
WordPress でプロフィールサイトをつくってみた
 
p5.js について
p5.js についてp5.js について
p5.js について
 
Astah Community スタートガイド
Astah Community スタートガイドAstah Community スタートガイド
Astah Community スタートガイド
 
パーソナルワークのすすめ ~仕事・家庭・趣味のバランス調整~
パーソナルワークのすすめ ~仕事・家庭・趣味のバランス調整~パーソナルワークのすすめ ~仕事・家庭・趣味のバランス調整~
パーソナルワークのすすめ ~仕事・家庭・趣味のバランス調整~
 

Similaire à プログラミング初心者さん歓迎! アートでデザインなプログラミング言語 Processing について

SeasarCon 2009 White TDD
SeasarCon 2009 White TDDSeasarCon 2009 White TDD
SeasarCon 2009 White TDD
Takuto Wada
 
[CE81] プログラミング入門教育用学習環境PEN
[CE81] プログラミング入門教育用学習環境PEN[CE81] プログラミング入門教育用学習環境PEN
[CE81] プログラミング入門教育用学習環境PEN
Ryota Nakamura
 

Similaire à プログラミング初心者さん歓迎! アートでデザインなプログラミング言語 Processing について (20)

Enshu1
Enshu1Enshu1
Enshu1
 
Javaユーザに知ってほしい Processing入門
Javaユーザに知ってほしいProcessing入門Javaユーザに知ってほしいProcessing入門
Javaユーザに知ってほしい Processing入門
 
プログラムの高速化
プログラムの高速化プログラムの高速化
プログラムの高速化
 
java-ja TDD 2nd
java-ja TDD 2ndjava-ja TDD 2nd
java-ja TDD 2nd
 
2019年度未踏: 開発者が行ったソースコード修正作業を学習し代行するボット-DevReplay-
2019年度未踏: 開発者が行ったソースコード修正作業を学習し代行するボット-DevReplay-2019年度未踏: 開発者が行ったソースコード修正作業を学習し代行するボット-DevReplay-
2019年度未踏: 開発者が行ったソースコード修正作業を学習し代行するボット-DevReplay-
 
Web制作者視点で理解するソフトェアテスト
Web制作者視点で理解するソフトェアテストWeb制作者視点で理解するソフトェアテスト
Web制作者視点で理解するソフトェアテスト
 
パフォーマンス管理最前線 米国大規模システムにおける最新トレンド
パフォーマンス管理最前線 米国大規模システムにおける最新トレンドパフォーマンス管理最前線 米国大規模システムにおける最新トレンド
パフォーマンス管理最前線 米国大規模システムにおける最新トレンド
 
SeasarCon 2009 White TDD
SeasarCon 2009 White TDDSeasarCon 2009 White TDD
SeasarCon 2009 White TDD
 
20090801phpstudy Sanemat
20090801phpstudy Sanemat20090801phpstudy Sanemat
20090801phpstudy Sanemat
 
Pythonでラズパイのgpio制御
Pythonでラズパイのgpio制御Pythonでラズパイのgpio制御
Pythonでラズパイのgpio制御
 
[CE81] プログラミング入門教育用学習環境PEN
[CE81] プログラミング入門教育用学習環境PEN[CE81] プログラミング入門教育用学習環境PEN
[CE81] プログラミング入門教育用学習環境PEN
 
楽天エンジニアライフ
楽天エンジニアライフ楽天エンジニアライフ
楽天エンジニアライフ
 
GCSアジャイル開発を使ったゲームの作り方
 GCSアジャイル開発を使ったゲームの作り方 GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方
 
Serverless LT 20201202
Serverless LT 20201202Serverless LT 20201202
Serverless LT 20201202
 
ハードコア デバッギング : サポート直伝! Windows カーネルモード デバッグ活用編!!
ハードコア デバッギング : サポート直伝! Windows カーネルモード デバッグ活用編!!ハードコア デバッギング : サポート直伝! Windows カーネルモード デバッグ活用編!!
ハードコア デバッギング : サポート直伝! Windows カーネルモード デバッグ活用編!!
 
鹿駆動
鹿駆動鹿駆動
鹿駆動
 
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOpsDOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
 
【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック
 
デスクトップアプリを『一歩前へ』進める方法
デスクトップアプリを『一歩前へ』進める方法デスクトップアプリを『一歩前へ』進める方法
デスクトップアプリを『一歩前へ』進める方法
 
遺伝研スパコンの『ここが困った!』事例集と今後への提言
遺伝研スパコンの『ここが困った!』事例集と今後への提言遺伝研スパコンの『ここが困った!』事例集と今後への提言
遺伝研スパコンの『ここが困った!』事例集と今後への提言
 

Plus de reona396

Plus de reona396 (14)

PWAnight_20221019_クリエイティブコーディングとは?
PWAnight_20221019_クリエイティブコーディングとは?PWAnight_20221019_クリエイティブコーディングとは?
PWAnight_20221019_クリエイティブコーディングとは?
 
PCD Tokyo 2020 ワークショップ「Processingでクリエイティブコーダーデビュー!」資料
PCD Tokyo 2020 ワークショップ「Processingでクリエイティブコーダーデビュー!」資料PCD Tokyo 2020 ワークショップ「Processingでクリエイティブコーダーデビュー!」資料
PCD Tokyo 2020 ワークショップ「Processingでクリエイティブコーダーデビュー!」資料
 
PCD2019 TOKYO ワークショップ「2時間で!Processingでプログラミング入門」
PCD2019 TOKYO ワークショップ「2時間で!Processingでプログラミング入門」PCD2019 TOKYO ワークショップ「2時間で!Processingでプログラミング入門」
PCD2019 TOKYO ワークショップ「2時間で!Processingでプログラミング入門」
 
Processingについて
ProcessingについてProcessingについて
Processingについて
 
Processing資料(10) リファレンス
Processing資料(10) リファレンスProcessing資料(10) リファレンス
Processing資料(10) リファレンス
 
Processing資料(9) モード
Processing資料(9) モードProcessing資料(9) モード
Processing資料(9) モード
 
Processing資料(8) 文字
Processing資料(8) 文字Processing資料(8) 文字
Processing資料(8) 文字
 
Processing資料(7) マウスとキーボード
Processing資料(7) マウスとキーボードProcessing資料(7) マウスとキーボード
Processing資料(7) マウスとキーボード
 
Processing資料(6) 様々な図形
Processing資料(6) 様々な図形Processing資料(6) 様々な図形
Processing資料(6) 様々な図形
 
Processing資料(5) 正弦波と極座標
Processing資料(5) 正弦波と極座標Processing資料(5) 正弦波と極座標
Processing資料(5) 正弦波と極座標
 
Processing資料(4) アニメーション
Processing資料(4) アニメーションProcessing資料(4) アニメーション
Processing資料(4) アニメーション
 
Processing資料(3) 色の指定
Processing資料(3) 色の指定Processing資料(3) 色の指定
Processing資料(3) 色の指定
 
Processing資料(2) 再帰
Processing資料(2) 再帰Processing資料(2) 再帰
Processing資料(2) 再帰
 
Processing資料(1) Processingの基本
Processing資料(1) Processingの基本Processing資料(1) Processingの基本
Processing資料(1) Processingの基本
 

プログラミング初心者さん歓迎! アートでデザインなプログラミング言語 Processing について