최신
-
Front-end
인증 및 권한 구현하기(권한별 routing)
진행 이유 서버에서 처리해야 할 작업량을 감소하기 위해서.서버에서 인증을 처리하고, 인증된 사용자들에게 모든 권한을 부여하는 방식은 불필요한 데이터 처리가 발생함. 프론트에서 인증 별 권한을 구현하면 필요한 데이터만 서버로 요청하고, 불필요한 데이터 처리를 줄일 수 있음. 작업 시 사용자의 권한에 맞게 서비스를 제공하려고. 서비스에서 서로 다른 dashboard를 제공해야 하는데 이를 미리 경험해보기 위해 시도함. 고려해야 할 사항: redux등 전역 상태관리를 위한 라이브러리를 적용할 것인가? 상태관리 라이브러리 참고: https://dalaranl.github.io/react/redux-mobx-context/ 장점 상태 관리의 편리성: React에서 상태를 관리하면서 상태가 컴포넌트 간에 전달되어야..
-
Front-end
무한 렌더링 현상 막기 - Axios로 받은 데이터 '1회만' state에 set하기 (useEffect 활용)
axios로 데이터를 불러와 table.js 에서 사용하려고 했는데 이상하게 무한으로 렌더링 되서 서버에 지속적으로 데이터 요청하는 문제가 발생함 const [msg, setMsg] = useState([]); UserService.getTableData() .then((res) => { setMsg(res.data); }) 문제 발생 이유 useState hook 으로 상태를 관리할 때, 상태가 변경되면 컴포넌트가 다시 렌더링이 되는 특징이 있음. 때문에 위의 코드에서 **setMsg**를 호출하면 상태가 변경되어 다시 렌더링이 일어나고, 다시 **setMsg**가 호출되면 이 과정이 반복되어 무한 렌더링 현상이 발생함. 해결 방안(https://citronbanana.tistory.com/110 참고..
-
일상의 기록
2022 하반기 회고록- 눈떠보니 직장인이 되어있었습니다
-2022년 하반기가 완전히 끝나서 적는 회고록- 나 어떻게 취직했지..? 사실 여기다 찡찡거리는 글을 쓰고 나서 한달 후 8월 1일부터 근무를 시작했다.....ㅋㅋㅋㅋㅋ 뭐지 진짜. 근데 진짜 나도 당황스러웠음... 사실 상반기 회고록을 쓸 때 하반기 시작 전 마지막으로 넣어보자 하고 넣은 회사가 있었는데 1차 면접에서 뭔가 내가... 굉장히 좋은 모습을 보였었나 보다(나중에 궁금해서 사수한테 물어보기도 했다 제 무슨 점이 마음에 들었었냐고...) 그리고 나서 2차 면접 급속으로 치고 바로 붙었다. 진짜 그 이상 할 말이 없다... 나도 어 ? 어어? 하는 사이에 붙어서 8월 1일부터 일하기 시작했으니까...... 사실 이 글을 쓰는 지금도 여전히 뭐지 진짜..어케 취직해서 다니고 있지 나... 이러고..
-
자료구조 & 알고리즘
자료구조와 알고리즘 - 스택과 큐(1)
1. 스택 (Stack) - 한쪽 끝에서만 item(항목)을 삭제하거나 새로운 item을 저장하는 자료구조 = 후입선출(LIFO: Last In First Out) - 스택 사용 예시: 회문 검사,후위표기법수식 계산, 미로찾기,트리의 노드 방문,그래프의 깊이우선탐색 등 - 2 가지의 주요 연산을 제공한다 push: 새로운 item을 저장하는 연산 pop: 아직 제거되지 않은 가장 최근에 삽입된 요소 제거 2. 큐(Queue) - 한쪽 끝에는 item 추가 연산이, 다른 반대쪽 끝에는 삭제가 가능한 자료구조 = 선입선출(FIFO: First In First Out) - 큐 사용 예시: 네트워크 프린터, cpu 태스크 스케줄링,이진트리의 레벨순회,그래프의 너비우선탐색 등 참고자료 자바와 함께하는 자료구조의 ..
-
자료구조 & 알고리즘
자료구조와 알고리즘 - 배열과 리스트(2)
1. 배열 - Trappingg Rain Water 풀이 -문제출처:https://leetcode.com/problems/trapping-rain-water/ Trapping Rain Water - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com - > 높이를 입력받아 비 온 후 얼마나 많은 물이 쌓일 수 있는지 계산하라. - https://www.geeksforgeeks.org/trapping-rain-water/ 참고 java // 리트코드 빗물 트래핑 cla..
-
자료구조 & 알고리즘
자료구조와 알고리즘 - 배열과 리스트(1)
1. 배열과 동적 배열 배열 : 동일한 타입의 원소들이 연속적인 메모리 공간에 할당되어 각 항목이 하나의 원소에 저장되는 자료구조 크기가 고정되어 있고, 한번 생성한 배열은 크기를 변경할 수 없다. 배열의 인덱스를 사용하여 어느 위치에나 O(1)에 조회가 가능하다 새 항목이 중간에 삽입되거나 중간에 있는 항목을 삭제하면 항목들을 뒤 혹은 앞으로 이동시켜야 하므로 삽입이나 삭제 연산은 O(1)시간에 수행할 수 없다. 배열은 미리 정해진 크기의 메모리 공간을 할당 받은 뒤 사용해야 하므로, 빈자리가 없어 새 항목을 삽입할 수 없는 상황(Overflow)에 직면할 수 있다. 이러한 상황을 해결하고자 크기를 지정하지 않고 자동으로 리사이징하는 배열인 동적 배열이 등장했다. 동적 배열: 프로그램이 실행되는 동안 ..