Aggiornamento a Delphi XE4 A chi è rivolto Il corso si rivolge a tutti i programmatori e analisti che hanno utilizzato una versione di Delphi precedente alla XE3. Verranno analizzate, tutte le migliorie introdotte in Delphi dalla versione 7 alla versione XE4. Esercizi pratici illustreranno come utilizzare ogni nuova caratteristica di Delphi XE3 allo scopo di migliorare la produttività, la qualità, la robustezza e l eleganza del codice. Particolare attenzione sarà rivolta al mostrare come le nuove caratteristiche del linguaggio e dell'ambiente permettano di risparmiare tempo e denaro. Obiettivi Acquisire una solida conoscenza teorica e pratica dei nuovi costrutti e caratteristiche del linguaggio dell ultima versione di Delphi. Capire Unicode Utilizzare i tool di terze parti inclusi nell ambiente Semplificare la programmazione multithreading Conoscere FireMonkey e le potenzialità crossplatform di Delphi Lo sviluppo per MacOSX Acquisire familiarità con Firemonkey e Visual LiveBindings Capire come separare le responsabilità all'interno del codice Conoscere a fondo DataSnap e i Mobile Connectors per dispositivi mobili Durata Docente 3 giorni Prezzo 900 Prerequisiti Marco Cotroneo, Salvatore Sparacino, Daniele Teti Conoscenza anche basilare di OOP e Delphi 7 o superiore Contenuti Unicode Che cosa è Unicode? Lo standard per tutti! I tipi di stringhe Unicode; Char, AnsiChar, String, AnsiString I formati Unicode Page 1 of 5
UTF-8, UTF-16, UTF-32 Tipi stringhe custom; RawByteString; Conversione tra tipi di stringhe; UTF-8 conversion functions; Stream e Encoding Character unit; TCharacter class; String e UnicodeString; Struttura interna dei tipi Strings Aggiornamento a Unicode; Unicode Tricks and tips Generics Cosa sono i generics? Sintassi e scenari di utilizzo Creare un tipo generic Il supporto nella RTL Generics e Generics.Collections Compatibilità tra tipi Classi con i Generics Constraints Class Costraints Interface Costraints Generic Containers Capire Tlist, Tqueue, Tstack, TDictionary Containers and anonymous methods Generics Interfaces Utilizzare TComparer e TEqualityComparer ANONYMOUS METHODS Cosa sono gli anonymous methods? Cosa sono le closure? Sintassi e semantica; Page 2 of 5
Utilizzare gli anonymous methods come variabili Anonymous methods come parametric; Anonymous methods e variabili locali (visibilità e durata); Value e reference types; Anonymous methods e threads RTTI Extended RTTI RTTI Unit Serializzazione Marshal e unmarshal dei tipi JSON Utilizzo del parser integrato Esempi pratici di utilizzo LIVEBINDINGS Cosa sono e come utilizzarli Concetti di base Il designer QuickBindings I tipi di binding quick Prototipare velocemente interfaccie grafiche Casi pratici d'uso Formattazione personalizzata Capire a fondo il framework I componenti a supporto TAdapterBindSource TPrototypeBindSource TBindSourceDB TBindSourceDBX TBindingList TBindNavigator Sviluppare AdapterSource tipizzati Estendere i livebindings Page 3 of 5
DATASNAP Sviluppo di server TCP e HTTP Console application Windows Service ISAPI DLL Filtri Lightweight callbacks Heavyweight callbacks TOUCH e GESTURE DATASET e DBEXPRESS THREADING Synchronization e anonymous methods Debugging threads Threads Visualizer Naming Threads Thread Sincronization TCricalSections TEvent Thread Messages TMonitor Freezing e Throwing dei thread Anonymous threads RTL Deprecated directive Exception class e InnerException TStringBuilder I/O La unit IOUtils IDE Project Options; Project Manager Project Configuration Manager; Page 4 of 5
Deploy Manager IDE Insight Code Formatting GenDocCli AuditsCli REGULAR EXPRESSIONS Cosa sono? Quando usarle? Come usarle SUBVERSION INTEGRATION Utilizzare l integrazione di subversion dall IDE di Delphi Analizzare il codice di VersionInsight e pianificare l integrazione per un proprio VCS AQTIME Profilare e ottimizzare il codice Delphi CODESITE Cosa è? Come usarlo Come estenderlo I nuovi driver dbexpress Firebird, SQLite Page 5 of 5