[OOP] S.O.L.I.D - 객체 지향 설계
·
Development/CS
이번 포스트에서는 S.O.L.I.D 에 대해 정리해볼 것이다. 참고 https://mangkyu.tistory.com/194 💡 SOLID란?객체 지향 프로그래밍을 하면서 지켜야할 5가지 원칙. 앞글자들을 따서 S.O.L.I.D 이다. 1) SRP, Single Responsibility Principle단일 책임의 원칙이란, 한 모듈이 하나의 액터, 즉, 한 종류의 서비스 로직을 수행할 수 있는 그룹에 대해서만 책임을 져야한다는 원칙이다. 왜 SRP를 준수해야할까? if 어떤 모듈이 여러 액터의 책임을 질 경우→ 여러 액터들에 대한 변경 요구가 올 수 있기 때문에 해당 모듈이 변경되어야하는 이유도 여러가지가 됨 if 어떤 모듈이 한 액터의 책임만 질 경우→ 한 액터에 대한 변경 요구만 책임지면 되..
[Data Structure] 선형 자료구조
·
Development/CS
참고 :https://uuukpyo.tistory.com/3https://wpunch2000.tistory.com/28 1. 선형 구조란?선형구조란, 데이터를 연속적으로 연결하는 방법이다. 자료의 원소들을 순서대로 나열한 형태로 앞뒤 관계가 명확하다.대표적인 선형 구조에는 배열, 연결된 리스트, 스택, 큐, 덱이 있다. 2. 배열 (Array)변수 이름으로 같은 타입을 가진 데이터들을 모아놓은 집합체이다.가장 간단하고 접근 속도가 빠름배열의 크기는 한 번 지정한 후 변경할 수 없기 때문에 비효율적인덱스 가지고 있음 (접근 시간 : O(1))순차적으로 데이터가 삽입, 삭제 3. 연결된 리스트 (Linked List)자료항목의 순서에 따라 노드(node, 리스트의 데이터)들이 포인터로 연결된 구조이다. 링크..
[Data Structure] heap
·
Development/CS
1. 힙(heap)이란?참고 https://geunuk.tistory.com/86https://juhee-maeng.tistory.com/94 힙(heap)이란, 우선순위 큐를 위해 만들어진 자료구조의 완전 이진 트리의 일종이다.데이터를 효율적으로 저장하고 최대값이나 최소값을 빠르게 찾기위해 고안되었다. ※ 완전 이진 트리완전 이진 트리는 노드를 삽입할 때, 왼쪽부터 차례대로 삽입하는 트리 2. 힙의 연산삽입새로운 노드의 힙을 마지막 위치에 추가부모 노드와 비교하며 위로 올림삭제루트 노드 제거하고 마지막 루트로 이동자식 노드와 비교하며 아래로 내림생성주어진 배열을 힙으로 변환삽입과 삭제의 시간 복잡도는 O(log N), 생성은 O(N)이다. 3. 힙의 종류최대 힙최대값을 빠르게 찾아내는 최대 트리이면..
[Back-end] REST와 RESTful API
·
Development/CS
1. API란?API(Application Programming Interface), 우리 말로 응용 프로그램 인터페이스라고 한다. API란, 애플리케이션 등이 서로 간에 연결하여 통신할 수 있도록 도와주는 매개체를 말한다. API를 통해 다양한 소프트웨어 구성 요소들이 상호작용할 수 있다. 우리는 온라인으로 물건을 살 때, 가게를 직접 방문하지 않고 해당 웹사이트에 접속하여 물건을 산다.코로나 이후 많이들 사용하는 쿠팡을 예로 들어보자. 쿠팡에서 물건을 살 때 우리는 물건을 고르고 주문을 한다. 주문을 받은 회사에서는 준비된 물건을 배송해준다. 이때 사용자가 요청한 주문을 API가 쿠팡으로 전달한다. 즉, 데이터를 전달해주는 역할을 한다. 2. REST란?REST(Representational Stat..