Sprint 6 Challenge
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 25/100
調査の方向性
まずモデルとmainメソッドのエントリーポイントを定義し、その後、要件で説明されているアクセスクラス、サービス層のインターフェース、インメモリデータベースを計画します。サービス層をユニットテストし、貸し出し、返却、検索、利用可能性、延滞料金の受け入れに関する受け入れ基準が満たされていることを確認します。
索引モデルが issue の本文から書いたものです。
説明
Sprint Challenge
The code you write for this challenge is mandatory homework and should be completed and sent in a PR for review before class.
Requirements
Overview
Create a library system for managing book borrowing and returns.
Acceptance Criteria
Ability to:
- Save new books
- Validate against duplicates
- New book saved to database (in memory or text file)
- Borrow a book
- Validate if it's available to borrow
- Start with a fixed borrow period (maybe 1 month) and optionally refactor later to be variable
- Update database record to set that the book is now borrowed and hence not available for someone else to borrow
- Should include a borrow / return date
- List the books currently borrowed by a user
- Actively borrowed books only, not ones that have been returned
- Return a book
- If it's being returned late report that the borrower should be fined £1 per day late
- Update database record to set that the book has been returned and hence can now be borrowed again
- Search for a book by title or author to see if it's available to borrow or not
- Present sensible responses for the cases:
- Book exists and can be borrowed
- Book exists but is already borrowed by someone else
- Book does not exist
Code Quality
- Tiered architecture used with an in memory database (or you can write to a text file, your choice!) and console used as the presentation layer
- Interfaces used in service layer and DI used throughout
- Code clearly documented and unit tested!
Developer Guidance (deliberately limited!)
- Think about the models you'll want first, and what data you'll need to store in order to meet the above criteria
- Think about how to save the data in a format (using appropriate data structures) that you'll be able to read and write to → the internet can help here!
- Create an access class responsible for reading and writing to the 'database'
- Create a suitable service layer using interfaces that you call from a main method to perform the library operations detailed in the acceptance criteria
- Make sure the service layer is unit tested
Submission & Review
Fork the coursework repo to your own GitHub account.
Make regular small commits with clear messages.
When you are ready, open a Pull Request to the CYF repo. Make sure you fill in the PR template provided.
A volunteer will review your submission and send you feedback.
- 主要言語
- 言語のデータがありません
- スター
- 1
- フォーク
- 11
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
CodeYourFuture/Module-Java のほかの issue
-
🎯 Topic Programming Fundamentals 🏕 Priority Mandatory 🐇 Size Small 📅 Sprint 1 Core
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
-
🎯 Topic Programming Fundamentals 🏕 Priority Mandatory 🐇 Size Small 📅 Sprint 1 Core
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
-
🎯 Topic Programming Fundamentals 🏕 Priority Mandatory 🐂 Size Medium 📅 Sprint 7 Core
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
-
🎯 Topic Programming Fundamentals 🏕 Priority Mandatory 📅 Sprint 7 🦑 Size Large Core
難易度 5/5 1週間以上 初心者へのやさしさ 45/100
-
🎯 Topic Programming Fundamentals 🏕 Priority Mandatory 🐂 Size Medium 📅 Sprint 5 Core
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
CodeYourFuture/Module-Java の issue をすべて見る
似ている issue
-
fix(errors): EHOSTUNREACH from a happy-eyeballs connect is reported as a resolver error (STAMP-80) オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 90/100
snapshot-labs/stamp#666 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
GauravKarakoti/SecureFlow#1070 · コメント 1 件 ·
-
triage/confirmed
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
agentscope-ai/agentscope#2775 ·
-
area/sessions comp/cron comp/gateway P2 sweeper:risk-message-delivery sweeper:risk-session-state type/bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
NousResearch/hermes-agent#118863 ·
-
needs-triage🔍
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100