Bitte, jemand kann mich auf ein gutes Tutorial hinweisen, das mir hilft, meinen Code schnell und leicht zu machen.
Ich bin interessiert zu wissen, welche Methode schneller ist und wann eine Methode anstelle von anderen Methoden verwendet werden soll
Und wie bewertet man, ob ein Code gut oder schlecht ist?
Meine Programmiersprache ist C #.
Hallo alle,
Danke für deine Antworten, sie sind sehr hilfreich.
Ich bearbeite meine Frage, um besonders spezifisch zu sein, dass Optimierung unbegrenzt ist.
Ich möchte wissen, was die beste Methode in jeder Bedingung ist.
Zum Beispiel ist die Verwendung von StringBuilder besser als String, wenn ich Zeilen an einen String anfüge ...
Ich brauche nur diese einfachen Dinge.
Beachten Sie die Unteroptimierung.
Auch wenn eine bestimmte Funktion schneller ist als eine andere, wird dies nicht unbedingt einen Unterschied in der Laufzeit Ihrer Anwendung machen. Sie müssen verstehen, welche Teile Ihres Codes tatsächlich ein potenzielles Problem darstellen, und sich auf die Optimierung dieser Teile konzentrieren. Beachten Sie die O-Notation Ihrer Funktionen und wie oft sie aufgerufen werden. Um Teile zu identifizieren, die optimiert werden müssen, kann ein Profiler eine gute Hilfe sein.
Diese Frage weist einige interessante Punkte auf Warum sollten Sie nicht optimieren, bis es tatsächlich notwendig ist?
Sicher. Folgendes machen wir:
Beginnen Sie die Reise, indem Sie entscheiden, wann die Reise zu Ende ist. Setzen Sie sinnvolle, kundenorientierte, realistische Leistungsziele. (Für Geschwindigkeit und Ressourcenverbrauch.)
Testen Sie Ihren Code sorgfältig, um festzustellen, ob Sie Ihre Leistungsziele erreichen.
Wenn Sie Ihre Leistungsziele erreichen, sorgen Sie sich nicht um die Leistung. Die Dinge sind in Ordnung. Sorgen Sie sich für Fehler, Robustheit oder Funktionen.
Wenn Sie Ihre Leistungsziele nicht erreichen, führen Sie einen Profiler aus. Verwenden Sie es, um den Code zu identifizieren, der am schlimmsten ist. Es macht nur Sinn, den schlechtesten Code zu reparieren. etwas, das bereits unglaublich schnell und leicht, schneller und leichter ist, löst nicht dein Leistungsproblem.
Schreiben Sie den langsamen Code neu, damit er leistungsfähiger ist. (Dies ist das harte Bit.) Stellen Sie sicher, dass Sie es testen, um sicherzustellen, dass es wirklich besser ist.
Wenn Sie trotz Ihrer besten Bemühungen nicht gut genug sein können, bewerten Sie entweder Ihre Ziele neu oder brechen Sie das Projekt ab und verbringen Sie Ihre Zeit mit etwas, bei dem Sie erfolgreich sein können.
Wiederholen Sie dies, bis Sie etwas versenden.
Grundsätzlich zuerst implementieren, dann testen, wo zu optimieren.
Wenn Sie Visual Studio Profissional verwenden, können Sie Analyse - & gt; Starten Sie den Performance-Assistenten, um die Methodenleistung zu analysieren. Ich bin mir nicht sicher, ob die anderen Versionen diese Funktion unterstützen, aber es gibt auch einige kommerzielle / freie Anwendungen um ... suche nach Profiler (siehe hier für eine Liste).
Sie sollten sich versteckte Funktionen von c # ansehen. Dieser Artikel behandelt die besten Praktiken in c # Entwicklung
Sie können sich auf Rat davon beraten lassen. Aber beachten Sie: Vorzeitige Optimierung ist die Wurzel allen Übels.
Zielen Sie zuerst auf Korrektheit , danach auf Klarheit und nur dann auf Leistung .
Wie das alte Sprichwort sagt,
"Es interessiert niemanden, wie schnell Sie die falsche Antwort berechnen können"
(Verwenden Sie auf einem praktischen Niveau jedoch einen Profiler)
Wenn Sie einen Profiler bekommen, wird es Ihnen helfen, einige geben Ihnen sogar gute Tipps.
Beispiel: ANTS Profiler
Normalerweise werden Sie feststellen, dass die Anzahl der Male, die Sie Strings erstellen, die größte Leistungssteigerung ist, die Sie erzielen können.
Das und nicht mit dem Garbage Collector manuell zu tun (es sei denn, Sie wirklich wirklich wissen, was Sie tun)
Dieser Link zu Java-Designmustern ist viel zu kompliziert, lassen Sie sich nicht durch das Wort Java abschrecken, Sie können das, was sie für die Entwicklung lehren, in jeder Sprache verwenden.
Die Sache ist, wenn Sie wissen wollen, wann was zu tun ist und welche Methoden zu verwenden sind, über Designmuster sprechen Sie.
Ich wünschte, jemand hätte mir das früher in meiner Karriere gezeigt.
In Bezug auf allgemeine Hinweise:
Sie können Ihr Programm im einheitlichen Modus kompilieren, um die Laufzeitleistung zu verbessern.
Tags und Links optimization c#