프레임워크 없는 프론트엔드 개발 (1)

#book#frontend#javascript
• • •

책 소개

book_cover

서점에서 제목에 끌려 집어 들었던 책인데 내용이 좋아 한 번 정리하고 싶었다. 번역이 아쉽다는 평이 있고 실제로 좀 그렇기도 하지만, 나와 같이 별 생각없이 프레임워크를 사용해왔던 주니어 개발자라면 한 번 읽어보는 것을 추천한다.

프레임워크란?

무언가를 만들 수 있는 지지 구조

프레임워크 VS 라이브러리

프레임워크는 코드를 호출하지만 라이브러리는 코드에 의해 호출된다.

프레임워크 방식

리액트 공식 홈페이지에는 리액트를 ‘사용자 인터페이스를 만들기 위한 자바스크립트 라이브러리’라고 소개하고 있다. 리액트의 핵심은 선언적 패러다임이다. 개발자는 돔을 직접 조작하는 대신 구성 요소의 상태를 변경한다. 그러면 리액트가 대신 돔을 조작해주는 식이다. 저자는 이러한 이유로 리액트를 프레임워크라고 믿는다.

프레임워크 연혁

2006년 존 레식이 개발한 제이쿼리는 모든 자바스크립트 프레임워크의 모체가 됐다.

2009년 미스코 헤브리가 개발한 앵귤러JS의 가장 주목할 만한 기능은 데이터 바인딩이다. 모델이 바뀌면 뷰가 바뀐다. 뷰가 바뀌면 모델이 바뀐다.

2011년 페이스북이 만들어 2013년에 공개한 리액트는 현재 가장 인기있는 프레임워크다. 선언적 패턴이 가장 큰 특징이다. 상태를 변경하면 돔을 바꾸는 일은 리액트가 한다.

기술부채

프로젝트에 기능을 추가할 때 여러 옵션이 있다. 어떤 것은 빠르지만 지저분하고 반면 어떤 것은 느리지만 잘 설계되어 있다. 어떤 기술적 결정은 기술 부채를 낳는다. 지저분한 옵션일 수록 더 많은 부채를 안기고 부채는 시간이 지남에 따라 이자와 함께 기하급수적으로 늘어난다.

모든 프레임워크는 기술부채를 갖고 있다. 프레임워크가 무료라고 생각하는 것은 순진한 생각이다. 미래에 코드 변경이 어렵다는 측면에서 모든 프레임워크에서는 비용이 발생한다. 프레임워크의 아키텍처 그 자체에 이미 비용을 포함하고 있다. 시간이 지난 후에 외부적 요인에 의해 소프트웨어의 변경이 필요하다면 프레임워크가 장애물이 될 수 있다. 하지만 프레임워크의 사용을 반대하는 것이 저자의 목적은 아니다. 합리적 이유로 선택한 프레임워크는 좋은 투자가 될 수 있고 이는 자산이 될 수 있다.

출처

프란세스코 스트라츨로, 『프레임워크 없는 프론트엔드 개발』, 에이콘 출판(2021.01.21.)

published about 3 years ago · last updated about 10 hours ago