2009-06-06 13 views
9

Ich habe den Beispielcode und manchmal Apple Namen Xib-Dateien ClassNameView und manchmal ClassNameViewController angesehen. Die ClassName ist immer eine UIViewController oder UITableViewController, die mich fragen ließ, welche Konvention bei der Benennung einer Xib verwendet werden sollte. Ich denke View als es ist nicht wirklich die ViewController, aber neugierig auf, was die Konvention ist oder zumindest, was Ihre Namenskonventionen für xibs sind.Namenskonventionen für xibs

+1

Das verwirrt mich auch. Ich hoffe, dass andere hier weiterspielen können, da ich gültige Argumente für * beide * Stile sehen kann. es ist ein IB-Dokument, also ist es eindeutig ein ** view ** oder? Aber dann wieder der Besitzer ist in der Regel ein ** View-Controller ** und die Feder kann enthalten * mehrere * Ansichten ... Ich bin derzeit in der Mitte des Straßencamp auf der Suche nach einem überzeugenden Argument, um mich in eine Richtung ziehen oder der andere ... – Meltemi

Antwort

2

Ich benutze ClassNameView, da das Xib die Ansicht darstellt, nicht der View-Controller. Ich glaube nicht, dass es eine allgemein akzeptierte Konvention gibt.

+1

Ich schien auch keine allgemein akzeptierte Konvention zu finden. Allerdings lese ich diesen Blog-Beitrag unter http://www.cimgf.com/2009/05/11/magical-iphone-view-controllers/, der sagt, wenn init (nicht initWithNibName) verwendet wird, nimmt es an, dass die Nib namens ClassNameView heißt. Ich werde wahrscheinlich mit View gehen, weil wie Sie Henning sagte, es ist nicht der View-Controller. – baalexander

1

Normalerweise benutze ich ClassNameViewController, da ich den Besitzer der Datei zu dieser Klasse festgelegt habe und es seltsam erscheint, die Datei nach etwas zu benennen, das ein Unterobjekt des Objekts ist, das die Spitze darstellt. Wie Sie, habe ich es in beiden Beispielen im Beispielcode gesehen, und ich habe einen Blogpost über Cocoa gesehen, der in einigen Fällen explizit nach ClassNameView sucht, aber ich hatte keine Probleme mit ClassNameViewController.

3

Cocoatouch unterstützt beiden Konventionen, mit einer Präferenz für die kürzere Form ClassNameView, gemäß dem nib Beladevorgang weiter unten beschrieben, wenn ein nib Name angegeben wird (von the UIViewController documentation, under nibName):

Insbesondere sieht es (in bestellen) für eine nIB-Datei mit einem der folgenden Namen:

  1. Wenn die view-Controller-Klassennamen mit dem Wort „Controller“, wie in MyViewController endet, sieht es für eine nIB-Datei, deren Name matc hes der Klassenname ohne das Wort "Controller", wie in MyView.nib.

  2. Es sieht für eine Nib-Datei, deren Name mit dem Namen der View-Controller Klasse entspricht. Wenn der Klassenname beispielsweise MyViewController lautet, wird für eine MyViewController.nib-Datei angezeigt.

So wie andere gesagt haben, ist es eine Frage der Präferenz! Ich persönlich mag die kürzere Version, kann aber die Logik in beiden sehen.