전체 글(58)
-
Emotion의 배경지식 / 사용법 (CSS in JS)
Emotion? Emotion은 JavaScript로 css 스타일을 작성하도록 설계된 라이브러리입니다. 본격적으로 Emotion에 대해 알아보기 이전에 간단히 다양한 웹 스타일링 기술을 알아보겠습니다. 다양한 웹 스타일링 기술 CSS CSS(Cascading Style Sheets)는 HTML 이나 XML로 작성된 문서의 표시 방법을 기술하기 위한 스타일 시트 언어입니다. CSS는 요소가 화면, 종이, 음성이나 다른 매체 상에 어떻게 렌더링 되어야 하는지 지정합니다. CSS의 문제점 - Global namespace: 모든 스타일이 global에 선언되어 중복되지 않는 class 이름을 적용해야 한다. - Dependencies: CSS간의 의존 관계를 관리 하기 힘들다 - Dead Code Elimi..
2022.12.06 -
React Query
React Query는 React 어플리케이션에서 서버의 상태를 불러오고, 캐싱하며, 지속적으로 동기화 하고 업데이트 하는 작업을 도와 주는 라이브러리 입니다. 장점 * 캐싱 * Boilerplate 코드의 감소 * get 한 데이터에 update 가 발생하면 자동으로 get을 다시 수행한다. * 동일 데이터 여러번 요청시 한번만 요청한다 (옵션에 따라 중복호출 허용 시간 조절 가능) * 데이터가 오래되었다고 판단하면 다시 get (invalidateQueries) * API 요청 수행을 위한 규격화된 방식 제공 사용 npx create-react-app my-app cd my-app yarn add react-query yarn && yarn start 세팅 // src/index.js import R..
2022.11.28 -
React 상태관리 라이브러리 1탄 (Redux)
React 에는 많은 상태관리 라이브러리들이 있습니다. 그중에 가장 많이 사용하는 Redux를 먼저 정리해 보았습니다. Redux의 역사 MVC 패턴 Redux의 역사는 MVC 패턴에서 시작합니다. MVC 패턴에서 Cotroller는 Model에 정의된 데이터를 조회하거나 업데이트하는 역할을 하고, 변경된 Model의 데이터를 View에 반영해 줍니다. 또한 사용자는 View를 통해 데이터를 입력하고 Model에 반영되며, View 와 Model은 데이터를 양방향으로 주고받는 형태입니다. 프로젝트의 규모가 커질수록 수많은 View와 Model들이 생겨났기 때문에 데이터가 어디로 흐르는지 파악하기 어렵다는 문제점이 있었습니다. 새 기능을 추가할때 마다 크고 작은 문제가 생겼고, 예상 할 수 없는 결과(Si..
2022.11.21 -
ESLint, Prettier 무엇이 다르고 어떻게 Setting 해야 할까?
'ESLint'는 자바스크립트 코드에서 발견된 문제를 식별하기 위한 정적 코드 분석 도구입니다. 이 도구는 2013년에 니콜라스 C. 자카스에 의해 개발되었습니다. ESLint의 규칙들은 구성이 가능하며, 사용자는 지정한 규칙을 정의하고 로드할 수 있습니다. 개발 중 특정 기능을 구현할 때, 그 기능을 구현하기 위한 여러가지 방법이 존재합니다. 예를 들자면 함수를 정의 할 때, function 키워드를 사용하여 할수도 있고 arrow function을 쓸 수도 있습니다. 또한 배열의 반복문을 사용할 때, for문을 사용할 수도 있지만, forEach, map 등 Array 내장 함수를 사용 할 수도 있습니다. 이러한 여러가지 방식들을 일관성있는 방식으로 구현할 수 있도록 도와주고 고쳐주는 것이 ESLin..
2022.10.13 -
이것만 알고가자 피그마 (feat. 개발자)
피그마(Figma)는? 클라우드 기반으로 웹 브라우저로 동작하는 UI 디자인 툴 피그마는 웹 브라우저 기반이기때문에 작업 환경에 대한 걱정 없이 사용할수 있습니다. 다시 말하자면 설치할 필요가 없고 운영체제와 상관 없이 사용할 수 있다는 장점이 있습니다. 또한 피그마는 디자인이 클라우드에 있고 고유한 URL 이 존재하기 때문에 개발자가 항상 최신 버전의 디자인을 빠르게 확인 할 수 있고(사실 개발자 뿐만 아니라 사용하는 사용자 모두) 내장된 여러가지 기능을 통해 디자이너와 개발자 사이에 커뮤니케이션을 원할하게 해줍니다. The design lives in the cloud and has a unique URL, so it serves as the source of truth for the entire t..
2022.10.03 -
이름 정의 규칙 (Naming Convention)
1. CamelCase 1-1. UpperCamelCase 항상 식별자의 첫번째 문자를 대문자로 표기 해야하며, 만약 여러 단어가 포함되어 있는 경우, 각 단어를 구분짓기 위해 마찬가지로 대문자로 표기한다. 규칙자체 이름에서 보여지듯 식별자의 첫단어는 대문자(U)로 지정되어 있고, 그 뒤에 Camel, Case 같이 서로 상이한 단어들을 구분짓기 위해 각 단어의 시작을 대문자로 표기한다. 나머지 문자는 모두 소문자로 표기한다. //예시 UserName BackgroundColor 1-2. lowerCamelCase 항상 식별자의 첫번째 문자는 소문자로 표기해야 하며, 나머지 규칙은 UpperCamelCase 와 동일하다. 규칙자체 이름에서 보여지듯 식별자의 첫 단어를 소문자(l)f로 지정하였고, 나머지 ..
2022.05.31