* 본 후기글은 프로그래머스의 코딩테스트와 실무 역량 모두 잡는 알고리즘 스터디 (Java반) 참여 후 솔직하게 적는 글입니다.
* 1편에서는 스터디 전반에 관한 내용을 기록했으며, 2,3편에서는 스터디에서 배운 내용들 위주로 작성하였습니다.
저 역시 이 프로그램에 참여하기 전에 많은 고민을 했기에, 후에 이 스터디를 고민하고 있을 분들에 도움이 되고자 글을 남깁니다. 개개인마다 느끼는 것에 차이가 있을 수 있으니, 본 포스팅은 참고만 해주세요😉
🙋 참여한 프로그램 👇
https://programmers.co.kr/learn/courses/12730
👩💻 왜 이 스터디에 참여했는가?
저는 국비지원학원에서 자바를 배우다가, 학원을 때려치고(?), 혼자서 자바로 코딩테스트를 풀고 있었어요. 프로그래머스 기준 1단계 문제를 어느정도 풀 수 있게 되고, 2단계로 넘어가면서 제 한계를 느끼기 시작했습니다. 문제를 풀긴 푸는데, 과연 내가 푸는게 맞는건가, 난 잘 풀고 있는건가.. 한 문제 푸는데 시간도 너무 오래 걸리고, 2단계에서 정체되는 느낌이 많이 들었어요. 이런 생각이 들던 와중에 이 프로그램을 보고 참여하게 되었습니다 :)
실제로 프로그램에 참여했을 때 저보다 잘하는 분들이 많아서, 혼자 공부하는 입장에서 자극도 되고 좋더라구요. 사실 저는 못 푼 문제가 훨씬 많았는데, 다른 사람들 코드 보면서 많이 자극도 받고 배울 수도 있었던 것 같아요.
🏫 프로그램은 어떻게 진행되는가?
다른 기수는 참여하지 않아서 모르겠지만, 비슷할 것이라 생각이 드네요. 11기의 경우에는 월요일 8시마다 줌으로 열렸습니다. 이후 프로그램 장점에서 말하겠지만, 개인적으로 제가 이 프로그램을 선택한 이유기도 합니다. 오후까지는 다른 일 하고, 저녁에 스터디 참여하는 걸 개인적으로 선호해서 좋았습니다.
수업은 줌으로 1시간 20분에서 2시간 정도 진행됐습니다. 수강생들이 얼마나 적극적인 태도를 갖고 질문하느냐에 따라서, 스터디가 일찍 끝날 수도 있고, 2시간까지 할 수도 있고 하는 것 같아요. 만약에 개인적인 사정으로 참여를 못 할 경우에는 위의 스크린샷에서 보이는 프로그래머스 스쿨에서 다시 볼 수 있어요. (평생 볼 수 있다고 합니다)
수업은 질문(혹은 과제를 잘 하신 분 코드를 보여주기도 했습니다)- 과제 문제 풀이 - 개념설명 - 질문 순서로 구성되었습니다. 그리고 수업이 없는 날에는 Git을 통해서 코드 리뷰를 받습니다. 사실 이 스터디는 어떤 개념을 배우고, 코드 설명을 받고 하는 스터디라기 보다는 코드 리뷰 스터디라고 이해하시는 게 정확할 것 같습니다. 일주일에 2문제가 필수 문제고, 이 외에도 문제를 더 풀고 싶으면 선택 문제를 풀 수도 있습니다. 수업 중간중간에 매니저님이 리액션을 되게 잘해주셔서 수업 분위기는 매우 좋았습니다. 수강생들이 말이 없으면, 중간에서 분위기도 띄워주시고, 수강생 질문도 전달해주셨는데 개인적으로 다른 스터디나 수업에서도 이렇게 해주시는 매니저님 계시면 좋을 것 같다는 생각이 들었어요. (사실 후기(2)에선 배운 내용을 정리할 계획인데, 이것도 매니저님 추천으로 쓰게 됐는데 수강생들 생각해주시는 것 같아 좋았습니다)
이 외에도 소통은 슬랙 통해서 하고 있고, 어떤 내용을 배우는지에 대해서는 2편에서 보다 자세하게 작성하겠습니다.
🙋♀️ 내가 생각하는 프로그램 장/단점
우선 이 프로그램의 장점은 코드리뷰 스터디라는 것. 사실 요즘 워낙 유튜브나 생활코딩, Edwith 등을 통해서 프로그래밍을 배울 수 있는 곳이 많이 생겼는데요, 내가 쓴 코드가 괜찮은지, 더 좋을 순 없는지 봐주는 스터디는 많지 않다고 생각합니다. 이런 점에서 다른 스터디와 차이가 있는 것 같습니다. 문제를 푸는 것도 중요하지만, 문제를 잘 푸는 것(더 깔끔한 코드를 쓴다던가, 더 효율적인 코드를 쓴다던가..) 하는 것도 중요하다고 생각하기에 이런 스터디에 참여해보는 것도 좋았습니다.
그리고 이 스터디는 (제가 생각하기에) 쌍방향적 스터디인데요, 수강생들이 질문을 얼마나 하느냐에 따라 스터디가 달라지는 것 같습니다. sli.do를 통해서 매주 질문을 받으시는데, 익명으로 질문이 가능해서 편하게 질문할 수 있어서 좋았습니다. 꼭 코드에 관한 것이 아니라, 진로나 개발자 공부 관련 전반에 관해서 여쭤볼 수도 있어 쌍방향적 소통이 가능했던 것 같습니다.
마지막으로 장점이라 하면, 세심하게 수강생들 챙겨주는 부분이 있었습니다. 매니저님이 아예 수업에 참여하셔서 리액션도 해주고, 분위기 잡아주시는거라던가.. 의외로 강의들을 때 수강생들이 반응이 적어서 (이를 테면, 저처럼 말이죠...) 수업 분위기가 쳐지거나 할 수 있는데 강사님과 수강생 사이의 역할을 해주는 분이 있는게 좋구나 하는 생각이 들었습니다. 그리고 강의가 녹화되어서 나중에 언제든 다시 돌려볼 수 있다는 거나, 프로그래머스 스쿨이라는 전용 사이트가 있는 것도, 엄청난 장점이라고 할 순 없겠지만 수강생들을 세심하게 챙겨주는 센스있었던 장점이라 생각이 듭니다.
단점이라고 하면.. 가격대가 좀 있는 스터디입니다. 4주에 할인해서 38만원 정도 했던 것 같습니다. 수업 자체는 일주일에 한 번 있는거라 생각하시면 저렴한 수업은 아니라 생각이 듭니다. 다만, 코드 리뷰 스터디인만큼 강사님이 수업 시간 외에 들이는 시간을 감안하고, 코드 리뷰에 열심히 참여하신다면 그만큼 얻어가시리라 생각이 듭니다.
💻 코드 리뷰 전후
코드 리뷰 전 작성했던 코드
class Solution {
public int solution(int n) {
int answer = n;
boolean isAnswer = false;
while (!isAnswer) {
answer++;
if (Integer.bitCount(n) == Integer.bitCount(answer))
isAnswer = true;
}
return answer;
}
}
코드 리뷰 후
class Solution {
public int solution(int n) {
final int nc = countBits(n);
while(nc != countsBits(++n);
return n;
}
private int countBits(int n) {
String strN = Integer.toBinaryString(n);
int nc = 0;
for (char ch : strN.toCharArray())
if(ch == '1') nc++;
return nc;
}
}
혹시 더 궁금하신 내용이 있으신 분들은 덧글 남겨주시면, 아는 한도 내에서 답해드릴게요 :)
이 외에도 프로그래머스에서 하는 다른 강의에 관심있으신 분들은,
여기 참고하시면 좋을 것 같습니다. 자바 말고도 다른 언어도 있으니 둘러보세요 :) (광고 아님)
🙋♂️2편(1,2주차)과 3편(3,4주차)는 여기 👇
https://contents-studio.tistory.com/138
https://contents-studio.tistory.com/139
'Web > Java' 카테고리의 다른 글
코딩테스트와 실무 역량 모두 잡는 알고리즘 스터디(Java반) (3) 스터디 3,4주차 (0) | 2021.10.26 |
---|---|
코딩테스트와 실무 역량 모두 잡는 알고리즘 스터디(Java반) (2) 스터디 1,2주차 (0) | 2021.10.26 |
[Java] 값을 입력 받았을 때, 조건문을 건너 뛰는 경우 (0) | 2021.06.11 |
[Java] 반복문에서 break를 사용해야할 때 (0) | 2021.06.04 |
[Java] Eclipse (이클립스) 단축키 (0) | 2021.06.03 |