전체 글288 [오독완 챌린지] 기술 면접 대비 CS 전공 핵심 요약집 (7일차) 오늘도 독서 완료! 오늘은 자료구조에 대해서 학습 했습니다. 자료구조를 들어오면 항상 복잡도, 빅오표기법이 나옵니다. 말 그대로 입력 값에 대한 알고리즘의 실행 속도 정도로 이해했는데요, 시간 복잡도를 통해서 이 알고리즘의 속도를 예측할 수 있습니다. 빅세타, 빅오메가 등이 있는데 빅오표기법을 사용하는 이유는 빅오 표기법이 최악의 경우 즉, 가장 느릴경우를 나타내기 때문에 적어도 이 속도 만큼의 안정성은 보장된다고 볼 수 있어서 사용합니다. 자료구조는 크게 선형 자료구조와 비선형 자료구조로 분류하는데, 선형은 말그대로 데이터가 linear한 것이므로 연속적인 것입니다. 기후 변화 메트릭의 변화 등 값이 지속적으로 연속되는 것을 말하고 변화 양상을 추적하기 좋습니다. 선형 자료구조의 가장 기본은 배열인데,.. 2023. 9. 12. 12장. 서비스 계층과 트랜잭션 서비스(service)란 컨트롤러와 리파지토리 사이에 위치한 계층이다. - 서버의 핵심 비즈니스 로직을 처리하는 순서를 총괄한다. 서버에는 크게 REST controller, service, repository로 구분하여 소통한다. 이 워크 플로의 단계를 가게에서 주문 로직으로 변경해보면. Rest Controller는 일종의 웨이터로 클라이언트의 주문을 접수 받는다. service는 웨이터의 주문에 따라 비즈니스 로직을 실행하는 요리사이다. repository는 웨이터가 주문에 따라 필요한 재료를 손질하거나 다듬어 놓는 보조 요리사이다. 재료는 창고(DB)에서 보조 요리사가 가져오기 때문에 창고 출입은 리포지토리가 담당한다. 트랜잭션(transaction)은 모두 성공해야하는 일련의 과정을 뜻한다. 핵.. 2023. 9. 12. [오독완 챌린지] 기술 면접 대비 CS 전공 핵심 요약집 (6일차) 오늘도 독서완료! 오늘은 데이터 베이스의 트랜잭션 부분부터 학습했습니다! 트랜잭션은 데이터베이스에서 매우 매우 매우 중요한 것 중 하나 입니다. 트랜젝션이 문제가 생기면 큰일 나거든요.. 특히 금융시스템이면 돈이 걸린 문제라서 더 그렇겠죠? 트랜잭션은 데이터베이스의 상태를 바꾸기 위해 수행하는 작업의 단위 또는 연산을 의미합니다. 원자성 때문에 트랜잭션은 완전히 반영되거나 아니면 아예 실행 자체가 되면 안됩니다. 즉, 중간까지만 실행한다는 것은 있을 수 없다는 것입니다. 따라서 이러한 트랜잭션을 보호하기 위한 여러 장치들이 있습니다. 락(lock)은 트랜잭션이 처리되기 위한 순서를 보장하기 위한 방법입니다. 다만 트랜잭션이 동시다발적으로 일어나는 경우가 빈번하기 때문에 프로세스처럼 교착상태(deadloc.. 2023. 9. 11. [오독완 챌린지] 기술 면접 대비 CS 전공 핵심 요약집 (5일차) 오늘도 독서완료! 데이터 베이스는 그 용어를 처음에는 잘 익히는게 중요합니다. 스키마라는게 있는게 이는 데이터의 구조와 표현 방식, 제약 조건을 정의하는 역할을 합니다. 그리고 데이터 베이스에는 여러 종류가 있지만 가장 많이 사용하는게 관계형 데이터 베이스입니다. RDB라고도 합니다. 2차원 테이블을 사용해 데이터의 구조와 데이터 간 종속성을 나타내는 데이터베이스입니다. 관계형 테이터베이스에서 데이터의 개념적 모델을 릴레이션이라고 하고, 릴레이션을 실제로 구현한 개체를 테이블이라고 합니다. 대표적으로 MySQL이 있습니다. 다음은 비관계형 데이터베이스인 NoSQL이 있는데 MongoDB가 대표적입니다. 관계형 테이터 베이스를 좀 더 자세히 알아보면, 키(key)라는게 있습니다. 키는 데이터베이스에서 튜플.. 2023. 9. 10. [오독완 챌린지] 기술 면접 대비 CS 전공 핵심 요약집 (4일차) 오늘도 독서완료! 오늘은 HTTP부터 학습했습니다. HTTP는 인터넷상에서 데이터를 전송하기 위한 프로토콜로 TCP/IP 4계층에서 응용 계층에 속합니다. 다음과 같은 특징이있습니다. - 비연결성 : 클라이언트에서 요청을 보낸 후 서버로부터 응답을 받으면 연결을 끊는 것을 말합니다. - 무상태 : 서버에서 클라이언트의 상태를 저장하지 않는 것을 의미합니다. HTTP 상태코드는 다음과 같습니다. - 1xx : 클라이언트로 부터 요청을 받아 처리 중 - 2xx : 요청을 성공적으로 처리함 - 3xx : 요청을 처리하기 위해 추가 처리 필요 - 4xx : 클라이언트 오류 - 5xx : 서버 오류 HTTPS는 HTTP에서 S(secure)부분을 추가한 것입니다. 즉 SSL/TLS 보안계층을 이용해 HTTP의 보.. 2023. 9. 9. [오독완 챌린지] 기술 면접 대비 CS 전공 핵심 요약집 (3일차) 오늘도 독서 완료! 오늘은 네트워크에 대해서 학습해보겠습니다. 네트워크 불후의 명작 OSI 7계층을 먼저 확인해봤습니다. OSI 7계층은 네트워크 통신이 이뤄지는 과정을 7단계로 나눈 네트워크 표준 모델입니다. 가장 중요하게 봐야하는게 개인적으로 L4와 L7이라고 생각합니다. L7은 응용계층으로 프로토콜 단의 통제를 할 수 있고, L4는 전송 계층으로 TCP, UDP 전송 방식와 포트를 통해서 데이터 전달을 합니다. OSI 7 계층을 좀 단순화한계 TCP/IP 4 계층이며, 현재는 사실 이것만 알아도 충분하긴 합니다. 인터넷에서 데이터를 주고받기 위한 네트워크 프로토콜로 TCP/IP가 있습니다. TCP는 전송 제어 프로토콜로 데이터를 나눈 단위인 패킷의 전달 여부와 전송 순서를 보장하는 통신 방식입니다... 2023. 9. 8. 이전 1 ··· 30 31 32 33 34 35 36 ··· 48 다음