gogunbuntu-study / Free-Topic

0 stars 0 forks source link

2022 트렌트 리포트 (Framework, Library, 언어 변화) #5

Open yoon-chaejin opened 2 years ago

yoon-chaejin commented 2 years ago

TIOBE Index

The only exception to this seems to be Rust. Rust entered the top 20 last month and managed to keep its position this month. The main reason for Rust's rising popularity is its unique combination of speed and safety. Let's see whether Rust is here to stay.

yoon-chaejin commented 2 years ago

React 18

무엇이 다른가?

Our latest major version includes out-of-the-box improvements like automatic batching, new APIs like startTransition, and streaming server-side rendering with support for Suspense. 주요 기능으로는 자동 배치, 신규 API, SSR 스트리밍 등이 있다.

Many of the features in React 18 are built on top of our new concurrent renderer. 많은 기능들은 병행 렌더러에 기초한다.

React 팀이 18 버전을 통해서 개선하고자 했던 내용은 무엇일까요? 여러 가지 개선 사항이 있지만 그중 두 가지만 살펴보자면, 첫 번째는 Batching 작업을 통한 Rendering 퍼포먼스 향상, 두 번째는 새로운 기능인 Transition 을 통해 UI 업데이트에 우선순위를 부여하거나, 느린 네트워크 환경에서의 UX 향상을 살펴볼 수 있을 것 같습니다

좀 더 상세한 이야기를 영우 님 통해서 들을 수 있으려나...!

syndersonlee commented 2 years ago

개발 트렌드 2022

프론트엔드 트렌드

노마드코더

백엔드 트렌드

DB

코딩애플

노마드코더

모바일 트렌드

ywoo-park commented 2 years ago

모노레포를 활용한 모던 프론트엔드 프로젝트 구성

모노레포(Monorepo)

모노레포의 등장 배경

모놀리식 애플리케이션의 한계

  1. 번거로운 프로젝트 생성
    • 새로운 공유 패키지를 생성할 때마다 다음과 같이 번거로운 과정을 거쳐야 한다.
    • 저장소 생성 > 커미터 추가 > 개발 환경 구축 > CI/CD 구축 > 빌드 > 패키지 저장소에 publish
  2. 관리 포인트 증가
    • 늘어난 프로젝트 저장소의 수만큼 관리 포인트가 늘어난다.
    • 린트, 테스트, 개발 모드 실행, 빌드, 게시, 배포 등의 과정을 저장소의 수만큼 반복해야 한다.
  3. 일관성 없는 개발자 경험(DX)
    • 각 프로젝트는 테스트 실행, 빌드, 테스트, 린트, 배포 등을 위해 고유한 명령 집합을 사용한다.
    • 이러한 불일치는 여러 프로젝트에서 사용할 명령을 기억해야 하는 정신적 오버헤드를 만든다.
  4. 다른 패키지의 변경 사항 파악
    • 관련 패키지의 변화를 지켜보거나 통지받지 않으면 문제가 발생할 수 있다.
  5. 교차 저장소의 리팩터링 비용
    • 관련 패키지의 변화가 있을 때 여러 저장소에 걸쳐 변화를 반영하는 것은 쉬운 일이 아닐 것이다.
    • 이렇게 리팩터링된 각 패키지의 버전에 대한 관리 이슈도 있다.

모노레포가 해결하는 문제

모노레포의 특징

모노레포 도구 알아보기

Yarn

workspace에 대한 명령 실행

workspace를 의존성으로 추가

workspace 의존 관계 확인

모든 workspace에 대해 명령 실행

루트 프로젝트에 의존성 추가

호이스팅(의존성 끌어올리기)

Lerna

FE 모노레포 도입

현실적인 도입에 따른 장점이 무엇이 있을까?

점진적인 도입?