231229 TIL | 스프링 부트 3 기본 지식

2023. 12. 29. 20:43· 왕초보일지

[~02장]
 
 
🚩build system 의 그레이들과 메이븐?
: 애플리케이션을 생성하는 과정을 자동화하는 프로그램이다. 말 그대로 build ! 
뭘 자동화하냐? 의존성 내려받기, 컴파일, 테스트 등등
 
🚩IP주소와 포트
IP주소가 서버를 찾기 위한 번호라면 포트는 그 서버에서 운용되고 있는 서비스를 구분하기 위한 번호
 
📌스프링 부트는 스프링에 속한 도구로 스프링의 하위 프레임워크이다.
우리가 테스트할 때 로그에서 볼 수 있었던 Tomcat 이 스프링과 달리 스프링 부트에 기본적으로 내장되어 있는 WAS 다.
 
Sping의 3대 모델 AOP PSA IoC/DI
🚩관점 지향 프로그래밍 AOP (Aspect Oriented Programming)
기존의 OOP에서 관심/관점/기능별로 모듈화해서 분리 시키는 개념
공통적으로 갖는 로직을 각각의 소스코드에서 제거하고 하나의 공통 모듈로 만든다! 정도로 이해하자.
 
❓이식 가능한 서비스 추상화 PSA (Portable Service Abstraction)
제공되는 다양한 기술들을 추상화해 개발자가 쉽게 사용하는 인터페이스
PSA가 적용된 코드라면 나의 코드를 바꾸지 않고 간편하게 다른 기술로 바꿀 수 있다 ? (DB를 바꾸거나 할 때)
 
🚩주요 어노테이션
@SpringBootApplication : 스프링 부트 사용에 필요한 기본 설정들을 해준다.
@SpringBootConfiguration : 스프링 부트 관련 설정
@EnableAutoconfiguration : 스프링 부트 서버가 실행될 때 스프링 부트의 메타 파일을 읽고 정의된 설정을 자동으로 구성
@ComponentScan : @Component 를 가진 클래스들을 SCAN 해서 빈으로 등록 

💡빈으로 등록되는게 @Component 모양만 있진 않던데?
@Controller 파일을 확인해보면 @Component 를 가지고 있는 것을 확인할 수 있다.
@Comfiguration(설정파일등록), @Repository(ORM매핑), @Service(비즈니스로직) 도 마찬가지!

 
 


생성자 주입 방식 <= 외부에서 생성 <- 수정할 곳이 줄어든다!
클래스에 인스턴스가 생성될 때 초기부터 의존성을 주입하여 객체의 불변성을 확보하고 개발자의 실수를 줄일 수 있다.


❓코틀린 정규식 regex
특정 패턴을 가지고 문자열을 찾을 수 있다.
유효성 검사 등을 할 때 긴 조건을 나열하는 것이 아니라  간단하게 표현 가능하다.


- 어노테이션을 처음 접했을 때 이해가 안 갔던 이유
가장 상위의 뭔가가 있고 그 아래로 나열되어 있다~이런 식이면 구조를 눈에 담으려고 했을텐데 
이 @는 저@에 속하고 얘는 이러한 @들을 찾고 ...이렇게 우다다다 나와서 뭘 어떻게 받아들여야할지 전혀 몰랐었다. 그럼 이 골뱅이 달린 것들이 수십개, 수백개 있고 각각의 기능들을 다 알아야 하는건가? 했었다.
스프링이 안개같이 느껴졌었는데 책 읽고 세션도 들으니 너무 재밌고 안개가 조~금 걷힌 것 같다.🫡
 
- step2가 막혀서 딴데로 눈을 많이 돌렸다...머리 환기시키고 나면 더 잘되겠지 🥲
강의대로 따라만 하는거랑 직접 혼자 구현하는거랑 천지차이라는걸 느꼈다...내일 5장까지 슉슉 읽고 스텝2 어떻게든 해보자!!!
목표는 스텝4 다음주 금요일까지 시도라도 해보기!
연휴는 1월1일에 즐기면 되겠지...

'왕초보일지' 카테고리의 다른 글

240102 TIL |  (0) 2024.01.02
231230 | TIL  (0) 2023.12.30
231228 TIL |  (0) 2023.12.28
231227 | Todo Step1  (2) 2023.12.27
231226 | Entity 작성, Service layer 연결  (0) 2023.12.26
'왕초보일지' 카테고리의 다른 글
  • 240102 TIL |
  • 231230 | TIL
  • 231228 TIL |
  • 231227 | Todo Step1
다시은
다시은
🔥
다시은
재은로그
다시은
전체
오늘
어제
  • 분류 전체보기 (127)
    • 코딩테스트 (40)
    • Language (2)
      • JAVA (2)
      • Kotlin (0)
      • TypeScript (0)
    • SQL (1)
    • 인프라 (1)
    • 왕초보일지 (77)
    • 회고 (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 문자열변환
  • googleapis
  • SQL문법
  • 스프레드시트
  • Kotlin
  • sql
  • mysql

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
다시은
231229 TIL | 스프링 부트 3 기본 지식
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.