<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/feed.rss.xml" type="text/xsl" media="screen"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Iwaide</title>
    <description/>
    <link>https://speakerdeck.com/kururuku</link>
    <atom:link rel="self" type="application/rss+xml" href="https://speakerdeck.com/kururuku.rss"/>
    <lastBuildDate>2025-07-26 01:18:34 -0400</lastBuildDate>
    <item>
      <title>Rails Delegated Types を使いこなすための3つのポイント</title>
      <description>&lt;p&gt;
Rails 6.1で導入されたDelegated Typesは、STIの課題を解決する強力な機能ですが、単なるpolymorphic関連の改良版以上の価値があります。
&lt;/p&gt;

&lt;p&gt;
本セッションでは、Delegated Typesを実際のプロダクトで効果的に活用するための
&lt;strong&gt;3つの重要なポイント&lt;/strong&gt;を解説します：
&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;strong&gt;2つの文脈を理解する&lt;/strong&gt; - Polymorphic関連の改良とCTI（Class Table Inheritance）を移譲で実現したパターンであることを理解し、適切な設計判断を行う
  &lt;/li&gt;
  &lt;li&gt;
    &lt;strong&gt;includeよりWrap&lt;/strong&gt; - モジュールのincludeではなくPOROを使ったラッパーパターンで、Fat Modelを避け依存関係を安定させる
  &lt;/li&gt;
  &lt;li&gt;
    &lt;strong&gt;抽象化を貫く&lt;/strong&gt; - 親クラスやViewに実装詳細を漏らさず、統一されたインターフェースを維持する
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
個人・法人顧客を扱う営業支援システムを例に、STI・CTI・Delegated Typesの比較から実装のベストプラクティスまで、実践的な内容をお届けします。
&lt;/p&gt;
</description>
      <media:content url="https://files.speakerdeck.com/presentations/e59b62e31e7148259b58e7a074c10a86/preview_slide_0.jpg?36042993" type="image/jpeg" medium="image"/>
      <content:encoded>&lt;p&gt;
Rails 6.1で導入されたDelegated Typesは、STIの課題を解決する強力な機能ですが、単なるpolymorphic関連の改良版以上の価値があります。
&lt;/p&gt;

&lt;p&gt;
本セッションでは、Delegated Typesを実際のプロダクトで効果的に活用するための
&lt;strong&gt;3つの重要なポイント&lt;/strong&gt;を解説します：
&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;strong&gt;2つの文脈を理解する&lt;/strong&gt; - Polymorphic関連の改良とCTI（Class Table Inheritance）を移譲で実現したパターンであることを理解し、適切な設計判断を行う
  &lt;/li&gt;
  &lt;li&gt;
    &lt;strong&gt;includeよりWrap&lt;/strong&gt; - モジュールのincludeではなくPOROを使ったラッパーパターンで、Fat Modelを避け依存関係を安定させる
  &lt;/li&gt;
  &lt;li&gt;
    &lt;strong&gt;抽象化を貫く&lt;/strong&gt; - 親クラスやViewに実装詳細を漏らさず、統一されたインターフェースを維持する
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
個人・法人顧客を扱う営業支援システムを例に、STI・CTI・Delegated Typesの比較から実装のベストプラクティスまで、実践的な内容をお届けします。
&lt;/p&gt;
</content:encoded>
      <pubDate>Sat, 26 Jul 2025 00:00:00 -0400</pubDate>
      <link>https://speakerdeck.com/kururuku/rails-delegated-types-woshi-ikonasutameno3tunopointo</link>
      <guid>https://speakerdeck.com/kururuku/rails-delegated-types-woshi-ikonasutameno3tunopointo</guid>
    </item>
  </channel>
</rss>
