早稲田ゲーム共創スタジオ

ソフトウェアアーキテクチャ:設計から実装まで

開講年度・学期2026年度 前期

進行中
区分専門基礎(必)
対象ロールエンジニア
実施形式輪読会

全体の概要

Unityでのゲーム制作の基礎を習得した初学者を対象に、プログラミングの「書き方」から一歩進んだ「組み立て方(設計)」を学びます。場当たり的な実装によるコードの複雑化を防ぎ、拡張性と保守性の高いゲームを構築するための思想・原則・パターンを網羅します。

到達目標

  • オブジェクト指向の4大要素および主要な開発原則(KISS, YAGNI, DRY)を理解し、その意義を説明できる。
  • SOLID原則の各項目を理解し、設計における「良し悪し」を判断する基準を習得する。
  • ゲーム開発で頻出するデザインパターンを理解し、適切な場面で選択・活用できるようになる。
  • MVPアーキテクチャやリアクティブプログラミング(UniRx)の概念を理解し、複雑なゲームロジックとUIの分離ができるようになる。

スケジュール

  • 次回

    第1回 オブジェクト指向の精神と開発原則の導入

    2026年5月16日(土) 17:05–19:05

    目的:オブジェクト指向というパラダイムの本質を知り、コードの「徳」を高める。

    • オブジェクト指向の4大要素: 抽象化、カプセル化、継承、ポリモーフィズムの定義と概念。
    • なぜ設計が必要か: 構造化プログラミングの限界とグローバル変数の弊害。
    • 三大開発原則の導入:
      • KISS (Keep It Simple, Stupid): 簡潔性の重要性。
      • YAGNI (You Ain't Gonna Need It): 先回りの実装をしない。
      • DRY (Don't Repeat Yourself): 重複の排除。
    • 設計へのマインドセット: 「動く」の先にある「変更できる」という価値。 
  • 第2回 SOLID原則:設計の5大憲法

    2026年5月23日(土) 17:05–19:05

    目的:オブジェクト指向を具体的に運用するための5つの基準を習得する。

    • SRP (単一責任の原則): クラスが担うべき「責任」の境界線。
    • OCP (開放閉鎖の原則): 既存のコードを壊さずに新機能を追加する構造。
    • LSP (リスコフの置換原則): 継承の正しさを保証する契約。
    • ISP (インターフェース分離の原則): 肥大化したインターフェースが招く依存の汚染。
    • DIP (依存性逆転の原則): 具体的な実装ではなく、抽象(インターフェース)に依存する。 
  • 第3回 デザインパターン I:構造と振る舞いの定石

    2026年5月30日(土) 17:05–19:05

    目的:ゲーム開発の「あるある」に対する先人の知恵を学ぶ。

    • Singleton: ゲーム全体で唯一の存在を保証する。
    • Factory: インスタンス生成の責任をカプセル化する。
    • Strategy: アルゴリズムや振る舞いを動的に差し替える。
    • Command: 操作をオブジェクトとして扱い、リプレイやUndo/Redoを可能にする。 

    参考文献

    • Unity Technologies, デザインパターンとSOLIDでコードをレベルアップする
  • 第4回 デザインパターン II:リアクティブな設計とUI

    2026年6月6日(土) 17:05–19:05

    目的:複雑に絡み合うイベントとUIの関係を整理する。

    • State: 複雑な状態遷移(待機・移動・攻撃等)をクラスとして独立させる。
    • Observer: オブジェクト間の依存を断ち切り、イベント駆動で情報を伝える。
    • MVP (Model-View-Presenter): ロジックと表示を分離し、テスタビリティを高める。
    • UniRx入門: 時間軸を扱う処理のストリーム化と、リアクティブプログラミングによるイベント処理の簡略化。 

    参考文献

    • Unity Technologies, デザインパターンとSOLIDでコードをレベルアップする

クレジット

メンター

haku
hakuメンター

受講者

haru
haru受講者
おニング
おニング受講者
sono
sono受講者
ねなか
ねなか受講者
あはは
あはは受講者
Daichi
Daichi受講者
ぎりこ
ぎりこ受講者