전반적으로 학습할 예정은 현재까지는 아래의 방향으로 진도를 설정하고 있다.
1.개발 학습은 리액트 요약강의 마무리
2.next.js
3.TypeScript
4.알고리즘 정리
5.React 전체복습 1회
6.웹 풀스택 강의(React, Express, MongoDB, Firebase, AWS E3)
7.풀스택 강의(React, GraphQL, React-Query, Firebase)

또한 매일 아래와 같은 학습을 진행할 예정이며
1.CS학습 (gyoogle)
2.책 10p읽기(https 및 JS, CS관련)
3.백준 1solve

코딩테스트, 면접 등이 있는 경우에는 그 부분을 조금 더 우선할 예정이다.


1.useEffect를 사용할 경우 두번째 인자로 의존성배열을 설정해야한다. 만약 의존성배열을 설정하지 않는다면 useEffect로 감싸는 의미가 없이 컴포넌트가 실행될 때 같이 실행된다. 
의존성배열에 빈 배열을 적용할 경우 처음 1회만 시행되고 트리거가 없는 일반적인 시행이 되는데 갱신이 필요 없는 1회성 데이터 받아오기(중복여부 체크 등)에 사용할 수 있다. 

내부에 사용하고자 하는 값이 외부에 의존한다면 말 그대로 의존성배열에 그 값을 넣어줘야 한다.

2.객체를 다룰 때 이중객체 내부의 값을 구조분해 할당 및 추가하려면 아래와 같은 형태로 이중객체의 겉 껍질을 벗겨 배열로 바꾸고 id를 부여해 mapping으로 쓰기 쉽게 가공할 수 있다.
for(let ket in obj){
let newObj = {
id : key
...obj[key]}
objArr.push(newObj)
}

3.React에서 기본적으로 제공하는 creatContext를 사용하면 상태를 편하게 관리할 수 있다.
값을 받아오려면 관련된 컴포넌트들을 wrapping해야 하며 사용은 useContext를 import해 사용할 수 있다.

4.상태값의 변경은 인지할 수 없이 짧은 시간에 처리되지만 즉각적으로 처리되는 것이 아니기 때문에 state의 변경을 바로 반응하지 못해 상태가 변경되지 않는 경우가 있다.
실제로 쇼핑몰등의 과제나 초기 드롭다운 구성에서는 한턴정도 늦게 반응하는 듯한 모습을 볼 수 있었다. 이를 해결하기 위한 방법으로는 예약이 아닌 즉시처리를 위해 화살표 함수로 값을 지정하면 즉각적인 상태값의 변화를 볼 수 있다.
setState(beforeArr => {return beforeArr.concat(newdata)})

5.놀랍게도 변수에 html엘리먼트를 넣어서 반환할 수 있다..
jsx에서는 배열에도 html코드를 넣을 수 있다고 한다.
이 방식을 이용하면 특정 경우 내용을 없애버리지만 태그자체는 남아있는 방식의 처리나
삼항연산자를 통해 값들을 간신히 제어하는 방식에서 벗어나
태그들을 사용할 수 있을 것 같다.

하지만 곰곰히 생각해보면 삼항연산자로 다루는 것 또한 크게 나쁘지는 않은 것 같기도 하다.

6.URI는 URL을 포함하는 객체 느낌이며 URI는 그 내부의 하나의 키정도의 위치를 차지한다고 볼 수 있다.

URL은 HTTP/HTTPS를 포함한 주소라고 볼 수 있고 URI에는 http, ftp, ldap, mailto, telnet, file 등의 식별자들이 있다.

 

7.버블정렬은 최선의 경우 당연히 O(N)의 시간복잡도를 가질거라고 생각했지만

굳이 체크를 하지 않고 동작시켜 최악도 O(N^2)이라고 한다.

이 부분은 헷갈릴 수 있는 부분이기 때문에 주의해서 기억해야 할 것 같다.

 

 


(1).백준 2444 별찍기 - 7은 repeat, 백틱을 사용해 규칙을 잡은 다음 for문으로 해결했다.
뭔가 살짝 재귀로 만들 수 있을 것 같지만 출석용으로 푸는 과정이라 패스했다.

let input = 5
let result = []
for(let i = 1 ; i <= input ; i++){
    result.push(`${' '.repeat(input-i)}${'**'.repeat(i-1)}*`)
}
for(let i = input-1 ; i > 0 ; i--){
    result.push(`${' '.repeat(input-i)}${'**'.repeat(i-1)}*`)
}
console.log(result.join('\n'))

 

'회고' 카테고리의 다른 글

[취업준비일지] - 3  (0) 2022.10.23
[취업준비일지] - 2  (0) 2022.10.22
프론트엔드 부트캠프(코드스테이츠) 수료 후 회고  (0) 2022.10.20
[잡서칭] 연봉협상, 입사지원  (0) 2022.10.19
[잡서칭] 모의면접  (1) 2022.10.18

+ Recent posts