전체 글(94)
-
싱글 페이지 애플리케이션(SPA)과 클라이언트 사이드 렌더링(CSR)
클라이언트 사이드 렌더링, 일명 CSR이란? 지금까지는 서버에서 HTML을 주는 대로 렌더링 했지만 자바스크립트로 할 수 있는 게 많아지자, 개발자들은 산에 올라보기로 한다. 서버에서는 최소한의 HTML을 한 번만 받고, 나머지 화면을 전부 자바스크립트로만 그리기로 한 것이다. 이제부터 적어도 웹 애플리케이션의 View 만큼은 최초 로딩 후 서버와 완벽히 분리되었다. 프론트엔드와 백엔드가 구분되기 시작한 것이다. CSR에서의 브라우저 렌더링 시나리오 멀티 페이지 애플리케이션(MPA)의 라우팅 방식을 생각해보면 새 술은 새 부대에 담듯, 새로운 화면은 새로운 HTML에 담아 보여주었다. 하지만 물 마실 때마다 매번 머그컵을 내다버린다면 얼마나 큰 낭비일까? 컵은 그대로 두고 정수기에서 물만 다시 채워서 먹..
2022.09.28 -
서버(Server)와 클라우드 컴퓨팅(Cloud Computing)
Server “서버에 배포한다”, “서버에 올린다”, “서버가 터졌다” 이런 말들을 많이 들어봤을 것이다. 그러면 여기서 말하는 “서버”는 무엇일까? 사전적 의미의 Server는 무언가를 제공해주는 사람이나 물건을 의미한다. 좀 더 나아가서 우리가 일상생활, 그리고 IT 업계에서 말하는 서버는 “무언가를 제공해주는 컴퓨터”이다. 우리는 인터넷으로 특정한 웹사이트나, 리소스에 접근한다. 하지만 정확히 말하자면 우리가 접근하는 대상은 웹사이트, 리소스 자체가 아니라 해당 웹사이트와 리소스를 응답해주는 컴퓨터에 접속하는 것이다. 추상적으로 서비스가 운영되고 제공되는 과정을 알아보자면, 먼저 서비스를 운영하기 위해 특정 컴퓨터를 가동하고, 해당 컴퓨터에서 특정 프로그램을 실행시켜서 컴퓨터에 네트워크를 통해 접근..
2022.09.26 -
[네트워크] OSI 7 계층 - 기본 개념 정리
개념 OSI 7 계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말한다. 정의 OSI 모형(Open Systems Interconnection Reference Model)이라고도 한다. 국제표준화기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이다. 이는 (통신에 관련된) 기반 기술로부터 독립적으로 네트워킹 또는 통신 시스템의 기능을 설명하는 개념적 프레임워크이다. 데이터 통신을 7개의 추상적인 계층으로 분리하고, 프로토콜을 네트워킹 기능으로 적절히 묶어 표준화하였다. 이를 통해 기술 유형, 벤더, 모델에 상관 없이 통신 시스템에서 상호 운용성을 보장한다. OSI 7 계층은 원래 벤더 간의 상호 운용성을 촉진하고, 네트워크 통신을 위한 ..
2022.09.24 -
ESLint와 Prettier를 사용하는 이유와 장단점
JavaScript 개발자라면 ESLint와 Prettier에 대해 들어봤을 것이다. 이러한 도구는 보다 깨끗하고 일관된 코드를 작성하는 데 도움이 되도록 설계되었으며 개발자들 사이에서 점점 인기를 얻고 있다. 이 글에서는 JavaScript 프로젝트에서 ESLint 및 Prettier를 사용할 때의 장단점을 살펴보자. 먼저 ESLint와 Prettier의 기능에 대해 간략하게 알아보자 ESLint는 코드에서 잠재적인 문제 및 오류를 확인하는 정적 코드 분석 도구이다. 구문 오류, 변수 오용 및 잠재적인 보안 취약성과 같은 문제를 감지할 수 있다. Prettier는 미리 정의된 규칙 세트에 따라 코드를 자동으로 포맷하는 코드 포맷터이다. 코드의 형식이 일관되고 읽기 쉬운지 확인하는 데 도움이 된다. 그렇..
2022.09.23 -
컴퓨터 구조 - 기억장치와 입출력 장치
기억장치 기억장치의 개념 기억장치의 기능과 분류 기능 : 컴퓨터에서 사용하는 모든 프로그램이나 자료를 기억시킨다 분류 : 주기억장치, 보조기억장치, 레지스터, 캐시 기억장치의 계층구조 : 처리속도는 레지스터 > 캐시 > 주기억장치 > 보조기억장치 순이다 기억장치의 특징 : 주기억장치(동적 RAM), 캐시 기억장치(정적 RAM), 보조기억장치(하드디스크, SSD) 주기억장치 정의 : 중앙처리장치와의 정보 교환을 위해 프로그램과 데이터를 일시적으로 기억하는 장치 구성 : 프로그램 기억 장소, 작업 장소, 입력 데이터 기억 장소, 출력 데이터 기억 장소 특성 : 집적회로, 속도가 빠르고 전력 소모가 작음, 대량생산 ROM : 데이터를 임의로 기억시킬 수 없는 읽기 전용의 비휘발성 기억장치 ROM의 종류 : M..
2022.09.22 -
컴퓨터 구조와 중앙처리장치(CPU)
앞으로 컴퓨터 과학(CS) 지식에 대한 글도 다뤄보려 한다. CS 지식은 매우 방대하기 때문에 좋은 개발자로 성장하기 위해 필요할만한 최소한의 CS 지식만 다뤄볼 것이다. CS 관련 글의 첫 번째 주제는 컴퓨터 구조와 중앙처리장치(CPU)로 정했다. 컴퓨터 구조 컴퓨터의 기본 구성 하드웨어 : 물리적인 장치 소프트웨어 : 하드웨어를 활용할 수 있는 프로그램 컴퓨터 하드웨어의 구조 물리적 구조 : 중앙처리장치, 기억장치, 입력장치, 출력장치 기능적 구조 : 중앙처리장치를 중심으로 자료 신호와 명령 신호를 교환한다 중앙처리장치 제어장치 : 프로그램의 명령을 해석하고, 명령에 따라 각 장치의 작업을 지시하고 감독한다 연산장치 : 사칙연산 및 논리 연산을 실행하는 장치 기억장치 주기억장치 : 실행 중인 프로그램..
2022.09.21