Skip to content

mpeters21575/Acme.Sorter

Repository files navigation

Author: Mark Peters, Senior Software Engineer

Abstract: The purpose of this project is to demonstrate how you can use multiple sorters, using design patterns (factory and strategy), while honoring the SOLID principles. My goal was to make this project 'as-readable' as it can be, and in order to accomplish this, I used fluent coding.

Implementation:
architecture

Sorters:

  • Bubble sorter: Sorts the text file using the bubble sort algortihm
  • Alphabetic sorter: Only sorts the file ascending
  • Length sorter: Sorts the text file from the smallest sentence to the largest

Framework: netcore 3.1
Dependencies: Simple Injector
Unit testing: XUnit

Tests: I tried to aim for 100% code coverage, but for this demo project I don't test the front-end. Only the buisiness logic, and extention methods are tested. Also pay attention, that I choose to use a textfile that contains a Russian poem to prove that the output is compliant with any culture that is configured on the target system. (UTF-8)

About

Demonstrates different sort algorithms using SOLID and design patterns

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages