분류 전체보기

목표CI/CD공부CI/CD란?CI/CD는 Continuous Integration와 Continuous Delivery/Continuous Deployment의 약자이다. 한국어로 풀어 쓰자면, "지속적 통합"/"지속적 배포"이다.이렇게만 봐서는 이해하기 힘든 말이다. 조금 더 자세하게 알아보자.CI지속적 통합이 도대체 뭘까?단순하게 개발자들이 코드를 지속적으로 통합하는 것이다.여기서 끝이아니라 통합 후 자동으로 테스트를 하는 것까지 포함이다.이렇게 했을 때의 장점은 통합시에 발생하는 문제를 조기에 발견할 수 있게 된다.예를 들어 유닛 테스트 코드를 작성해두었으면, 코드 통합 후 자동으로 빌드가 되고, 해당 테스트 파일로 자동으로 테스트가 된다. 이 결과로 개발자에게 피드백이 가는 것이다.다른 누군가에게..
목표객체지향 프로그래밍(OOP) 공부공부객체지향 프로그래밍이란?학교 수업때 객체지향프로그래밍 이라는 강의를 들었다. 이때는 분명 공부를 하면서 이해도 잘 했었고, 추상화, 상속, 다형성, 캡슐화 라는 속성이 있다는 것까지도 잘 기억이 난다.그렇지만 정확한 정의를 내려보라고 한다면 잘 모르겠다.객체지향 프로그래밍이란, 컴퓨터 프로그램을 명령어의 목록으로 보는 것이 아닌, "객체"들의 모임으로 파악하고자 하는 것이다. 이게 대체 무슨 말이냐?평소에 프로그래밍을 하듯이 필요한 정보들을 길게 나열하면서 프로그래밍을 하는 것이 아닌, 필요한 부분들을 객체로 나누어 그 객체들 간의 상호작용을 통해 프로그램을 완성하는 것이다.방금 설명한 문장에서 "필요한 정보들을 길게 나열하면서 프로그래밍을 하는 것", 이것은 절차..
목표gpt stream 공부공부이전 글에 이어서, 캐릭터의 대사를 뽑아주는 경우에는"조금 더 생동감을 높이기 위해 GPT가 응답을 주는대로 받아오는 것이 좋지 않을까"해서 고민하게 되었다.찾아보니 GPT에는 스트리밍이 기본적으로 가능하더라. openai.ChatCompletion.create( model=GPT_MODEL_ENGINE, messages=messages, stream=True, )단순하게 맨 밑에 stream=True만 해주면 스트리밍이 가능한데,이렇게 하면 GPT의 응답이 generator 형태로 제공되어, 반복해서 값을 넘겨줘야 한다.여기에 웹 소켓으로 실시간 전송을 해준다면, 내가 원하는대로 GPT의 응답이 올 때마다 값을 받아서, 클라이언트가 아무 화..
목표react hook공부react를 공부하던 도중, Hook 이라는 개념이 등장했다.이 Hook이란 뭘까?컴포넌트컴포넌트에는 함수 컴포넌트와 클래스 컴포넌트가 있다.클래스 컴포넌트의 경우state 정의setState() 함수를 통한 state 업데이트Lifecycle methods 제공같은 것을 지원하지만함수 컴포넌트의 경우state 사용 불가Lifecycle에 따른 기능 구현 불가정도의 차이가 존재한다.Hook?클래스 컴포넌트와 함수 컴포넌트의 차이를 봤을 때, 함수 컴포넌트에서는 왜 사용을 못하지? 싶은 것들이 많다.react 버전16 이후에 나온 Hook에선 함수 컴포넌트를 클래스 컴포넌트처럼 사용할 수 있도록 해준다.원하는 시점에 정해진 함수를 실행할 수 있도록 만든 것이고,이러한 함수들을 합쳐..
목표OAuth 공부OAuth2.0인증 및 권한 부여 프레임워크이다.OAuth2.0은 third-party 애플리케이션이 사용자의 리소스에 접근하기 위한 절차를 정의하고 서비스 제공자의 API를 사용할 수 있는 권한을 부여한다.말이 어렵지만 쉽게 예시를 들어 주자면, 간편 로그인 기능을 제공한다고 생각하면 된다.구성1. 리소스 소유자(Resource Owner)-> 보호된 리소스(사용자 데이터)에 접근할 권한을 가진 사용자이다.쉽게 말해 third-party 애플리케이션에 소셜 로그인 인증을 하는 사용자를 의미한다.2. 클라이언트(Client)-> 리소스 소유자의 데이터에 접근하기 위해 OAuth 인증을 사용하는 애플리케이션웹 서버, 모바일 앱, 데스크톱 애플리케이션 등이 될 수 있다.3. 리소스 서버(R..
목표JWT 정리  진행JWT는 Json Web Token으로, Json 객체에 인증에 필요한 정보를 담아 비밀/공개/개인 키로 서명한 토큰이다.  JWT의 구조JWT는 세 부분으로 구성된다.```HEADER.PAYLOAD.SIGNATURE``` 1. Header(헤더)헤더는 토큰의 타입과 서명 알고리즘의 정보를 표시한다.```json{  "alg": "HS256",  "typ": "JWT"}```- alg : 토큰 서명 알고리즘  - 토큰의 알고리즘은 RS256, HS256, PS256이 있고, Auth0 공식문서에서 자세히 다루고 있다.    - typ : 토큰의 타입2. Payload(페이로드)토큰에 포함된 청구(claim) 정보를 담고 있다. 이는 사용자 정보나 토큰의 유효 기간 등을 포함할 수 있..
카르노도
'분류 전체보기' 카테고리의 글 목록