12/5
📝 할 일
- 3차 과제 : todo-list 찐찐마무리
- 4차 과제 : 쇼핑몰 제품 조회 api 활용해서 화면에 출력
- webpack 복습
✅ 한 일
- 3차 과제 : todo-list 마무리
원래 어제 끝냈어야 했는데 css에 한번 신경쓰니 너무 많이 걸려서 밤을 새서 마무리를 했다
뭔가 끝내긴 했는데 좀 찜찜해서 일단 readme를 작성하고 제출을 했다
- 4차 과제 : 쇼핑몰 제품 조회 api 활용해서 화면에 출력
한 1시간인가 자고 일어나서 바로 4차 과제 기능 분배를 하고 바로 구현을 했다
사실 시간이 정해진 건 아니었지만 자면 못 깰 것 같아서 바로 시작했다
팀원분이 크롤링을 다 해서 완성한 전체 상품 그리드에 전체 상품 api 정보를 가져와서 반복적으로 뿌려주는 작업을 했다
상세페이지를 구현하는 팀원을 위해서 path를 이용한 파라미터 전송을 사용하여 link 컴포넌트로 주소에 상품 id 값을 넣어줘서 useParams 로 url 을 가져온 뒤 해당 id 값으로 각 상세페이지를 출력하도록 구조를 짰다
- webpack 복습
webpack 강의를 듣긴 했는데 뭔가 이해가 거의 안된 채로 들은 느낌이라 복습을 했다
여러 번 써봐야 오류를 잡으면서 익숙해질 것 같다ㅎ..
12/6
📝 할 일
- 백준 브론즈3 5문제
- webpack 강의 복습
✅ 한 일
- 백준 브론즈3 1문제 (…)
이번 5문제에는 모두 별찍기 문제였는데 사실 나는 별찍기 문제를 별로 좋아하지 않는다..
뭐 다른 문제들도 좋아한다고는 할 수 없지만 별찍기는 흥미가 가지 않기 때문이다
이번 2441번 별찍기 문제는 이런 식으로 출력되어야 하는 문제다
*****
****
***
**
*
let filePath = process.platform === "linux" ? 0 : "../example.txt";
let input = require("fs").readFileSync(filePath).toString().trim();
input = Number(input);
let ansArr = [];
let j = 5;
for (let i = 0; i < input; i++) {
let ans = "";
ans += " ".repeat(i);
if (j > 0) {
ans += "*".repeat(j);
j--;
}
ansArr.push(ans);
}
console.log(ansArr.join("\n"));
그래서 이렇게 문제를 풀어봤는데 오답이라고 떴다
for (let i = 0; i < input; i++) {
let space = "";
space += " ".repeat(i);
for (let j = input - i; j > input - i - 1; j--) {
let star = "";
star += "*".repeat(j);
result += space + star + "\n";
}
}
console.log(result);
풀다풀다 안돼서 구글링을 해봤더니 위처럼 이중 for 문을 사용하여 풀어줬다
도당체 무슨 차이인지 모르겠다
- webpack, typescript 강의 복습
어제 강의를 듣다가 밤샌 여파로 엄청 졸아서 거의 듣지 못해 복습을 했다
typescript 는 배우면 간단한데 쓰다보면 엄격하게 검사를 해주기 때문에 어려운 것 같다
계속 쓰다보면 ts 만 쓰게 된다던데 뭔가 webpack 이랑 같이 해줘서 그런지 더 헷갈리는 것 같았다
예전에 만들어 놓은 간단한 js 프로젝트들을 ts로 변환하는 연습을 하면서 계속 써봐야 겠다
12/7
📝 할 일
- 블로그 정리
- 백준 나머지 4문제
✅ 한 일
- 블로그 정리
블로그 정리를 하려고 했으나..
강의를 오프라인으로 들어서 팀원들과 함께 있다보니 다른 팀원의 4차 과제 오류를 잡아주느라 반도 쓰지 못했다..ㅠ
일지에 변명거리만 자꾸 늘어놓는 것 같아 양심이 콕콕 찔린다
내일은 꼭 해냄.
- 백준 1문제(…)
어느정도 마무리를 했으니 나머지를 다 풀어보려 했으나 또 시간이 오래 걸려서 1문제 밖에 풀지 못했다ㅠ
2442번 별찍기 문제는 트리처럼 별들을 출력하는 문제다
출력 결과를 보니 줄마다 공백은 4 3 2 1 0 이고, 별은 1 3 5 7 9 로 규칙이 보이길래
while 문으로 i 가 4일 때 공백 4개와 star 1 개를 출력하고, i 가 3 일 때 start 3, i 2 일 때 start 5, ... 를 i 가 0이 될 때까지 반복했다
console 을 while 문 안에 찍어서 안될 것 같았지만 일단 정답으로 제출해봤는데 정답이라고 떠서 당황했다
사실 반복문 안에 console 을 찍으면 대부분 에러가 나서 시도도 안해보는데 이번에는 돼서 기분이 좋지만? 당황스러웠다
구글링을 해서 좀 더 좋은 코드를 찾아봤다
let output = "";
for (let i = 1; i <= input; i++) {
output += " ".repeat(input - i) + "*".repeat(i * 2 - 1) + "\n";
}
console.log(output);
굉장히 간결하고 간단해서 좋은 코드인 것 같아 올려본다
12/8
📝 할 일
- 블로그 정리
- 노마드 코더 리액트 마스터 클래스 styled components 듣기
✅ 한 일
- 4차 과제 배포 & 블로그 글 정리
블로그 정리를 시작하려는데 갑자기 팀원분이 pr merge 전 테스트로 볼 수 있도록 deploy preview 를 사용하자고 netlify 로 배포 한번 해달라고 해서 netlify 배포는 처음이지만 해봤다
https://goddino.tistory.com/190 와 https://heropy.blog/2018/01/10/netlify/ 를 참고해서 배포하고
https://docs.netlify.com/site-deploys/overview/#deploy-preview-controls 와
https://tecoble.techcourse.co.kr/post/2021-08-13-test-automation/ 를 참고하여 deploy preview 를 이해했다
배포하다가 https://merrily-code.tistory.com/123 이곳과 동일한 에러가 나서 해결했다
deploy preview 는 위 이미지처럼 설정했고
팀 레포라 잘못될까 무서워서 개인 레포를 하나 배포하여 deploy preview 를 어떻게 하면 쓸 수 있는지 알아봤다
위 이미지처럼 pr 를 하면 해당 pr 에서 deploy preview 가 준비되었다고 알려준다 그러면 빨간 동그라미의 url 을 들어가서 merge 전 pr 의 상태를 확인할 수 있다
배포를 완료하고 일지를 썼다 쫌 양심에 찔리지만 요즘 바쁘다는 핑계로 일지가 엄청 밀려서 기억력 테스트를 하면서 작성했다
강의 들었던 것도 같이 정리해서 내일 개발 블로그 제출할 때 같이 포스팅해야겠다
- 노마드 코더 리액트 마스터 클래스 styled components 듣기
이제 어느정도 기초 문법을 익힌 것 같고 계속 비슷한 프로젝트로 연습할 것 같아서 마스터 클래스 강의로 넘어갔다
근데 자꾸 강의를 들으면 필기를 하려는 버릇이 있어서 이번엔 필기를 하지 않고 쭉 들어보려고 했다
이해가 안되는 부분은 영상 좌표를 적어놓고 다 본 후에 다시 돌아가서 복습해보는 식으로 해보려고 했다
styled components 는 한번 배워봤던 거라 어렵진 않았고 이해가 되지 않는 부분은 없어서 후루룩 볼 수 있었다
아직 효과는 잘 모르겠지만 일단 계속 이런 방식으로 해보고 효과가 없다면 다시 방식을 바꾸는 식으로 해야겠다
12/9
📝 할 일
- 12월 1일자 백준 5문제 마무리
✅ 한 일
- 12월 1일자 백준 5문제 마무리
드디어 5문제를 마무리했다
2443번 별찍기-6 문제는 별을 거꾸로된 트리 모양으로 출력하면 되는 문제다 각 줄마다 별은 9 7 5 3 1 이고 공백은 0 1 2 3 4 로 이전 문제랑 반대로 되어 있다 하지만 이전 문제랑 비슷해보여 똑 같은 방식으로 조건만 다르게 줬는데 백준에서는 오답으로 처리됐다 그래서 이전에 풀었던 별찍기 문제를 구글링했을 때 나온 간결한 코드로 조건만 다르게 해줬더니 정답으로 됐다
2444번 별찍기-7 문제는 다이아몬드 모양으로 출력하면 된다 각 줄마다 공백은 4 3 2 1 0 1 2 3 4, 별은 1 3 5 7 9 7 5 3로 트리와 역트리 모양이 합쳐진 모양이다 그래서 트리와 역트리 for 문을 합쳐서 출력해줬다
2445번 별찍기-8 문제는 출력 모양을 보고 규칙을 유추해서 출력하라고 되어 있다 각 줄마다 공백은8 6 4 2 0 2 4 6 8, 별은 1 공백 1 / 2 공백 2 / 3 공백 3 / 4 공백 4 / 55 / 4 공백 4 / 3 공백 3 / 2 공백 2 /1 공백 1으로 별은 보타이, 공백이 역트리와 트리 모양을 합친 것으로 보였다
그래서 두개의 for문을 두고 공백, 별, 공백이 반복되도록 했는데 첫 for 문은 input 의 1 을 뺀 값부터 감소하여 0까지 출력하고 다음 for 문은 첫 for 문의 마지막과 중복되면 안되니 1부터 input 까지 반복되도록 했다 그래서 두for 문의 i 를 출력해보면 4 3 2 1 0 1 2 3 4 가 나온다
사실 for 문의 초기화와 조건문을 처음에 5~0, 1~5 이런 식으로 줬더니 공백이 더 출력되어서 출력 형식이 잘못되었다는 결과가 나왔다 공백을 @ 기호로 치환해주었더니 위 사진의 nodemon이라고 쓰여있는 것을 기준으로 위 것의 결과가 나오게 되었다 그래서 input 에서 1을 뺀 값으로 수정해주었다
'💨 패스트캠퍼스 > 스터디 일기' 카테고리의 다른 글
[221219-221225] 시간이 이렇게 빨리 간다고? (1) | 2022.12.29 |
---|---|
[221212-221218] 제 코딩공부 정상영업합니다 (0) | 2022.12.22 |
[221128-221204] 바쁘다 바빠 현대사회 (1) | 2022.12.09 |
[221121-221127] 조금 재밌을지도? (0) | 2022.12.02 |
[221114-221120] 복습은 필수 예습은 선택 (1) | 2022.11.25 |