Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Octocatは技術的負債の夢を見るか?

 Octocatは技術的負債の夢を見るか?

2018/07/13
Rails Developers Meetup 2018 Day 3 Extreme
https://techplay.jp/event/679666

Hiroaki Ninomiya

July 13, 2018
Tweet

More Decks by Hiroaki Ninomiya

Other Decks in Technology

Transcript

  1. We are hiring!! • ΞϐʔϧϙΠϯτ • େن໛σʔλ / B to

    B ͳΒͰ͸ͷݻ͞ • َͷΑ͏ʹίʔυ͕ॻ͚Δ • ఆ࣌ͷ֓೦͕ͳ͍ • ෰૷ࣗ༝ʗϦϞʔτϫʔΫࣗ༝ • Conferenceνέοτ୅͕ग़Δ
  2. έʔε2 ੹຿͕ᐆດͳ૚ΛऔΓೖΕͯ͠·͏ class SomeController < ApplicationController : : def create

    @presenter = SomePresenter.new(@some_model) if @presenter.save redirect_to :some_path else render :new end end end
  3. έʔε2 class SomePresenter < PresenterBase attr_reader :form delegate :save, to:

    :form def initialize(some_model) @form = SomeForm.new(some_model.attributes, self) end : : end
  4. SomeForm : After class SomeForm < FormBase validate :something :

    : attr_reader :presenter def initialize(params, presenter) : @presenter = presenter : end def validate presenter.some_methods super end end
  5. Presenter : Before class SomePresenter < PresenterBase attr_reader :form delegate

    :save, to: :form def initialize(some_model) @form = SomeForm.new(some_model.attributes, self) end : : end
  6. Presenter : After class SomePresenter < PresenterBase attr_reader :form def

    initialize(some_model) @form = SomeForm.new(some_model.attributes, self) end def save : @form.save : end : : end
  7. ٕज़తෛ࠴͕ੜ·ΕΔཧ༝ • ҰݸਓʹىҼ • ࣌ؒෆ଍ • ٕज़ྗෆ଍ • ৸ෆ଍ •

    ͕ɺݱ࣮ʹ͸νʔϜ։ൃͰࣗ෼͕஌Βͳ͍͏ͪ ʹίʔυ͕มߋ͞Ε͍ͯΔͱ͍͏͜ͱ΋Α͋͘ Δ
  8. ࣄۀతʹՁ஋͕͋Δͱ͜Ζʹ ෛ࠴͸ཷ·Γ΍͍͢ • ࣄۀతʹՁ஋͕͋Δ • → ଟ͘ػೳཁ͕݅ೖΔ • → ଟ͘ͷϝϯόʔ͕मਖ਼͢ΔՄೳੑ͕͋Δ

    • → ͔ͭɺଟ͘ํ਑స׵͢ΔՄೳੑ͕͋Δ • ෳ਺ਓͰಉ͡ՕॴΛසൟʹ৮ΔͷͰɺٕज़తෛ ࠴͕ੜ·Ε΍͍͢
  9. ͖͞΄ͲͷΞϯνύλʔϯ • ࠷ॳͷίʔυ͕ॻ͔Εͨஈ֊ɿ ͻͲ͘ͳ͍ • αʔϏεΛਐΊΔ͋ΔλΠϛϯάͰੜ·Ε ͯ͠·ͬͨ΋ͷ • ٕज़తෛ࠴ͷΞϯνύλʔϯ =>

    ٕज़తෛ࠴ ΛੜΈग़͠΍ͯ͘͢͠͠·͏Ξϯνύλʔϯ • ٕज़తෛ࠴ΛੜΈग़͞ͳ͍ίʔυ͸ͳ͍ • αʔϏεΛ૸Βͤଓ͚ΔݶΓɺίʔυͷมߋ͸ ආ͚ΒΕͳ͍
  10. Ϩʔϧʹ৐Γଓ͚Δͱ͍͏બ୒ • Railsͷ͍͢͝ͱ͜Ζ • Ϩʔϧͱ͍͏໊ͷ஍ਤ͕޿͍ൣғͰڞ༗͞ Ε͍ͯΔ͜ͱ • CoC (Convention over

    Configuration) • RailsΤϯδχΞ͸RailsϓϩδΣΫτͰ͋Ε͹ଈ ઓྗΛظ଴Ͱ͖Δ(ࣄ͕ଟ͍) • Ϩʔϧ͔Β֎Ε·ͬͯͨ͘৔߹͸ผ͕ͩ
  11. We are hiring!! • ΞϐʔϧϙΠϯτ • େن໛σʔλ / B to

    B ͳΒͰ͸ͷݻ͞ • َͷΑ͏ʹίʔυ͕ॻ͚Δ • ఆ࣌ͷ֓೦͕ͳ͍ • ෰૷ࣗ༝ʗϦϞʔτϫʔΫࣗ༝ • Conferenceνέοτ୅͕ग़Δ