Nokioteca [Nokia] Forum: Mshell -->to-->python - Nokioteca [Nokia] Forum

Salta al contenuto

Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

Mshell -->to-->python Transizione indolore anche per sprogrammatori

#1 L   lento 

  • Senior Member
  • PuntoPuntoPuntoPuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 637
  • Iscritto: 03 settembre 2008
  • Cellulare:E72

Inviato 09 marzo 2010 - 16:25

Scusate l'assenza dal forum.....ma il materiale sul Pythone è talmente tanto che ci si perde.....
Macché scuse e scuse! questi ce speravano! nella tua sparizione!
Probabile Alter ma comunque mi sentivo in dovere di rendere facile e più familiare la transizione da mShell a Python per chi ci vuol provare.

Python in Symbian è sufficientemente complesso e disarmante per chi non vive in un bilocale in via Scasi appena sotto la scheda grafica e a due passi dal CD-Rom.

Questo non significa che si deve programmare alla difficile! :thumbs: basta partire da quello che si conosce e piano piano man mano si aggiunge
conoscenza, andare verso il complesso o ciò che ancora non si conosce.

Siamo sprogrammatori alla spagetti software? Siiiiìììì :mumble: Bene! allora sè pò fare!. :thumbs:

Riporto un semplice programma della pallina rimbalzante.
import appuifw, e32, graphics 

app=appuifw.app   # creiamo il nostro oggetto applicazione

x=4
y=104
iy=-2
ix=2
running=1 # quando diventa 0 termina il programma

#creo una funzione che cambia il contenuto della variabile globale running
def termina():
  global running
  running=0

app.screen='full' # impostiamo l'applicazione a tutto schermo
c=appuifw.Canvas() # Creiamo una tavolozza grafica di nome c
app.body=c # assegnamo la tavolozza grafica al display della nostra applicazione

app.exit_key_handler=termina # indichiamo all'applicazione che quando premeremo il tasto di
							 # uscita di eseguire la funzione termina()

#------main del programma-----
c.clear(0xFFFFFF)  # pulisce tavolozza c col bianco

while running:
  c.text((y,x),u'o',fill=0xFFFFFF)  # stampiamo la 'o' bianca alle coordinate x,y
  x=x+ix;  y=y+iy;

  if x<0 or x>305:
	ix=-ix
  if y<0 or y>225:
	iy=-iy
  c.text((y,x),u'o',fill=0x000000) # stampiamo la 'o' nera alle coordinate x,y
  e32.ao_sleep(0.01)   # attendiamo 0,01 secondi prima di ripetere il ciclo while.

#-------fine main------


Come potete vedere cè pochissimo di diverso da mShell e questo permette già di divertirsi con la grafica!
Per confronto riporto lo stesso programma con accanto le righe della versione mShell.
# Palla rimbalzante V0.2 del 2009/05/08 Ore 13.23
#use   ui,		   graph as g;
import appuifw, e32, graphics 

# g.size(240,320);
app=appuifw.app   # creiamo il nostro oggetto applicazione


x=4   # x=4;
y=104 # y=104;
iy=-2 # iy=-2;
ix=2  # ix=2;
running=1 # quando diventa 0 termina il programma

#creo una funzione che cambia il contenuto della variabile globale running
def termina():
  global running
  running=0

# g.full(true);
app.screen='full' # impostiamo l'applicazione a tutto schermo

c=appuifw.Canvas() # Creiamo una tavolozza grafica di nome c
app.body=c # assegnamo la tavolozza grafica al display della nostra applicazione

# ui.keys(true);
app.exit_key_handler=termina # indichiamo all'applicazione che quando premeremo il tasto di
							 # uscita di eseguire la funzione termina()

#------main del programma-----
#g.bg(g.white); g.clear();
c.clear(0xFFFFFF)  # pulisce la tavolozza c col bianco

# do
while running:
  # g.pen(g.white); g.text(y,x,"o");
  c.text((y,x),u'o',fill=0xFFFFFF)
  x=x+ix;  y=y+iy;   # x=x+ix;  y=y+iy;

  #if x<0 or x>305 then ix= -ix; end;
  if x<0 or x>305:
	ix=-ix

  #if y<0 or y>225 then iy= -iy; end;
  if y<0 or y>225:
	iy=-iy

  # g.pen(g.blue); g.text(y,x,"o");
  c.text((y,x),u'o',fill=0x000000)

  # g.show(); sleep(5);
  #tasto=ui.cmd(0);

  #until tasto=48;
  e32.ao_sleep(0.01)

#--------fine main-------


Quando si sarà imparato a leggere la tastiera (come si faceva con ui.cmd()) sarete in grado di creare tutto quello che avete fatto in grafica con mShell. (O quasi!)

Comunque in questo forum esiste una marea di esempi e spiegazioni utili!. Leggere a ritroso Please!
Anche se non ho trovato nulla che aiutasse a traghettare (o ad iniziare) chi di programmazione ad oggetti, e delle complessità dei sistemi operativi ne mastica poco.

Pur essendo in questo campo una schiappa spero di essere stato utile.
0

Condividi questa discussione:


Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione