TIL (Today I Learned)

TIL_230405

남 희 2023. 4. 6. 00:35

오늘 한 일 [DONE]

  • CS 스터디 복습 및 DB 공부
  • 어제 푼 알고리즘 문제 리뷰, 알고리즘 구현 문제 풀이
  • 직무 면접 질문 대비

📝오늘 배운 내용 요약

1️⃣ DB : 인덱스

  • 정의 : 데이터와 데이터 위치를 포함한 자료구조
  • 대표 자료구조 : B- 트리
  • 특징 : full scan을 하지 않아 빠르게 조회 가능.
  • 장점 : 테이블 조회 속도 향상 / 시스템 부하 줄임
  • 단점 : 10%정도를 인덱스 관리에 사용 / 인덱스 관리에 추가 작업 / 잘못 사용하면 성능 저하
  • 어디에 쓰면 좋나 : 규모가 작지 않은 테이블 / insert, update, delete가 자주 발생 X / join, where, order by 자주 사용

 

2️⃣ 레거시 시스템 (legacy system)

  • 정의 : 기존 시스템을 의미. 낡은 기술이나 방법론, 시스템이라는 뜻이 좀 더 강함.
  • 하는 이유 : 서비스를 지속, 성장 시키기 위해서
  • 개편 근거 : 가성비. 비용과 시간을 따짐. 개편 타이밍 중요. 나중에 급하게 수정하면 비용이...
  • 개편 원인 예시 : 트래픽 감당 X, DB 추가로 인한 성능 저하 개선, 새로운 요구 사항 대응 불가능, 유지보수 어려움 등

 

3️⃣ Android : App Component

  • 정의 : 앱을 구성하는 앱 내 독립 실행 단위
  • 종류 : Activity, Service, BroadcaseReceiver, ContentProvider
  • 컴포넌트간 정보 교환 : Intent 사용
  • 프로세스/스레드와의 관계 : 기본값으로 하나의 프로세스, 스레드에 모든 컴포넌트가 동작. 하지만 별도로 작업을 해주면 프로세스 또는 스레드 추가 가능. 프로세스 추가는 권장 X

 

 

참고 자료

 

'TIL (Today I Learned)' 카테고리의 다른 글

TIL_230509  (0) 2023.05.10
TIL_230406  (0) 2023.04.07
TIL_230403  (0) 2023.04.03
TIL_230327-0401  (0) 2023.04.02
TIL_230323-0324  (0) 2023.03.24