Professional PHP Refactoring

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Professional PHP Refactoring"

Transcript

1 Professional PHP Refactoring by Francesco Trucchia (Ideato srl), Enrico Zimuel (Zend Technologies srl)

2 Ci presentiamo... Francesco Trucchia, CTO di Ideato srl Fondatore di Ideato srl, esperto di sviluppo software PHP tramite metodologie agili PHP 5.3 Certified Engineer Co-autore del libro Pro PHP Refactoring Apress edizioni (2010) Enrico Zimuel, Senior Consultant & Architect di Zend Technologies srl Software engineer dal 1996 con più di 10 anni di esperienza nello sviluppo in PHP PHP 5 Certified Engineer, Zend Framework Certified Engineer

3 Sommario PHP Refactoring Quando il codice puzza Il refactoring: cos'è, quando e perchè Le regole I test automatici Gli strumenti Le tecniche Zend Studio per il Refactoring Funzionalità specifiche per il Refactoring Demo

4 PHP Refactoring

5 Ideato srl, solution partner Zend Esperti nello sviluppo e integrazione di applicazioni e servizi web 2.0 Il team di sviluppo supporta l'intero processo di realizzazione di nuove idee per il web Il nostro processo produttivo si fonda sui principi del manifesto agile per lo sviluppo del software Dal 2010 è Solution Partner di Zend Technologies in Italia

6 Quando il codice puzza Non riesci a capire o seguire le logiche del codice? Ci sono troppi commenti inline dentro il codice? Hai paura di aggiungere nuove funzionalità temendo il bug? Ti perdi tra migliaglia di righe di codice? Il codice è procedurale? Se puzza, cambialo! - Kent Back's grandmother

7 I cattivi odori più famosi (bad smells) Codice duplicato Raggruppamenti di dati Metodi lunghi Classi larghe Lunghe liste di parametri Cambiamenti divergenti Overhead di design Ossessione di chiamate primitive Molta logica condizionale Classi oziose Generalizzazioni inutili Variabili di appoggio o temporanee Commenti

8 Che cos'è il refactoring Il refactoring è la tecnica attraverso la quale si cambia la struttura interna del software senza modificarne il comportamento esterno

9 Perchè dovrei fare refactoring (1) In un sistema isolato l'entropia è una funzione non decrescente nel tempo (II legge termodinamica) in altre parole tutti i processi in cui è richiesta energia, come quelli chimici, fisici ecc., subiscono una riduzione di attività se isolati e se non vi sono nuovi apporti energetici

10 Perchè dovrei fare refactoring (2) Migliora il design del software Semplifica la comprensione del software Aiuta a scovare bug Aumenta la produttiva del team

11 Quando devo fare refactoring Quando duplico codice (la regola dei tre) Quando aggiungo funzionalità Quando correggo un bug

12 Le regole Test first Piccole e semplici modifiche Non cambiare mai il comportamento Segui i cattivi odori Segui le tecniche

13 Perchè testare il software? Perchè... il debug costa ci dobbiamo difendere dall'evoluzione caotica migliora la comunicazione aumenta il feedback incoraggia il cambiamento aumenta la fiducia del team

14 Test automatici Test unitari: confermano che le singole righe di codice computino il corretto output quando viene passato un input ben definito. Test funzionali: testano l'esperienza utente e ne verificano il corretto funzionamento.

15 Gli strumenti

16 Come scegliere l'ide Capacità automatica di: rinominare parametri, metodi e classi spostare parametri, metodi classi incapsulare i parametri di classi in setter e getter

17 PHPUnit per i test unitari E' un framework della famiglia xunit che permette di testare in maniera unitaria il codice PHP Caratteristiche: Testare il database Usare mock object per testare classi indipendentemente Organizzare i test in suite e gruppi Filtrare i test che si vogliono lanciare Eseguire azioni custom all'inizio e alla fine di ogni test Loggare il risultato dei test in vari formati Integrare i test con software di terze parti (Hudson, Apache Maven, Cruise Control, ecc.)

18 Selenium per i test funzionali Selenium è un framework multipiattaforma per testare l'esperienza utente (e non solo) su applicazioni web. Selenium fornisce più strumenti: Selenium IDE Selenium RC Selenium Grid PHPUnit si integra con Selenium

19 Le tecniche

20 Le tecniche Ci sono più di 50 differenti tecniche di refactoring Ogni tecnica offre una soluzione chiara e a piccoli passi ad un problema di design Le tecniche dovrebbero essere eseguite come dei kata Il kata aiuta ad automatizzare azioni sequenziali

21 Le tecniche servono a Sistemare il comportamento Cambiare la responsabilità delle classi Razionalizzare i dati Semplificare le logiche condizionali Semplificare le interfacce Semplificare le relazioni tra classi Trasformare codice procedurale ad oggetti

22 Estarre una classe Cambiare la responsabilità delle classi Problema: Abbiamo una classe che ha responsabilità di più classi Soluzione: Creiamo una nuova classe e spostiamo le proprietà ed i metodi che non appartengono alla classe origine nella nuova classe Meccanismo: Creiamo un test unitario per la classe origine Decidiamo quale proprietà e/o metodo estrarre Creiamo un nuovo test unitario per la nuova classe Creiamo la nuova classe Nel costruttore della classe origine, creiamo un'istanza della nuova classe assegnandola ad una proprietà già esistente o ad una nuova Usiamo il metodo sposta i parametri per spostare ogni proprietà nella nuova classe Usiamo il metodo sposta i metodi per spostare ogni metodo nella nuova classe Decidiamo come esporre la nuova classe attraverso la classe origine

23 Scomporre la logica condizionale Semplificare le logiche condizionali Problema: abbiamo una dichiarazione condizionale complessa (if/else) Soluzione: Estraiamo la condizione in metodi Estraiamo la parte if e poi la parte else Meccanismo: Estrai la condizione in un metodo privato Estrai i branch condizionali in altri metodi privati

24 Zend Studio per il Refactoring

25 Zend Studio 8 E' un IDE professionale per lo sviluppo di applicazioni PHP E' un IDE basato sul progetto Eclipse Agile development Eclipse plug-in Multipiattaforma: Windows, Linux, Mac Os X

26 Zend Studio 8: alcune caratteristiche PHP Editor e File Manager Supporto Javascript, CSS, HTML Debug (anche Javascript), Profiling Supporto sistemi remoti e Virtual Machine Integrazione con PHPUnit e PHPDoc Generatore di codice PHP Source Control (CVS, SVN, Local History, Team) Database connectivity Integrazione Zend Framework Integrazione con Zend Server

27 Zend Studio per il Refactoring PHP In Place Refactoring capacità di rinominare variabili durante l'editing Estrarre variabili/metodi Muovere file/directory Rinominare classi, funzioni e variabili Profiling con funzione di code coverage per determinare le porzioni di codice PHP eseguite a run-time

28 Demo Demo di Zend Studio per il Refactoring

29 Riferimenti Pro PHP Refactoring Francesco Trucchia, Jacopo Romei (Apress 2010) Alcuni strumenti: PHPUnit, Selenium, Zend Studio,

30 Grazie! Per maggiori informazioni:

La strada per sviluppare più rapidamente: Unit Test & Continuous Integration

La strada per sviluppare più rapidamente: Unit Test & Continuous Integration La strada per sviluppare più rapidamente: Unit Test & Continuous Integration by Enrico Zimuel Senior Consultant & Architect Zend Technologies Email: enrico.z@zend.com Blog: http://www.zimuel.it/blog Copyright

Dettagli

Giuseppe Capizzi. Ambienti di sviluppo Open Source

Giuseppe Capizzi. Ambienti di sviluppo Open Source Giuseppe Capizzi Ambienti di sviluppo Open Source Stanchi del solito editor? IDE (Integrated Development Environment, Ambiente di Sviluppo Integrato) Editor Sistema di build Debugger Test Controllo di

Dettagli

Corso Online Analista Programmatore Microsoft

Corso Online Analista Programmatore Microsoft Corso Online Analista Programmatore Microsoft We Train Italy info@wetrainitaly.it Programma Generale del Corso Analista Programmatore Microsoft Tematiche di Base Modulo Uno Le basi della programmazione

Dettagli

Velocizzare l'esecuzione di Joomla! con Zend Server Community Edition

Velocizzare l'esecuzione di Joomla! con Zend Server Community Edition Velocizzare l'esecuzione di Joomla! con Zend Server Community Edition Enrico Zimuel Senior Consultant & Architect Zend Technologies enrico@zend.com Sommario Zend Server Community Edition (CE) Perchè eseguire

Dettagli

lem logic enterprise manager

lem logic enterprise manager logic enterprise manager lem lem Logic Enterprise Manager Grazie all esperienza decennale in sistemi gestionali, Logic offre una soluzione modulare altamente configurabile pensata per la gestione delle

Dettagli

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Web PHP Tematiche Trattate

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Concetti di Java, parte 2 Ing. Giuseppe D'Aquì Testi Consigliati Java ( R. Liguori, P. Liguori), O'Reilly Hops Tecniche Nuove (2008) Java Tutorials [http://download.oracle.com/javase/tutorial/java/]

Dettagli

fabrizio@akebia.it Fabrizio Caccavello APP NO GRAZIE, LUNGA VITA A RESPONSIVE DESIGN cfabry cfabry Fabrizio Caccavello

fabrizio@akebia.it Fabrizio Caccavello APP NO GRAZIE, LUNGA VITA A RESPONSIVE DESIGN cfabry cfabry Fabrizio Caccavello Fabrizio Caccavello Nella Pubblica Amministrazione il ricorso alla costruzione di applicazioni per dispositivi mobili sembra essere diventato un elemento primario nelle strategie per la fornitura di servizi

Dettagli

Progetto ittorario Anno scol. 2013-2014

Progetto ittorario Anno scol. 2013-2014 PROGETTO ittorario Scopo: Creazione di una pagina web che mostri l orario di un docente, della classe della materia o dell aula a discrezione dell utente. Sviluppatori: Progetto sviluppato dalla classe

Dettagli

Ingegneria del Software 1: Eclipse

Ingegneria del Software 1: Eclipse Ingegneria del Software 1: Eclipse Da completare entro Aprile 21, 2015 Srđan Krstić and Marco Scavuzzo 1 Contents 1 Introduzione 3 1.1 Java (JRE vs JDK).......................................... 3 1.2

Dettagli

Velocizzare l'esecuzione di Joomla! con Zend Server Community Edition

Velocizzare l'esecuzione di Joomla! con Zend Server Community Edition Velocizzare l'esecuzione di Joomla! con Zend Server Community Edition Enrico Zimuel Senior Consultant & Architect Zend Technologies enrico@zend.com 9 Ottobre 2010 JoomlaDay Verona Sommario Zend Server

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Installazione SOFTWARE JDK ECLIPSE 03/03/2011 2 ALGORITMI E PROGRAMMI PROBLEMA ALGORITMO PROGRAMMA metodo risolutivo linguaggio di

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

Test e collaudo del software Continuous Integration and Testing

Test e collaudo del software Continuous Integration and Testing Test e collaudo del software Continuous Integration and Testing Relatore Felice Del Mauro Roma, Cosa è la Continuous Integration A software development practice where members of a team integrate their

Dettagli

Ambienti di Sviluppo

Ambienti di Sviluppo Ambienti di Sviluppo Insieme omogeneo di strumenti adatti allo sviluppo di progetti software. Editor; Compilatori e/o interpreti; Strumenti di test; Applicazioni che permettono di editare / disegnare il

Dettagli

Metodologie di programmazione in Fortran 90

Metodologie di programmazione in Fortran 90 Metodologie di programmazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2007/2008 Fortran 90: Metodologie di programmazione DIS - Dipartimento di

Dettagli

Corso Analista Programmatore Microsoft. Corso Analista Programmatore Microsoft Programma

Corso Analista Programmatore Microsoft. Corso Analista Programmatore Microsoft Programma Corso Analista Programmatore Microsoft Programma 2 OBIETTIVI E MODALITA DI FRIUZIONE E VALUTAZIONE 2.1 Obiettivo e modalità di fruizione L obiettivo del corso è di fornire tecniche e metodologie per svolgere

Dettagli

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida Breve introduzione curata da Alessandro Benedetti Struts2-Introduzione e breve guida 22-11- 2008 1 Struts 2 Costruisci,attiva e mantieni! Apache Struts 2 è un framework elegante ed estensibile per creare

Dettagli

FINALMENTE SUL TREPPIEDE WINDOWS con PREGEO, AutoCAD, PFCAD e tutto quello che serve per la massima autonomia ed efficienza in campagna.

FINALMENTE SUL TREPPIEDE WINDOWS con PREGEO, AutoCAD, PFCAD e tutto quello che serve per la massima autonomia ed efficienza in campagna. Tel. 045 797 1883 337501210 337 486191 - Fax 045 4859389 1 YES, WE CAN! LA TUA STAZIONE TOTALE HA UNA BUONA OTTICA E MECCANICA, MA HAI PROBLEMI A REGISTRARE I DATI? TI PIACEREBBE AVERE IN TEMPO REALE LA

Dettagli

Alma Mater Studiorum Università di Bologna. Controllo di versione. S. Golovchenko (UNIBO) INGEGNERIA DEI SISTEMI SOFTWARE 2015 1 / 18

Alma Mater Studiorum Università di Bologna. Controllo di versione. S. Golovchenko (UNIBO) INGEGNERIA DEI SISTEMI SOFTWARE 2015 1 / 18 Alma Mater Studiorum Università di Bologna Controllo di versione 2015 S. Golovchenko (UNIBO) INGEGNERIA DEI SISTEMI SOFTWARE 2015 1 / 18 Sviluppo collaborativo Organizzazione del processo di sviluppo Per

Dettagli

Servizio Monitoraggio Energia via Web. CEAM CWS32-H01 Professional Web Platform

Servizio Monitoraggio Energia via Web. CEAM CWS32-H01 Professional Web Platform Servizio Monitoraggio Energia via Web CEAM CWS32-H01 Professional Web Platform Cosa è CWS32-H01 Piattaforma Tecnologica Web Modulare Multifunzionale per il Monitoraggio, Telecontrollo Gestione Manutenzione,

Dettagli

FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!)

FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!) Panoramica sul Web design: FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!) FASE 2: Definire se lavorare su un CMS (es Joomla, Wordpress,

Dettagli

Le novità di QuarkXPress 10.1

Le novità di QuarkXPress 10.1 Le novità di QuarkXPress 10.1 INDICE Indice Le novit di QuarkXPress 10.1...3 Nuove funzionalit...4 Guide dinamiche...4 Note...4 Libri...4 Redline...5 Altre nuove funzionalit...5 Note legali...6 ii LE NOVITÀ

Dettagli

Autori. Per cominciare. Si seleziona il titolo dell articolo dall elenco di submissions di cui correggere le bozze.

Autori. Per cominciare. Si seleziona il titolo dell articolo dall elenco di submissions di cui correggere le bozze. Si seleziona il titolo dell articolo dall elenco di submissions di cui correggere le bozze. Le versioni HTML e PDF sono disponibili nella sezioni Layout. Le istruzioni sul proofreading sono collegate attraverso

Dettagli

Codifica: dal diagramma a blocchi al linguaggio C++

Codifica: dal diagramma a blocchi al linguaggio C++ Codifica: dal diagramma a blocchi al linguaggio C++ E necessario chiarire inizialmente alcuni concetti. La compilazione Il dispositivo del computer addetto all esecuzione dei programmi è la CPU La CPU

Dettagli

Introduzione al Simple Cloud API

Introduzione al Simple Cloud API Introduzione al Simple Cloud API by Enrico Zimuel Senior Consultant & Architect Zend Technologies enrico@zend.com Mi presento Dal 2008 Senior Consultant e Architect presso Zend Technologies Software Engineer

Dettagli

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse Prova Finale a.a. 2011/2012 Laboratorio 1: Introduzione a Java e Eclipse 1 Java 6 Standard Edition Linguaggio Java (... (javac, Tool di sviluppo Librerie per l'interfaccia grafica Librerie di base Macchina

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Librerie fondamentali Ing. Giuseppe D'Aquì Testi Consigliati Eclipse in Action (David Gallardo, Ed Burnette and Robert McGovern), Manning (2003) JUnit Cookbook [http://junit.sourceforge.net/doc/cookbook/cookbook.htm]

Dettagli

LEZIONE 3. Il pannello di amministrazione di Drupal, configurazione del sito

LEZIONE 3. Il pannello di amministrazione di Drupal, configurazione del sito LEZIONE 3 Il pannello di amministrazione di Drupal, configurazione del sito Figura 12 pannello di controllo di Drupal il back-end Come già descritto nella lezione precedente il pannello di amministrazione

Dettagli

LA FORZA DELLA SEMPLICITÀ. Business Suite

LA FORZA DELLA SEMPLICITÀ. Business Suite LA FORZA DELLA SEMPLICITÀ Business Suite LA MINACCIA È REALE Le minacce online alla tua azienda sono reali, qualunque cosa tu faccia. Chiunque abbia dati o denaro è un bersaglio. Gli incidenti relativi

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Dettagli

http://dtco.it Remote Download (DLD ) veloce, comodo ed economico Trasferimento wireless tramite WLAN / GPRS

http://dtco.it Remote Download (DLD ) veloce, comodo ed economico Trasferimento wireless tramite WLAN / GPRS http://dtco.it Remote Download ( ) veloce, comodo ed economico Trasferimento wireless tramite WLAN / GPRS Requisiti per l utilizzo del Short Range Wide Range Un computer in sede con una connessione di

Dettagli

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template. I TEMI PREDEFINITI (TEMPLATE) Scelta del tema I temi predefiniti di wordpress sono la base di un sito che usa un utente che per ragioni pratiche o per incapacità non può creare un sito usando solo codice

Dettagli

2008 Corso Base Programmazione Web in ambiente Linux

2008 Corso Base Programmazione Web in ambiente Linux 2008 Corso Base Programmazione Web in ambiente Linux Come funziona il web (server web client browser) Come e' scritta una pagina web (HTML) Cosa sono i fogli di stile (CSS) A cosa serve il php A cosa servono

Dettagli

YOUR EASY SOLUTION FOR COSTING

YOUR EASY SOLUTION FOR COSTING YOUR EASY SOLUTION FOR COSTING INNOVAZIONE TECNOLOGICA CHE SEMPLIFICA I PROCESSI AZIENDALI Hyperlean nasce dall intuizione di sei giovani ricercatori del Dipartimento di Meccanica (ora Dipartimento di

Dettagli

Iniziamo la panoramica sul funzionamento dell'svn sulla suite S.A.

Iniziamo la panoramica sul funzionamento dell'svn sulla suite S.A. Tutorial utilizzo SVN su piattaforma S.A. Uno dei requisiti principali dello sviluppo di progetti in Team è la necessità di avere uno spazio nel quale condividere il progetto con tutti i TeamMates. Subversion

Dettagli

RADAR. Raccolta e Analisi Dati per Attribuzione Rating

RADAR. Raccolta e Analisi Dati per Attribuzione Rating RADAR Raccolta e Analisi Dati per Attribuzione Rating RADAR è un software di supporto alla direzione aziendale e a chiunque voglia tenere sotto controllo l andamento dell azienda con l ausilio di indicatori

Dettagli

WORD 97 SCRIVERE UNA TESI DI LAUREA

WORD 97 SCRIVERE UNA TESI DI LAUREA WORD 97 SCRIVERE UNA TESI DI LAUREA PASSO 1 Per prima cosa pensiamo al formato generale della pagina: i margini richiesti da una tesi sono quasi sempre più ampi di quelli di un testo normale. Apriamo ora

Dettagli

Joomla! 2.5:Utenti e permessi - Il wiki di Joomla.it

Joomla! 2.5:Utenti e permessi - Il wiki di Joomla.it Pagina 1 di 6 Joomla! 2.5:Utenti e permessi Da Il wiki di Joomla.it. Traduzione (http://cocoate.com/it/j25it/utenti) dal libro Joomla! 2.5 - Beginner's Guide (http://cocoate.com/j25/users-permissions)

Dettagli

BiblioTech - Personal Digital Library

BiblioTech - Personal Digital Library Albana Gaba Alessandro Pegoraro Mirco Bocedi Fabio Giuseppe Strozzi Gruppo 8 Obiettivo Creare un software efficiente per la catalogazione di documenti digitali in categorie personalizzabili dall utente.

Dettagli

Mida Directory. Introduzione. Mida Directory

Mida Directory. Introduzione. Mida Directory Mida Directory Introduzione MidaDirectory è un applicazione XML per telefoni Cisco, che consente la gestione della rubrica aziendale su display telefonico. Essa permette di consultare i contatti aziendali

Dettagli

Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2.

Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2. Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2.0 ver 1.0 del 19/03/2013 Nettuno Solutions s.r.l. Viale

Dettagli

Associazione Culturale VERDEBINARIO

Associazione Culturale VERDEBINARIO Ing. Villella Giovanni aka vilgio[bighat] Mail : villella.giovanni@gmail.com Cell : 3293827027 www.giovannivillella.it Un BLOB-G? IL BLOB : Il termine Blob, che in inglese significa "massa priva di forma

Dettagli

La VPN con il FRITZ!Box Parte I. La VPN con il FRITZ!Box Parte I

La VPN con il FRITZ!Box Parte I. La VPN con il FRITZ!Box Parte I La VPN con il FRITZ!Box Parte I 1 Introduzione In questa mini-guida illustreremo come realizzare un collegamento tramite VPN(Virtual Private Network) tra due FRITZ!Box, in modo da mettere in comunicazioni

Dettagli

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli

Pieces of Technology at your service. dottesttm

Pieces of Technology at your service. dottesttm Pieces of Technology at your service dottesttm DOTNET - AUTOMATIZZAZIONE DELL ANALISI STATICA, CODE REVIEW, TEST UNIT dottest è una soluzione di test di sviluppo integrato per automatizzare una vasta gamma

Dettagli

Basi Android. Android si definisce open. Con8ene tecnologie open source. Il codice di Android è open. Licenza Open Source Apache 2.

Basi Android. Android si definisce open. Con8ene tecnologie open source. Il codice di Android è open. Licenza Open Source Apache 2. Basi Android 1 Android Cosa è Android? Android è un insieme di strumen8 e librerie per sviluppare applicazioni mobili è più di un SO Android si definisce open Con8ene tecnologie open source Linux Il codice

Dettagli

Programmazione Java Avanzata Spring - JDBC

Programmazione Java Avanzata Spring - JDBC Programmazione Java Avanzata Spring - JDBC Ing. Gianluca Caminiti Riferimenti Spring http://www.springsource.org/ (scaricate il reference) Beginning Spring 2 - From Novice to Professional. APress. 2008

Dettagli

Soluzioni per l'integrazione e l'accesso alle informazioni. Visus RAD. Andrea Rocchini

Soluzioni per l'integrazione e l'accesso alle informazioni. Visus RAD. Andrea Rocchini Soluzioni per l'integrazione e l'accesso alle informazioni Visus RAD Andrea Rocchini Obbiettivo Raccogliere, elaborare e distribuire informazioni in modo diretto, puntuale e capillare E' lo scopo ultimo

Dettagli

Cap. 3. APERTURA NUOVO PROGETTO

Cap. 3. APERTURA NUOVO PROGETTO GUIDA ALL USO DI CSM.1 Cap. 3. APERTURA NUOVO PROGETTO 1 3.1 Inizio della procedura 3. PERCORSO: APERTURA NUOVO PROGETTO/CORSI Dopo essersi iscritti ed avere inserito i dati inerenti l Agenzia / Ente di

Dettagli

P. zza XXV Aprile 14 21028 Borgomanero (NO) Tel. 0322 836487 0322 834765 fax 0322 836608 www.skynet-srl.com info@skynet-srl.com.

P. zza XXV Aprile 14 21028 Borgomanero (NO) Tel. 0322 836487 0322 834765 fax 0322 836608 www.skynet-srl.com info@skynet-srl.com. P. zza XXV Aprile 14 21028 Borgomanero (NO) Tel. 0322 836487 0322 834765 fax 0322 836608 www.skynet-srl.com info@skynet-srl.com - SkyNet Srl - Il gestionale sempre con te Finalmente un prodotto che unisce

Dettagli

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1 Tutorial Configuration Managment Configurare il servizio EC2 su AWS Pagina 1 Sommario 1. INTRODUZIONE... 3 2. PROGRAMMI NECESSARI... 4 3. PANNELLO DI CONTROLLO... 5 4. CONFIGURARE E LANCIARE UN ISTANZA...

Dettagli

Dal software al CloudWare

Dal software al CloudWare Dal software al CloudWare La tecnologia del cloud computing ha raggiunto ormai una maturità e una affidabilità tali da offrire risorse inimmaginabili rispetto all attuale sistema client/server. 3ware ha

Dettagli

Poca documentazione: uso di Story Card e CRC (Class Responsibility Collabor) Collaborazione con il cliente rispetto alla negoziazione dei contratti

Poca documentazione: uso di Story Card e CRC (Class Responsibility Collabor) Collaborazione con il cliente rispetto alla negoziazione dei contratti Sviluppo Agile [Cockburn 2002] Extreme Programming (XP) [Beck 2000] Sono più importanti auto-organizzazione, collaborazione, comunicazione tra membri del team e adattabilità del prodotto rispetto ad ordine

Dettagli

Alfa Layer S.r.l. Via Caboto, 53 10129 Torino ALFA PORTAL

Alfa Layer S.r.l. Via Caboto, 53 10129 Torino ALFA PORTAL ALFA PORTAL La struttura e le potenzialità della piattaforma Alfa Portal permette di creare, gestire e personalizzare un Portale di informazione in modo completamente automatizzato e user friendly. Tramite

Dettagli

STRUMENTI DI PRESENTAZIONE MODULO 6

STRUMENTI DI PRESENTAZIONE MODULO 6 STRUMENTI DI PRESENTAZIONE MODULO 6 2012 A COSA SERVE POWER POINT? IL PROGRAMMA NASCE PER LA CREAZIONE DI PRESENTAZIONI BASATE SU DIAPOSITIVE (O LUCIDI) O MEGLIO PER PRESENTARE INFORMAZIONI IN MODO EFFICACE

Dettagli

Manuale di Aggiornamento BOLLETTINO. Rel. 5.20.1H4. DATALOG Soluzioni Integrate a 32 Bit

Manuale di Aggiornamento BOLLETTINO. Rel. 5.20.1H4. DATALOG Soluzioni Integrate a 32 Bit Manuale di Aggiornamento BOLLETTINO Rel. 5.20.1H4 DATALOG Soluzioni Integrate a 32 Bit - 2 - Manuale di Aggiornamento Sommario 1 2 PER APPLICARE L AGGIORNAMENTO... 3 1.1 Aggiornamento Patch Storica...

Dettagli

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server

Dettagli

Homebrewing Manager Ver 1.1 Maggio 2013 Powered by BiloGe

Homebrewing Manager Ver 1.1 Maggio 2013 Powered by BiloGe Homebrewing Manager Ver 1.1 Maggio 2013 Powered by BiloGe Cosa è BrewOnline? E' uno strumento gratuito per l'hobby dell'home brewing Proprio così, BrewOnline ti offre tutto quello che ti serve, per avere

Dettagli

Antivirus. Lezione 07. A cosa serve un antivirus

Antivirus. Lezione 07. A cosa serve un antivirus Lezione 07 Antivirus A cosa serve un antivirus Un antivirus è un programma studiato per cercare tramite una scansione nel sistema in cui è installato la presenza di virus. La funzionalità di un antivirus

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

Dettagli

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012 Fondamenti di informatica Oggetti e Java ottobre 2012 1 JUnit JUnit è uno strumento per assistere il programmatore Java nel testing JUnit consente di scrivere test di oggetti e classi Java i test sono

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

Indice PARTE PRIMA L INIZIO 1

Indice PARTE PRIMA L INIZIO 1 Indice Introduzione XIII PARTE PRIMA L INIZIO 1 Capitolo 1 Esplorare il World Wide Web 3 1.1 Come funziona il World Wide Web 3 1.2 Browser Web 10 1.3 Server Web 14 1.4 Uniform Resource Locators 15 1.5

Dettagli

Laboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE

Laboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE Programmare in Php con Xampp e NetBeans IDE NetBeans è un IDE ben noto ai programmatori Java. Con esso si possono infatti costruire applicazioni desktop professionali dotate di interfaccia grafica, applicazioni

Dettagli

La manutenzione come elemento di garanzia della sicurezza di macchine e impianti

La manutenzione come elemento di garanzia della sicurezza di macchine e impianti La manutenzione come elemento di garanzia della sicurezza di macchine e impianti Alessandro Mazzeranghi, Rossano Rossetti MECQ S.r.l. Quanto è importante la manutenzione negli ambienti di lavoro? E cosa

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

Il sistema informatico di trasmissione e analisi dei dati

Il sistema informatico di trasmissione e analisi dei dati PIANO TRIENNALE PER IL CONTROLLO E LA VALUTAZIONE DI EVENTUALI EFFETTI DERIVANTI DALL UTILIZZAZIONE DEI PRODOTTI FITOSANITARI SUI COMPARTI AMBIENTALI VULNERABILI Il sistema informatico di trasmissione

Dettagli

Processo di Sviluppo delle Applicazioni

Processo di Sviluppo delle Applicazioni Processo di Sviluppo delle Applicazioni La realizzazione di un applicazione come Vivere Ateneo App Domenico Zarcone Ognuno ha il suo ambiente Quali sono gli ambienti integrati di sviluppo più utilizzati?

Dettagli

Installazione & Configurazione Php e MySQL su Mac Os X. Php

Installazione & Configurazione Php e MySQL su Mac Os X. Php Installazione & Configurazione Php e MySQL su Mac Os X Php PHP è un linguaggio di scripting interpretato, con licenza Open Source, originariamente concepito per la realizzazione di pagine web dinamiche.

Dettagli

la tua presenza e il tuo BUSINESS ON-LINE

la tua presenza e il tuo BUSINESS ON-LINE LINEA58 è una soluzione nata per gestire la tua presenza e il tuo BUSINESS ON-LINE Gestione totale dei contenuti Aggiornamento del sito in tempo reale Autonomia completa Estrema semplicità d'uso Sito multilingua

Dettagli

uadro Soluzione software e hardware Per le rilevazione presenze Gestione Aziendale Fa quadrato attorno alla tua azienda

uadro Soluzione software e hardware Per le rilevazione presenze Gestione Aziendale Fa quadrato attorno alla tua azienda Fa quadrato attorno alla tua azienda Per le rilevazione presenze Perché scegliere Q Rilevazione Presenze? Si tratta di un sistema completo di software e hardware per realtà che intendono automatizzare

Dettagli

Certiquality Aumenta la Customer Interaction del

Certiquality Aumenta la Customer Interaction del CASE STUDY Certiquality Aumenta la Customer Interaction del 70% con SugarCRM OPENSYMBOL PERSONALIZZA SUGAR PER IL NUOVO DIPARTIMENTO DI CUSTOMER CARE Certiquality, eccellente organismo di certificazione

Dettagli

Manuale d uso [Rev.1 del 07/08/2015] Manutenzione caldaie Lite Ver. 1.0.6 [05/01/2015]

Manuale d uso [Rev.1 del 07/08/2015] Manutenzione caldaie Lite Ver. 1.0.6 [05/01/2015] Manuale d uso [Rev.1 del 07/08/2015] Manutenzione caldaie Lite Ver. 1.0.6 [05/01/2015] Realizzato e distribuito da LeggeraSoft Sommario Introduzione... 2 Installare il programma... 2 Tasto licenza... 3

Dettagli

Presentazione Data Base

Presentazione Data Base Presentazione Data Base Ovvero: il paradigma LAPM (Linux - Apache - PHP - mysql) come supporto Open Source ad un piccolo progetto di Data Base relazionale, e tipicamente ad ogni applicazione non troppo

Dettagli

ORACOLO Gestione questionari.

ORACOLO Gestione questionari. ORACOLO Gestione questionari. Oracolo è un software di gestione questionari e test nato per raccolta dati ad uso scientifico. Oracolo è adatto a raccogliere dati su questionari personalizzabili di qualunque

Dettagli

MANUALE UTENTE INFOCAR REPAIR ACCESSO SMARTPHONE/TABLET

MANUALE UTENTE INFOCAR REPAIR ACCESSO SMARTPHONE/TABLET ACCESSO SMARTPHONE/TABLET Sommario PRIMO ACCESSO SMARTPHONE/TABLET... 3 GUIDA INSTALLAZIONE APP INFOCAR REPAIR IPHONE-IPAD... 3 GUIDA PRIMO ACCESSO APP... 8 GUIDA ALL UTILIZZO APP... 11 2 PRIMO ACCESSO

Dettagli

itime Chiaramente inclusa la stampa del cartellino presenze come previsto dalle normative

itime Chiaramente inclusa la stampa del cartellino presenze come previsto dalle normative itime itime Il software di rilevazione presenze itime rappresenta lo strumento ideale per l automatizzazione della gestione del personale. L ampia presenza dei parametri facilita l operatore nel controllo

Dettagli

BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D

BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software BDX 3D Editor è un programma che permette di navigare ed editare texture in un qualsiasi modello 3D.E compatibile con i software in grado di esportare

Dettagli

SOLUZIONI INFORMATICHE PER LO STUDIO LEGALE

SOLUZIONI INFORMATICHE PER LO STUDIO LEGALE SOLUZIONI INFORMATICHE PER LO STUDIO LEGALE Nekte Srl Viale Gran Sasso, 10-20131 Milano Tel. 02 29521765 - Fax 02 29532131 info@nekte.it www.nekte.it L IMPORTANZA DI CONOSCERE I PROFESSIONISTI Nekte ha

Dettagli

Analisi e utilizzo di un framework per lo sviluppo di applicazioni web

Analisi e utilizzo di un framework per lo sviluppo di applicazioni web tesi di laurea Anno Accademico 2011/2012 relatore Ch.mo prof. Marcello Cinque correlatore Ing. Fabio De Paolis candidato Michele Basile Matr. 534/3239 Web Development Frameworks Nella realizzazione di

Dettagli

Corso Eclipse. Prerequisiti. 1 Introduzione

Corso Eclipse. Prerequisiti. 1 Introduzione Corso Eclipse 1 Introduzione 1 Prerequisiti Uso elementare del pc Esecuzione ricerche su Internet Esecuzione download Conoscenza elementare della programmazione 2 1 Cos è Eclipse Eclipse è un IDE (Integrated

Dettagli

IceWarp Server 11.2 Novità per l amministratore. Leggere il presente documento prima dell aggiornamento. www.icewarp.it

IceWarp Server 11.2 Novità per l amministratore. Leggere il presente documento prima dell aggiornamento. www.icewarp.it Leggere il presente documento prima dell aggiornamento. www.icewarp.it Avviso di aggiornamento di Outlook Sync La versione 11.2 migliora la gestione degli inviti alle riunioni. Essi vengono adesso creati

Dettagli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione

Dettagli

ACQUISIZIONE DATI DI PRODUZIONE SISTEMA PDA

ACQUISIZIONE DATI DI PRODUZIONE SISTEMA PDA PRIMA FASE UTENTE: Ufficio tecnico MODULO: Stesura ciclo di Lavorazione ACQUISIZIONE DATI DI PRODUZIONE SISTEMA PDA NC S.r.l. www.n-c.it 0362-931294 sales@n-c.it Il Pacchetto PDA è il nuovo prodotto NC,

Dettagli

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo Sistema Operativo Fondamenti di Informatica 1 Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al

Dettagli

ammesso solo con il tuo consenso. Le modifiche apportate hanno lo scopo di semplificare il controllo di quali

ammesso solo con il tuo consenso. Le modifiche apportate hanno lo scopo di semplificare il controllo di quali CHE COSA SONO I COOKIES E COME LI UTILIZZIAMO Un cookie è un semplice file di testo che viene memorizzato sul tuo computer o dispositivo mobile dal server di un sito web e che solo quel server sarà in

Dettagli

Apprendere la matematica: dal problema al modello e dal modello all astrazione

Apprendere la matematica: dal problema al modello e dal modello all astrazione Apprendere la matematica: dal problema al modello e dal modello all astrazione Segui l evento su Twitter @DeAScuola hashtag ufficiale: #RTMatematica Coding in classe con Scratch Relatore: Andrea Ferraresso

Dettagli

Manuale d uso [Rev.1 del 07/08/2015] Manutenzione impianti termici Ver. 1.0.6 [05/01/2015]

Manuale d uso [Rev.1 del 07/08/2015] Manutenzione impianti termici Ver. 1.0.6 [05/01/2015] Manuale d uso [Rev.1 del 07/08/2015] Manutenzione impianti termici Ver. 1.0.6 [05/01/2015] Realizzato e distribuito da LeggeraSoft Sommario Introduzione... 2 Installare il programma... 2 Tasto licenza...

Dettagli

Raggruppamenti Conti Movimenti

Raggruppamenti Conti Movimenti ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli

Dettagli

Mon Ami 3000 Multimagazzino Gestione di più magazzini fisici e/o logici

Mon Ami 3000 Multimagazzino Gestione di più magazzini fisici e/o logici Prerequisiti Mon Ami 3000 Multimagazzino Gestione di più magazzini fisici e/o logici L opzione Multimagazzino è disponibile per le versioni Azienda Light e Azienda Pro. Introduzione L opzione Multimagazzino

Dettagli

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass 0_Iniziare con GRASS Avvio di Grass e creazione della cartella del Database di GRASS Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Dettagli

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo Creazione di moduli Creazione di moduli Che cos'è un modulo? Un elenco di domande accompagnato da aree in cui è possibile scrivere le risposte, selezionare opzioni. Il modulo di un sito Web viene utilizzato

Dettagli

Vodafone Device Manager. La soluzione Vodafone per gestire Smartphone e Tablet aziendali in modo semplice e sicuro

Vodafone Device Manager. La soluzione Vodafone per gestire Smartphone e Tablet aziendali in modo semplice e sicuro La soluzione Vodafone per gestire Smartphone e Tablet aziendali in modo semplice e sicuro In un mondo in cui sempre più dipendenti usano smartphone e tablet per accedere ai dati aziendali, è fondamentale

Dettagli

Mac Application Manager 1.3 (SOLO PER TIGER)

Mac Application Manager 1.3 (SOLO PER TIGER) Mac Application Manager 1.3 (SOLO PER TIGER) MacApplicationManager ha lo scopo di raccogliere in maniera centralizzata le informazioni piu salienti dei nostri Mac in rete e di associare a ciascun Mac i

Dettagli

Software per Helpdesk

Software per Helpdesk Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella

Dettagli

Database Manager Guida utente DMAN-IT-01/09/10

Database Manager Guida utente DMAN-IT-01/09/10 Database Manager Guida utente DMAN-IT-01/09/10 Le informazioni contenute in questo manuale di documentazione non sono contrattuali e possono essere modificate senza preavviso. La fornitura del software

Dettagli

Introduzione. Installare EMAS Logo Generator

Introduzione. Installare EMAS Logo Generator EMAS Logo Generator Indice Introduzione... 3 Installare EMAS Logo Generator... 3 Disinstallare EMAS Logo Generator... 4 Schermata iniziale... 5 Creare il Logo... 7 Impostazioni... 7 Colore...8 Lingua del

Dettagli

Apache 2, PHP5, MySQL 5

Apache 2, PHP5, MySQL 5 Installazione di Apache 2, PHP5, MySQL 5 Corso Interazione Uomo Macchina AA 2005/2006 Installazione e Versioni Considerazione le versioni più recenti dei vari software così da poterne sperimentare le caratteristiche

Dettagli

Installazione del Software. per lo Sviluppo di Applicazioni Java

Installazione del Software. per lo Sviluppo di Applicazioni Java Installazione del Software per lo Sviluppo di Applicazioni Java Ing. Luca Ferrari ferrari.luca@unimore.it Tel. 0592056142 Installazione del Software per lo Sviluppo di Applicazioni Java 1 Il Compilatore

Dettagli