분류 전체보기
-
setState가 아닌 방식으로 값을 변경했을 때에도 렌더링되도록 하기Today I Learned 2022. 9. 13. 23:19
퀘스트 과제로 주어진 마카오 페이를 작성하고 있다. 오늘 구현했던 부분 중 어떻게 구현해야 할지 가장 고민이었던 부분은 다음과 같다. 친구 목록에서 특정 친구를 클릭하면 선택되고 테두리에 선택된 표시가 뜬다. (N빵 정산에서 사용) 바로 이런 식으로. 프로그램에서는 친구 목록을 friends라는 배열로 선언하고, 주 컴포넌트 내에서 useState로 관리되도록 하고 있다. 배열을 구성하는 하나의 요소는 { id, name, selected } 값을 갖는 객체가 되도록 했는데, selected 변수가 boolean 값을 가져서 해당 객체가 클릭되었는지 클릭되지 않았는지를 나타내는 기준값으로 사용하고자 했다. 배열의 각 요소들은 친구 목록임을 나타내기 위해 태그 내부에 태그들을 배열 요소의 개수만큼 선언한 ..
-
'큰 일을 하기 위해 지금 할 수 있는 것부터 한다'Today I Learned 2022. 9. 12. 23:57
며칠 전에 아버지께서 해 주신 말이다. 요즘 이전보다 좀 더 적극적으로 적용해보려 하고 있는 테스트 주도 개발 방식에서 이야기하는 것과도 들어맞는다는 생각이 들어 의식적으로 기억에 남겨놓고 있다. 오늘은 큰 단위의 작업을 작은 단위의 부분으로 쪼개고, 쪼개진 부분을 테스트 작성해 테스트를 통과시키는 방식으로 수행하기 위해 노력했다. 가능한 이번 주 동안은 무언가를 할 때 이 방식을 이용해야 함을 계속해서 의식적으로 상기시키려고 한다. 그렇다면 오늘 이 프로세스를 나는 얼마나 잘 따랐을까? 오늘 완전히 새롭거나, 그렇게 느껴지게 접한 것으로는 크게 코딩 도장, 퀘스트 과제가 있었다. 코딩 도장 오늘 풀었던 신고 결과 받기 문제는 사실 한 달 반 전쯤에 풀었었던 문제였기 때문에 큰 흐름은 머릿속에 남아있었지..
-
친구가 내준 문제를 푸는 데 써본 TDD 프로세스Today I Learned 2022. 9. 12. 00:17
금요일 오후에 친구들을 만나는 자리에 맥북을 가지고 갔었다. 맥북을 펼치니 뜻하지 않은 코딩 자랑을 하게 되었는데, VS Code를 켜니 피보나치 수열 소스코드가 나왔다. 마침 친구 중 한 명이 중학교 수학 선생님이었는데, 내게 '특정 수가 주어질 때 해당 피보나치 수의 황금비를 구하는 소스코드를 작성할 수 있는가'를 물어보았다. 순간 당황했지만 친구가 '황금비는 특정 피보나치 수를 바로 앞의 피보나치 수로 나누면 구할 수 있다'는 이야기를 해주었고, 다행이 구하는 방식은 머릿속으로 쉽게 그려졌다. 그때 든 생각, '이걸 TDD 방식으로 구해보는 연습을 해볼 수 있겠다.' 문제에 살을 좀 더 붙여보기로 했다. 요구사항 4보다 큰 자연수가 주어질 때, 4부터 주어진 수까지에 해당하는 피보나치 수들의 황금비..
-
개발 그 이상의 영역?Today I Learned 2022. 9. 10. 02:55
어제 점심식사를 하고 고향 친구를 만나서 가볍게 커피 한 잔을 했다. 오늘 저녁에 또 만나기로 했지만 고향 친구 얼굴 한번이라도 더 보면 좋지. 알게 모르게 다음 레벨 테스트가 다가와있는 만큼 어떤 서비스를 만들어야 할지 은근 고민하고 있었다. 2기 분들이 이미 기존에 존재하는 서비스에서 아이디어를 얻어 자신만의 가치가 녹아들어간 서비스를 만들어내는 것을 보면서 기존의 서비스에서 영감을 얻는 것도 내가 선택할 수 있는 것들 중 하나일 수 있겠구나 싶었다. 큰 범위에서 생각하고 있던 서비스들 중 하나에 대해 친구와 이야기를 나누어 보았고, 그러면서 그간 생각하지 못했고, 사실 거기까지 생각해야 되나 싶었던 부분에 대해 생각해보게 되었다. 사업? 친구에게 이야기하려고 했었던 수준은 어디까지나 '이런 걸 한번..
-
익숙할 땐 몰랐던 소중함Today I Learned 2022. 9. 8. 01:46
오늘도 가벼운 주제의 TIL이다. 오랜만에 고향에 내려와서 매일같이 하고 있는 것이 있다. 아 공부도 물론 매일같이 하고 있고... 해 지기 전에 고향 집의 또 하나의 가족🐕 도토를 1시간씩 산책시켜 주고 있다. 과정을 시작하기 전에는 가족들이 돌아가면서 산책을 시켜주거나 엄마가 나한테 산책좀 시키고 오라고 얘기하실 때 산책을 시켜주고 오곤 했었다. 서울에 있어도 언제든 내려와서 볼 수 있고, 집에 와서도 그냥저냥 여유로우니 산책 갈 때도 '심심하니 산책 한번 갈까~?' 마인드였다. 그런데 지금은 내 많은 것들을 통제하던 와중 잠깐의 숨고르기를 할 수 있는 시간 동안 도토를 보니 이전보다 더 반갑고, 도토와 산책하고 뛰어다닐 수 있는 시간이 예전보다 더 소중하게 느껴졌다. 익숙할 땐 그 순간이 얼마나 소..
-
쉽지 않다 reduce...Today I Learned 2022. 9. 7. 02:46
Github 1기 과제 제출 저장소의 Pull Request 목록을 둘러보던 중 내가 제출했던 피보나치 수열 생성기 과제가 아직도 merge되지 않은 부분이 눈에 띄었다. (과제 요구사항) 피보나치 수열 생성은 재귀함수 방식으로 풀 경우 숫자가 커질수록 계산 횟수가 급격하게 불어나는 문제점이 있다. 주어진 수보다 2 작은 수, 1 작은 수를 인자로 갖는 자기 자신의 함수를 재호출해서 더하는 과정을 거치는데, 인자가 작아질수록 같은 계산을 반복하는 과정이 늘어나면서 O(2^n)이라는 좋지 않은 시간 복잡도를 갖는다고 한다. 그래서 이전에 계산해놓은 결과 값이 있을 경우 그 값을 참조하는 Memoization 방식을 이용할 경우 계산 횟수를 획기적으로 단축시킬 수 있다. 최근 JavaScript의 배열에 사..
-
유연한 선택이 필요하다카테고리 없음 2022. 9. 5. 11:32
방학인 만큼 TIL도 다소 부담을 덜고 가볍게 작성해보려 한다. 한 주를 시작하면서 나름 의미있다고 느끼는 두 가지 선택을 했다. 원래 오늘 고향에 내려올 때 기차에 자전거를 싣고 내려올 계획이었다. 그간 맘 편히 타지 못했던 자전거를 공부하고 난 뒤 보상 삼아 타고 싶었다. 그런데 웬걸, 태풍이 올라오고 있다. 일단 자전거를 기차에 실을려면 서울역까지 자전거를 가져가야 하는데, 비를 맞으면서 자전거를 끌고 갈 수는 없다. (내가 상하는 건 상관없는데 자전거가 상한다. ㅋ) 그래서 내려가는 날짜를 태풍이 지나간 수요일쯤으로 늦춰서 내려갈까를 고민했다. 그런데 이왕 이렇게 된 김에 생각을 해보았다. 고향에서 자전거를 타려면 공도에서 타야 하는데, 이 지역은 자전거를 탈 만한 2차선 도로가 언덕배기에 사면이..
-
뽀모도로 시트Today I Learned 2022. 9. 4. 23:59
동료분께서 꾸준히 하고 계는 뽀모도로 시트 작성을 어제부터 나름대로 따라서 작성해보는 시도를 하고 있다. 오늘의 뽀모도로마다 목표했던 내용과 결과를 돌아보면서 개선해야 할 점을 생각해본다. 오늘 목표했던 To Do 목록 코딩 도장 최소 수 목, 가능하면 지난주 목까지 다 해치우기!!! PPP TDD 책 1부 2장소단원 타락한 객체까지, 3부 25장 테스트 주도 개발 패턴 읽기!! 12주차 강의 적어도 2강까지는 강의노트 작성할수 있도록!! 3뽀모도로 동안 Git 스터디 준비 오후 4시에는 화장실, 주방 청소 질문글에 올렸던 intercepter의 attribute가 작동하는지 검증해보기 코드리뷰 빈틈없는 회원가입 리팩터링 10:45~11:15 수요일 코딩 도장 체육복 Java 풀이 도전 시간 가는 줄도..