전체 글

A log of my development (and other various stuff)
Web development

GraphQL 간단히 살펴보기

최근 여러 면접을 보며 '이 기술 써보셨나요?'라는 질문을 받을 때 '아뇨'라고 대답하는게 너무 고통스러웠다. 물론 지원하는 모든 회사의 기술을 다 섭렵하는건 어렵겠지만, 그래도 자주 보이는 기술에 대해 '사용법 정도는 압니다'라고 대답할 수 있도록 이것 저것 더 다채롭게 건드려보기로 했다. 우선 가장 최근 고통을 안겨줬던 GraphQL부터 시작이다. 왜 사용할까? 한 마디로 축약하자면 REST API의 불편한 점을 해결하기 위해서이다. REST API의 문제점들은 다음과 같다. Overfetching: 불필요한 데이터까지 가져오기 때문에 추가 비용이 발생한다. Underfetching: 필요한 데이터를 온전히 가져오기 위해 여러 번 추가 요청이 필요할 수 있다. URL 관리의 어려움: 요구사항이 복잡해..

Daily Record

2024.03.28

LeetCode 1372. Longest ZigZag Path in a Binary Tree 2462. Total Cost to Hire K Workers 2300. Successful Pairs of Spells and Potions 790. Domino and Tromino Tiling 이 영상이 제일 쉽게 이해가 된다. https://www.youtube.com/watch?v=RhhCWPGsJ0I&t=6s 1143. Longest Common Subsequence 714. Best Time to Buy and Sell Stock with Transaction Fee 1137. N-th Tribonacci Number 198. House Robber 62. Unique Paths 72. Edit Di..

Daily Record

2024.03.27

LeetCode 75 139. Word Break 1137. N-th Tribonacci Number 62. Unique Paths 1268. Search Suggestions System 435. Non-overlapping Intervals 739. Daily Temperatures 901. Online Stock Span 1493. Longest Subarray of 1's After Deleting One Element 1207. Unique Number of Occurrences 206. Reverse Linked List 746. Min Cost Climbing Stairs 2352. Equal Row and Column Pairs 394. Decode String 2130. Maximum T..

Daily Record

2024.03.26

LeetCode 75 푼 문제 리스트 1004. Max Consecutive Ones III two pointer를 이용한 sliding window 문제. 최대 길이 구할 때는 대부분 이런 타입의 문제인 듯. 724. Find Pivot Index 2215. Find the Difference of Two Arrays 735. Asteroid Collision 933. Number of Recent Calls 328. Odd Even Linked List 872. Leaf-Similar Trees 700. Search in a Binary Search Tree 547. Number of Provinces 잊지말자 union-find 994. Rotting Oranges 374. Guess Number ..

Daily Record

2024.03.19

LeetCode 75 트리 노드 삭제는 항상 헷갈린다. BST와 priority queue 케이스를 항상 숙지해두자. Priority Queue의 경우 queue 내부에 있는 값이 다시 들어올 때에 대한 필터링이 필요하다. 푼 문제 리스트 1456. Maximum Number of Vowels in a Substring of Given Length 1732. Find the Highest Altitude 1657. Determine if Two Strings Are Close 2390. Removing Stars From a String 649. Dota2 Senate 2095. Delete the Middle Node of a Linked List 1448. Count Good Nodes in Bina..

Web development/React

React에서 Modal 관리하기

Intro 웹 페이지를 개발하다보면 여러 모달을 만들고 관리해야 할 일이 많다. 특히 리액트에서 모달의 상태를 state로 관리하다보면 코드도 지저분해지고 비슷한 코드가 여기 저기 흩어져있기 마련이 된다. 해결법을 탐색하던 중 우연히 한 영상을 보게 되었고 그 아이디어를 차용해 내 나름대로 다시 구현해보았다. 설계 기본적인 아이디어는 아래 영상에서 가져왔다. https://youtu.be/gMzYOE0TV0g?si=0SKd5mKO1-yP1gHc 요점은 ModalController에서 stack 구조로 모달을 관리하는 것, 그리고 Context API를 활용해 프로젝트 내부 어디서나 컨트롤러에 접근할 수 있게 하는 것이다. 이를 간단히 도식으로 나타내면 다음과 같다. 1. 컴포넌트 단에서는 push/pop..

dev_wann
DevDev