Lodash 활용

개인적으로 lodash를 사용한 코드를 더욱 정확하게 파악하기 위해 코드에서 사용한 Method들을 확인하는 용도로 정리하기 시작했습니다.
기본적인 Method를 정리 후 추가로 사용된 Method가 있을때마다 업데이트 하도록 하겠습니다.


Lodash

Lodash는 underscore에서 성능을 개선한 라이브러리로 사이드 이펙트가 없는 즉 외부 상태를 바꾸지 않는 순수 함수를 사용하는 함수형 프로그래밍으로 되어있다.


함수형 프로그래밍

함수형 프로그래밍은 계산결과를 표현의 평가로서 모델링하는 프로그래밍 스타일이다. 따라서 실행될 때 전역 상태를 변경하는 명령문으로 구성된 명령형 프로그래밍과 대조를 이룬다. 함수형 프로그래밍은 일반적으로 변경가능한 상태를 사용하지 않고 사이드 이펙트 없는 함수와 불변 데이터를 대신 사용한다.

중요한 점은 함수는 반드시 사이드 이펙트가 없어야 한다는 것이다. 그렇게 될 경우 테스트, 유지 보수, 그리고 대부분 예측가능한 것들이 쉬워진다.


macOS 개발환경 기본설정

Overview

MacOS 기본 환경 설정을 위한 가이드입니다.
저를 포함해 많은 분들에게 도움이 될 수 있었으면 좋겠습니다.



자바스크립트 개발자라면 알아야하는 핵심 컨셉 33 (1~5)

1. Call Stack

여러 함수들(functions)을 호출하는 스크립트에서 해당 위치를 추적하는 인터프리터 (웹 브라우저의 자바스크립트 인터프리터같은)를 위한 메커니즘.
현재 어떤 함수가 동작하고 있는지, 그 함수 내에서 어떤 함수가 동작하는지, 다음에 어떤 함수가 호출되어야 하는지 등을 제어.

  • 스크립트가 함수를 호출하면 인터프리터는 이를 호출 스택에 추가한 다음 함수를 수행하기 시작.
  • 해당 함수에 의해 호출되는 모든 함수는 호출 스택에 추가되고 호출이 도달하는 위치에서 실행.
  • 메인 함수가 끝나면 인터프리터는 스택을 제거하고 메인 코드 목록에서 중단된 실행을 다시 시작.
  • 스택이 할당된 공간보다 많은 공간을 차지하면 “stack overflow” 에러가 발생.

프로그래머스 - 행렬의 곱셈

문제 설명

2차원 행렬 arr1과 arr2를 입력받아, arr1에 arr2를 곱한 결과를 반환하는 함수, solution을 완성해주세요.


제한 조건

  • 행렬 arr1, arr2의 행과 열의 길이는 2 이상 100 이하입니다.
  • 행렬 arr1, arr2의 원소는 -10 이상 20 이하인 자연수입니다.
  • 곱할 수 있는 배열만 주어집니다.

프로그래머스 - 피보나치 수

문제 설명

피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다.

예를들어

F(2) = F(0) + F(1) = 0 + 1 = 1
F(3) = F(1) + F(2) = 1 + 1 = 2
F(4) = F(2) + F(3) = 1 + 2 = 3
F(5) = F(3) + F(4) = 2 + 3 = 5
와 같이 이어집니다.

2 이상의 n이 입력되었을 때, n번째 피보나치 수를 1234567으로 나눈 나머지를 리턴하는 함수, solution을 완성해 주세요.


Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×