2008/8/26 火曜日

FITEA定期勉強会 第4回まとめ

Filed under: 勉強会 — FITEA事務局 @ 17:41:27

■FITEA定期勉強会 第4回
■日時:8/23(土) 16:00~19:00
■担当者:飛田さん
■参加者:飛田さん、橋本さん、徳山さん、新出さん、前田さん、朝井
■内容
 ・自己紹介
  自己紹介の際に、ちょっとしたネタ振りがありました。
   飛田さん:
   新出さん:iPhone
   橋本さん:末尾再帰
   徳山さん:
   前田さん:
   朝井  :Webサービスの紹介

 ・前半:デザインパターンの輪講
  strategyとstate
   比較 - どちらも同じクラス図になるが、どこが違うのか?
  strategy
   strategyとは?
    戦略
    アルゴリズムの交換が可能
    ドラクエAIの作戦切り替えのイメージ
   どのような場合に使われるか?
    JavaではDIを用いるため、意識して使うことは少ない
    JavaのJDBCでは、SQLの種類に応じて抽象化された処理を切り替える
    ソートのコンペア関数を切り替える
   デモ
    じゃんけんゲーム
     作戦を切り替える(作戦を切り替える際に、1つ前の手を参照するケースも
     考えられる)
   類似したパターンをどのように区別するか?
    strategy、state、adapter
  state
   stateとは?
    状態
    状態をクラスで表す
    状態によって振る舞いが変わる
   デモ
    信号
     赤青黄の状態 - 状態を変えるのは信号自身
             状態変更も隠蔽される
     状態遷移のパターンは決まっている(青→黄→赤→青→…)
     信号管理機
      信号のインスタンスを使うだけで、状態遷移を行う訳ではない
      信号に基づくジャッジ(進めるか否か、など) も行わない
     信号表示器
      信号を表示するのみ
     信号管理機が時間を進める
      時間を進めるイベントに反応して、必要に応じて信号の状態を変える
      状態遷移の時には、状態遷移を行うメソッドに自分自身を引数として渡す
     信号の実装
      A、B、の2種類がある
       A;状態クラスが、振る舞いと状態遷移の2つを持つ
       B:状態クラスは振る舞いだけを持ち、信号の状態遷移は信号管理機
         という別のクラスに移管する
      Aの場合
       新しい状態が追加された場合には、全体を再コンパイルし、再テストする
       必要が生じる
      Bの場合
       状態が追加された場合に、既存の状態には手を加える必要は無く、追加した
       状態と信号切り替え機のみの修正+テストですむ
      Bのケースにおける信号切り替え機の修正作業は相当大変なのではないか?
       → 全体を再コンパイル、再テストするよりはマシ
       → 企業ではBが好まれるが、Bの方がコストが高くつかないか?
       → 程度問題であり、ケースバイケースで、AとBを使い分ける
   どのような場合に使えるか?
    どのようなシステムでも、状態遷移を持っているので、使える
    ただし、設計が悪いと大変なことになる
    O/Rとはあまり相性が良くない
   まとめ
    strategyは意識せずに使われているが、stateは意識して使わないと使えない
    strategyは意識して振る舞いを選択するが、stateは意識せずに振る舞いが変わる

 ・後半:持ち寄ったネタでの雑談
   新出さんが、iPod Touch上で動くアプリケーションのデモを見せてくれました。
   現時点では、iPod TouchやiPhoneの開発キットの入手には登録が必要で、
   また、契約内容にNDAが含まれることもあり、あまり詳しい話はありませんでした。
   SafariがJavaScriptに対応しており、加速度センサーの状態等も取得できるため、
   JavaScriptでアプリを作ると面白いのではないか?
(登録不要で、無償)とのこと。

 ・KPTの結果
   ーKeep:良かったこと
    自己紹介できた
    時間を守れた
    WLANが使えた
    iPod Touchのデモが見れた
    デザインパターンのデモがあった
    議論が出来た
    複数のパターンについて言及する議論が出来た
   ーProbrem:悪かったこと、失敗したこと
    漢字が書けない
    ネタしこみを忘れた
    告知メール(2通目)の送信が遅れた
    参加表明を忘れた
   ーTry:次回はこうしよう
    Webに結果を掲載する(新出さん)
    テレビ台があるとうれしい(堀内さんと要相談)

 ・前回のTryについて
   ーテレビ台を用意する
    →次回に持ち越し
   ー飲み物を事前に用意しておく
    →用意できた
   ーUMLクイズのネタを持ち寄る
    →出来なかった
   ーUMLの勉強をしてくる
    →出来なかった

■次回以降のスケジュール(最低2回先までは予定を立てます)

    日時           担当者 デザインパターン
 5回目:9/6(土) 16:00~19:00 徳山さん Command
 6回目:9/27(土) 9:00~12:00 堀内さん (未定)
 7回目:(未定)         朝井  (未定)
 8回目:(未定)

■実績ログ

 1回目:7/12(土) 9:00~ 朝井 Visitor
 2回目:7/26(土) 15:00~ 前田さん Iterator
 3回目:8/9(土) 9:30~ 橋本さん Composite
 4回目:8/23(土) 16:00~ 飛田さん StateとStrategy


2008/8/18 月曜日

FITEA定期勉強会が静かに進行中です

Filed under: 勉強会 — FITEA事務局 @ 13:33:32

FITEA会員の中で学習意欲のある有志が集まって、定期的な勉強会を自主的に開催しています。

開催は主に土曜日の午前中or午後で、隔週又は3週間置きとなっています。
現在のメインテーマは「デザインパターン」。これを基本にしつつ、毎回そこからいろんな話題に発展してゆきます。

詳しくはこちらをどうぞ。
http://fitea.org/?page_id=80

最近の開催ログと予定は、以下の通りです。8/23の夜は飲み会があるかも?

1回目:7/12(土) 9:00~ 朝井 Visitor
2回目:7/26(土) 15:00~ 前田さん Iterator
3回目:8/9(土) 9:30~ 橋本さん Composite
4回目:8/23(土) 16:00~19:00 飛田さん StateとStrategy
5回目:9/6(土) 16:00~19:00 徳山さん (未定)
6回目:(未定)         堀内さん (未定)
7回目:(未定)


次のページ »

HTML convert time: 0.180 sec. Powered by WordPress ME