quattro_4 scribble

scribble 落書き (調べた事をただ落書きする)

RubyTapas #062 - #069

062 Fiber

??

Homemade numerator

イミフ

063 Gem-Love Part 3

webmock, tdd

ムズイ

064 Yield or Enumerate

引数無しだとEnumeratorが返る

return to_enum(:names) if block_given?
return to_enum(__callee__) if block_given?

065 PulseFFI Part 7

smoke test 最近別件で知った言葉

066 Caching an API

通常のclassと同じファイル内で

require 'rspec/autorun'

と書いている

Caching Domain Objects

  • Version conflicts
  • Unused data is not cached
  • Object must be serialized

Caching Response Data

  • No version conflicts
  • All available data is cached
  • Raw strings are serialization-safe

レスポンスのローデータをキャッシュした方が良いという話

067 Moneta

Cacheの続き

store = Moneta.new(:YAML, file: "weather.yaml", expires: 300)
store = Moneta.new(:File, dir: "store")

monetaというものがある

068 Display Builder

★★

Template Approach

Builder Pattern
many types of Renderer, display
method_missingを各rendererで変えているところが重要そう heavyなので初期から使うべきパターンではない

069 Gem-Love Part 4

Serverの実装とテスト

class Server < Sinatra::Base

post '/request/path') do

テスト側で面白そうな部分

browser = Rack::Test::Session.new(Rack::MockSession.new(server))
browser.post('/request/path')

require_relative


レベル高いのかジャンルが違うのか分からないこと多い