Info/개념 정리

들어가기 앞서.. 현재 프로젝트에서 다음과 같은 경우에 redis 를 사용해주고 있다. JWT의 refreshToken 과 게시물의 좋아요 및 조회수에서 사용해주고 있는데, 기존에는 프로젝트에 적용을 할 때 공부해보지 않고 레퍼런스 코드를 보며 적용하기 바빴다. 하지만 이번 기회를 통해 redis 에 대해 공부해보는 시간을 가져보려 한다. https://aws.amazon.com/ko/elasticache/what-is-redis/ Redis란 무엇입니까? – Amazon Web Services(AWS) Redis 개발자는 백 개가 넘는 오픈 소스 클라이언트를 사용할 수 있으며, Java, Python, PHP, C, C++, C#, JavaScript, Node.js, Ruby, R, Go를 비롯한 다..
REST란 ? REST란 Representational State Tranfer의 약자로, 자원을 이름으로 구분하여 해당 자원의 상태(정보)를 주고받는 모든 것을 의미한다. 다시말해, 자원(resource)의 표현(representation)에 의한 상태전달을 뜻한다. 자원(resource) : 해당 소프트웨어가 관리하는 모든 것 (문서, 그림, 데이터 등) 표현(representation) : 그 자원을 표현하기 위한 이름 (ex : DB의 주인 정보가 자원이면, 'owners'가 자원의 표현) 상태 전달 : 데이터가 요쳥되는 시점에 자원의 상태를 전달 (JSON 또는 XML을 통해 데이터를 주고 받는 것이 일반적) REST는 기본적으로 웹의 기존 기술과 HTTP 프로토콜을 그대로 사용하기에, 웹의 장..
들어가기 앞서.. JWT를 이용한 로그인을 구현하는 예제를 해보다, AccessToken과 RefreshToken을 구분해서 사용하는 이유와 정확한 개념을 이해하고 싶어 찾아보게 되었다. 다들 refreshToken을 사용하는 이유는 더 높은 보안성을 유지하기 위해서라고 알고 있을 것이다. 이번 기회를 통해 더욱 자세히 알아보겠다. RefreshToken 을 사용하는 이유? RefreshToken을 사용하는 이유를 설명하기 앞서, 우선적으로 AccessToken만을 사용할 때의 문제점을 설명하겠다. AccessToken만을 사용할 때의 문제점은 무엇일까? 1. 사용자의 잦은 로그아웃으로 인한 불편함 AccessToken을 설정할 때, 유효 시간을 지정할 수 있다. 해당 기간은 개발자 마음대로 지정이 가능..
들어가기 앞서.. 스터디를 진행하며, 사용한 코드에 대해 설명을 하기 위해 공부를 하다보니 @Builder를 사용하는 이유를 제대로 알지 못해서 찾아서 공부를 하게 되었다. 객체를 생성해주기 위해서는 생성자 패턴, 메소드 패턴, 수정자 패턴, 빌더 패턴 등을 사용할 수 있다. 많은 사람들이 빌더 패턴으로 객체를 생성하는 것을 선호하는 편인데 그러한 이유를 이번 포스팅을 통해 알아보겠다. 빌더 패턴을 사용해야 하는 이유는 무엇인가? 빌더 패턴의 사용이유를 간단하게 정리하면 다음과 같다. 필요한 데이터만 설정이 가능 코드의 유연성 확보 코드의 가독성 올라감 변경 가능성을 최소화 빌더 패턴을 사용해야 하는 이유를 아래의 간단한 코드를 통해 알아보겠다. @NoArgsConstructor @AllArgsConst..
들어가기 앞서.. 우선 간단하게 BeanFactory와 ApplicationContext를 정리하고 자세히 살펴보겠다. BeanFactory : BeanFactory란 빈을 생성하고 의존관계를 설정하는 기능을 담당하는 가장 기본적인 IoC 컨테이너이자 클래스를 말한다. ApplicationContext : ApplicationContext는 BeanFactory를 구현하고 있는 확장 버전이라고 보면 쉽다. BeanFactory 스프링 컨테이너의 최상위 인터페이스 스프링 빈을 관리하고 조회하는 역할을 담당 getBean() 메소드를 제공 빈과 관련된 대부분의 기능을 제공 Lazy-loading 방식 빈을 사용할 때 빈을 로딩하는데, 필요할 때만 로딩하기에 가벼운 경량 컨테이너이다. ApplicationCo..
SOLID 원칙이란 무엇인가? SOLID 원칙이란 로버트 마틴이 정리한 좋은 객체 지향 설계의 5가지 원칙을 말한다. 해당 원칙을 지키면 시간이 지나도 변경이 용이하고, 유지보수 및 확장이 용이한 소프트웨어를 개발하는데 도움이 된다고 알려져있다. SRP : 단일 책임 원칙 (Single Responsibility Priciple) OCP : 개방-폐쇄 원칙 (Open/Closed Principle) LSP : 리스코프 치환 원칙 (Liskov Substituion Principle) ISP : 인터페이스 분리 원칙 (Interface Segregation Principle) DIP : 의존관계 역전 원칙 (Dependency Inversion Principle) SRP (Single Responsibil..
soohykeee
'Info/개념 정리' 카테고리의 글 목록