웹 개발은 크게 프론트엔드(클라이언트 측)와 백엔드(서버 측) 두가지로 나뉘어져 있다. 프론트엔드는 사용자 인터페이스와 사용자 경험을 개발하고, 백엔드는 네트워크 관리와 데이터 처리를 담당한다. 고객(클라이언트)에게 사이트 개발을 의뢰받는다. 이렇게 개발 의뢰를 접수한
라이브러리는 개발 편의를 위한 도구의 모음이다. 이와 자주 등장하는 용어인 프레임워크는, 라이브러리보다 더 큰 개념과 구조를 갖고있다. 라이브러리는 개발자가 더 나은 개발을 위해 도움을 주는 공구의 느낌이고, 프레임워크는 개발자가 좋은 환경에서의 개발을 위한 공장 자체
JSON은 JavaScript Object Notation의 약자로, 데이터를 표현하기 위한 일반적으로 사용되는 경량의 데이터 교환 형식이다. JSON은 문자열 기반의 데이터 포맷으로, 사람과 기계 모두가 이해하기 쉬우며, 다양한 프로그래밍 언어와 플랫폼에서 지원된다.
동기(Synchronous)와 비동기(Asynchronous)는 프로그래밍에서 코드의 실행 방식을 나타내는 두 가지 접근 방식이다. 이 두 용어는 주로 프로그램의 동작 방식과 관련하여 사용된다. 웹 개발에서는 주로 네트워크를 통해 서버에 접속하거나 데이터를 가져올 때
웹에서 동기와 비동기는 주로 네트워크 통신, 데이터 요청 및 처리, 사용자 인터페이스(UI) 업데이트 등의 다양한 상황에서 사용된다. 아래 예시는 웹에서 네트워크 통신과 사용하는 간단한 비동기 예제이다.js에서 제공하는 fetch() 함수는 웹 API를 사용하여 네트워
공식 문서(Official Documentation)는 프로그래밍과 코딩 공부를 할 때 매우 중요한 자원이다.정확하고 신뢰할 수 있는 정보공식 문서는 해당 기술, 언어, 프레임워크의 개발자나 팀에 의해 작성되었기 때문에 정확하고 신뢰할 수 있는 정보를 제공한다. 커뮤니
싱글톤 (Singleton)오직 하나의 인스턴스만을 생성하도록 디자인된 객체 또는 클래스이다. 이를 통해 전역적으로 접근 가능한 단일 인스턴스를 생성하여 리소스를 공유하거나 중복 생성을 방지하는 데 유용하다.메모이제이션이전에 계산한 값을 캐싱하여 동일한 계산이 반복되는
react를 비롯한 웹 프로그래밍 개발에서 주로 사용하는 언어들이다. Service Worker API 애플리케이션에서 백그라운드 작업을 수행할 수 있는 브라우저 API이다. 웹 페이지와 별도로 동작하며, 웹 페이지가 닫히거나 새로고침되어도 계속해서 실행될 수 있다
UUID는 "Universally Unique Identifier"의 약자로, 범용 고유 식별자를 나타낸다. UUID는 전 세계에서 유일한 값을 생성하기 위해 사용되며, 주로 컴퓨터 시스템에서 개체를 고유하게 식별하기 위해 사용된다.UUID는 128비트의 숫자로 구성되
네트워크 통신 등에서 재시도를 할 때 사용되는 알고리즘으로, 일정한 지연 시간 간격을 기반으로 재시도를 수행하는 방식이다. 이 알고리즘은 네트워크 요청이 실패할 경우 네트워크 상태를 고려하여 일시적인 문제를 해결하고, 과도한 리소스 사용을 방지하는데 유용하다.지수 백오
Fake API는 실제 데이터와 유사한 형식으로 동작하지만 실제 데이터를 반환하지 않고 가상의 더미데이터를 반환하는 API이다. 이러한 가짜 API는 주로 테스트, 개발 또는 프로토 타이핑 목적으로 사용된다. 여러 가지 상황에서 실제 API를 기다릴 필요 없이 가짜 데
MPA (Multi-Page Application) MPA는 다중 페이지 애플리케이션을 뜻한다. MPA는 웹 애플리케이션의 전통적인 구성 방식으로, 각각의 화면이나 페이지가 독립적인 구조로 이루어져 있다. 각 페이지는 서로 다른 URL을 가지며, 각각의 페이지는 별개의
TCP / IP 프로토콜 TCP/IP 프로토콜은 통신의 핵심 원칙을 구성하는 중요한 개념이다 IP 프로토콜은 데이터의 전송 경로를 관리하는 역할을 하며, 데이터의 신뢰성을 보장하기 위해 데이터 전송 방식을 조율하는 TCP 프로토콜과 함께 묶여 있는 개념이다. TCP/
데이터베이스(Database) 데이터베이스(DB)는 체계적으로 구성된 데이터의 집합으로, 데이터를 효율적으로 저장, 관리하고 검색, 갱신, 삭제할 수 있는 기능을 제공한다. 여기서 데이터는 이 세상에 존재하는 모든 정보를 가리키며, 그 어떠한 것도 데이터가 될 수 있다
순수함수 순수함수란 입력값과 출력값의 형태가 동일한 구조인 함수를 뜻한다. 즉, 함수 내부에서 지역변수 또는 전역변수를 수정하지 않고 예측 가능하도록 동작해야 한다. 예시는 아래와 같다. 불순함수 순수함수의 규칙을 벗어난 함수를 뜻한다. 아래와 같이 외부의 변수를 변
사용자 인증 사용자 인증은 주로 사용자를 식별하고, 서비스를 제공하는 서버에 사용자가 입력한 정보를 저장하여 인증하는 과정을 뜻한다. 이러한 인증 과정은 일반적으로 아이디와 비밀번호를 사용하거나, 소셜 미디어 로그인을 통해 이루어진다. 또한, OAuth라는 표준을 통해
Authentication 는 '인증' 이라는 뜻이고, Authorization는 '인가' 라는 뜻이다. 얼핏 보면 비슷해 보이는 두 뜻이지만, 프로그래밍 관점에서 보면 다른 역할을 한다. 이를 자세히 살펴보자.
파비콘(Favicon)은 웹사이트를 대표하는 작은 아이콘이다. 이 아이콘은 웹 브라우저 상의 여러 위치에 표시되어 사용자에게 웹페이지를 식별하는 데 도움을 준다. 주로 브라우저의 탭창 또는 즐겨찾기 메뉴에서 볼 수 있으며, 위 사진은 벨로그의 파비콘을 확대한 것이다.
우리는 일상에서 웹서핑을 하면서 URI와 URL 등등에 대해서 들어본 적 있을 것이다. 하지만 이 둘의 자세한 차이는 정확히 무엇일까? URL(Uniform Resource Locator)과 URI(Uniform Resource Identifier)는 웹에서 리소스를
HTTP(Hypertext Transfer Protocol)는 웹 서버와 웹 클라이언트 간에 데이터를 주고받기 위해 사용하는 통신 프로토콜로, TCP/IP 프로토콜 위에서 동작한다. HTTP는 하이퍼텍스트뿐 아니라 이미지, 음성, 동영상, Javascript, PDF
3xx - Redirection 주로 완전한 동작을 위해 추가 동작이 필요한 경우 사용된다. 300 Multiple Choice 요청에 대해서 하나 이상의 응답이 가능하다. 사용자 에이전트 또는 사용자는 그중에 하나를 반드시 선택해야 합니다. 응답 중 하나를 선택하는
서버 에러 응답 500 Internal Server Error 서버가 처리 방법을 모르는 상황이 발생했습니다. 서버는 아직 처리 방법을 알 수 없습니다. 501 Not Implemented 요청 방법은 서버에서 지원되지 않으므로 처리할 수 없습니다. 서버가 지원해야
뷰포트(Viewport) 뷰포트는 웹 페이지에서 사용자가 볼 수 있는 영역이다. 뷰포트는 모바일, 태블릿, 데스크톱 등 웹 브라우저가 동작하는 장치의 화면 크기가 각각 달라서 생긴 개념이다. 웹 페이지가 어떻게 표시되는지와 관련이 있으며, 반응형 웹 디자인 및 모바일
소프트웨어 개발방법론이란 소프트웨어 프로그램을 체계적으로 관리하고 개발하기 위한 절차 및 가이드라인을 제공하는 원칙을 뜻한다. 여러 가지 소프트웨어 개발 방법론이 존재하며, 각 방법론은 특정한 목적과 환경에 맞게 선택되어 적용된다. 소프트웨어 개발 방법론에는 여러가지
쿠키 (Cookie) HTTP 쿠키(웹 쿠키, 브라우저 쿠키)는 서버가 사용자의 웹 브라우저에 전송하는 작은 데이터 조각이다. 브라우저는 그 데이터 조각들을 저장해 놓았다가, 동일한 서버에 재 요청 시 저장된 데이터를 함께 전송한다. 쿠키는 두 요청이 동일한 브라우저에
쿠키의 종류 세션 쿠키(Session Cookies) 브라우저를 닫을 때 자동으로 삭제되는 쿠키이다. 주로 사용자의 세션을 유지하는 데 사용된다. 영구 쿠키(Persistent Cookies) 만료 시간이 설정되어 있어 브라우저를 닫아도 삭제되지 않고, 설정된 만료