자료구조, 시간 복잡도, 공간 복잡도 정리 알고리즘 효율성 분석과 주요 자료구조 총정리 1. 시간 복잡도와 공간 복잡도 설명 시간복잡도 (Time Complexity) 시간복잡도는 알고리즘이 실행되는 데 필요한 시간을 측정하는 방법으로, 입력 크기에 따른 연산 횟수를 나타냅니다. 점근적 표기법 표기법 의미 설명 ..
전체 글
IT / 보안 / 네트워크 / 개발 공부
Dockerfile 지시어 FROM FROM [:] 모든 Dockerfile은 FROM 지시어로 시작해야 합니다. 베이스 이미지를 지정하는 역할을 합니다. 태그를 지정하지 않으면 자동으로 'latest' 태그가 사용됩니다. 프로덕션 환경에서는 안정성을 위해 반드시 특정 버전을 지정하는 것이 좋습니다. ENTRYPOI..

컨테이너 라이프사이클 이해하기 컨테이너의 라이프사이클은 컨테이너 기반 애플리케이션의 개발, 배포, 운영을 이해하는 데 중요한 개념입니다. 이 글에서는 일반적인 컨테이너 라이프사이클의 주요 단계를 살펴보겠습니다. 1. 생성 (Create) 설명: 도커 이미지를 기반으로 새로운 컨테이너를 생성합니다. 상태: 이 단계에서는 컨테이너가 생성되지만 아직 실행되지는 않습니다. 명령어: docker create 2. 실행 (Run) 설명: 생성된 컨테이너를 시작하고 실행합니다. 상태:..

본 글에서는 최근 진행한 이력서 포트폴리오 프로젝트의 Admin 페이지 구축 경험을 공유하고자 합니다. 특히 상태 관리와 보안 강화에 초점을 맞추어, Zustand를 이용한 상태 관리, Flask 미들웨어를 통한 토큰 검증 과정, 그리고 Refresh Token 구현에 대해 상세히 설명하겠습니다.1. 상태 관리 라이브러리 선택: Zustand프로젝트에서 상태 관리 라이브러리로 Zustand를 선택한 이유는 다음과 같습니다: 간결성과 사용 편의성: Zustand는 API가 간단하고 직관적이어서 학습 곡선이 낮습니다. 보일러플레이트 코드가 적어 빠르게 구현할 수 있습니다. 성능: 작은 번들 크기로 앱의 성능에 미치는 영향이 적습니다. 불필요한 리렌더링을 최소화하여 효율적입니다. Redux 대비 장점: Red..