[Java/디자인패턴] 싱글턴 패턴(Signleton Pattern) 이해하기 -1 : 정의 및 종류
·
Java/아키텍처 & 디자인 패턴
해당 글에서는 싱글턴 패턴(Signleton Pattern)에 대해서 이해를 돕기 위해서 공유하기 위한 목적으로 작성한 글입니다. 1) 디자인 패턴(Design Pattern)💡 디자인 패턴(Design Pattern) - 소프트웨어에서 특정 문제를 해결하기 위해 개발된 재사용성이 가능한 솔루션을 의미합니다. - 디자인 패턴을 통해 재사용성, 유지 보수성, 확장성을 향상하는데 도움이 됩니다[ 더 알아보기 ] 💡 디자인 패턴의 종류 1️⃣ 생성 패턴 (Creational Patterns) - 객체의 인스턴스화 과정을 추상화하고, 객체를 생성하는 방법을 다양화하는 패턴입니다. 이에는 Singleton, Factory Method, Abstract Factory 등이 포함됩니다. 2️⃣ 구조 패턴 (Struc..
[Java/자료구조] 비선형구조 이해하기 - 1 : 트리(일반트리, 이진트리)
·
Java/알고리즘 & 자료구조
해당 글에서는 자료구조에서 비 선형 구조에 대해 이해하며, 그 종류인 일반트리/이진트리에 대해서 알아봅니다. 💡 [참고] 자료구조의 전체 구조 - 해당 글에서는 자료구조 중 비선형 구조에 대해 알아봅니다. 1) 비선형 구조(Non Linear) 💡 비 선형구조(Non Linear) - 데이터를 저장하기 위한 방법으로 데이터 간의 관계를 이루면서 ‘계층적인 구조‘를 가지며 ‘일렬로 나열되지 않은 자료구조’ 형태를 의미합니다. - 일련 되지 않은 자료구조는 계층적으로 데이터의 관계가 부모-자식 관계, 연결 관계, 또는 소속 관계 등을 가지고 있어서 계층적이거나 상호 연결되어 있습니다. - 대표적인 비선형 구조는 트리(Tree), 그래프(Graph)등이 이에 해당합니다. [ 더 알아보기 ] 💡 계층적인 구조?..
[Java/자료구조] 선형구조 - 연결 리스트 이해하기 : 단순, 이중, 순환 연결리스트
·
Java/알고리즘 & 자료구조
해당 글에서는 자료구조에서 선형 구조 중 연결 리스트에 대해 알아봅니다. 💡 [참고] 자료구조론 구조 - 선형구조 중 연결리스트와 종류인 단순, 이중, 순환 연결 리스트를 확인해 봅니다. 1) 선형 구조(Linear Structure) 💡 선형 구조(Linear Structure)란? - 데이터를 저장하기 위한 기본적인 형태로 데이터가 '일렬로 나열'되어 있을 뿐만 아니라 데이터 간에 순서가 있고 논리적으로 이어져 있는 구조를 의미합니다. - 선형 구조에는 순차 리스트, 연결 리스트, 큐(Queue), 스택(Stack), 덱(deque)이 있습니다. 💡 [참고] 이외에 선형구조에 대해 궁금하시면 아래의 글을 참고하시면 도움이 됩니다 [Java/자료구조] 선형 구조 - 순차 리스트(Sequential Li..
[Java/API] LinkedList Method API Document : Java 11
·
Java/API Document
해당 글에서는 Java 11 버전을 기준으로 LinkedList 인터페이스의 API에 대해서 확인합니다. 1) LinkedList 💡 연결 리스트(Linked List) - 데이터 요소를 ‘노드(Node)’로 구성된 선형 자료구조입니다. 각 노드는 데이터와 다음 노드를 가리키는 링크(포인터)로 이루어져 있습니다. - 연결 리스트는 동적 크기 조정이 용이하고, 삽입과 삭제가 빠르게 이루어질 수 있는 장점이 있습니다. - 하지만 특정 위치에 접근하는 데에는 선형적인 탐색이 필요하기 때문에 접근 속도가 느릴 수 있습니다. - 주로 데이터의 삽입과 삭제가 빈번하게 일어나는 상황에서 주로 사용됩니다. 큐(Queue)나 스택(Stack)과 같은 자료구조를 구현할 때 많이 활용됩니다. 또한 데이터 크기가 동적으로 변..
[Java] Spring Web Annotation 이해하고 사용하기 -3 : 예외 처리 및 주입
·
Java/Spring Boot
해당 글에서는 Spring Web에서 사용되는 주요 어노테이션 중 '예외처리'와 '주입'과 관련된 어노테이션의 종류에 대해 상세히 알아봅니다. 💡 [참고] 이전에 작성한 글(환경구성 및 요청/응답 어노테이션)을 참고하셔도 좋을 것 같습니다. [Java] Spring Web Annotation 이해하고 사용하기 -1 : 환경 구성해당 글에서는 Spring Web에서 사용되는 주요 어노테이션 중 환경구성과 관련된 어노테이션의 종류에 대해 상세히 알아봅니다. 1) Spring Boot Web 💡 Spring Boot Web - Spring Boot 프레임워크의 일부로 웹 애adjh54.tistory.com [Java] Spring Web Annotation 이해하고 사용하기 -2 : 요청 및 응답해당 글에서는..
[Java] Spring Web Annotation 이해하고 사용하기 -2 : 요청 및 응답
·
Java/Spring Boot
해당 글에서는 Spring Web에서 사용되는 주요 어노테이션 중 요청/응답과 관련된 어노테이션의 종류에 대해 상세히 알아봅니다. 💡 [참고] 이전에 작성한 Spring Web Annotation '환경구성' 글에서 이어집니다. [Java] Spring Web Annotation 이해하고 사용하기 -1 : 환경 구성 어노테이션해당 글에서는 Spring Web에서 사용되는 주요 어노테이션 중 환경구성과 관련된 어노테이션의 종류에 대해 상세히 알아봅니다. 1) Spring Boot Web 💡 Spring Boot Web - Spring Boot 프레임워크의 일부로 웹 애adjh54.tistory.com 💡 [참고] 또한 Rest API와 관련된 내용이기에 아래의 글을 참고하시면 도움이 됩니다. [Java] ..
[Java] Spring Web Annotation 이해하고 사용하기 -1 : 환경 구성
·
Java/Spring Boot
해당 글에서는 Spring Web에서 사용되는 주요 어노테이션 중 환경구성과 관련된 어노테이션의 종류에 대해 상세히 알아봅니다. 1) Spring Boot Web💡 Spring Boot Web - Spring Boot 프레임워크의 일부로 웹 애플리케이션을 빠르고 쉽게 구축할 수 있도록 도와주는 도구입니다. - 내장된 웹 서버를 제공하여 웹 애플리케이션을 실행하고 관리하는 데 필요한 모든 설정을 자동으로 처리합니다. (내장된 웹 서버로 Tomcat, Jetty, Undertow와 같은 서버를 사용할 수 있습니다.) - 이를 사용하면 간단한 설정으로 HTTP 엔드포인트를 생성하고 관리할 수 있습니다. 또한, Spring MVC와 같은 웹 프레임워크와 통합되어 효율적인 웹 애플리케이션 개발을 지원합니다. - ..
[Java/Short] 배열을 반으로 나누어 재구성 방법 : for, Arrays.copyOfRange
·
Java/Short 개발
해당 글에서는 간단한 개발 방법으로 배열을 반으로 나누어 재구성하는 방법에 대해 알아봅니다. 1) for문을 이용한 방식 💡 for문을 이용한 방식 - 배열의 요소의 개수가 짝수인 경우도 있지만, ‘홀수’인 경우 인덱스의 값에 따라 각각 처리를 해야 합니다. - 또한 요소의 개수가 홀수이면 ‘앞’에 요소를 더 둘 것인지 아니면 ‘뒤’에 요소를 더 둘 것인지에 대해 정하고 반을 나눠서 재구성합니다. /** * 배열을 반으로 나누기 : for 문을 이용한 방법 * * @return */ @GetMapping("/1") public ResponseEntity
[Java] Spring Framework 주요 특징 이해하기 : DI, IoC, POJO, AOP
·
Java/아키텍처 & 디자인 패턴
해당 글에서는 Spring Framework의 주요 특징인 DI, IoC, POJO, AOP 대해서 알아봅니다. 1) Spring Framework와 Spring Boot의 관계 💡 Spring Framework와 Spring Boot의 관계 - Spring Boot는 Spring Framework 위에 구축되어 Spring 애플리케이션을 생성하고 구성하는 간소화된 방법을 제공합니다. 즉, Spring Framework 기반으로 Spring Boot가 수행되는 프레임워크를 의미합니다. - Spring Boot 자동 구성과 주관적인 기본 설정을 제공하여 개발자가 보일러플레이트 코드 대신 비즈니스 로직 작성에 집중할 수 있도록 개발 과정을 간소화하는 것을 목표로 합니다. [ 더 알아보기 ] 💡 Spring ..
[Java] API 캐시와 세션 이해하기
·
Java/이론 및 문법
해당 글에서는 API 캐시와 세션에 대해 이해를 돕기 위해 작성한 글입니다. 1) API 캐시(Cache) 💡 API 캐시(Cache) - 웹 애플리케이션에서 반복적으로 요청되는 데이터의 응답을 저장하는 임시 저장소를 의미합니다. 이렇게 저장된 데이터는 이후 ‘동일한 요청’이 ‘발생’했을 때 캐시에서 가져와 응답 시간을 단축시키고 서버의 부하를 줄일 수 있습니다. - API 캐시는 일반적으로 ‘서버의 메모리’에 저장이 되며 캐시의 유지 시간은 다양한 요인에 따라 결정되며 유효기간이 지나면 해당 캐시는 만료되고, 새로운 데이터를 가져와서 캐시를 갱신합니다. 1. API 캐시 사용목적 💡 API 캐시 사용목적 1. 동일한 ‘API 요청을 반복적’으로 수행하는 경우 - 캐시를 사용하면 이전에 받아온 응답을 재..