프로젝트&부트캠프

1개월 동안 배운 내용 요약1. 자바 기초:기본 문법: 자바의 기본 문법과 구조, 변수와 데이터 타입, 연산자에 대해 배웠습니다. 또한, 조건문(if, switch)과 반복문(for, while)을 이용한 흐름 제어를 익혔습니다.클래스와 객체지향 프로그래밍: 클래스와 객체의 개념, 생성자, 메서드, 접근 제어자 등을 학습했습니다. 객체지향의 핵심 원칙인 캡슐화, 상속, 다형성을 이해하고 이를 활용한 간단한 프로그램을 작성했습니다.예외 처리: 자바에서의 예외 처리 방법, try-catch 문법, 예외 클래스 계층 구조를 배웠습니다. 또한, 예외 처리의 중요성과 예외 발생 시 프로그램의 안정성을 유지하는 방법에 대해 이해했습니다.2. 자료구조:기본 자료구조: 배열, 리스트, 스택, 큐 등 기본 자료구조의 원..
1주차(Day1 ~ Day3) 학습 내용 요약이번주차는 여행일정이 있어 계획한 5일치는 끝내지 못했다. Day1은 강의를 듣기 위한 기본 세팅과 기본적인 네트워크 지식에 대해 배우게된다. 본격적으로 코드를 만지기전 사전 작업이다. 그래서 코드만 만지면 모를 수 있는 기반 지식을 쉽게 설명해주고 있다. 키워드로 정리하고 블로그에 남길 내용은 링크 남기도록 하자. 라이브러리, 프레임워크의 개념과 차이인터넷의 역할 , 인터넷의 규약인 HTTP 요청 분석 , 데이터를 보내는 대표적인 두가지 방법(쿼리와 바디)URLHTTP 응답과 상태코드 Day2는 기반 지식을 통해 HTTP API를 개발해본다. GET, POST 등 기본 API를 개발한다. API를 개발전 사전 정의해야될 내용들 - API 명세 (Spec)GE..
Get API, Post API 만들어보기 문제 1문제 1 답안 Controller@GetMapping("/api/v1/calc")public CalcResponse calc(@RequestParam int num1, @RequestParam int num2) { return new CalcResponse(num1, num2);}ResponseDTO@Getterpublic class CalcResponse { private int add; private int minus; private int multiply; public CalcResponse(int num1, int num2) { this.add = num1 + num2; this.minus = n..
3주차 이번 주차에서는 특정 주제 3가지 중 하나를 선택하여 프로젝트 전 요구사항을 분석해 보는 시간이었다. 개인적으로 요구사항 분석 시 사용되는 시퀀스 다이어그램이나 API 명세 같은 작업을 별로 좋아하지 않는다. 귀찮기도 하고 문서 작업은 아무래도 큰 흥미를 발생시키지 않지 때문이다. 그래서 간단한 시나리오와 ERD 정도만 생각하고 바로 코드 작업에 들어갔다. 하지만 이런 식으로 작업하다보면 큰 빈틈을 발생시키게 된다. 평생 혼자 일한다면 상관 없겠지만 취업, 이직을 위한 Github의 작업물을 제공해야 될 때 또는 과제전형이 있었을 때 이런 문서를 제공하는 것은 당연하다. 이 외에도 회사에서 작업할 때도 이런 작업물을 사전에 만들지 않고, 최신화 작업을 하지 않는다면 남는 게 생각보다 없다. 사실 ..
2주차 회고 항해 플러스를 시작한지 2주차가 지나갔다. 2주차의 주제는 클린 아키텍터에 대한 내용이다. 많은 관심이 있는 주제였고, 책도 구매하였지만 할 게 많아서 미루고만 있었다. 그래서 이번 챕터를 하면서 강제적으로 할 수있는 기회가 생기게 되었다. 아키텍터는 직접 경험하지 않고 이론적으론 접근하기 어렵다는 느낌을 받았다. 그래서 목요일 정도까지 패키지 구성에 대한 고민만 하게되었다. 물론 성격적으로 부딪치는 방식을 잘 못하기 때문에 그런것도 있었던 것 같다. 하지만 멘토링에서 어느정도 가이드를 받고 다른 조원들의 과제 코드도 보면서 어느정도 감을 잡았었다. 이번 과제에 대해서는 fail을 받았지만 추가적으로 진행을 하지 않을 예정이다. 다음 주제에서 내가 느낀 바를 적용해가는 방식으로 진행할 예정이..
1주차 과제는 TDD이다. 간단한 요구사항이 주어지고 TDD를 이용해 구현하는 것이다. TDD에 대한 학습은 그 전에도 한 적이 있어 무리없이 진행할 수 있었다. 과제 진행 과제는 기능의 Todo가 적힌 Controller와 메모리 DB(HashMap)을 활용한 샘플코드가 주어져있다. 아래와 같은 방식으로 개발을 진행하였다. 1. 간단한 시나리오를 작성한다. 2. Controller 부터 개발을 시작한다. 시나리오 기반으로 Controller의 Request, Response을 정한다. 3. Controller에서 사용할 Service를 구현하며, 기능 메서드를 작성한다. 3-1. 여기서 부터 TDD 사이클을 적용한다. 3-2. 주로 성공 케이스를 생각하며 간단한 테스트가 통과하게 테스트 로직을 작성하고..
# 지금까지의 회고 처음 백엔드 개발자로 일하는 때는 지속적인 발전을 위해 노력해야된다는 의미를 몰랐다. 연차가 지나가면서 매일 똑같은 업무에 익숙함 빠져있었고 그게 실력이라고 믿었던 것 같다. 하지만 이직을 위해 퇴사를 하고 준비를 하고 있는 과정에서 얼마나 내가 공부를 게을리 했다는 것을 알 수 있었다. 향해플러스 신청 전 부트캠프를 하나 진행했는데 실무를 경험하지 못한 개발자 지망생을 많이 만났고 그들의 수준을 보고 놀라게 되었다. 나도 더 이상 뒤쳐지지 않고 지속적으로 학습을 해야할 이유를 발견하게 되었다. # 항해 플러스 참여 계기 향해 플러스 참여 계기는 아무래도 일반 부트캠프는 특정 주제에 대해 깊숙히 학습하기가 어려웠다. 그러기 때문에 평소 관심 있던 TDD 나 CI/CD 등을 학습할 방법..
패스트캠퍼스 미니프로젝트 후기 2주동안 진행한 미니 프로젝트가 끝났다. 토이 프로젝트는 백엔드 개발자들끼리만 진행했다면 이번 미니프로젝트는 프런트엔드 개발와 함께 협업하여 진행하였다. 토이 프로젝트와 마찬가지로 야놀자 앱에서 제공하는 일부 기능을 구현하는 것이었다. 이번에 내가 맡은 부분은 인증과 회원 부분이다. 로그인, 회원가입, 회원정보 조회, 수정 등 회원이 포함된 인증/인가 부분을 맡아 진행하였다. 프런트엔드와의 협업이기 때문에 초반 설계 기간 및 준비해야 되는 문서 작업이 많았다. API 명세문서 및 개발용 서버 작용 작업등을 얼마나 빠르게 세팅하는 것이 중요했다. 사실 개발서버를 세팅하는 것은 큰 문제가 되지 않았지만 기획이 완벽하지 않은 상태에서 API 명세를 만드는 것은 생각보다 쉽지 않았..
# DTO, Entity 변환은 어느 계층에서 일어나야 할까? 2023.11.16 - [Framework/Spring] - [스진초5기/Spring] DTO, Entity 변환은 어느 계층에서 일어나야할까? # DDD 설계란? 2023.11.10 - [Knowledge/개발지식] - [스진초 5기/개발지식] DDD 설계와 SQL 중심 설계
# Controller. Service, Repository 2023.10.31 - [Framework/Spring] - [스진초5기/Spring] Controller, Service, Repository # Controller 2023.11.03 - [Framework/Spring] - [스진초5기/Spring] 그래서 Controller가 뭐야? # 스프링 3계층과 DI 2023.11.05 - [Framework/Spring] - [스진초5기/Spring] 스프링 3계층과 DI의 관계 # HTTP 메서드 2023.11.07 - [Knowledge/네트워크] - [스친초5기/네트워크] HTTP 메서드 # DTO, VO, Entity 2023.11.08 - [Framework/Spring] - [스진초5..
JH_DEV77
'프로젝트&부트캠프' 카테고리의 글 목록