Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Branches - Brianna K #35

Open
wants to merge 20 commits into
base: master
Choose a base branch
from
Open

Branches - Brianna K #35

wants to merge 20 commits into from

Conversation

brikemp
Copy link

@brikemp brikemp commented Sep 9, 2019

Hotel

Congratulations! You're submitting your assignment!

Comprehension Questions

Question Answer
What was a design challenge that you encountered on this project? Initially I was using a few self classes to access certain data, but due to not being able to access variables I needed, I had to re-design the process
What was a design decision you made that changed over time over the project? Initially I set this project up using class variables, but due to issues with tests not running as expected, I had to change tactics.
What was a concept you gained clarity on, or a learning that you'd like to share? Composition/instantiating classes from within a class - before I found this to be tricky, but now after practicing it a few times, it's much clearer.
What is an example of a nominal test that you wrote for this assignment? What makes it a nominal case? A nominal test that I wrote was confirming if there aren't any rooms available for a date range that an argument error is raised
What is an example of an edge case test that you wrote for this assignment? What makes it an edge case? An edge case that I wrote was testing invalid dates are not able to be used for reservations, ex: 14/08/2019
How do you feel you did in writing pseudocode first, then writing the tests and then the code? I feel this is something I could get better at and need to make a more conscious effort to do. A lot of times, I'll read a prompt and immediately go in to trying to write the code, without thinking through the entire process, which leads to more work in the end because I often need to backtrack.

@jmaddox19
Copy link

jmaddox19 commented Sep 11, 2019

Hotel

What We're Looking For

Test Inspection

Workflow yes (X) / yes but no test / no
Wave 1
List rooms
Reserve a room for a given date range X
Reserve a room (edge case) X
List reservations for a given date X
Calculate reservation price X
Invalid date range produces an error yes!
Test coverage Good!
Wave 2
View available rooms for a given date range X
Reserving a room that is not available produces an error X
Test coverage Good!
Wave 3
Create a block of rooms X
Check if a block has rooms X
Reserve a room from a block X
Test coverage Amazing testing for this! So thorough!

Code Review

Baseline Feedback
Used git regularly Yep!
Answer comprehension questions X
Design
Each class is responsible for a single piece of the program X
Classes are loosely coupled X
Fundamentals
Names variables, classes and modules appropriately X
Understanding of variable scope - local vs instance X
Can create complex logical structures utilizing variables X
Appropriately uses methods to break down tasks into smaller simpler tasks Somewhat. Hotel methods are larger than we'd like.
Understands the differences between class and instance methods ? No class methods used, but that's totally fine.
Appropriately uses iterators and Enumerable methods X
Appropriately writes and utilizes classes X
Appropriately utilizes modules as a namespace No module, not a big deal.
Wrap Up
There is a refactors.txt file X
The file provides a roadmap to future changes X

Overall Feedback

Great work overall! You've built your first project with minimal starting code. This represents an incredible milestone in your journey, and you should be proud of yourself! Yay!

I am particularly impressed by the way that you tested Wave 3 so dang thoroughly!

I do see some room for improvement around logically breaking down a problem into smaller pieces and making those pieces into methods (ie. make_reservation). But glad to see you noticed that too!

end


def make_reservation(start_date:, end_date:, hold_block:false, block_id:nil)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's enough going on here that it'd be cleaner to break it up into smaller methods that this method calls.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh! I see you called that out in your refactors list! Awesome!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants