171110-TIL

Reading time ~2 minutes

오늘 한일

- AJAX를 이용하여 볼링 페이지 구현

- 블랙잭 구현 시작

  • Card, Deck, Player 클래스 구현

  • 52장의 Card들을 만드는 인터페이스 구현완료

  • Player가 초기에 두장의 카드를 가지고, 추후 한장씩 카드를 추가 하는 메소드 구현

  • 추가 구현해야 하는 사항 :

    • Player를 추상 클래스로 두고 유저와 딜러를 제작

    • 게임 진행을 관리하는 클래스

    • 결과 출력 및 추가로 카드를 받을지 여부 입력받는 부분(입출력 부분)

- 포비의 Logging 라이브러리 강의


오늘 느낀점

  • 한주 동안 Javascript를 공부했던걸 회고 하자면, 저번 주말에 볼링 게임을 AJAX를 이용하여 웹에 올리려고 이전에 작업했던 체스와 슬립의 댓글에 사용된 코드들을 봤다. 그걸 이용하여 조금씩 바꿔가면서 작업을 했었는데 총체적 난국이였다. 한 반나절 작업하고 나서야 jQuery 파일 없이 jQuery 문법을 사용하고 있었다는걸 알았다. 당시 jQuery와 Javascript를 구분 할 줄 몰랐으며 또한 DOM을 어떻게 조작하는지, 결정적으로

    function hello(){
      console.log("hello world!!");
    }
    
    var hello = function(){
      console.log("hello world!!");
    }
    
    hello.onclick = function(){
      console.log("hello world!!")
    }
    
    hello.onclick = hello;
    

    위와 같이 함수들을 등록했을때 어떻게 다르며 어떻게 써야할지 너무 혼란 스러웠다. 토요일을 그렇게 좌절한 끝에 일요일에 그냥 처음부터 하기로 마음 먹었다. 그렇게 일요일에 HTML, CSS에 대해 간단한 공부 이후 월,화,수 간단한 Javascript 공부를 했다.

    덕분에 고생은 했지만 어제 밤에 처음 목표했던 볼링 게임에 AJAX를 무난히 적용했다. 해당 기간의 학습을 통해 Javascript를 잘하진 못하지만 간단히 사용할 줄은 알게 되었을 뿐만 아니라 다른 사람의 코드를 제대로 읽을 수 있게 됐다. 마무리하는 기분이 나게 오늘은 Javascript를 사용한 프로젝트를 하나 더 할려고 하다가 계획을 변경하여서 jQuery는 저번주에 날 좌절하게한 가장 큰 주범이라 호감이 안가서 아직 사용을 안해봤는데 앞으로는 간단한 페이지 작업할땐 jQuery를 이용하는게 더 효율적일걸 알기에 레벨1에서 진행하고 있는 프로젝트 중 하나인 블랙잭을 자바로 구현한 뒤 이번엔 jQuery를 사용하여서 AJAX를 적용하기로 정했다. 그러면서 일주일동안 손 놓았던 자바도 간단한 프로젝트를 진행하면서 객체 지향적인 설계를 다시 연습 할 수 있을 것 같다.

  • 포비도 요번주 자바가 아닌 Javascript를 공부하는 걸 지지해준 덕에 정말 자바는 잠시 뒷전으로 두고 고민 없이 공부 할수 있었던거 같아 감사하다. 거기다 월,화요일에 강의에 참석하게 해준 호눅스 및 레벨1분들과 시도때도 없이 틈틈히 해대는 내 질문에 답변을 해준 프론트 + 백엔드 분들 덕에 고생을 덜하고 학습을 할 수 있었던거 같아 고맙다.

  • Logging 라이브러리는 이전 9월에 혼자 학습하면서 책에 나와서 따라하면서 사용은 해봤는데 그냥 사용하는구나 하는 느낌과 단순히 출력 범위를 지정하여줘서 필요한 정보만 선별해서 볼수 있겠다는 느낌이였다. 필요한 정보만 선별하여 볼 수 있다는 점이 메시지를 보는 사람 입장에서만 아니라 서버측에서도 불필요한 IO작업을 줄일 수 있고, 필요에 따라 범위를 조정 할 수 있다는 점에서 확실히 유용한 라이브러리라고 느꼈다. 오늘 작업하는 블랙잭에서부터 한번 적용해 볼려고 하는데 의외로 아직 출력 부분이 작업이 없어서 사용은 못해보고 있는데 Logging 라이브러리를 사용하는 습관을 들여봐야겠다.

    강의의 좋은 점 중에 하나는 오늘처럼 책에서 볼때는 느끼지 못한 필요성을 왜 그런지 이해 시켜줌으로써 알수 있다. 거기다 따라 하다 안돼는 부분들이 있으면 해결 하는데 엄청난 고생을 하는데, 다 함께 하다보니 해결도 빨리 되고 왜 그러한 문제가 생겼는지도 배울수 있다는 장점이 있는거 같다. 덕분에 조금씩 흐려지던 pom.xml에서 scope에 대해 기존의 지식 + 체험으로 어떻게 작동하는지 확실히 기억하게 된 하루가 된거 같다.


내일 할일

  • 블랙잭 완성

  • 친구가 진행하는 세미나 참석