Als «c#» getaggte Fragen

C # ist eine multiparadigmatisierte, verwaltete, durch Müll gesammelte objektorientierte Programmiersprache, die von Microsoft parallel zur .NET-Plattform erstellt wurde





4
Ist die Gewährleistung der Unveränderlichkeit eine Rechtfertigung für die Freilegung eines Feldes anstelle einer Immobilie?
Die allgemeine Anleitung für C # besteht darin, eine Eigenschaft immer über einem öffentlichen Feld zu verwenden. Dies ist sinnvoll. Wenn Sie ein Feld verfügbar machen, werden viele Implementierungsdetails verfügbar gemacht. Mit einer Eigenschaft kapseln Sie dieses Detail so, dass es keinen Code verbraucht und Implementierungsänderungen von Schnittstellenänderungen entkoppelt werden. …

3
Abstrakte Eigenschaft in der Basisklasse, um den Programmierer zu zwingen, sie zu definieren
Ich codiere mit einem Statusmuster für ein eingebettetes Gerät. Ich habe eine Basis- / abstrakte Klasse namens State und dann implementiert jede diskrete (konkrete) Zustandsklasse die abstrakte Zustandsklasse. In der Staatsklasse habe ich mehrere abstrakte Methoden. Wenn ich die abstrakten Methoden nicht in der diskreten (konkreten) Klasse implementiere, gibt Visual …


2
Sollte der Absender eines Ereignisses immer ein generisches Objekt sein?
Beim Programmieren von Ereignissen in C # wird empfohlen , einen Delegaten in folgender Form zu erstellen: delegate XEventHandler(object sender, XEventArgs e); Meine Frage bezieht sich auf das erste Argument des Delegierten object sender. Muss es immer ein Generikum sein object? Ein Absender vom Typ führt objectimmer zu einem ähnlichen …
10 c#  event 


6
Warum Variablen in der Nähe des Verwendungsortes deklarieren?
Ich habe Leute sagen hören , dass Variablen so nah wie möglich an ihrer Verwendung deklariert werden sollten. Ich verstehe das nicht Zum Beispiel würde diese Richtlinie vorschlagen, dass ich dies tun sollte: foreach (var item in veryLongList) { int whereShouldIBeDeclared = item.Id; //... } Dies bedeutet jedoch sicherlich int, …
10 c#  .net  variables 

3
Ist es in Ordnung, ein Entity Framework DataContext-Objekt zu erstellen und es in jeder meiner CRUD-Methoden in einem using-Block zu entsorgen?
Ich erstelle eine wpf-Anwendung, die die folgenden Funktionen implementiert: Nehmen Sie Benutzereingaben und lesen Sie Daten aus Datenbanken Führen Sie einige Berechnungen durch Präsentieren Sie es dem Benutzer in mehreren Arten von Ansichten und schreiben Sie Änderungen zurück in db Vorgeschlagene Architektur: Datenbank -> Entity Framework -> Repository -> Geschäftslogik …
10 c#  design  architecture  wpf 

2
Große O-Äquivalenz für LINQ select
Ich versuche festzustellen, ob sich die Big O-Äquivalenz einer verschachtelten Schleife ändert, wenn ich stattdessen eine LINQ-Auswahl verwende. public void myFunc(List<Foo> fooList, List<Bar> barList) { foreach(Foo foo in fooList) { foreach(Bar bar in barList) { if(foo.PropA == bar.PropA && bar.PropZ.HasValue) foo.PropC = foo.PropB * bar.PropZ; } } } Ich glaube, …
10 c#  big-o 

3
Muss ich immer noch einen festen Punkt verwenden, um sicherzustellen, dass Computer für mathematische Operationen nicht mehr das gleiche Ergebnis erzielen?
Mir wurde gesagt, dass die meisten modernen Computer dem gleichen Gleitkomma-Standard folgen. Bedeutet dies, dass sie alle die gleiche Gleitkomma-Antwort für eine bestimmte mathematische Operation erhalten, wenn die Eingaben gleich sind? Ich frage, weil ich nach einem RTS-Spiel in einem Netzwerk forsche und Hunderte von Einheitenpositionen synchronisieren, klingt nach einem …

3
Warum wird von der Verwendung von Zuweisungsoperatoren oder Schleifen bei der funktionalen Programmierung abgeraten?
Wenn meine Funktion die folgenden zwei Anforderungen erfüllt, kann die Funktion Sum , die die Summe der Elemente in einer Liste zurückgibt, in der das Element für eine bestimmte Bedingung als wahr ausgewertet wird, als reine Funktion bezeichnet werden, nicht wahr ? 1) Für einen gegebenen Satz von i / …

3
Für-wenn Antimuster
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 …

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.