분류 전체보기
-
[OS] 운영체제란?운영체제 2023. 2. 26. 17:41
운영체제란 무엇일까 모든 프로그램은 하드웨어를 필요로 합니다. 프로그램을 실행시킬 때 필요한 요소들을 보고 시스템 자원, 또는 자원이라고 합니다. 모든 프로그램은 실행되기 위해 반드시 자원이 필요한데, 여기서 실행할 프로그램에 필요한 자원을 할당하고 프로그램이 올바르게 실행되도록 돕는 특별한 프로그램을 운영체제(Operating System: OS)라고 합니다. 커널 영역과 사용자 영역 모든 프로그램은 실행되기 위해서는 메모리에 적재되어야 합니다. 그리고 운영체제도 사실 프로그램의 일종입니다. 그래서 운영체제 또한 다른 프로그램들처럼 메모리에 적재되어야 합니다. 다른 응용 프로그램이 적재되는 공간과 구분하기 위해 운영체제는 커널 영역(Kernel Space)라는 공간에 따로 적재됩니다. 그리고 커널 영역..
-
[Github] merge시 "not something we can merge" 에러 해결 방법 _Errorgithub 2023. 2. 22. 14:43
팀원이 작업한 build 브랜치를 main과 병합하려고 git merge를 하는데 예상치 못한 오류가 발생했다. merge: build - not something we can merge 병합할 수 있는 무언가가 없다고 떴다. 에러 원인 이 에러가 뜬 원인은 크게 두 가지이다. 1. 브랜치 명이 오타가 났거나 2. merge하려는 브랜치가 로컬에 존재하지 않거나 해결 방법 해결 방법은 간단하다. 오타가 아니라면 원인은 merge하려는 브랜치가 로컬에 없는 경우이기 때문에 해당 브랜치로 이동을 한 번 한 후에 다시 돌아와서 병합을 다시 시도하면 된다. $ git checkout [branch명] 브랜치로 이동하는 checkout 명령을 이용한다. $ git checkout main 다시 main 브랜치로 ..
-
[JavaScript] JS-Cookie로 쿠키 다루기JavaScript 2023. 2. 22. 05:18
Cookie란? 쿠키(cookie)란 HTTP는 웹에서 이루어지는 모든 데이터를 주고받기 위한 서버-클라이언트 모델을 따르는 프로토콜이다. HTTP의 특징 중 하나로 "상태 비저장(stateless)"이 있는데, 이 특징은 세션과 같은 사용자 정보를 저장 또는 유지하지 않는다는 것이다. 쿠키는 이름-값 쌍의 형태의 정보를 문자열로 저장한다. Js-cookie는 쿠키를 처리하기 위한 단순하고 가벼운 JavaScript API이다. Js cookie 설치하기 $ npm i js-cookie js cookie 기본 사용법 쿠키 생성하기 Cookies.set('name', 'value') {7일 후에 만료되는} 쿠키 생성하기 Cookies.set('name', 'value', { expires: 7 }) {현재..
-
[Flutter] 플러터 설치하기 _MacDart/Flutter 2023. 2. 14. 02:50
Flutter - Build apps for any screen Flutter transforms the entire app development process. Build, test, and deploy beautiful mobile, web, desktop, and embedded apps from a single codebase. flutter.dev Flutter 설치는 크게 두 단계로 나뉜다. 1. Flutter SDK 설치 2. 시뮬레이터 설치 1. Flutter SDK 설치 zip파일 다운받고 path 설정 등이 번거롭고 귀찮을 때는 콘솔을 이용해 설치하는 방법도 있다. Window의 경우 chocolatey를 사용하지만 나는 맥을 사용하기 때문에 homebrew를 사용했다. homebrew..
-
[ReactJS] 리액트에서 Apollo Client로 전역 상태 관리하기JavaScript/React 2023. 2. 1. 23:44
리액트에는 ContextAPI, Redux, MobX 등 전역으로 상태관리를 하기 위한 많은 선택지가 있다. Apollo Client도 그 중 하나의 선택지로 로컬에서 전역 상태관리를 하기위해 사용할 수 있다. Apollo Client란 Apollo Client는 GraphQL 기반의 상태 관리 라이브러리이다. 클라이언트 어플리케이션의 GraphQL과 데이터 교환을 돕는다. Apollo Client의 기능 1. graphQL API에서 데이터를 fetch해올 수 있다. 2. 어플리케이션에서 로컬로 상태 관리를 할 수 있게 해준다. 즉, 서버에 있는 데이터를 가지고 오고, 로컬에 있는 데이터를 관리할 수 있게 해준다. 그리고 이 두 종류의 데이터를 동기화할 수 있게 한다는 것이 큰 장점이다. Apollo ..
-
[GraphQL] Apollo Server로 GraphQL API 만들기카테고리 없음 2023. 1. 31. 18:59
Apllo Server란 Apollo server는 Apollo client를 포함한 모든 GraphQL 클라이언트와 호환되는 사양 준수(spec-compliant)의 오픈 소스 GraphQL 서버이다. 모든 소스의 데이터를 사용할 수 있는 자체 문서화 가능한 production-ready GraphQL API를 구축하는 가장 좋은 방법이다. Apllo Server 시작하기 폴더 생성 $ cd [폴더명] $ mkdir [생성할 폴더명] 원하는 위치로 이동해서 새 폴더를 생성한다. 노드 레포지터리 초기화 $ cd [생성한 폴더명] $ npm init -y 생성한 폴더로 이동하여 node 레포지터리를 초기화 해준다. npm init -y (yes) 를 입력하면 package.json가 생성되는 것을 볼 수 ..
-
[ReactJS] React Hook Form 사용하기JavaScript/React 2023. 1. 30. 17:41
React Hook Form 설치 & import하기 npm i react-hook-form import { useForm } from "react-hook-form" register 함수 사용하기 const {register} = useForm(); register는 form에 input을 등록(register)할 때 사용된다. react-hook-form은 페이지에 어떤 input이 있는지 모르기 때문에 현재 form에 어떤 input이 어디에 있는지 등에 대한 정보를 알려준다. 원래 register의 내용은 name, onBlur, onChange, ref 이다. register object의 property들을 추가하기 위해 '...' 연산자를 이용해 prop으로 넣는 것이다. 원래는 이런 느낌 ..
-
[Django] Swagger를 통한 API 문서 작성하기 with. Django파이썬/Django 2023. 1. 29. 19:41
Swagger란? API 문서 자동화해주는 툴 우리가 개발하면 개발하는 내용 그대로 모든 내용들이 자동으로 문서화가 되어 우리가 굳이 설명하거나 문서로 전달하지 않더라도 프론트엔드 개발자 혹은 다른 개발자들이 API 명세를 확인할 수 있는 것이다. API 명세 뿐 아니라, API에 대한 목업(Mock-up) 테스트도 지원을 하기 때문에, 프론트엔드와 연동을 하지 않을 상태에서도 Response를 확인해볼 수 있는 테스트를 진행해 볼 수 있다는것도 강점이다. 1. Swagger 관련 패키지 설치 방법으로는 두가지가 있는데, SwaggerHub라는 Swagger를 만든 곳의 Cloud를 이용해서 직접 관리하는 방법이 있고, 각자 회사의 서버에 직접 Swagger 모듈을 도입하여 적용하는 방법이 있는데, 나는..