シーズン1
第1話
2025年8月25日

Aはフロントエンドを永遠に変えたフレームワーク

エピソード概要
双方向のデータバインディングと再利用可能なコンポーネントでフロントエンド開発を再定義したGoogleの2010年のフレームワーク。2021年に開発終了となったAngularJS 、移行の頭痛の種であり、モダンなフレームワークの永遠の遺産でもある。
文字起こし

AはAngularJS

オープンソースソフトウェアの歴史と影響を一文字ずつ紹介する「The ABCs of OSS」の第1回目エピソードへようこそ。私はホストのテイラーで、今日はAから始めます。 AngularJS.

なぜAngularJS 重要なのか

ソフトウェアの構築方法に永久的な足跡を残す技術もあるが、AngularJS そのひとつだ。2010年にGoogleによってリリースされたAngularJS 、開発者のフロントエンドWeb開発への取り組み方を完全に変えた。

AngularJS登場する前は、ダイナミックなウェブアプリケーションの構築は骨の折れるものだった。開発者は手作業でのDOM操作や、常に頭を悩ませる状態管理と格闘していました。AngularJS そのような問題を、次のようなイノベーションで解決した:

  • 双方向のデータバインディング- DOMを常に手動で更新する必要がありません。
  • 依存性注入- テストとモジュール化されたコードをより簡単にする。
  • ディレクティブ- それが主流になる前の、再利用可能なコンポーネントを構築する方法。

これらの機能によってAngularJS 革命的なものとなり、その影響はReactや Vueといった今日のフロントエンド・フレームワークにも見られる。

エンドオブライフ(EOL)とセキュリティ・リスク

しかし、他のソフトウェアと同様、AngularJSにはライフサイクルがあります。グーグルは2018年にAngularJS がいずれ引退することを発表し、2021年12月に正式にEOL(End of Life)に達した。

これが問題だ:Angularは単なるAngularJSアップグレード版ではありませんTypeScript、RxJS、コンポーネントベースのアーキテクチャを中心に構築された全面的な書き換えであり、アプリケーションを一から考え直す必要がある完全なシフトなのです。

では、今 AngularJS 動かし続けたらどうなるのか?

  • アプリケーションはまだ "動く "が...。
  • 今はサポートされていない、パッチの当たっていないソフトウェアで動いている。
  • 新たに発見されたCVEの脆弱性には、公式なパッチが当てられることはない。

つまり、本番稼動中のAngularJS アプリは、事実上セキュリティ上の負債であるということです。AngularJS 依存している組織は、パッチが適用されていないソフトウェアを運用し、ユーザーとシステムを危険にさらしているのです。

移住の課題

移行の道は単純ではない。AngularJS 最新のフレームワークに移行するチームは、次のような問題に直面する:

  • アーキテクチャのオーバーホール- 全く新しいパラダイムとビルドツール。
  • テストの書き換え- 古い前提がもはや当てはまらないため。
  • 膨大な技術的負債- 特にアプリに何年ものレガシー機能がある場合。

それは "週末プロジェクト "ではない。長期的な近代化の取り組みであり、計画、リソース、場合によっては外部からのサポートが必要となる。

AngularJS永続的な影響力

AngularJS サポートされなくなったとはいえ、その痕跡は至るところに残っている:

  • 依存性注入はフロントエンド開発の定番となった。
  • コンポーネント・ベースのアーキテクチャは、React、Vue、Angular現代的な形の舞台となった。
  • データ・バインディング・パターンは、UIステートの管理方法に影響を与え続けている。

言い換えれば、AngularJS触ったことがなくても、AngularJS開拓したパターンを使っている可能性が高い。

閉会の辞

AngularJS 画期的だったが、今やレガシーソフトウェアだ。サポートなしで運用することは、本当のセキュリティリスクを受け入れることを意味する。移行は大変だが、製造中止のソフトウェアを無視するのはもっと危険だ。

OSSのABC」第1回はここまで。次回は、BootstrapのBについてです。Bootstrapは、グラフィックデザインの学位を必要とせずに、開発者にデザインのスーパーパワーを与えたフレームワークです。

それまでは、コードをクリーンに保ち、依存関係をアップデートし、レガシーソフトウェアをサポートしておくこと。

AIで要約する
ホスト
テイラー・コルベット
サポートされていないフレームワークでプロダクション・アプリケーションを実行することは、セキュリティ上の大きな責任となる。
関連ビデオ
最後の防衛線デビッド・ウェルチと語る「生きられない終末期
Everyday Heroesポッドキャストのこのエピソードで、ホストは、幼少期からいじり好きで、HeroDevsのチーフ・ソフトウェア・アーキテクトとなったデイヴ・ウェルチと話をする。デイブは、家電製品の解体からソフトウェア・エンジニアリングに至る彼のユニークな道のりを紹介し、破壊的な好奇心が思いがけず彼を技術分野のキャリアに導いたことを強調する。彼は、ソフトウェア開発が彼の実験的な性質にとって完璧なはけ口であり、修復の安全性を保ちながら物事を壊すことを可能にするものであることを発見した。対談では、デイブの職業哲学、説明責任と公正な報酬がどのように彼の仕事へのアプローチを形成したかを探る。
最後の防衛線デビッド・ウェルチと語る「生きられない終末期
Everyday Heroesポッドキャストのこのエピソードで、ホストは、幼少期からいじり好きで、HeroDevsのチーフ・ソフトウェア・アーキテクトとなったデイヴ・ウェルチと話をする。デイブは、家電製品の解体からソフトウェア・エンジニアリングに至る彼のユニークな道のりを紹介し、破壊的な好奇心が思いがけず彼を技術分野のキャリアに導いたことを強調する。彼は、ソフトウェア開発が彼の実験的な性質にとって完璧なはけ口であり、修復の安全性を保ちながら物事を壊すことを可能にするものであることを発見した。対談では、デイブの職業哲学、説明責任と公正な報酬がどのように彼の仕事へのアプローチを形成したかを探る。
最後の防衛線デビッド・ウェルチと語る「生きられない終末期
Everyday Heroesポッドキャストのこのエピソードで、ホストは、幼少期からいじり好きで、HeroDevsのチーフ・ソフトウェア・アーキテクトとなったデイヴ・ウェルチと話をする。デイブは、家電製品の解体からソフトウェア・エンジニアリングに至る彼のユニークな道のりを紹介し、破壊的な好奇心が思いがけず彼を技術分野のキャリアに導いたことを強調する。彼は、ソフトウェア開発が彼の実験的な性質にとって完璧なはけ口であり、修復の安全性を保ちながら物事を壊すことを可能にするものであることを発見した。対談では、デイブの職業哲学、説明責任と公正な報酬がどのように彼の仕事へのアプローチを形成したかを探る。
最後の防衛線デビッド・ウェルチと語る「生きられない終末期
Everyday Heroesポッドキャストのこのエピソードで、ホストは、幼少期からいじり好きで、HeroDevsのチーフ・ソフトウェア・アーキテクトとなったデイヴ・ウェルチと話をする。デイブは、家電製品の解体からソフトウェア・エンジニアリングに至る彼のユニークな道のりを紹介し、破壊的な好奇心が思いがけず彼を技術分野のキャリアに導いたことを強調する。彼は、ソフトウェア開発が彼の実験的な性質にとって完璧なはけ口であり、修復の安全性を保ちながら物事を壊すことを可能にするものであることを発見した。対談では、デイブの職業哲学、説明責任と公正な報酬がどのように彼の仕事へのアプローチを形成したかを探る。