개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
비밀번호 저장할 때 사용하는 해시 함수
객체 지향 프로그램의 주요 개념: 클래스(class)와 상속
명령형 프로그래밍과 선언형 프로그래밍 / 함수형 프로그래밍은 선언형 프로그래밍 콘셉트를 유지
TIL (Today I Learned) 날짜
2024. 11. 19 (화)
오늘 읽은 범위
에피소드 35 ~ 38
책에서 기억하고 싶은 내용을 써보세요.
해시 함수라는 녀석은 동일한 입력값에 대해 동일한 출력값을 가지는 규칙이 있어.
해시 함수는 상상할 수 없을 정도의 무작위성을 갖고 있는 거지.
해시 함수는 반대로 입력하면 원래 값이 나오거나 하지 않아.
레인보우 테이블은 해시 함수가 변경한 값을 원래의 값과 연결한 표야.
솔트는 아주 조그마한 무작위 텍스트야. 비밀번호를 무작위 텍스트인 솔트와 합쳐서 해시 함수에 통과시키는 거야!
프로그래밍 패러다임은 프로그래머가 프로그래밍을 할 때의 관점, 방식 이런 것을 말해.
실제로 클래스는 속성은 같지만 데이터는 다른 녀석들을 위한 공장 같은 거야.
상속을 이용하면 Human 클래스의 기본 속성은 다 가지면서도 자신만의 속성을 추가할 수 있어.
함수형 프로그래밍을 배워야 하는 이유를 딱 하나만 설명하자면 '버그가 발생하기 어려운 구조'라서 개발자에게 매우 유용하기 때문이야.
선언형 프로그래밍은 원하는 결괏값을 선언한다는 거야.
명령형 프로그래밍은 원하는 결괏값에 어떻게 도달하는지 선언해.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
해시 함수의 특징 3가지는 알고 있었는데 레인보우 테이블은 처음 들어보았다. 새로운 것을 배우면서 레인보우 테이블을 해결할 수 있는 솔트도 함께 알게 되어 재밌었습니다.
객체 지향 프로그래밍의 특징 2가지를 쉽게 설명되어 있어서 좋았습니다.
개발할 때 함수형 프로그래밍은 잘 사용하지 않았는데 개인 프로젝트 진행할 때 한 번 적용해봐야겠습니다.