1. 개요웹 애플리케이션이나 네트워크 통신 시스템을 설계할 때 "Stateless"와 "Stateful"이라는 개념이 등장합니다. 본 글에서는 Stateless와 Stateful의 개념, 장단점, 그리고 상태 연결 방식에 대해 설명합니다. 2. Stateful(상태유지)란?Stateful(상태 유지) 시스템은 클라이언트의 상태를 서버에서 유지하며, 연속적인 요청 간의 문맥을 기억할 수 있습니다.즉, 클라이언트가 서버에 요청할 때마다 이전 요청의 데이터를 유지한 채로 응답을 처리할 수 있습니다. Stateful 예시Stateful - 상태 유지고객: 이 노트북 얼마인가요?점원: 100만 원입니다. (노트북 상태 유지)고객: 2개 구매하겠습니다.점원: 200만원 입니다. 신용카드, 현금 중에 어떤 걸로 구매..
자바스크립트는 과거 간단한 웹 페이지에 스크립트를 추가하는 용도로 시작되었지만, 점차 대규모 웹 애플리케이션 개발로 확장되었습니다.이 과정에서 코드를 체계적으로 관리하기 위해 등장한 것이 모듈과 모듈 시스템입니다.하지만, 이렇게 나뉜 모듈들은 브라우저와 웹 서버 간의 과도한 HTTP 요청을 유발해 성능 저하를 가져오는 문제를 안고 있었습니다.이 문제를 해결하기 위해 등장한 것이 바로 모듈 번들러(Module Bundler)입니다.이 글에서는 모듈, 모듈 시스템, 그리고 이를 효과적으로 관리하기 위한 Webpack을 통해 번들링 과정을 알아보겠습니다. 모듈 시스템자바스크립트는 과거 간단한 웹페이지에 스크립트를 추가하는 용도로 시작했지만, 점차 복잡하고 대규모 웹 애플리케이션으로 확장되면서 코드 파일을 여..
DOMHTML 문서는 브라우저에 의해 파싱되어, 각 요소를 자바스크립트 객체로 변환한 DOM(Document Object Model) 트리 형태로 브라우저에 저장됩니다.이 DOM 트리는 브라우저의 렌더링 엔진에 의해 관리되며, 이를 기반으로 웹 페이지가 렌더링됩니다. 가상 돔(Virtual DOM)이 왜 등장했는가?가상 DOM의 등장 배경을 이해하기 위해서는 CSR(Client Side Rendering)과 SSR(Server Side Rendering)이라는 렌더링 방식을 먼저 이해해야 합니다. CSR vs SSRSSR (Server Side Rendering) 사용자의 요청에 따라, 웹(프론트) 서버가 최종 완성된 HTML을 생성하여 클라이언트에 전송합니다.각 페이지 요청마다 서버에서 HTML을 생성..
Arduino IDE에서 VS code로 이주하는 이유아두이노 IDE의 한계 때문에 코드 자동완성 부족, UI 가독성 문제, 다중 프로젝트 관리 기능 부재로 인해, 더 직관적이고 강력한 VS Code로 개발 환경을 옮기기로 결정했습니다. Platform IO란?PlatformIO는 VS Code와 통합되어 임베디드 시스템 및 마이크로컨트롤러 개발을 더욱 강력하고 효율적으로 만들어주는 크로스 플랫폼 개발 환경입니다.특징PlatformIO는 다양한 마이크로컨트롤러 보드를 지원합니다.- Arduino Uno, ESP32, ESP8266, STM32, RP2040 등 수백 개의 보드 지원- 다중 보드 프로젝트 가능 ❓ PlatformIO만으로 Arduino IDE 없이 아두이노 개발이 가능한 이유!Arduino..
2024의 목표라는 목표를 세우고 시작했던 2024년이었네요. 한 해를 돌아보면서 했던 활동들을 정리하고, 감정을 공유하는 시간을 가져볼까 합니다. WAG첫 프로젝트와의 비교 : logic lab2023.07.16 전역이후 개발동아리 WAP에서 Logic Lab이라는 IQ문제 풀이/공유 사이트를 프로젝트로 진행했었습니다. 초보자 3명이서 쌩 HTML, CSS, JS 로만 이용해서 개발을 했었습니다. 제약 : 웹 프론트 개발에 활용가능한 라이브러리의 존재와 사용 이유조차 몰랐던 상태협업의 어려움 : Git과 같은 협업 도구도 어렵다는 이유로 사용하지 못했음 WAG : 양세찬 게임을 웹으로2024 1학기에는 작년과 달리 협업도 제대로 해보고, 개발적으로도 더 성장하고 싶다는 마음이 생겼습니다. 이런 마음으..
1. 문제https://www.acmicpc.net/problem/11501 2. 풀이과정😢문제를 보자마자 생각이 든 풀이(시간초과)1. 날 별 주가 배열에서 최댓값을 찾는다.. 2. 최댓값보다 앞에 위치하면서 작은 모든 값을 배열에서 제거 시킨다. 3. 다시 1번으로 돌아가 다음 최댓값을 찾는다. 위 로직을 배열이 빌때까지 반복최댓값을 계속 다시 찾는 과정에서 문제가 시간초과가 난 것 같다. 😃 정답 로직배열을 역으로 순회하면 그냥 뒤에서 부터 최댓값을 구한다. 순회 중에 현재까지의 가장 비싼 주가가 남는다!이 가격보다 비싸게 파는 날를 만나기 전까지는 모두 현재까지의 최대 가격으로 팔아주면 최고 익절이다. 최적화 로직:최대 주가 찾기: 뒤에서부터 현재까지의 주가 중 가장 비싼 날을 찾는다. 이익 ..