Dienste kommunizieren entweder mit synchronen Protokollen wie HTTP/REST oder asynchronen Protokollen wie AMQP. Dienste können unabhängig voneinander entwickelt und bereitgestellt werden. Jeder Dienst verfügt über eine eigene Datenbank, um von anderen Diensten entkoppelt zu werden. Die Datenkonsistenz zwischen den Diensten wird mithilfe des Saga-Musters beibehalten, um eine lose Kopplung zu gewährleisten, hat jeder Dienst eine eigene Datenbank. Die Aufrechterhaltung der Datenkonsistenz zwischen Diensten ist eine Herausforderung, da zwei Phasen-Commit/verteilte Transaktionen für viele Anwendungen keine Option sind. Eine Anwendung muss stattdessen das Saga-Muster verwenden. Ein Dienst veröffentlicht ein Ereignis, wenn sich seine Daten ändern. Andere Dienste nutzen dieses Ereignis und aktualisieren ihre Daten. Es gibt mehrere Möglichkeiten, Daten zuverlässig zu aktualisieren und Ereignisse zu veröffentlichen, einschließlich Event Sourcing und Transaction Log Tailing. Ich liebe, wie tief diese App wird und es war wirklich vor Ort für Dinge, die ich nicht einmal laut zu denen, die mir am nächsten. ABER das eine Negative ist, dass ich glaube, dass die App eine Option haben sollte, um zu aktualisieren, wie lange Sie in einer Beziehung gewesen sind und wie engagiert (z. B. seit 3 Jahren verheiratet).

Ich habe das Gefühl, dass es sich hauptsächlich an einzelne Menschen richtet oder Beziehungen behandelt, als wären sie sehr neu. Verheiratet und sehr engagiert zu sein, ist es lächerlich zu lesen „er tut Dinge, die dich ärgern und dich fragen lassen, ob du in der Beziehung bleiben willst oder nicht. Jetzt ist es an der Zeit, sich damit zu befassen.” Ich habe das Gefühl, dass, wenn sie in einer wirklich ernsten Beziehung diese Dinge nicht in Frage stellen (zumindest bin ich es nicht), also mag ich nicht wirklich, wie oft es meine Beziehung neu und steinig erscheinen lässt, wenn es nicht einmal nahe ist. Eine andere Sache, ich würde gerne ein bisschen mehr Positivität im Allgemeinen sehen. Die App liebt es, die schlechten Dinge von der Vergangenheit bis zur Gegenwart zu markieren. Ich habe eine Menge toller Dinge, die in meinem Leben vor sich gehen, und ich würde es lieben, einige dieser Positivitäten in meinem Muster zusammen mit dem Schlechten hervorzuheben. Ansonsten ist es eine tolle App. Auch für meine Freunde war es schon.

Eine kurze Zusammenfassung der Muster in Patterns of Enterprise Application Architecture (P of EAA). Die jährlichen Sitzungsberichte der Pattern Languages of Programming Conference [12] enthalten viele Beispiele für domänenspezifische Muster. Die Dokumentation für ein Entwurfsmuster beschreibt den Kontext, in dem das Muster verwendet wird, die Kräfte innerhalb des Kontexts, den das Muster zu lösen sucht, und die vorgeschlagene Lösung. [24] Es gibt kein einheitliches Standardformat für die Dokumentation von Entwurfsmustern. Vielmehr wurden eine Vielzahl von verschiedenen Formaten von verschiedenen Musterautoren verwendet. Laut Martin Fowler sind bestimmte Musterformen jedoch bekannter geworden als andere und werden daher zu gemeinsamen Ausgangspunkten für neue Muster-Schreibbemühungen. [25] Ein Beispiel für ein häufig verwendetes Dokumentationsformat ist das von Erich Gamma, Richard Helm, Ralph Johnson und John Vlissides in ihrem Buch Design Patterns. Es enthält die folgenden Abschnitte: Es wurde beobachtet, dass Designmuster nur ein Zeichen dafür sein können, dass einige Features in einer bestimmten Programmiersprache fehlen (z. B.

Java oder C++). Peter Norvig zeigt, dass 16 der 23 Muster im Design Patterns Buch (das sich in erster Linie auf C++ konzentriert) in Lisp oder Dylan vereinfacht oder eliminiert werden (über direkte Sprachunterstützung). [26] Entsprechende Beobachtungen wurden von Hannemann und Kiczales gemacht, die mehrere der 23 Entwurfsmuster mit einer aspektorientierten Programmiersprache (AspectJ) implementierten und zeigten, dass Abhängigkeiten auf Codeebene aus den Implementierungen von 17 der 23 Entwurfsmuster entfernt wurden und dass eine aspektorientierte Programmierung die Implementierung von Designmustern vereinfachen könnte. [Zitat erforderlich] Siehe auch Paul Grahams Essay „Revenge of the Nerds”. [27] Als ich das Muster zum ersten Mal heruntergeladen hatte, dachte ich mir, wie verrückt es war, dass sich einige der angegebenen Dinge so punktgenau anfühlten.