How to contribute to Symfony for Symfony 2.0

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "How to contribute to Symfony for Symfony 2.0"

Transcript

1 How to contribute to Symfony for Symfony.0

2 How to contribute to Symfony (.0) This work is licensed under the Attribution-Share Alike 3.0 Unported license (http://creativecommons.org/ licenses/by-sa/3.0/). You are free to share (to copy, distribute and transmit the work), and to remix (to adapt the work) under the following conditions: Attribution: You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). Share Alike: If you alter, transform, or build upon this work, you may distribute the resulting work only under the same, similar or a compatible license. For any reuse or distribution, you must make clear to others the license terms of this work. The information in this book is distributed on an as is basis, without warranty. Although every precaution has been taken in the preparation of this work, neither the author(s) nor SensioLabs shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work. If you find typos or errors, feel free to report them by creating a ticket on the Symfony ticketing system (http://github.com/symfony/symfony-docs/issues). Based on tickets and users feedback, this book is continuously updated.

3 Contents at a Glance Segnalare un bug...4 Inviare una patch...5 Segnalazione di un problema di sicurezza...11 Eseguire i test di Symfony...1 Standard del codice...14 Convenzioni...17 Licenza di Symfony...19 Contribuire alla documentazione...0 Formato della documentazione... Traduzioni...5 Licenza della documentazione di Symfony...7 Incontri su IRC...9 Altre risorse...31 Contents at a Glance iii

4 Chapter 1 Segnalare un bug Se si dovesse trovare un bug in Symfony, chiediamo di segnalarlo. Ciò aiuta a rendere migliore Symfony. Se si ritiene di aver trovato un problema di sicurezza, si prega di seguire invece la procedura. Prima di inviare un bug: Ricontrollare la documentazione 1 ufficiale per verificare che non si stia facendo un uso scorretto del framework; Chiedere assistenza alla lista degli utenti, al forum 3 o al canale IRC 4 #symfony, se non si è sicuri che sia effettivamente un bug. Se si hanno problemi a identificare effettivamente il bug, segnalarlo utilizzando il tracker 5 ufficiale, seguendo alcune regole di base: Utilizzare il campo titolo per descrivere chiaramente il problema; Descrivere i passi necessari per riprodurre il bug, anche con brevi esempi di codice (fornire un test unitario per replicare il bug è il modo migliore) Fornire il maggior numero di dettagli possibile sul proprio ambiente (sistema operativo, versione di PHP versione di Symfony, extensioni abilitate,...) (facoltativo) Allegare una patch #contributing-code-irc:--irc.freenode.net-symfony 5. https://github.com/symfony/symfony/issues Chapter 1: Segnalare un bug 4

5 Chapter Inviare una patch Una patch è il modo migliore per rimediare a un bug e per proporre dei miglioramenti a Symfony Passo 1: preparare l'ambiente Installare il software Prima di lavorare con Symfony, preparare l'ambiente con il seguente software: Git; PHP versione 5.3. o successive; PHPUnit o successivi. Configurare Git Impostare le informazioni utente con il proprio nome reale e il proprio indirizzo di posta elettronica: Listing -1 1 $ git config --global user.name "Il proprio nome" $ git config --global user. Si raccomanda caldamente a chi fosse nuovo la lettura del libro ProGit 1, eccellente e libero. Se il proprio IDE crea dei file di configurazione dentro la cartella del progetto, si può usare il file globale.gitignore (per tutti i progetti) o il file.git/info/exclude (per progetto) per ignorarli. Vedere la documentazione di Github. 1. Chapter : Inviare una patch 5

6 Utenti di Windows: quando si installa Git, l'installazione chiederà cosa fare con i fine riga, suggerendo di sostituire Lf con CRLF. Questa impostazine è sbagliata, se si vuole contribuire a Symfony! Impostare il metodo "as-is" come scelta migliore, così git convertirà i fine riga con quelli nel repository. Se git è già stato installato, si può verificare questa impostazione con: Listing - 1 $ git config core.autocrlf Restituirà "false", "input" o "true", dove "true" e "false" sono i valori sbagliati. Impostare nuovamente con: Listing -3 1 $ git config --global core.autocrlf input Sostituire --global con --local se si vuole impostare solo per il repository attivo. Ottenere il codice sorgente di Symfony Ottenere il codice sorgente di Symfony: Creare un account su GitHub 3 ed entrare; Forkare il repository di Symfony 4 (cliccando sul bottone "Fork"); Dopo che l'azione "hardcore forking" è stata completata, clonare il proprio fork in locale (creerà una cartella symfony): Listing -4 1 $ git clone Aggiungere il repository upstream come remote: Listing -5 1 $ cd symfony $ git remote add upstream git://github.com/symfony/symfony.git Verificare che i test passino Ora che Symfony è installato, verifcare che tutti i test unitari passino nel proprio ambiente, come spiegato nel documento dedicato. Passo : lavorare su una patch La licenza Prima di iniziare, occorre sapere che tutte le patch da inviare devono essere rilasciate sotto licenza MIT, a meno che non sia specificato diversamente nel proprio codice.. https://help.github.com/articles/ignoring-files 3. https://github.com/signup/free 4. https://github.com/symfony/symfony Chapter : Inviare una patch 6

7 Scegliere il ramo giusto Prima di lavorare su una patch, è necessario individuare il ramo giusto. Il ramo deve essere basato sul ramo master se si vuole aggiungere una nuova funzionalità. Ma se si vuole risolvere un bug, utilizzare le versioni vecchie (ma ancora mantenute) di Symfony nelle quali appare il bug (come.0). Tutti i bug risolti in rami di manutenzione sono inseriti anche i rami più recenti, su base regolare. Per esempio, se si invia una patch per il ramo.0, la patch sarà applicata anche sul ramo master. Creare un ramo Ogni volta che si vuole lavorare su una patch per un bug o un miglioramento, creare un ramo: Listing -6 1 $ git checkout -b NOME_RAMO master Oppure, se si vuole risolvere un bug per il ramo.0, tracciare il ramo.0 remoto in locale: Listing -7 1 $ git checkout -t origin/.0 Quindi creare un nuovo ramo dal ramo.0: Listing -8 1 $ git checkout -b NOME_RAMO.0 Usare un nome descrittivo per il proprio ramo (ticket_xxx dove XXX è il numero di ticket è una buona convenzione per i bug). I comandi precedenti porteranno automaticamente sul ramo appena creato (verificare il ramo su cui si sta lavorando con git branch). Lavorare sulla propria patch È possibile lavorare sul codice quanto si vuole e committare tanto quanto si vuole; ma bisogna tenere a mente le seguenti indicazioni: Seguire gli standard del codice (utilizzare git diff --check per controllare i spazi alla fine); Aggiungere test unitari per provare che il bug è stato fissato per mostrare che la funzionalità è effettivamente funzionante; Sforzarsi di non infrangere la retro-compatibilità (se lo si deve fare, provare a fornire un livello di compatibilità che supporti il vecchio modo), le patch che infrangono la retro-compatbilità hanno meno probabilità di essere accettate; Fare commit separati e atomici (utilizzare le funzionalità di git rebase per ottenere uno storico chiaro e pulito); Comprimere i commit irrilevanti, che sistemano solamente gli standard di codice o gli errori di battitura; Non sistemare mai gli standard nel codice esistente, perché rende più difficoltosa la revisione del codice; Scrivere buoni messaggi di commit. Chapter : Inviare una patch 7

8 Si possono verificare gli standard del codice eseguente il seguente script 5 (sorgente 6 ): Listing -9 1 $ cd /path/to/symfony/src $ php symfony-cs-fixer.phar fix. Symfony0Finder Un buon messaggio di commit è composto dal riepilogo nella (prima linea), opzionalmente seguito da una linea vuota e da una descrizione dettagliata. Il riepilogo dovrebbe cominciare con il componente sul quale si sta lavorando posto fra parentesi quadre ([DependencyInjection], [FrameworkBundle],...). Utilizzare un verbo (fixed..., added...,...) per iniziare e non utilizzare il punto finale. Preparare la propria patch Quando la proprià patch non riguarda la sistemazione di un bug (quando si aggiunge una nuova caratteristica o se ne cambia una, per esempio), occorre includere quello che segue: Una spiegazione delle modifiche nel file (o nei file) CHANGELOG rilevante; Una spiegazione di come aggiornare un'applicazione esistente, nel file (o nei file) UPGRADE rilevante, se le modifiche infrangono la retro-compatibilità. Passo 3: inviare la propria patch Quando si ritiene la propria patch pronta per l'invio, seguire i passi seguenti. Fare un rebase Prima di inviare una patch, aggiornare il proprio ramo (necessario se passa del tempo tra il checkout e il commit delle nuove funzionalità) Listing $ git checkout master $ git fetch upstream $ git merge upstream/master $ git checkout NOME_RAMO $ git rebase master Sostituire master con.0 se si sta lavorando sulla risoluzione di un bug Quando si esegue il comando rebase, potrebbe essere necessario risolvere conflitti. Il comando git status metterà in mostra i file non ancora uniti (unmerged ). Risolvere tutti i conflitti e continuare con il rebase: Listing https://github.com/fabpot/php-cs-fixer Chapter : Inviare una patch 8

9 1 $ git add... # aggiunge file risolti $ git rebase --continue Verificare che tutti i test stiano ancora passando e inviare gli sviluppi nel ramo remoto. Listing -1 1 $ git push origin NOME_RAMO Richiedere un pull Si può ora eseguire una richiesta di pull sul repository symfony/symfony su Github. Si faccia attenzione a puntare la richiesta di pull verso symfony:.0, se si vuole che la risoluzione del bug riceva un pull basato sul ramo.0. Per facilitare il lavoro, includere sempre i componenti modificati nel messaggio di richiesta di pull, come in: Listing [Yaml] pippo pluto [Form] [Validator] [FrameworkBundle] pippo pluto Si prega di usare un titolo con "[WIP]", se la proposta non è ancora completa o se i test sono incompleti o non passano ancora. La descrizione della richiesta di pull deve includere la seguente lista, per assicurare che i contributi siano rivisti senza continui giri di feedback e che quindi possano essere inclusi in Symfony il prima possibile: Listing Bug fix: [yes no] Feature addition: [yes no] Backwards compatibility break: [yes no] Symfony tests pass: [yes no] Fixes the following tickets: [lista separata da virgole di ticket risolti] Todo: [lista di todo in corso] License of the code: MIT Documentation PR: [Riferimento alla PR di documentazione, se presente] Un esempio di proposta potrebbe essere il seguente: Listing Bug fix: no Feature addition: yes Backwards compatibility break: no Symfony tests pass: yes Fixes the following tickets: #1, #43 Todo: - License of the code: MIT Documentation PR: symfony/symfony-docs#13 Nella descrizione della richiesta di pull, dare quanti più dettagli possibile sulle proprie modifiche (non esitare a fornire esempi di codice per illustrare il punto). Se la richiesta di pull aggiunge nuove caratteristiche o ne modifica di esistenti, spiegare le ragioni delle modifiche. La descrizione della richiesta Chapter : Inviare una patch 9

10 di pull aiuta la revisione del codice e serve da riferimento nel momento del merge (la descrizione della richiesta di pull e tutti i commenti associati sono parte del messaggio di commit del merge). Oltre alla richiesta di pull sul codice, si deve inviare anche una richiesta di pull al repository della documentazione 7, per aggiornare la documentazione relativa. Rielaborare una patch Dipendentemente dal riscontro della lista o attraverso la richiesta di pull su Github, potrebbe essere necessario rielaborare la patch. Prima di re-inserire la patch, eseguire il rebase con il ramo master, ma non unire attraverso il merge; e forzare il push nell'origin: Listing $ git rebase -f upstream/master $ git push -f origin NOME_RAMO Quando si fa un push --force, specificare sempre il nome del ramo in modo esplicito, per evitare complicazioni con altri rami del repository (--force dice a git che si vogliono veramente complicare le cose, quindi va usato con cautela). Spesso, i moderatori richiederanno una compressione dei commit. Questo vuol dire che si convertiranno molti commit in uno solo. Per farlo, usare il comando rebase: Listing $ git rebase -i HEAD~3 $ git push -f origin NOME_RAMO Il numero 3 deve essere uguale al numero di commit nel proprio ramo. Dopo aver scritto questo comando, si aprirà un programma di modifica, con una lista di commit: Listing pick 1a31be6 primo commit pick 7fc64b4 secondo commit pick 7d33018 terzo commit Per unificare tutti i commit nel primo, rimuovere la parola "pick" prima del secondo e dell'ultimo commit e sostituirla con la parola "squash", o anche solo "s". Quando si salva, git inizierà il rebase e, in caso di successo, chiederà di modificare il messaggio di commit, che come predefinito è una lista di messaggi di commit di tutti i commit. Dopo aver finito, eseguire il push. Per fare in modo che il proprio ramo sia automaticamente testato, si può aggiungere il proprio fork a travis-ci.org 8. Basta entrare con l'account usato su github.com e e abilitare un singolo switch, per i test automatici. Nella propria richiesta di pull, invece di specificare "Symfony tests pass: [yes no]", si può collegare l'icona di stato di travis-ci.org 9. Per maggiori dettagli, vedere travis-ci.org Getting Started Guide 10. Lo si può fare in modo facile, cliccando sull'icona della chiave inglese nella pagina del build di Travis. Prima selezionare il proprio ramo, quindi copiare il codice markdown nella descrizione della propria richiesta di pull. 7. https://github.com/symfony/symfony-docs Chapter : Inviare una patch 10

11 Chapter 3 Segnalazione di un problema di sicurezza Si è trovato un problema di sicurezza in Symfony? Non utilizzare la lista o il tracker. Tutte le questioni di sicurezza devono essere inviate a security [at] symfony-project.com. Le inviate a questo indirizzo verranno inoltrate al team di sviluppo principale di Symfony. Per ogni report, prima si cercherà di confermare la vulnerabilità. Quando confermata, il team di sviluppo lavorerà a una soluzione seguendo questi passi: 1. Inviare un riconoscimento al segnalatore;. Lavorare su una patch; 3. Scrivere un post che descriva la vulnerabilità, i possibili exploit e come aggiornare le applicazioni afflitte; 4. Applicare la patch a tutte le versioni di Symfony in manutenzione; 5. Pubblicare il post sul blog ufficiale di Symfony. Nel periodo in cui si lavora alla risoluzione della patch, si prega di non rivelare pubblicamente il problema. Chapter 3: Segnalazione di un problema di sicurezza 11

12 Chapter 4 Eseguire i test di Symfony Prima di inviare una patch, occorre eseguire tutti i test di Symfony, per assicurarsi di non aver rotto nulla. PHPUnit Per eseguire i test di Symfony, installare 1 prima PHPUnit o successivi. Listing $ pear config-set auto_discover 1 $ pear install pear.phpunit.de/phpunit Dipendenze (opzionali) Per eseguire tutti i test, inclusi quelli che hanno dipendenze esterne, Symfony deve poterli scaricare. Per impostazione predefinita, sono auto-caricati dalla cartella vendor/ (vedere autoload.php.dist). I test necessitano delle seguenti librerie di terze parti: Doctrine Swiftmailer Twig Monolog Per installarle tutte, eseguire lo script vendors: Listing 4-1 $ php vendors.php install 1. Chapter 4: Eseguire i test di Symfony 1

13 Si noti che lo script ha bisogno di tempo per terminare. Dopo l'installazione, si possono aggiornare i venditori alle loro ultime versioni, con il comando seguente: Listing $ php vendors.php update Esecuzione Prima di tutto, aggiornare i venditori (vedere sopra). Quindi, eseguire i test dalla cartella radice di Symfony, con il comando seguente: Listing $ phpunit L'output dovrebbe mostrare OK. Altrimenti, occorre appurare quello che si è verificato e se i test sono rotti per colpa di una propria modifica. Se si vuole testare un singolo componente, scriverne il percorso dopo il comando phpunit, p.e.: Listing $ phpunit src/symfony/component/finder/ Eseguire i test prima di applicare le proprie modifiche, per assicurarsi che girino correttamente con la propria configurazione. Copertura del codice Se si aggiunge una nuova caratteristica, occorre anche verificare la copertura del codice, usando l'opzione coverage-html: Listing $ phpunit --coverage-html=cov/ Verificare la copertura del codice, aprendo la pagina generata cov/index.html in un browser. La copertura del codice funziona solo con XDebug abilitato e tutte le dipendenze installate. Chapter 4: Eseguire i test di Symfony 13

14 Chapter 5 Standard del codice Contribuendo al codice di Symfony, bisogna seguire i suoi standard. Per farla breve, ecco una regola d'oro: imitare il codice esistente di Symfony. La maggior parte dei bundle e delle librerie open source usati da Symfony segue le stesse linee guida. Ricordare che il vantaggio principale degli standard è che ogni pezzo di codice sembra familiare, non è che questo o quello siano più o meno leggibili. Symfony segue gli standard definiti nei documenti PSR-0 1, PSR-1 e PSR- 3. Poiché un'immagine (o un po' di codice) vale più di mille parole, ecco un breve esempio contenente la maggior parte delle caratteristiche descritte sotto: Listing <?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Acme; class FooBar { const SOME_CONST = 4; private $foobar; /** string $dummy Una descrizione del parametro 1. https://github.com/php-fig/fig-standards/blob/master/accepted/psr-0.md. https://github.com/php-fig/fig-standards/blob/master/accepted/psr-1-basic-coding-standard.md 3. https://github.com/php-fig/fig-standards/blob/master/accepted/psr--coding-style-guide.md Chapter 5: Standard del codice 14

15 } */ public function construct($dummy) { $this->foobar = $this->transform($dummy); } /** string $dummy Una descrizione del parametro string null Input trasformato */ private function transformtext($dummy, $options = array()) { $mergedoptions = array_merge($options, array( 'some_default' => 'values', )); } if (true === $dummy) { return; } if ('string' === $dummy) { if ('values' === $mergedoptions['some_default']) { $dummy = substr($dummy, 0, 5); } else { $dummy = ucwords($dummy); } } return $dummy; Struttura Aggiungere un singolo spazio dopo ogni virgola delimitatrice; Aggiungere un singolo spazio intorno agli operatori (==, &&,...); Aggiungere una riga vuota prima delle istruzioni return, a meno che non siano soli dentro una struttura di controllo (come un if); Usare le parentesi graffe per le strutture di controllo, indipendentemente dal numero di istruzioni contenute; Definire una classe per file (non si applica a classi private di helper che non devono essere istanziate dall'esterno e quindi esulano dallo standard PSR-0); Dichiarare le proprietà di una classe prima dei metodi; Dichiarare prima i metodi pubblici, poi quelli protetti e infine quelli privati; Convenzioni sui nomi Usare camelcase, non i trattini bassi, per nomi di variabili, di funzioni e di metodi; Usare i trattini bassi per nomi di opzioni e parametri; Usare gli spazi dei nomi per tutte le classi; Aggiungere il suffisso Interface alle interfacce; Usare caratteri alfanumerici e trattini bassi per i nomi di file; Non dimenticare di dare un'occhiata al documento più prolisso sulle Convenzioni, per considerazioni più soggettive sulla nomenclatura. Chapter 5: Standard del codice 15

16 Documentazione Aggiungere blocchi PHPDoc per ogni classe, metodo e funzione; Omettere il se il metodo non restituisce nulla; Le non sono usate. Licenza Symfony è rilasciato sotto licenza MIT e il blocco della licenza deve essere presente in cima a ogni file PHP, prima dello spazio dei nomi. Chapter 5: Standard del codice 16

17 Chapter 6 Convenzioni La documentazione Standard del codice descrive gli standard del codice per i progetti Symfony e per i bundle interni e di terze parti. Tale documento descrive gli standard e le convenzioni del codice utilizzate nel nucleo del framework per renderlo più coerente e prevedibile. L'utilizzo nel proprio codice è incoraggiato, ma non obbligatorio. Nomi dei metodi Quando un oggetto ha molte relazioni "principali" correlate a "cose" (oggetti, parametri,...) i nomi dei metodi sono normalizzati in: get() set() has() all() replace() remove() clear() isempty() add() register() count() keys() L'utilizzo di questi metodi sono permessi solo quando è chiaro che si tratti di una relazione principale: un CookieJar ha molti oggetti Cookie; un servizio Container ha molti servizi e molti parametri (come servizi nelle relazioni principali, quindi si usa la convenzione); una Console di Input ha molti argomenti e molte opzioni. Non c'e una relazione principalethere is no "main" e quindi questa convezione non è applicata Per le relazioni per le quali non si può applicare la convenzione, bisogna invece seguire i seguenti metodi (dove XXX è il nome della cosa relazionata ): Chapter 6: Convenzioni 17

18 Relazione principale get() set() n/d has() all() replace() remove() clear() isempty() add() register() count() keys() Altre relazioni getxxx() setxxx() replacexxx() hasxxx() getxxxs() setxxxs() removexxx() clearxxx() isemptyxxx() addxxx() registerxxx() countxxx() n/d Pur essendo "setxxx" e "replacexxx" molto simili, c'e una differenza: "setxxx" può sostituire o aggiungere nuovi elementi alla relazione. A "replacexxx", invece, è espressamente vietato aggiungere nuove elementi, ma la maggior parte solleva un'eccezione in questi casi. Chapter 6: Convenzioni 18

19 Chapter 7 Licenza di Symfony Symfony è distribuito sotto licenza MIT. Secondo Wikipedia 1 : "È una licenza permissiva, cioè permette il riutilizzo nel software proprietario sotto la condizione che la licenza sia distribuita con tale software. È anche una licenza GPLcompatibile, cioè la GPL permette di combinare e ridistribuire tale software con altro che usa la Licenza MIT." La licenza Copyright (c) Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 1. Chapter 7: Licenza di Symfony 19

20 Chapter 8 Contribuire alla documentazione La documentazione è importante tanto quanto il codice. E segue esattamente gli stessi principi: DRY, test, facilità di manutenzione, estensibilità, ottimizzazione e refactoring, solo per nominarne alcuni. E certamente la documentazione ha bug, errori di battitura, difficoltà di lettura dei tutorial e molto altro. Contribuire Prima di contribuire, è necessario famigliarizzare con il linguaggio di markup usato per la documentazione. La documentazione di Symfony è ospitata da GitHub: Listing https://github.com/symfony/symfony-docs Se si vuole inviare una patch, fare un fork 1 del repository ufficiale su GitHub e fare un clone: Listing 8-1 git://github.com/symfony/symfony-docs.git A meno di non documentare una caratteristica aggiunta in Symfony.1, le modifiche vanno basate sul ramo.0, non sul ramo master. Per poterlo fare, eseguire un checkout del ramo.0 prima del prossimo passo: Listing $ git checkout.0 Quindi, creare un ramo dedicato per le proprie modifiche (per questioni organizzative): Listing $ git checkout -b miglioramenti_di_pippo_e_pluto Si possono ora eseguire le proprie modifiche in tale ramo. Quando si ha finito, fare il push di quest ramo nel proprio fork su GitHub e richiedere un pull. La richiesta di pull sarà tra il proprio ramo miglioramenti_di_pippo_e_pluto e il ramo master di symfony-docs. 1. Chapter 8: Contribuire alla documentazione 0

21 ../../_images/docs-pull-request.png Se le proprie modifiche sono basate sul ramo.0, occorre seguire il collegamento di modifica del commit e cambiare il ramo base GitHub spiega l'argomento in modo dettagliato, su richieste di pull. La documentazione di Symfony è rilasciata sotto licenza Creative Commons Attribuzione - Condividi allo stesso modo 3.0 Unported. Le modifiche appaiono sul sito symfony.com website non oltre 15 minuti dopo il merge della richiesta di pull nella documentazione. Si può verificare se le proprie modifiche non abbiano introdotto problemi di markup, guardando la pagina Errori di build della documentazione 3 (aggiornata ogni notte alle 3, quando il server ricostruisce la documentazione). Segnalare una problematica Il modo più semplice di contribuire è segnalando una problematica: un errore di battitura, un errore grammaticale, un bug nel codice di esempio, e così via Passi: Segnalare un bug attraverso il bug Tracker; (opzionale) Inviare una patch. Traduzione Leggere la documentazione apposita Chapter 8: Contribuire alla documentazione 1

22 Chapter 9 Formato della documentazione La documentazione di Symfony utilizza restructuredtext 1, che usa come linguaggio di markup Sphinx per la generazione dell'output (HTML, PDF,...). restructuredtext restructuredtext "è un sistema di analisi e una sintassi a marcatori facilmente leggibile, in testo semplice e WYSIWYG". Si può imparare di più su questa sintassi leggendo i documenti 3 di Symfony oppure leggendo restructuredtext Primer 4 nel sito web di Sphinx. Se si ha dimestichezza con Markdown, bisogna fare attenzione alle cose simili, ma differenti: Le liste cominciano all'inizio della riga (non hanno bisogno di indentazione) I blocchi di codice utilizzano i doppi apici (``come questi``). Sphinx Sphinx è un sistema di compilazione che aggiunge alcuni piacevoli strumenti per creare documentazione da documenti restructuredtext. Come tale, aggiunge nuove direttive e interpreta ruoli di testo definiti nel markup 5 standard rest. Colorazione della sintassi Tutti i blocchi di codice utilizzano PHP come linguaggio predefinito. È possibile cambiarlo con la direttiva code-block: Listing Chapter 9: Formato della documentazione

23 1 3.. code-block:: yaml { foo: bar, bar: { foo: bar, bar: baz } } Se il proprio codice PHP comincia con <?php, allora si avrà bisogno di utilizzare html+php come pseudolinguaggio: Listing code-block:: html+php <?php echo $this->foobar();?> La lista dei linguaggi supportati è disponibile nel sito di Pygments 6. Blocchi di configurazione Ogni volta che si mostra una configurazione, per mostrarla in tutti i formati supportati,bisogna utilizzare la direttiva configuration-block (PHP, YAML e XML): Listing configuration-block::.. code-block:: yaml # Configurazione in YAML.. code-block:: xml <!-- Configurazione in XML //-->.. code-block:: php // Configurazione in PHP Il precedente snippet rest mostra un blocco come di seguito: Listing # Configurazione in YAML Ecco la lista dei formati attualmente supportati: Formato markup html xml php yaml jinja html+jinja Mostrato HTML XML PHP YAML Twig Twig 6. Chapter 9: Formato della documentazione 3

24 Formato markup jinja+html php+html html+php ini php-annotations Mostrato Twig PHP PHP INI Annotazioni Test della documentazione Per fare un test della documentazione, prima di un commit: Installare Sphinx 7 ; Eseguire la preparazione rapida di Sphinx 8 ; Installare l'estensione configuration-block di Sphinx (vedere sotto); Eseguire make html e controllare l'html generato nella cartella build. Installare l'estensione configuration-block di Sphinx Scaricare l'estensione dal repository configuration-block 9 Copiare il file configurationblock.py nella cartella _exts della propria cartella dei sorgenti (in cui si trova conf.py) Aggiungere le righe seguenti al file conf.py: Listing #... sys.path.append(os.path.abspath('_exts')) # aggiunge PhpLexer from sphinx.highlighting import lexers from pygments.lexers.web import PhpLexer #... # aggiunge le estensioni alla lista di estensioni extensions = [..., 'sensio.sphinx.refinclude', 'sensio.sphinx.configurationblock', 'sensio.sphinx.phpcode'] # abilita la colorazione per il codice PHP non compreso tra ``<?php...?>`` lexers['php'] = PhpLexer(startinline=True) lexers['php-annotations'] = PhpLexer(startinline=True) # usa PHP come dominio primario primary_domain = 'php' # imposta url per collegamenti alle API api_url = 'http://api.symfony.com/master/%s' https://github.com/fabpot/sphinx-php Chapter 9: Formato della documentazione 4

Il test valuta la capacità di pensare?

Il test valuta la capacità di pensare? Il test valuta la capacità di pensare? Per favore compili il seguente questionario senza farsi aiutare da altri. Cognome e Nome Data di Nascita / / Quanti anni scolastici ha frequentato? Maschio Femmina

Dettagli

Manuale Per L utente. Versione 12

Manuale Per L utente. Versione 12 Manuale Per L utente Versione 12 Copyright ii Copyright 2012. Versione 12 Dragon NaturallySpeaking Professional Questa documentazione potrebbe non includere modifiche tecniche e/o revisioni del software

Dettagli

Codici sorgenti di esempio per l'invio di email da pagine WEB per gli spazi hosting ospitati presso ITESYS SRL.

Codici sorgenti di esempio per l'invio di email da pagine WEB per gli spazi hosting ospitati presso ITESYS SRL. Data: 8 Ottobre 2013 Release: 1.0-15 Feb 2013 - Release: 2.0 - Aggiunta procedura per inviare email da Windows con php Release: 2.1-20 Mar 2013 Release: 2.2-8 Ottobre 2013 - Aggiunta procedura per inviare

Dettagli

Virtualizzazione con Microsoft Tecnologie e Licensing

Virtualizzazione con Microsoft Tecnologie e Licensing Microsoft Virtualizzazione con Microsoft Tecnologie e Licensing Profile Redirezione dei documenti Offline files Server Presentation Management Desktop Windows Vista Enterprise Centralized Desktop Application

Dettagli

AMBIENTE DEV PASCAL. Dev-Pascal 1.9.2. Finestra di apertura

AMBIENTE DEV PASCAL. Dev-Pascal 1.9.2. Finestra di apertura Dev-Pascal 1.9.2 1 Dev-Pascal è un ambiente di sviluppo integrato per la programmazione in linguaggio Pascal sotto Windows prodotto dalla Bloodshed con licenza GNU e liberamente scaricabile al link http://www.bloodshed.net/dev/devpas192.exe

Dettagli

Energy risk management

Energy risk management Il sistema di supporto alle tue decisioni Energy risk management Un approccio orientato agli attori M.B.I. Srl, Via Francesco Squartini 7-56121 Pisa, Italia - tel. 050 3870888 - fax. 050 3870808 www.powerschedo.it

Dettagli

Che Cos'e'? Introduzione

Che Cos'e'? Introduzione Level 3 Che Cos'e'? Introduzione Un oggetto casuale e' disegnato sulla lavagna in modo distorto. Devi indovinare che cos'e' facendo click sull'immagine corretta sotto la lavagna. Piu' veloce sarai piu'

Dettagli

Traduzione di TeamLab in altre lingue

Traduzione di TeamLab in altre lingue Lingue disponibili TeamLab è disponibile nelle seguenti lingue nel mese di gennaio 2012: Traduzioni complete Lingue tradotte parzialmente Inglese Tedesco Francese Spagnolo Russo Lettone Italiano Cinese

Dettagli

SISSI IN RETE. Quick Reference guide guida di riferimento rapido

SISSI IN RETE. Quick Reference guide guida di riferimento rapido SISSI IN RETE Quick Reference guide guida di riferimento rapido Indice generale Sissi in rete...3 Introduzione...3 Architettura Software...3 Installazione di SISSI in rete...3 Utilizzo di SISSI in Rete...4

Dettagli

Web Conferencing Open Source

Web Conferencing Open Source Web Conferencing Open Source A cura di Giuseppe Maugeri g.maugeri@bembughi.org 1 Cos è BigBlueButton? Sistema di Web Conferencing Open Source Basato su più di quattordici componenti Open-Source. Fornisce

Dettagli

Informazioni su questo libro

Informazioni su questo libro Informazioni su questo libro Si tratta della copia digitale di un libro che per generazioni è stato conservata negli scaffali di una biblioteca prima di essere digitalizzato da Google nell ambito del progetto

Dettagli

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

Dettagli

UBUNTU SERVER. Installazione e configurazione di Ubuntu Server. M. Cesa 1

UBUNTU SERVER. Installazione e configurazione di Ubuntu Server. M. Cesa 1 UBUNTU SERVER Installazione e configurazione di Ubuntu Server M. Cesa 1 Ubuntu Server Scaricare la versione deisiderata dalla pagina ufficiale http://www.ubuntu.com/getubuntu/download-server Selezioniare

Dettagli

FileMaker Server 13. Guida introduttiva

FileMaker Server 13. Guida introduttiva FileMaker Server 13 Guida introduttiva 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker e Bento sono marchi

Dettagli

Zeroshell come client OpenVPN

Zeroshell come client OpenVPN Zeroshell come client OpenVPN (di un server OpenVpn Linux) Le funzionalità di stabilire connessioni VPN di Zeroshell vede come scenario solito Zeroshell sia come client sia come server e per scelta architetturale,

Dettagli

Analisi di massima: L utente dovrà inserire un numero limite, e tramite vari calcoli verrà stampato a video la sequenza.

Analisi di massima: L utente dovrà inserire un numero limite, e tramite vari calcoli verrà stampato a video la sequenza. Relazione tecnica Fibonacci ANDENA GIANMARCO Traccia: Creare un algoritmo che permetta, dato un valore intero e positivo, di stabilire la sequenza utilizzando la regola di fibonacci dei numeri fino al

Dettagli

FileMaker Server 12. Guida introduttiva

FileMaker Server 12. Guida introduttiva FileMaker Server 12 Guida introduttiva 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker,

Dettagli

e-spare Parts User Manual Peg Perego Service Site Peg Perego [Dicembre 2011]

e-spare Parts User Manual Peg Perego Service Site Peg Perego [Dicembre 2011] Peg Perego Service Site Peg Perego [Dicembre 2011] 2 Esegui il login: ecco la nuova Home page per il portale servizi. Log in: welcome to the new Peg Perego Service site. Scegli il servizio selezionando

Dettagli

Manuale di KDE su Geert Jansen Traduzione del documento: Dario Panico Traduzione del documento: Samuele Kaplun Traduzione del documento: Daniele Micci

Manuale di KDE su Geert Jansen Traduzione del documento: Dario Panico Traduzione del documento: Samuele Kaplun Traduzione del documento: Daniele Micci Geert Jansen Traduzione del documento: Dario Panico Traduzione del documento: Samuele Kaplun Traduzione del documento: Daniele Micci 2 Indice 1 Introduzione 5 2 Usare KDE su 6 3 Funzionamento interno 8

Dettagli

Modulo 2 - Appendice 3 L'editor vi e cenni su sed

Modulo 2 - Appendice 3 L'editor vi e cenni su sed 1 Modulo 2 - Appendice 3 L'editor vi e cenni su sed Laboratorio di Sistemi Operativi I Anno Accademico 2008-2009 Copyright 2005-2007 Francesco Pedullà, Massimo Verola Copyright 2001-2005 Renzo Davoli,

Dettagli

Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa

Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa di Ilaria Lorenzo e Alessandra Palma Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa Code::Blocks

Dettagli

Software 2. Classificazione del software. Software di sistema

Software 2. Classificazione del software. Software di sistema Software 2 Insieme di istruzioni e programmi che consentono il funzionamento del computer Il software indica all hardware quali sono le operazioni da eseguire per svolgere determinati compiti Valore spesso

Dettagli

Configurazione avanzata di IBM SPSS Modeler Entity Analytics

Configurazione avanzata di IBM SPSS Modeler Entity Analytics Configurazione avanzata di IBM SPSS Modeler Entity Analytics Introduzione I destinatari di questa guida sono gli amministratori di sistema che configurano IBM SPSS Modeler Entity Analytics (EA) in modo

Dettagli

sull argomento scelto ( evidenziare il testo passandoci sopra con il tasto sinistro del mouse e copiare premendo i tasti Ctrl + C )

sull argomento scelto ( evidenziare il testo passandoci sopra con il tasto sinistro del mouse e copiare premendo i tasti Ctrl + C ) This work is licensed under the Creative Commons Attribuzione - Non commerciale - Non opere derivate 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/.

Dettagli

APRS su Linux con Xastir, installazione dai sorgenti

APRS su Linux con Xastir, installazione dai sorgenti APRS su Linux con Xastir Installazione dai sorgenti L installazione di Xastir Per installare Xastir non è richiesto essere un guru di Linux, anche se una conoscenza minima della piattaforma è necessaria.

Dettagli

Mini manuale di Audacity.

Mini manuale di Audacity. Mini manuale di Audacity. Questo mini manuale è parte del corso on-line Usare il software libero di Altrascuola. Il corso è erogato all'interno del portale per l'e-learning Altrascuola con la piattaforma

Dettagli

LA PRIMA ESECUZIONE DI VIRTUALDJ

LA PRIMA ESECUZIONE DI VIRTUALDJ INDICE BENVENUTI 3 INSTALLAZIONE (PC) 4 INSTALLAZIONE (Mac) 5 LA PRIMA ESECUZIONE DI VIRTUALDJ 6 NOTE DI INSTALLAZIONE 7 REQUISITI DEL SISTEMA 9 INFORMAZIONI LEGALI (End User License Agreement EULA) 10

Dettagli

Web conferencing software. Massimiliano Greco - Ivan Cerato - Mario Salvetti

Web conferencing software. Massimiliano Greco - Ivan Cerato - Mario Salvetti 1 Web conferencing software Massimiliano Greco - Ivan Cerato - Mario Salvetti Arpa Piemonte 2 Che cosa è Big Blue Button? Free, open source, web conferencing software Semplice ed immediato ( Just push

Dettagli

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci Manuale di Remote Desktop Connection Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci 2 Indice 1 Introduzione 5 2 Il protocollo Remote Frame Buffer 6 3 Uso di Remote Desktop

Dettagli

MODULO DI ISCRIZIONE - ENROLMENT FORM

MODULO DI ISCRIZIONE - ENROLMENT FORM Under the Patronage of Comune di Portofino Regione Liguria 1ST INTERNATIONAL OPERA SINGING COMPETITION OF PORTOFINO from 27th to 31st July 2015 MODULO DI ISCRIZIONE - ENROLMENT FORM Direzione artistica

Dettagli

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it INTRODUZIONE, LINGUAGGIO, HANDS ON Giuseppe Cirillo g.cirillo@unina.it Il linguaggio C 1972-Dennis Ritchie 1978-Definizione 1990-ANSI C 1966 Martin Richars (MIT) Semplificando CPL usato per sviluppare

Dettagli

I.Stat Guida utente Versione 1.7 Dicembre 2010

I.Stat Guida utente Versione 1.7 Dicembre 2010 I.Stat Guida utente Versione 1.7 Dicembre 2010 1 Sommario INTRODUZIONE 3 I concetti principali di I.Stat 4 Organizzazione dei dati 4 Ricerca 5 GUIDA UTENTE 6 Per iniziare 6 Selezione della lingua 7 Individuazione

Dettagli

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1 Il gestionale come l'avete sempre sognato... Pag. 1 Le funzionalità di X-Cross La sofisticata tecnologia di CrossModel, oltre a permettere di lavorare in Internet come nel proprio ufficio e ad avere una

Dettagli

FileMaker Server 13. Pubblicazione Web personalizzata con PHP

FileMaker Server 13. Pubblicazione Web personalizzata con PHP FileMaker Server 13 Pubblicazione Web personalizzata con PHP 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker

Dettagli

P a s q u a l e t t i V e r o n i c a

P a s q u a l e t t i V e r o n i c a PHP: OOP Pasqualetti Veronica Oggetti Possiamo pensare ad un oggetto come ad un tipo di dato più complesso e personalizzato, non esistente fra i tipi tradizionali di PHP, ma creato da noi. 2 Gli oggetti

Dettagli

Gli Investitori Globali Ritengono che le Azioni Saranno La Migliore Asset Class Nei Prossimi 10 Anni

Gli Investitori Globali Ritengono che le Azioni Saranno La Migliore Asset Class Nei Prossimi 10 Anni é Tempo di BILANCI Gli Investitori Hanno Sentimenti Diversi Verso le Azioni In tutto il mondo c è ottimismo sul potenziale di lungo periodo delle azioni. In effetti, i risultati dell ultimo sondaggio di

Dettagli

Guida agli strumenti etwinning

Guida agli strumenti etwinning Guida agli strumenti etwinning Registrarsi in etwinning Prima tappa: Dati di chi effettua la registrazione Seconda tappa: Preferenze di gemellaggio Terza tappa: Dati della scuola Quarta tappa: Profilo

Dettagli

Introduzione a MySQL

Introduzione a MySQL Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da

Dettagli

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi alternative: function nome { lista-comandi } oppure nome ( ) {

Dettagli

MANUALE OPERATIVO PER L UTENTE DEL SISTEMA DI TICKETING OTRS

MANUALE OPERATIVO PER L UTENTE DEL SISTEMA DI TICKETING OTRS MANUALE OPERATIVO PER L UTENTE DEL SISTEMA DI TICKETING OTRS PER LA GESTIONE DELLE RICHIESTE RELATIVE ALL APPLICATIVO UGOV - CONTABILITÀ OTRS (Open-source Ticket Request System) e' un pacchetto software

Dettagli

WWW.TINYLOC.COM CUSTOMER SERVICE GPS/ RADIOTRACKING DOG COLLAR. T. (+34) 937 907 971 F. (+34) 937 571 329 sales@tinyloc.com

WWW.TINYLOC.COM CUSTOMER SERVICE GPS/ RADIOTRACKING DOG COLLAR. T. (+34) 937 907 971 F. (+34) 937 571 329 sales@tinyloc.com WWW.TINYLOC.COM CUSTOMER SERVICE T. (+34) 937 907 971 F. (+34) 937 571 329 sales@tinyloc.com GPS/ RADIOTRACKING DOG COLLAR MANUALE DI ISTRUZIONI ACCENSIONE / SPEGNERE DEL TAG HOUND Finder GPS Il TAG HOUND

Dettagli

Rilascio dei Permessi Volo

Rilascio dei Permessi Volo R E P U B L I C O F S A N M A R I N O C I V I L A V I A T I O N A U T H O R I T Y SAN MARINO CIVIL AVIATION REGULATION Rilascio dei Permessi Volo SM-CAR PART 5 Approvazione: Ing. Marco Conti official of

Dettagli

Ambienti di sviluppo integrato

Ambienti di sviluppo integrato Ambienti di sviluppo integrato Un ambiente di sviluppo integrato (IDE - Integrated Development Environment) è un ambiente software che assiste i programmatori nello sviluppo di programmi Esso è normalmente

Dettagli

Samsung Data Migration v2.6 Introduzione e Guida all'installazione

Samsung Data Migration v2.6 Introduzione e Guida all'installazione Samsung Data Migration v2.6 Introduzione e Guida all'installazione 2013. 12 (Revisione 2.6.) Esclusione di responsabilità legale SAMSUNG ELECTRONICS SI RISERVA IL DIRITTO DI MODIFICARE I PRODOTTI, LE INFORMAZIONI

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

How to Develop Accessible Linux Applications

How to Develop Accessible Linux Applications How to Develop Accessible Linux Applications Sharon Snider Copyright 2002 IBM Corporation v1.1, 2002-05-03 Diario delle Revisioni Revisione v1.1 2002-05-03 Revisionato da: sds Convertito in DocBook XML

Dettagli

Come recuperare il Citation Index di un articolo o di un autore: breve guida

Come recuperare il Citation Index di un articolo o di un autore: breve guida Come recuperare il Citation Index di un articolo o di un autore: breve guida A cura del Gruppo Informazione e comunicazione della Biblioteca Biomedica Redazione: Tessa Piazzini Premessa: Solitamente parlando

Dettagli

Il compilatore Dev-C++

Il compilatore Dev-C++ Il compilatore Dev-C++ A cura del dott. Marco Cesati 1 Il compilatore Dev-C++ Compilatore per Windows: http://www.bloodshed.net/devcpp.html Installazione Configurazione Utilizzazione 2 1 Requisiti di sistema

Dettagli

DEFT Zero Guida Rapida

DEFT Zero Guida Rapida DEFT Zero Guida Rapida Indice Indice... 1 Premessa... 1 Modalità di avvio... 1 1) GUI mode, RAM preload... 2 2) GUI mode... 2 3) Text mode... 2 Modalità di mount dei dispositivi... 3 Mount di dispositivi

Dettagli

Guida all'installazione di SLPct. Manuale utente. Evoluzioni Software www.evoluzionisoftware.it info@evoluzionisoftware.it

Guida all'installazione di SLPct. Manuale utente. Evoluzioni Software www.evoluzionisoftware.it info@evoluzionisoftware.it Guida all'installazione di SLPct Manuale utente Evoluzioni Software www.evoluzionisoftware.it info@evoluzionisoftware.it Premessa Il redattore di atti giuridici esterno SLpct è stato implementato da Regione

Dettagli

Integrated Development Environment (IDE) DevC++ 4.9.9.2

Integrated Development Environment (IDE) DevC++ 4.9.9.2 Integrated Development Environment (IDE) DevC++ 4.9.9.2 Manuale utente Data ultima revisione: 22/10/2008 Fondamenti di informatica Università Facoltà Corso di laurea Politecnico di Bari 1 a Facoltà di

Dettagli

Integrare le MFC con Irrlicht. Sezione 1: Creazione del progetto. by Raffaele White tiger Mancuso

Integrare le MFC con Irrlicht. Sezione 1: Creazione del progetto. by Raffaele White tiger Mancuso Integrare le MFC con Irrlicht by Raffaele White tiger Mancuso In questo topic spiegherò come integrare irrlicht in un documento singolo MFC *(1). Io ho usato il visual c++ 6 ma la procedura dovrebbe essere

Dettagli

Requisiti di sistema di Cisco WebEx Meetings Server

Requisiti di sistema di Cisco WebEx Meetings Server Prima pubblicazione: 21 Ottobre 2012 Ultima modifica: 21 Ottobre 2012 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 8 526-00 800

Dettagli

SERVER VIDEO 1-PORTA H.264

SERVER VIDEO 1-PORTA H.264 SERVER VIDEO 1-PORTA H.264 MANUALE UTENTE DN-16100 SALVAGUARDIA IMPORTANTE Tutti i prodotti senza piombo offerti dall'azienda sono a norma con i requisiti della legge Europea sulla restrizione per l'uso

Dettagli

I Valori del Manifesto Agile sono direttamente applicabili a Scrum:!

I Valori del Manifesto Agile sono direttamente applicabili a Scrum:! Scrum descrizione I Principi di Scrum I Valori dal Manifesto Agile Scrum è il framework Agile più noto. E la sorgente di molte delle idee che si trovano oggi nei Principi e nei Valori del Manifesto Agile,

Dettagli

AGGIORNAMENTO PROTOCOLLO VERSIONE 3.9.0

AGGIORNAMENTO PROTOCOLLO VERSIONE 3.9.0 AGGIORNAMENTO PROTOCOLLO VERSIONE 3.9.0 Con questo aggiornamento sono state implementate una serie di funzionalità concernenti il tema della dematerializzazione e della gestione informatica dei documenti,

Dettagli

Applicazione: Share - Sistema per la gestione strutturata di documenti

Applicazione: Share - Sistema per la gestione strutturata di documenti Riusabilità del software - Catalogo delle applicazioni: Gestione Documentale Applicazione: Share - Sistema per la gestione strutturata di documenti Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

ThemixInfo Gestione Informazione al Pubblico per Laboratori di analisi e Poliambulatori. Manuale d uso. themix Italia srl

ThemixInfo Gestione Informazione al Pubblico per Laboratori di analisi e Poliambulatori. Manuale d uso. themix Italia srl Gestione Informazione al Pubblico per Laboratori di analisi e Poliambulatori Manuale d uso Versione 08/07/2014 themix Italia srl tel. 06 35420034 fax 06 35420150 email info@themix.it LOGIN All avvio il

Dettagli

PRESENTAZIONE DI UN SMS AL GATEWAY

PRESENTAZIONE DI UN SMS AL GATEWAY Interfaccia Full Ascii Con questa interfaccia è possibile inviare i dati al Server utilizzando solo caratteri Ascii rappresentabili e solo i valori che cambiano tra un sms e l altro, mantenendo la connessione

Dettagli

GESTIRE LA BIBLIOGRAFIA

GESTIRE LA BIBLIOGRAFIA GESTIRE LA BIBLIOGRAFIA STRUMENTI DI GESTIONE BIBLIOGRAFICA I software di gestione bibliografica permettono di raccogliere, catalogare e organizzare diverse tipologie di materiali, prendere appunti, formattare

Dettagli

Manuale installazione DiKe Util

Manuale installazione DiKe Util Manuale installazione DiKe Util Andare sul sito Internet: www.firma.infocert.it Cliccare su software nella sezione rossa INSTALLAZIONE: comparirà la seguente pagina 1 Selezionare, nel menu di sinistra,

Dettagli

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java]

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java] Desideriamo realizzare una applicazione web che ci consenta di calcolare il fattoriale di un numero. L'esercizio in sé non particolarmente difficile, tuttavia esso ci consentirà di affrontare il problema

Dettagli

Iphone e Zimbra 7 FOSS Edition: Mail, Contatti ed Agenda

Iphone e Zimbra 7 FOSS Edition: Mail, Contatti ed Agenda Iphone e Zimbra 7 FOSS Edition: Mail, Contatti ed Agenda mailto:beable@beable.it http://www.beable.it 1 / 33 Questo tutorial è rilasciato con la licenza Creative Commons Attribuzione-Non commerciale-non

Dettagli

Il Form C cartaceo ed elettronico

Il Form C cartaceo ed elettronico Il Form C cartaceo ed elettronico Giusy Lo Grasso Roma, 9 luglio 2012 Reporting DURANTE IL PROGETTO VENGONO RICHIESTI PERIODIC REPORT entro 60 giorni dalla fine del periodo indicato all Art 4 del GA DELIVERABLES

Dettagli

INTERNET e RETI di CALCOLATORI A.A. 2014/2015 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam.

INTERNET e RETI di CALCOLATORI A.A. 2014/2015 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam. Laurea in INFORMATICA INTERNET e RETI di CALCOLATORI A.A. 2014/2015 Capitolo 4 Dynamic Host Configuration Protocol fausto.marcantoni@unicam.it Prima di iniziare... Gli indirizzi IP privati possono essere

Dettagli

Abstract Data Type (ADT)

Abstract Data Type (ADT) Abstract Data Type Pag. 1/10 Abstract Data Type (ADT) Iniziamo la nostra trattazione presentando una nozione che ci accompagnerà lungo l intero corso di Laboratorio Algoritmi e Strutture Dati: il Tipo

Dettagli

INSTALLAZIONE E UTILIZZO DEL COMPILATORE Code::Blocks 8.02

INSTALLAZIONE E UTILIZZO DEL COMPILATORE Code::Blocks 8.02 INSTALLAZIONE E UTILIZZO DEL COMPILATORE Code::Blocks 8.02 Download Si può scaricare gratuitamente la versione per il proprio sistema operativo (Windows, MacOS, Linux) dal sito: http://www.codeblocks.org

Dettagli

8. L'USO DEL PROGRAMMA DI POSTA ELETTRONICA INSIEME ALLA GESTIONE PROFESSIONALE DI DOCUMENTI IN FORMATO E-MAIL

8. L'USO DEL PROGRAMMA DI POSTA ELETTRONICA INSIEME ALLA GESTIONE PROFESSIONALE DI DOCUMENTI IN FORMATO E-MAIL This project funded by Leonardo da Vinci has been carried out with the support of the European Community. The content of this project does not necessarily reflect the position of the European Community

Dettagli

Basi di Dati. S Q L Lezione 5

Basi di Dati. S Q L Lezione 5 Basi di Dati S Q L Lezione 5 Antonio Virdis a.virdis@iet.unipi.it Sommario Gestione eventi Gestione dei privilegi Query Complesse 2 Esercizio 9 (lezione 4) Indicare nome e cognome, spesa e reddito annuali

Dettagli

OCS in un ora. Introduzione a Open Conference Systems Versione 2.0. OCS in un ora. Ultimo aggiornamento: dicembre 2007

OCS in un ora. Introduzione a Open Conference Systems Versione 2.0. OCS in un ora. Ultimo aggiornamento: dicembre 2007 Introduzione a Open Conference Systems Versione 2.0 Ultimo aggiornamento: dicembre 2007 1 Open Conference Systems è un iniziativa di ricerca sviluppata dal Public Knowledge Project dell Università della

Dettagli

5 cabins (1 main deck+ 4 lower deck) Legno: essenza di rovere naturale Rigatino Wood: striped oak

5 cabins (1 main deck+ 4 lower deck) Legno: essenza di rovere naturale Rigatino Wood: striped oak Tipo: Type: 5 cabine (1 main deck+ 4 lower deck) 5 cabins (1 main deck+ 4 lower deck) Legno: essenza di rovere naturale Rigatino Wood: striped oak Tessuti: Dedar Fanfara, Paola Lenti Fabrics: Dedar Fanfara,

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

FileMaker Server 13. Guida di FileMaker Server

FileMaker Server 13. Guida di FileMaker Server FileMaker Server 13 Guida di FileMaker Server 2010-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker e Bento sono

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Boot Camp Guida di installazione e configurazione

Boot Camp Guida di installazione e configurazione Boot Camp Guida di installazione e configurazione Indice 3 Introduzione 4 Panoramica dell'installazione 4 Passo 1: Verificare la presenza di aggiornamenti 4 Passo 2: Per preparare il Mac per Windows 4

Dettagli

Agilent OpenLAB Chromatography Data System (CDS)

Agilent OpenLAB Chromatography Data System (CDS) Agilent OpenLAB Chromatography Data System (CDS) EZChrom Edition e ChemStation Edition Requisiti hardware e software Agilent Technologies Informazioni legali Agilent Technologies, Inc. 2013 Nessuna parte

Dettagli

Guida alla WebMail Horde

Guida alla WebMail Horde Guida alla WebMail Horde La funzione principale di un sistema Webmail è quella di gestire la propria posta elettronica senza dover utilizzare un programma client installato sul computer. Il vantaggio è

Dettagli

Documentazione tecnica

Documentazione tecnica Documentazione tecnica Come spedire via Post 1.1) Invio di Loghi operatore 1.2) Invio delle Suonerie (ringtone) 1.3) Invio di SMS con testo in formato UNICODE UCS-2 1.4) Invio di SMS multipli 1.5) Simulazione

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

Come installare e configurare il software FileZilla

Come installare e configurare il software FileZilla Come utilizzare FileZilla per accedere ad un server FTP Con questo tutorial verrà mostrato come installare, configurare il software e accedere ad un server FTP, come ad esempio quello dedicato ai siti

Dettagli

Antonio Valle a a Istituto di Zoologia e Anatomia Comparata. To link to this article: http://dx.doi.org/10.1080/11250005109439140

Antonio Valle a a Istituto di Zoologia e Anatomia Comparata. To link to this article: http://dx.doi.org/10.1080/11250005109439140 This article was downloaded by: [178.63.86.160] On: 14 August 2015, At: 03:03 Publisher: Taylor & Francis Informa Ltd Registered in England and Wales Registered Number: 1072954 Registered office: 5 Howick

Dettagli

CONFIGURAZIONE DEI SERVIZI (seconda parte)

CONFIGURAZIONE DEI SERVIZI (seconda parte) Corso ForTIC C2 LEZIONE n. 10 CONFIGURAZIONE DEI SERVIZI (seconda parte) WEB SERVER PROXY FIREWALL Strumenti di controllo della rete I contenuti di questo documento, salvo diversa indicazione, sono rilasciati

Dettagli

Funzioni di base. Manualino OE6. Outlook Express 6

Funzioni di base. Manualino OE6. Outlook Express 6 Manualino OE6 Microsoft Outlook Express 6 Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito,

Dettagli

Termini di servizio di Comunicherete

Termini di servizio di Comunicherete Termini di servizio di Comunicherete I Servizi sono forniti da 10Q Srls con sede in Roma, Viale Marx n. 198 ed Ancitel Spa, con sede in Roma, Via Arco di Travertino n. 11. L utilizzo o l accesso ai Servizi

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

Dettagli

Setup e installazione

Setup e installazione Setup e installazione 2 Prima di muovere i primi passi con Blender e avventurarci nel vasto mondo della computer grafica, dobbiamo assicurarci di disporre di due cose: un computer e Blender. 6 Capitolo

Dettagli

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO... Modulo A Programmiamo in Pascal Unità didattiche 1. Installiamo il Dev-Pascal 2. Il programma e le variabili 3. Input dei dati 4. Utilizziamo gli operatori matematici e commentiamo il codice COSA IMPAREREMO...

Dettagli

Guida ai Servizi Internet per il Referente Aziendale

Guida ai Servizi Internet per il Referente Aziendale Guida ai Servizi Internet per il Referente Aziendale Indice Indice Introduzione...3 Guida al primo accesso...3 Accessi successivi...5 Amministrazione dei servizi avanzati (VAS)...6 Attivazione dei VAS...7

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

Outlook Express 6 Microsoft Internet Explorer, Avvio del programma Creare un nuovo account

Outlook Express 6 Microsoft Internet Explorer, Avvio del programma Creare un nuovo account Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito, semplice da utilizzare e fornisce

Dettagli

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone SQL: il DDL Parti del linguaggio SQL Definizione di basi di dati (Data Definition Language DDL) Linguaggio per modificare

Dettagli

Zabbix 4 Dummies. Dimitri Bellini, Zabbix Trainer Quadrata.it

Zabbix 4 Dummies. Dimitri Bellini, Zabbix Trainer Quadrata.it Zabbix 4 Dummies Dimitri Bellini, Zabbix Trainer Quadrata.it Relatore Nome: Biografia: Dimitri Bellini Decennale esperienza su sistemi operativi UX based, Storage Area Network, Array Management e tutto

Dettagli

bla bla SERVER OPEN-XCHANGE OXtender per il lavoro in mobilità

bla bla SERVER OPEN-XCHANGE OXtender per il lavoro in mobilità bla bla SERVER OPEN-XCHANGE OXtender per il lavoro in mobilità SERVER OPEN-XCHANGE SERVER OPEN-XCHANGE: OXtender per il lavoro in mobilità Pubblicato giovedì, 10. maggio 2012 Versione 6.20.4 Diritto d'autore

Dettagli

I file di dati. Unità didattica D1 1

I file di dati. Unità didattica D1 1 I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità

Dettagli

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli

Guida rapida Vodafone Internet Key K4607-Z. Progettata da Vodafone

Guida rapida Vodafone Internet Key K4607-Z. Progettata da Vodafone Guida rapida Vodafone Internet Key K4607-Z Progettata da Vodafone Benvenuti nel mondo della comunicazione in mobilità 1 Benvenuti 2 Impostazione della Vodafone Internet Key 4 Windows 7, Windows Vista,

Dettagli

Guida alla scansione su FTP

Guida alla scansione su FTP Guida alla scansione su FTP Per ottenere informazioni di base sulla rete e sulle funzionalità di rete avanzate della macchina Brother, consultare la uu Guida dell'utente in rete. Per ottenere informazioni

Dettagli

Installazione ed attivazione della "SUITE OFFIS" versione SERVER

Installazione ed attivazione della SUITE OFFIS versione SERVER Installazione ed attivazione della "SUITE OFFIS" versione SERVER Premessa La versione server di OFFIS può essere installata e utilizzata indifferentemente da PC/Win o Mac/Osx e consente l'accesso contemporaneo

Dettagli