Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

 Jens Bennedsen 2001Multimedie programmering11.1 Lingo Basis.

Lignende præsentationer


Præsentationer af emnet: " Jens Bennedsen 2001Multimedie programmering11.1 Lingo Basis."— Præsentationens transcript:

1  Jens Bennedsen 2001Multimedie programmering11.1 Lingo Basis

2  Jens Bennedsen 2001Multimedie programmering11.2 Typer Lingo er et utypet sprog –Når man erklærer variabler skal typen ikke defineres –Når man oversætter fanges ikke typefejl F.eks. vides det ikke om et objekt har en metode eller ej før på køretidspunktet on startmovie member("theSandbox").image = member("emptySandbox").image member("turnParam").texty="" member("moveParam").text="" member("penUpDown").hilite=false theSandbox = script("Sandbox").new() theTurtle =script("Turtle").new(theSandbox) end

3  Jens Bennedsen 2001Multimedie programmering11.3 Klasser En klasse i lingo hedder et parent script Scripts er tilgængelige overalt Et script beskriver de attributter og operationer klassen skal have

4  Jens Bennedsen 2001Multimedie programmering11.4 Et eksempel Den gode gamle Turtle:

5  Jens Bennedsen 2001Multimedie programmering11.5 Turtle klassen property direction -- retning i grader property penDown property sandbox on move me,length fromCoordinate = turtleSprite.loc turtleSprite.locV=turtleSprite.locV+sin((direction/180.0)*pi)*length turtleSprite.locH=turtleSprite.locH+cos((direction/180.0)*pi)*length if penDown then sandbox.draw(fromCoordinate, turtleSprite.loc) end if end on turn me,degrees direction=direction+degrees turtleSprite.rotation=direction end on penUp me penDown=false end on penDown me penDown=true end Metoden: turn(deg:int):void

6  Jens Bennedsen 2001Multimedie programmering11.6 Opsamling klaser En metode: on method me, parameter1, parameter2 Et kald: objekt.metode(aktuelParam1, aktuelParam2) En attribut: property attribut1 Afskærmning –Alt er public!

7  Jens Bennedsen 2001Multimedie programmering11.7 Konstruktion En constructor er ”bare” en metode Oprettelse af et objekt: on new me,sandb turtleSprite=sprite(2) direction = 0 penDown = true sandbox=sandb return me end Husk at returnere objektet! theTurtle =script("Turtle").new(theSandbox) Navnet på parent-scriptet parameter Grafikken til vores skildpade er i spritekanal 2. Det er også et objekt

8  Jens Bennedsen 2001Multimedie programmering11.8 Globalt tilgængeligt Et globalt tilgængeligt objekt : Skal initialiseres et eller andet sted: Alle steder den kan anvendes skal den erklæres Og kan ændres alle steder! global theTurtle theTurtle = script("Sandbox").new() theTurtle =script("Turtle").new(theSandbox)

9  Jens Bennedsen 2001Multimedie programmering11.9 Sætninger Et assignment: objekt1 = objekt2 Sekvensering af sætninger sætning1 sætning2 Selektion if betingelse then sætning [else sætning] end if Selektion - fortsat case ( udtryk ) of value1: sætning(er) value2,value3: sætning(er) otherwise: sætning(er) end case

10  Jens Bennedsen 2001Multimedie programmering11.10 Sætninger (2) Iteration repeat while betingelse sætning(er) end repeat repeat with index = start to end sætning(er) end repeat repeat with index = last downto first sætning(er) end repeat Udskrift til consollen put...

11  Jens Bennedsen 2001Multimedie programmering11.11 Andet end parent scrips Movie scripts –Ting knyttet til filmen - ex on startMovie Behavior scripts –Bruges f.eks. til at fange hændelser fra en komponent (=controller laget i MVC) global theTurtle on mouseUp me length = integer(member("moveParam").text) theTurtle.move(length) end

12  Jens Bennedsen 2001Multimedie programmering11.12 Lad os lave et eksempel JFrame Observer KontoGUI model:Konto saldoLabel:JLabel saldoText:JTextField ndrText:JTextField +KontoGUI(model:Konto) +update(o:Observable,arg:Object):void -KontoGUI Observable Konto -saldo:double +Konto() +getSaldo():double -notifyObs():void Observer KontoAlarmGUI -model:Konto +KontoAlarmGUI(model:Konto) +update(o:Observable,arg:Object):void +indsæt(double) +hæv(double)


Download ppt " Jens Bennedsen 2001Multimedie programmering11.1 Lingo Basis."

Lignende præsentationer


Annoncer fra Google