差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
プログラミング入門:開発環境 [2020/12/27 11:52] – [チャート] baba | プログラミング入門:開発環境 [2020/12/27 12:03] (現在) – baba | ||
---|---|---|---|
行 2: | 行 2: | ||
いざプログラミングを始める場合、なにから手をつけていいかなかなか難しく、情報はたくさんあっても結果として迷ってしまうでしょう。このページでは馬場の分野でよく利用される開発環境の紹介し、それぞれの特徴を述べます。 | いざプログラミングを始める場合、なにから手をつけていいかなかなか難しく、情報はたくさんあっても結果として迷ってしまうでしょう。このページでは馬場の分野でよく利用される開発環境の紹介し、それぞれの特徴を述べます。 | ||
- | 平成31年6月29日現在、いわゆるクリエイティブコーディング(画像、映像、音声等を統合して扱うことが比較的簡単にできる)が可能な開発環境にはそこまで多くのものがあるわけではありませんが、下記が代表的なものです。 | + | 馬場の主観的なスコアリングに基づいたものです。そのときに応じて微妙にグラフは変化していきます。 |
- | * Processing | + | |
- | * Openframeworks | + | < |
- | * Cinder | + | <div class=" |
- | * Unity | + | </ |
- | * Max, PureData | + | |
- | * vvvv | + | 2020年12月27日、いわゆるクリエイティブコーディング(画像、映像、音声等を統合して扱うことが比較的簡単にできる)が可能な開発環境にはそこまで多くのものがあるわけではありませんが、下記が代表的なものです。 |
- | * touchDesigner | + | * Processing: https:// |
+ | * Openframeworks: https:// | ||
+ | * Cinder: https:// | ||
+ | * Unity: https:// | ||
+ | * Max, PureData: https:// | ||
+ | * vvvv: https:// | ||
+ | * touchDesigner: https:// | ||
+ | * p5.js: https:// | ||
で、なにを使えばいいかっていると、正直なところなんだっていいです。好きなアーティストや作品を見つけて、それが何で作られているかを調べて同じ環境で学習をはじめてみるのも良いでしょう。もしくは、時代はpythonだ、swiftで全部やったる。そんな意気込みもありでしょう。 | で、なにを使えばいいかっていると、正直なところなんだっていいです。好きなアーティストや作品を見つけて、それが何で作られているかを調べて同じ環境で学習をはじめてみるのも良いでしょう。もしくは、時代はpythonだ、swiftで全部やったる。そんな意気込みもありでしょう。 | ||
行 19: | 行 26: | ||
簡単なことを数行のコードで、数分で実現できるかどうか。標準でどの程度ライブラリが準備されているかが大きく影響します。とはいえ様々な機能が用意されていても必ずしも自分がやりたい表現に直結する機能があるとは限りません。Visualプログラミング環境では10分かかることが、プログラミングを利用すれば1分で終わることもあれば、その逆もあります。つまり重要なポイントはなにかというと、常にプログラムの可読性が高いことです。トラディショナルな言語ではこの習わしには多くの流派があるため、自然とわかりやすくするプログラムが身につきやすい一方、Visualプログラミングでは「こうやったら動いたから、このようにしています」という理由で開発をしてしまいがちです。 | 簡単なことを数行のコードで、数分で実現できるかどうか。標準でどの程度ライブラリが準備されているかが大きく影響します。とはいえ様々な機能が用意されていても必ずしも自分がやりたい表現に直結する機能があるとは限りません。Visualプログラミング環境では10分かかることが、プログラミングを利用すれば1分で終わることもあれば、その逆もあります。つまり重要なポイントはなにかというと、常にプログラムの可読性が高いことです。トラディショナルな言語ではこの習わしには多くの流派があるため、自然とわかりやすくするプログラムが身につきやすい一方、Visualプログラミングでは「こうやったら動いたから、このようにしています」という理由で開発をしてしまいがちです。 | ||
+ | ==== 配布が簡単:distributable ==== | ||
+ | せっかく制作したアプリケーションも別の環境や多くの人に体験してもらう手間があまりに大きいと折角のプロトタイプの魅力も半減してしまいます。逆に対して面白くもないアイデアでも実際に非常に簡単に使えるだけでも多くの人にとって嬉しいこともあります。 | ||
==== 開発を通じて価値発見ができる:discoverable ==== | ==== 開発を通じて価値発見ができる:discoverable ==== | ||
開発環境はあくまでメディアであり、それを通じて何かを発見できるものでなければなりません。つまり、最初から作るものが決まっていればその目的に沿った開発環境を利用すればよく、むしろクリエイティブなコーディングをしないことが好まれます。一方、クリエイティブコーディングとは一種のプロトタイピングであり、その行為を通じ自らが創り出そうとしているものを発見することを繰り返していきます。ユーザの試行錯誤を許容する環境であることが望まれます。閉じた開発よりも、オープンな開発がよいです。ネットで動いているコードをすぐ手元の環境で動かせると嬉しいですよね。 | 開発環境はあくまでメディアであり、それを通じて何かを発見できるものでなければなりません。つまり、最初から作るものが決まっていればその目的に沿った開発環境を利用すればよく、むしろクリエイティブなコーディングをしないことが好まれます。一方、クリエイティブコーディングとは一種のプロトタイピングであり、その行為を通じ自らが創り出そうとしているものを発見することを繰り返していきます。ユーザの試行錯誤を許容する環境であることが望まれます。閉じた開発よりも、オープンな開発がよいです。ネットで動いているコードをすぐ手元の環境で動かせると嬉しいですよね。 | ||
行 37: | 行 46: | ||
実際に制作したアプリケーションを展示で丸一日動作させたり、macOSで作成したものをWindowsで動作させるなど、様々な環境においても一つの環境で作ったものが安定して動作することが好まれます。 | 実際に制作したアプリケーションを展示で丸一日動作させたり、macOSで作成したものをWindowsで動作させるなど、様々な環境においても一つの環境で作ったものが安定して動作することが好まれます。 | ||
- | ====== チャート ====== | ||
- | それでは、上記に基づいてそれぞれの開発環境をスコアリングしてみました。これは馬場の主観的なスコアリングです。 | ||
- | |||
- | < | ||
- | <div class=" | ||
- | </ | ||
====== 用途別 ====== | ====== 用途別 ====== |