해당 글은 코드스쿼드 2022 마스터즈 코스 "Java 웹 백엔드" 과정을 수강하면서 학습한 내용 등에 대한 회고 글입니다. :)
수강 회고
독학을 해왔을 때는 주말과 평일 구분이 없었는데 코드스쿼드에 들어온 이후 지난 주말이 되게 소중하게 느껴졌다. 늦잠을 자 부리나케 컴퓨터를 키고 새로운 소모임원들과 그룹 스크럼 시간을 통해 간단한 자기소개와 함께 인사를 나누었다. 오늘 새로 뵈었던 소모임원들 중에는 코드스쿼드 2차 테스트 면접 때 같은 조였던 meenzino님도 계셔서 반가웠다. 이후 오늘의 CS10 과제가 공개되었고 JK의 오늘 미션에 대한 설명이 이어졌다.
오늘은 연결리스트에 관련된 미션이었는데 놀랍게도 나는 어제 연결리스트의 개념에 대해서 학습하고 C언어로 연결리스트를 개념적으로 구현해보는 학습을 했었다...
덕분에(?) 오늘 미션을 처음 들었을 때 약간의 안도감을 느낄 수 있었고 결론적으로 오늘 많은 도움이 되었다.. 평상시에는 당연하게 있는 것을 그대로 사용했던 자료구조도 막상 내가 직접 구현해보려니 구현하는 과정에서 헤매는 일이 많았는데 어제 오늘 2일 연속으로 각각 다른 언어로 연결리스트 자료구조를 구현해봄으로써 연결리스트에 대한 이해도를 더욱 높일 수 있었다. 자료구조를 직접 구현해보니 내가 얻을 수 있는 점은 자료구조에 대한 확실한 이해와 함께 추후 어떤 데이터 처리 작업 시 해당 자료구조를 명쾌하게 응용할 수 있는 능력이라고 생각이 들었다.
학습 회고
- 연결리스트 개념 학습 및 구현
- Java 웹 백엔드 클래스 내 소모임원들과 zoom 회의실에서 학습
오늘은 연결리스트의 개념에 대해 학습하는 시간을 가졌는데, 사실 어제 공부했었던 터라 해당 내용을 다시 한 번 복습했다. 일단 기본적으로 자료구조는 다음과 같이 정의해볼 수 있을 것이다.
자료 구조는 기존의 컴퓨터 메모리를 보다 더 효율적으로 사용 및 관리하기 위해 새로 정의하는 구조체로서 컴퓨터 메모리에 정보를 각기 다른 방법으로 저장할 수 있도록 해준다. 대표적으로 배열, 리스트, 해시, 세트 등이 있다.
연결리스트도 이러한 자료 구조 중 하나인데, 연결리스트의 최고의 장점은 바로 추가나 삭제 작업이 용이하여 크기가 자주 변경될 경우 효과적으로 데이터를 처리할 수 있다는 점이다. 하지만 배열과 달리 인덱스를 통한 접근이 불가능하여 이진 검색을 통한 탐색이 불가능하다는 단점이 있다.
오늘 막상 다시 연결리스트를 구현해보니 생각보다 헤매는 경우가 많았는데, 어제 학습했었던 내용들을 복습하면서 문제에 차분히 접근해보니 해결될 수 있었다. 나는 프로그래밍할 때 고쳐야할 습관이 있는데, 무언가 로직을 짤 때 대충 감으로 짜는 습관이다. 이렇게 짜면 운이 좋게 기능이 구현되는 경우가 있는데, 나한테 별루 남는 게 없었다. 또한 아주 높은 확률로 기능이 구현되지 않는 경우가 많은데 이러할 경우 점점 풀이는 미궁속으로 빠진다.. 어떤 로직을 짤 때는 순차적으로 그리고 논리적으로 접근하면서 문제를 푸는 것이 나의 성장을 도모하는데 가장 도움이 많이 되는 것 같다. 이때 중요한 것은 급한 마음 보다 차분한 마음을 갖는 훈련인 것 같다.
좋았던 점
- 오늘 처음 뵈었던 소모임원들 역시 저번주 소모임 활동을 통해서 서로 교류하는 일이 편해져서 그런지 오늘 서로 모르는 부분에 대해 자연스럽게 교류하는 시간을 갖을 수 있었다.
아쉬웠던 점
- 미션을 풀면서 모르는 게 있었는데, 소모임원들한테 이것을 공유할까 말까 망설였었다. 결국 질문을 하게 되었고 큰 도움을 받을 수 있었다. 질문하고 싶은게 있으면 바로 바로 질문을 해야겠다는 생각이 들었다.
'2022 Masters Course > CS 10 Course' 카테고리의 다른 글
2022 마스터즈 코스(백엔드) 8일차 회고(2022. 1. 12.) - "비교에 대한 고찰" (0) | 2022.01.12 |
---|---|
2022 마스터즈 코스(백엔드) 7일차 회고(2022. 1. 11.) - "항상 겸손하기" (2) | 2022.01.11 |
2022 마스터즈 코스(백엔드) 5일차 회고(2022. 1. 7.) - "단순 지식 축적 학습이 아닌 호기심에 기반한 학습" (4) | 2022.01.07 |
2022 마스터즈 코스(백엔드) 4일차 회고(2022. 1. 6.) - "마침내 접하게 된 리눅스 운영체제" (0) | 2022.01.06 |
2022 마스터즈 코스(백엔드) 3일차 회고(2022. 1. 5.) - "상대방 입장에서 생각해보기" (0) | 2022.01.05 |