Frage

Ich bin neu bei Appcelerators Titanium und JavaScript und interessiert mich für eine iPhone -App. Ich erkannte, dass für das Erstellen der Benutzeroberfläche "viele" Code erforderlich ist. Das ist bisher kein Problem, aber ich tendiere dazu, diesen Code von meiner Anwendungslogik mit Bedacht zu trennen. Was sind die besten Praktiken?

aktualisieren Tweetanium ist ein großartiges Beispiel, wie man eine mobile Titanium -Anwendung strukturiert

War es hilfreich?

Lösung

Ok, ich habe gerade eine coole Übung gefunden.

Ich schließe die con_file.js mit der Anwendungslogik der view_file.js mit ein

Titanium.include('../controller/con_file.js');

Jetzt kann ich auf die Lochdatenstruktur zugreifen.

Andere Tipps

Ich werde versuchen:

Ich neige dazu, das zu benutzen MVC-Muster Für die Entwicklung meiner Anwendung seit der Implementierung aller Dinge in einem einzigen JS-Datei ist es ziemlich hässlich. Deshalb habe ich beschlossen, eine Datei für die Ansicht und all das Zeug in Bezug auf das Aussehen, eine Datei für die Datenbankbehandlung (den Controller), insbesondere die SQL-Statements, und eine Datei für die zu verwenden Zusammenfassung Datentyp (das Model).

Ein kurzes Beispiel:

Aussicht: ViewCerceringObject.js

Ti.include('object.js');

var win = Ti.UI.currentWindow;
var myObject = new object();

var myObjectName = Ti.UI.createLabel({
   text:myObject.getName();
});

win.add(myObjectName);

Modell: Object.js

Ti.include('controllerConceringObject.js');

function object(){
   this.name = 'myInitialName';

   this.getName(){
      return this.name;
   };

   this.setName(newName){
      this.name = newName;
   };

   this.updateNameFromDb(){
      this.name = getNameFromDatabase();
   };

}

Regler: ControllerConceringObject.js

function getNameFromDataBase(){
   var db = Ti.Database('objects');
   var sql = 'SELECT name FROM objects';
   var recordset = db.execute(sql);
   var name  = recordset.field(0);
   recordset.close();
   db.close();
   return name;
};

Die Ordnerstruktur könnte also so sein:

MYPROJECT: Ordview (ViewCerceringObject.js), Ordnungsmodel (thedatabase.db, Object.js), OrdnungsController (ControllerConceringObject.js).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top