카카오 소셜 로그인을 백엔드 서버와 프론트엔드(앱, 웹) 둘을 사용하는 서비스에서 구현하다보면, 카카오 로그인을 어떻게 구현하고 이들을 어떻게 서버와 잘 교환할지 고민이 생길 수 있다. 카카오 로그인 카카오 소셜 로그인은 타 OAuth와 같은 방식으로 이루어진다. REST API를 기준으로는 적절히 client_id와 redirect_uri를 포함하여 링크로 요청을 하고, 사용자가 여기서 로그인을 하면 code를 포함하여 redirect_uri로 리다이렉트 된다. 이때 이 code를 적절히 개발자가 받아서 카카오 소셜 서버와의 적절한 통신을 하고 최종적으로 access_token을 받는 방식이다. 앱의 SDK등의 기준으로는 그냥 위의 과정이 SDK에서 적당히 자동으로 처리되고 바로 access token..
LF와 CRLF 중 어떤 것을 사용해야 할까요? 결론부터 말하자면, LF를 사용해야 합니다. LF, CRLF LF와 CRLF에 대해 알아보게 된 계기는 이전에 git을 사용하여 협업을 진행할 때 CRLF와 LF로 인해 코드 충돌이 일어났었을때 찾아보게 되었습니다. CR은 캐리지 리턴(Carriage Return)을 의미하며, LF는 라인 피드(Line Feed)를 의미합니다. 보통 우리가 '\n'으로 표시하여 문자열 출력 시 줄바꿈을 표현하는 것이 바로 LF입니다. 또한, CR은 '\r'로 커서를 맨 앞으로 이동시키는 역할을 합니다. 그렇다면 LF와 CRLF의 차이는 무엇일까요? 두 개는 모두 줄바꿈을 표현하는 것을 의미합니다. 그러나 운영 체제에 따라 줄바꿈을 나타내는 표준이 다릅니다. LF: Linu..
최근에 Github Copilot 무료 사용이 만료되었습니다. 다시 Github Edu로 어찌어찌 연장해보려 하다가 귀찮아져서, 이전에 AWS의 코드 도우미가 개인용으로 무료로 제공된다는 소식을 들어본적이 있어서 사용해보기로 결심했습니다. AWS CodeWhisperer https://docs.aws.amazon.com/codewhisperer/latest/userguide/whisper-setup-indv-devs.html Setting up CodeWhisperer for individual developers - CodeWhisperer In order to use CodeWhisperer, all individual developers must sign up through the procedure..
npm을 사용하거나 패키지들을 관리할 때 2.9.9, 0.4.1 이런 식의 세 부분으로 나뉜 버전을 보신 적이 있을 겁니다. 사실 이런 버전들은 임의로 정해진 것이 아니라, 규칙에 따라 정해진 것입니다. 이 규칙을 시맨틱 버저닝(Semantic Versioning)이라 합니다. 시맨틱 버저닝의 구성 시맨틱 버저닝은 Major, Minor, Patch의 3 부분으로 나뉘어 있습니다. Major.Minor.Patch 각각의 버전이 올라가는 기준은 다음과 같습니다. Major version: 하위 버전과 호환되지 않는 API 변경 시 Minor version: 하위 호환이 가능한 기능 추가 Patch version: 하위 호환이 가능한 버그 수정 그리고 다음과 같은 규칙이 있습니다. Major version이..