Thorsten Suckow-Homberg Software Design and Architecture Wiki

website·Indexed 32 days ago

https://thorsten.suckow-homberg.de

A technical knowledge base covering software architecture, design patterns, and computer science fundamentals. Topics include UML (Unified Modeling Language), SOLID principles, Domain-Driven Design (DDD), Layered Architecture, and specific design patterns such as Singleton, Facade, and Factory Method.

Tokens
50.4K
Snippets
146
Records
330
Agent score
63%

What's inside Thorsten Suckow-Homberg Wiki

  1. Overview of rest-api-email middleware

    rest-api-email is a formalized middleware API designed for IMAP services, defined using OpenAPI and JSON:API specifications.
    // Stack: OpenAPI, JSON:API, Stoplight
  2. Overview of helios game engine

    helios is a 2D/3D game engine and rendering framework built with modern C++ standards. It implements the Entity Component System (ECS) architectural pattern and includes custom shader management, resource handling, and scene graph traversal.
    // Stack: C++, OpenGL, GLSL, CMake
  3. Overview of SOLID software design principles

    SOLID is a mnemonic acronym representing five core principles of software development and design introduced by Robert C. Martin. These principles aim to make software designs more understandable, flexible, and maintainable. The five principles are:

    • SRP: Single Responsibility Principle
    • OCP: Open-Closed Principle
    • LSP: Liskov Substitution Principle
    • ISP: Interface-Segregation Principle
    • DIP: Dependency-Inversion Principle

    Detailed guidance on these principles can be found in the book 'Agile Software Development - Principles, Patterns and Practices' by Robert C. Martin (2003).

  4. Overview of lumen-app-email and php-lib-conjoon

    lumen-app-email and php-lib-conjoon provide an API service for IMAP connectivity, built using the Laravel/Lumen framework and integrating with Horde.
    // Stack: PHP, Laravel/Lumen, PHPUnit, JSON:API, Horde
  5. Overview of the Payroll System requirements

    The Payroll System is a batch processing system designed to manage employee data and payments. The core requirements include:

    • Maintaining a database of Employees and their associated data.
    • Ensuring employees are paid the correct amount.
    • Ensuring payments are made on time (requiring high system stability and availability).
    • Supporting employee-specified payment methods.
    • Handling various deductions from employee pay.
  6. Overview of conjoon email client

    conjoon is a full-featured JavaScript email client frontend. Its architecture includes a system and frontend design with support for theme plugins, a formalized backend API communication layer, and various plugin interfaces and integration points.
    // Stack: JavaScript, Ext JS, Node.js, Siesta
  7. Overview of the coon.js Service Locator

    The coon.core.ServiceLocator provides a central registry for mapping abstract service definitions to concrete class implementations. This allows different modules of an application to remain decoupled from one another while still sharing common functionality by querying the locator for a concrete instance of a required abstract service.