Ich habe in letzter Zeit viel über sicheren Code nachgedacht. Gewindesicher. Speichersicher. Nicht-explodieren-in-deinem-Gesicht-mit-einem-Segfault-Safe. Aus Gründen der Klarheit in der Frage verwenden wir jedoch das Sicherheitsmodell von Rust als unsere Definition. Die Gewährleistung der Sicherheit ist häufig ein Problem, wie groß das Netz ist, da es, wie Rusts Bedarf zeigt unsafe, …
Soweit ich gelernt habe, IRepositorysollte das enthalten CRUD. Dann erben wir dies IRepositoryin unseren anderen Interfaces like IProductund implementieren IProductkonkrete Klassen ProductRepositorymit Methoden wie GetAllProducts(), Top5Products(). Dasselbe könnten wir auch mit der n-Tier-Architektur tun. wie, Erstellen DAL Class Libraryund definieren Sie darin eine Klasse Productmit Methoden wie GetAllProducts(), Top5Products(). In …
Zuerst las ich einen Auszug aus Edsger W. Dijkstras 1974 erschienenem Artikel "Über die Rolle des wissenschaftlichen Denkens": Lassen Sie mich versuchen, Ihnen zu erklären, was nach meinem Geschmack für jedes intelligente Denken charakteristisch ist. Es ist so, dass man bereit ist, einen Aspekt seines Themas aus Gründen seiner eigenen …
Sollten Informationen zu den Berechtigungen und Rollen des Clients in JWT enthalten sein? Solche Informationen im JWT-Token zu haben, ist sehr hilfreich, da es jedes Mal, wenn ein gültiges Token eingeht, einfacher ist, die Informationen über die Berechtigung des Benutzers zu extrahieren, und es nicht erforderlich ist, die Datenbank für …
Ich bin in eine Debatte zwischen ein paar Freunden und mir geraten. Sie bevorzugen allgemeine Ausnahmen wie ClientErrorExceptionund ServerErrorExceptionmit Details als Ausnahmefelder, während ich es vorziehe, die Dinge spezifischer zu gestalten. Zum Beispiel könnte ich eine Handvoll Ausnahmen haben wie: BadRequestException AuthenticationFailureException ProductNotFoundException Jedes dieser Elemente basiert auf dem von …
Bei meinem ersten Job als Softwareentwickler verwendete mein Team Agile / Scrum, um unseren Projektworkflow zu verwalten, und es funktionierte ziemlich gut. Ich hatte einige erfahrene Mentoren, die mich auf den richtigen Weg gebracht haben - ich bin ihnen zu großem Dank verpflichtet. Ich habe dort einige Jahre gearbeitet und …
Setup: Nehmen wir an, wir haben einen Typ namens, Iteratorder einen Typparameter hat Element: interface Iterator<Element> {} Dann haben wir eine Schnittstelle, Iterabledie eine Methode hat, die eine zurückgibt Iterator. // T has an upper bound of Iterator interface Iterable<T: Iterator> { getIterator(): T } Das Problem mit Iteratorder Generizität …
Ich habe in diesem Blog-Beitrag über das For-If-Anti-Pattern gelesen und bin mir nicht ganz sicher, warum es ein Anti-Pattern ist. foreach (string filename in Directory.GetFiles(".")) { if (filename.Equals("desktop.ini", StringComparison.OrdinalIgnoreCase)) { return new StreamReader(filename); } } Frage 1: Liegt es an der return new StreamReader(filename);Innenseite for loop? oder die Tatsache, dass …
Ich kann sehen, dass die Vorteile von veränderlichen gegenüber unveränderlichen Objekten wie unveränderlichen Objekten aufgrund des gemeinsamen und beschreibbaren Status viele schwer zu behebende Probleme bei der Multithread-Programmierung beseitigen. Im Gegenteil, veränderbare Objekte helfen dabei, mit der Identität des Objekts umzugehen, anstatt jedes Mal eine neue Kopie zu erstellen, und …
Ich habe nach Mikroservice-Architekturen gesucht, um einen Überblick über alle Vor- und Nachteile, wann und warum usw. zu erhalten. Viele der Informationen, die ich lese / beobachte, stammen von ThoughtWorks (Martin Fowler, Neal Ford, et al). Die meisten Arbeiten von Martin Fowler zu diesem Thema sind einige Jahre alt, als …
Gibt es objektive, unterstützbare Argumente für das Software-Engineering für oder gegen das Ändern der Werte von By-Value-Parametern im Hauptteil einer Funktion? Ein wiederkehrender Spucke (meistens mit viel Spaß) in meinem Team ist, ob die vom Wert übergebenen Parameter geändert werden sollen oder nicht. Einige Mitglieder des Teams sind fest davon …
Angenommen, ich habe eine lange Methode wie diese: public void SomeLongMethod() { // Some task #1 ... // Some task #2 ... } Diese Methode enthält keine sich wiederholenden Teile, die in eine separate Methode oder lokale Funktion verschoben werden sollten. Es gibt viele Leute (einschließlich mir), die denken, dass …
In meiner (hauptsächlich C ++) Entwicklung habe ich mich lange an die Verwendung von Out-of-Source-Builds gehalten. Das heißt, meine Quelle sitzt in der Regel in einem /project/srcVerzeichnis und die Builds leben in einer /project/build/bin/release, /project/build/bin/debugVerzeichnisse. Ich habe dies getan, weil dadurch meine Quellverzeichnisse von Zwischendateien befreit werden, ich einen Speicherort …
Beim Parsen von Benutzereingaben wird generell empfohlen , keine Ausnahmen auszulösen und abzufangen, sondern Validierungsmethoden zu verwenden. In der .NET-BCL ist dies beispielsweise der Unterschied zwischen int.Parse(löst eine Ausnahme für ungültige Daten aus) und int.TryParse(Rückgabe falsefür ungültige Daten). Ich entwerfe meine eigenen Foo.TryParse(string s, out Foo result) Methode und ich …
Ich habe viele Kernklassen, die ISessionContext der Datenbank, ILogManager für das Protokoll und IService für die Kommunikation mit anderen Diensten benötigen. Ich möchte die Abhängigkeitsinjektion für diese Klasse verwenden, die von allen Kernklassen verwendet wird. Ich habe zwei mögliche Implementierungen. Die Kernklasse, die IAmbientContext mit allen drei Klassen akzeptiert oder …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.