분류 전체보기 (40) 썸네일형 리스트형 2024-09-23 갓생살기 11일차 1. 자료구조이진 트리에서 데이터를 삭제하는 방법을 CASE 별로 나누어서 수행하는 방법을 배웠다 2. 알고리즘BFS 를 수행할 때 그래프를 어떻게 자바 코드로 작성하는지 배웠다. ( HASH 와 ArrayList 사용)내일 BFS를 직접 구현해 볼 예정이다. 3. 자바스크립트 개념 공부비동기 코드 작성법 => Promise , async/await => 콜백 지옥에 빠질 수 있음 4. JAVA 개념 공부 클래스 내의 메서드 메서드 영역에 한번 호출 됨. 인스턴스는 힙 메모리에 각자 할당이 되고, 메서드는 메서드 영역에 할당됨. 상속 => IS A 관계에서 사용 , 다형성 다운 캐스팅 => 명시적 형변환이 필요 5. 네트워크 공부 DHCP 에 관련해서 배움 ( 동적 호스트 설정) DHCP 시나리.. [React Project] 코드 리팩토링 - 메인 페이지 tsx 오늘은 메인 페이지 tsx를 간단하게 리팩토링 해보았다. 정리해야 할 코드들이 너무 많아서, 시간이 날 때마다 조금 씩 진행해볼까 한다. 일단 코드 리팩토링 전 파일을 보면 코드 리팩토링 전import ContainerLayout from 'src/components/common/layout/ContainerLayout'import Content from 'src/components/common/layout/Content'import MuiMain from '../../components/common/mui/MuiMain'import MainHomeContent from 'src/components/specific/main/MainHomeContent'import { UseUserInfo } from.. 2024-09-21 갓생 살기 10일차 요즘 자소서랑 포트폴리오에 집중하느라 CS 공부를 하지 못했다 ㅜㅜ 1. 자바 개념 복습 상속 extends 는 하나만 가능. 상속을 하고 인스턴스를 생성하면 부모 생성자가 먼저 호출되고 자식이 이후로 호출됨실제로 힙 메모리를 보면 부모 멤버변수 먼저 잡혀있고 그 다음에 자식이 잡혀있음 업 캐스팅의 경우는 Customer customer = new VipCustomer();이렇게 코드를 작성했을 때 customer 는 VipCustomer에 접근 하지 않고 Customer에 접근함. 업캐스팅이 되었기 때문. overiding은 상속받은 자식 클래스가 부모 메서드에 대해 다시 작성하고자 할 때 사용가능 단 매개변수와 반환타입 같아야함 2. 자료구조 - 이진 트리 이진 트리의 구조와이진 트리에 값을 넣는 방.. [React 프로젝트] 로그인 로직 설정.. (UseQuery, axios, typescript) 로그인 로직 작성기.. 일단 간단하게 로직을 작성 해 보자면 1. 로그인 (이 때 응답 값에서 받은 액세스 토큰 로컬스토리지에 설정)2. 로그인 후 api 요청을 하다가 액세스 토큰이 만료 되어 에러가 남.2. 쿠키 값에 있는 리프레시 토큰을 통해, 새로운 액세스 토큰 요청3-1. 만약 리프레시토큰 또한 만료 되었으면 로그인 페이지로 이동3.2 액세스 토큰을 새로 등록 했을 시엔, 다시 api 요청 로그인 시 공통으로 활용하는 api 설정const api = axios.create({ baseURL: `${process.env.REACT_APP_API_DOMAIN}`, headers: { Authorization: getAccessToken() }, withCredentials: true,}.. 2024-09-16 갓생 살기 9일차 1. SQL 문제 풀이 - OUTER JOIN과 관련된 문제를 풀었다. 2. 네트워크 기존의 애플리케이션, 트랜스포트 계층 개념 복습을 했다 그리고 네트워크 계층이 어떤 일을 하는지 간단히만 살펴보았다. 3. 자료구조해시의 장점 - 읽기, 저장, 삭제 쉬움, 검색 쉬움해시의 단점 - 해시 충돌 단점 해결법 -> 폐쇄 해싱, 개방 해싱개방 해싱의 경우 이미 KEY VALUE 에 값이 들어가 있으면 그 다음 슬롯에 저장. 4. 자바 스크립트간단한 개념 복습 ArrayList 에 대해서 살펴봄. 5. 프론트CS 공부 로컬스토리지 - 도메인 마다 별도로 생성된 스토리지., 영구적 보관 가능. EX) 자동 로그인 세션스토리지 - 세션 종료시 클라이언트에 대한 정보가 삭제됨 비로그인 장바구니, 입력한 폼 정.. 2024-09-14 갓생 살기 8일차 1. sql 공부 sql join 문제 4개 풀이를 해보았다. 2. 자바 공부기초 개념 복습static 은 프로그램이 시작될 때 데이터 메모리 영역에 잡힌다는 것에 대해서 공부스태틱 메서드 내부에서는 인스턴스의 변수 활용 할 수 없음 싱글톤 패턴 > 프로그램에서 인스턴스가 딱 한개만 생성 되어야 하는 경우 사용하는 패턴 3. 자료구조 - 해시key :value 매핑으로 저장과 읽는 속도가 빠름 4. 알고리즘 - 퀵 정렬pivot 을 기준으로 pivot 보다 작은건 왼쪽에 , pivot 보다 큰건 오른쪽에 두고 병합 까지 해보는 것까지 작성해봄맨 마지막에 addAll에 보면 오른쪽 배열과 왼쪽 배열의 각각의 사이즈가 1이 될 때까지 재귀 함수를 호출한다고 보면 됨.import java.util.Arr.. 2024-09-12 갓생 살기 7일차 일주일차가 지났다!!! 1. 프론트엔드 cs 공부 css position 에는 static 일반적 문서 흐름relative: static+ 자신 기준 top, left, right, bottom 값에 따른 오프셋absolute : 일반적 문서 흐름에서 제거, 가장 가까운 조상 요소에 대해 상대적 배치 fixed: 뷰포트 초기 컨테이닝 블록을 기준으로 배치 sticky: static + fixed 2. 네트워크 공부TCP flow control에 대해서 공부 > sender가 리시브 버퍼 상태에 따라 보내는 양을 조절만약 리시브 버터가 0인 경우 , 센더는 주기적으로 data없이 세그먼트를 보내서 리시브 버퍼의 상태가 어떤지 응답을 받으려고 함.3way handshake가 어떻게 이루어지는지에 대해 공부 .. 2024-09-11 갓생 살기 6일차 1. 프로젝트 오류 수정도감 이동 기능을 구현하는데, api가 2번 요청되는 문제가 있어서 살펴봤더니..div 전체를 누를때랑 저장 버튼을 누를 때랑 둘 다 onClick 이벤트를 걸어놨었던 것이었다. 저장 버튼의 onClick 이벤트는 빼고 div 전체에만 onClick 이벤트를 걸어두는걸로 바꾸니, 말끔하게 해결 되었다. 2. sql 오늘은 rank, dense rank, join 에 관련한 문제를 풀어보았다 3. 자바기초 개념 복습생성된 인스턴스는 Heap메모리에 할당되고 각각의 인스턴스는 다른 메모리 주소를 가짐 => 그것의 참조값을 갖고있는 참조변수는 stack메모리에 할당 됨. 힙에 생성된 인스턴스는 Garbage Collector가 주기적으로 사용하지 않는 메모리를 수거 참조 자료형 - .. [React 프로젝트] 무한 스크롤 도입기.. (react-intersection-observer, typescript) 프로젝트에 공통적으로 재사용 가능한 무한 스크롤 컴포넌트를 만들어보았다 react-intersection-observer의 useInViewuseInView는 요소가 화면에 보이는지 여부를 감지해 주는 역할을 하는데 이 것을 활용해서 무한 스크롤 컴포넌트가 보이면 다음 페이지 api를 요청할 수 있도록 하면 된다. EndLine.tsximport { useEffect } from 'react'import { useInView } from 'react-intersection-observer'import styled from 'styled-components'export default function EndLine({ hidden = false, mt = '17px', onShowEndPage,}:.. [React 프로젝트] 코드 리팩토링 과정, 퍼블리싱 변경 현재 진행 하고 있는 사이드 프로젝트의 퍼블리싱 변경 및 코드 리팩토링을 진행해보았다. AS-IS 화면 TO-BE 화면 여기서 내가 변경한건 1. Alert Modal 변경 > 기존에 공통으로 사용하던 Alert 모달을 버리고, 새로 만든 Alert 모달로 통일. 2. 도감 이동을 클릭 하고 요청이 진행 중인 경우 로딩 스피너 띄우는 기능 추가3. 변경된 퍼블리싱 적용4. 코드 리팩토링 크게 이 네 가지이다. 1. Alert Modal 변경Alert에서 사용하던 상태값을 Recoil에서 Usestate로 변경하고 버튼 퍼블리싱을 변경했다.Recoil을 사용하니, 의도 하지 않은 리 렌더링이 일어날 때가 있었다. 그래서 Usestate를 사용하는 Alert 컴포넌트로 바꾸고 해당 컴포넌트는 ButtonC.. 이전 1 2 3 4 다음 목록 더보기