본문 바로가기

Spring32

객체 지향 프로그래밍의 4대 특성 (캡! 상추다) 목차개요클래스 vs 객체객체 지향 프로그래밍이란?객체 지향 프로그래밍의 장점객체 지향의 4대 특성5-1. 캡슐화5-2. 상속5-3. 추상화5-4. 다형성결론1. 개요객체 지향의 4대 특성으로 좋은 상추가 떠오를 것이다. 흔히 앞글자를 따서 ‘캡! 상추다’ 같이 재밌는 표현을 사용한다.앞서, 간단하게 클래스와 객체를 알아보고 객체지향프로그래밍의 4대특성인 캡슐화, 상속, 추상화, 다형성에 대해 아래 내용을 차근차근 살펴보자.2. 클래스 vs 객체세상에 존재하는 모든 것은 사물, 즉 객체(Object)다.각각의 사물은 고유하다.사물은 속성을 갖는다. ex) 사람의 키, 사람의 몸무게, 자동차의 속도 등사물은 행위를 한다. (무생물은 의인화 필요)객체를 인지할 때 우리는 분류(Class) 한다.ex) 직립 보.. 2023. 6. 28.
서블릿(Servelet)이란? 목차서블릿(Servlet)이란?서블릿 특징서블릿 동작방식서블릿 컨테이너동시요청 - 멀티쓰레드서블릿 생명주기(Servlet LifeCycle)결론1. 서블릿(Servlet)이란?서블릿은 동적인 페이지를 만들기 위해 사용되는 웹 애플리케이션 프로그램위와 같이 서버에서 처리해야 하는 업무들이 많지만 서블릿을 지원하는 WAS를 사용하면 초록색 박스와 같은 의미있는 비즈니스 로직을 제외한 모든일들을 대신 처리해준다.즉, 개발자는 의미있는 비즈니스 로직에만 집중하여 개발 할 수 있게 도와준다.2. 서블릿 특징urlPatterns(/hello) 의 URL이 호출되면 서블릿 코드가 실행된다.HTTP 요청 정보를 쉽게 사용할 수 있는 HttpServletRequest를 제공한다.HTTP 응답 정보를 쉽게 사용할 수 있는.. 2023. 6. 20.
spring boot의 가장 큰 장점 Auto Configuration이란? 동작 방식은? 목차Auto Configuration이란?Auto Configuration 동작 방식2-1. main 메소드2-2. SpringBootApplication2-3. EnableAutoConfiguration2-4. AutoConfigurationImportSelector2-5. 동작 정리결론1. Auto Configuration이란?스프링부트는 자동 구성(Auto Configuration) 기능을 제공하는데, 일반적으로 수많은 빈들을 자동으로 등록해주는 기능이다.이러한 기능으로 인해 반복적으로 빈을 등록하고 설정하는 부분을 줄이고 편리한 개발을 할 수 있게 도와주며 스프링 부트의 핵심적인 장점이라 할 수 있다.2. Auto Configuration 동작 방식1. main 메소드스프링 부트 프로젝트를 처음 .. 2023. 6. 16.
Statement vs PreparedStatement 목차개요JDBC API 인터페이스 2-1. Statement2-2. PreparedStatement결론1. 개요Statement와 PreparedStatement 인터페이스는 모두 SQL 쿼리를 실행하는 데 사용된다. 하지만, 두 인터페이스의 차이를 보안과 성능의 관점에서 살펴보자.2. JDBC API 인터페이스두개의 인터페이스는 어떻게 동작할까?쿼리 문장 분석컴파일실행1. Statement문자열 기반 SQL 쿼리를 실행한다.public void insert(PersonEntity personEntity) { String query = "INSERT INTO persons(id, name) VALUES(" + personEntity.getId() + ", '" + personEntity.getName().. 2023. 5. 22.
단위테스트 vs 통합테스트 vs 인수테스트 목차개요단위 테스트(Unit Test)통합 테스트(Integration Test)인수 테스트(Acceptance Test)결론1. 개요테스트를 크게 3가지 분류로 나눌 수 있는데 가장 많은 범위를 차지 하고 있는 단위 테스트 통합 테스트, 인수 테스트 순으로 위 그림 처럼 나타낼 수 있다.이는 테스트 케이스의 개수라고 보면 될 것이고 코드 범위로 따지면 단위테스트가 가장 작고 인수 테스트가 가장 큰 것을 볼 수 있다.2. 단위 테스트(Unit Test)단일 서버 / 단일 프로세스 / 단일 쓰레드에서 돌아가는 테스트를 말한다.테스트에 Disk I/O가 있어서는 안되고 Blocking call이 있어서도 안된다.매우 간단하고 명확해야 하며 기본적으로 테스트를 위한 입력 값을 주어 그에 대한 함수의 출력 값이.. 2023. 5. 16.
테스트코드는 무엇이고 왜 작성해야 할까요? 목차테스트코드란?테스트 코드는 왜 작성해야 할까?테스트 코드의 단점결론1. 테스트코드란?소스 코드가 의도된 대로 정확히 동작하는지 검증하고 오류를 찾는 절차에 사용된다.즉, 특정 기능이 제대로 작동하는지 확인하고, 변경사항이나 추가 기능이 기존 기능에 영향을 미치지 않는지 검증하는데 도움을 준다.2. 테스트 코드는 왜 작성해야 할까?(도서) 구글 엔지니어는 이렇게 일한다. 11장구글도 초창기에는 엔지니어에 의한 자동 테스트를 그다지 중요하게 생각하지 않았다. 그러나 2005년에 구글 웹 서버(GWS) 규모와 복잡성이 무척 커지면서 생산성이 급속도로 떨어지는 경험을 했다. GWS는 구글 검색 쿼리를 제공하는 웹 서버로, 구글 검생에 있어서는 마치 공항의 관제 시스템만큼 중요한 역할을 하는 서비스이다. 릴리.. 2023. 5. 15.