Series of Articles

This project and documentation will span numerous articles to ensure every part of the project receives the necessary time and attention. This provides good structure and makes the information easier to consume.

Each article builds and depends on the preceding articles, and each article will further develop the code from preceding articles. Preceding articles give necessary background and context to the current article.

Following is the complete list of articles of this series published thus far:

Project Code: Commentary

The in-code commentary is extensive and the Variable & Function Names are descriptive. In order not to duplicate content/commentary, additional commentary about the code is only given if there is in fact something to add.

Please comment on the article if something is unclear or needs to be added.

Project Code: Contracts

All the SOLID Poker Contracts are located in the SOLIDPoker.Contract project.

Below is the latest version of IPokerHandAssessor. Care is taken to ensure the functions are cohesive, fulfilling the Single Responsibility of assessing Poker Hands; this is in accordance with the first SOLID Principle, the Single Responsibility Principle.

This function fulfils the DRY Principle as it is used 2X by the ComparePokerHands function. Writing this code as a separate function also goes a long way in making the ComparePokerHands code easier to Read & Maintain.

See Something - Say Something

The goal is to have clear, error free content and your help in this regard is much appreciated. Be sure to comment if you see an error or potential improvement. All feedback is welcome.

Summary

SOLID Poker - Part 2 has covered a decent amount of code and the project is off to a good start! A Poker Hand Generator is coming in the next article of this series and will allow for elaborate testing, and will eliminate the boilerplate poker hand creation code.

No business challenge is beyond understanding; no solution is out of reach. Perfect engineering at every level is priority. Marco-Hans has architected and developed large scale solutions for local and international blue chip companies in industries ranging from banking through retail and manufacturing to distribution.

Thanks! The current article I am working on has turned out to be way more work than expected but I expect it to be ready in a few days.

“Education is the kindling of a flame, not the filling of a vessel.” — Socrates
“If everyone is thinking alike, then somebody isn't thinking.” — George S. Patton
“The true sign of intelligence is not knowledge but imagination.” — Albert Einstein
“Common sense is not so common.” — Voltaire

Glad you like it! Hopefully, the next article will be up by tomorrow, 28 March.

“Education is the kindling of a flame, not the filling of a vessel.” — Socrates
“If everyone is thinking alike, then somebody isn't thinking.” — George S. Patton
“The true sign of intelligence is not knowledge but imagination.” — Albert Einstein
“Common sense is not so common.” — Voltaire

Good point, SOLID is great for Unit Testing. I am a great fan of Unit Testing; so much so, that I want to dedicate a complete article of this series to Unit Testing. That is why I have been holding back thus far with the Unit Testing.

“Education is the kindling of a flame, not the filling of a vessel.” — Socrates
“If everyone is thinking alike, then somebody isn't thinking.” — George S. Patton
“The true sign of intelligence is not knowledge but imagination.” — Albert Einstein
“Common sense is not so common.” — Voltaire