2022. 12. 28. 22:24, TIL
오늘 진행한 것들 🤔
- 컴퓨터 구조 정리
- 토이프로젝트 리팩토링
- 동적계획법 알고리즘 문제 풀이
오늘의 배운 점 🤔
- 컴퓨터구조를 정리했습니다.
- 하드웨어, 소프트웨어, 응용소프트웨어 이렇게 크게 3구조로 나누는것을 알게 되었습니다.
- 하드웨어는 말그대로 부품, 소프트웨어는 하드웨어에 의존적인 운영체제 따위를 구동하기 위한 로우레벨 언어로 이루어진 프로그램, 응용 소프트웨어는 흔히 아는 프로그램 같은 것이라고 할 수 있는것 같습니다.
- 단순히 하드웨어가 한부품 부품이 단독적으로 동작하는게 아닌 시스템 버스를 통해서 이런저런 데이터가 오가는것을 알게 되었습니다.
- 살짝 MVC 패턴과 비슷하다고 생각했습니다. 단방향 통신을 하는 주소공간 버스와, 양방향통신을 하는 데이터, 컨트롤버스가 모델 뷰 컨트롤러 사이의 요청응답과 비슷하다고 느꼈습니다.
- 단순히 키보드 키 하나를 눌렀을때에도 상태레지스터, 데이터 레지스터를 확인해서 입력이 된다고 하니, 어느정도 머릿속으로 구조가 그려지는 기분입니다.
- 폰노이만 구조에 대해서 살짝 공부했습니다.
- 폰노이만 구조와 하버드 구조의 차이점에 대해서도 살짝 공부하게 되었습니다.
- 하지만 아직 한번 본것으로는 이해가 안되니 다시 공부해봐야겠습니다.
- 동적 계획법 알고리즘을 활용하여 문제를 풀이했습니다.
- 풀이를 하다보니 느낀점은 분할정복은 쪼갤 수 없는 부분을 브레이크 포인트로 정한다면, 동적 계획법은 브레이크 포인트를 정하는 대신에 값을 기억해둬 반복 호출을 멈추는..? 그런 정도로 이해가 되었습니다.
- 관건은 결과값을 얻으려고 풀이를 하는것이 아닌 문제에서 요구하는 답을 구하기 위한 풀이로 사용된다는 점이었습니다.
- 일반적으로 배열을 사용하는것 같습니다.
- 다시 글로 정리하면서 생각해보니 이해가 됩니다. 동적 계획법 같은 경우에는 문제의 규칙성을 찾는것 또한 중요한것 같습니다.
- 토이프로젝트 리팩토링을 하였습니다.
- 기존에 내 댓글이 아닐때 수정이나 삭제버튼이 등장했던 부분에 대해서 단순 if문을 추가하여 비활성화를 시켰습니다.
- 그리고 게시글과 댓글 삭제에 대한 고민이 생겼었습니다. 데이터를 백업하고 삭제를 하는것이 일반적일지, 단순히 비활성화를 하듯이 삭제 컬럼을 온오프 하는게 맞는것일지에 대한 고민을 해보았습니다.
- 전자를 redis 로 구현했다가 레디스는 인메모리 데이터베이스라는것이 떠올라 죄다 삭제해버렸습니다.
- 만료기한을 1년으로 잡고 레디스에 백업 후 삭제하는 로직을 구현했는데, 메모리에 1년동안 저장이라니.. 끔찍한 방법이었습니다.
내일 목표 🤔
- 동적계획법 문제 2문제 이상 풀이
- 가능하면 토이프로젝트 설계하기
- 컴퓨터 구조 정리
'TIL' 카테고리의 다른 글
23-01-02 TIL (0) | 2023.01.02 |
---|---|
22-12-29 TIL (0) | 2022.12.29 |
22-12-26 TIL (0) | 2022.12.26 |
22-12-22 TIL (0) | 2022.12.22 |
22-12-21 TIL (0) | 2022.12.21 |
Comments, Trackbacks