코드스테이츠 백엔드 부트캠프에 참여하게 되었다.
드디어 코드스테이츠 백엔드 부트캠프 시작일이 되었다.
💡 오늘의 학습 목표 [x] 컴퓨터의 이해 [x] 프로그래밍의 이해 [x] 웹 클라이언트와 웹 서버

HTML, CSS
페이지 레이아웃, 웹 / 앱 화면 구성
오늘은 드디어 첫 페어 프로그래밍 시간이었다.
리눅스 기초
git

자바 변수, 타입, 문자열, 연산자, 콘솔 입출력
조건문 / 반복문

배열, 계산기 만들기
객체지향

생성자 this

상속, 캡슐화

다형성, 추상화, 인터페이스

열거형, 제네릭, 예외처리, 컬렉션 프레임워크
컬렉션
애너테이션, 람다, 스트림, 파일입출력

스레드

오늘로 벌써 백엔드 부트캠프를 시작한지 딱 한달이 되는 날이다.

재귀 함수
JSON

Stack, Queue

DFS / BFS 완전탐색 문제 풀이

시간복잡도, Greedy, 구현-시뮬레이션, 완전 탐색 알고리즘, 이진 탐색 알고리즘

알고리즘 문제 풀이짐 나르기 (백팩 알고리즘)거스름돈보드 게임

순열 조합
네트워크 , 웹 구성, HTTP

REST API

SQL
Tree, Graph, BST , BFS / DFS

데이터베이스 설계, 스키마 디자인
ERD, SQL More
POJO, IoC, DI, AOP, PSA

아키텍처, Spring Framework모듈 구성, Spring Boot

DI, 스프링 컨테이너, 빈, 싱글톤, java기반 컨테이너 설정
ComponentScan / 다양한 의존관계 주입 방법

AOP, AOP용어, 타입별Advice
[ ] Pointcut 표현식 [ ] JoinPoint [ ] 애너테이션을 이용한 AOP

Section2 회고
Spring MVC, Controller
DTO / 유효성 검사

DI 연동, Mapper

Spring MVC 예외처리 @ExceptionHandler 를 이용한 예외처리 @RestControllerAdice를 이용한 예외처리

비즈니스적인 예외 던지기 및 예외 처리

Spring Data JDBC

Spring Data JDBC 기반 도메인 엔티티 및 테이블 설계, Spring Data JDBC 데이터 액세스 계층 구현

Spring Data JDBC 데이터 액세스 계층 구현 - 서비스, 리포지토리 페이지 네이션 실습
JPA

JAP 엔티티 매핑과 연관관계 매핑

Spring Data JPA 를 통한 데이터 액세스 계층 구현

트랜잭션

선언형 방식의 트랜잭션, JTA를 이용한 분산 트랜잭션
단위 테스트, JUnit을 사용한 단위 테스트

Hamcrest, 슬라이스 테스트

Mockito, TDD

API 문서화, Spring Rest Docs 설정

Spring Rest Docs 적용, 이메일 전송
애플리케이션 빌드/실행/배포, MySQL SpringBoot 연동 실습, 이미지 업로드

HTTPS, Hashing, Cookie, Session, 웹 보안 공격
Spring Security, Spring Security의 기본 구조(InMemory)

데이터베이스 연동 Spring Security
Spring Security의 웹 요청 처리 흐름, 인증 처리 흐름, 권한 부여 처리 흐름

JWT 개요, 토큰 기반 인증

Spring Security에서의 JWT인증, JWT 자격 증명을 위한 로그인 인증 구현, JWT를 이용한 자격 증명 및 검증 구현

OAuth2, OAuth2의 동작 방식

OAuth2 샘플 애플리케이션 구현, OAuth2와 JWT를 이용한 샘플 애플리케이션 구현

리액티브 프로그래밍, Hello, Reactive
AWS, 서버 배포 실습
Docker
AWS Pipeline을 통한 배포 자동화
클라이언트 배포 (S3호스팅), 데이터베이스 연결 (RDS 인스턴스 연결)

GitHub Actions

Proxy Server, 수평확장, 웹 서버, VPC

Todo애플리테이션

벌써 마지막 섹션이 끝나고 프로젝트에 들어가게 되었다. 섹션3에서 스프링을 배우고부터는 내가 공부를 하는건지 뭘하는 건지 너무 정신없이 지나갔다ㅠㅠ 어찌저찌 마지막섹션까지 끝냈으나,,,내일부터 하게 될 프로젝트가 너무나 막막하다ㅜ 복습은 둘째치고 진도도 어영부영 나간 것 같아서 다른 팀원들에게 민폐일 것 같고 못따라 갈 것 같아서 너무 걱정이된다,,, 지금...

팀 별 노션 페이지 작성
Github 리포지토리
📔 SRS(Software requirements specification) 소프트웨어가 무엇을 할 것이며 어떻게 작동할 것으로 예상되는지 설명하는 문서, 또한 제품이 모든 이해관계자(비즈니스, 사용자)의 요구를 충족시키는데 필요한 기능을 설명 📖 비즈니스 관점에서의 개발 프로젝트 이해 1. 과업 발생 개발팀이 착수해야할 프로트가 발생하는 시점 2. ...

약 2주 가량의 프리프로젝트가 끝이 났다!
배포자동화

드 ! 디 ! 어! 한달간의 메인 프로젝트가 끝났다,,,,
메인프로젝트 리팩토링