분류 전체보기(289)
-
프론트엔드 테스트 전략 - (1) Overview
Overview 2년 조금 넘는 시간 동안 프론트엔드 개발을 해 오면서 애플리케이션 생태계에서의 웹 서비스의 비중이 시간이 지날수록 점점 커지는 것을 실감하고 있습니다. 빠른 주기의 업데이트와 유연한 UI를 제공하기 위해서 많은 앱 애플리케이션들이 웹뷰를 사용해서 서비스를 구현하고 있으며 이에 따라 데스크톱 생태계에서 뿐 아니라 스마트폰 / 태블릿 생태계에서도 웹 서비스는 여전히 서비스의 가장 앞단에서 수많은 사용자에게 접점을 제공하는 중요한 역할을 맡고 있습니다. 이렇게 애플리케이션 내에서 웹, 즉 웹뷰의 사용이 점점 확대됨에 따라 웹뷰에서 제공하는 기능 또한 다양해졌고, 이로 인해 웹뷰 프로젝트의 규모가 커지고, 복잡도가 증가하게 되는 경우가 많아지는 것 같습니다. 여느 큰 규모의 프로젝트들이 그렇듯..
2022.09.04 -
Declarative React, and Inversion of Control
Overview React 공식문서의 Design Principles 부분을 보면, 다음과 같은 문구가 있습니다. Even when your components are described as functions, when you use React you don’t call them directly. Every component returns a description of what needs to be rendered, and that description may include both user-written components like and platform-specific components like . It is up to React to “unroll” at some point in the futur..
2022.09.03 -
[Essay] Monetary Policy and Price Stability (Jackson Hole)
Jackson Hole Script The Federal Open Market Committee's (FOMC) overarching focus right now is to bring inflation back down to our 2 percent goal. 연준의 가장 큰 목표(overarching focus)는 인플레이션을 2%로 다시 끌어내리는데에 있다. Reducing inflation is likely to require a sustained period of below-trend growth. Moreover, there will very likely be some softening of labor market conditions. While higher interest rates, slow..
2022.08.31 -
개발일지 (8월 회고)
Open Source Contribution 전사적으로 구글 AIP(API Improvement Proposal)를 도입해서 사용하고 있고, 이를 위해 protobuf로 정의된 IDL(Interface Definition Language)을 Go, Java, Kotlin, Typescript등의 다양한 언어로 컴파일 해서 사용한다. 프론트엔드에서는 typescript로 컴파일된 인터페이스들과 stub 구현체가 필요하기 때문에 구글의 gax-nodejs라는 라이브러리와, 이를 사용해서 proto 파일을 Typescript 인터페이스로 컴파일해주는 템플릿 라이브러리인 gapic-generator-typescript라는 라이브러리를 사용하고 있다. 실제로 해당 라이브러리들을 사용해서 컴파일된 결과물들을 가지고..
2022.08.28 -
모노레포의 기술적 요구사항 (5) - Sparse Checkout
Overview 모노레포의 문화적 의의를 다룬 이전 포스팅에 이어, 이번 포스팅 시리즈에서는 실제로 모노레포를 팀에 도입하기 위해 거쳐왔던 여러 기술적인 고려 사항들을 간단하게 이야기해보려고 합니다. "모노레포는 이렇게 운영하는 것이 좋다"라는 가이드라기보다는 프론트엔드 팀이 모노레포로 전환하는 과정에서 겪은 여러 문제들과, 이를 해결해 나가는 과정에 대한 기록에 가까울 것 같습니다. 글은 다음과 같은 순서로 작성되었습니다. Workspaces & Dependencies Global Lint & Prettier Deploy & Branch Management Plugin (Optional) Sparse Checkout Large Files Problem 10명정도 규모의 팀이 하나의 레포에서 개발을 하게..
2022.08.07 -
모노레포의 기술적 요구사항 (4) - Plugin
Overview 모노레포의 문화적 의의를 다룬 이전 포스팅에 이어, 이번 포스팅 시리즈에서는 실제로 모노레포를 팀에 도입하기 위해 거쳐왔던 여러 기술적인 고려 사항들을 간단하게 이야기해보려고 합니다. "모노레포는 이렇게 운영하는 것이 좋다"라는 가이드라기보다는 프론트엔드 팀이 모노레포로 전환하는 과정에서 겪은 여러 문제들과, 이를 해결해 나가는 과정에 대한 기록에 가까울 것 같습니다. 글은 다음과 같은 순서로 작성되었습니다. Workspaces & Dependencies Global Lint & Prettier Deploy & Branch Management Plugin (Optional) Sparse Checkout Yarn Plugin Yarn Berry(v2) 부터 공식적으로 plugin에 대한 지..
2022.08.07