ふくふくHukuhuku Inc.
EP.64Pioneers対象: 中2以上 8分公開: 2026-05-10

バーバラ・リスコフ:オブジェクト指向の「SOLID 原則 L」を作った女性 CS 学者

良いコードの設計原則 SOLID の L = リスコフの置換原則。プログラミング言語 CLU を 1970 年代に作り、現代 OOP の理論基盤を確立した女性チューリング賞受賞者。

#偉人伝#Liskov#SOLID#OOP
シェア

1. 身近な「OOP・SOLID 原則」を逆算する

プログラマがクラス設計を学ぶときに必ず出会う SOLID 原則。その L (Liskov Substitution Principle)バーバラ・リスコフ の名前。彼女が 1970 年代に作った CLU 言語 が現代のオブジェクト指向の理論基盤。

もしこの偉人がいなかったら

現代のオブジェクト指向理論が違っていた可能性。CLU は Java / Python / Ruby / C++ の祖先、彼女の「抽象データ型」概念がプログラミング言語の標準に。

2. 100 文字でわかる

100 文字紹介

バーバラ・リスコフ (1939〜)。米国 CS 学者、MIT 教授。1970 年代 CLU 言語、1987 年「リスコフの置換原則」提唱。2008 年女性 CS 史上 2 人目のチューリング賞。

3. 500 文字でわかる

1939 年米国カリフォルニア生まれ、ユダヤ系。スタンフォード大学博士。1972 年 MIT 教授1974 年から CLU (CLUster) 言語を開発 — 「抽象データ型 (ADT)」「反復子 (iterator)」「多重戻り値」などの概念を初導入、現代のオブジェクト指向の理論基盤。CLU は商用言語にはならなかったが、Java / Python / Ruby / C++ / Modula-3 すべてに影響。1987 年、論文「Data Abstraction and Hierarchy」で「リスコフの置換原則 (LSP)」提唱 — 「派生クラスのオブジェクトは、基底クラスのオブジェクトと置き換えても挙動が変わらないべき」。これが SOLID 原則の L に。2000 年代から分散コンピューティング (Byzantine Fault Tolerance) の研究、Bitcoin・分散システムの理論基盤に。2008 年、女性 CS 史上 2 人目のチューリング賞 (1 人目は Frances Allen 2006)。MIT Institute Professor (最高位の教授職) として現在も活躍。

4. もっと詳しく

CLU 言語 (1974-)

1974 年から MIT で CLU 言語を開発。「抽象データ型 (ADT)」を初導入 — 「データの内部実装を隠蔽し、操作だけを公開する」という現代 OOP の核心概念。反復子 (Python の for 文の元)、多重戻り値 (Go の return a, b の元)、例外処理 等も初。当時の言語学界に衝撃。

リスコフの置換原則 (1987)

1987 年論文で「サブタイプはスーパータイプと置換可能であるべき」を厳密に定義。正方形は長方形か?」問題 が有名な例 — 正方形は長方形のサブクラスではダメ (LSP 違反)、なぜなら長方形の `setWidth(5)` を正方形に呼ぶと挙動が崩れる。これが SOLID 原則の L

Byzantine Fault Tolerance (BFT)

1999 年から Castro と「Practical Byzantine Fault Tolerance」研究悪意のあるノードがネットワークに混在していても、合意できる分散合意アルゴリズム。これが Bitcoin・分散システム・ブロックチェーン の理論基盤の 1 つ。

チューリング賞 (2008)

2008 年、女性 CS 史上 2 人目のチューリング賞 (1 人目は 2006 年 Frances Allen)。受賞理由「プログラミング言語と分散システムの設計の基礎、特に抽象データ型・容認的故障耐性 への貢献」。女性が CS で最高位を取れる**」象徴的事件。

5. 現代への影響

  • SOLID 原則 (L): クリーンコードの基本
  • 抽象データ型 (ADT): 全 OOP 言語の基本概念
  • 反復子・例外処理: Python / Java / Ruby に直系
  • Byzantine Fault Tolerance: Bitcoin / 分散合意の理論
  • 女性 CS リーダーの象徴: 現代の Diversity 議論の核

6. もっと知りたい人へ

  • Wikipedia (日本語): バーバラ・リスコフ
  • 論文「Data Abstraction and Hierarchy」(1987): LSP 原典
  • MIT 個人ページ: https://www.csail.mit.edu/person/barbara-liskov

7. 次の話

EP.65 では エドガー・コッド を扱います。リレーショナルデータベース (SQL) を発明した IBM 研究員。

シェア

この記事の感想を教えてください

あなたの 1 クリックで、本当にこの記事は更新されます。「もっと詳しく」「続編希望」が一定数集まった記事は、 ふくふくが 実際に内容を拡充したり続編記事を公開 します。 送信したリアクションはお使いのブラウザに記録され、再カウントされません。

シリーズの外も探す:

まずは、現状を聞かせてください。

要件が固まっていなくて大丈夫です。現状診断と方針提案までを無料でお手伝いします。

無料相談フォームへ hello [at] hukuhuku [dot] co [dot] jp