본문 바로가기

TIL

2020년 10월 Today I Learned

728x90
반응형

Day 1_THU

  1. 유튜브 클론코딩
  • #2.0 ~ #3.12 Day 18 코딩 과제 수행 중(3일짜리)
  • 상세페이지 구성을 아무것도 안보고 만들지 못했다. extends 하고, block 하고, 그 안에 ul, li, a(href=..) 사용 등 ul, li, a가 필요한건 아는데 어떻게 써야하는지 안보고 쓰려니 바로 적을 수가 없었다. 하지만 예제를 보면서 만드니까 block content 아래에 작성하고, ul, li 등을 쓰는 법도 알게 되었다. 그리고 controller에서 get, post 따로 만들지 않고 add 안에서 if문으로 method가 get일 때, post일 때 따로 명령을 주는 것을 어떤걸로 하는건지 헷갈렸다. 그렇게 하면 되는건 아는데 안보고 쓰는 것이 안된다.
  1. 정보처리산업기사 실기
  • eduon 알고리즘 강의 3강 들으면서 노트 정리
  • 업무프로세스 읽고 블로그에 글 정리
  • 그동안 수없이 짰던 반복문에 대해 알고리즘을 하나하나 뜯어가며 공부하니 새로운 걸 배우는 느낌이다. 특히 선증가 후증가 방식은 알고 있으면서도 사용할 때는 정확히 알지 못하고 그냥 습관처럼 쓰는 느낌이었는데 알고리즘적으로 뜯어보며 공부하니 이제는 명확히 알고 쓸 수 있을 것 같다.
  1. 블로그
  • 업무프로세스 글 작성
  • 블로그 테마 응용

Day 2_FRI

  1. 유튜브 클론코딩
  • #2.0 ~ #3.12 Day 19 코딩 과제 수행(3일짜리)
  • 과제 수행하면서 조금이라도 애매하거나 모르겠는 부분은 체크해뒀다. 어떻게 만들어야 하는지 과제가 주어지니까 확실히 수행하면서 어떤 부분이 부족하고 더 공부해야 하는지 알 수 있어서 좋은 것 같다.
  1. 정보처리산업기사 실기
  • eduon 알고리즘 강의 4강 듣기
  • 알고리즘 3, 4강 노트 정리

Day 3_SAT

  1. 유튜브 클론코딩
  • #2.0 ~ #3.12 Day 19 코딩 과제 수행(3일짜리)
  • 과제 제출 직전까지 했지만 완료하지는 못했다. 이전에 filter 기능 했던 것과 같은 식으로 했는데도 진행이 안돼서 계속 도전해봤지만 시간 내에 완성하지 못했다. 다음 과제 나올 때 니꼬쌤의 코드와 내 코드를 비교해봐야겠다. 아직 많이 부족함을 느낀다.
  1. 정보처리산업기사 실기
  • eduon 알고리즘 강의 6강 듣기
  • 알고리즘 6강 노트 정리
  • 배수 구하기는 알고리즘이 간단했는데 강의를 하나 밖에 못 들었다. 이렇게 이미 알고 있거나 간단한 알고리즘을 할 때는 강의를 하나 이상 듣도록 해야겠다.
  1. 파이썬
  • 파이썬, 파이참 설치
  • 이미지 웹 스크래핑(크롤링)
  • 스파르타 온라인에서 추석 연휴에 무료로 파이썬 3일차로 구성된 강의를 제공한다고 해서 신청해뒀었다. 깜빡 했다가 들어가서 1일차를 진행하고 들었는데, 소문이 무성하던 파이썬 문법을 직접 사용해보고 간단하게 웹 스크래핑을 해봤다. 문법도 간단하고, 라이브러리가 강력해서 별 거 하지도 않았는데 자동으로 이미지를 긁어오는게 신기했다. 문법도 너무 간단해서 신기하고 재밌었다.

Day 4_SUN

  1. 정보처리산업기사 실기
  • eduon 알고리즘 강의 7강, 8강 듣기
  • 알고리즘 7강, 8강 노트 정리
  • 분수 수열의 합계와 소수 구하기를 하는데, 소수 구하기에서 에라토스테네스의 체가 나와서 반가웠다. 42에서 소수 구하기 할 때, 에라토스테네스의 체 방법이 있다는 것도 알게 됐는데 강의에서 선생님께서 효율적인 알고리즘은 아니라고 하셨다. 굉장히 신기하고 효율적이라고 생각했었는데.. 역시 더 열심히 공부해야겠다.

Day 5_MON

  1. 정보처리산업기사 실기
  • eduon 알고리즘 강의 9강 듣기
  • 밤낮이 바뀌었더니 12시 안에 커밋을 해야한다는 것을 잊게 되는 것 같다. 12시에 자고 6시에 일어나는 생활을 했다면 자기 전까지 커밋을 했을 텐데.. 잔디밭에 구멍이 나버렸다. 할머니 집에 다녀왔는데 집 와서는 저녁 먹고 피곤하고 배불러서 기절하는 바람에 강의 듣고 정리하려던 것도 못했다. 밤낮은 다시 바꿔야겠다. 필요할 때 밤을 새는 건 어쩔 수 없지만 밤낮을 아예 바꾸는건 열심히 하지 않게 되는 계기가 되는 것 같다.

Day 6_TUE

  1. 유튜브 클론코딩 챌린지
  • #4.0 ~ #4.3 Day 22 퀴즈 완료(11/10)
What is the difference between "entry" and "output" in Webpack? 라는 질문에 "entry" is a path to 
the root file of our app and "output" is a path to the directory where all the transformed assets 
should go.를 선택해야 했는데 다른 답을 선택해서 틀렸다. 문장이 길어지니 집중력이 흐트러져서 제대로 해석하지 
않고 답을 골랐다. 이래서 영어를 잘하는 건 중요한가보다..
  1. 바닐라 JS 챌린지
  • #1.1 ~ #1.5 Day 1 퀴즈 완료(10/10)
  • #1.6 ~ #1.10 Day 2 퀴즈 완료(19/19)
  • 헷갈리는 부분도 있었지만, 처음에 강의 들으며 정리했던 노트와 강의를 다시 참고하니 어렵지 않게 풀 수 있었다. 조금 어려운 게 있었다면 이번에도 영어..
  1. 정보처리산업기사 실기
  • 시나공 48p ~ 89p
  • 비전공자를 위해 C언어 기초를 알려주는 부분을 공부하며 책에 수록된 문제를 풀어봤다. C언어를 이미 공부해본 적이 있어서 이해하기 어렵지 않았다. 42에서 나왔던 문제들 중 진도를 못 나가서 이름만 들어봤던 구조체나 문제를 풀 때 사용했지만 매번 헷갈렸던 포인터에 대해서 공부하니 재밌었다. 구조체는 C언어에서 처음 보지만 javascript나 java에서 비슷하게 사용했던 것들이 생각나서 이해가 쉬웠다. 어려울 줄 알았는데 전혀 어려울 게 없어서 놀랐다.
  1. 블로그
  • git 관련 에러 해결 관련 글 작성
  • 그동안 충돌난 적이 없어서 해당 오류를 본 적이 없었는데, 이번 기회에 충돌이 나면 어떤 오류가 발생하고 어떤 식으로 해결할 수 있는지 배우게 됐다.

Day 7_WED

  1. 유튜브 클론코딩 챌린지
  • #6.0 ~ #6.5 Day 24 퀴즈 완료(7/10)
  • 정확히 개념이 잡히지 않아서 이게 뭐지? 싶은 문제들이 많았다. 헷갈렸던 것에 비하면 적게 틀렸다고 생각한다.
  1. 바닐라 JS 챌린지
  • #2.1 ~ #2.4 Day 3 코딩과제 수행
  • 강의로 들었던 것과 다른 방법으로 함수를 정의하고 사용하는 과제를 해결하니 이해도가 더 높아진 것 같다. 챌린지 관련 내용은 공유할 수 없어 따로 private repository를 생성하여 챌린지 과제를 정리하며 피드백을 작성하고 있다.
  1. 정보처리산업기사 실기
  • 알고리즘 9강 노트정리
  • 알고리즘 10강 들으며 노트 정리 중

Day 8_THU

  1. 유튜브 클론코딩 챌린지
  • Day 25, 26 코딩과제 수행(2일짜리)
  • 문제를 보고 잘 모르겠어서 request 관련해서 참고용 링크를 보고 슬랙을 찾아봤다. 시간을 오래 투자하지 않아서 아직 잘 모르겠지만 내일 집중해서 해야겠다.
  1. 바닐라 JS 챌린지
  • #2.5 ~ #2.7 Day 4 코딩과제 수행
  • 2시간 조금 넘게 걸려서 과제를 완료했다. 완전 아무것도 모를 때보다 빈 화면에 어떻게 코딩하면 될지 어렴풋이 아는 정도는 됐다. 특별히 많은 것을 요구하는 과제가 아니었는데도 특이하게 많은 피드백을 작성하게 됐다. 큰 틀을 알게 되면 자잘한 것들에서 배워야 할 것들이 많다는 사실을 매번 깨닫는다. 그리고 콜백함수에 대한 이해가 부족하다. 공부를 제대로 해야겠다.
  1. 정보처리산업기사 실기
  • 시나공 91p ~ 121p
  • 알고리즘 10강 마저 듣고 노트 필기 정리
  • C언어와 자바의 기초를 공부하고 주어진 문제를 풀었다. 국비지원 학원에서 자바가 어렵고 헷갈렸던 기억에 스프링 설정 할 것들이 많았던 것(+ 설정에서 에러 너무 많이 나는 것..)들이 더해져 자바에 거부감이 조금 있었다. 그래도 C++을 하면서 객체지향을 이렇게 하면 자바도 괜찮을 것 같다는 생각이 들기 시작했는데, C언어와 javascript 등을 열심히 하고 다시 봐서 그런가 그 때 사용했던 것들을 왜 그렇게 사용했었는지 이해되면서 더 많은걸 보게 되고 훠얼씬 재밌었다! 개발이 이렇게 재밌는거였다니, 내가 자바를 이렇게나 좋아하다니! 그리고 문제는 많이 맞았는데, 반복문에서 마지막에 i++ 안해주는거 신경써야 한다. 비트연산자 문제는 아예 다 틀렸다. 아직 이해가 부족해서 제대로 시도도 못했다.

Day 9_FRI

  1. 유튜브 클론코딩 챌린지
  • Day 25, 26 코딩과제 수행(2일짜리)
  • import express, request된 거랑 app.listen 빼고는 완전 백지상태로 코딩을 시작했더니 view engine를 추가하지 않아서 첫 페이지 띄우는 것부터 고전했다. 그래도 덕분에 다시는 잊지 않을 것 같다. ㅎㅎ.. 과제를 하나하나 진행할 때마다 아직 나한테는 너무 어려운 과제라는 생각이 든다. 어떻게든 다음으로 넘어가긴 하지만 스스로 사고해서 답을 찾는 것이 아니라 어디서 구글링이나 슬랙을 통해 방법을 찾는다. 실력에 비해 너무 과한 과제를 요구하는 챌린지를 시도하는 것이 아닌가 생각이 든다. 말 그대로 도전이긴 하지만 이렇게 정답 코드, 남의 코드에 의지해 계속해 가는 것이 맞는지 고민이 된다. 지금은 무리해서 과제를 넘어가기보다, 내 실력에 맞는 바닐라 JS 챌린지를 하며 좀 더 혼자 문제를 해결할 수 있는 능력을 갖추고 다시 도전하는게 맞지 않을까? 우선 오늘 과제는 열심히 해보고 주말동안 이전 챌린지 과제 복습하면서 고민해봐야겠다. 어차피 해야 할 것들이 많으니, 선택과 집중을 해야할 것 같다는 생각이 든다. 글로 쓰다보니 생각이 정리된다. 그래도 과제는 계속 받으면서 정리를 해둬야겠다. 챌린지는 열릴 때만 시도할 수 있고, 열리지 않으면 문제를 보는 것도 불가능하니 내가 필요할 때 과제를 하나 하나 해결해가야지.
  1. 바닐라 JS 챌린지
  • #3.1 ~ # 3.2 Day 5 코딩과제 수행
  • 1시간만에 과제를 완료했다. 구글링의 도움을 굉장히 많이 받아서, 생각하는 연습을 하지 못한 것 같다. 문제를 보고 잠깐 이런이런 방법을 사용하면 되지 않을까? 근데 어떻게 해야할 지 모르곘다. 하고 바로 구글링을 했기 때문이다. 지금은 그렇게 문제를 해결했지만, 다음 과제는 충분히 고민해본 후 진행해야겠다. 마치 정답을 보고 문제를 풀어낸 느낌이다. 그리고 강의에서 나왔던 삼항연산자를 못써먹고 if문으로 써야하나 고민했다. 강의를 보고 도움을 받았지만, 다음에는 다시 백지에서 코딩해봐야 할 것 같다.
  1. 정보처리산업기사 실기
  • eduon 알고리즘 11강, 12강 듣고 노트 필기 정리
  • 마방진, 대각선 채우기에 관한 알고리즘 강의를 듣고 노트 정리를 했다. 규칙을 찾아 해결하는 알고리즘을 배우는게 너무 재밌다. 마방진은 문자로 된 것만 알았지 숫자는 생각도 못했었다. 그런데 강의에서 숫자로 된 마방진을 설명하며 거기에도 규칙이 있고, 그 규칙에 따르면 누구나 만들 수 있다는 것을 알려줬다. 42에서 과제로 스카이스크래퍼 규칙을 찾던 시간도 생각이 나고 재미있었다. 대각선 채우기도.. 문제를 해결하는 알고리즘은 참 재밌다. 나도 어서 실력을 키워서 문제에 적절한 해결 방법을 찾아낼 수 있으면 좋겠다.
  1. C++
  • 따배씨++ 강의 0.0 ~ 1.6(중에서 부족한 부분 골라서) 들음
  • 입출력스트림과 함수 관련 강의 블로그에 글 정리
  • C와 문법이 거의 흡사한데 객체지향과 메모리 관리를 모두 공부할 수 있다고 해서 C++ 언어를 공부하기로 마음먹었었다. 하지만 stl을 사용하는 방법이 너무 낯설어서 마치 전혀 다른 문법의 언어인 것처럼 적응이 안됐다. 그러다 구글링만으로 C++ stl과 문법을 모두 익히기는 시간낭비라는 생각이 들어 C++ 강의로 유명한 따배씨++ 강의를 듣기 시작했다. 확실히 초보자를 대상으로 하는 강의이다보니, 기본적인 내용이지만 잘 모르고 궁금했던 부분들(std::는 왜 쓰는가?, 생략할 때는 왜 생략하는가? 등)까지 꼼꼼하게 알려줘서 알차게 배울 수 있었다. 확실히 stl에 대해서 이해하고 공부하다보니 C언어와 왜 같다고 하는지 알 것 같았다. printf이나 그와 비슷하게 생긴 것들만(system.out.print 등) 알고 있었는데, cout과 cin을 사용하고 배우니 매우 흥미롭고 재미있었다. 강의가 많지만 C언어를 배웠던 기반이 있기 때문에 아는 부분은 빠르게 들으면서 넘어갈 수 있을거라고 기대해본다.

Day 10_SAT

  1. 스파르타 코딩
  • 파이썬 혼자놀기 패키지 2일차
  • 기사를 크롤링해서 엑셀 파일로 저장하는 법을 공부했다. 이렇게 간단한 코드로 사이트에서 원하는 부분을 긁어오고, 그걸 엑셀 파일로도 저장할 수 있다니! 신세계를 본 것 같다. 하지만 처음 코딩하는 사람들이 쉽게 따라갈 수 있도록 간단한 강의이다보니 발생할 수 있는 에러 상황에 대한 언급이나 대처 방안도 마련이 되어 있지 않았다. 그나마 다행인건 슬랙 채널이 있다는 점? 검색해서 나온 기사의 이미지, 제목, 링크, 신문사를 긁어오는 것이 과제였는데 이미지가 없을 경우에 대한 대비가 되어 있지 않았다. 파이참은 계속해서 에러를 뱉어냈고.. if문으로 어떻게든 해결해보려 했지만 파이썬 문법은 잘 몰라서 속성은 어떻게 가져와야 하는지, 어떻게 비교해야 할 지 구글링을 하다가 슬랙에 질문 글을 올리고, 정답 코드와 비교했을 때는 올바르게 코딩을 한 것이길래 그냥 그대로 제출했다. 파이썬에 대한 호기심으로 수강하긴 했지만 오늘은 해야 할 일을 제대로 못했기에 그리고 혼자 구글링으로 알아내는 건 한계가 있다고 생각했기 때문에.. 그래도 재밌었다. 언젠가는 써먹을 수 있지 않을까? 이번 경험 덕분에 다음에 파이썬을 접하게 되더라도 당황하지 않을 것 같다. 원래 3일차까지 하려고 했는데 과제에서 예상치 못하게 시간을 많이 잡아먹혀서 내일 이어 해야겠다.
  1. C++
  • 따배씨++ 강의 1.10 ~ 1.13 듣고 필기
  • 헤더파일과 네임스페이스를 공부하고 매크로도 간단하게 알아봤다. 이번에도 42에서 익숙했던(많이 들어봤지만 해당 과제까지 가지 못해 사용은 못한...) 헤더파일의 사용을 자세히 알 수 있었다. 헤더파일은 .c가 아니라 .h인 것과 함수의 정의를 넣는다는 것 정도는 알았지만 헤더파일에 헤더파일을 include할 수 있는 것과, 함수 전체를 넣고 테스트를 하기도 한다는 사실은 새로 알게 됐다. 매크로도 42에서 사용하지 말라고 해서 알고는 있었는데, 사용하는 걸 보니 편해보인다! 하지만 매크로 대신 함수로도 사용할 수 있을 것 같아서 왜 쓰지말라고 했는지는 알 것 같다. 물론 매크로를 좀 더 배워보면 꼭 필요한 상황을 판단할 수 있겠지만 나는 그런게 부족하니 제대로 알기 전에는 사용을 지양해야지. 네임스페이스도 신기했다. 네임스페이스 안에 네임스페이스를 쓰고..

Day 11_SUN

  1. 파이썬
  • 스파르타코딩 혼자놀기 패키지 3일차
  • wordcloud 패키지로 카카오톡 대화 중 빈도수가 높은 키워드를 시각화하는 법을 공부했다. 데이터를 다루는 사람들이 가장 중요하게 여긴다는 데이터 클렌징을 하며 왜 중요한지 깨달았다. 클렌징 없는 데이터는 도움이 되지 않는다고 할 정도로 쓸데없는 데이터가 많다. 그렇게 데이터를 필요한 것만 모아 원하는 모양으로 워드 클라우드를 만드는 것을 오랜 시간을 들이지 않고 가능하다는게 신기했다.
  1. 블로그
  • 블로그 테마 구조 파악
  • 블로그 테마 수정
  • 구조를 파악하는데 시간이 오래 걸렸지만, 띄엄띄엄 할 때보다 계속 붙잡고 있으니 더 헷갈리지 않는다. 며칠에 걸쳐 조금씩 할 때는 매번 할 때마다 새로웠는데, 오히려 하루의 시간을 내는 것이 조금씩 하는 것보다 더 효율이 좋을 수 있다는 것을 깨달았다. 현재 하는 일을 유지하면서 무조건 나눠서 해야겠다는 생각이었는데..

Day 12_MON

  1. 바닐라 JS 챌린지
  • #3.5 ~ #3.7 Day 8 코딩 과제중
  • 이런식으로 해야겠다는건 알겠는데 여전히 어떤 명령어를 써야하는지는 잘 모른다. 모르는 부분은 바로바로 피드백 작성하며 공부하니 더 잘되는 것 같고, 뭘 모르는지 알게 되어서 어떤 부분을 집중해서 공부해야 할 지 알게된다. 메타 인지가 높아지는 느낌이라고 해야하나.. 어쨌든 빈 종이에 처음부터 코드를 채워나가는게 어렵지만 재밌다. 처음부터 구현하는건 아직은 어려운게 더 크지만 이 어려움을 넘어서면 분명 재미가 훨씬 커질거라고 믿는다.
  1. 정보처리산업기사 실기
  • eduon 알고리즘 13강 강의 듣고 노트 필기
  • 실기 기출문제를 함께 풀어가는 강의를 들었다. 같은 문제에 대해서 여러가지 알고리즘이 나올 수 있다는 사실은 알고 있었지만, 생각보다 너무 다양하게 만들어 낼 수 있어서 신기했다. 배웠던 것들을 자꾸 헷갈릴 때가 있는데 매번 새로 말해주셔서 복습이 된다. 나름대로 푼다고 풀었는데 많이 틀렸다. 문제에서 생각하는 방법을 더 배울 수 있어서 좋다.
  1. C++
  • 따배씨++ 강의 1.14 ~ 2.5 듣기
  • 오늘 들은 강의는 자료형에 대한 내용이 대부분이었다. 손으로 쓰면서 듣기에는 효율이 좀 떨어지는 것 같아서 첫 강의 빼고는 그냥 틀어두고 빠르게 들었다. 초보를 위한 강의라 개념 잡기 위해서 듣기에는 좋은데 아는 부분들이 겹칠 때는 괜히 시간을 쓰는 것 같은 느낌이 들기도 한다. 이럴 때는 빠르게 넘어가며 모르는 부분을 제대로 아는 것에 집중하자.
  1. 블로그
  • 블로그 테마 색상 수정
  • 오늘은 시간을 별로 안들였다. 마음에 안들었던 좀더 세세한 부분을 고쳤다. 큰 틀은 고치기 쉽지만 세세한 부분은 파일을 찾고 그 안에서도 해당 부분을 찾으며 고쳐야 해서 좀 까다롭고 귀찮다고 생각했다. 하지만 하고 나니 블로그가 점점 더 마음에 드는 것 같다. 어서 글도 다 옮겨서 새로운 블로그를 사용하고 싶다.

Day 13_TUE

  1. 정보처리산업기사 실기
  • eduon 알고리즘 14강 강의 듣고 노트 필기
  1. C++
  • 따배씨++ 강의 2.6 ~ 2.9 듣기
  • 알고 있던 자료형의 내용보다 상세하게 알게 되었다. 숫자는 코드 안에 바로 쓰지 않도록 해야하고, 파라미터로 받는 것들은 심볼릭 상수로 값을 바꾸지 못하도록 쓰기도 한다는게 신기했다. 그냥 이렇게 이렇게 쓸 수 있다는 것만 알고 있다가 하면 안되는 것들을 위한 규칙도 알려주니 너무 유익하다! 하지만 집중해서 필기하면서 들은 정도는 아니어서 다음에 한번 더 보면서 정리해보면 더 좋을 것 같다.
  1. 바닐라 JS 챌린지
  • #3.5 ~ #3.7 Day 9 코딩 과제중
  • 오늘은 시간이 얼마 안남아서 거의 복습하는 마음으로 이전에 공부했던 것 참고하면서 구현했다. 그래도 기능이 추가되고 응용된 것들이 과제로 나와서 어렵고 공부가 되는 느낌이다.

Day 14__WED

  1. 바닐라 JS 챌린지
  • Day 10 코딩 과제 완료
  • 카지노 게임(랜덤 숫자 맞추기 게임)을 구현했다. 난수를 생성하는 방법은 자주 썼었는데, 다시 쓰려니 기억이 가물가물 했다. 구글링의 도움을 받아 기능을 모두 구현했다. feedback 작성이 늘 도움이 많이 된다는 생각을 한다.
  1. C++
  • 따배씨++ 강의 3.1 ~ 3.6 듣기

Day 15__THU

  1. 바닐라 JS 챌린지
  • Day 11, 12 코딩 과제중
  • Javascript로 계산기를 구현하는 과제였다. 오랜만에 pug나 scss 말고 순수 html, css를 하니 새로운 느낌이었다. 조금 걱정했는데, 시맨틱하게 구조를 작성했는지는 모르겠지만 생각보다 금방 디자인을 완성해서 만족스러웠다. span에 디자인을 주는 것은 해본 적이 없었던 것 같은데, 새로운 방법을 알게 되어 좋았다. input type="button"을 사용했다가 button으로 바꾸면서 좀 더 편하게 활용할 수 있다는 사실을 알게 됐다. 미묘한 차이점에 대해 조금 알 수 있었는데, 정확하지 않아서 제대로 공부하고 블로그에 글을 남겨두고 싶다. 기능도 끝낼 수 있을까? 했는데 클릭한 숫자를 입력받는 것부터 생각보다 오래 걸렸다. 이틀짜리 과제니 내일 끝낼 수 있을 것 같다.

Day 16__FRI

  1. 바닐라 JS 챌린지
  • Day 11, 12 코딩 과제 완료
  • 기능 구현은 구글링 없이 스스로 끝낸 것 같다. 딱히 구글링을 사용한 기억이 없으니 만약 구글링을 했더라도 손에 꼽을 것 같다. 스스로 이렇게 기능을 구현할 수 있을거라고 옛날에는 생각도 못했는데, 너무 뿌듯하다. 몇 가지 기능을 더 구현하고 싶었는데 일단은 과제의 기능을 예외처리와 함께 모두 구현했다는 사실에 만족한다. 더 구현하고 싶은 기능은, 1000의 자리 수대로 ,가 추가되어 구분할 수 있도록 하는 것이다. 하지만 입력받을 때도 동일한 기능이 동작해야 하는데, 입력은 xx,xxx,xxx로 받더라도 계산 시에 ,를 무시하도록 하려면 너무 복잡해질 것 같다. 당장은 좋은 방법이 떠오르지 않으니 다른 일들을 위해 잠깐 미뤄둬야겠다. 그리고 소수점을 입력받을 수 있도록 하고 계산하도록 구현하고 싶다. 이건 지금 생각할 때는 ,보다는 쉬운 것 같지만 막상 구현은 어떨지 모르겠다. 아! 입력만 .를 사용할 수 있도록 하면 되나..? 원래 number로 해주던 형변환을 double이나 float로 하면 될 것 같기도 하고..? 아직 자바스크립트의 타입에 대해서는 명확하게 구분을 못하겠다. const나 let은 구분이 되고 각 타입이 따로 있는 것 같지는 않은데 기본은 string인가? 이번 과제에서 다양한 의문을 품게 된다. 재밌다!!!

Day 17_SAT

  1. 바닐라 JS 챌린지
  • Day 11, 12 코딩 과제 마무리
  • 결과 위에 작은 글씨로 계산 과정이 출력되는 기능을 추가했다. 숫자나 연산자를 누를 때마다 바로바로 계산 과정에 추가되도록 했다. 조금 헤맸지만 어렵지는 않았다! 그리고 과제에서 나왔던 아이폰 계산기 스타일 디자인에서 아예 새로운 디자인으로 수정했다. 좋아하는 노란색을 테마로 디자인 한 뒤, 제목에 잘 어울리는 병아리 이모티콘을 추가했다. 새벽에 열심히 해서 제출했는데 제출 오류 때문에 챌린지 완주는 못하게 되었다. 그래도 그동안 과제를 잘 따라가며 얻은 것들이 있어서 속상한 마음은 금방 털어냈다. 스스로 해냈던 것들이 뿌듯하다!
  1. 정보처리산업기사 실기
  • eduon 알고리즘 16강, 17강 듣고 노트 정리
  1. 깃허브
  • 프로필 꾸미기
  • 예전부터 꾸며야지 꾸며야지 했던 깃허브 프로필 README를 꾸몄다. 확실히 보기 좋아지고, 간단한 설명으로 나에 대해 설명할 수 있어서 좋다. 시간은 좀 걸렸지만 언젠가 해야할 일이었고, 깃헙 들어갈 때마다 기분 좋아서 만족한다.

Day 18_SUN

  1. 정보처리산업기사 실기
  • eduon 알고리즘 18강, 19강 듣고 노트 정리
  1. C++
  • C++ 컨테이너 관련 블로그 글 작성
  • C++의 기초에 대해 공부 하는데, 공부할 때 중요한 것은 조금씩이라도 정리하는 것이라고 생각해서 조금 정리했다. 하지만 정리하는데 생각보다 시간이 많이 들어서 효율적으로 할 수 있는 방법에 대해 생각해보면 좋을 것 같다.

Day 19_MON

  1. 정보처리산업기사 실기
  • eduon 알고리즘 20강, 21강 듣고 노트 정리
  • 시나공 220p ~ 226p 업무 프로세스 읽기
  • 시나공 영문 약어 468p 읽기
  • 알고리즘 소인수 분해와 화폐매수 구하기에 대한 강의였다. 소인수 분해는 학생 때 수학시간에 배웠던 내용이라 쉽게 이해할 수 있었는데, 컴퓨터식으로 순서대로 답을 구하는 알고리즘을 배우게 되어 재밌었다. 그리고 알고리즘 문제에서 언젠가 본 것 같은 화폐 매수 구하기에 대해 원리를 이해하니 너무 재밌었다! 화폐 매수를 구하는 것에도 규칙이 있고, 그 규칙을 이용하면 쉽게 알고리즘을 만들어 문제를 해결할 수 있다는게 신기했다. 그리고 그 알고리즘이 쉬워서 신기했다. 업무 프로세스 공부할 게 생각보다 많지 않았다. 인터넷에 요점정리된 것만 볼 때보다 전체를 보니 이해가 쉽고 나중에도 유용하게 쓰일 것 같아 좋다. 시나공으로 전체를 다 읽은 후에 요점정리 된 내용을 암기하면 공부가 더 잘될 것 같다. 영문 약어 CCL이나 CAPTCHA와 같이 인터넷 상에서 많이 보던 약어나 프로그래밍 할 때 봤던 AJAX같은 약어들에 대해 나와있었다. 어려워서 흥미를 잃으려고 하면 중간중간 궁금했던 단어들이 있어 흥미를 갖고 볼 수 있었다.
  1. 알고리즘
  • 동빈나 실전 알고리즘 11강
  • 힙정렬 관련 짧은 강의 영상
  • 힙정렬에 대한 강의들을 봤는데, 처음에 이해가 잘 안됐다. 힙정렬 자체는 다른 강의도 추가로 보니 이해를 했지만 알고리즘이 쉽게 이해가 되지 않아 천천히 몇 번이나 돌려봤다. 내일 한번 더 봐야할 것 같다.
  1. C++
  • C++ 시퀀스 컨테이너 글 내용 보충
  • 어제는 시퀀스 컨테이너의 전체적인 내용과 vector에 대한 내용을 정리했고, 오늘은 deque와 list, forward에 대한 내용을 추가했다.

Day 20_TUE

  1. 정보처리산업기사 실기
  • eduon 알고리즘 22강, 23강 듣고 노트 정리
  • 어제 시나공 업무 프로세스 복습
  • 시나공 227p ~ 238p 업무 프로세스 읽기
  • 시나공 469p 영문 약어 읽기
  1. 알고리즘
  • 블로그에 작성한 정렬 알고리즘 글 복습

Day 21_WED

  1. 정보처리산업기사 실기
  • eduon 알고리즘 24강, 25강 듣고 노트 정리
  • 시나공 239p ~ 257p 업무 프로세스 읽기
  • 시나공 470p 영문 약어 읽기
  1. C++
  • C++ 시퀀스 컨테이너 글 내용 보충

Day 22_THU

  1. 정보처리산업기사 실기
  • eduon 알고리즘 26강 듣고 노트 정리
오늘은 자소서 쓰느라 공부를 많이 못했다.
최근들어 집중력과 실행력이 떨어진게 너무 크게 느껴진다.
내일부터는 다시 시작할 수 있길!

Day 23_FRI

  1. 정보처리산업기사 실기
  • eduon 알고리즘 27강, 28강 듣고 노트 정리
  1. 알고리즘
  • 백준 2751번 정렬 문제 풀기
  • C++ STL sort 함수를 사용해 문제를 풀었다. 알고리즘을 직접 짜지 않고 C++ STL을 활용해 푼 건 처음이었는데, 굉장히 간편하다고 느꼈다. 알고리즘 풀면 시간이 오래 걸릴까봐 계속 미루고 못 풀었는데, 막상 풀어보니 시간도 엄청 적게 걸리고 간단했다. 내일부터는 조금 덜 어려워하고 시작할 수 있을 것 같다.
  1. 인프런
  • 자바스크립트 ES6+ 기본 섹션 0 소개
  • 눈떠보니 코딩 테스트 전날 문제 1 _ 파이썬
  • 눈떠보니 코딩 테스트 전날 문제 1 _ 자바스크립트
  • 자바스크립트 강의를 지금 들을까 말까 고민했는데, 노마드코더 챌린지가 끝나니 자바스크립트를 안하게 되어서 차근차근 조금씩 듣기로 했다. 아무래도 한번 프로젝트를 만들고 애매하거나 궁금했던 개념을 정확히 짚고 갈 수 있어서 많이 도움이 될 것 같다. 자바스크립트를 배우면서 초반에 백준 문제를 자바스크립트로 풀어보려고 했었다. 하지만 어떻게 출력하는지, 어떻게 시작하는지 몰라서 익숙한 언어로 돌아갔던 기억이 있다. 그런데 강의를 보니 콘솔에 찍어서 출력하는거였구나, for문에 in이나 of를 사용할 수 있구나 하고 새롭게 배웠다. 앞으로는 자바스크립트로 알고리즘 문제도 풀 수 있을 것 같아서 신난다! 그리고 파이썬은 지난번에 워드클라우드 강의를 들어둔 것이 확실히 파이썬에 대한 진입 장벽을 낮췄다. 그 때 사용했던 것들이 보이면서 아주 쉽게 이해할 수 있었다. 역시 어떤 경험이든 뼈가 되고 살이 된다.

Day 24_SAT

  1. 정보처리산업기사 실기
  • eduon 알고리즘 29강 듣고 노트 정리
  1. 알고리즘
  • 백준 2108번 정렬 문제 푸는 중
  • C++ STL sort 함수를 이용해 문제를 푸는 중이다. 생각보다 쉽게 풀렸는데, 가장 잦은 빈도로 나타나는 값을 구하여 출력하는 것이 쉽지 않다. 어떻게 해야할 지 생각해서 이렇게 하면 되지 않나? 하고 만들었는데 역시 설계를 제대로 해봐야겠다. 우선은 오늘은 마무리

Day 25_SUN

  1. 정보처리산업기사 실기
  • eduon 알고리즘 30강 듣고 노트 정리
  • 시나공 실무 알고리즘 122p ~ 123p 문제 풀이
  • 애매하거나 이해가 안되는 문제들이 있다. 안풀어보고 시험치면 틀릴 것 같다.
  1. 알고리즘
  • 백준 10989번 정렬 문제 푸는 중
  • C++ STL sort 함수를 이용해 문제를 풀었다. 하지만 시간 제한이 3초, 메모리 제한이 8MB였는데 메모리 초과로 틀렸다. 정답은 제대로 나오는 것 같은데 메모리를 절약할 수 있는 방법을 생각해봐야겠다. 어제 풀던 문제는 생각을 해보다가 아직 이정도 문제를 풀 단계는 아닌 것 같아서 잠시 멈췄다. 구글링으로 살짝 다른 사람들 코드를 봤는데 배열을 두 개 만들지 않고 하나의 배열에서 인덱스를 주는 방법이었다. 또는 vector를 사용하기도 했는데, 아직 vector를 잘 몰라서 패스하고 좀 간단한 문제로 익숙해진 후에 다시 풀어보기로 했다.
  1. 인프런
  • 자바스크립트 ES6+ 기본 섹션 1 2강
  • 알고리즘 자바스크립트 문제 2
  • 알고리즘 문제랑 푸는 방법을 이해하긴 했는데 직접 하면서 강의를 듣지 않아서 내일 복습하면서 풀어봐야겠다. 자바스크립트로 알고리즘 공부하는게 아직도 익숙하지 않다. 챌린지 따로 하지 않아도 알고리즘 공부 하면서 자바스크립트도 계속 공부할 수 있는게 장접이다! 그리고 당분간은 파이썬과 동시에 진행하기보다 자바스크립트 먼저 제대로 푸는 방법을 알아야 할 것 같아서 파이썬은 잠시 중단했다.

Day 26_MON

  1. 정보처리산업기사 실기
  • eduon 알고리즘 31강 듣고 노트 정리
  • 시나공 실무 알고리즘 124p ~ 125p 문제 풀이
  • 시나공 업무 프로세스 239p ~ 241p 복습
  1. 인프런
  • 알고리즘 자바스크립트 문제 1 복습
  • 자바스크립트 ES6+ 기본 섹션 1 2강
  • 강의를 눈으로 보기만 하는 것보다 따라 쳐보고 좀 더 깊이 알아보는 것이(블로그에 관련 글 작성) 확실히 머리에 남고 공부가 많이 되는 것 같다. 그리고 자바스크립트에서 var변수와 let 변수에 대한 차이점 강의를 들었다. scope는 이미 알고 있던 내용이라 복습 겸 좀 더 자세히 공부하는 겸 가볍게 들었는데, 여기서는 새로운 내용을 알게 됐다. var 변수는 ES6+에서 웬만하면 안쓴다고 알고 있었는데, 오히려 let변수를 고집하면 성능에 문제가 생길 수 있다는 걸 배웠다. javascript 대학 전공 수업을 듣는 것 같은 느낌이 들 정도로 개념을 자세히 잡을 수 있어서 좋다. 심지어 강의는 짧으니 이렇게 좋을수가!
  1. 블로그
  • 자바스크립트 정규표현식 관련 글 작성
  • 인프런 강의 복습 중에 정규표현식 사용한 것을 기록하기 위해 간단하게 검색하고 작성 우선 간단하게 작성해놓고 나중에 계속해서 추가해야겠다.

Day 27_TUE

  1. 정보처리산업기사 실기
  • eduon 알고리즘 32강 듣고 노트 정리
  1. 인프런
  • 자바스크립트 ES6+ 기본 섹션 1 2강
  • let 변수와 var 변수 그리고 scope에 대한 강의를 들었다. 예전에 scope가 뭔지도 몰랐는데, 이제는 es5에서 없었던 scope들에 대해서도 배우는게 감개무량한 느낌. 이해하기 조금 어려운 부분이 있어서 내일 아침에 다시 들어봐야할 것 같다.
  1. 알고리즘
  • 백준 알고리즘 문자열 11654번 문제 풂
  • 자바스크립트로 풀어보려고 했는데 입력받는 방법이 달랐다. Realine을 사용해 입력을 받는 것 같은데, 우선은 C++로 풀고 readline을 공부해보려고 한다. 그리고 파이썬도 사용해봐야겠다. C와 C++로 문자열 문제 해결할 수 있어야겠지만 보통 파이썬, C/C++, 자바를 코딩 테스트 시에 사용할 수 있다. 파이썬 대신 자바스크립트 라는 생각은 버리자. 그리고 백준 문제는 강의에서 봤던 것과 다르게 진짜 javascript 태그 내에만 들어갈 부분을 작성하는 것 같다.
  1. 블로그
  • 자바스크립트로 입력받는 방법 작성중
  • 자바스크립트로 백준 문제를 풀 때 입력받는 방법에 대해 검색해보았다. fs와 readline을 사용하는 방법이 있다는 걸 알게 됐고, 간단하게 글을 작성했다. 검색하다가 알게 된 것인데 백준에서만 특히 자바스크립트로 문제 풀기가 힘들다고 한다. 백준에서는 C++이나 파이썬으로 문제를 풀고 프로그래머스 같은 곳에서 자바스크립트로 풀어야하니.. 강의를 들으며 따라하는 것 외에 적극적인 자바스크립트를 이용한 코딩테스트 준비는 어려울 것 같다. 기본적인 내용만 보고 다른 언어와 병행해야겠다.

Day 28_WED

  1. 정보처리산업기사 실기
  • eduon 알고리즘 33강 듣고 노트 정리
  1. 인프런
  • 알고리즘 자바스크립트 문제 2 복습
  1. 알고리즘
  • 백준 알고리즘 문자열 11720번 문제 푸는 중

Day 29_THU

  1. 인프런
  • 자바스크립트 ES6+ 기본 섹션 1 1강
  1. 알고리즘
  • codeup 기초100제 1001 ~ 1019번
  • scanf로 입력받을 때도 printf 출력할 때처럼 포맷을 설정해 입력받을 수 있다는 걸 알게됐다. codeup 문제를 풀면서 너무 기본적인 문법 사용법에 대한 문제인 것 같아 계속 풀어야 할지 고민하면서도 풀었는데, 잘한 일 같다.

Day 30_FRI

  1. 알고리즘
  • codeup 기초100제 1020, 1021
  • 오늘은 자소서 쓰느라 할 일을 많이 못했다. 내일까지 자소서 다 쓸 수 있으면 좋겠다.

Day 31_SAT

  1. 인프런
  • 알고리즘 자바스크립트 문제 2 수정
728x90
반응형

'TIL' 카테고리의 다른 글

2021년 11월 Today I Learned  (2) 2021.11.02