본문 바로가기
반응형

전체 글117

[스프링 개념] IOC, DI와 DIP IOC(Inversion of Control, 제어의 역전)제어의 역전이란 프로그램의 제어 흐름 구조가 뒤바뀌는 것이다.프로그램의 제어권이 개발자가 작성한 코드에 있는 것이 아니라 외부에 존재하는 것을 말한다.이때 프로그램의 제어권에 포함되는 내용은 사용할 객체 결정, 객체 생성, 메서드 호출 등 프로그래밍 언어로 표현할 수 있는 모든 행위를 포함한다. 제어의 역전을 통해 제어권을 외부에 넘긴다는 것은 그에 대한 책임도 넘긴다는 것이다. 예를 들면 IOC 개념이 적용된 DI(의존주입)에서 객체 생성, 의존 객체 결정, 의존 객체 주입은을 프레임워크가 대신하니이에대한 책임도 프레임워크가 갖고 개발자는 객체 생성, 사용 객체 결정에 대한 책임에서 벗어난다.(프로그래밍 코드로 책임을 벗어날 수 있다는 것이고,.. 2023. 12. 31.
Hexagonal 아키텍쳐 시스템 구성요소3개의 큰 블록으로 구성User Interface 어떤 유저인터페이스 환경에서라도 실행될 수 있게 하는 것(controller는 웹과 모바일 유저 인터페이스 환경에서 실행을 가능하게 하고, console command는 cli 유저 인터페이스 환경에서 실행을 가능하게 한다.)Application Core비즈니스 로직을 담고 있으며, user interface에 의해 호출됨어떤 종류의 user interace인지에 상관 없이 모두 동일한 결과를 반환함 Infrastrure Coreapplication core와 연결, db, 검색엔진, 써드파티 API와 같은 툴  Tool의 연결 : Port & Adapterapplication이 사용하는 DB, 검색엔진, 웹서버, CLI 콘솔과 같은 외부 .. 2023. 12. 18.
스프링 시큐리티 개념 정리 스프링 시큐리티란?스프링에서 제공해주는 인증, 인가, 보안에 대한 기능을 제공해주는 프레임워크인증, 인가, 보안 처리를 가진 각각의 필터들이 체인 형태를 이루며 순차적으로 처리(서블릿 컨테이너에서 동작, 즉, 스프링 컨텍스트 들어오기 전, 디스패처 서블릿 들어오기 전)스프링 컨텍스트 영역으로 들어오지 않지만 스프링 빈을 사용할 수 있다.(프록시를 통해 처리 가능)인증(Authentication)은 사용자의 신원을 확인하는 절차 인가(Authroization)는 인증된 사용자에게 자원에 대한 접근 권한을 부여하는 절차 스프링 시큐리티의 인증방식Credential 방식 : username, password를 이용한 방식폼 기반 로그인(아이디 비밀번호 입력하여 로그인)토큰 기반 => 다양한 인증방식 있지만 모.. 2023. 12. 6.
불변(Immutable)객체와 가변(mutable) 객체 불변 객체는 상태 변경이 불가능한 객체이다.수정자 메서드를 막고 read-only 메서드만 제공하며 참조 속성의 불변성을 지키기 위해 방어적 복사 메서드가 제공되기도 한다. ex) String, 원시타입의 래퍼타입(Boolean, Integer, Float, Long, Double), ResultSet 불변객체 생성1. 접근지정자 private 지정2. final 선언 3. 수정자 메서드 제공 금지 외부에서 접근이 불가하도록 private으로 선언하고, final을 통해 초기화 이후 값 변경이 불가하게 만든다.수정자 메서드를 제공하지 않음으로써 값이 변경되지 않음을 보장한다.public class Member { private final String email; private final Strin.. 2023. 11. 15.
반응형