티스토리

시간기억
검색하기

블로그 홈

시간기억

time-memorizer.tistory.com/m

삶의 다양한 시간을 기록하여 기억하는 블로그입니다.

구독자
1
방명록 방문하기
공지 블로그의 목적 모두보기
728x90

주요 글 목록

  • FIFO, LRU, OPT? 페이지 교체 알고리즘 완벽 비교 정리! 운영체제에서 메모리 관리는 매우 중요한 개념이다.그중에서도 페이지 교체 알고리즘은 CPU가 필요한 페이지를 메모리에 올릴 때,기존 페이지를 어떤 기준으로 내릴지를 결정하는 핵심 로직이다.가장 많이 언급되는 알고리즘은 FIFO, LRU, OPT다.이 글에서는 이 세 가지 알고리즘의 개념, 특징, 차이점을 정리해본다.✅ FIFO (First In First Out)가장 먼저 메모리에 올라온 페이지를 가장 먼저 제거한다.선입선출 방식이라 구현은 간단하지만, Belady의 역설과 같이 비효율적인 결과를 초래할 수 있다.장점: 구현이 쉽다.단점: 최근에 자주 쓰이던 페이지가 제거될 수 있다.예시: 페이지 참조열이 [1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5] 일 때3프레임일 경우 부재 횟수는 .. 공감수 0 댓글수 0 2025. 5. 9.
  • 링커(Linker)와 로더(Loader)의 차이점 완전 정리! | 정보처리기사 기출 대비 개발자나 수험생이라면 한 번쯤은 들어봤을 링커(Linker)와 로더(Loader).둘 다 프로그램을 실행하기 전 단계를 담당하는 요소지만, 역할은 완전히 다르다.🔍 링커(Linker)란?링커는 여러 개의 오브젝트 파일(.obj, .o 등)을 하나의 실행 파일(.exe, .out 등)로 만들어주는 도구다.여기에는 함수나 변수의 참조를 실제 위치로 연결하는 작업이 포함된다.예를 들어, A 파일에서 B 함수가 호출되었는데, 이 함수가 다른 파일에 있다면링커가 해당 함수의 주소를 찾아 연결해준다.✔️ 역할 요약오브젝트 파일 연결심볼 결합 (함수, 변수 주소 할당)실행 파일 생성🔍 로더(Loader)란?로더는 링커가 만든 실행 파일을 메모리에 올려주는 역할을 한다.즉, 실제 프로그램 실행 준비를 담당하는 운영.. 공감수 1 댓글수 0 2025. 5. 8.
  • FCFS vs SJF 스케줄링 알고리즘 비교 – 운영체제 핵심 개념 정리 운영체제에서 프로세스를 관리할 때 가장 핵심적인 개념 중 하나가 바로 스케줄링이다.스케줄링이란 CPU가 어떤 프로세스를 먼저 실행할지 결정하는 정책을 의미한다.가장 기본적인 두 가지 방식은 **FCFS(First Come First Serve)**와 **SJF(Shortest Job First)**이다.각각 어떤 특징이 있고 어떤 상황에서 유리한지 비교해보자.1. FCFS (First Come First Serve)도착한 순서대로 프로세스를 처리하는 방식이다.일종의 FIFO(First-In First-Out) 방식이다.특징:구현이 간단하고 직관적이다.일관성이 있으며 공정해 보인다.단점:긴 작업이 먼저 오면 전체 대기 시간이 늘어날 수 있다.→ Convoy Effect(호송 효과) 발생예시:프로세스 A: .. 공감수 0 댓글수 0 2025. 5. 7.
  • 💡 컴퓨터 속도를 좌우하는 핵심! 캐시 메모리(Cache Memory)란? 캐시 메모리는 컴퓨터에서 CPU와 메인 메모리(RAM) 사이에 위치한 고속 임시 저장 장치입니다.이 장치는 CPU가 처리할 데이터를 보다 빠르게 접근할 수 있도록 도와줍니다.✅ 왜 캐시 메모리가 필요할까?현대의 CPU는 엄청나게 빠른 속도로 연산을 처리합니다.하지만 메인 메모리(RAM)는 상대적으로 느립니다.CPU가 직접 RAM에서 데이터를 가져올 경우, 속도 차이로 인해 전체 성능이 크게 떨어질 수 있습니다.이를 해결하기 위해 자주 사용하는 데이터를 CPU 근처의 고속 메모리인 캐시에 저장하여CPU가 더 빠르게 작업을 수행할 수 있도록 돕는 것이죠.📌 캐시 메모리의 동작 원리캐시 메모리는 ‘최근에 사용했거나 앞으로 자주 사용할 것으로 예상되는 데이터’를 저장합니다.이 과정을 다음과 같이 정리할 수 있.. 공감수 2 댓글수 1 2025. 5. 4.
  • 트랜잭션과 락(Lock), 개념부터 차이까지 한 번에 정리 데이터베이스를 설계하거나 다룰 때 반드시 알아야 할 개념이 바로 트랜잭션과 락이다.두 개념은 혼동되기 쉬우나, 각각의 역할과 목적은 명확히 다르다.✅ 트랜잭션(Transaction)이란?데이터베이스에서 하나의 논리적 작업 단위모두 성공하거나, 모두 실패해야 한다 (All or Nothing)4가지 특성 ACID를 만족해야 한다Atomicity(원자성): 전부 성공하거나 전부 실패Consistency(일관성): 작업 전후 데이터의 일관성 유지Isolation(고립성): 동시에 실행돼도 각 트랜잭션은 독립Durability(지속성): 완료된 트랜잭션은 영구 반영https://time-memorizer.tistory.com/272 ACID란? 트랜잭션의 4가지 특성 완벽 이해데이터베이스에서 트랜잭션(Trans.. 공감수 1 댓글수 0 2025. 5. 2.
  • 정규화란? 제1정규형부터 제3정규형까지 쉽게 정리 **정규화(Normalization)**란 데이터베이스에서 중복을 제거하고 논리적으로 데이터를 정리하는 과정이다.정규화는 관계형 데이터베이스 설계의 기본이며, 실무와 정보처리기사 시험 모두에서 필수 개념이다.✅ 정규화가 필요한 이유데이터 중복을 방지데이터 무결성을 유지테이블 구조를 단순화변경 이상(삽입, 삭제, 갱신 이상) 방지✅ 제1정규형 (1NF)정의: 모든 속성의 값이 **원자값(Atomic value)**이어야 한다.예시:잘못된 형태: 취미 = 독서, 여행올바른 형태: 취미 = 독서, 취미 = 여행핵심: 하나의 컬럼에 하나의 값만 존재해야 한다.✅ 제2정규형 (2NF)정의: 부분 함수 종속 제거조건: 1NF를 만족하면서, 기본키가 복합키인 경우, 기본키의 일부에만 종속된 속성은 분리해야 한다.예시.. 공감수 2 댓글수 0 2025. 5. 1.
  • ACID란? 트랜잭션의 4가지 특성 완벽 이해 데이터베이스에서 트랜잭션(Transaction)은 하나의 논리적 작업 단위를 의미한다.예를 들어, 은행 계좌 이체처럼 ‘출금 + 입금’이 동시에 일어나야 하는 작업이 트랜잭션이다.이 트랜잭션이 안전하게 처리되려면 ACID 네 가지 특성을 만족해야 한다.✅ 1. Atomicity (원자성)트랜잭션 내의 작업은 모두 성공하거나, 전부 실패해야 한다.중간에 하나라도 실패하면 전체 작업을 롤백해야 한다.📌 예시:A 계좌에서 10만 원 출금 + B 계좌에 10만 원 입금 → 둘 중 하나라도 실패하면 전체 취소✅ 2. Consistency (일관성)트랜잭션 전후에 데이터베이스의 무결성 제약 조건이 유지되어야 한다.모든 제약 조건을 만족하며, 유효한 상태로 전환되어야 한다.📌 예시:A 계좌와 B 계좌의 총합은 항.. 공감수 0 댓글수 0 2025. 5. 1.
  • 관계 대수와 관계 해석의 차이, SQL과 무슨 관련이 있을까? 데이터베이스에서 질의를 표현하는 방법은 크게 **관계 대수(Relational Algebra)**와관계 해석(Relational Calculus) 두 가지가 있다.둘 다 원하는 데이터를 추출하는 방법이지만, 표현 방식과 개념이 다르다.✅ 관계 대수란?관계 대수는 데이터를 어떻게 처리할지를 단계적으로 정의하는 방식이다.즉, 절차적 언어로 테이블 간의 연산 과정을 명시한다.예를 들어, 두 테이블을 조인하거나 조건을 걸어 필터링하는 작업이 모두 관계 대수 연산이다.📌 주요 연산σ(Selection): 조건에 맞는 튜플 선택 → σ(age > 20)(Student)π(Projection): 특정 속성 추출 → π(name, age)(Student)∪, ∩, −: 집합 연산×(카티션 프로덕트)⨝(조인)✅ 관계 .. 공감수 1 댓글수 0 2025. 5. 1.
  • Paging vs Segmentation – 메모리 관리 기법 완전 비교 운영체제는 한정된 메모리를 효율적으로 관리하기 위해 다양한 기법을 사용한다.그중 가장 대표적인 방식이 바로 **Paging(페이징)**과 **Segmentation(세그멘테이션)**이다.이 두 개념은 정보처리기사, NCS 필기, IT 면접에서도 자주 등장한다.✅ Paging이란?Paging은 메모리를 **고정된 크기의 페이지(Page)**로 나누는 방식이다.프로세스의 논리 주소 공간도 동일한 크기의 페이지로 나뉘며,물리 메모리는 프레임(Frame)이라는 동일한 크기의 블록으로 구성된다.📌 주요 특징고정 크기 블록 단위로 분할논리 주소 → 물리 주소 변환 시 페이지 테이블 사용외부 단편화 없음 (단, 내부 단편화 존재 가능)주소 계산이 단순하고 빠름📚 예시사용자의 프로그램이 16KB고, 페이지 크기가 .. 공감수 0 댓글수 0 2025. 4. 30.
  • Deadlock(교착 상태) 완전 정리 - 발생 조건과 해결 방법까지 운영체제를 공부하다 보면 반드시 마주치는 개념이 있다.바로 **Deadlock(교착 상태)**이다.프로세스 간 자원 공유로 인해 시스템 전체가 멈춰버리는 상황을 설명한다.✅ Deadlock(교착 상태)란?Deadlock은 둘 이상의 프로세스가 서로가 점유하고 있는 자원을 기다리면서,영원히 대기 상태에 빠지는 상황을 의미한다.이 상태에 빠지면 어떠한 프로세스도 작업을 진행할 수 없게 된다.✅ 실생활 예시로 이해하기프린터를 점유하고 있는 A 프로세스와, 스캐너를 점유하고 있는 B 프로세스를 생각해보자.A는 스캐너를 기다리고, B는 프린터를 기다리는 상황이라면,둘 다 서로의 자원을 기다리기만 하면서 아무 작업도 진행되지 않는다.이것이 바로 Deadlock이다.✅ 교착 상태 발생 조건 (4대 조건)Deadloc.. 공감수 1 댓글수 0 2025. 4. 29.
  • 운영체제 프로세스 상태 변화 완벽 정리 - Ready, Running, Blocked, Terminated 운영체제를 이해하는 데 있어 가장 기본이 되는 개념 중 하나가 바로 **프로세스 상태(Process States)**이다.프로세스는 단순히 프로그램을 실행하는 것을 넘어서, 운영체제에 의해 다양한 상태로 관리된다.✅ 프로세스란 무엇인가?프로세스(Process)란, 실행 중인 프로그램을 의미한다.운영체제는 수많은 프로세스를 동시에 관리하기 위해 각각의 프로세스 상태를 구분하고, 필요에 따라 전환시킨다.✅ 프로세스 상태(State) 종류New (생성 중)프로세스가 생성되고 있는 초기 상태이다.Ready (준비 상태)실행할 준비가 완료되었지만, CPU 할당을 기다리는 상태이다.Running (실행 상태)CPU를 할당받아 실제로 명령어를 실행하고 있는 상태이다.Blocked (대기 상태)입출력 작업이나 다른 이.. 공감수 1 댓글수 0 2025. 4. 27.
  • RAM vs ROM 완전 정리 - 메모리 차이와 역할 쉽게 이해하기 RAM과 ROM은 컴퓨터 시스템을 구성하는 가장 기본적인 메모리 장치이다.많은 초보 개발자와 수험생들이 이 둘을 헷갈리지만, 역할과 특성에서 명확한 차이가 존재한다.이번 글에서는 RAM과 ROM의 차이를 쉽게 정리해보자.✅ RAM (Random Access Memory)RAM은 컴퓨터의 주기억장치로, 프로그램을 실행할 때 데이터를 임시로 저장하는 역할을 한다.컴퓨터를 켜고 프로그램을 실행하면 필요한 데이터가 하드디스크에서 RAM으로 복사되고, CPU는 RAM에 저장된 데이터를 이용해 작업을 수행한다.📌 주요 특징휘발성(Volatile) 메모리: 전원을 끄면 저장된 데이터가 모두 사라진다.빠른 읽기/쓰기 속도: CPU가 빠르게 접근할 수 있도록 설계되어 있다.작업 공간: 실행 중인 프로그램과 그 데이터가.. 공감수 2 댓글수 0 2025. 4. 27.
  • 접근 제어 방식 완벽 비교! MAC, DAC, RBAC 차이 정리 접근 제어 방식은 보안 시스템에서 가장 핵심적인 개념이다.특히 정보처리기사, NCS 기반 IT 필기 시험, 보안 직무 면접 등에서도 자주 다뤄진다.이번 글에서는 가장 대표적인 세 가지 방식인 MAC, DAC, RBAC를 비교 정리한다.✅ MAC (Mandatory Access Control)MAC은 강제적 접근 제어 방식이다.시스템 관리자나 정책이 접근 권한을 정의하며, 일반 사용자는 권한을 변경할 수 없다.권한 설정 주체: 시스템 관리자변경 가능 여부: 사용자 변경 불가사용 예시: 군사기관, 정부기관, 고보안 시스템장점: 보안이 강력하다단점: 유연성이 낮다✅ DAC (Discretionary Access Control)DAC는 임의적 접근 제어 방식이다.데이터의 소유자가 접근 권한을 자유롭게 설정할 수.. 공감수 1 댓글수 0 2025. 4. 24.
  • 프로세스와 스레드의 차이, 개발자라면 꼭 알아야 할 CS 기초 개념 개발자라면 반드시 이해하고 넘어가야 할 개념 중 하나가 바로 ‘프로세스(Process)’와 ‘스레드(Thread)’의 차이다. 운영체제나 멀티태스킹, 병렬 처리 개념을 이해할 때 이 둘은 자주 등장하는 용어이다.✅ 프로세스란?프로세스는 실행 중인 하나의 프로그램을 의미한다.운영체제는 하나의 프로그램이 실행될 때 해당 프로그램을 프로세스 단위로 관리한다.각 프로세스는 독립적인 메모리 공간을 가진다.다른 프로세스 간에는 메모리와 자원을 공유하지 않는다.예: 크롬 브라우저 하나를 실행하면 그 자체가 하나의 프로세스✅ 스레드란?스레드는 프로세스 내에서 실행되는 작업 단위다.하나의 프로세스 내에 여러 개의 스레드가 존재할 수 있으며, 이를 멀티스레드라고 한다.동일한 프로세스 내에서는 메모리와 자원을 공유한다.자원.. 공감수 2 댓글수 0 2025. 4. 23.
  • 🖥️ 개발자 취업을 위한 CS 기초 공부 로드맵 총정리 💡 개발자 취업을 준비하거나 실무에 필요한 핵심 지식을 쌓고 싶은가?그렇다면 CS(Computer Science, 컴퓨터 과학) 기초 공부는 선택이 아니라 필수이다.이 글에서는 컴공 비전공자도 이해할 수 있도록, 개발자로서 반드시 알아야 할 CS 전반적인 기초 영역을 학습 로드맵 형태로 정리했다.📌 CS란 무엇인가?CS는 Computer Science의 약자로, 컴퓨터의 동작 원리, 프로그래밍의 기초, 그리고 소프트웨어의 구조적 사고를 다루는 학문이다.기초를 탄탄히 다지면 코딩테스트, 기술면접, 실무 문제 해결력까지 전반적으로 향상된다.✅ CS 핵심 학습 로드맵1. 자료구조(Data Structure)데이터를 효율적으로 저장하고 관리하는 구조에 대한 이론이다.코딩테스트에서 가장 자주 등장하며, 알고리.. 공감수 0 댓글수 0 2025. 4. 18.
  • 📌 트랜잭션의 4가지 특성, ACID란 무엇인가? 🔍 트랜잭션이란?트랜잭션(Transaction)이란 데이터베이스에서 하나의 논리적 작업 단위를 의미한다.즉, 여러 작업이 모여 하나의 '작업 덩어리'로 처리되어야 할 때 이를 트랜잭션이라고 한다.대표적인 예로 계좌 이체가 있다.A 계좌에서 출금하고 B 계좌로 입금하는 두 가지 작업은 반드시 함께 성공하거나, 함께 실패해야 한다.이 두 작업 중 하나라도 실패한다면 전체 작업은 의미를 잃게 되므로, 둘을 하나의 트랜잭션으로 처리하는 것이다.💡 트랜잭션의 필요성트랜잭션은 데이터베이스의 무결성(integrity)과 안정성(stability)을 보장하기 위해 사용된다.만약 트랜잭션이 없다면, 시스템 오류나 사용자 실수로 인해 데이터가 중간에 손상되거나 잘못된 상태로 저장될 수 있다.이러한 문제를 방지하기 위해.. 공감수 0 댓글수 0 2025. 4. 18.
  • ERD와 정규화(Normalization), 왜 항상 같이 언급될까? 데이터베이스를 설계할 때 가장 먼저 접하는 개념이 ERD(Entity Relationship Diagram)이다.하지만 ERD만 잘 그린다고 해서 효율적인 데이터베이스가 완성되는 것은 아니다.여기서 함께 고려해야 할 개념이 바로 정규화(Normalization)이다.✅ ERD란?ERD는 데이터베이스 안에서 어떤 **엔티티(Entity)**가 존재하는지,각 엔터티가 어떤 **속성(Attribute)**을 가지는지,그리고 엔터티 간에는 어떤 **관계(Relationship)**가 있는지를 도식화한 다이어그램이다.쉽게 말해, 데이터 구조를 시각적으로 표현하는 설계도라고 할 수 있다. 📌 예시학생(Student), 수강(Course), 교수(Professor)학생은 여러 과목을 수강하고, 교수는 여러 과목을 .. 공감수 0 댓글수 0 2025. 4. 18.
  • DFD vs UML 비교 정리 ⚔️ 개념 혼동 끝내기! 📌 DFD와 UML, 이름도 비슷하고 다이어그램도 그리는 방식이라 헷갈리기 쉬운 개념이지만,분석 관점, 사용하는 대상, 표현 방식 모두 다릅니다. 아래 표로 깔끔하게 비교해볼게요! 👇🔍 DFD vs UML 한눈에 비교항목DFD (Data Flow Diagram)UML (Unified Modeling Language)🎯 목적기능 중심 분석 (무엇을 하는가?)객체 중심 분석 (어떻게 동작하는가?)🔁 중심 요소프로세스, 데이터 흐름, 저장소, 외부 개체클래스, 객체, 시퀀스, 유스케이스 등📐 사용 시기시스템 분석 단계 (요구사항 정의)분석설계구현 전 단계까지 폭넓게📊 표현 방식흐름도 형태 (데이터 이동 중심)다양한 다이어그램 제공 (13종 이상)🧰 사용 예DFD 0레벨, 1레벨 구성클래스 다이어.. 공감수 1 댓글수 0 2025. 4. 16.
  • OSI 7계층 완벽 정리! 네트워크 개념 한 방에 끝내기 IT면접이나 정보처리기사 공부할 때자주 등장하는 키워드, OSI 7계층.하지만 단계도 많고 헷갈리기 쉬워요. 그래서 이 글 하나로 OSI 7계층, 한 방에 정리해드립니다.🧱 OSI 7계층이란?OSI는 Open Systems Interconnection의 약자예요.쉽게 말해, 네트워크 통신이 어떻게 이루어지는지 7단계로 나눈 모델이에요.이 모델은 각 단계별로 역할을 나눠서 서로 다른 시스템끼리 통신이 잘 되도록 도와주는 역할을 합니다.🔎 OSI 7계층 구조계층이름주요 역할 및 설명7계층응용 계층사용자와 가장 가까운 계층. 웹브라우저, 이메일 등6계층표현 계층데이터 암호화, 압축, 인코딩 등의 처리5계층세션 계층통신 연결 설정, 유지, 종료 (예: 로그인 상태 유지)4계층전송 계층포트 번호로 구분, 데이.. 공감수 0 댓글수 0 2025. 4. 15.
  • DNS와 IP의 차이, 초보자도 이해할 수 있게 쉽게 정리해봤습니다 인터넷을 사용하면서 한 번쯤 들어봤을 DNS와 IP 주소.막상 개념을 설명하라고 하면 헷갈리는 분들이 많습니다.이번 글에서는 이 두 개념을 명확하게 정리해볼게요.✅ DNS란?DNS(Domain Name System)는도메인 이름을 IP 주소로 바꿔주는 시스템입니다.예를 들어, 우리가 google.com을 입력하면 실제로는 142.250.190.78과 같은 IP 주소로 접속이 이루어지는데,이 변환을 담당하는 것이 바로 DNS입니다.쉽게 말해,DNS = 인터넷의 전화번호부우리는 기억하기 쉬운 이름(도메인)을 쓰고,컴퓨터는 숫자 주소(IP 주소)로 통신합니다.✅ IP란?IP(Internet Protocol Address)는인터넷에 연결된 각 장치를 식별하기 위한 고유한 주소입니다.일종의 집 주소 같은 개념이에.. 공감수 0 댓글수 0 2025. 4. 15.
  • 동기와 비동기의 차이, 개발자라면 꼭 알아야 할 기본 개념! 개발을 하다 보면 ‘동기(Synchronous)’와 ‘비동기(Asynchronous)’라는 말을 자주 듣게 된다.특히 프론트엔드와 백엔드 간의 통신, API 호출, 파일 읽기 등 다양한 상황에서 이 개념은 매우 중요하다.하지만 초보자라면 헷갈리기 쉬운 개념이기도 하다.이번 글에서는 동기와 비동기의 차이, 실생활 예시, 그리고 개발에서의 사용 사례까지 자세히 정리해보겠다.✅ 동기(Synchronous)란?작업이 순차적으로 처리됨앞 작업이 끝나야 다음 작업이 시작됨결과가 나올 때까지 기다림처리가 예측 가능하지만 느릴 수 있음예시:ATM에서 돈을 인출할 때 → 앞사람이 끝날 때까지 기다림코드 예제 (JavaScript):function task1() { console.log("작업 1");}function .. 공감수 2 댓글수 0 2025. 4. 14.
  • Server, DB, DBMS의 차이 – 제대로 알고 가자! 개발을 공부하면서 자주 듣게 되는 단어가 있다. 바로 **서버(Server), 데이터베이스(DB), 데이터베이스 관리 시스템(DBMS)**다.처음에는 비슷하게 느껴지기도 하고, 용어 자체가 어려워서 헷갈리는 경우가 많다.하지만 이 개념은 개발자뿐만 아니라 IT 지식을 갖추고 싶은 누구에게나 꼭 필요한 기초 지식이다.이 글에서는 이 세 가지 개념이 무엇인지, 어떻게 다른지를 쉽고 자세하게 정리해본다.✅ Server(서버)란?서버는 클라이언트(사용자)의 요청을 받아 처리한 뒤, 그 결과를 다시 전달해주는 컴퓨터 또는 시스템을 말한다.즉, 서비스를 제공하는 주체라고 이해하면 된다.(클라이언트의 요청을 처리하고, 데이터를 전달하는 컴퓨터 시스템 또는 소프트웨어.)예시:사용자가 웹사이트에 접속하면, 브라우저는 서.. 공감수 1 댓글수 0 2025. 4. 14.
  • JWT란 무엇인가? JWT(Json Web Token)는 로그인된 사용자의 정보를 담아서버와 클라이언트가 주고받는 토큰 기반 인증 방식이다.✅ 왜 JWT를 사용하는가?기존에는 세션(Session)을 사용해서 인증 상태를 유지했다.하지만 세션은 서버에 상태를 저장하기 때문에,사용자가 많아지면 서버의 부하도 함께 늘어난다.JWT는 서버가 상태를 기억하지 않아도 된다.사용자 정보를 토큰에 직접 담아서 클라이언트에게 전달하고,이 토큰을 가지고 서버에 요청하면서버는 토큰만으로 사용자를 식별할 수 있다.✅ JWT 구조는 어떻게 생겼을까?JWT는 총 3개의 부분으로 구성된다.Header (헤더): 토큰 타입과 서명 알고리즘 정보Payload (페이로드): 사용자 정보(예: id, role), 만료 시간 등Signature (서명): 위.. 공감수 1 댓글수 0 2025. 4. 14.
  • GET과 POST의 차이, 완벽하게 정리해보자 웹 개발을 하다 보면 반드시 만나게 되는 HTTP 메서드 중 두 가지가 바로 GET과 POST이다.많은 사람들이 GET은 ‘조회’, POST는 ‘등록’이라고만 알고 있지만,사실 이 둘의 차이는 훨씬 더 명확하고 다양하다.이번 글에서는 GET과 POST의 정의, 동작 방식, 보안 차이, 예시까지 함께 정리해본다.1. GET: 데이터를 요청하는 메서드GET은 서버에 특정 데이터를 요청할 때 사용하는 방식이다.주로 검색하거나, 특정 페이지를 열거나, 데이터를 불러올 때 사용된다.데이터를 URL에 실어서 전송하는 방식이다.예를 들어 https://example.com/search?query=apple 같은 형식으로 요청이 전송된다.브라우저 주소창에 그대로 남기 때문에 누가 봐도 어떤 데이터를 보냈는지 알 수 있.. 공감수 0 댓글수 0 2025. 4. 13.
  • REST, REST API, RESTful – 이 세 가지의 차이, 확실하게 이해하자 개발을 하다 보면 정말 자주 접하게 되는 용어들이 있다.그중에서도 REST, REST API, RESTful은 가장 많이 언급되는 개념 중 하나다.하지만 단어가 비슷해서 헷갈리는 경우가 많다.이번 글에서는 REST와 REST API, 그리고 RESTful의 개념과 차이점을 예제와 함께 쉽게 설명해보겠다. ✅ REST란?REST는 "Representational State Transfer"의 줄임말로,웹에서 자원(리소스)에 접근하는 구조적인 방법을 정의한 아키텍처 스타일이다.REST의 핵심은 다음과 같다:**URI(자원 식별자)**를 통해 자원을 명확하게 식별**HTTP 메서드(GET, POST, PUT, DELETE 등)**를 통해 자원을 조작무상태성(Stateless) 유지 → 요청 간에 서버가 클라이.. 공감수 0 댓글수 0 2025. 4. 13.
  • API란 무엇인가? 프론트와 백엔드는 어떻게 통신할까? API(Application Programming Interface)는 서로 다른 소프트웨어 시스템이 데이터를 주고받기 위해 사용하는 통신 규약이다.웹 개발에서는 프론트엔드(화면)와 백엔드(서버)가 정보를 주고받을 때 API를 통해 소통한다.✅ API란?API는 프로그램 간 상호작용을 위한 규칙 또는 인터페이스다.쉽게 말해, 두 프로그램이 정해진 형식으로 데이터를 주고받는 방법이다.예를 들어 날씨 정보를 보여주는 앱이 있다고 하면, 해당 앱은 기상청 서버(API)를 통해 데이터를 받아와서 사용자에게 보여주는 것이다.✅ 프론트엔드와 백엔드는 어떻게 통신할까?프론트엔드: 사용자에게 보이는 웹 화면을 구성하고, 사용자 입력을 수집한다.백엔드: 데이터베이스와 서버 로직을 담당하며, 프론트에서 요청한 데이터를 처.. 공감수 1 댓글수 0 2025. 4. 13.
  • 쿠키와 세션의 차이점 완벽 정리 | 웹 개발 필수 지식 쿠키(Cookie)와 세션(Session)은 웹 개발에서 사용자 상태 정보를 유지할 때 사용하는 핵심 기술이다.로그인 유지, 장바구니 저장, 사용자 인증 등 다양한 기능에서 사용되며, 차이점을 명확히 이해해야 한다.✅ 쿠키란?쿠키는 사용자의 브라우저(클라이언트)에 저장되는 작은 데이터 파일이다.서버가 쿠키를 생성하면, 클라이언트는 해당 쿠키를 브라우저에 저장하고, 이후 요청 시마다 함께 전송한다.특징저장 위치: 클라이언트(브라우저)유지 시간: 개발자가 설정한 만료 기간까지 유지됨사용 예시: 로그인 유지, 자동 로그인, 장바구니 저장 등보안: 사용자가 쿠키 파일에 직접 접근할 수 있어 보안에 취약할 수 있음✅ 세션이란?세션은 서버에서 사용자 정보를 저장하는 방식이다.사용자마다 고유한 세션 ID가 부여되고,.. 공감수 0 댓글수 0 2025. 4. 13.
  • HTTP와 HTTPS 차이점 완벽 정리 | 웹 개발자와 사용자 모두 알아야 할 필수 지식 HTTP와 HTTPS 차이점은 웹 개발자뿐 아니라 일반 사용자도 반드시 이해해야 할 개념이다.이 글에서는 HTTP와 HTTPS의 정의부터 보안성, SEO 영향까지 핵심을 정리한다.✅ HTTP란 무엇인가?HTTP(HyperText Transfer Protocol)는 웹 브라우저와 웹 서버가 데이터를 주고받을 때 사용하는 대표적인 통신 프로토콜이다.URL 앞에 http://가 붙는 경우, 암호화되지 않은 연결을 사용하고 있음을 의미한다.HTTP는 데이터를 평문(Plain Text) 형태로 전송하기 때문에, 중간에 누군가가 정보를 가로채면 그대로 노출될 수 있다.로그인, 결제, 개인정보 입력 같은 페이지에서는 매우 위험하다.✅ HTTPS란 무엇인가?HTTPS(HyperText Transfer Protocol .. 공감수 1 댓글수 0 2025. 4. 12.
  • 개발자를 위한 필수 기술 스택 간단정리(프론트엔드/백엔드) 개발자로 취업하기 위해서는 다양한 기술을 익히고 활용할 수 있어야 한다. 각 기술은 특정 목적을 가지고 있으며, 어떤 상황에서 사용되는지 이해하는 것이 중요하다. 여기서는 백엔드, 프론트엔드, 데이터베이스, 인프라/기타 기술로 구분하여 정리한다.(chatGPT의 도움을 받아 정리한 내용)1. 백엔드 기술백엔드는 클라이언트 요청을 처리하고 데이터베이스와 통신하는 역할을 한다.1.1 백엔드 프로그래밍 언어Java: 객체 지향 프로그래밍 언어로, 대규모 웹 애플리케이션 개발에 많이 사용된다. Spring Framework와 함께 사용되며, 안정성과 확장성이 뛰어나다.1.2 백엔드 프레임워크Spring Framework: Java 기반의 대표적인 웹 프레임워크로, 의존성 주입(DI), AOP 등의 기능을 제공하.. 공감수 0 댓글수 0 2025. 2. 27.
  • DAUM 주소 API 사용 쇼핑몰 프로젝트를 진행중에 배송지 정보를 입력해야 하는 부분에서 주소 api를 사용해야 하는 부분이 발생했다.처음에는 카카오 주소 api를 사용하려면 api key를 발급받아야 하는지 알았는데, 구글 검색을 해보니 아래와 같이 Daum 우편번호 서비스를 무료로 간단하게 이용할 수 있었다.  https://postcode.map.daum.net/guide#usage Daum 우편번호 서비스우편번호 검색과 도로명 주소 입력 기능을 너무 간단하게 적용할 수 있는 방법. Daum 우편번호 서비스를 이용해보세요. 어느 사이트에서나 무료로 제약없이 사용 가능하답니다.postcode.map.daum.net  🚚 배송지 정보 주문자 정보와 동일 .. 공감수 0 댓글수 0 2025. 2. 6.
    728x90
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.