공동체 공구 대여소 관리하기는 객체 지식을 작은 작동 애플리케이션에 연결하려는 학습자를 위한 Java 실습 프로젝트입니다. 공동체 공구 대여소의 대여와 반납 기능을 구현합니다. 각 실제 공구에는 고유한 식별 정보, 기록된 대여자, 허용되는 동작을 결정하는 상태가 있습니다.
이 과정은 가이드 실습 2개와 챌린지 1개로 구성됩니다. 먼저 공구 객체 내부에서 대여와 반납 규칙을 보호합니다. 다음으로 전체 기록을 UTF-8로 읽고 저장한 뒤 애플리케이션을 다시 열어 저장 결과를 사용합니다. 챌린지에서는 같은 방식을 다른 공구와 회원에게 적용합니다. 각 실습에는 독립적으로 준비된 파일이 있으며, 이어지는 것은 학습한 지식입니다.
학습 내용
과정을 마치면 다음을 수행할 수 있습니다.
- 이름이 같은 공구를 고정된 ID로 구분합니다.
- enum과 캡슐화된 객체 필드로 대여 가능, 대여 중, 정비 중 상태를 표현합니다.
- 상태를 바꾸거나 기록을 쓰기 전에 중복 대여와 잘못된 반납을 거부합니다.
- 기존 대여, 정비 중인 공구, 메모를 보존하며 모든 기록을 UTF-8로 읽고 저장합니다.
- Java 프로그램을 종료한 뒤 다시 열고, 표시된 관계를 저장된 파일과 비교합니다.
추천 대상
이 과정은 단일 프로세스로 실행되는 작은 터미널 애플리케이션을 통해 객체 규칙과 파일 영속성을 연습하려는 Java 학습자에게 적합합니다.
선수 지식: Java 클래스, 객체, 메서드, private 필드, ArrayList 같은 리스트, 기본 예외 처리, 기본적인 터미널 경로 이동을 알아야 합니다. 가이드 실습에서 상태 enum과 필요한 파일 읽기·쓰기 호출을 설명합니다.
학습 환경: LabEx는 브라우저의 WebIDE에 Java 컴파일러, 터미널, 시작용 소스 코드, 합성 대여 기록을 제공합니다. 로컬에 Java를 설치하지 않고 시작할 수 있습니다. 애플리케이션 명령, 레이블, 출력은 영어로 유지됩니다.
자주 묻는 질문
애플리케이션 전체를 처음부터 작성하나요?
아니요. 명령 루프와 파일 형식 검사 코드는 준비되어 있습니다. 대여, 반납, 저장 동작을 완성한 다음 애플리케이션을 사용해 올바르게 저장된 대여 기록을 남깁니다.
다음 실습에 이전 실습 파일이 필요한가요?
아니요. 각 실습은 독립된 환경을 사용합니다. 두 번째 가이드 실습에는 완성된 객체 규칙이 있고, 챌린지에는 별도의 공구와 회원 기록이 있습니다. 이전 머신의 파일에 의존하지 않고 학습한 지식을 재사용합니다.
챌린지에서는 무엇이 달라지나요?
공구 ID, 대여자 관계, 요청된 대여와 반납이 달라집니다. 배운 객체 및 저장 규칙을 조합하면서 다른 대여 기록, 정비 상태, 모든 메모를 보존합니다. 프로그램을 다시 연 뒤에도 저장 결과를 사용할 수 있어야 합니다.


