목록전체 글 (131)
고양이와 코딩
뒤늦게 포스팅하는, 친구가 내준 투두리스트 과제! https://github.com/ovovvvvv/React-Todo GitHub - ovovvvvv/React-Todo: 투두리스트로 배우는 리액트 투두리스트로 배우는 리액트. Contribute to ovovvvvv/React-Todo development by creating an account on GitHub. github.com 리액트를 너무 어렵게 생각하는 저를 위해 친구가 과제형식으로 레포지토리를 파 주었습니다 (동기 잘만났다..) 컴포넌트는 TodoList, TodoItem만 따로 분리했고, 일단 App파일에 대부분의 로직을 작성했습니다! import { useState, useCallback, useRef, ChangeEvent } fr..
벌써 데브코스를 시작한지 4개월이 지나가고 있습니다. 부끄럽지만 전공 4년동안 이룬것이 없음을 직접적으로 느끼며 많이 배우는 과정이었습니다! 공부는 하면 할수록 불안하고, 충분하다가 아닌 부족하다는 생각이 드는게 맞나? 하는 고민도 많이 들었던 이번 달인데요, 이정도 알았으면 뭐든 만들수 있겠지, 이정도 알았으면 취업할 수 있겠지 라고 생각했던 과거의 저를 반성하는 시간을 유독 많이 가진 달이었던것 같습니다. 첫째로 React의 기본적인 기술들에 대해서 물어봤을때 논리적으로 대답하지 못하고 ~~성능 향상을 위해서 사용하는거지, 상태 관리를 위해서 사용하는거지 같은 맞는 말이지만 영 부족한 답변만 내놨던 점에 부족함을 느끼고 이 부분을 채워가려 노력중입니다! 두번째로는 비효율적인 부지런함을 꾸준히 실천한 ..
이렇게 구현되어있는 도서 화면 ! 전체/동화/소설/사회/신간 카테고리가 아무 의미가 없다. 난 분명 강의중에 놓친게 없는거같은데... 왜 필터링이 안되지?! 생각했지만 아마 실제로 구현한 적이 없는듯 합니다 ... 현재는 BookFilter.tsx 파일에서 const handleCategory = (id: number | null) => { const newSearchParams = new URLSearchParams(searchParams); if (id === null) { newSearchParams.delete(QUERYSTRING.CATEGORY_ID); } else { newSearchParams.set(QUERYSTRING.CATEGORY_ID, id.toString()); } setSear..
백엔드 코드에서 camelCase로 변경한 변수 유의하여 사용 변수의 선언 방식 const orderId = req.params.id; const { orderId } = req.params.id; const orderId = req.params.id; 는 req.params.id의 값을 orderId 변수에 할당 즉, `orderId` 변수에 `req.params.id`의 값이 그대로 저장된다 const { orderId } = req.params.id; 는 객체 비구조화 할당으로 req.params.id에서 orderId 라는 새로운 변수를 선언하고 초기화 위와 동일하게 `orderId` 변수에 `req.params.id` 값이 저장 → 하지만 req.params.id의 id값은 객체가 아닌 단순 값..
https://react-ko.dev/learn/keeping-components-pure 컴포넌트 순수성 유지 – React The library for web and native user interfaces react-ko.dev 리액트 공식문서 + 함수형 코딩스터디를 동시에 하며 도움이 되어서 포스팅 합니다 ! 컴포넌트를 엄격하게 순수 함수로 작성하기 위한 규칙 호출되기 전에 존재했던 객체나 변수를 변경하지 않습니다 동일한 입력이 주어지면 항상 동일한 결과를 반환해야 합니다. → React는 이 개념을 중심으로 설계되었기에, 우리가 작성하는 모든 컴포넌트가 순수 함수라고 가정한다. function Recipe({ drinkers }) { return ( Boil {drinkers} cups of w..
정말 오랜만에 코테 연습을 하는듯 하네요,,, 다시 말랑 두뇌가 되도록 열심히 ~! 2월26일 짝지어 제거하기 스택이다!!!! function solution(s) { const stack = []; for (let char of s) { // 스택이 비어있거나, 스택의 가장 위의 문자와 현재 문자가 다르다면 if (stack.length === 0 || stack[stack.length - 1] !== char) { stack.push(char); } else { stack.pop(); // 스택의 가장 위의 문자와 현재 문자가 같다면 스택에서 제거한다 } } return stack.length === 0 ? 1 : 0; } 3월3일(ㅎㅎ;;;) 카펫 탐색문제,, 라는걸 알고 보니 더 어렵게 느껴지는것..