roy > naoya > 基礎プログラミングII[月2] > (11)自由課題実施期間[1]&trr
授業開始直後より20分間trrの試験を行う。150点で1点。以降25点ごとに1点加点で、最大5点まで。つまり250点以上は何点でも5点となる。
出席、レポート、trrの合計得点により試験免除者を決定する。発表は1月に入ってからであり、出席は免除者発表の直前までの状況を全て加味する。未提出のレポートがある場合は早めに提出すること。また、採点結果が戻ってきていない課題がある場合は今年中に申し出ること。
20分経過後、念のためこの間にマークした最高得点をメールで報告してください。
これまでは一人で限られた時間の中でプログラムを作成してきたため、規模の大きなものを作成することが難しかった。1年間続いたRubyの授業もそろそろ終わりを迎えようとしている。そこで、これまで学んだ技術を駆使して、グループで長めのプログラムを作ってみよう。
作成条件は以下の通りとする。
参考までに過去の自由製作課題の例を示す。
本日の後半より自由製作課題を実施する。5〜6人のグループで規模の大きなプログラムを作成する。以降の予定は以下の通りである。1月の授業は19日からであるが、すでに発表1週間前であるため、本日中に作業分担を行い、各自で作業を進めておくとよい。
役割分担を決める。その上で何をいつまでにやるのかを相談する。役割としては例えば以下がある。準備期間中、当日それぞれについて役割を決定し、何もすることがない人が出ないようにしよう。
準備期間の役割(例)
当日の役割(例)
「応援」や「遊軍」、「パシリ」などの実質的に仕事のない役割は定めず、各人が何かしらグループ活動に貢献できるように分担を考えること。
役割分担が決まったら、作成するプログラムやWebページのイメージ、作成する画像などについて相談し、早速作成に取り掛かること。
1年間Rubyを学んできた結果の集大成のプログラムである。単に楽しい/役に立つだけではなく、技術的にもレベルの高いものを目指そう。if文を使ったシナリオ分岐型のプログラムは、ストーリーとしては面白いかもしれないが、それほど難しい技術を使っているわけではない。open-endやハッシュ、CGIなどを使うことを考えてみよう。
インターネット上では数多くのプログラムが公開されているが、全てが広く利用されるわけではない。利用の可否を決める上では機能だけでなく「使いやすさ」も重要となる。いくら機能的に優れていても使い方がわかりづらいものは使われない傾向がある。
Webページや、プログラム内で表示させるメッセージを工夫し、初めて使う人でも使い方がわかるように作ること。
また、複数の人で分担をしてプログラムを作成する場合、プログラム内に#を使ってコメントを残しておくと、わかりやすくなる。
いくら素晴らしいプログラムが出来上がったとしても、Webページが訪問者の目を引くように作られていなければ、読んでみようという気持ちすら起こらない。デザイン、内容いずれも工夫しよう。
背景と文字のコントラストを考えよう。背景に画像を使った場合は、背景色の変化が大きくなるため、それにあう文字色を決めるのが難しい。背景は淡色にするか、出来る限り淡い色の画像を使用すると良い。
以下の項目をもれなく記載しよう。
各項目の内容については、架空のプログラム「Five Seconds!!」のページを参考にしてみよう。
~/public_htmlの中にemacsで拡張子が.htmlもしくは.htmとしたファイルを作成、保存しておく。1年生の後期に作成しているので覚えていると思うが、自信がない場合はリテラシーのページを確認しておこう。
メンバーの紹介、プログラムの概要、プログラムのデモ、プログラムの売りなどについて発表すれば良いが、内容や順番、時間配分については自由とする。
問題1(2点満点):グループのメンバー、チーム名、役割分担、作成するプログラムの案について報告する。グループの他のメンバーにお任せにしていないことを確認するため、グループの代表者のみではなく、全員が提出する。
問題2:これまでの累積得点があまり高くないと感じる人は、問題1に加えて、tgifでとっても素敵な絵を描いてpng形式で保存して添付ファイルで送る。提出点として別途3点を追加する。出来栄えにより芸術点をさらに加算することがある。
提出要領は下記の通り。
Tips:emacsでの日本語入力のオンオフはCtrl-oです
Tips:Mewによるメールの送り方はMewコマンドを参照