분류 전체보기 39
[React] recoil로 주문내역 관리하기
학교 수업의 팀 프로젝트인 음식 주문 서비스를 구현하는 과정에서 음식 주문 내역을 추가하거나 수정, 삭제하는 기능을 구현하는 과정을 정리하였다. recoil을 사용하는 이유는 여러 컴포넌트에서 주문 정보를 사용해야하기 때문이다. recoil의 중첩객체(nested object)를 함수형 업데이트하기 주문 내역을 추가, 삭제하기 이전에 중첩 객체를 함수형 업데이트하는 방법을 알아보자. 보통 useState안의 배열을 수정하기 위해서 아래와 같은 방법으로 함수형 업데이트를 사용해야한다. setOrderInfo((prev) => ([...prev, newList])); import { atom } from "recoil" export const orderInfoState = atom({ key: "orderI..
Frontend/react | 2022. 11. 11. 14:56
[자료구조] c언어로 큐, 원형 큐 구현하기
큐(Queue)란? 큐(Queue)는 먼저 들어온 데이터가 먼저 나가는 자료구조이다. 선입선출(FIFO: First-In First-Out)한다는 특징이 있고, 매표소나 계산대의 대기열을 생각해보면 이해하기 쉬울 것이다. 이번 글에서는 큐와 큐의 더 발전된 형태인 원형 큐도 구현해 보겠다. 큐 타입 구조체 정의 및 초기화 함수 #include #include #define SIZE 100 typedef char element; typedef struct { element data[SIZE]; int rear, front; } QueueType; void init(QueueType *Q) { Q->rear = Q->front = -1; } 큐의 요소에 해당하는 data 배열과, 큐의 가장 앞과 뒤에 해당하..
cs/자료구조 | 2022. 11. 3. 14:10
[티스토리 스킨 만들기] 2. 개발 환경 세팅하기(Typescript, TailwindCSS, Webpack)
시작하며 티스토리 스킨 적용에 필요한 파일에는 index.xml, skin.html, style.css, script.js가 있습니다. 이 파일들을 빌드하기 위해 개발 환경을 세팅해보겠습니다. 이 글은 타입스크립트와 tailwind css의 사용 설정과 webpack을 이용해 이들을 한번에 빌드하는 과정에 대해서 작성하였습니다. 티스토리 스킨 개발을 위한 파일 디렉토리는 다음과 같습니다. tistory_skin |- index.xml |- skin.html |- style.css |- /images |- script.js Typescript로 개발하기 우선 개발을 진행할 src폴더를 만들어 script.ts파일을 생성합니다. 이 파일에서 스킨에 적용할(사이드바 동작, TOC 등) 기능을 개발하면 됩니다...
프로젝트/블로그 테마 | 2022. 11. 2. 15:46
[개발자의 글쓰기] 글의 종류별로 목차 잡는 법
서론 "개발자를 위한 글쓰기" 책을 읽는 중 책의 [글의 종류별로 목차 잡는 법]에 대한 내용이 개발자가 글을 쓸 때 도움이 될 것 같은 내용이어서 요약하여 글로 남겨놓으려 한다. 글의 종류별로 목차 잡는 법, 저술편집 직접 경험한 개발기 작성하기, 저 '저'는 직접 경험한 것을 쓴 것으로, 개발 과정과 결과를 쓴 개발기가 여기에 해당한다. 저에 해당하는 글쓰기 예시는 다음과 같다. TenserFlow를 활용한 네이버 쇼핑의 상품 카테고리 자동 분류 TailwindCSS 적용기 브라우저 렌더링 속도의 개선 과정 개발기를 쓸 때는 목차를 잘 구성해야 한다. 개발을 하는 과정에서 최종적으로 성공한 루트와 중간에 실패한 루트를 구별하는것이 중요하다. 성공한 루트를 기준으로 목차를 잡고, 실패한 루트는 최종루트..
개발 도서 정리 | 2022. 10. 28. 15:55
[자료구조] c언어 구조체로 스택 구현하기
스택(Stack)이란? 스택은 데이터를 후입선출(LIFO:Last-In First-Out)하는 자료구조로, 가장 최근에 들어온 데이터가 가장 먼저 나간다는 특징이 있다. 상자나 책을 쌓아놓은 더미를 생각하면 이해하기 쉬울 것이다. 이번 글에서는 스택을 배열 구조체를 이용해서 구현해 볼 것이다. 스택 타입 구조체 정의 및 초기화 함수 #include #define SIZE 100 typedef int element; // 배열안에 들어오는 값의 타입을 element로 한번에 지정 typedef struct { element data[SIZE]; int top; // Index 번호 } StackType; // 초기화 void init(StackType *S) { S -> top = -1; // 포인터 연산..
cs/자료구조 | 2022. 10. 26. 15:50