• Save
論理思考とプログラミング第10回
Upcoming SlideShare
Loading in...5
×
 

論理思考とプログラミング第10回

on

  • 1,212 views

 

Statistics

Views

Total Views
1,212
Views on SlideShare
1,092
Embed Views
120

Actions

Likes
0
Downloads
0
Comments
0

3 Embeds 120

http://ronpro2009.tumblr.com 109
http://chikoski.info 8
http://www.slideshare.net 3

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

論理思考とプログラミング第10回 論理思考とプログラミング第10回 Presentation Transcript

  • 論理思考とプログラミング#10
    清水智公
    chiko at sfc.keio.ac.jp
    2009.12.17
    1
    論理思考とプログラミング #10 N.Shimizu
  • メソッドにする意義
    手続きの抽象化ができる
    使う側が楽
    その仕事を詳しく知る必要がなくなる
    仕事の頼み方と、副作用、結果だけを知っておけば良い
    外注
    2009.12.17
    2
    論理思考とプログラミング #10 N.Shimizu
  • マウスを追いかける矢印
    2009.12.17
    3
    論理思考とプログラミング #10 N.Shimizu
  • まず矢印を描こう
    2009.12.17
    4
    論理思考とプログラミング #10 N.Shimizu
  • メソッドにしよう
    2009.12.17
    5
    論理思考とプログラミング #10 N.Shimizu
  • 矢印を表す変数を決めよう
    矢印を描くためにはX座標とY座標が必要
    矢印はマウスの動きに合わせて動く
    動く:X座標とY座標が変化する
    X座標とY座標を変数にしておこう
    2009.12.17
    6
    論理思考とプログラミング #10 N.Shimizu
  • とりあえず宣言
    2009.12.17
    7
    論理思考とプログラミング #10 N.Shimizu
  • とりあえず使ってみる
    2009.12.17
    8
    論理思考とプログラミング #10 N.Shimizu
  • 動かしてみよう
    2009.12.17
    9
    論理思考とプログラミング #10 N.Shimizu
  • ・・・
    2009.12.17
    10
    論理思考とプログラミング #10 N.Shimizu
  • 動く前の矢印を消そう
    2009.12.17
    11
    論理思考とプログラミング #10 N.Shimizu
  • 矢印クラスを作ろう
    矢印を表す変数が二つある
    X座標とY座標
    まとめよう
    矢印を描くメソッドもまとめてしまおう
    2009.12.17
    12
    論理思考とプログラミング #10 N.Shimizu
  • まとめてみた
    2009.12.17
    13
    論理思考とプログラミング #10 N.Shimizu
  • 名前を変えよう
    2009.12.17
    14
    論理思考とプログラミング #10 N.Shimizu
  • 引数をなくそう
    2009.12.17
    15
    論理思考とプログラミング #10 N.Shimizu
  • 使ってみよう
    2009.12.17
    16
    論理思考とプログラミング #10 N.Shimizu
  • 矢印を8つにしてみよう
    2009.12.17
    17
    論理思考とプログラミング #10 N.Shimizu
  • 動かしてみよう
    2009.12.17
    18
    論理思考とプログラミング #10 N.Shimizu
  • 配列で「集まり」を実現しよう
    2009.12.17
    19
    論理思考とプログラミング #10 N.Shimizu
  • 配列は同じ型の変数の集まり
    矢印
    矢印
    矢印
    矢印
    配列
    2009.12.17
    20
    論理思考とプログラミング #10 N.Shimizu
  • 各変数のことを要素と呼びます
    要素
    要素
    要素
    要素
    矢印
    矢印
    矢印
    矢印
    配列
    2009.12.17
    21
    論理思考とプログラミング #10 N.Shimizu
  • 配列内での位置があります
    0番目
    3番目
    1番目
    2番目
    矢印
    矢印
    矢印
    矢印
    配列
    2009.12.17
    22
    論理思考とプログラミング #10 N.Shimizu
  • 配列には長さがあります
    矢印
    矢印
    矢印
    矢印
    長さ4の配列
    2009.12.17
    23
    論理思考とプログラミング #10 N.Shimizu
  • 配列の長さは変わりません
    矢印
    矢印
    矢印
    矢印
    長さ4の配列
    2009.12.17
    24
    論理思考とプログラミング #10 N.Shimizu
  • 配列も一つの変数です
    矢印
    矢印
    矢印
    矢印
    配列
    2009.12.17
    25
    論理思考とプログラミング #10 N.Shimizu
  • 配列を宣言
    2009.12.17
    26
    論理思考とプログラミング #10 N.Shimizu
  • 長さを決定
    2009.12.17
    27
    論理思考とプログラミング #10 N.Shimizu
  • 各要素を作る
    2009.12.17
    28
    論理思考とプログラミング #10 N.Shimizu
  • 配列の長さ
    2009.12.17
    29
    論理思考とプログラミング #10 N.Shimizu
  • 一つしかない><
    2009.12.17
    30
    論理思考とプログラミング #10 N.Shimizu
  • xとyの決め方に問題がある
    原因:
    全ての矢印のX座標とY座標が一緒
    マウスの位置をそのまま代入しているから
    解決策:
    X座標とY座標が異なるようにすればいい
    最初の位置をランダムに決める
    じわっと追いかけるようにする
    2009.12.17
    31
    論理思考とプログラミング #10 N.Shimizu
  • 最初の位置をランダムに決める
    2009.12.17
    32
    論理思考とプログラミング #10 N.Shimizu
  • じわっと近づく
    2009.12.17
    33
    論理思考とプログラミング #10 N.Shimizu
  • drawメソッドを書き換え
    2009.12.17
    34
    論理思考とプログラミング #10 N.Shimizu
  • 矢印の位置を変えるとき
    マウスが動いたとき
    「マウスが動く」はイベント
    mouseMoved()がイベントハンドラ
    2009.12.17
    35
    論理思考とプログラミング #10 N.Shimizu
  • mouseMovedメソッド
    2009.12.17
    36
    論理思考とプログラミング #10 N.Shimizu
  • 動かしてみよう
    2009.12.17
    37
    論理思考とプログラミング #10 N.Shimizu
  • ブラッシュアップしよう
    他の矢印と近づきすぎてしまう
    画面からはみ出ないようにしよう
    マウスがある方を向いてほしい
    2009.12.17
    38
    論理思考とプログラミング #10 N.Shimizu
  • 1本の矢から遠ざかる
    2009.12.17
    39
    論理思考とプログラミング #10 N.Shimizu
  • 全部の矢に対して
    2009.12.17
    40
    論理思考とプログラミング #10 N.Shimizu
  • 自分以外の矢から遠ざかる
    2009.12.17
    41
    論理思考とプログラミング #10 N.Shimizu
  • マウスのある方に矢印を向ける
    2009.12.17
    42
    論理思考とプログラミング #10 N.Shimizu
  • もっとブラッシュアップしよう
    アイディアのみせどころ
    2009.12.17
    43
    論理思考とプログラミング #10 N.Shimizu
  • Don’t start by trying to build a cathedral.
    大きいものをいきなり作るのは難しい
    かっこいいプログラムを書くのも難しい
    小さい機能を作る->ブラッシュアップする
    2009.12.17
    44
    論理思考とプログラミング #10 N.Shimizu