170829-TIL

Reading time ~1 minute

오늘 한일

  • 이전부터 터미널에서 git push시 문제가 되던 부분을 해결 하였다. 원인은 맥os상에서 몇몇 프로그래들의 경우 계정에 대한 정보를 키체인(keychain)에 인증정보를 보관하여 사용 하게 되는데, 최초 깃허브 이용시 사용했던 아이디와 비밀번호가 키체인에 등록이 되어 있었다.
    git credential-osxkeychain erase
    host=github.com
    protocol=https
    <press return>
    

    위의 명령어를 터미널에서 수행하면 git과 관련된 정보를 지워서 다음 git push시 새로 계정과 비밀번호를 물어보게 되고 해당 정보가 새로 등록 되게 된다. 혹은 맥에서 keychain으로 검색을 하여 ‘키체인 접근’ 항목으로 가서 ‘git’ 검색 후 나온 항목에서 계정 정보를 변경 하면 된다.

  • 체스 게임을 계속 구현 하였다. 막혀 있던 각 말들(킹,퀸,폰…)의 움직임을 일부 구현 하였고 그 과정에서 자식 클래스를 나눠야 하는 이유도 깨달았다. 현재 상태에선 이동 부분만 달라서 그런지 인터페이스로만 따로 빼서 만드는게 더 낫지 않을까란 고민을 하게 되었다. 이동 방식을 인터페이스화 시키면 생기는 이점 중 하나는 폰이 다른 말의 이동 방식으로 변경 가능한 시점에서 해당 말이 가진 이동 방식만 가져오면 될 것 같기 때문이다. 단순히 주먹구구식으로 짜는건 어느 정도 가능하겠지만, 객체지향이란 걸 느껴보면서 짤려고 하다보니 더 오래 걸리는 것 같다. 객체지향적으로 구현 할 수록 느끼는건 레고블럭을 조립 하는 느낌이 나서 재밌는 것 같다.(절차지향은 물 흐르듯이 잘 흘러가는 걸 보는 재미가 있었던 것 같다.)

  • 하루에 한두 문제씩 알고리즘을 풀려고 백준 사이트를 갔다가, 코드스쿼드 인강을 듣기 위해 잠시 들려 본 적이 있는 tryhelloworld를 접속해서 level1의 문제 두개 풀어보았다. 아직은 쉬운 문제다 보니 쉽게 풀렸는데, 다른 사람들의 정답을 보니 내 코드에서 필요없는 한두 줄의 코드들이 눈에 띄었다. 간결하게 짠다고 꼭 좋은건 아니겠지만, 필요없는 부분들은 줄여 나가도록 좀더 연습 해야겠다. 참고로 사이트 이름이 programmers로 변경 된거 같다.
  • 다른 분들 로또 프로그램 제작 하는거나, 문법 공부하시는 걸 오래 도와드리다 보니 아직은 책을 보질 못했다. 그렇게 알려주는 것 또한 좋아하고 내 복습도 되니 나쁠건 없다 생각 된다. 그리고 책은 집에 가서 봐도 되니 말이다.

내일 할일

  • 예비군 날짜가 이전 내가 변경 한 날짜가 아닌 다른 날짜로 안내가 왔다. 동대에 문의 해보자.
  • 체스 게임을 웹에 올릴 수 있게 최대한 빨리 작업을 끝내보자.
  • 수업