Skip to content

ASHBROWNS/hashbrown-be

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

01. 과제 안내

은행 기능 구현하기

사용 기술

Java 17

기능 요구사항:

  1. 은행 계좌 관리
  • 은행은 여러 개의 계좌를 관리할 수 있습니다.
  • 각 계좌는 계좌 번호, 예금주 이름, 잔액으로 초기화됩니다.
  1. 계좌 생성
  • 사용자는 은행에서 계좌를 개설할 수 있습니다.
  • 계좌는 일반 계좌와 특별 계좌로 구분되며, 특별 계좌는 추가적으로 수수료를 설정할 수 있습니다.
  • 계좌 번호는 고유해야 하며 중복된 계좌 번호는 생성할 수 없습니다.
  1. 예금 및 출금
  • 사용자는 특정 계좌에 예금 및 출금을 할 수 있습니다.
  • 예금 시, 금액이 음수인 경우 예외를 발생시키고, 양수인 경우만 예금이 가능합니다.
  • 출금 시, 잔액이 부족하면 출금할 수 없습니다. 또한, 출금 시 수수료(예: 1%)가 적용됩니다.
  • 출금 시, 예금주 본인이 아니면 출금할 수 없습니다.
  1. 계좌 잔액 조회
  • 사용자는 자신이 개설한 계좌의 잔액을 조회할 수 있습니다.
  • 계좌의 잔액을 조회하려면 예금주 본인만 조회할 수 있으며, 다른 사람은 조회할 수 없습니다.
  1. 은행 계좌 목록 조회
  • 은행은 등록된 모든 계좌의 목록을 조회할 수 있어야 하며, 계좌 번호, 예금주 이름, 잔액을 포함하여 출력해야 합니다.

제한 사항:

  1. 계좌 소유
  • 하나의 계좌는 한 명의 예금주만 소유할 수 있습니다.
  1. 계좌 번호 고유성
  • 계좌 번호는 고유해야 하며, 중복된 계좌 번호를 가질 수 없습니다. 계좌 생성 시 중복된 번호가 있을 경우 예외를 발생시킵니다.
  1. 계좌 접근 제한
  • 예금주 본인만 해당 계좌에 대해 출금, 예금, 잔액 조회가 가능합니다.
  • 예금주가 아닌 사용자가 계좌에 접근하거나 잔액을 조회하거나 출금하려고 하면 접근 불가 메시지가 출력됩니다.

02. 제출 방법

  1. 이 레포지토리를 포크합니다.
  2. 본인의 이름으로 브랜치를 만듭니다. (예시: yeseol)
  3. 메인 함수의 주석을 읽으며 코드를 작성해 주세요. (필요시 클래스를 분리해도 괜찮습니다.)
  4. 3번 과정을 진행하며 커밋해주세요. (밑 커밋 규칙 참고)
  5. 모두 완료한 후 Pull Request를 보내주세요.

03 커밋 메시지 규칙

형식

Type: Title

Body

상세 규칙

  • 헤더는 type을 지정해 주고, title을 명령문으로 작성한다.
  • 헤더는 너무 길지 않도록 한다.
  • Body에는 해당 커밋에서 무엇을 왜 하였는지 구체적으로 서술한다.
  • Footer는 선택사항이다.
  • 원활한 소통을 위해 한글로 작성한다.

Header Type

type description
feat 새로운 기능
fix 버그 수정
refactor 코드 리팩토링
test 테스트 코드 작성
set 프로젝트 세팅
chore 자잘한 수정
delete 삭제

명령어 예시

- ~~ 구체적인 설명
"

About

해쉬브라운 백엔드 과제입니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages