개발 알다가도 모르겠네요

우아한테크코스 5기 프리코스 3주차 본문

학습일지/우아한 테크코스

우아한테크코스 5기 프리코스 3주차

이재빵 2022. 11. 15. 01:58
728x90

세번째 프리코스 과제는 지난 주와 비슷하게 우테코에서 제공하는 라이브러리를 활용하여 로또게임을 구현하는 과제였다. 2주 차 공통 피드백과 피어리뷰를 참고해서 3주차 코딩 방식에 적용하고자 노력했다.

 

README.md

작성법 공통 피드백에서 언급된 ‘죽은 문서가 아닌 살아있는 문서를 만들 것’ 이라는 피드백이 인상 깊었다. 처음부터 모든 구현 기능 목록을 완벽하게 작성하기보다는 기능을 구현해나가면서 문서를 업데이트하는 것이 중요하다는 것을 깨달았다. 특히 예외 처리의 경우, 공통 피드백에 언급된 것처럼 기능을 구현해나가면서 유동적으로 추가&수정해 나가도록 노력했다.

지난 주차까지는 기능 목록에 메서드 설계방식을 상세하게 작성했다. 이번 주에는 너무 세세한 부분까지 정리하는 것이 아니라 시야를 넓혀 전체의 틀을 작성하고자 노력했다. 피드백을 통해 가장 제 뼈를 때린 부분은 리드미에 ‘해당 프로젝트가 어떠한 프로젝트인지 작성’ 하는 것이었다. 그동안 기능 목록에만 집중하다 보니 정작 지금 만들고 있는 프로젝트가 어떤 프로젝트인지 설명을 작성하지 않았다. 따라서 이번 주에는 처음 보는 사람도 리드미를 읽었을 때 한 번에 프로젝트 의도를 파악할 수 있도록 작성했다.

 

상수값 처리

이번 주는 피어리뷰와 공통 피드백에서 언급된 상숫값 처리하는 데 신경 썼다. 예외 처리 시 출력하는 에러 메시지나 프로그램 입출력 메시지의 경우 값이 변하지 않을 뿐 아니라 자주 쓰이기에 재사용성을 높이고자 했다. 상숫값 명은 대문자와 스네이크 표기법을 적용하였고 해당 값이 맡은 역할이 무엇인지 의도를 드러내고자 노력했다.

 

단위 테스트

이번 과제를 통해 Jest를 사용한 자바스크립트 TDD 방식을 이해할 수 있었고 테스트 코드를 직접 작성해보면서 제가 짠 코드를 리마인드하고 효율적으로 피드백을 받을 수 있었다. 처음부터 큰 단위의 테스트를 작성하는 것이 아니라 작은 단위부터 차례차례 테스트를 작성하는 것이 바람직하다는 것을 깨달았다. 예외 처리 테스트를 작성할 때, 이를 유념해서 최대한 작은 단위로 나눠 하나하나 예외 처리를 해나갔고, 그 결과 기존에 코드에서 놓쳤던 예외 처리를 추가할 수 있었다.

 

'코드를 깔끔하게 짜려고 노력할 것'

이번 주 과제 구현난이도는 지난주 과제와 비슷했기에 기능을 구현할 때, 코드를 보다 효율적으로 작성하고 제 코드를 처음 보는 사람도 이해할 수 있도록 작성하고자 노력했다. 아직은 확실하게 습관이 들진 않았기에 더욱 더 많은 코드를 작성하고, 다른 사람들의 코드를 보면서 학습해 나갈 예정이다. 이제 짧다면 짧고 길다면 길었던 프리코스 과정의 마지막 주차이다. 구현에 들어가기 전 기능목록을 먼저 작성하는 것, Jest를 사용한 TDD 경험, 메서드는 한 가지 일만 하도록 하는 함수 최소화 등 그동안에는 깊게 생각하지 않고 경험해보지 못했던 내용들을 주도적으로 학습할 수 있었던 시간이었다. 남은 4주차 과제도 끝까지 포기하지 않고 새롭게 맞닥뜨릴 지식을 즐겁게 받아들이고자 한다.

 

 

정규식

 

JavaScript정규식 참조

정규식 개체 정규 표현식은 문자 패턴을 기술하는 객체입니다. 정규 표현식은 패턴 매칭을 수행하는 데 사용되는 "search-and-replace" 텍스트 기능을. 통사론 예 설명 : / w3ii / I는 일반 식이다. w3ii은

www.w3bai.com

 

정규 표현식 - JavaScript | MDN

정규 표현식, 또는 정규식은 문자열에서 특정 문자 조합을 찾기 위한 패턴입니다. JavaScript에서는 정규 표현식도 객체로서, RegExp의 exec()와 test() 메서드를 사용할 수 있습니다. String의 match(), matchA

developer.mozilla.org

클래스

 

private, protected 프로퍼티와 메서드

 

ko.javascript.info