노개북 챌린지 12일차 EP.35~EP.38 읽고 TIL 작성하기
2024.01.16 화요일
EP.35 ~ EP.38
- 해시 함수: 비밀번호를 무작위 값으로 둔갑
- 동일한 입력값에 대해 동일한 출력값을 가짐 => 일대일 대응 관계 유지
- 입력값이 조금만 바뀌어도 출력값은 크게 바뀜 => 무작위성
- 반대로 입력한다고 해서 원래값이 나오지 않음 => 단방향 함수
- 레인보우 테이블: 해시 함수가 변경한 값을 원래의 값과 연결한 테이블
- 솔트(salt):
무작위 텍스트(솔트) + 비밀번호
조합을 해시 함수에 통과시킨 방법, 레인보우 테이블에서도 확인 불가
해시 함수는 알고 있었는데 나머지 두 가지 방식은 처음보는 방식이었다.
그래도 어려운 개념은 없어서 읽고 넘어갔다.
프로그래밍 패러다임
프로그래머가 프로그래밍을 할 때의 관점, 방식. 즉, 프로그래밍을 하는 사고의 틀
전부터 항상 고민해오던 생각인데 한 단어로 표현할 수 있어서 좋았다. 공부는 하고 있지만 아직도 저 프로그래밍 패러다임
이 뭔지는 잘 모르겠다. 더 하다보면 어느 순간 알게 되겠지?
클래스
전에 배웠던 개념으로는 붕어빵 틀 생각하면 됨. 안의 재료에 따라 모양은 같지만 슈붕, 팥붕, 초코붕, 피자붕, 치즈붕 등 다양한 붕어빵 만들 수 있음
전에 배웠던 클래스에 대한 개념이 남아있어 아는대로 설명을 써봤다. 그 땐 죽어도 이해가 안됐었는데 지금은 어떻게 또 이해하고 있다는 게 신기했다. 뭐든 열심히 하고 넘어 가야겠다고 생각했다.
상속
심즈: 사람이라는 부모 클래스를 만들고 어른, 청소년, 아이 클래스에 각 자식 클래스 자신만의 속성을 추가하는 개념
심즈를 여기서 볼 줄이야ㅋㅋ 예시가 아주아주 이해하기 쉬웠다.
함수형 프로그래밍을 배워야 하는 이유
=> 버그가 발생하기 어려운 구조라서 => 선언형 프로그래밍 컨셉
선언형 프로그래밍: 원하는 결과값을 선언 => 결과 중심으로 코드 작성
- 실수 적고 코드 이해 쉬움
- 모든 선언형 프로그래밍은 명령형 프로그래밍 위에 작성
명령형 프로그래밍: 원하는 결과값에 어떻게 도달하는지 선언 (-> css)
함수형 프로그래밍이라는 말은 들어봤는데 정확하게 어떤 의미인지 몰랐었는데 이번 기회에 정리하고 넘어가게 되서 좋았다. 특히 선언형 프로그래밍!!
css가 명령형 프로그래밍이라는 것도 이번에 알았다.
- 휴식 시간을 가져라
- 일하는 시간을 제한하라
- 몸을 움직이고 건강한 음식으로 활력을 찾아라
너무 뼈저리게 공감했다. 번아웃이 올 정도로 무엇인가를 열심히 해본 경험은 없다고 생각하지만, 정말 건강이 최고다. 원래는 1년에 한 두번 아플까 말까 했는데, 스트레스가 만병의 원인이라고, 24년 연초부터 감기에 소화불량 등등 여러가지 이유로 아프고 나서 건강이 더 소중해졌다. 남은 24년은 더 이상 아프지 않기를...!