トップ «前の日記(2009-05-03) 最新 次の日記(2009-05-05)» 編集

ヨタの日々

2001|08|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|12|
2024|01|02|03|04|05|06|07|

2009-05-04 :-)

_ 朝ッ

0730 起床

_ 図書館へ寄贈した

20090504_0.jpg

重かった

_ ちょっと休憩

20090504_1.jpg

近所の喫茶店。わからないMPEG

_ [デザインパターン][Strategy]Head First デザインパターンを写経する - 1章 Strategy パターン

サンプルコードをそのまま Ruby で書いたつもり。Java でいう interface は Ruby に存在するの?

#!/usr/bin/ruby -Ks

class Duck
  @@quackBehavior = nil
  @@flyBehavior = nil

  def initialize
  end

  def performFly
    @@flyBehavior.fly
  end

  def performQuack
    @@quackBehavior.quack
  end

  def swim
    puts "すべての鴨は浮かびます。おとりの鴨でも!"
  end
end

class FlyBehavior
  def fly
  end
end

class FlyWithWings < FlyBehavior
  def fly
    puts "飛んでいます!"
  end
end

class FlyNoWay < FlyBehavior
  def fly
    puts "飛べません!"
  end
end

class QuackBehavior
  def quack
  end
end

class Quack < QuackBehavior
  def quack
    puts "ガーガー"
  end
end

class MuteQuack < QuackBehavior
  def quack
    puts "<沈黙>>"
  end
end

class Squack < QuackBehavior
  def quack
    puts "キューキュー"
  end
end

class MallardDuck < Duck
  def initialize
    @@quackBehavior = Quack.new
    @@flyBehavior = FlyWithWings.new
  end

  def display
    puts "本物のマガモです"
  end
end

def main
  mallard = MallardDuck.new
  mallard.performQuack
  mallard.performFly
end

main
% ./duck.rb
ガーガー
飛んでいます!

4873112494

_ おやつ

20090504_2.jpg

グーテデロワのラスク

_ [携帯百景]携帯百景はじめました

lynmock パパがやってたのでなんとなく登録した

miwarin(miwarin)の携帯百景

みんな「Web サイト」に Twitter の URI を書いていたので模倣した。モーホー

_ [Observer][デザインパターン]Head First デザインパターンを写経する - 2章 Observer パターン

Mix-in を使うといいのかしら。Observer に関しては lib/ruby/1.8/observer.rb が Ruby での Observer 実装のようだ。

#!/usr/bin/ruby -Ks

module Subject
  def registerObserver( observer )
  end

  def removeObserver( observer )
  end

  def notifyObservers
  end
end

module Observer
  def update( temp, humidity, pressure )
  end
end

module DisplayElement
  def display
  end
end

class WeatherData
  include Subject

  @temprature
  @humidity
  @pressure

  def initialize
    @observers = []
  end

  def registerObserver( observer )
    @observers << observer
  end

  def removeObserver( observer )
    @observers.delete( observer )
  end

  def notifyObservers
    @observers.each {|o|
      o.update( @temprature, @humidity, @pressure )
    }
  end

  def measurementsChanged
    notifyObservers
  end

  def setMeasurements( temprature, humidity, pressure )
    @temprature = temprature
    @humidity = humidity
    @pressure = pressure
    measurementsChanged
  end
end

class CurrentConditionDisplay
  include Observer
  include DisplayElement


  def initialize( weatherData )
    @weatherdata = weatherData
    @weatherdata.registerObserver( self )
  end

  def update( tempreture, humidity, pressure )
    @tempreture = tempreture
    @humidity = humidity
    display
  end

  def display
    puts "現在の気象状況: 温度#{@tempreture}度 湿度#{@humidity}%"
  end
end

def main
  weatherdata = WeatherData.new
  currentDisplay = CurrentConditionDisplay.new( weatherdata )
  weatherdata.setMeasurements( 27, 65, 30.4 )
  weatherdata.setMeasurements( 28, 70, 29.2 )
  weatherdata.setMeasurements( 26, 90, 29.2 )
end

main
% ./weather.rb
現在の気象状況: 温度27度 湿度65%
現在の気象状況: 温度28度 湿度70%
現在の気象状況: 温度26度 湿度90%

4873112494

_ [リッジレーサー7]リッジレーサー7

JUJAK 練習。ニトロがさっぱり使えないと泣きたくなる。

  • 走行距離 18283.698 km
  • RSGP 進行度 100.0 %
  • 名声 18426 FP

_ [おひる][きのこのバター醤油スパゲティ]おひる

きのこのバター醤油スパゲティ

_ [][ソフトフランスパン]飯

ソフトフランスパン(ref. きょうの料理 2005-03 pp.116-119、きょうの料理 2009-05 pp.12-19 )

_ [おやつ][ベイクドチーズケーキ]おやつ

ベイクドチーズケーキ。昨日の残り。

_ わかるMPEG -デジタル・ビデオの「仕組み」と「活用法」

動画編集するためにどのエンコーダーが必要なのだよ、といった説明。最後の動画編集の説明がありがたい。

4777511901