개발

·개발
datasource 정보를 AWS RDS에서 localhost로 바꾸는 과정에서분명 jdbc:mysql://127.0.0.1:3306/DB이름 으로 맞게 썼는데 !java.sql.SQLSyntaxErrorException: Unknown database [DB이름] 오류가 계속 났다. 해결 방법은 아주아주 간단하게도 url 마지막에?createDatabaseIfNotExist=true 를 아래와 같이 붙여준 것이다. jdbc:mysql://127.0.0.1:3306/DB이름 ?createDatabaseIfNotExist=true 그리고 application.yml 파일에logging: level: com.zaxxer.hikari.HikariConfig: DEBUG com.zaxxer.hika..
·개발
빌더 패턴이란?빌더 패턴 은 복잡한 객체의 생성 과정과 표현 방법을 분리하여 다양한 구성의 인스턴스를 만드는 생성 패턴입니다.여기서 객체의 표현 방법이라는 것은 생성하려는 객체의 필드를 어떤 순서로, 어떤 값으로 설정하는지. 예를 들어 이름만 설정할 수도 있고, 이름과 나이만 설정할 수도 있는 것처럼, 다양한 조합으로 객체를 만들 수 있는 방법을 말합니다. 생성자로 객체를 만들 때, 필요한 파라미터가 많아지면 매번 생성자 오버로딩을 통해 새로운 생성자를 만들어야 하는 번거로움이 있습니다. 그리고 필요한 생성자의 매개변수가 많아질 경우 문제가 발생합니다.이렇게 되면 매개변수의 순서를 혼동하기 쉽고, 일부 매개변수에 대해 null 값 또는 기본값을 할당해야 할 때, 그 의미를 파악하기 어렵게 만들 수 있습니..
·개발
이번 글에서는 RESTful API에 대해 알아보겠습니다. RESTful API는 웹에서 자원을 효율적으로 다루기 위한 규칙으로, URI와 HTTP 메소드를 사용해 리소스에 접근하고 처리하는 방법을 제공합니다. 이 글에서는 RESTful API의 개념과 작동 원리를 살펴보고, HTTP 상태 코드와 캐싱 같은 핵심 요소들을 함께 이해해보겠습니다.   API란?API는 두 소프트웨어가 서로 커뮤니케이션하는 방식에 대한 규칙입니다. 마치 메뉴판처럼, 한쪽이 요청을 보내면 다른 쪽이 어떻게 응답할지 정해진 약속입니다. 예를 들어, 키보드를 누르면 컴퓨터가 그에 맞는 반응을 하는 것처럼, API는 두 시스템이 어떻게 상호작용할지 정의하는 인터페이스입니다.  RESTful API란?API가 "A가 이렇게 요청하면,..
·개발
워터폴 방법론 그림대로, 요구사항 분석 → 설계 → 디자인 → 구현 → 테스트 → 유지보수가 순서대로 이루어지는 전통적인 개발 방법.한 단계가 완료되기 위해서는 각 단계마다 정확한 결과물이 나와야 했으므로, 그 결과물을 효율적으로 만드는 방법이 발전했다.예를 들어, 요구사항 명세서 / 소프트웨어 아키텍처 / 유즈케이스 / DataFlow 다이어그램 등이다.하나씩 간단하게 살펴보자.  요구사항 명세서요구사항이란 프로젝트를 수행하기 위해 필요한 조건이나 기능이다.명세란 어떤 것을 구체적으로 설명하거나 규정하는 것이다. 따라서 요구사항 명세서란, 프로젝트의 요구사항들을 구체적으로 설명하거나 규정하는 것을 문서화한 것이다. 요구사항 명세서는 "응답시간은 3초 이내여야한다"와 같은 비기능적 요구사항과, "회원가입..
·개발
3월 ~ 6월 초 기간동안  spring 입문 / 핵심원리, spring mvc, jpa, jpa 활용편 1/2 등등을 수강하고드디어 개발한 나의 작고 귀여운 프로젝트🥹 원래는 화면을 반으로 나눴을 때 왼쪽 부분은 포모도로 타이머, 오른쪽 부분은 투두리스트가 보이도록개발하려고 했으나, 프론트엔드를 책임질 나의 chatgpt4o 님께서 말귀를 잘 못알아먹으시는 바람에,,,투두 기능에 집중하여 개발했다. 사용한 기술 스택백엔드: Spring boot, JPADB: MySQL프론트엔드: javascript, html, css RestAPI 방식으로 개발했다.  개발한 기능Todo 생성 - 이름, 카테고리, 마감기한, 진행상태 지정 가능진행상태는 "완료", "진행중", "대기" 가 있음 (enum 클래스로 개..
·개발
도서 추천 & 독서 일지 프로젝트 계획서 개요도서 추천 & 독서 일지 프로젝트는 사용자의 도서 취향에 맞는 책을 추천하고, 독서 계획 수립 및 독서 습관 형성에 대한 조언을 제공하는 웹 애플리케이션이다.  핵심 기능도서 추천 기능사회과학, 자연과학, 인문과학, 문학 분야 중 원하는 분야의 도서를 추천해준다.국립중앙도서관 API를 사용하여 도서 정보를 가져온다.독서 계획 수립 및 습관 형성 조언챗지피티를 통해 사용자가 독서 계획을 수립할 수 있도록 돕는다.독서 습관 형성을 위한 맞춤형 조언을 제공한다.현재 읽고 있는 책 등록사용자가 현재 읽고 있는 책을 등록할 수 있는 기능을 제공한다.등록된 책의 진행 상태(챕터나 페이지 수)를 업데이트할 수 있다.읽은 책 목록 확인사용자가 지금까지 읽은 책 목록을 확인..
·개발
먼저 응집력(cohesion)과 책임 분리(separation of concerns)에 대해 알아보자. 응집력 (Cohesion) 응집력은 클래스들이 얼마나 관련된 기능들을 수행하는지에 대한 정도이다. 동일한 책임을 가지는 메소드들이 한 클래스나 패키지에 모여 있을 때 응집력이 높다고 한다. 책임 분리 (Separation of Concerns)시스템의 관심사를 분리하는 원칙이다. 이를 통해 코드의 재사용성을 높이고 유지보수를 용이하게 한다.* 관심사의 분리, 단일 책임의 원칙 Repository vs Service 패키지Repository 패키지주로 데이터 접근을 담당한다. 여기에는 주로 데이터베이스 CRUD 연산을 수행하는 메소드들이 있다. Service 패키지비즈니스 로직을 처리한다. 여기에는 여러..
HipPopoTamUs
'개발' 카테고리의 글 목록