CS 13

3장. 함수

1. 작게 만들어라. if/else 문 또는 while 문에 들어가는 블록은 한 줄 이면 충분하다. - 대부분 block 에서 함수 호출 문을 사용한다. - 중첩구조가 생길 만틈 함수 구조가 복잡해서는 안된다. 2. 한 가지만 해라! 익히 들었던 말이다. 함수는 오로지 “한 가지의 기능”만 한다. 그 한 가지만을 잘하는 도록 만드는 것의 우리의 목표이다. 🤔 여러 조건문이 필요한 경우에는 어떻게 하나요? - 단순 다른 표현이 아니더라도, 의미있는 이름으로 지은 다른 함수를 호출/추출할 수 있다면, 그 함수는 여러 작업을 하는 셈이다. 3. 위에서 아래로 읽을 수 있도록 Top-Down 방식 한 가지 의미를 갖는 함수를 만들어야 함수를 위에서 아래로 읽어 내려갈 수 있다 4. Switch문 switch문은..

2장. 의미 있는 이름

2-1. 의도를 분명히 밝혀라. 코드의 함축성 주석이 필요하다면 변수/함수/클래스명이 그 의도를 분명히 드러내지 못했다는 것이다. 아래 예시를 보자 [before] const success = (position: {= coords: { longitude: number; latitude: number }; }) => { setPos({ ...pos, longitude: position.coords.longitude, latitude: position.coords.latitude, }); }; 코드상으로는 문제가 없어 보인다. success -> 성공인 건 알겠는데, 그래서 뭐가 성공했을 때인데? [after] const findUserLocation = (position: { coords: { longit..

Algorithm - Binary Search

이진 검색 알고리즘(binary search algorithm)은 오름차순으로 정렬된 리스트에서 특정한 값의 위치를 찾는 알고리즘이다. 처음 중간의 값을 임의의 값으로 선택하여, 그 값과 찾고자 하는 값의 크고 작음을 비교하는 방식을 채택하고 있다. 처음 선택한 중앙값이 만약 찾는 값보다 크면 그 값은 새로운 최댓값이 되며, 작으면 그 값은 새로운 최솟값이 된다. 검색 원리상 정렬된 리스트에만 사용할 수 있다는 단점이 있지만, 검색이 반복될 때마다 목표값을 찾을 확률은 두 배가 되므로 속도가 빠르다는 장점이 있다. - 위키백과

CS/Algorithm 2022.07.17