불필요한 객체 생성을 피하라1.똑같은기능의객체를 매번생성하기보단 객체 하나를 재사용하는 편이나을때가많음재사용은 빠르고 세련되기때문, 특히 불변객체는 언제든 재사용가능다음예시는 하지말아야할 극단적예시실핼될때마다 인스턴스를 새로만들기때문에 완전히 쓸데없는 행위해당 코드가
자원을직접 명시하지 말고 의존객체주입을 사용하라많은클래스가 하나 이상의 자원에의존정적유틸리티를 잘못 사용한 예시싱글턴을 잘못 사용한 예사용하는자원에따라 동작이 달라지는 클래스에는 정적유틸리티 클래스나 싱글턴 방식이 적합하지않다인스터스를 생성할때 생성자에 필요한 자원을
인스턴스화를 막으려거든 private생성자를 사용하라 정적 멤버만 담은 유틸리티 클래스는 인스턴스로 만들어 쓰려고 설계한것이 아님. 생성자를 명시하지않으면 public생성자가 만들어지고, 사용자는 이 생성자가 자동생성된것인지 구분하기가 어렵다 추상클래스로 만드는것으
싱글턴이란 인스턴스를 오직 하나만 생성할수있는 클래스를 의미한다.싱글턴의 예로는 무상태(stateless)객체나 설계상 유일해야하는 시스템 컴포넌트를 들수있다1\. public static final 필드 방식의 싱글턴private생성자는 final 필드인 인스턴스를
정적팩터리와 생성자에는 똑같은 제약이있는데선택적매개변수가 많을때 적절한 대응이 힘들다이러한 경우 프로그래머들은 점층적 생성자패턴을 즐겨사용했다하지만 점층적 생성자 패턴은 확장하기가 어렵고,매개변수 개수가 많아지면 클라이언트 코드를 작성하거나 읽기가 어렵다자바빈즈패턴도
생성자 대신 정적 패터리 메서드를 고려하라 클래스의 인스턴스를 얻는 전통적인 수단은 public생서자다 클래스는 생성자와 별도로 정적 팩터리 메서드를 제공할수 있다 정적 팩터리 메서드가 생성자 보다 좋은점 1. 이름을 가질수있다 2. 호출될때마다 인스턴스를 새로
compareTo 함수는 Comparable 인터페이스에서 제공하는 함수이며, 두개의 값을 비교해 int값으로 반환해주는 함수이다T는 비교하려는 객체정수값을 반환EX) Person클래스를 통해 compareTo사용법해당 예제는 Person클래스에서 나이와 이름을 필드
벌써 ...섹션4가 끝나고 회고하는 시간이 돌아왔다 시간이 너무빠른거같다 😭 이 다음에는 프리프로젝트,메인프로젝트가 남았는데 프로젝트까지 잘 마무리할수있게 열심히 달려야겠다는 생각이든다 이번에도 어김없이 KPT회고를 해보려고한다 현업에서 많이쓰이는 회고라고 하니 익
컴퓨터 시스템에서 사용가능한 물리적 메모리를 효율적으로 할당,관리 및 보호하는 과정이는 프로세스(프로그램 실행 단위)가 메모리에 로드되고 실행되는 방식을 조절함으로써 시스템의 성능과 안정성을 향상시킨다.1.주소 공간 할당2.주소 변환3.메모리 할당 및 해제4.가상 메모
여러 프로세스가 동시에 실행될 때 발생할 수 있는 문제를 해결하기 위한 기술공유자원•여러 프로세스가 동시에 접근하여 사용할 수 있는 자원•파일, 데이터베이스, 메모리 영역 등이 공유 자원의 예시•프로세스 간에 공유 자원에 대한 접근을 조정하지 않으면 예기치 않은 결과가
"First-Come, First-Served"를 의미하며 컴퓨터 과학 및 운영 체제에서 사용되는 스케줄링 알고리즘\-매우 간단하고 직관적 시스템에 도착하거나 입력하는 순서에 따라 작업 또는 프로세스를 실행하여 작동한다.\-장점 중 하나는 단순성과 공정성이다=>모든 작
•리소스관리•하드웨어 추상화•프로세스 및 메모리 관리•파일 및 시스템 관리•장치 및 드라이버 관리•사용자 인터페이스•보안 및 보호•오류 처리 및 내결함성운영 체제(OS)는 컴퓨터 시스템의 하드웨어 및 소프트웨어 리소스를 관리하고 제어하는 중요한 소프트웨어 구성 요소이다
단위테스트 •특정 메서드의 동작을 검증하거나 단일 클래스내에서 여러 메서드 간의 상호작용을 테스트 •분리된 코드 단위에 집중함으로써 개발 초기에 문제를 식별,수정하여 개별구성요소가 더 큰시스템에 통합되기전에 의도한대로 작동하는지 테스트하는 기법 통합테스트 •컨트롤러
Spring MVC의 인증(Authentication)과 인가(Authorization) 기능을 지원하는 보안 프레임워크Spring MVC기반 애플리케이션에 보안을 적용한 표준Principal(주체)애플리케이션에서 작업을 수행할수있는 사용자, 디바이스 또는 시스템등이될
JPA에서의 고아객체는 상위객체 또는 엔티티와 더이상 연결 되지 않는 영구객체를 나타낸다.두 엔티티간의 관계가 끊어지거나 제거되고 자식 엔티티가 부모 엔티티에대한 참조없이 남아있을때 발생할수있다.응용프로그램에서 데이터 불일치 및 오류로 이어 질 수있다.ex) 고아 지식
•관계형 데이터베이스에 연결하고 조작되는데 사용되는 JAVA API를 의미한다•JAVA Standard Edtion플랫폼의 일부이다•애플리케이션이 데이터베이스에 액세스 될수있도록 표준 인터페이스를 제공•JDBC API와 JDBC드라이버 관리자 두가지 구성요소로 구성된다
생각하고 끊임없이 발전하는 백엔드 개발자백엔드를 중점적으로 모두 골고루 관리할수있는 개발자섹션3을 시작하고 난 이후로 정말 이렇게나 멘탈이 털릴수있나 싶을정도로학습이 어려워서 따라가기가 벅찼고.. 계속배우고 싶었던 Springboot의 JPA기술을 배우는 것은 매우 흥
테스트 대상이 어떤것이든 테스트를 제대로 잘 거쳐서 테스트 대상이 검증 과정에 잘 통과하게 만들어 최대한 더 나은 결과를 얻기위해서이다코드를 작성 후에 작성한IDE에서 애플리케이션을 실행 후 실행시킨애플리케이션에서 Postman으로 HTTP요청을 전송해서기대했던 JSO
1.스프링 로직(비즈니스 로직)에 애너테이션 추가2.AOP를 이용해서 비즈니스로직에서 트랜잭션 적용코드를 감추는 방식데이터베이스 커넥션 정보를 담는Datasource가 필요함Spring에서 트랜잭션은 기본적으로 PlatformTransactionManager에 의해 관
Spring기본 Spring 스프링 프레임워크는 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로써 스프링이라고 불린다. 동적인 웹사이트를 개발하기 위한 여러가지 서비스를 제공하고있다 대한민국의 공공기관의 웹 서비스 개발시 사용을 권장하고있는 전자정부 표준 프레임