항해99 1주차 WIL
처음 4일간은 자바의 기본 문법을 배우는 시간을 가졌다.
이전에 객체지향 프로그래밍 수업을 전공에서 한 번 듣기도 하였고, 사전 강의 이전에 나눠주었던 다른 자바 강의를 한 번 반복해 들었었기에 이번 자바 강의를 들을 때에는 복습한다는 생각으로 강의를 들었다.
크게 다를 것은 없었지만, 프로그래밍 언어의 역사와 자바만의 특징 중 하나인 클래스에 대해서는 조금 더 알아야겠다는 생각이 들어 반복해 들었고, 이 부분만 따로 기록해 두었다. 커리큘럼 상에서는 기본적인 자바 문법인 클래스까지만 듣는 것으로 되어 있었지만 예외 처리를 위한 try catch나 이후의 쓰레드 과정은 개별로 따로 듣는 것이 좋을 듯 했다.
팀 별 과제로 숫자 야구 게임을 작성하고 이를 github에 올리는 과제가 주어졌는데, IntelliJ 내에 github에 자동으로 올려주는 기능이 있어 이를 활용해 업로드는 쉽게 진행하였다. 또한 이전에 소스트리에서 사용했던 브랜치와 push, commit, pull 기능 또한 모두 사용할 수 있었고, 실질적으로 소스트리보다는 이런 intelliJ나 VS code 내에서 지원하는 기능을 많이 사용한다고 하셨던 매니저님의 말씀이 생각났다.
복습한다 생각하고 듣긴 했지만 이미 한 번 들었던 것을 다시 듣는 것이 상당히 고역이었다. 과제가 생각보다 적어 생각 외로 시간이 많이 남아서 부족했던 부분을 보충하는 시간을 가질 수 있었지만, 과제는 조금 더 많아도 괜찮지 않을까 생각하였다.
이후 2일은 알고리즘 강의와 문제 풀이로 구성되었다.
이 또한 교과 과정과 사전 선택 강의에서 알고리즘을 들었던지라 복습한다는 생각으로 들었는데, 이전 선택 과목에서 이진 탐색 문제에서 막혔던지라 해당 부분을 조금 더 깊게 들었다.
주어졌던 문제들 중 앞부분은 반복문과 조건문을 활용한 단순 함수 구현이어서 문제 중 일부는 골라서 첫 4일간의 과제에 배치를 하는 것이 어떨까 라는 생각을 하였다.
다만 선택 과정에서 사용했던 백준 사이트와는 다르게 프로그래머스 사이트는 다른 사람의 정답 코드를 확인하는 것이 쉬워 자바 기능 중 모르는 것을 쉽게 확인할 수도 있었고, 점수를 운영하는 것이 문제 풀이에 대한 동기 부여도 되어서 프로그래머스 사이트는 애용하게 될 것 같다는 생각이 들었다. 베타버전이지만 ai 분석과 추천 문제를 제공하는 것도 마음에 들었는데, 추천 문제의 난이도가 갑자기 수직 상승하게 되어 문제에 손도 대지 못하는 상황이 발생하기도 했다.