Als «code-smell» getaggte Fragen

Die Bestimmung, was ein "Code-Geruch" ist und was nicht, ist subjektiv und variiert je nach Sprache, Entwickler und Entwicklungsmethode. Bevor Sie fragen, ob eine Technik ein "Code-Geruch" ist, fragen Sie sich, welche Konsequenzen dies für Ihr spezifisches Projekt hätte, wenn Sie die Technik verwenden würden. Es ist zu subjektiv, einfach zu fragen, ob etwas ein "Code-Geruch" ist oder nicht.

8
Gibt es eine bessere Möglichkeit, C # -Wörterbücher zu verwenden als TryGetValue?
Ich finde mich oft dabei, Fragen online nachzuschlagen, und viele Lösungen enthalten Wörterbücher. Wenn ich jedoch versuche, sie zu implementieren, steckt dieser schreckliche Gestank in meinem Code. Zum Beispiel jedes Mal, wenn ich einen Wert verwenden möchte: int x; if (dict.TryGetValue("key", out x)) { DoSomethingWith(x); } Das sind 4 Zeilen …

9
Riechen zu viele Behauptungen nach Code?
Ich habe mich wirklich in Unit-Tests und TDD verliebt - ich bin testinfiziert. Unit-Tests werden jedoch normalerweise für öffentliche Methoden verwendet. Manchmal muss ich allerdings einige Annahmen-Behauptungen auch in privaten Methoden testen, da einige von ihnen "gefährlich" sind und Refactoring nicht weiterhelfen kann. (Ich weiß, dass das Testen von Frameworks …


4
Warum werden Datenklassen als Codegeruch betrachtet?
Dieser Artikel behauptet, dass eine Datenklasse ein "Codegeruch" ist. Der Grund: Es ist normal, wenn eine neu erstellte Klasse nur wenige öffentliche Felder enthält (und möglicherweise sogar eine Handvoll Getter / Setter). Die wahre Stärke von Objekten besteht jedoch darin, dass sie Verhaltenstypen oder Operationen für ihre Daten enthalten können. …


5
Ist es in Ordnung, wenn eine Funktion einen Parameter ändert?
Wir haben eine Datenschicht, die Linq To SQL umschließt. In dieser Datenebene haben wir diese Methode (vereinfacht) int InsertReport(Report report) { db.Reports.InsertOnSubmit(report); db.SubmitChanges(); return report.ID; } Bei Änderungen wird die Berichts-ID mit dem Wert in der Datenbank aktualisiert, den wir dann zurückgeben. Von der aufrufenden Seite sieht es so aus …

9
Woran erkenne ich, ob die Software stark gekoppelt ist?
Ich kenne den Begriff "stark gekoppelt", bin aber neugierig, ob es Anzeichen (Codegerüche) gibt, die darauf hinweisen, dass der Code stark gekoppelt ist. Ich arbeite derzeit mit Java EE, dies kann jedoch für jede Sprache gelten. Bearbeiten: Bei Interesse klingt dieser Artikel hilfreich: Im Streben nach Codequalität: Vorsicht vor dem …

3
Das Verspotten führt die Handhabung im Produktionscode ein
Angenommen, eine IReader-Schnittstelle, eine Implementierung der IReader-Schnittstelle ReaderImplementation und eine Klasse ReaderConsumer, die Daten vom Reader verwendet und verarbeitet. public interface IReader { object Read() } Implementierung public class ReaderImplementation { ... public object Read() { ... } } Verbraucher: public class ReaderConsumer() { public string location // constructor public …


3
Ich verliere den Überblick über den Ablauf meiner PHP-Webanwendung. Es wird immer schwieriger, damit zu arbeiten
Ich programmiere seit einigen Jahren und bin mit der Zeit mit C # und JavaScript sehr vertraut geworden. Ich habe einige größere C # - und JavaScript-Projekte, in denen ich problemlos navigieren kann. Ich habe kürzlich ein PHP & AngularJS-Projekt für die Arbeit ohne vorherige Erfahrung mit PHP gestartet. Der …



7
Was war der schlimmste Code, den Sie repariert haben, auf den Sie stolz sind? [geschlossen]
Aus heutiger Sicht passt diese Frage nicht zu unserem Q & A-Format. Wir erwarten, dass die Antworten durch Fakten, Referenzen oder Fachwissen gestützt werden, aber diese Frage wird wahrscheinlich Debatten, Argumente, Abstimmungen oder erweiterte Diskussionen hervorrufen. Wenn Sie der Meinung sind, dass diese Frage verbessert und möglicherweise erneut geöffnet werden …


5
Wie viel Redundanz / Robustheit sollte komplexe Software implementieren?
Der Fokus dieser Frage: Manche Software führt "zusätzliche Arbeit" aus, um die Wahrscheinlichkeit eines "schließlich erfolgreichen / zufriedenstellenden" Ergebnisses trotz eines oder mehrerer interner Fehler in der Software zu erhöhen, die eine längere Ausführungszeit erfordern, wenn diese Fehler auftreten. All dies geschieht ohne Wissen des Benutzers, wenn das Ergebnis erfolgreich …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.