2008-08-22 12 views
1

Ich versuche, eine RegEx für einen Codegenerator (in C#) zu schreiben, um einen richtigen Klassen- oder Paketnamen einer AS3-Klasse zu bestimmen.Wie lauten die Regeln für die Benennung von AS3-Klassen?

Ich weiß, dass Klassennamen

  • muss mit einem Buchstaben (Kapital oder aus anderen Gründen) beginnen
  • einer anderen Stelle kann alphanumerisch sein
  • keine Leerzeichen haben

Gibt es etwas anderes ?

Antwort

1

Hier sind einige gültige Klassen.

Actionscript 3 Klassen (und Pakete) müssen mit einem Buchstaben "_" oder "$" beginnen. Sie können auch eine Zahl enthalten (aber nicht beginnen).

public class $Test {} 
public class _Test {} 
public class test {} 
3

Obwohl Sie Klassennamen mit Kleinbuchstaben und Unterstriche und Dollar-Zeichen beginnen, die „Namensgebung Konvention“ ist der Klassenname und jedes einzelne Wort mit einem Großbuchstaben (zB UsefulThing) zu starten, und keine Unterstriche enthalten. Wenn ich Klassen wie useful_thing sehe, sieht es falsch aus, weil es nicht die Bezeichnung Konvention ist. Vielleicht sollte Ihre Frage gesagt haben, was sind die gültigen Namen für eine AS3-Klasse?

Ansonsten denke ich, dass Sie + maclema es haben.

2

Die Konventionen für Klassen- und Paket so weit zu benennen, wie ich gehört habe:

Die Paketstruktur sollte die „gekippt Domäne“ zu nennen, mit Klein Ordnern und camelcase Klassennamen verwenden, das heißt:

import com.yourdomain.nameofsubfolder.YourSpecialClass; 

Dies spiegelt sich in allen Paketen wider, die mit Flash und Flex ausgeliefert werden. Beispiele:

import flash.events.MouseEvent; 
import flash.display.MovieClip; 

Es gibt auch eine Konvention der Namensgebung Schnittstellen nach der Funktionalität, die sie addieren oder verhängen, wie in: Styleable, Drawable, Movable etc ... Viele (einschließlich Adobe) bevorzugt auch einen oberen Fall verwenden „I "Schnittstellen markieren eindeutig als solche, das heißt:

IEventDispatcher 
IExternalizable 
IFocusManager 

, die alle internen Schnittstellen in den flash.* Pakete sind.

Verwandte Themen