시즌 1
에피소드 1
2025년 8월 25일

A는 프론트엔드를 영원히 바꾼 프레임워크를 위한 것입니다.

에피소드 개요
양방향 데이터 바인딩과 재사용 가능한 컴포넌트로 프론트엔드 개발을 재정의한 Google의 2010년 프레임워크. 2021년부터 수명이 종료된 AngularJS 마이그레이션의 골칫거리와 최신 프레임워크에 대한 지속적인 유산을 모두 남겼습니다.
트랜스크립트

A는 AngularJS 위한 것입니다.

오픈 소스 소프트웨어의 역사와 영향력을 한 글자씩 분석해보는 The ABCs of OSS의 첫 번째 에피소드에 오신 것을 환영합니다. 저는 호스트인 Taylor이며, 오늘은 알파벳 A부터 시작하겠습니다. AngularJS.

AngularJS 중요한 이유

일부 기술은 소프트웨어 구축 방식에 영구적인 흔적을 남기며, AngularJS 그 중 하나입니다. 2010년에 Google에서 출시한 AngularJS 개발자가 프론트엔드 웹 개발에 접근하는 방식을 완전히 바꿔놓았습니다.

AngularJS 이전에는 동적 웹 애플리케이션을 구축하는 것이 매우 힘들었습니다. 개발자는 수동 DOM 조작과 지속적인 상태 관리 문제로 골머리를 앓았습니다. AngularJS 다음과 같은 혁신으로 이러한 문제를 해결했습니다:

  • 양방향 데이터 바인딩 - 지속적인 수동 DOM 업데이트가 필요하지 않습니다.
  • 종속성 주입 - 테스트 및 모듈식 코드가 훨씬 쉬워집니다.
  • 지시문 - 재사용 가능한 컴포넌트를 구축하는 방법으로, 아직 주류 아이디어가 되기 전이었습니다.

이러한 기능들은 AngularJS 혁신적으로 만들었으며, 그 영향력은 오늘날의 ReactVue와 같은 프론트엔드 프레임워크에서도 여전히 볼 수 있습니다.

수명 종료 및 보안 위험

하지만 모든 소프트웨어와 마찬가지로 AngularJS 수명 주기가 있습니다. Google은 2018년에 AngularJS 결국 폐기될 것이라고 발표했고, 2021년 12월에 공식적으로 서비스 종료(EOL)를 맞이했습니다.

여기에 문제가 있습니다: Angular 단순히 AngularJS 업그레이드한 것이 아닙니다. 애플리케이션을 처음부터 다시 생각해야 하는 완전한 전환으로 TypeScript, RxJS 및 컴포넌트 기반 아키텍처를 중심으로 완전히 재작성되었습니다.

그렇다면 현재 AngularJS 계속 실행하면 어떻게 될까요?

  • 애플리케이션이 여전히 '작동'하지만...
  • 현재 지원되지 않고 패치되지 않은 소프트웨어에서 실행되고 있습니다.
  • 새로 발견된 CVE 취약점은 공식 패치가 제공되지 않습니다.

즉, 프로덕션 환경의 AngularJS 앱은 사실상 보안 책임이 있습니다. AngularJS 사용하는 조직은 운영 환경에서 패치되지 않은 소프트웨어를 실행하여 사용자와 시스템을 위험에 빠뜨리고 있습니다.

마이그레이션 과제

마이그레이션 경로는 간단하지 않습니다. AngularJS 최신 프레임워크로 마이그레이션하는 팀은 여러 가지 문제에 직면하게 됩니다:

  • 아키텍처 개편 - 완전히 새로운 패러다임과 빌드 도구.
  • 테스트 재작성 - 이전 가정이 더 이상 적용되지 않기 때문입니다.
  • 상당한 기술 부채 - 특히 앱에 수년간의 레거시 기능이 있는 경우 더욱 그렇습니다.

"주말 프로젝트"가 아닙니다. 계획, 리소스, 경우에 따라 외부 지원이 필요한 장기적인 현대화 노력입니다.

AngularJS 지속적인 영향력

AngularJS 더 이상 지원되지 않지만, 그 흔적은 곳곳에 남아 있습니다:

  • 종속성 주입은 프론트엔드 개발의 필수 요소가 되었습니다.
  • 컴포넌트 기반 아키텍처는 리액트, 뷰, Angular현대적인 형태를 위한 발판을 마련했습니다.
  • 데이터 바인딩 패턴은 UI 상태를 관리하는 방식에 계속 영향을 미칩니다.

다시 말해, AngularJS 사용해 본 적이 없더라도 이 플랫폼이 개척한 패턴을 사용하고 있을 가능성이 높습니다.

마무리 생각

AngularJS 획기적이었지만 이제는 레거시 소프트웨어가 되었습니다. 지원 없이 프로덕션 환경에서 실행하는 것은 실제 보안 위험을 감수하는 것을 의미합니다. 마이그레이션도 어렵지만 EOL 소프트웨어를 무시하는 것은 더 위험합니다.

여기까지 OSS의 ABC 첫 번째 에피소드입니다. 다음 시간에는 그래픽 디자인 학위 없이도 개발자에게 디자인 능력을 부여한 프레임워크인 부트스트랩용 B에 대해 자세히 알아보겠습니다.

그때까지 코드를 깔끔하게 유지하고, 종속성을 업데이트하고, 레거시 소프트웨어를 지원하세요.

AI로 요약하기
호스트
테일러 코벳
지원되지 않는 프레임워크에서 프로덕션 애플리케이션을 실행하면 보안에 큰 문제가 발생할 수 있습니다.
관련 동영상
최후의 방어선: 최후의 방어선: 데이비드 웰치와 함께하는 불멸의 종말
이번 에브리데이 히어로 팟캐스트 에피소드에서는 어린 시절 땜장이에서 히어로데브의 수석 소프트웨어 아키텍트로 변신한 데이브 웰치(Dave Welch)와 이야기를 나눕니다. Dave는 가전제품 분해에서 소프트웨어 엔지니어링에 이르기까지 자신의 독특한 여정을 공유하며, 자신의 파괴적인 호기심이 어떻게 예기치 않게 기술 분야의 경력을 준비하게 되었는지를 강조합니다. 그는 소프트웨어 개발이 자신의 실험적인 본성을 발휘할 수 있는 완벽한 출구였으며, 안전한 복원을 통해 물건을 부술 수 있었다는 사실을 깨달았다고 이야기합니다. 이 대화에서는 Dave의 직업 철학, 책임감과 공정한 보상이 업무에 대한 그의 접근 방식을 어떻게 형성했는지 살펴봅니다.
최후의 방어선: 최후의 방어선: 데이비드 웰치와 함께하는 불멸의 종말
이번 에브리데이 히어로 팟캐스트 에피소드에서는 어린 시절 땜장이에서 히어로데브의 수석 소프트웨어 아키텍트로 변신한 데이브 웰치(Dave Welch)와 이야기를 나눕니다. Dave는 가전제품 분해에서 소프트웨어 엔지니어링에 이르기까지 자신의 독특한 여정을 공유하며, 자신의 파괴적인 호기심이 어떻게 예기치 않게 기술 분야의 경력을 준비하게 되었는지를 강조합니다. 그는 소프트웨어 개발이 자신의 실험적인 본성을 발휘할 수 있는 완벽한 출구였으며, 안전한 복원을 통해 물건을 부술 수 있었다는 사실을 깨달았다고 이야기합니다. 이 대화에서는 Dave의 직업 철학, 책임감과 공정한 보상이 업무에 대한 그의 접근 방식을 어떻게 형성했는지 살펴봅니다.
최후의 방어선: 최후의 방어선: 데이비드 웰치와 함께하는 불멸의 종말
이번 에브리데이 히어로 팟캐스트 에피소드에서는 어린 시절 땜장이에서 히어로데브의 수석 소프트웨어 아키텍트로 변신한 데이브 웰치(Dave Welch)와 이야기를 나눕니다. Dave는 가전제품 분해에서 소프트웨어 엔지니어링에 이르기까지 자신의 독특한 여정을 공유하며, 자신의 파괴적인 호기심이 어떻게 예기치 않게 기술 분야의 경력을 준비하게 되었는지를 강조합니다. 그는 소프트웨어 개발이 자신의 실험적인 본성을 발휘할 수 있는 완벽한 출구였으며, 안전한 복원을 통해 물건을 부술 수 있었다는 사실을 깨달았다고 이야기합니다. 이 대화에서는 Dave의 직업 철학, 책임감과 공정한 보상이 업무에 대한 그의 접근 방식을 어떻게 형성했는지 살펴봅니다.
최후의 방어선: 최후의 방어선: 데이비드 웰치와 함께하는 불멸의 종말
이번 에브리데이 히어로 팟캐스트 에피소드에서는 어린 시절 땜장이에서 히어로데브의 수석 소프트웨어 아키텍트로 변신한 데이브 웰치(Dave Welch)와 이야기를 나눕니다. Dave는 가전제품 분해에서 소프트웨어 엔지니어링에 이르기까지 자신의 독특한 여정을 공유하며, 자신의 파괴적인 호기심이 어떻게 예기치 않게 기술 분야의 경력을 준비하게 되었는지를 강조합니다. 그는 소프트웨어 개발이 자신의 실험적인 본성을 발휘할 수 있는 완벽한 출구였으며, 안전한 복원을 통해 물건을 부술 수 있었다는 사실을 깨달았다고 이야기합니다. 이 대화에서는 Dave의 직업 철학, 책임감과 공정한 보상이 업무에 대한 그의 접근 방식을 어떻게 형성했는지 살펴봅니다.