Front End
개발을 위한 프레임워크 세팅
🌐필수 항목Node.jsNode.js 패키지 매니저버전 관리 시스템 / 형상 관리 시스템 + 원격 리포지토리 서비스프론트엔드 프레임워크(라이브러리)CSS린터선택 항목HTTP 요청상태 관리TypeScript번들러테스트 프레임워크프론트엔드 개발은 독자적인 전문 영역으로 인정받은지 얼마 되지 않았고, 변화가 무궁무진한 분야이다. 특히 JavaScript 특유의 다재다능함 때문에 선택할 수 있는 기술 스택의 조합도 많은데, 이런 다재다능함은 초심자에게 있어 단점이 되기도 한다.하나의 프레임워크를 제대로 학습하지 못했는데, 다른 프레임워크를 어설프게 학습함어떤 기술 스택을 사용할지 고민만 하다 개발 기획을 제대로 시작하지 못함개발 프로젝트에 별로 필요하지 않은 과도한 기술 스택 설치이런 상황을 막기 위해 어플리케..
운영체제
🖥️운영체제(OS)운영체제의 목적 및 기능운영 체제의 시스템 자원 관리응용 프로그램 관리응용 프로그램 : 운영체제를 통해 컴퓨터에게 일을 시키는 것프로세스프로세스 구성 요소프로세스 특징프로세스 상태스레드스레드의 필요성스레드의 구성 요소스레드의 특징싱글 스레드와 멀티 스레드싱글 스레드(Single-Thread)멀티 스레드(Multi-Thread)동시성과 병렬성의 차이운영체제(OS)폰 노이만이 제시한 컴퓨터 모델에 따라 각각의 하드웨어를 연결했다 해서 우리가 원하는 프로그램을 수행할 수 있는 것은 아니다. 하드웨어는 단지 그 하드웨어의 특정 기능을 수행할 뿐이기 때문에 이런 하드웨어 상에 프로그램들이 동작되려면 하드웨어들과 적절하게 데이터를 주고받으며 논리적인 일들을 해야한다. 이 하드웨어에게 일을 시키는 ..
GraphQL
🌐GraphQLGraph를 사용하는 이유GraphQL로 그래프 순회그래프에서 트리를 추출하는 방법GraphQL의 특징GraphQL vs. REST APIREST API의 한계REST API와 GraphQL의 다른 점GraphQL의 장점GraphQL의 단점GraphQL의 구조GraphQL Keywords쿼리(Query, 데이터 조회)필드(field)전달인자(Arguments)별명(Aliases)오퍼레이션 네임(Operation name)변수(Variables)뮤테이션(mutation, 데이터 수정)스키마/타입(Schema/Type)리졸버(Resolver)GraphQLGraphQL은 페이스북에서 만든 오픈 소스 쿼리 언어이다. Graph + Query Language의 줄임말로 Server API를 통해 정..
가비지 컬렉션
🖥️가비지 컬렉션메모리 생존 주기메모리 할당할당된 메모리 사용 (값 사용)메모리 해제대표적인 가비지 컬렉션의 방법레퍼런스 카운팅(참조 횟수 계산)트레이싱메모리 누수가비지 컬렉션가비지 컬렉션은 프로그램에서 더 이상 사용하지 않는 메모리를 자동으로 정리하는 것이다. 이 기능을 가진 언어(혹은 엔진)은 Java, C#, JavaScript 등이 있다. C와 같은 저수준 언어에서는 메모리 관리를 위해 malloc()과 free()를 사용해 개발자가 스스로 메모리를 할당하고 해제해야 하지만, JavaScript는 고수준 언어로서 객체가 생성되었을 때 자동으로 메모리를 할당하고 필요하지 않다면 자동으로 해제하는 가비지 컬렉션이 내장되어 있다.❓고수준 언어와 저수준 언어 프로그래밍 언어가 인간에게 친화적인지, 기계에..
문자열과 그래픽
🖥️문자열유니코드인코딩(부호화)?ASCII 문자?UTF-8 vs. UTF-16UTF-8의 특징UTF-16의 특징그래픽비트맵(Bitmap)벡터(Vector)비트맵(래스터) vs. 벡터문자열문자열은 2010년 이후 유니코드라 불리는 인코딩 방식으로 통일되었다. 과거에는 영어 알파벳 하나가 1byte를 차지하기도 했으나, 현재는 다양한 언어가 컴퓨터 환경에서 사용되고 있기 때문에 유니코드를 사용해 텍스트를 저장하고 있다.유니코드유니코드(Unicode)는 유니코드 협회(Unicode Consortium)가 제정하는 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준이다. 이 표준에는 ISO 10646 문자 집합, 문자 인코딩, 문자 정보 데이터베이스, 문자를 다루기 위한 알고리..