본문 바로가기
SpartaCodingClub/WIL

[WIL] 코딩테스트를 하면서...

by pin9___9 2022. 11. 13.
728x90

서론

이번 주부터 새로운 팀원들과 함께 JavaScript를 사용해서 알고리즘 문제를 풀기로 했습니다.

스스로 하루에 4문제씩은 풀자 다짐을 하고 시작을 했고, 프로그래머스 lv0 문제부터 시작했습니다!!

이전에 Python을 이용해서 알고리즘 문제들을 풀었었는데, JavaScript로 풀려니 Python과 차이가 조금 있어서 처음에는 좀 버벅 거렸습니다...

하지만 다양한 문제들을 풀다보니 감을 잡았고, 자주 쓰이는 문법들을 따로 공부해서 적용하였습니다.

 

배운점

1) 클래스와 객체

처음으로 돌아와서 JavaScipt의 데이터 타입에 대해서 공부하였고, 그중 객체 타입과 클래스를 선언하는 방법을 공부하였습니다. 그리고 클래스 내에 함수와 같이 특정 코드를 실행할 수 있는 메소드 호출하는 방법에 대해서도 공부하였고, 객체 리터럴을 활용하여 객체를 바로 만들 수 있는 방법에 대해서도 공부하였습니다.

 

2) 화살표 함수

저희가 궁극적으로 내일배움단에서 공부할 것이 바로 React입니다. 그리고 React에서 많이 쓰이고 ES6에 새로 도입된 화살표 함수에 대해서 공부를 하였습니다. 화살표 함수는 일반 함수와 달리 function 대신에 =>를 사용하고 return 명령어 없이 함수의 실행을 종료시키고 값을 반환할 수 있습니다.

 

3) Math 함수

알고리즘 문제를 풀면서 진짜 자주 사용하고 쓰면 편리한 Math함수에 대해 공부를 하였습니다. 최댓값, 최솟값, 반올림, 제곱근 등등을 반환하는 함수들이 있습니다. Math함수는 Number 자료형만 지원한다고 배웠습니다.

 

4) spread 문법

전개 연산자라고도 불리며 ES6에 새롭게 추가된 문법입니다. 배열의 요소나 객체를 나열해 주는 연산자이며 배열이나 객체의 복사본을 만들어 원본에 영향을 끼치지 않고 여러 개의 배열이나 객체를 손쉽게 병합할 수 있습니다. 사용법은 배열을 담은 변수 앞에 ... 을 붙으면 된다고 배웠습니다.

 

5) map( ), filter( ), reduce( )

위의 세 문법 또한 알고리즘 문제에서 많이 쓰이며 배열 연산 관련 함수입니다. 힘들게 for문을 사용하지 않고 map, filter, reduce를 사용하여 배열의 요소 전체 합, 요소들 일괄 변형 등등 많은 문제들을 쉽게 해결할 수 있었습니다. 

 

마치며...

알고리즘 문제들을 풀면서 점점 욕심도 생기고 스스로 찾아서 공부하게 되어 스스로 학습에 진짜 많은 도움이 되는 것 같습니다. 이전 과정에서 같은 프로젝트 팀원이 괜히 알고리즘 문제 풀어라, 하루에 한 문제라도 풀어라 잔소리 한게 아니였던 것 같습니다😅 

매일 알고리즘 문제를 풀어 매일 Git에 잔디를 심어보겠습니다!!😎

 

 

728x90

'SpartaCodingClub > WIL' 카테고리의 다른 글

[WIL] React 시작!!  (0) 2022.12.19
[WIL] 새로운 시작...  (0) 2022.12.05
[WIL] 프로젝트 마지막 주...  (0) 2022.11.27
[WIL] 한 주를 돌아보며...  (0) 2022.11.21
[WIL] 미니프로젝트를 진행하며...  (0) 2022.11.06

댓글