MCPcopy
hub / github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition

github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition @main sqlite

repository ↗ · DeepWiki ↗
236 symbols 463 edges 89 files 224 documented · 95%
README

FizzBuzzEnterpriseEdition

Build status codecov.io

Enterprise software marks a special high-grade class of software that makes careful use of relevant software architecture design principles to build particularly customizable and extensible solutions to real problems. This project is an example of how the popular FizzBuzz game might be built were it subject to the high quality standards of enterprise software.

FizzBuzz

FizzBuzz is a game that has gained in popularity as a programming assignment to weed out non-programmers during job interviews. The object of the assignment is less about solving it correctly according to the below rules and more about showing the programmer understands basic, necessary tools such as if-/else-statements and loops. The rules of FizzBuzz are as follows:

For numbers 1 through 100,

  • if the number is divisible by 3 print Fizz;
  • if the number is divisible by 5 print Buzz;
  • if the number is divisible by 3 and 5 (15) print FizzBuzz;
  • else, print the number.

Contributing

Although this project is intended as satire, we take openness and inclusivity very seriously. To that end we have adopted the following code of conduct.

Contributor Code of Conduct

Extension points exported contracts — how you extend this code

IsEvenlyDivisibleStrategyFactory (Interface)
Factory for IsEvenlyDivisibleStrategy [6 implementers]
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/factories/IsEvenlyDivisibleStrategyFactory.java
StringStringReturnerFactory (Interface)
Factory for StringStringReturner [6 implementers]
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/factories/StringStringReturnerFactory.java
StringPrinterFactory (Interface)
Factory for StringPrinter [6 implementers]
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/factories/StringPrinterFactory.java
IsEvenlyDivisibleStrategy (Interface)
Strategy for IsEvenlyDivisible [6 implementers]
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/strategies/IsEvenlyDivisibleStrategy.java
StringPrinter (Interface)
Printer for String [7 implementers]
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/printers/StringPrinter.java

Core symbols most depended-on inside this repo

numberIsMultipleOfAnotherNumber
called by 6
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/math/arithmetics/NumberIsMultipleOfAnotherNumberVerifier.java
output
called by 4
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/strategies/adapters/FizzBuzzOutputStrategyToFizzBuzzExceptionSafeOutputStrategyAdapter.java
createOutputStrategy
called by 4
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/factories/FizzBuzzOutputStrategyFactory.java
createIsEvenlyDivisibleStrategy
called by 3
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/factories/IsEvenlyDivisibleStrategyFactory.java
createStringStringReturner
called by 3
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/factories/StringStringReturnerFactory.java
createStringPrinter
called by 3
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/factories/StringPrinterFactory.java
getReturnString
called by 3
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/stringreturners/StringStringReturner.java
areTwoIntegersEqual
called by 2
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/strategies/comparators/integercomparator/IntegerForEqualityComparator.java

Shape

Method 145
Class 64
Interface 26
Enum 1

Languages

Java100%

Modules by API surface

src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/ApplicationContextHolder.java7 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/loop/LoopContext.java6 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/factories/LoopComponentFactory.java6 symbols
src/test/java/FizzBuzzTest.java5 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/printers/IntegerIntegerPrinter.java5 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/loop/LoopContextStateManipulation.java4 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/visitors/FizzBuzzOutputGenerationContext.java4 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/printers/NewLineStringPrinter.java4 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/printers/FizzStringPrinter.java4 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/printers/BuzzStringPrinter.java4 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/visitors/OutputGenerationContext.java3 symbols
src/main/java/com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/interfaces/printers/DataPrinter.java3 symbols

Dependencies from manifests, versioned

junit:junit4.8.2 · 1×
org.springframework:spring-aop3.2.13.RELEASE · 1×
org.springframework:spring-beans3.2.13.RELEASE · 1×
org.springframework:spring-context3.2.13.RELEASE · 1×
org.springframework:spring-core3.2.13.RELEASE · 1×
org.springframework:spring-expression3.2.13.RELEASE · 1×

For agents

$ claude mcp add FizzBuzzEnterpriseEdition \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact