Softwareentwicklung

Fragen und Antworten für Fachleute, Akademiker und Studenten, die im Lebenszyklus der Systementwicklung arbeiten

3
Bewährte Methoden für die Protokollierung und Ablaufverfolgung in .NET
Ich habe viel über Nachverfolgung und Protokollierung gelesen und versucht, eine goldene Regel für Best Practices in dieser Angelegenheit zu finden, aber es gibt keine. Die Leute sagen, dass gute Programmierer gutes Tracing produzieren, aber sagen Sie es so und es muss aus Erfahrung kommen. Ich habe auch ähnliche Fragen …
53 .net  logging 

11
Holen Sie sich 100 höchste Zahlen aus einer unendlichen Liste
Einer meiner Freunde wurde diese Interviewfrage gestellt - "Es gibt einen konstanten Zahlenfluss aus einer unendlichen Liste von Zahlen, aus der Sie eine Datenstruktur erstellen müssen, um die 100 höchsten Zahlen zu einem bestimmten Zeitpunkt zurückzugeben. Angenommen, alle Zahlen sind nur ganze Zahlen." Dies ist ganz einfach. Sie müssen eine …
53 numbers  big-o  puzzles 


10
Wie teste ich die Tests?
Wir testen unseren Code, um ihn korrekter zu machen (tatsächlich ist es weniger wahrscheinlich, dass er falsch ist ). Die Tests sind jedoch auch Code - sie können auch Fehler enthalten. Und wenn Ihre Tests fehlerhaft sind, verbessern sie Ihren Code kaum. Ich kann mir drei mögliche Arten von Fehlern …

14
Funktioniert TDD wirklich für komplexe Projekte?
Ich stelle diese Frage zu Problemen, die ich bei TDD-Projekten hatte. Beim Erstellen von Komponententests sind mir die folgenden Herausforderungen aufgefallen. Generieren und Pflegen von Scheindaten Es ist schwierig und unrealistisch, große Scheindaten zu verwalten. Es ist noch schwieriger, wenn sich die Datenbankstruktur ändert. GUI testen Selbst mit MVVM und …
53 tdd 

27
Was ist die ungeheuerlichste Geldverschwendung, die Sie je gesehen haben, und was haben Sie dagegen getan? [geschlossen]
Oft sehen wir als Programmierer, wie große Organisationen riesige Geldsummen für aufgeblähte und ineffiziente Problemlösungen verschwenden. Das schmerzt mich sehr, weil ich es mag, wenn Organisationen von erstklassigen Lösungen profitieren. Meine Fähigkeiten als Programmierer sind jedoch begrenzt, wenn es darum geht, die wichtigsten Entscheidungsträger zu beeinflussen, und oft beschränkt sich …


1
Swift Protocol Naming Conventions [geschlossen]
Ich komme hauptsächlich aus dem C # -Hintergrund und bin es gewohnt, den Begriff "Schnittstelle" zu verwenden, um ein Objekt ohne Implementierung zu beschreiben, die das Verhalten definiert. In c # besteht die Konvention darin, Schnittstellennamen wie in IEnumerableusw. ein "I" voranzustellen . Natürlich hat das Konzept verschiedene Namen in …

5
Soll ich Dateinamen zum Öffnen übergeben oder Dateien öffnen?
Angenommen, ich habe eine Funktion, die Dinge mit einer Textdatei ausführt - zum Beispiel liest sie aus und entfernt das Wort 'a'. Ich könnte ihm entweder einen Dateinamen übergeben und das Öffnen / Schließen in der Funktion handhaben, oder ich könnte ihm die geöffnete Datei übergeben und erwarten, dass jeder, …

6
Verwenden Sie in Java nach Möglichkeit Lambda-Ausdrücke?
Ich habe kürzlich den Lambda-Ausdruck beherrscht, der in Java 8 eingeführt wurde. Wenn ich eine Funktionsschnittstelle verwende, verwende ich normalerweise immer einen Lambda-Ausdruck, anstatt eine Klasse zu erstellen, die die Funktionsschnittstelle implementiert. Wird dies als gute Praxis angesehen? Oder sind ihre Situationen, in denen die Verwendung eines Lambda für eine …
52 java  lambda 

4
Was ist der genaue Einfallsreichtum von Unix Pipe
Ich habe die Geschichte gehört, wie Douglas Mcllroy auf das Konzept gekommen ist und wie Ken Thompson es in einer Nacht umgesetzt hat. Soweit ich weiß, ist pipe ein Systemaufruf, der einen Teil des Speichers zwischen zwei Prozessen teilt, von denen ein Prozess schreibt und ein anderer liest. Als jemand, …

9
Ausnahme auslösen oder Code fehlschlagen lassen
Ich frage mich, ob es gegen diesen Stil Vor- und Nachteile gibt: private void LoadMaterial(string name) { if (_Materials.ContainsKey(name)) { throw new ArgumentException("The material named " + name + " has already been loaded."); } _Materials.Add( name, Resources.Load(string.Format("Materials/{0}", name)) as Material ); } Diese Methode sollte jeweils namenur einmal ausgeführt …
52 exceptions 



5
Warum sind intelligente Zeiger mit Referenzzählung so beliebt?
Wie ich sehen kann, werden intelligente Zeiger in vielen realen C ++ - Projekten häufig verwendet. Obwohl eine Art von intelligenten Zeigern offensichtlich für die Unterstützung von RAII- und Eigentumsübertragungen von Vorteil ist, gibt es auch einen Trend, standardmäßig gemeinsame Zeiger als " Speicherbereinigungsmethode " zu verwenden , damit der …

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.