Invariant Pattern implementations

// Binding protocol
export interface IBinder<TES extends IEventSource,
                         TS extends ILogicAtomSpecification> {

    BindSyncConfirmation(
                eventSource: TES,
                atomSpecification: TS,
                getParametersUI: () => CustomObject,
                nonValidAction: (eo: ErrorObject) => void,
                postActionUI: (resultObject: CustomObject) => void,
                confirmation?:
                (messageObject: CustomObject) => ConfirmationResult
    ): void;
    ...
}
              

Clean Architecture Implementation

The Invariant Pattern ensures a consistent and clean architecture across all platforms, adhering to key software design principles:

  • Dependency Injection – Promotes modularity and testability.
  • Interface Segregation – Encourages well-defined, purpose-specific interfaces.
  • Single Responsibility Principle – Keeps components focused and maintainable.
  • Open-Closed Principle – Enables easy extension without modifying existing code.

Languages and Platforms

Java CRUD app on GitLab

JavaFx, Java Swing

Investigate source code of CRUD application written on JavaFx and Java Swing UI platform with common used logic libraries.

Coming soon

Java CRUD app on GitLab

Java Android

Investigate source code of CRUD application written on Java Android platform.

Coming soon

C# CRUD app on GitLab

C# WPF, WinForms and UWP

Investigate source code of CRUD application written on C# with common used logic libraries.

Coming soon

C# Unity app on GitLab

C# Unity

Investigate source code of game sample application written on C#.

Coming soon

Web CRUD app on GitLab

TypeScript, CSS, HTML

Investigate source code of CRUD application written on vanilla web using TypeScript, CSS and HTML.

Coming soon

Swift macOS (Coming soon)

Desktop Swift App

Investigate source code of CRUD application written on Swift.

Coming soon