3. Das erste Programm

Veröffentlicht am Freitag, 06 Mai 2011 Geschrieben von xzessmedia

 

Im folgenden möchten wir uns zu allererst mal das Grundgerüst einer neuen App anschauen:

Dies kann man zB. als Grundlage für ein neues Projekt nehmen.

 

 

Import mojo
Class MyApp Extends App
'Platz für Fields (Fields sind wie Fächer einer Schublade, wo du Werte/Variablen ablegen kannst
'zB.:
Field meineVar:Int=0 'Eine Variable des Typs Integer mit dem Wert 0 bei Erstellung

		Method OnCreate()
		'Einsprungspunkt -> Wenn das App initialisiert ist
		'Dies ist der Einsprungspunkt für eigene Inits
		
		'Hier kann man abhängig vom Target Anpassungen vornehmen
		#If TARGET="flash"

		#Else If TARGET="android"

		#Else If TARGET="ios"

		#Else

		#Endif
		
		SetUpdateRate 15 'Setzt die UpdateRate auf 15 Hertz, also 15 mal pro Sekunde OnUpdate()
'Diese muss unbedingt gesetzt werden, oder euer Programm läuft nicht! 
		End
		
		Method OnLoading()
		'Einsprungspunkt -> Wenn das App geladen wird
		End
		Method OnSuspend()
		'Einsprungspunkt -> Wenn das App zB. per Multitasking in den Hintergrund geht oder einfach
		'pausiert wird
		'Hier kann man zb Ressourcen entladen oder auch Sounds stoppen
		End
		Method OnResume()
		'Einsprungspunkt -> Wenn das App fortgesetzt wird (Gegenteil von OnSuspend)
		End
        Method OnRender()
		'Einsprungspunkt für alle Darstellungen
				Cls
				SetColor 0,0,255
                DrawText "Hello World!",0,0
        End
		Method OnUpdate()
		'Einsprungspunkt für den Hauptloop, die OnUpdate wird regelmässig aufgerufen
' abhängig von der Update Rate
		End

End

Function Main()
        New MyApp
End Function


 

Was passiert hier und warum Class MyApp?

Sofern wir mojo verwenden (mojo ist das Grafikmodul von Monkey) müssen wir  die vorhandene Mojo Klasse "App" erweitern.

Dazu schreiben wir uns eine neue Klasse, sagen wir mal MyApp, und definieren es als Erweiterung der Klasse App aus dem mojo Modul.

Class MyApp extends App

Nun können wir unsere eigene Klasse um Methoden erweitern, welche in der Klasse mojo bereits vorhanden sind, um diese dort einzufügen.

Dies sind beispielsweise:

OnRender()
OnUpdate()
OnCreate()

Ganz zum Schluss muss natürlich unsere Klasse auch erstellt werden, denn wir haben Sie so nur definiert.
Dies tun wir mit

Function Main()
        New MyApp
End Function

 

Das Prinzip kann man sich natürlich jederzeit zu Nutze machen und den Spass den OOP bereitet, jederzeit auskosten.

So könnt ihr natürlich auch eure eigenen Klassen erweitern.

Hier ein Beispiel zum Thema Klassen:

 

Class Bierkasten
	Private
		Field Inhalt:= new List<Bier>
	Public
		Method Bier_hinzu:Bier(Preis:Int,Sorte:String)
			'Eine temporäre Variable erstellen, Bier wird später eh returned
			Local b:= new Bier
			b.Preis = Preis
			b.Sorte = Sorte		
			'Bier zum Inhalt hinzu
			Inhalt.AddLast(b)
			Return b
		End
End

Class Bier Extends Bierkasten
		Field Preis:Int
		Field Sorte:String
End

 

Es ist sehr hilfreich erstmal analytisch vorzugehen und alles was man an Informationen für ein Projekt hat oder benötigt zu definieren.

Buy cheap web hosting service where fatcow web hosting review will give you advices and please read bluehost review for more hosting information.
Free Joomla Templates designed by Web Hosting Top