2008-09-08 10 views

Antwort

2

Wie andere gesagt haben, variieren die Dinge viel, aber hier ist eine grobe Übersicht über die am häufigsten verwendeten Namenskonventionen in verschiedenen Sprachen:

lowercase, lowercase_with_underscores:

Gemeinhin für lokale Variablen und Funktionsnamen verwendet (typisch C-Syntax).

UPPERCASE, UPPERCASE_WITH_UNDERSCORES:

Teil für Konstanten und Variablen verwendet, die sich nie ändern. Einige (ältere) Sprachen wie BASIC haben auch eine Konvention, alle Großbuchstaben für alle Variablennamen zu verwenden.

CamelCase, javaCamelCase:

Typisch für Funktionsnamen und Variablennamen verwendet. Einige verwenden sie nur für Funktionen und kombinieren sie mit Kleinbuchstaben oder Kleinbuchstaben mit Unterstrichen für Variablen. Wenn javaCamelCase verwendet wird, wird es normalerweise sowohl für Funktionen als auch für Variablen verwendet.

Diese Syntax ist auch ziemlich häufig für externe APIs, da dies die Win32 und Java APIs tun. (Auch wenn eine Bibliothek eine andere Konvention intern verwendet, sie exportieren typischerweise mit der (Java) Camelcase-Syntax für Funktionsnamen.)

prefix_CamelCase, prefix_lowercase, prefix_lowercase_with_underscores:

Häufig in Sprachen verwendet, die Namespaces nicht unterstützen (das heißt C). Das Präfix bezeichnet normalerweise die Bibliothek oder das Modul, zu dem die Funktion oder Variable gehört. Normalerweise reserviert für globale Variablen und globale Funktionen. Präfix kann auch in GROß geschrieben werden. Einige Konventionen verwenden ein Kleinbuchstaben-Präfix für interne Funktionen und Variablen und ein UPPERCASE-Präfix für exportierte Funktionen.

Es gibt natürlich viele andere Möglichkeiten, Dinge zu benennen, aber die meisten Konventionen basieren auf einer der oben genannten oder einer Vielzahl von diesen.

BTW: Ich habe vergessen, die ungarische Schreibweise absichtlich zu erwähnen.

+0

ThisIsPascalCase, thisIsCamelCase. noch nie von javaCamelCase gehört –

1

Natürlich gibt es einige allgemeine Richtlinien, aber es gibt auch Unterschiede aufgrund des Unterschieds in der Sprachsyntax \ Design.

Für .NET (C#, VB, etc.) ich folgende Ressource empfehlen würde:

4

Jede Sprache hat einen bestimmten Stil. Mindestens ein. Jedes Projekt hat einen bestimmten Stil. Zumindest sollten sie es tun. Dies kann manchmal ein anderer Stil sein als der kanonische Stil, den Ihre Sprache verwendet - wahrscheinlich basierend auf den Vorlieben der Entwickler.

Welchen Stil verwenden?

Wenn Ihre Sprache mit einer guten Standardbibliothek geliefert wird, versuchen Sie, die Konventionen in dieser Bibliothek zu übernehmen.

Wenn Ihre Sprache ein kanonisches Buch hat (Die Programmiersprache C, Das Kamelbuch, Ruby programmieren usw.), verwenden Sie das.

Manchmal schreiben die Sprachdesigner (C#, Java in den Sinn) tatsächlich eine Reihe von Richtlinien. Verwenden Sie diese, besonders wenn die Gemeinschaft sie auch annimmt.

Wenn Sie mehrere Sprachen verwenden, denken Sie daran, flexibel zu bleiben und Ihre bevorzugte Art der Programmierung auf die Sprache einstellen Sie verwenden - wenn in Python Codierung einen anderen Stil verwenden, um Codierung in C# usw.

1

G'day,

Eine der besten Empfehlungen, die ich machen kann, ist, die relevanten Abschnitte von Steve McConnells Code Complete (Amazon Link) zu lesen. Er hat eine ausgezeichnete Diskussion über Benennungstechniken.

HTH

prost,

Rob

1

Ich denke, dass die meisten Namenskonventionen variieren aber der Entwickler, zum Beispiel nenne ich Variablen wie: mulitwordVarName, aber einige der Entwickler ich gearbeitet habe verwendet so etwas wie mulitword_var_name oder multiwordvarname oder aj5g54ag oder ... Ich denke, es hängt wirklich von Ihren Vorlieben ab.

0

Vor Jahren lehrte mich ein weiser alter Programmierer das Übel von Hungarian notation, das war ein echtes Altsystem, Microsoft nahm es etwas in das Windows SDK und später in MFC. Es wurde um lose typisierte Sprachen wie C und nicht für stark typisierte Sprachen wie C++ entwickelt. Zu der Zeit programmierte ich Windows 3.0 mit Borland Turbo Pascal 1.0 für Windows, das später zu Delphi wurde.

Auf jeden Fall lange Geschichte kurz zu diesem Zeitpunkt das Team wurde ich auf entwickelt, um unsere eigenen Standards sehr einfach und für fast alle Sprachen arbeiten, basierend auf einfachen Präfixe -

  • a - Argument
  • l - lokale
  • m - Mitglied
  • g - global

die hier Wert auf Umfang ist, sich auf die Kompilierung r, um den Typ zu überprüfen, alles was Sie brauchen, ist der Umfang, in dem die Daten gespeichert sind. Das hat viele Vorteile gegenüber der fiesen alten ungarischen Notation: Wenn Sie den Typ von etwas durch Refactoring ändern, müssen Sie nicht alle Instanzen davon suchen und ersetzen.

Fast 16 Jahre später fördern ich immer noch die Verwendung dieser Praxis, und haben es für fast jede Sprache fand ich in entwickelt haben.

Verwandte Themen