Nokioteca [Nokia] Forum: Come Iniziare a programmare in Python? - Nokioteca [Nokia] Forum

Salta al contenuto

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

Come Iniziare a programmare in Python?

#1 L   max1850 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 39
  • Iscritto: 21 agosto 2006

Inviato 30 agosto 2009 - 12:14

Visualizza Messaggimadhacker, il 30/08/2009 - 12:52, ha scritto:

è una risposta che puoi capire semplicemente.
innanzitutto credo che, a mio avviso, è sbagliato il modo di arrivare in symbian, cioè, secondo me dovresti prima avere qualche idea da realizzare, e in base ad essa dovresti poi scegliere un linguaggio di programmazione.
detto questo cercherò di spiegarti alcune cose. il symbian è "scritto" in c++, o per meglio dire in "Symbian C++", e da questo capirai che il linguaggio nativo è il C++, che richiede non poca conoscenza. Da questo potrai anche dedurre che ci saranno un'infinità di librerie e API da poter essere sfruttate, ma questo linguaggio, come forse già saprai, per scrivere un semplicissimo programma di "Hello World" o "Ciao Mondo" impiegheresti una notevole quantità di righe di codice, magari senza nemmeno riuscire a compilarlo nel verso giusto.
Una valida alternativa potrebbe essere il J2ME, che è pienamente supportato dal Symbian e che può fare la felicità di molti programmatori.
Oltre questi 2 appena citati ci sono altri linguaggi altrettanto potenti, ma decisamente più semplici, quali il Python (meglio PyS60) e mShell. Questi 2 linguaggi sono in via di espansione e quindi col passare del tempo aumentano anche librerie e moduli. Questo è dato anche dal fatto che sono stati messi a disposizione gli SDK per sviluppare nuovi moduli, sia in Python sia in mShell.
Prima di risponderti alla tua 3a domanda, è meglio che ti chiarisca una cosa riguardante la 4a.
I file .sis sono dei file di installazione prettamente usati in Symbian, mentre i .jar sono dei pacchetti di installazione di applicazione scritte in J2ME. Come detto poc'anzi il Symbian li accetta entrambi, ma se tu sviluppi un'applicazione in C++ è pur logico che verrà creato il file di installazione finale in formato .sis e non .jar, viceversa se usi il J2ME. Python e mShell, anch'essi come C++, creeranno i files in formato .sis.

Qualora dovessi utilizzare il C++, nokia mette a disposizione una serie di tool e sdk per creare, testare e compilare le proprie applicazioni, ovviamente sempre con le dovute conoscenze. Python e mShell invece offrono un tool per la conversione del codice sorgente in codice compilato incluso poi nel file .sis finale.
Spero di averti dato un quadro generale abbastanza ampio da poterti mettere a scelta sulle tue volontà.


Ciao madhacker!
Grazie per avermi schiarito le idee! :suicide_anim: A questo punto inizierei a programmare con un linguaggio più semplice, come il Phython.
Ho letto nella rete che serve il phython per s60 e che va installato anche sullo smartphone (oltre che nel computer), ma poi quando sviluppo un applicativo esso può girare anche sugli smartphone che non hanno il phython installato oppure no?
E, un'altra cosa, dove posso scaricare questo programma (l' SDK serve pure?)?

Ciao e scusa per le innumerevoli domande :suicide_anim:
Max!

Messaggio modificato da max1850 il 30 agosto 2009 - 13:04

0

#2 L   Ale152 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 57
  • Iscritto: 19 agosto 2009
  • Cellulare:N82
  • Firmware:31

Inviato 30 agosto 2009 - 13:14

Ciao!
Il python è senz'altro la scelta migliore per chi è alle prime armi. Permette di sviluppare applicativi di ogni sorta nel minor numero possibile di righe, e senza dover perdere tempo a compilare nulla!

Il consiglio che ti do io è quello di *procurarti* questa guida:
"Wiley Mobile Python Rapid prototyping of applications on the mobile platform Dec 2007"
Questa guida richiede minime conoscenze di programmazione, in qualsiasi linguaggio (giusto sapere cosa sono le variabili, i costrutti if/else/while/for, e altre cosette basilari), ma è davvero molto chiara e spiega veramente tutto!
Oltre a spiegare la programmazione per symbian ci sono anche molte lezioni basilari di Python, ma per avere una buona conoscenza di questo ti consiglio comunque di leggerti la doc:
Per visualizzare questo link registrati o esegui il log in.

0

#3 L   max1850 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 39
  • Iscritto: 21 agosto 2006

Inviato 30 agosto 2009 - 14:35

Visualizza MessaggiAle152, il 30/08/2009 - 14:14, ha scritto:

Ciao!
Il python è senz'altro la scelta migliore per chi è alle prime armi. Permette di sviluppare applicativi di ogni sorta nel minor numero possibile di righe, e senza dover perdere tempo a compilare nulla!

Il consiglio che ti do io è quello di *procurarti* questa guida:
"Wiley Mobile Python Rapid prototyping of applications on the mobile platform Dec 2007"
Questa guida richiede minime conoscenze di programmazione, in qualsiasi linguaggio (giusto sapere cosa sono le variabili, i costrutti if/else/while/for, e altre cosette basilari), ma è davvero molto chiara e spiega veramente tutto!
Oltre a spiegare la programmazione per symbian ci sono anche molte lezioni basilari di Python, ma per avere una buona conoscenza di questo ti consiglio comunque di leggerti la doc:
Per visualizzare questo link registrati o esegui il log in.


Ciao Ale!
Ho dato un'occhiata alle 2 guide che mi hai consigliato e sono veramente ben fatte.
Ora però vorrei iniziare a programmare. Puoi aiutarmi? Ho fatto già alcuni passi avanti...:lol:
Ho installato ActivePython 3.1.1 ed ho cercato di scrivere il primo semplicissimo programma "Hello word" e con grande sorpresa ho visto che la sintassi è diversa da quella del linguaggio Python.
Infatti, mentre nei libri dicono di usare il codice:
print "Hello World"
questo mi dà errore di sintassi e ho dovuto scrivere:
print ("Hello World")
per farlo funzionare!

Se fosse solo questo sarebbe una fesseria, ma per le altre cose più sofisticate, ad es. per dichiarare una funzione è una impresa!
I libri indicano il seguente codice:
def somma(x,y):
... risultato=x+y
... print "La somma di %s e %s dà come risultato: %s"%(x,y,risultato)
ma a me non riesce proprio di farlo girare!

Quindi, ti chiedo se gentilmente puoi indicarmi un'altro programma da sostituire ad ActivePython che però mantiene la sintassi originale del Python, e che magari non si avvii come una shell ma come un normale programma del windows (...forse chiedo troppo? :) ).

Ciao
Max!

Messaggio modificato da max1850 il 30 agosto 2009 - 14:38

0

#4 L   madhacker 

  • Senior Member
  • PuntoPuntoPuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 527
  • Iscritto: 16 settembre 2006
  • Cellulare:N95-2,5800

Inviato 30 agosto 2009 - 15:32

allora
Per visualizzare questo link registrati o esegui il log in.
troverai i files di installazione di python per il tuo symbian. PythonforS60 è il runtime, mentre la ScriptShell è un'applicazione che ti consentirà di eseguire i tuoi script (in formato .py) direttamente dal cellulare. Detto questo hai alcune possibilità per programmare:
- Installi sul tuo pc un SDK e i rispettivi plugin di Python per SDK (che troverai sempre al primo link che ti ho mandato) e inizierai a scrivere dei pezzetti di codice che potrai poi testare sul SDK
- Installare sul tuo cellulare PythonForS60 e la ScriptShell e dal pc scriverai i tuoi script (con qualsiasi editor di testo; va bene anche blocco note) per poi passarli sul tuo cell e testarli direttamente lì
- Installare sul tuo cellulare PythonForS60 e la ScriptShell e scrivi direttamente sul tuo cell i tuoi script.
Visto che hai scelto Python, ti dico che lo script non va compilato, ci pensa direttamente la ScriptShell a fare il tutto.
PS: La sintassi del PyS60 è quella del libro, ovvero
print u'Hello World'
non dimenticare di mettere la u davanti che serve ad indicare al runtime di Python che si tratta di una stringa in formato UNICODE, altrimenti, qualora dovesse mancare la u, potresti rischiare di non vedere stampata a video la frase in modo corretto.
0

#5 L   max1850 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 39
  • Iscritto: 21 agosto 2006

Inviato 30 agosto 2009 - 16:50

Visualizza Messaggimadhacker, il 30/08/2009 - 16:32, ha scritto:

allora
Per visualizzare questo link registrati o esegui il log in.
troverai i files di installazione di python per il tuo symbian. PythonforS60 è il runtime, mentre la ScriptShell è un'applicazione che ti consentirà di eseguire i tuoi script (in formato .py) direttamente dal cellulare. Detto questo hai alcune possibilità per programmare:
- Installi sul tuo pc un SDK e i rispettivi plugin di Python per SDK (che troverai sempre al primo link che ti ho mandato) e inizierai a scrivere dei pezzetti di codice che potrai poi testare sul SDK
- Installare sul tuo cellulare PythonForS60 e la ScriptShell e dal pc scriverai i tuoi script (con qualsiasi editor di testo; va bene anche blocco note) per poi passarli sul tuo cell e testarli direttamente lì
- Installare sul tuo cellulare PythonForS60 e la ScriptShell e scrivi direttamente sul tuo cell i tuoi script.
Visto che hai scelto Python, ti dico che lo script non va compilato, ci pensa direttamente la ScriptShell a fare il tutto.
PS: La sintassi del PyS60 è quella del libro, ovvero
print u'Hello World'
non dimenticare di mettere la u davanti che serve ad indicare al runtime di Python che si tratta di una stringa in formato UNICODE, altrimenti, qualora dovesse mancare la u, potresti rischiare di non vedere stampata a video la frase in modo corretto.


Ciao! Mi si sono incarbugliate le idee! ;) Non so se può essere utile ma è meglio premettere che uso il Windows XP SP2.
Scrivo le cose che ho fatto poco per volta così vediamo di venirne fuori...
Allora.. io sul cell non vorrei installare nessun programma ma vorrei passare solo il file finale .sis. Questo perchè voglio scrivere le linee di codice sul computer e anche il test vorrei farlo sul computer.
Ora, mi pare di aver capito che per scrivere del codice devo installare un SDK. Dal link che mi hai dato ho scelto il file "PythonForS60_1_4_5_SDK_2ndEdFP3.zip". Visto che ho un Nokia N70 la versione di questo file 1.4.5 non so se va bene ma siccome questo smartphone ha il S60 2nd Edition, Feature Pack 3 penso che vada bene. Ma come si installa? All'interno non c'è un file di installazione... o non lo vedo io?

E già qui esce fuori un secondo problema, perchè non riesco a trovare, nel sito di sourceforge, i rispettivi plugin di Python per SDK. Qual'è il file?

P.S.: E quindi ActivePython non serve?

Ciao
Max!

Messaggio modificato da max1850 il 30 agosto 2009 - 17:02

0

#6 L   Ale152 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 57
  • Iscritto: 19 agosto 2009
  • Cellulare:N82
  • Firmware:31

Inviato 30 agosto 2009 - 17:29

Se avessi iniziato a leggere la guida non avresti fatto tutte queste domande :mumble:
Quando ti dicevo che è COMPLETA, intendevo sotto tutti gli aspetti!
Infatti, proprio tra le prime pagine, spiega come fare a programmare dal computer eseguendo gli script sul cellulare. Il metodo è quello della Console Bluetooth, che permette di scrivere codice sul computer ed eseguirlo sul cell.

Per il momento DIMENTICATI di creare .sis!
I file sul cellulare vanno eseguiti in .py.
Quando avrai terminato la creazione del .py, se proprio vorrai, potrai convertire il .py in .sis con uno degli appositi tool in circolazione.
Per il momento devi limitarti a usare la python shell e la console bluetooth.

E LEGGI LA GUIDA ;)
0

#7 L   madhacker 

  • Senior Member
  • PuntoPuntoPuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 527
  • Iscritto: 16 settembre 2006
  • Cellulare:N95-2,5800

Inviato 30 agosto 2009 - 18:33

come suggerito da Ale, non pensare già al .sis
A mio avviso è meglio che le righe di codice le scrivi sul PC e le provi sul cell. i metodi sono 2 o via USB o via BT
Active Python nn saprei proprio che fartene fare, nn ti serve almeno per quello che vuoi fare ora
0

#8 L   max1850 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 39
  • Iscritto: 21 agosto 2006

Inviato 30 agosto 2009 - 18:43

Visualizza Messaggimadhacker, il 30/08/2009 - 19:33, ha scritto:

come suggerito da Ale, non pensare già al .sis
A mio avviso è meglio che le righe di codice le scrivi sul PC e le provi sul cell. i metodi sono 2 o via USB o via BT
Active Python nn saprei proprio che fartene fare, nn ti serve almeno per quello che vuoi fare ora

Ciao!
Allora.. ho creato l'applicazione semplicissima "hello word", scaricati i programmi ed installati nello smartphone. Ho passato questo file e il programma funziona sul cell.
Ma non è quello che volevo fare. Forse non mi sono spiegato bene...
Come faccio a scrivere del codice al computer e testarlo direttamente al computer senza testarlo sul cell?
Quali programmi devo usare? Devo usare un ambiente IDE per scrivere il codice? Se si, quale mi consigliate?
E quale software di emulazione posso usare?

Spero questa volta di essermi spiegato più chiaramente :lol:

Ciao
Max!

Messaggio modificato da max1850 il 30 agosto 2009 - 18:53

0

#9 L   dany88 

  • Millennium Member
  • PuntoPuntoPuntoPuntoPuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 1185
  • Iscritto: 09 dicembre 2006

Inviato 30 agosto 2009 - 19:04

essendo gli emulatori per symbian poco accurati conviene sempre provare il codice su un vero dispositivo.
0

#10 L   Ale152 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 57
  • Iscritto: 19 agosto 2009
  • Cellulare:N82
  • Firmware:31

Inviato 30 agosto 2009 - 20:21

Visualizza Messaggimax1850, il 30/08/2009 - 19:43, ha scritto:

Ciao!
Allora.. ho creato l'applicazione semplicissima "hello word", scaricati i programmi ed installati nello smartphone. Ho passato questo file e il programma funziona sul cell.
Ma non è quello che volevo fare. Forse non mi sono spiegato bene...
Come faccio a scrivere del codice al computer e testarlo direttamente al computer senza testarlo sul cell?
Quali programmi devo usare? Devo usare un ambiente IDE per scrivere il codice? Se si, quale mi consigliate?
E quale software di emulazione posso usare?

Spero questa volta di essermi spiegato più chiaramente :huh:

Ciao
Max!

Scusa ma... Hai letto il mio messaggio? :lol:
0

#11 L   max1850 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 39
  • Iscritto: 21 agosto 2006

Inviato 30 agosto 2009 - 20:47

Visualizza MessaggiAle152, il 30/08/2009 - 21:21, ha scritto:

Scusa ma... Hai letto il mio messaggio? ;)

Certo che l'ho letto.. ma tu hai letto i miei? :)

Visualizza MessaggiAle152, il 30/08/2009 - 21:21, ha scritto:

Infatti, proprio tra le prime pagine, spiega come fare a programmare dal computer eseguendo gli script sul cellulare. Il metodo è quello della Console Bluetooth, che permette di scrivere codice sul computer ed eseguirlo sul cell.

Innanzitutto ho seguito la guida che mi hai consigliato e non è che la spiegazione si trova proprio alle prime pagine.. è verso la 37/349 pagina! :)
Poi mi stai sempre rispondendo che devo provare lo script sempre sul dispositivo mentre io ho chiesto fin dall'inizio un emulatore windows per testare questi script.

Ma è così difficile dire il nome di 2 programmi, uno per scrivere il codice e l'altro per provarlo? :P

Ciao
Max!

Messaggio modificato da max1850 il 30 agosto 2009 - 20:48

0

#12 L   Ale152 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 57
  • Iscritto: 19 agosto 2009
  • Cellulare:N82
  • Firmware:31

Inviato 30 agosto 2009 - 20:58

Visualizza Messaggimax1850, il 30/08/2009 - 21:47, ha scritto:

Poi mi stai sempre rispondendo che devo provare lo script sempre sul dispositivo mentre io ho chiesto fin dall'inizio un emulatore windows per testare questi script.


"Provarli sul dispositivo" significa vederne i risultati sullo schermo del cellulare.
Il codice lo scrivi dal pc e tramite console bt viene inviato ed eseguito sul cellulare, che ti mostra il risultato.
Se poi non vuoi proprio passare per il cellulare puoi utilizzare l'emulatore che si trova nell'SDK, ma ti assicuro che utilizzando la console BT fai molto prima.
0

#13 L   max1850 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 39
  • Iscritto: 21 agosto 2006

Inviato 30 agosto 2009 - 21:10

Visualizza MessaggiAle152, il 30/08/2009 - 21:58, ha scritto:

"Provarli sul dispositivo" significa vederne i risultati sullo schermo del cellulare.
Il codice lo scrivi dal pc e tramite console bt viene inviato ed eseguito sul cellulare, che ti mostra il risultato.
Se poi non vuoi proprio passare per il cellulare puoi utilizzare l'emulatore che si trova nell'SDK, ma ti assicuro che utilizzando la console BT fai molto prima.

Eheh.. è quello che sto cercando di dire...cioè non voglio vedere l'output sul cellulare ma in un programma in windows! :P
Ad un novizio come me non dice niente la frase "puoi utilizzare l'emulatore che si trova nell'SDK"! Gentilmente mi spieghi qual'è il file/programma SDK?

Max!
0

#14 L   Ale152 

  • Advanced Member
  • PuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 57
  • Iscritto: 19 agosto 2009
  • Cellulare:N82
  • Firmware:31

Inviato 30 agosto 2009 - 21:48

...e dato che sei un novizio, perché non prendi consigli da chi ha un po' più esperienza di te?

Ma se proprio vuoi fare a modo tuo, eccoti un link:
Per visualizzare questo link registrati o esegui il log in.


Enjoy.

Messaggio modificato da Ale152 il 30 agosto 2009 - 21:49

0

#15 L   madhacker 

  • Senior Member
  • PuntoPuntoPuntoPuntoPunto
  • Gruppo: Utente
  • Messaggi: 527
  • Iscritto: 16 settembre 2006
  • Cellulare:N95-2,5800

Inviato 30 agosto 2009 - 22:14

ora sono di passaggio e ti posso soltanto dire che per scrivere il codice in python puoi usare qualsiasi editor di testo, svariando dal Blocco Note di Windows, a Notepad++ o qualsiasi altro editor TESTUALE che più ritieni opportuno. Per l'ambiente di sviluppo ne parliamo domani se hai difficoltà col link di Ale
0

Condividi questa discussione:


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