본문 바로가기

분류 전체보기254

마이크로 서비스 아키텍처(Micro Service Architecture, MSA), 모놀리식 아키텍처(Monolithic Architecture) 최근에는 모놀리식 아키텍처(Monolithic Architecture)가 보유한 단점이나 한계점을 극복하기 위해 많은 서비스 기업들이 마이크로 서비스 아키텍처(Micro Service Architecture) 패턴을 이용해 개발을 진행하고 있습니다. 이번엔 Monolithic Architecture, Micro Service Architecture가 무엇인지 간단히 정리해 보고자 합니다. 1. Monolithic Architecture (모놀리식 아키텍처) 1-1. 모놀리식 아키텍처(Monolithic architecture) - 소프트웨어의 구성 요소들이 하나의 프로젝트 내부에 모두 통합되어 있는 설계 패턴을 의미합니다. 1-2. 특징 - 모놀리식 아키텍처의 경우 일반적으로 아래와 같은 특징이 존재합니.. 2023. 2. 23.
[IntelliJ] - Windows OS 기준 유용한 단축키, 환경 설정, 플러그인 정리 이번 포스팅은 Java 통합 개발환경인 IntelliJ(인텔리제이)를 사용하면서 Windows 기준 알아두면 유용한 단축키와 기타 환경 설정, 플러그인을 정리한 포스팅입니다. 1. Settings 단축키 : Ctrl + Alt + s - 인텔리제이의 전반적인 Setting을 구성할 수 있는 Setting 페이지에 접근하는 단축키입니다. 2. Rename : Shift + F6 - 생성자와 클래스명, 변수명 등을 한 번에 변경할 수 있는 Rename 단축키입니다. 3. Generate 단축키 : Alt + Insert - 생성자, Getter/Setter, toString()과 같은 메소드 코드를 생성할 수 있는 단축키입니다. 4. 변수나, 클래스 등이 정의된 코드로 이동 : Ctrl + 변수나 클래스 코.. 2023. 2. 15.
[Spring] - 객체 지향 설계 5대 원칙 (SOLID) 이번 포스팅에서는 객체 지향 설계 5대 원칙이라고 불리는 "SOLID"에 대해서 공부한 내용을 정리해 보고자 합니다. 1. 객체 지향 설계 5대 원칙 : SOLID - 객체 지향 설계 5대 원칙, SOLID는 클린 코드(Clean code)의 저자로 유명한 로버트 마틴이 좋은 객체 지향 설계를 위해 5가지 원칙을 정리한 것을 의미합니다. - 크게 아래와 같이 5가지 원칙이 존재합니다. (1) SRP(Single Responsibility Principle) : 단일 책임 원칙 (2) OCP(Open-Closed Principle) : 개방 - 폐쇄 원칙 (3) LSP(Liskov Substitution Principle) : 리스코프 치환 원칙 (4) ISP(Interface Segregation Pri.. 2023. 2. 15.
[Spring] - 좋은 객체 지향 프로그래밍 기법이란? - 이번 포스팅에서는 객체 지향 프로그래밍이 무엇인지, 이에 대한 4대 원칙들과 객체 지향의 핵심인 다형성(Polymorphism)을 위한 예시, 다형성을 통해 얻을 수 있는 여러 가지 장점에 대해 공부한 내용을 정리해 보고자 합니다. 1. 객체 지향 프로그래밍(Object Oriented Programming)이란 무엇인가? 1-1. 객체 지향 프로그래밍의 정의 - 객체 지향 프로그래밍(Object Oriented Programming)이란 컴퓨터 프로그램을 명령어의 목록에서 보는 시각에서 벗어나 여러 개의 독립된 단위인 객체들의 모임과 이들 간의 상호작용으로 바라보고자 하는 프로그래밍 패러다임 중 하나로써 이러한 객체들은 각각의 상호작용을 통해 메시지나 데이터를 주고받으면서 여러 가지 작업을 처리할 .. 2023. 2. 14.
[Spring] - Spring Framework 개요 - 이번 포스팅에서는 Spring 프레임워크와 Spring 프레임워크를 더욱 편리하게 사용할 수 있는 도구인 Spring Boot에 대해 공부한 내용을 정리해 보고자 합니다. 1. Spring의 생태계 1-1. Spring Framework - 스프링 프레임워크는 Java 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크입니다. (위키백과) - Spring은 어떤 특정한 하나가 아닌 여러 기술들의 모임이라고 볼 수도 있습니다. 핵심인 스프링 프레임워크, 여러 기능들과 설정을 보다 간소화하여 이전보다 스프링을 좀 더 편리하게 사용할 수 있게 하는 스프링 부트부터 이외에 스프링 Data, Session, Security, Rest Docs, Batch, Cloud가 존재합니다. 2. Spring Framewo.. 2023. 2. 14.
[Spring Boot] - Spring Boot의 기본적인 프로젝트 구조 IntelliJ와 같은 IDEA 또는 spring.io에서 Spring Initializr에서 Spring Boot의 프로젝트를 생성하면 프로젝트에 대한 기본적인 구조도 같이 생성됩니다. 단순히 프로젝트를 생성하는 것뿐만이 아닌 해당 프로젝트의 구조에 대해서도 알아놓을 필요성이 있기 때문에 해당 포스팅을 작성하게 되었습니다. 1. Spring Boot 프로젝트의 기본적인 구조 살펴보기 - 우선 기본적인 프로젝트를 생성해 보도록 하겠습니다. - spring.io에서 Spring Boot 프로젝트를 생성하였습니다. 1-1. 프로젝트의 전체 패키지 : com.example.TestProject - 프로젝트의 패키지명을 다르게 해주면 위의 패키지명은 언제나 달라질 수 있습니다. - 시작하는 프로젝트의 의도에 맞.. 2023. 1. 30.