Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back

IT 5분 잡학사전 TIL 8일차

#book_club
7개월 전
107

오늘 TIL 3줄 요약

  • 비밀번호는 그대로 DB에 저장해서는 안 되고, 해시 함수를 이용해서 무작위 값으로 저장해야 한다.

  • 객체 지향 프로그래밍은 클래스를 사용한다.

  • 함수형 프로그래밍은 선언형 프로그래밍 콘셉트를 유지하면서 함수 중심으로 코드를 작성한다.

TIL (Today I Learned) 날짜

2025. 01. 14

오늘 읽은 범위

  • 에피소드 35 - 비밀번호는 어떻게 저장될까?

  • 에피소드 36 - 객체 지향 프로그래밍이 뭐죠? (1)

  • 에피소드 37 - 객체 지향 프로그래밍이 뭐죠? (2)

  • 에피소드 38 - 함수형 프로그래밍이 뭐죠?

책에서 기억하고 싶은 내용을 써보세요.

  • 에피소드 35

    • 비밀번호는 그대로 DB에 저장해서는 안 된다.

    • 해시 함수는 입력값이 아주 조금 변해도 출력값이 크게 바뀌고, 반대로 입력해서 원래의 값이 나오지 않는다는 특징이 있다.

    • 해시 함수가 변경한 값을 원래의 값과 연결한 표를 레인보우 테이블이라고 한다. 레인보우 테이블이 유출되면 보안에 위협이 생길 수 있다.

    • 솔트라는 무작위 텍스트를 붙여서 사용하면 레인보우 테이블이 있어도 원래의 비밀번호를 찾을 수 없다.

  • 에피소드 36

    • 프로그래밍을 할 때의 관점, 방식을 프로그래밍 패러다임이라 한다. 대표적으로 절차 지향 프로그래밍, 객체 지향 프로그래밍, 함수형 프로그래밍이 있다.

    • 객체 지향 프로그래밍에서는 클래스를 통해 동일한 속성을 가지는 객체를 쉽게 만들 수 있다.

  • 에피소드 37

    • 클래스를 사용할 때는 여러 클래스가 공통으로 가지는 성질을 가지는 클래스를 정의하고, 개별적으로 가지는 성질은 상속을 통해서 만들 수 있다.

  • 에피소드 38

    • 함수형 프로그래밍은 버그가 발생하기 어려운 구조이기 때문에 개발자에게 매우 유용하다.

    • 선언형 프로그래밍은 원하는 결과를 선언하고, 명령형 프로그래밍은 원하는 결과에 어떻게 도달하는지 선언한다.

    • 함수형 프로그래밍은 선언형 프로그래밍 콘셉트를 유지하면서 함수 중심으로 코드를 작성한다.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  • 객체 지향 프로그래밍에 비해 상대적으로 낯설었던 함수형 프로그래밍에 대해서 간략하게 이해할 수 있었다.

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.

  • 솔트를 이용하여 비밀번호를 저장하는 것은 어떻게 하는 걸까? 무작위 텍스트라면 hash의 값을 저장하는 방식으로 비밀번호를 체크하는 게 불가능한 거 아닌가?

  • 모든 선언형 프로그래밍이 명령형 프로그래밍 위에서 쓴다고 이야기할 수 있다면, 선언형 프로그래밍이 명령형 프로그래밍의 상위 계층인 것 아닌가?