Schlagwort: Software-Design

  • SW-Architektur ist schwierig

    SW-Architektur ist schwierig

    Ein Studium-Freund von mir arbeitet beim Tiefbauamt. Bei unserem letzten Treffen, zeigte er mir sein neustes Projekt. Als ich mir als Software-Ingenieur die Baupläne ansah, war ich ziemlich erstaunt. Sie hatten detaillierte, konkrete Pläne für die nächsten 3 Jahre. Die Bauingenieure unterteilten es in 3 Phasen, mit genauen Messungen und Straßenstrukturen für jede Phase. Sie…

  • Was ist Internet of Things?

    Was ist Internet of Things?

    Das Internet der Dinge, kurz IoT (Internet of Things), ist eine der aufregendsten Entwicklungen in der modernen Technologie. Doch was genau verbirgt sich hinter diesem Begriff und warum ist er so wichtig? In diesem Blog-Beitrag erklären wir, was IoT ist, wie es funktioniert und welche Anwendungen in der realen Welt es gibt. Am Ende zeigen…

  • S.O.L.I.D.: Prinzipien für bessere Softwareentwicklung

    Die Prinzipien von S.O.L.I.D. sind zu einer grundlegenden Grundlage für effiziente und wartbare Softwareentwicklung geworden. Die Beachtung dieser Prinzipien kann die Qualität von Softwareprojekten erheblich steigern und hilft Entwicklern, klare und zukunftssichere Codes zu schreiben. In diesem Artikel werden wir die fünf Prinzipien von S.O.L.I.D. detailliert untersuchen und zeigen, wie sie die Grundlage für gutes…

  • Warum gibt Pythons round (6.5) 6 zurück und bei round(7.5) 8?

    Warum gibt Pythons round (6.5) 6 zurück und bei round(7.5) 8?

    Wenn Sie einige Zeit mit pythons round gearbeitet haben, denken Sie vielleicht, dass Sie wissen, wie Rundungen funktionieren – bis Sie auf dieses rätselhafte Verhalten stoßen: Sie fragen sich vielleicht: Sollten nicht beide Zahlen aufgerundet werden? Oder sollten sie sich nicht zumindest genauso verhalten, entweder auf- oder abrunden? Ist das ein Fehler? Nein, es ist…

  • PHP Microservices ohne Frameworks

    PHP Microservices ohne Frameworks

    Beim Erstellen von PHP Microservices ohne Frameworks wird eine Anwendung in kleinere, unabhängige Dienste aufgeteilt, die über ein Netzwerk kommunizieren. Hier ist eine allgemeine Anleitung, wie Sie PHP Microservices ohne Frameworks angehen können: 1. Überblick über die Architektur 2. Projektstruktur 3. HTTP-Kommunikation mit PHP Verwenden Sie die integrierten Funktionen von PHP (oder cURL für erweiterte…

  • DDD verursacht Komplexität

    Beim Software-Engineering geht es darum, Systeme zu entwickeln, die durch die Zusammenarbeit ihrer verschiedenen Komponenten klar definierte Ziele erreichen. Diese Zusammenarbeit impliziert Wechselwirkungen, um Grenzen zu überschreiten, die das System unterteilen. Ein gutes Design dieser Grenzen macht Interaktionen effizient und stellt sicher, dass sie die angegebenen Geschäftsanforderungen erfüllen. Dies wollen wir hier im Beitrag DDD…

  • CORS einfach erklärt

    CORS einfach erklärt

    Haben Sie das oben schon einmal gesehen? Wahrscheinlich… und wahrscheinlich eine ganze Menge… Es gibt Millionen von Artikeln, in denen erklärt wird, wie der obige Fehler behoben werden kann, aber was genau ist dieses „Cross-Origin Resource Sharing“ (CORS)-Ding und warum gibt es es überhaupt? Warum? Beginnen wir damit, zunächst die Frage nach dem Warum durch…

  • Task vs. ValueTask in C#

    Task vs. ValueTask in C#

    In der modernen Anwendungsentwicklung ist Reaktionsfähigkeit der Schlüssel, und der Aufbau reaktionsfähiger Anwendungen hängt stark von der asynchronen Programmierung ab, insbesondere wenn es um E/A-gebundene Aufgaben geht. Ganz gleich, ob Sie Datenbankabfragen verarbeiten, auf Dateien zugreifen oder API-Aufrufe tätigen, die asynchrone Programmierung sorgt dafür, dass Ihre Anwendung schnell und benutzerfreundlich bleibt. Wenn Sie mit async/await…

  • Okta Bcrypt-Vorfall: Was wir lernen können

    Okta Bcrypt-Vorfall: Was wir lernen können

    Hallo! Wenn Sie Tech-News verfolgen, haben Sie vielleicht schon von dem Okta Bcrypt-Vorfall (Quelle) gehört, der am 1. November gemeldet wurde. Die TLDR des Vorfalls lautete wie folgt: Der Bcrypt-Algorithmus wurde verwendet, um den Cache-Schlüssel zu generieren, bei dem wir eine kombinierte Zeichenfolge aus Benutzer-ID + Benutzername + Passwort hashen. Unter bestimmten Bedingungen, die unten aufgeführt sind,…

  • LLM mit 2 Milliarden Parametern: Erstellen mit Python

    Schnelle Notiz (der Beitrag wurde aus dem englischen übersetzt): Wir werden ein LLM mit 2 Milliarden Parametern von Grund auf mit dem The Pile-Datensatz trainieren. Als Ergebnis erhalten wir ein LLM, das perfekte Grammatik und Zeichensetzung in den Antworten ausgibt, wobei kürzere Kontexte sinnvoll sind, aber nicht die gesamte Antwort. Zuvor habe ich einen Artikel…

  • Clean Code: Der Mythos in der Frontend-Entwicklung

    Jeder Entwickler hat das Wort „Clean Code“ schon einmal gehört. Es ist der heilige Gral der Softwareentwicklung, oder? Schreiben Sie sauberen Code, und alles andere wird sich von selbst ergeben. Zumindest wird uns das gesagt. Aber in der chaotischen Welt der Frontend-Entwicklung kann die Besessenheit von sauberem Code manchmal mehr schaden als nützen. Lassen Sie uns untersuchen, warum dies nicht immer…

  • Value Objects in PHP können Sie vor schlechten Daten schützen

    Value Objects in PHP können Sie vor schlechten Daten schützen

    Eines der Dinge, auf die wir bei der Arbeit mit objektorientierter Programmierung (OOP) achten müssen, ist, dass die Daten, mit denen wir arbeiten, jederzeit gültig sind. Dies kann erreicht werden, indem wir alle Validierungen hinzufügen, die wir im Konstruktor der Objekte benötigen, die wir bearbeiten werden. Die Prämisse ist einfach: Wenn die Daten gültig sind, erhalten Sie das…

  • API-Schlüssel vs. Token

    API-Schlüssel vs. Token

    Auth ist schon schwer genug. Stellen Sie sicher, dass Sie den Unterschied zwischen zwei primären Authentifizierungsmodi verstehen: API-Schlüssel und Token. Sie sagen, dass die beiden schwierigsten Probleme in der Informatik die Invalidierung von Caches und die Benennung von Dingen sind. Ehrlich gesagt, ist das nicht falsch. Die sind super schwer. Was die Benennung schwierig macht,…

  • Else: Raus aus dem Code

    Else: Raus aus dem Code

    Eine Änderung, die einen großen Unterschied in der Lesbarkeit und Wartbarkeit von Code machen kann, ist die Vermeidung des Schlüsselworts Else. Dies mag für Junior-Entwickler ungewöhnlich erscheinen, aber durch das Entfernen von wird der Code einfacher zu lesen und zu verwalten. Nun stellt sich die Frage: Warum else vermeiden? Die Verwendung führt oft zu unnötigen Verschachtelungen,…

  • 10 Python-Funktionen, die verwirrend erscheinen

    10 Python-Funktionen, die verwirrend erscheinen

    Wenn Sie Python schon eine Weile lernen, sind Sie wahrscheinlich auf Funktionen gestoßen, bei denen Sie sich am Kopf kratzen. Sie wirken einschüchternd, wirken unnötig komplex oder fühlen sich einfach so an, als gehörten sie in einen geheimen „fortgeschrittenen Python„-Club. Die Wahrheit? Diese Funktionen sind brillante Tools, die Ihren Code sauberer, effizienter und geradezu elegant machen…