ternary-operator
·
TIL
개인적으로 간단한 조건식을 입력할 때는 삼항 연산자를 즐겨 사용한다. 하지만 조건이 길어진다면 if문이나 switch문을 사용해야 할 때가 훨씬 효율적이다. 상황에 맞게 조건식을 사용할 줄 알아야 한다는 것이다. eslint에서는 중첩 삼항 연산자에 대한 주의를 준다. 나는 중첩 삼항 연산자를 사용해보고 싶었고 실제로 프로젝트에서 사용하여 기능을 구현시켜보았다. 하지만 리뷰를 받으며 중첩 삼항 연산자는 가독성이 떨어진다는 동료 개발자 분들의 의견이 있었고 무엇보다 중첩 삼항 연산자를 사용했을 때 발생하는 eslint의 주의가 있었다. .eslintrc 내부에서의 룰을 살펴보면 { "extends": ["react-app", "plugin:prettier/recommended"], "rules": { "n..
push, replace, redirect, Link의 사용은 언제인가
·
TIL
라우팅 작업 중 history.push와 history.replace 중 하나를 선택할 필요가 있었다 둘의 차이를 몰라 무엇을 선택해야 할 지 몰라 개념을 정리하며 알게된 것과 추가적인 개념을 공부하기 위해 포스팅했다 1. push - history stack을 활용하여 현재 url 기록(= 라우팅 전 기록)이 라우팅 후에도 남는다 - jsx에서 사용할수 없고, 어떤 event 안의 함수에서 활용한다 하위(자식) 컴포넌트에서 history객체를 사용하려면 props를 통해 부모 컴포넌트로부터 전달받아야 한다. BrowerRouter와 Route를 사용한 경우 라우팅된 페이지의 최상위 컴포넌트에는 props를 통해 history객체가 자동으로 전달된다. 2. replace - 현재의 url 기록이 이동 후..
멱등성
·
TIL
멱등성에 대해 공부하게 된 이유 데이터를 넘겨받아 업무를 진행하던 중, 데이터를 정확히 보냈음에도 서버에서 그에 대한 응답이 제대로 오지 않았다. 결론은 내가 데이터 전달을 잘못 한 것이었지만 처음엔 문제의 원인이 http 부분에 있다고 여겼고 http에 대해 공부하던 도중 멱등성이란 단어를 듣게 되어 알고 싶어졌기 때문이다 멱등성(Idempotent) 동일한 요청을 여러 번 보내도 한 번 보내는 것과 같은 효과를 지니며 서버의 상태도 동일하게 남을 때, '멱등성을 가졌다' 고 말한다. 외부 요인으로 중간에 리소스가 변경되는 것을 고려하지 않고 해당 요청을 기준으로 고려한다 올바르게 구현한 경우 GET, HEAD, PUT, DELETE 메서드는 멱등성을 가지며 POST 메서드는 멱등성을 지니지 않는다. ..
GraphQL(Graph Query Language)
·
TIL
핫하다고 이야기만 들었던 GraphQL이 무엇인지 파악하기 위해 정리를 해보았다. Query Language Query Language 는 정보를 얻기 위해 보내는 질의문(Query)을 만들기 위해 사용되는 Computer 언어의 일종인데 GraphQL 은 이런 Query Language 중에서도 Server API 를 통해 정보를 주고받기 위해 사용하는 Query Language 이다. Restful API 로는 다양한 기종에서 필요한 정보들을 일일히 구현하는 것과 다른 부분마다 API를 구현하는 것이 힘들다는 것이 GraphQL이 등장하게 된 계기이다. GraphQL 구조 Query, Mutation, Subscription Query 는 객체 구조로 표현한다. Query: 읽기를 요청하는 구문이고 ..