[쫑알로그] 부트캠프 2주차 회고

choi seung-i·2022년 4월 9일
0

쫑알로그

목록 보기
2/14
post-thumbnail

💡 자바스크립트 시험 중 막혔던 것과 알게된 것.

주어진 리스트안에 있는 단어중 가장 긴 단어를 찾을수 있도록 함수를 완성해주세요.

❌ 처음 reduce를 사용 하였을 땐 return을 삼항연산자 안에서 사용하였다.

// 잘못된 삼항연산자의 return 방식
function find_longest_word(arr) {
  	arr.reduce((a,b) => a.length > b.length ? return a : return b
}

⭕️ mdn검색 결과, return은 통채로 시켜야 한다는 것!

function find_longest_word(arr) {
  return(arr.reduce((a,b) => a.length > b.length ? a : b))
}

+++ 추가 : 삼항 조건 연산자

⭕️ 삼항연산자의 return

function find_longest_word(arr) {
  return ((num === 5) ? 'ok' : 'false'))
}

console.log(find_longest_word(5)) // ok

🧐 내가 생각한 결론!

삼항 조건 연산자 표현식은 표현식인 문으로 값으로 사용 가능하지만
if...else 문은 값처럼 사용 불가
=> 값은 바로 return이나 변수에 넣어주는 게 가능한 것


인스타 클론 회고

css도 어려웠지만 바닐라 js로 작업하기란 너무 어려웠다.
그래도 할 수 있는 만큼 최대한 해보려고 하였으나, 3일간 코딩고양이가되어 어떻게든 구현을 해야겠다는 생각에 사로잡히다보니, 욕심이 화를 부른것 같다 ㅠ

결국 리팩토링.. 어디부터 손을 대야할 지 모르는 사태가 되었다.
(새로 만든 돔에 접근하고하는 코드들이 많아지면서 복잡해지기까지...)

완전 만족할 만한 결과물은 아니지만 곧 깃헙에 퍼블해서 리액트로 만든것과 비교해봐야지 :)

그래도 리액트로 넘어 가기 전 어떻게 동작시켜야 할 지 고민하기 좋았던 것 같다.

++ 리액트 인트로 강의좀 들어보니 '반복되는 컨텐츠 내부의 각각 돔 선택이 좀 더 쉬울 순 없을까?' 라는 고민은 리액트가 쉽게 해결 해 줄 것 같다.

🐣 앞으로 프로젝트 할 때 최대한 적용 해 볼 것!!!

  • CSS : 상황에 따라 다르지만 bottom up 방식으로 요소 사이즈를 주자
  • 변수명을 잘 짓자
  • 함수 정리를 잘하자 (기능 1개에 함수 1개씩, 기능 이름으로, 최대한 간소하게)
  • form = 이벤트 위임(상위요소에서 하위요소까지 이벤트 발생)
  • entry point : init 함수 안에 호출 모아두기
  • 불린 네이밍 컨벤션 = 앞에 is를 붙인다 (isValidId)

하루에 최소 2챕터씩 모던자바스크립트 정독하기 시작했는데,
딱, 해당 챕터를 읽을때 겪은 이 말이 너무 와닿았다.

컴퓨터가 이해하는 코드는 어떤 바보도 쓸 수 있다.
하지만 훌륭한 프로그래머는 사람이 이해할 수 있는 코드를 쓴다.

  • 마틴 파울러 Martin Fowler, <리팩토링의 저자>-

이 글을 보고 난 이렇게 생각 했다.
컴퓨터가 이해하는 코드는 오류만 안나면 된다는것? 왜냐, 이해했으니 실행시켜주겠지.
하지만 우린 사람이니, 유지보수 측면에서도 누구나 봐도 '아 이게 이거구나?' 할 수 있는 좋은 코드를 쓰고 싶다.
뭐든지 경험해봐야 깨달음이 있듯이, 이또한 조금씩 조금씩 고쳐 나가 지도록 부딪혀보자!!!



공부하며 정리&기록하는 ._. 씅로그

profile
Front-end

0개의 댓글