6 Stimmen

Wie man Felder und Eigenschaften am besten benennt

Microsoft sagt Felder und Eigenschaften müssen sich nicht nur durch die Groß- und Kleinschreibung unterscheiden. Wenn sie also wirklich dieselbe Idee repräsentieren, wie sollten sie sich dann unterscheiden?

Hier ist das Beispiel von Microsoft, was man nicht tun sollte:

using System;
namespace NamingLibrary
{    
    public class Foo    // IdentifiersShouldDifferByMoreThanCase    
    {        
        protected string bar;

        public string Bar        
        {            
            get { return bar; }        
        }    
    }
}

Sie geben keine Hinweise darauf, wie dies aussehen sollte. Was machen die meisten Entwickler?

0voto

jrista Punkte 31522

Ich persönlich mache Folgendes:

class SomeClass
{
    private static string s_foo;   // s_ prefix for static class fields
    private string m_bar;          // m_ prefix for instance class fields

    public static string Foo
    {
        get { return s_foo; }
    }

    public string Bar
    {
        get { return m_bar; }
    }
}

Ursprünglich habe ich nur _ oder m_ als Präfix für alle meine Felder verwendet, bis ich anfing, mich mit Reflector durch eine Menge Microsoft .NET-Code zu wühlen. Microsoft verwendet ebenfalls das s_- und m_-Paradigma, und das gefällt mir irgendwie. Es macht es einfach, genau zu wissen, was ein Feld ist, wenn man den Codekörper einer Funktion liest. Ich muss nicht auf irgendetwas zeigen und darauf warten, dass ein Tooltip erscheint oder so etwas. Ich weiß einfach anhand des Feldpräfixes, ob etwas statisch oder eine Instanz ist.

0voto

Jojo Sardez Punkte 8150

Das hängt von Ihnen oder Ihrem Unternehmen ab \organization Kodierungsstandard. Die meisten Programmierer verwenden jedoch camelCasing oder Unterstrich + camelCasing für Felder und PascalCasing für Eigenschaften wie:

public class Foo    
{         
    protected string _bar; 

    public string Bar         
    {             
        get { return _bar; }         
    }     
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X