講座内容
この講座では、画面上の動きのプログラミングについて学びます。最近のスマホやコンピュータの画面はとても美しいです。有機的な動きや、さまざまな色の移ろい、親近感あふれるインタラクティブなしくみなどがそこには組み込まれています。ただし、普段触る人たちには、それがいったいどのようにして作られているのか、ほとんどわかりません。
この講座では、その動きやインタラクティブなしくみを、数学的なアプローチからどのようにしたら作成できるのかをプログラミングの初心者でもできるだけわかりやすく解説していきます。
「プログラミング」といえば、「難しい数式」や「呪文のような構文」を使いこなす、というイメージがあります。しかし、昨今のプログラミング環境は実は以前に比べると、それほど難しいものではありません。「難しい」というイメージが先行して、最初から「食わず嫌い」な状態が多く見受けられます。ちょっとやってみると、とても論理的(やれといったことは必ずやってくれる)で、知的欲求をものすごく満たしてくれることがわかります。
そこで、この講座では、最近非常に普及しているJavaScriptを活用して、できるだけ簡単に効果的な動きを作成できるようなカリキュラムを考えました。パソコンやスマホを使って以下のような動きを作っていきます。
http://furukatics.com/gacco/samples/
*パソコンで表示・動作するものもありますが、iPhoneやAndroidなどのジャイロセンサ(角速度センサー)付きのスマートフォンや、iPadなどのネットに接続したタブレット端末での閲覧をお奨めします。
このようなサンプルを数式的な側面とプログラミング的な側面から解説していきます。
第1週
第1週では、まず、JavaScriptの基本的な書き方について学びます。スマホでの有用な設定方法や、マルチタッチ(複数の指で触る)方法などを考えます。
第2週
第2週では、画面上の有機的な動きの数学的な制作手法を学びます。有機的な動きについては物理法則を活用します。この物理法則について学習して、それをプログラミングに組み込むことを考えます。
第3週
第3週では、その物理法則を活用した例について学びます。第2週で作成したしくみ(ライブラリ)を活用して、画面上に有機的な動きを作る方法を考えます。
第4週
第4週では、その物理法則をさらに深く活用した例について学びます。画面上の位置の変化だけではなく、形や大きさなど多様な変化を有機的に魅せる方法を考えます。