Your SlideShare is downloading. ×
0
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
論理思考とプログラミング第10回
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

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

697

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
697
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

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

×