forked from christianhujer/expensereport
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
1466071
commit 4fe9593
Showing
1 changed file
with
8 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,15 @@ | ||
# ExpenseReport | ||
The ExpenseReport legacy code refactoring example in various languages. | ||
The ExpenseReport legacy code refactoring kata in various languages. | ||
|
||
This is an example of a piece of legacy code with lots of code smells. | ||
The goal is to support the following new feature as best as you can: | ||
* Add Lunch with an expense limit of 2000. | ||
|
||
## Process | ||
1. Read the code to understand what it does and how it works. | ||
2. Read the code and check for design smells. | ||
3. Analyze what you would have to change to implement the new requirement without refactoring the code. | ||
4. Write a characterization test. | ||
5. Refactor the code. | ||
6. Test-drive the new feature. | ||
1. 📚 Read the code to understand what it does and how it works. | ||
2. 🦨 Read the code and check for design smells. | ||
3. 🧑🔬 Analyze what you would have to change to implement the new requirement without refactoring the code. | ||
4. 🧪 Write a characterization test. Take note of all design smells that you missed that made your life writing a test miserable. | ||
5. 🔧 Refactor the code. | ||
6. 🔧 Refactor the test. | ||
7. 👼 Test-drive the new feature. |