小レポートの採点に関して

今回の小レポートの採点に際し、減点にした基準を説明します。

デフォルト値が無い
メソッド appear にて、デフォルト値を代入していない場合は、仕様を 満たしていないので、減点としました。なお、デフォルト値を与える際に、直 接、インスタンス変数に代入するプログラム(下図の左)が多く見られました が、アクセサを介するほう(下図の右)が、保守性の高いプログラムになりま す。
(例) appear
           star := StarMorph new.
           star openInWorld.
           bx := 10.
           by := 10.
           dx := 5.
           dy := 8.
           nd := 30
(例) appear
           star := StarMorph new.
           star openInWorld.
           self setBx: 10;
                setBy: 10;
                setDx: 5;
                setDy: 8;
                setNd: 30
座標の表示が不適切
Transcript に座標を表示する際、コンマ無しや、式表示としている場合 は減点としました。たとえば、(10,10)とするべきところを(1010)としていた り、(bx+dx*i,by+dy*i)としている場合です。なお、(10+5*1,10+6*1)のように 計算結果ではなく式を表示していた場合もありましたが、こちらは大目にみま した。
星の表示位置と座標の表示が不一致
星の表示位置として、たとえば、(10,10) を与えておきながら、 Transcriptの表示には (15,15) のように異なる値が表示されるプログラムが ありました。これは誤りなので、減点です。
perform: でループが正しく作られていない
ループの中で、星の表示位置を指定すること、および、ディレイ「Delay forMilliseconds: term) wait」を実行すること、という仕様でしたが、ルー プの外でこれらの処理をしているため、流れ星にならないプログラムがありま した。
よくある誤り
前回と同様の減点項目です。

また、perform: において座標を計算する際に、bx と by を変更するよう なプログラムがありました。出題時には、変更されないことを想定していまし たが、変更して良いとも悪いとも記載していなかったので、減点にはしていま せん。


(C) 2008.5.12 by tokuhisa