Skip to content

Commit 2ba199b

Browse files
authored
[#70] Updated README.md for fibonacci
1 parent 0a69a79 commit 2ba199b

1 file changed

Lines changed: 8 additions & 8 deletions

File tree

atom-samples/fibonacci/README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@ This sample is a primitive implementation of calculating N-th number of Fibonacc
44

55
## Workflow
66

7-
1. Each solution starts with defining a proper contract. [IntegerValue](atom-samples/fibonacci/src/main/java/oo/atom/samples/fibonacci/IntegerValue.java) is a *public contract* for some integral value. The role of the public contracts is discussed [here]()
7+
1. Each solution starts with defining a proper contract. [IntegerValue](src/main/java/oo/atom/samples/fibonacci/IntegerValue.java) is a *public contract*, representing some integral value. The role of the public contracts is discussed [here]()
88

9-
2. [AssertIntegerValueIsMalformed](atom-samples/fibonacci/src/main/java/oo/atom/samples/fibonacci/AssertIntegerValueIsMalformed.java) and [AssertIntegerValueBoxesCertainInteger](atom-samples/fibonacci/src/main/java/oo/atom/samples/fibonacci/AssertIntegerValueBoxesCertainInteger.java) - these are assertions, used to test the `IntegerValue` implementors. The concept of reusable assertions will be covered [here]()
9+
2. [AssertIntegerValueIsMalformed](src/main/java/oo/atom/samples/fibonacci/AssertIntegerValueIsMalformed.java) and [AssertIntegerValueBoxesCertainInteger](src/main/java/oo/atom/samples/fibonacci/AssertIntegerValueBoxesCertainInteger.java) - these are assertions, used to test the `IntegerValue` implementors. The concept of reusable assertions will be covered [here]()
1010

1111
3. We defined the contract and the assertions to test the contract implementors. Now it is time to define the Atoms itself:
12-
- [IvConstant](atom-samples/fibonacci/src/main/java/oo/atom/samples/fibonacci/IvConstant.java) - the simplest Atom-implementor of `IntegerValue` contract. Just a constant integer.
13-
- [IvUndefined](atom-samples/fibonacci/src/main/java/oo/atom/samples/fibonacci/IvUndefined.java) - an Atom, which represents undefined integral value. It is useful when there is a nedd to represent results of calculations, inapplicable for integral values, like division by zero.
14-
- [IvSum](atom-samples/fibonacci/src/main/java/oo/atom/samples/fibonacci/IvSum.java) - an Atom, representing a sum of two integrals. It demonstrates the usage of [object composition]() - a primary instrument for assembling more complex Atom objects from simpler ones.
15-
- [IvInferred](atom-samples/fibonacci/src/main/java/oo/atom/samples/fibonacci/IvInference.java) - it is a special kind of Atom - [Inferred Atom](). It is used for non-trivial cases of object composition.
16-
- [TvFibonacci](atom-samples/fibonacci/src/main/java/oo/atom/samples/fibonacci/TvFibonacci.java) - at last, the implementation of an Atom, representing the Fibonacci number at some certain position. Conceptually, is it an [alias] from `TvInferred`. Aliases are used to gracefully outline and reuse the object composition chains.
12+
- [IvConstant](src/main/java/oo/atom/samples/fibonacci/IvConstant.java) - the simplest Atom-implementor of `IntegerValue` contract. Just a constant integer.
13+
- [IvUndefined](src/main/java/oo/atom/samples/fibonacci/IvUndefined.java) - an Atom, which represents undefined integral value. It is useful when there is a need to represent results of calculations, inapplicable for integral values, like division by zero. In case of Fibonacci numbers, `IvUndefined` is used to represent unexisting values at negative position.
14+
- [IvSum](src/main/java/oo/atom/samples/fibonacci/IvSum.java) - an Atom, representing a sum of two integrals. It demonstrates the usage of [object composition]() - a primary instrument for assembling more complex Atom objects from simpler ones.
15+
- [IvInferred](src/main/java/oo/atom/samples/fibonacci/IvInference.java) - it is a special kind of Atom - [Inferred Atom](). It is used for non-trivial cases of object composition.
16+
- [TvFibonacci](src/main/java/oo/atom/samples/fibonacci/TvFibonacci.java) - at last, the implementation of an Atom, representing the Fibonacci number at some certain position. Conceptually, it is an [alias]() from `TvInferred`. Aliases are used to gracefully outline and reuse common object composition chains.
1717

18-
4. We defined the nesessary functionality. Now, it's time to test it. It is always possible to test all Atoms using classical approach, populated by mainstream frameworks like JUnit or TestNG. However, OO-atom provides an alternate way, which allows to achive ultimate test coverage. Details are [here](). The actual tests for the Atoms is located [here](atom-samples/fibonacci/src/main/java/oo/atom/samples/fibonacci/).
18+
4. We defined the nesessary functionality. Now, it's time to test it. It is always possible to test all Atoms using classical approach, populated by mainstream frameworks like JUnit or TestNG. However, OO-atom provides an alternate way, which allows to achieve *ultimate* test coverage. Details are [here](). The actual tests for the Atoms are located [here](src/main/java/oo/atom/samples/fibonacci/).
1919

2020
TODO to be continued

0 commit comments

Comments
 (0)