[노개북 9일차] TIL

흰둥이·2023년 1월 21일
0

📚 노마드코더 북클럽 9일차

  • 날짜 : 2023.01.21(토요일)
  • 범위 : 에피소드 26 ~ 29

💭 책에서 기억하고 싶은 내용

  • [에피소드26 정렬 알고리즘이 뭐죠?]
    - 정렬 알고리즘은 순서 있게 정리하는 알고리즘이다.
    - 시간 복잡도는 O(N^2)로 같지만 성능은 다른 정렬 알고리즘은
    버블 정렬, 선택 정렬, 삽입 정렬 등이 있다.
  • [에피소드27 스택, 큐가 뭐죠?]
    - 큐와 스택은 문법으로 구현된게 아닌 규칙으로 이루어진 추상 자료구조(ADT, abstract data type)이다.
    - 큐는 FIFO(first in first out)이다.(먼저 들어간게 먼저 나감)
    - 스택은 LIFO(last in first out)이다.(나중에 들어온게 먼저 나감)
  • [에피소드28 해시 테이블이 뭐죠?]
    - 해시 테이블은 프로그램을 더 빠르게 하기 위해 만든 개념이다.
    - 예를들어 배열에서 데이터를 찾을 때, 데이터를 처음부터 모두 확인하는 선형 검색과는 다르게 해시 테이블은 해시 함수를 사용하여 반환된 인덱스 값으로 마치 사전 처럼 원하는 데이터를 바로 찾을 수 있다.
    - 해시 테이블의 시간 복잡도는 O(1)이다.
    - 해시 함수에서 반환되는 인덱스 값이 같은 데이터가 여러개 있으면 해시 충돌이 발생하는데 이것을 막기 위해 인덱스 안에 또 다른 배열을 넣고 같은 인덱스 값들에서 선형 검색으로 데이터를 찾을 수 있다.
  • [에피소드29 개발자 필수 소양, 클린 코드!]
    - 클린 코드란 코드만 봐도 의미하는 바를 알 수 있는 설명이 필요 없는 코드이다.
    - 클린 코드를 위한 5가지 꿀팁
    1. 의미 있는 변수,함수 이름을 적절히 사용하라.
    2. 함수 이름은 가급적 동사로 지어라.
    3. 매개변수는 너무 많이 쓰지 마라.
    4. 불린값을 인자로 보내지 마라.
    5. 축약어를 쓰지 마라.

🌻 소감

그 유명한 클린 코드 책..
언젠간 꼭 시도해봐야겠다..반드시..!!
해시 테이블 부분을 읽을 때 사전 처럼 데이터를 검색한다길래 선형 검색이랑 비슷해 보이는데
어떻게 더 빠르다는거지..라고 생각하는 순간 다음장에 해시 함수를 통해 인덱스로 검색한다는 내용을 읽고 바로 이해 완료!
알고리즘은 너무 어려운것같다..ㅠㅠ

❔ 궁금증과 추가 공부

클린 코드 내용을 보니 갑자기 리팩도링도 궁금해졌다.
리팩토링도 중요하다고 알고 있는데 더 자세히 조사해 봐야겠다!

profile
개발 공부 기록 뀨

0개의 댓글