Category
Software Engineering
Software-Architektur scheitert selten an den grossen Entscheidungen. Niemand beschliesst bewusst: Heute verteile ich sprachabhängige Regeln über die gesamte Codebasis. So passiert es nicht. Es beginnt mit sieben Wörtern. Ich wollte eigentlich nur…
Field NoteSystem EngineeringFR
Ich wollte eigentlich nur kurz prüfen, wo auf meiner Festplatte der Platz hingeht. WinDirStat ist dafür seit Jahren mein erster Griff: ein Scan, ein Treemap, und die grössten Brocken springen dir ins…
Ein selbst entwickeltes WordPress-Theme ist Software. Es enthält PHP, JavaScript, CSS, Templates, Assets und Konfiguration. Änderungen an einer Datei können Auswirkungen auf andere Teile des Systems haben. Fehler können die komplette Website…
Software lässt sich erstaunlich leicht demonstrieren. Man startet das Programm. Die Verbindung funktioniert. Die API antwortet. Alle Daten sind vorhanden. Jede Operation ist erfolgreich. Am Ende erscheint: Damit ist bewiesen, dass der…
Software wird selten auf einen Schlag unwartbar. Meist passiert es schleichend. Ein kleiner Fehler taucht auf. Man behebt ihn. Danach entsteht ein Sonderfall. Auch der wird behoben. Dann ein weiterer. Dann noch…
Bei Terminalanwendungen beginnt die Arbeit oft an der falschen Stelle. Man hat eine Idee für ein Tool, baut die eigentliche Funktion und möchte dann schnell etwas Feedback im Terminal anzeigen. Also kommt…
Das Interface existiert. Es ist injiziert. Der Reviewer sieht ein I und geht weiter. Das kompiliert. Es lässt sich mocken. In der Architekturfolie steht Persistence hinter Interface. Der Caller schreibt trotzdem: Er…
Die Function ist dünn. Der Reviewer nickt. Dann öffnet man die Klasse, an die sie delegiert. Das sieht nach Schicht aus. Der Einstieg kennt weder Tabelle noch Graph. Genau das habe ich…
Warum eine Abstraktionsschicht um eine konkrete API noch keine lose Kopplung ist — und warum Schichten entscheiden, was ein Runtime-Upgrade wirklich kostet. Es gibt eine besonders gefährliche Form von Architektur, weil sie…
Wenn der Export langsam ist, liegt der Verdacht auf der Datei. Oft liegt die Zeit davor — und der Library-Tausch ändert die Kurve nicht. Es gibt einen reflexhaften Satz, sobald ein Excel-Export…
Ob ein Join linear oder quadratisch wird, steht oft nicht in der Schleife. Es steht im Typ der Parameter. Man kann Entwickler bitten, keine lineare Suche in einer Abbildung zu schreiben. Das…
Ein Pfad ist schnell. Der andere sieht aus wie derselbe Code. Genau dort bleibt die alte Komplexität liegen. Es gibt eine bestimmte Art von Optimierung, die sich im Review besonders gut anfühlt.…
Field NoteC#FR
Choosing the right dependency injection (DI) lifetime is essential for the performance, stability, and maintainability of .NET applications. This guide breaks down the three main DI lifetimes—Transient, Scoped, and Singleton—to help you…
Field NoteSoftware EngineeringFR
Introduction In the ever-evolving world of software architecture, the debate between monolithic and microservices architectures continues to spark discussions. While microservices have gained immense popularity for their scalability and flexibility, they also…
Field NoteSoftware EngineeringFR
Is Technical Debt a Silent Killer of Productivity and Growth? Every software project has technical debt—those shortcuts we take to meet deadlines, save resources, or push out quick fixes. At first, they…
Field NoteLearningFR
In object-oriented programming (OOP), two key approaches for code reuse and structuring are inheritance and composition. Understanding when to use each can significantly affect the scalability, maintainability, and flexibility of your applications.…
Field NoteSoftware EngineeringFR
When developing software, applying established design principles helps ensure your code is clean, maintainable, and scalable. In this article, we explore some of the most important principles, including SOLID, DRY, and WET,…
Field NoteSoftware EngineeringFR
When designing software systems, the concept of cohesion plays a crucial role in determining the quality and maintainability of your code. Cohesion refers to how closely related the responsibilities of a single…
Field NoteSoftware EngineeringFR
In software development, the concepts of loose and tight coupling play a critical role in determining the flexibility, maintainability, and scalability of your code. Coupling refers to how interdependent different parts of…
Field NoteC#FR
Polymorphism is a fundamental concept in object-oriented programming (OOP) that allows objects to be treated as instances of their parent class rather than their actual derived class. This makes your code more…
Field NoteC#FR
Delegates in C# are a cornerstone of functional programming, enabling developers to pass methods as arguments, define callbacks, and create flexible, reusable code. Among the most commonly used delegates are Action, Func,…
Field NoteC#FR
In C#, the variety of collection interfaces and classes can sometimes be overwhelming, especially for developers new to the language. Understanding the differences between IEnumerable, ICollection, IList, and List is crucial for…
Field NoteMethodsFR
In software and product development, ensuring consistent quality and continuous improvement is a major challenge. Statistical Process Control (SPC) provides a data-driven approach to monitor and improve processes, making it an invaluable…
Field NoteMethodsFR
In the world of software engineering, identifying and mitigating risks early in the development process is critical for delivering reliable and robust applications. One proven method for systematically analyzing potential failures is…
Field NoteC#FR
Static methods in C# can be a powerful tool for developers when used appropriately. They are ideal for operations that don’t require instance-specific data and can improve both performance and code readability.…
Field NoteSoftware EngineeringFR
https://www.dofactory.com/net/design-patterns Design patterns are reusable solutions to common software design problems that you encounter in application development. They represent best practices refined through years of experience and are essential for building maintainable…
Field NoteSoftware EngineeringFR
S.O.L.I.D is an acronym for the first five object-oriented design(OOD) principles by Robert C. Martin. https://scotch.io/bar-talk/s-o-l-i-d-the-first-five-principles-of-object-oriented-design
No articles in this year.