FI Programmazione



Comments



Description

L'ambiente di programmazione PROCESSlNGProcessíng è un ambíente dí programmazíone svííuppato aí Medía Lab deí MIT, íí cuí scopo è dí permettere ad artístí, desígner ed ín generaíe a persone con scarse cognízíoní dí ínformatíca ma attratte daííe possíbííítà dí appíícazíone deíí'ínformatíca aíí'arte e aí desígn dí poter scrívere deí programmí, píù o meno sofístícatí, ín breve tempo, utííízzando uno strumento facííe da usare ma suffícíentemente potente per fare deííe sperímentazíoní neí settore deíía "computer art" e deíí' "ínteractíon desígn". Processíng è un prodotto open source dísponíbííe per íe píattaforme Wíndows, Macíntosh e Línux; ío sí può scarícare daí síto uffícíaíe. Potete scarícare íí sommarío, í'índíce anaíítíco, aícuní capítoíí e gíí esempí dí programmazíone deí ííbro pubbíícato dagíí autorí dí processíng Processíng è moíto sempííce da usare: sí scríve íí testo dí un programma e ío sí esegue (con íí comando "run" o premendo íí puísante "Píay" aíí'estrema sínístra deíía fínestra deíí'appíícazíone). I programmí scríttí possono ovvíamente essere saívatí e successívamente modífícatí. Ií tutto sí fa ín modo sempííce e íntuítívo, così che anche un utente ínesperto possa ímparare ín pochí mínutí ad usarío. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 1 oI 34 09/30/2010 11.15 AM Come abbíamo detto, Processíng è un ambíente dí programmazíone, ovvero un pacchetto software per scrívere programmí. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 2 oI 34 09/30/2010 11.15 AM Ií íínguaggío ín cuí taíí programmí devono essere scríttí è chíamato Processíng (quíndí attenzíone: ambíente dí programmazíone e íínguaggío hanno ío stesso nome) ed è basato suí íínguaggío dí programmazíone |ava. Infattí ía síntassí dí Processíng rícorda moíto queíía dí |ava, ma è moíto píù sempííce scrívere un programma con Processíng che un programma |ava, anche se quest'uítímo ha una maggíore fíessíbííítà (e quíndí compíessítà) ed è un íínguaggío dí appíícabííítà generaíe, basato suí paradígma dí programmazíone a oggettí. In effettí, íí íínguaggío Processíng è dívíso ín tre ííveííí dí compíessítà: eíementare, íntermedío, avanzato. Ouest'uítímo ííveíío coíncíde sostanzíaímente con íí íínguaggío |ava stesso. La maggíor parte degíí esempí dí programmazíone che vedremo rícadono neí due prímí ííveííí. Primi esempi di programmazione Abbíamo vísto ín una íezíone precedente che un programma ío sí scríve partendo da ístruzíoní eíementarí e combínandoíe ín tre modí possíbííí, usando opportune strutture dí controíío. Le strutture dí controíío dí un íínguaggío dí programmazíone sono deí costruttí (frasí) deí íínguaggío che controííano í´ordíne dí esecuzíone deííe ístruzíoní dí un programma. Sequenza: íe ístruzíoní sono eseguíte ín sequenza una dopo í´aítra. Selezione: sceíta deíí´ístruzíone da eseguíre tra píù aíternatíve. lterazione: rípetízíone (un certo numero dí voíte) dí un gruppo dí ístruzíoní. Sequenza Sequenza : gíustapposízíone dí ístruzíoní separate da ";" (punto e vírgoía) Una o píù ístruzíoní possono essere raggruppate tra parentesí graffe {T , ., T ,} IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 3 oI 34 09/30/2010 11.15 AM per formare una síngoía ístruzíone. Le ístruzíoní sono eseguíte neíí´ordíne ín cuí appaíono: I 1 , . , I n Esempio Ií prímo esempío dí programma Processíng dísegna cínque rette obííque tra íoro paraííeíe. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 4 oI 34 09/30/2010 11.15 AM í'ístruzíone s1ze{200, 200) crea una fínestra dí 200 per 200 píxeí entro cuí avvíene íí dísegno, IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 5 oI 34 09/30/2010 11.15 AM í'ístruzíone backgJouhd{0) scegííe íí nero come coíore deíío sfondo, í'ístruzíone s1Joke{255) scegííe íí bíanco come coíore per íí dísegno deííe íínee, í'ístruzíone s1JokeWe1gh1{5) ímposta ío spessore deííe íínee a 5 píxeí, í'ístruzíone smoo1h{)arrotonda í'estremítà deííe íínee. Cíascuna deííe 5 íínee dí codíce che seguono dísegna una íínea, ad es. í'ístruzíone ì1he{10, 80, 30, 40)dísegna una íínea con estremí neí puntí dí coordínate (10, 80) e (30, 40). Ií sístema dí coordínate dí Processíng pone í'orígíne degíí assí neíí'angoío superíore sínístro deíía fínestra dí dísegno, per cuí spostandosí verso destra aumenta íí vaíore deíía príma coordínata dí un punto, mentre spostandosí verso íí basso aumenta íí vaíore deíía seconda coordínata. Sí notí che í'ímmagíne appare ín bíanco e nero, poíché è stato sceíto dí dísegnare con ímmagíní a ííveííí dí grígío, sceítí tra 256 tonaíítà díverse: 0 per íí nero e 255 per íí bíanco. Ogní ístruzíone deí programma è seguíta da un commento, un testo ínseríto come documentazíone deí programma, che non víene consíderato come codíce, ma víene scartato durante í'esecuzíone deí programma. I commentí usatí ín questo programma sono monoriga, IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 6 oI 34 09/30/2010 11.15 AM ovvero ínízíano dopo í símboíí "//" e termínano ín fondo aíía ríga. Uso delle variabili Se sí osserva attentamente íí programma precedente, íe cínque ríghe paraííeíe sono dísegnate íncrementando dí 10 unítà ía príma componente deí puntí estremí dí ogní retta. Ií prossímo esempío dífferísce daí precedente per í'íntroduzíone dí una varíabííe íntera dí nome x a cuí sí assegna ínízíaímente íí vaíore 0 con ía dichiarazione 1h1 x = 0 e dopo íí dísegno dí ogní íínea è íncrementata dí 10 unítà con íí comando di assegnamento x=x+10 . Una dichiarazione ha il compito di creare una variabile stabilendo il nome e l'insieme dei valori che la variabile può assumere (ovvero il tipo della variabile, in questo caso di tipo int che denota i numeri interi), nonche di riservare nella memoria del calcolatore lo spazio necessario per memorizzare il valore corrente della variabile. In Processíng come ín |ava e tantí aítrí íínguaggí, una varíabííe non può essere usata se non è príma díchíarata. Invece vedremo che ín |avaScrípt ía díchíarazíone dí una varíabííe non è necessaría. L'effetto fínaíe deí programma è sempre ío stesso, ma, a dífferenza deí programma precedente, íí codíce mette bene ín evídenza ía reíazíone tra íe coordínate deííe 5 íínee. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 7 oI 34 09/30/2010 11.15 AM lterazione I costruttí dí íterazíone eseguono un certo numero dí voíte un'ístruzíone, detta corpo. Un IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 8 oI 34 09/30/2010 11.15 AM costrutto dí íterazíone è anche detto istruzione di ciclo, o sempíícemente ciclo. Noí esamíneremo due típí dí costruttí dí íterazíone: comando while wh1ìe {<espJess1ohe ìog1ca> ) T L'esecuzíone dí un comando whííe causa í'esecuzíone deíí'ístruzíone T (íí corpo deí whííe) se í´espressíone íogíca (ía guardia deí whííe) è vera, poí sí vaíuta dí nuovo í´espressíone íogíca: se è vera sí esegue dí nuovo í´ístruzíone, e così vía ñnché í´espressíone íogíca díventa faísa. Esempio di uso del comando while IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 9 oI 34 09/30/2010 11.15 AM Osservando íí codíce degíí esempí precedentí, íe cínque ríghe paraííeíe sono dísegnate íncrementando dí 10 unítà ía príma componente deí puntí estremí dí ogní retta. Sí ha quíndí una rípetízíone (5 voíte) deíí'esecuzíone deí comando dí traccíatura deííe íínee. La traccíatura deííe íínee può avveníre senza scrívere 5 voíte ío stesso comando, usando íí comando whííe. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 10 oI 34 09/30/2010 11.15 AM Ií corpo deí cícío whííe dísegna una íínea ed íncrementa íí vaíore deíía varíabííe íntera x dí 10 unítà. Pertanto, ía varíabííe x assume í vaíorí 0, 10, 20, 30, 40, ín corríspondenza deí quaíí una íínea víene dísegnata. Ouando x assume íí vaíore 50, ía guardía deí cícío whííe díventa faísa e IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 11 oI 34 09/30/2010 11.15 AM í'esecuzíone deí cícío termína. La fígura seguente mostra come íí cícío whííe possa essere usato per caícoíare í numerí tríangoíarí, ovvero í numerí ínterí posítíví ottenutí come somma deí numerí ínterí compresí tra 1 e un íntero posítívo n. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 12 oI 34 09/30/2010 11.15 AM Ií programma funzíona ín modo anaíogo aí díagramma a bíocchí díscusso ín una íezíone precedente (teoría degíí aígorítmí). IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 13 oI 34 09/30/2010 11.15 AM comando for 1oJ {T , E , T ) T I 1 è í´ístruzíone dí ínízíaíízzazíone; E è ía guardía deí for ; I 2 è í´ístruzíone dí íncremento o aggíornamento; I 3 è íí corpo deí for ; í'esecuzíone dí un comando for avvíene come segue: ínnanzí tutto è eseguíta í'ístruzíone I 1 dí ínízíaíízzazíone (che dí soííto assegna un vaíore ad una varíabííe, detta varíabííe dí controíío deí cícío for); se ía guardía è vera sí esegue íí corpo I 3 e í´aggíornamento I 2 , poí sí vaíuta dí nuovo ía guardía: se è vera sí esegue dí nuovo íí corpo e í´aggíornamento, ñnché ía guardía díventa faísa. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 14 oI 34 09/30/2010 11.15 AM Esempio di uso del comando for Ouesto esempío è una ríscríttura deí programma precedente usando íí cícío for. Sí notí che IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 15 oI 34 09/30/2010 11.15 AM í'ístruzíone che assegna 0 aíía varíabííe x è í'ístruzíone dí ínízíaíízzazíone deí cícío for, mentre í'ístruzíone che íncrementa dí 10 unítà íí vaíore dí x è í'ístruzíone dí aggíornamento deí cícío for. Ií corpo deí for è costítuíto daíía soía ístruzíone dí traccíatura dí una íínea e víene rípetuto 5 voíte. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 16 oI 34 09/30/2010 11.15 AM Attenzione: le istruzioni di ciclo non sono solo dei semplici sostituti del comando di sequenzializzazione che permettono di abbreviare i programmi, ma permettono di fare molto di più. Se non usiamo i cicli e vogliamo disegnare J0 righe anziche 5, dobbiamo modificare il programma, aggiungendo 5 nuovi comandi di disegno. Ií prossímo esempío mostra come con íe ístruzíoní dí íterazíone sía possíbííe dísegnare un numero dí íínee che dípende daí numero dí secondí deí tempo ín cuí sí íancía í'esecuzíone deí programma: non è pertanto stabíííre a príorí quante íínee sí devono dísegnare e un taíe programma non sí può reaíízzare con ía soía sequenzíaíízzazíone dí comandí. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 17 oI 34 09/30/2010 11.15 AM Aíía varíabííe íntera s è assegnato íí numero deí secondí íettí daíí'oroíogío deí caícoíatore. Neíí'ímmagíne precedente íí testo che appare neíía fínestra deí termínaíe índíca che íí vaíore assegnato ad s è 4. Ií programma dísegnerà pertanto quattro ríghe, come mostrato neíía fígura seguente: IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 18 oI 34 09/30/2010 11.15 AM Ií corpo 1Íne{5*x+16, 46, 5*x+16, 86)¦ deí comando for successívo che esegue ía traccíatura dí una íínea vertícaíe è eseguíto un numero dí voíte parí aí vaíore deíía varíabííe s: ínfattí, ía varíabííe x dí conteggío deí for è ínízíaíízzata a 0 e fíntanto che íí suo vaíore è mínore dí queíío dí s, sí traccía una íínea e sí íncrementa íí vaíore dí x. ln generale, se s è una variabile intera con un valore definito, l'esecuzione del ciclo 1or{Ín1 x = 6¦ x<s¦ x=x+1){ /* corpo de1 1or */ )¦ provoca l'esecuzione ripetuta s volte del corpo del for. Con íe ístruzíoní dí cícío, sí può íncappare neí cosídetto "fencepost error" (errore deíío steccato e deí paíí), che consíste neíí'eseguíre íí corpo deí cícío una voíta ín píù o ín meno deí numero corretto dí íterazíoní. Per essere sícurí che íí programma funzíoní correttamente, provate ad assegnare deí vaíorí píccoíí aíía varíabííe s, ad es. 0 o 1 e vedete cosa succede: se IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 19 oI 34 09/30/2010 11.15 AM íe prove hanno successo, aííora íí programma dovrebbe essere corretto. Per concíudere í'anaíísí dí quest'esempío, sí notí íí commento multiriga ín fondo aí codíce. Sí tratta dí un típo dí commento che ínízía con í símboíí "/*" , termína con í símboíí "*/" e può occupare un numero arbítrarío dí ríghe dí testo. Selezione I costruttí dí seíezíone sceígono dí eseguíre un'ístruzíone píuttosto che un'aítra ín base aí vaíore dí un'espressíone íogíca ( espressíone che assume soío due vaíorí, vero o falso, e pertanto una taíe espressíone è anche detta espressione booleana, da George Booíe, matematíco e íogíco deí dícíannovesímo secoío). Noí esamíneremo due típí dí costruttí dí seíezíone: comando if 11 {<espJess1ohe ìog1ca> ) T L'esecuzíone dí taíe comando causa í'esecuzíone deíí'ístruzíone I 1 se í´espressíone íogíca (detta guardia) è vera IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 20 oI 34 09/30/2010 11.15 AM Esempio di uso del comando if Ií seguente programma dísegna 5 ríghe paraííeíe dí coíore grígío se, aí momento deíí'esecuzíone deí programma, í'oroíogío deí caícoíatore índíca un'orarío ín cuí íí vaíore deí secondí è ínferíore a 30; ín caso contrarío, íe ríghe sono dí coíore bíanco. La decísíone dí quaíe coíore appíícare è fatta con íí costrutto íf. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 21 oI 34 09/30/2010 11.15 AM IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 22 oI 34 09/30/2010 11.15 AM Ií coíore deííe íínee da traccíare víene preímpostato con ía terza ríga dí codíce s1Joke{255) che scegííe íí coíore bíanco. Ií successívo comando íf Í1 {s<36){ s1roke{128)¦ // 5e1 1Íne va1ue 1o gray )¦ ímposta con í'ístruzíone s1Joke{128)íí coíore grígío come coíore dí traccíatura se íí numero deí secondí, contenenuto neíía varíabííe s è mínore dí 30. comando if-else 11 {<espJess1ohe ìog1ca> ) T1 eìse T2 L'esecuzíone dí taíe comando causa í'esecuzíone deíí'ístruzíone I 1 se í´espressíone íogíca è vera; deíí'ístruzíone I 2 ín caso contrarío. IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 23 oI 34 09/30/2010 11.15 AM Esempio di uso del comando if-else IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 24 oI 34 09/30/2010 11.15 AM Ií seguente programma dísegna 5 ríghe paraííeíe dí coíore grígío se, aí momento deíí'esecuzíone deí programma, í'oroíogío deí caícoíatore índíca un'orarío ín cuí íí vaíore deí secondí è ínferíore a 30; ín caso contrarío, íe ríghe sono dí coíore bíanco. La decísíone dí quaíe coíore appíícare è fatta con íí costrutto íf-eíse IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 25 oI 34 09/30/2010 11.15 AM IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 26 oI 34 09/30/2010 11.15 AM A dífferenza deíí'esempío precedente, íí coíore deííe íínee da traccíare non víene preímpostato, ma víene determínato daí comando íf-eíse Í1 {s<36){ s1roke{128)¦ // 5e1 1Íne va1ue 1o gray ) e1se { s1roke{255)¦ // 5e1 1Íne va1ue 1o WhÍ1e )¦ che ímposta con í'ístruzíone s1Joke{128)íí coíore grígío come coíore dí traccíatura se íí numero deí secondí, contenenuto neíía varíabííe s è mínore dí 30, mentre ín caso contrarío íí coíore dí traccíatura è ímpostato aí coíore bíanco con í'ístruzíone s1Joke{255). Primo esempio di grafica 2D Ií prossímo sempíícíssímo programma mostra come dísegnare sempíící fígure geometríche. Per un approfondímento, sí veda íí íínk GRAFICA 2D e per ínformazíoní suíí'uso deííe prímítíve grafíche 2D (ístruzíoní per íí dísegno dí fígure geometríche bídímensíonaíí, sí consuítí í'eíenco denomínato "2D Prímítíves" aíía pagína deí manuaíe dí ríferímento dí Processíng . IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 27 oI 34 09/30/2010 11.15 AM IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 28 oI 34 09/30/2010 11.15 AM Ií programma è quasí autoespíícatívo. Gíí unící commentí ríguardano í comandí stroke() e fill(), che stabíííscono íí coíore dí dísegno deí contorní e ríspettívamente deíí'area ínterna dí una fígura. I tre numerí ínterí che costítuíscono gíí argomentí dí queste ístruzíoní rappresentano un coíore ín formato RGB (Red, Green, Bíue) . Aí contrarío, í metodí no5troke() e noFill() íníbíscono íí dísegno deí contorno o deíí'ínterno dí una fígura, fíno aíí'esecuzíone dí un nuovo comando stroke() o fill().Ií comando bezier() dísegna una curva dí Bezíér, defíníta da quattro puntí: í puntí estremí e due puntí dí controíío che ne determínano ía curvatura. Per comprendere megíío íe curve dí Bezíér, seguí questo íínk. Per determinare il codice RGB di un colore o viceversa per determinare il colore di una tripla RGB di numeri interi, si può usare nel menu "Tools" di Processing l'opzione "Color selector". Ií rísuítato deíí'esecuzíone deí programma è íí seguente IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 29 oI 34 09/30/2010 11.15 AM Esercizi 1) Scrívere un programma che produce íí seguente dísegno IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 30 oI 34 09/30/2010 11.15 AM 2) Scrívere un programma bersagíío che ríproduce íí dísegno seguente: IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 31 oI 34 09/30/2010 11.15 AM Suggerímento: usare un cícío íteratívo (for o whííe). In fondo a questa pagína trovate íí ríferímento "dísegno bersagíío" a una possíbííe soíuzíone. PROVATE A SVOLGERE L'ESERCIZIO SENZA GUARDARE LA SOLUZIONE! Note sull'esecuzione dei programmi Come abbíamo vísto, Processíng dà ía possíbííítà dí scrívere ed eseguíre programmí ín modo ímmadíato. Ií codíce deí programmí scríttí è memorízzato ín un fííe con estensíone ".pde" (sígía dí Processíng Deveíopment Envíronment). Aí momento deíía sua esecuzíone, taíe fííe víene tradotto ín un codíce detto bytecode, contenuto ínsíeme ad aítrí fííe aíí'ínterno dí un fííe con estensíone ".|ar" (sígía dí |ava ARchíve). Ií bytecode aíí'ínterno deí fííe |ar víene eseguíto daíí'ínterprete |ava, detto anche |RE (sígía dí ]ava Run-time Environment) o |VM (sígía dí ]ava Virtual Machine). Le fasí dí traduzíone (detta comunemente compilazione) deí codíce sorgente (íí fííe pde) e dí esecuzíone deí bytecode avvengono ín modo trasparente per í'utente. Tuttí í fííe prodottí mantengono ío stesso nome, cambíando soío í'estensíone. In reaítà, íí bytecode prodotto da Processíng è un programma dí típo specíaíe, detto applet, IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 32 oI 34 09/30/2010 11.15 AM che può essere ínseríto aíí'ínterno dí una pagína web con un'apposíto marcatore <appíet>. In questo modo, íí programma una voíta compííato è ínseríto aíí'ínterno dí una pagína web e, aí momento deíía vísuaíízzazíone deíía pagína, í'appíet è eseguíto. L'uníca cosa necessaría per ía vísuaíízzazíone degíí appíet è che suí caícoíatore sía ínstaííato í'ínterprete |ava, (|RE o |VM). Attenzione, Processing crea l'applet solo se si esegue il comando "export". In taí caso, esso genera íí bytecode deíí'appíet ed una sempííce pagína web dí nome índex.htmí contenente un ríferímento aíí'appíet medíante íí marcatore omonímo. Dí seguíto sono eíencatí í coííegamentí aííe pagíne web contenentí gíí esempí vístí fínora, píù aícuní esempí suppíementarí. Processing può anche creare un'applicazione se si esegue il comando "export application". In taí caso, esso genera oítre aí bytecode deíí'appíet un fííe eseguíbííe che avvía a sua voíta í'esecuzíone deíí'appíet. L'appíícazíone può essere generata per í sístemí Wíndows, Mac e Línux. Dí seguíto sono eíencatí í coííegamentí aííe pagíne web contenentí gíí esempí vístí fínora, píù aícuní esempí suppíementarí. Collegamenti ai programmi discussi esempío sequenza aítro esempío sequenza esempío íf esempío íf-eíse esempío whííe esempío for esempío for n. 2 esempío dí grafíca dísegno bersagíío IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 33 oI 34 09/30/2010 11.15 AM numerí tríangoíarí IondamentI dI ¡nIormatIca - 04 - £IementI dI IrogrammazIone LIe.///home/steIano/Ðocuments/pubIIc_htmI_Iatest/I¡_04_IrogrammazIone.htmI 34 oI 34 09/30/2010 11.15 AM Documents Similar To FI ProgrammazioneSkip carouselcarousel previouscarousel nextcontadores acumuladoresEstilos de Programacionautolisp de autocad parte 3.docVariablesSesion3Drive List BoxCapitulo 7-Parametros de Entrada-SalidaTaller de Programacion en PseintFUNCIONES PROGRAMACIONBiologic a 30 CompletoMore From granitobluSkip carouselcarousel previouscarousel nextTecniche Di IpnosiSecretsOfColdReadingsony_vpl-s900_ifb-x600_rm-pjm600_pss-600Samsung Galaxy Note II Configurazione Wap12541 Trust Manuals Usermanuals It 1.0ProDAD Mercalli 3 0 EnProcessing Intro SitoHM1700_UM_EU_A_Rev.1.0_110809_screenPS - InAIL - PrimoSoccorso2010FinePix REAL 3D W3 Note87680029 Fast i Segreti Del Digiuno Intermittent Davide BertiSoftware Pipelines So AColorimetry1008g Code Rs274De_Re_BASIC!projectoripnosi_storiainsertercamera36-close-uprepair123D Introduction Basic Principlestvm_projcuttertvm_partsLucid Puppy Installation Tutorial English24-close-up123D Introduction Assembling Componentstvm_serviceFooter MenuBack To TopAboutAbout ScribdPressOur blogJoin our team!Contact UsJoin todayInvite FriendsGiftsLegalTermsPrivacyCopyrightSupportHelp / FAQAccessibilityPurchase helpAdChoicesPublishersSocial MediaCopyright © 2018 Scribd Inc. .Browse Books.Site Directory.Site Language: English中文EspañolالعربيةPortuguês日本語DeutschFrançaisTurkceРусский языкTiếng việtJęzyk polskiBahasa indonesiaSign up to vote on this titleUsefulNot usefulYou're Reading a Free PreviewDownloadClose DialogAre you sure?This action might not be possible to undo. Are you sure you want to continue?CANCELOK
Copyright © 2024 DOKUMEN.SITE Inc.