2주간의 책 읽기 D+10

Hodu-C·2023년 1월 22일
0

Today I Read

목록 보기
8/11

Day 10 (2023.01.22)

읽은 범위

EP30 ~ EP34

책에서 기억하고 싶은 내용 및 요약

EP30 코로나가 준 레거시 시스템의 교훈

  • 개발자는 자신이 만든 프로그램에 완벽하게 책임을 져야 한다. (p.181)
  • 시스템은 한번 구축하면 끝이 아니기에 꾸준히 관리 해야한다. (p.181)

EP31 데이터와 단짝 친구, SQL

  • SQL은 데이터베이스에 어떤 질문 또는 문의를 하기 위해 어떤 구조를 가진 언어이다. (p.184)
  • 데이터베이스는 데이터를 보관하는 창고 역할이고, DBMS는 SQL과 상호 작용하기 위해 필요한 데이터베이스 관리 시스템이다.
  • DBMS의 종류로는 MySQL, PostgreSQL, SQLite, Oracle, MariaDB 등이 있다.
  • ORM은 개발자에게 SQL 번역기 같은 도구로, 사용자에게 익숙한 프로그래밍 언어로 SQL을 사용할 수 있게 해준다. 이로인해 SQL을 잘 모르는 개발자들도 있다.

EP32 NoSQL이 뭐죠?

  • SQL이 각 언어의 특징만 있었다면 NoSQL은 데이터베이스 자체의 성질도 다르다.
  • NoSQL의 데이터베이스 종류는 많지만 대표적 예로 Document DB, key-value DB, graph DB 등이 있다.
  • Document DB 중 몽고디비는 데이터를 제이슨(JSON) 도큐먼트 형태로 저장한다. 그렇기에 데이터마다 구성을 같게 할 필요가 없고, 개발자가 원하는 어떠한 모양, 어떠한 종류의 데이터라도 저장할 수 있다는 장점이 있다.
  • key-value DB로는 카산드라디비(CassandraDB), 다이나모디비(DynamoDB)가 대표적이다. 열이 넓다는(column wide) 특징이 있다. 또, 읽고 쓰는 속도가 빠르다는 장점이 있다. (p.192)
  • graph DB는 데이터의 각각 관계망으로 연결한다는 특징이 있다.
  • 기술에는 좋고 나쁨이 없다. 용도에 맞게 SQL, NoSQL을 사용하자! (p.193)

EP33 깃&깃허브, 똑같은 거냐고?

  • 깃(Git)은 파일에 무엇을 기록했는지, 무엇을 지웠는지, 파일을 이동했는지, 지워버렸는지 등의 이력을 관리하는 프로그램이다.
  • 깃은 같은 파일이라도 다른 버전으로 보관할 수 있다. (p.195)
  • 깃은 같은 파일을 복사해서 각자 컴퓨터에 저장해서 작업한 뒤 다른 사람이 변경한 부분과 내가 변경한 부분을 비교해서 다시 하나로 만들 수 있다. (p.196)
  • 깃허브(Github)는 깃으로 관리한 파일 이력을 모두 저장해서 공유할 수 있는 저장소이다. (p.196)

EP34 버전을 표기하는 방법도 있어요?

  • 가장 널리 쓰이는 버전 표기 방식으로 숫자 3개를 사용하는 시매틱 버저닝(semantic versioning specification, SemVer)이 있다.
  • 시매틱 버저닝의 첫 번째 숫자는 프로그램에 엄청나게 큰 변화가 있을 때 바뀌는 숫자이다.
  • 두 번째 숫자는 마이너한 업데이트를 의미한다. ex)기능 추가
  • 마지막 숫자는 패치나 버그 수정을 의미한다.

소감

막연하게 SQL, NoSQL 등 용어만 들어봤던 것들의 차이점이 뭔지 확실하게 알 수 있었던 것 같다. 항상 느끼는 거지만 알아둬야 할 내용들은 세상에 널렸다!

추가 복습할 내용

  • SQL 기초, 깃, 깃허브을 이용한 버전 관리
profile
TILog

0개의 댓글