2022 Masters Course/Web Backend Course

2022 마스터즈 코스(백엔드) 32일차 회고(2022. 2. 22.) - "그냥이라는 건 없다."

ikjo 2022. 2. 22. 22:50

해당 글은 코드스쿼드 2022 마스터즈 코스 "Java 웹 백엔드" 과정을 수강하면서 학습한 내용 등에 대한 회고 글입니다. :)

 

수강 회고

오늘은 어제 1단계 미션에 이어서 2단계 미션이 공개되었고 다시 페어와 함께 미션을 진행했다. 이번 페어 프로그래밍을 할 때는 저번과 같이 프로그램의 방향을 제시하는 역할을 하는 "네비게이터"와 직접적으로 프로그래밍 역할을 하는 "드라이버"를 교대로 번갈아 가면서 수행했다. 저번 회고(23일차)에서도 사실 잠깐 경험했었던 거지만 개인적으로는 "네비게이터" 역할을 수행하는 것이 상대적으로 피곤한 일이라고 느껴졌다.

 

왜냐하면 네비게이터는 드라이버에게 프로그램을 어떤 식으로 구현해나갈지를 제시해줘야 하기 때문이다. 이를 위해서는 스스로부터 프로그램에 대한 그림을 먼저 그릴 수 있어야 하고 드라이버를 납득시킬 수 있어야 하기 때문이다. 이때 프로그램을 구현하는 중에 오류라도 발생하면 더 신경 써야할 것들이 많아진다.(정신이 없어진다.)

 

이 과정에서 추가적으로 배울 수 있었던 것은 코딩을 할 때 예를 들어, 어떤 클래스를 만들 때, 어떤 자료구조를 만들 때 등 그에 대한 의도를 상대방(누군가)에게 설득할 수 있어야 한다는 것이다. 페어 프로그래밍은 나 혼자만의 프로그램을 만드는 것이 아니라 페어와 나의 프로그램을 만드는 것이므로 내가 어떤 클래스나 자료구조 등을 사용하는데 있어서 페어를 설득시킬 수 있어야 한다는 생각이 들었다. 즉, 코딩을 할 때 "그냥 이렇게 했다."라는 것은 없는 것이다. 

 

 

바둑에 그냥이라는 건 없어.

어떤 수를 두고자 할 때는 그 수로 무엇을 하겠다는 생각이나 계획이 있어야 돼.

그걸 의도라고 하지.

 

        - 드라마 미생 4화 中 -               

 

 

학습 회고

  • 자바 프로그래밍(클린 코드) 관련 미션 과제 풀이(페어 프로그래밍)
    • 페어(선을로님)와 디스코드에서 학습

 

저번주와 이번주는 클린 코드와 관련된 미션을 계속해서 수행 중이다. 이때 미션 요구사항에 들여쓰기를 1 depth만 유지하라는 사항이 있었는데 사실 미션을 처음 시작할 때는 이를 이해하지 못했었다. 하지만 이러한 요구사항들을 어떻게든 준수하려고 했는데 막상 이런식으로 프로그래밍을 해놓고 코드를 보니 내가 예전에 짰었던 코드들 보다 훨씬 간결하고 가독성도 좋아졌다는 느낌을 받았다.

 

사실 나는 누군가가 "이렇게 해야 합니다."라고 말해도 내가 그것을 피부로 느껴보지 않으면 잘 믿지 못하는 성향이 있다. 하지만 지금 같은 특수한 상황(미션 과제 풀이)처럼 그것을 어쩔 수 없이(?) 막상 따르다 보면 내가 생각했었던 것 보다 더 나은 결과를 내는 경우가 많았다. 이번 미션 역시 똑같은 상황인데 누군가가 그렇게 말하는데는 다 그럴만한 이유가 있다는 생각이 들었다. 🤣

 

아무쪼록 오늘 하루도 페어이신 선을로님과 페어 프로그래밍을 하면서 많은 시간을 보냈는데 그 과정에서 서로의 의도와 생각을 맞추는 과정에서 많은 대화를 주고 받았었으며 하나하나 무사히 합의할 수 있었다. 또한 문제(오류)가 발생했을 때는 각자 충분히 생각할 시간을 가진 후 다시 충분한 의논을 통해 문제를 해결하며 개발을 진척시킬 수 있었다. 오늘 하루도 페어를 위해 많이 양보해주신 선을로님께 감사의 인사를 드리고 싶다.

 

 

좋았던 점

  • 페어 프로그래밍을 하면서 그리고 클린 코드 미션을 수행하면서 하루하루 배워가는 것이 많아 유익했습니다.

 

 

아쉬웠던 점

  • 어제 늦은 시간까지 과제를 하느라 수면 시간이 부족해 피곤, 몽롱한 하루였습니다. 🤣