윤선미
@ysm04054067
수강평 작성수
-
평균평점
-
블로그
전체 3#카테고리
- 백엔드
#태그
- 백엔드

2025. 03. 23.
0
인프런 워밍업 클럽 3기 :: 백엔드 프로젝트 3주차 발자국
강의입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기https://inf.run/WM5mW실습본격적인 어드민 개발을 진행하기 위한 패키지를 만들어 클래스, Exception, DTO, Interceptor, CRUD, 뷰 개발을 진행하였습니다.Exception과 Advice오류의 최상위 클래스인 Throwable 에서도 애플리케이션에서 대응 할 수 있는 오류를 크게 3개로 정의해 놓고 컨트롤러 어드바이스 내에서 이 오류에 대한 처리를 해놓았습니다.DTOApiResponse 내 static 메소드로 응답 객체를 생성하였고 각각의 필요한 DTO를 생성했습니다.Interceptor메뉴를 동적으로 생성하기 위해서 인터셉터를 설정하였고 /admin 이하 모든 경로를 통해 접근이 가능하도록 세팅했습니다.CRUD조회는 데이터 테이블을 위한 구조로 만들었으며 수정, 삭제 기능은 API 기능을 활용하여 동작할 수 있도록 각 페이지를 만들었습니다. VIEW부트스트랩 템플릿을 적용한 뷰를 개발하였고 사용자 페이지와 동일하게 fragment 분리 작업을 하고 각 페이지 레이아웃을 잡는 작업을 진행하였습니다. 회고어드민 구조를 익히고 그 안에서의 exception 처리, API 를 통하여 수정, 삭제 기능을 처리하는 방법 등 이전과는 다른 방식의 처리 방법을 더 익혀 나갈 수 있었던 3주차였습니다.하지만 큰 흐름만 잡고 코드를 짜기에 바빴던 한 주여서 디테일 한 부분에 대한 이해는 다른 시간을 내어 익혀 나가는 시간이 필요할 것 같다는 생각이 들었습니다!3주차에 해당하는 수강 목록을 다 듣진 못했지만 4주차엔 마무리하는 것이 목표입니다 ㅠ_ㅠ
백엔드
・
백엔드

2025. 03. 10.
0
인프런 워밍업 클럽 3기 :: 백엔드 프로젝트 2주차 발자국
강의입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기https://inf.run/WM5mW실습뼈대를 갖추고 본격적인 실습을 진행했는데 포트폴리오 패키지 내 domain, presentation 패키지 2개로 나누어 개발을 진행하였습니다.Entity에 의해 생성된 DB에 접근하는 메서드들을 사용하기 위한 인터페이스인 Repository를 만들어 JPA를 통한 쿼리를 만들어 냈으며 테스트 코드를 작성하여 쿼리 호출의 흐름을 파악 할 수 있었던 2주차 강의였습니다.JPA에서 일어날 수 있는 N+1 이슈를 다뤄본 경험과 함께 포트폴리오 개발에 앞서,다양한 패키지를 만들고 그 안에 controller, sevice 테스트 코드를 통한 테스트를 진행 후 Thymeleaf를 통해 부트스트랩 템플릿 수정까지 진행하여 포트폴리오를 만들 수 있도록 개발 작업을 수행하고 있습니다.미션 REST API 설계하기조회 REST API 만들기 '프랜차이즈 커피 매장 관리 시스템' 이란 주제를 가지고 간단하게 CRUD를 구현하였습니다.일대 다 구조의 E-R 다이어그램을 설계하여 총 테이블은 4개로 구성하였고, 매장관리 / 직원관리 / 메뉴관리의 대분류를 만들고 그 안에서 기능 API를 설계하는 미션을 수행했습니다.REST API 설계 원칙은 검색을 통해 찾아 규칙에 맞게 설계하도록 했으며 각 대분류 내 CRUD를 만들었습니다. 조회 REST API 의 경우 매장 조회, 직원 조회, 메뉴 조회에 대한 조회 REST API를 설계 했으며 GET메소드로 조회를 할 수 있습니다.더해 API 상태 코드를 추가하여 200 코드를 받았을 경우, 요청 성공이란 메시지를 확인 할 수 있습니다.회고직장 다니면서 강의 및 실습, 발자국까지 남기는 것이 버거운 느낌이 더 들었던 2주차 강의었습니다.결국 주말에 몰아서 하게 되는 상황으로 이해하지 못한 강의 내용이 있어 이 부분은 전체적인 커리큘럼이 끝난 후 재수강을 통해 부족했던 부분을 채워 나가려고 합니다!미션에 대한 설계부터 신중하게 고려해야 할 부분들을 놓치고 간 것들이 많아 계속 수정을 진행하고 있습니다.이번주 미션 제출 전 수정 사항이 좀 더 줄어들 수 있도록 꼼꼼히 살펴 봐야 할 것 같습니다 🙂
백엔드

2025. 03. 05.
0
인프런 워밍업 클럽 3기 :: 백엔드 프로젝트 1주차 발자국
25년 신년 계획을 세우면서 협업에서 사용 중인 기술 스택의 기초를 좀 더 다지고 싶어 인프런 워밍업 클럽 3기에 참여하게 되었습니다.강의입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기https://inf.run/WM5mW이론 웹 서비스 구성 요소클라이언트, 서버, 데이터베이스우리가 사용할 Kotlin이나 Java는 Spring 프레임워크 사용Spring FrameworkMVC패턴레이어드 아키텍처스프링 Bean과 의존성 주입생성자수정자필드HTTP와 REST APIHTTP 요청 메서드 - GET, POST, PUT, PATCH, DELETEHTTP 상태 코드 - 200 (OK), 300 (Multiple Choices), 400 (Bad Request), 500 (Internal Server Error)REST API 핵심 - URL 이용한 자원 표현, HTTP 메서드를 이용한 행위 표현, HATEOAS 준수데이터베이스?관계형 데이터베이스 : 행과 열로 이루어진 표의 형태로 저장 (Oracle, MySQL, PostgreSQL)비관계형 데이터베이스 : MongoDB, RedisJPA?자바 ORM 표준 기술로 객체지향적 관점에서 접근 가능하며 의존성이 줄어듭니다.하지만, 충분한 학습이 필요하며 모든 쿼리 기능을 구현하기에는 한계가 있습니다.트랜잭션? 여러 개의 데이터베이스 작업을 하나로 묶어주는 논리적인 단위영속성 컨텍스트? JPA에서 엔티티를 관리하는 임시 메모리, 버퍼와 같은 개념 실습 / 미션[실습]초기 세팅부터 프로젝트 생성을 어떻게 하는 지에 대해 알고 포트폴리오라는 프로젝트의 뼈대를 만들어갈 수 있었습니다.Github 내 해당 프로젝트의 레퍼지토리를 생성하고 인텔리제이에서 Github와 연동하여 개발 소스를 commit, push하는 작업의 기초를 배웠습니다.프로젝트 개발에 앞서 기본적인 세팅이 필요로 했는데 Domain 패키지 내 constant, entity, repository 패키지를 만들어 각각 역할에 맞게 분리하여 기본 작성을 하였으며 각각의 엔티티 개발을 진행하여 본격 개발을 앞선 작업을 하는 1주차 실습이었습니다. [미션]Github 레퍼지토리 생성1:N 테이블 설계포트폴리오 프로젝트를 위한 레퍼지토리를 생성하는 간단한 미션이라 어렵지 않게 마무리 했습니다.일대 다 구조로 관계형 데이터베이스를 만들어야 하는데 기본적으로 많은 예제로 쓰이며 좋은 예제이기도 한 수강신청을 생각해보긴 했습니다.아직 설계가 끝나지 않아 이는 좀 더 고민해보고 괜찮은 구조의 설계를 해보고자 합니다. 회고일이 바빠 1주차부터 헐레벌떡 따라가기 바빴지만 주말을 활용하여 최대한 열심히 임해보고자 합니다!목표는 끝까지 마무리하여 전반적인 흐름을 다시 잡기 위함이니 더 열심히 노력해야겠습니다.1주차에서는 기본 개념 및 프로젝트 생성 및 초기 세팅 관련 내용을 알아볼 수 있는 시간이었는데 평소 개인 프로젝트 외엔 이를 할 일이 없어 다시금 초기 작업을 어떻게 하는 지를 한 번 더 잡고 갈 수 있는 계기가 되었습니다.2주차엔 조금씩 깊숙한 내용으로 들어가기 위해 부지런히 강의 듣고 실습을 하도록 해야겠습니다.
백엔드




