Community

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

← Go back

[TIL] IT 5분 잡학사전 DAY 10

#book_club
1년 전
279

오늘 TIL 3줄 요약

  • SQL은 꼭 공부할 것

  • SQL과 NoSQL, git과 gitHub는 서로 다른 것이다

  • 앱 업데이트 버전 숫자의 의미를 알 수 있게 되었다

TIL (Today I Learned) 날짜

2023.09.03 (일)

오늘 읽은 범위

Episode 30 ~ 34

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

  • 코볼 (COBOL, common business oriented language)

    • 1959년에 탄생한 언어

    • 레거시 (legacy: 유산) 언어로 개발 된 시스템 = 레거시 시스템

    • 현대인 중에 코볼을 사용할 줄 아는 개발자는 거의 없음

    • 커뮤니티가 매우 작음

  • SQL (structured query language)

    • 데이터베이스(데이터를 보관하는 창고)에 어떤 질문/문의를 하기 위해 어떤 구조를 가진 데이터베이스를 다루는 언어

    • DBMS (database management system): 데이터베이스를 관리(정리/처리)하는 시스템

      • SQL은 데이터베이스를 관리해주는 DBMS와 대화하기 위한 언어

      • MySQL, PostgreSQL, SQLite, Oracle, MariaDB, etc.

    • 데이터베이스와 SQL의 상호작용

      • 엑실 문서와 같이 생긴 데이터베이스

        • 한 무리의 데이터 = 테이블 (table)

      • 필요로하는 내용을 function을 이용해 찾을 수 있음

    • ORM (object relational mapping)

      • 개발자에게 SQL 번역기 같은 도구

      • 익숙한 프로그래밍 언어로 SQL을 사용할 수 있게 해줌

      • 하지만 너무 의지하는게 좋지 않음

    • SQL을 공부하면 각종 문제가 발생했을 때 유연하게 대체할 수 있는 능력을 키울 수 있음

  • NoSQL

    • SQL과 언어도 다르고 사용되는 데이터베이스 자체의 성질도 다름

    • 도큐먼트 데이터베이스 (MongoDB)

      • 데이터를 JSON(JavaScript Object Notation) 도큐먼트 형태로 저장

      • 데이터마다 구성이 같을 필요 없어서 개발자가 원하는 어떤 모양과 종류의 데이터로 저장할 수 있음

    • 키값 데이터베이스 (CassandraDB, DynamoDB)

      • CassandraDB:

        • Column wide, 한 행의 열이 엄청 넓은 데이터베이스

        • 읽고 쓰는 속도가 매우 빠름

          • Netflix, Apple, etc.

      • DynmaoDB:

        • Made by Amazon

        • 읽는 속도가 매우 빠름

          • Duolingo

    • 그래프 데이터베이스

      • 열과 도큐먼트 필요 없음

      • BUT 노드 개념 필요

  • SQL vs. NoSQL, 어느걸 써야하나?

    • 평범한 프로젝트 -> SQL

    • 특징을 상요해야하는 경우 -> NoSQL

      • 인스타그램: PostgreSQL -> 그래프 데이터베이스

  • 깃 vs 깃허브

    • 깃 (git): 파일 이력을 관리(늘 감시)하는 프로그램

      • 같은 파일, 여러 버전 보관 가능

      • 협업이 쉬워짐

    • 깃허브 (gitHub): 깃으로 관리한 파일 이력을 모두 저장해서 공유할 수 있는 곳

      • 깃허브에 깃 이력을 업로드 = Push

      • 깃허브에서 깃 이력을 다운로드 = Pull

  • 프로그램 버전

    • 시맨틱 버저닝 (semantic versioning specification, SemVer)

      • React, Jango

    • 큰 변화: 앞 숫자가 바뀜

      • 4.0.3 -> 5.0.3

    • 마이너한 업데이트: 중간 숫자가 바뀜

      • 4.1.2 -> 4.2.2

    • 패치/버그 수정: 끝 숫자가 바뀜

      • 4.1.2 -> 4.1.3

    ☆ 프로그램은 책임있게 만들고 끊임없이 관리해야함

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

  • 이전에 많이 사용되다가 관리 소홀로 인해 없어진 언어가 있다는 것을 몰랐다

  • 그렇다면 우리가 현재 잘 사용하고 언어 중에서도 하나가 사라질 수도 있다...?

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

  • SQL에서 NoSQL로, NoSQL에서 SQL로 전환하기는 쉬운가?

오늘 읽은 다른사람의 TIL

  • again님

  • bitbong님