C# 4. Guida completa per lo sviluppatore

Documenti analoghi
C# 5 Guida completa per lo sviluppatore

Visual Basic Guida completa per lo sviluppatore

Visual Basic 2012 Guida completa per lo sviluppatore

Container di dati: DataSet e DataTable 175 Conclusioni 176 Capitolo 10 Data Control e Databinding 177

ASP.NET 3.5 per tutti Daniele Bochicchio Cristian Civera Riccardo Golia Stefano Mostarda ISBN:

ASP.NET 4.0 in C# e VB. Guida completa per lo sviluppatore

Corso Online Analista Programmatore Microsoft

DA DEFINIRE Sede del corso: Presso GI Formazione in Piazza IV novembre 5, Milano Orari dalle 9.00 alle e dalle alle 18.

CORSO DI PROGRAMMAZIONE JAVA

Sviluppare applicazioni per Windows 8 con XAML, C# e VB

INTRODUZIONE AD ASP.NET

Indice Configurazione di PHP Test dell ambiente di sviluppo 28

Corso Analista Programmatore Microsoft. Corso Analista Programmatore Microsoft Programma

Sviluppare applicazioni per Windows 8 con HTML e JavaScript

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Agenda. DBS01 Reports for your app: Reporting Services pros and cons. Gestione del ciclo di vita di un report ARCHITETTURA REPORTING SERVICES

PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base Variabili, operatori e commenti Array...

Settimana I...1. Giorno 1 - Introduzione all XSLT...3

Corso Microsoft Corso Online Analista Programmatore Microsoft

OBIETTIVI SPECIFICI DI APPRENDIMENTO

INDICE. Indice. Introduzione

Analista Programmatore su Tecnologie Microsoft

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

Indice generale. Introduzione...xi. Gli autori...xv. Che cos è un server PostgreSQL...1

Al giorno d oggi, i sistemi per la gestione di database

Novità di Visual Studio 2008

Indice generale. Ringraziamenti...xi. Introduzione...xv. Capitolo 1 Tweet di benvenuto in ios Programmazione in ios...23

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

Indice. Introduzione PARTE PRIMA PHP: I FONDAMENTI

Sviluppare applicazioni per Windows Phone

Le novità di SharePoint 2010 per sviluppatori

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni

Il.NET Framework. By Dario Maggiari. L architettura del.net Framework è riassunta, nel complesso, nella figura seguente:

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Oggetto: MASTER DI ALTA FORMAZIONE PROFESSIONALE IN PROGRAMMATORE JAVA PARTECIPAZIONE GRATUITA

Introduzione alle applicazioni di rete

POR Calabria FSE 2007/2013 Asse II Occupabilità Obiettivo operativo D1

SOFTWARE DEVELOPMENT JUNIOR SPECIALIST

Università degli Studi di Bologna Bologna, 12/12/2002 Corso di Laurea In Informatica. Alessandro Valenti. Sessione II

SQL Server Integration Services. SQL Server 2005: ETL - 1. Integration Services Project

Indice. Introduzione. PARTE PRIMA PHP: i fondamenti 1

Siti web centrati sui dati (Data-centric web applications)

Ottimizzazione dello sviluppo software con Microsoft Visual Studio 2008

Indice. Introduzione. Capitolo 1

SQL Server Introduzione all uso di SQL Server e utilizzo delle opzioni Olap. Dutto Riccardo - SQL Server 2005.

Software di gestione della stampante

Indice generale. Introduzione...xv. Parte I Per iniziare Capitolo 1 Introduzione allo sviluppo ios con tecnologie web...3

Uso del computer e gestione dei file. Elaborazione testi. Foglio elettronico. Strumenti di presentazione

Sommario. UNO Computer essentials Computer e dispositivi Desktop, icone, impostazioni 22

RenderCAD S.r.l. Formazione

LICEO SCIENTIFICO "LEONARDO DA VINCI" - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Prof Miritello Rita

Rich Media Communication Using Flash CS5

19. LA PROGRAMMAZIONE LATO SERVER

Capitolo 1 Familiarizzare con C# 1

Introduzione a Windows XP Professional Installazione di Windows XP Professional Configurazione e gestione di account utente

Applicazioni web centrati sui dati (Data-centric web applications)

Il seguente Syllabus è relativo al Modulo 7, Reti informatiche, e fornisce i fondamenti per il test di tipo pratico relativo a questo modulo

Manuale utente Volta Control

SQL Server Integration Services. Integration Services Project

4 Data Transformation Services

Programma del Corso per Segretaria d Azienda:

Training sulle soluzioni SAP BusinessObjects BI4

CORSI DI FORMAZIONE AMMEGA.IT. Formazione informatica di base IC 3 /MOS.

Sommario. Introduzione... 11

20. Appunti sulle liste (gestione in linguaggio C#) 16/04/2015 Arraylist

Introduzione Il programma di formazione base di Movicon prevede la disponibilità di nr. 10 moduli, così suddivisibili:

Introduzione allo sviluppo per SharePoint

Indice PARTE PRIMA L INIZIO 1

DBORED - Oracle Report Developer 10g: Costruire Report (5 gg)

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

sito web sito Internet

PROGRAMMA DEL CORSO OFFICE BASE (48 ORE)

INTRODUZIONE AL FRAMEWORK.NET

Informatica - Office

Introduzione all elaborazione di database nel Web

Corso di Alfabetizzazione Informatica

SOMMarIO INIZIARE. iii. Adobe dreamweaver CS5 ClASSroom in A book

Indice generale. Parte I Le nozioni di base Introduzione...xiii. Presentazione Capitolo 1 Un po di teoria...11

IL SISTEMA APPLICATIVO WORD

MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML

Indice. Indice V. Introduzione... XI

La Skills Card relativa alle certificazioni Nuova ECDL è svincolata dalla singola certificazione.

Visual Basic.NET La Gestione degli Errori di Federico BARBATI

Prova di informatica & Laboratorio di Informatica di Base

L architettura del sistema può essere schematizzata in modo semplificato dalla figura che segue.

Il Web-Service SDMX dell ISTAT

Introduzione a.net (2)

Percorso Formativo SAP per IMPIEGATO SAP TECNICO-INFORMATICO Programmazione-Analisi- Progetti

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO

SOMMARIO INTRODUZIONE...XV CAPITOLO 1: PRESENTAZIONE...1 CAPITOLO 2: FONDAMENTI DI JAVA...39

Piano didattico. Disporre il testo in colonne. Modificare l aspetto di un grafico

Indice generale. Introduzione. Parte I Panoramica generale. Capitolo 1 L ambiente di lavoro... 3

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

Introduzione a.net con C#

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011.

Indice Introduzione Elementi di base dei database Il linguaggio SQL (Structured Query Language)

A chi si rivolge: Programma: Office Automation

Indice. Prefazione alla seconda edizione italiana XVII. Introduzione. Parte 1 Introduzione all UML e all UP 1

PROGRAMMA DEL CORSO WEB GRAPHIC DESIGNER

Transcript:

C# 4. Guida completa per lo sviluppatore Daniele Bochicchio, Cristian Civera, Marco De Sanctis, Alessio Leoncini, Marco Leoncini, Riccardo Golia, Stefano Mostarda Hoepli (2010) http://books.aspitalia.com/csharp-4/ Contenuti del libro Per chi è questo libro Convenzioni Materiale di supporto ed esempi Requisiti software per gli esempi Contatti con l editore Contatti, domande agli autori ASPItalia.com, LINQItalia.com, SilverlightItalia.com e WinFXItalia.com XVII XVII XVIII XVIII XVIII XIX XIX XXI Gli autori XXIII Capitolo 1 - Introduzione al.net Framework 1 Cos è il.net Framework 1 I componenti del.net Framework 2 Il Common Language Runtime (CLR) 4 Il concetto di codice managed 6 Il Common Type System 7 Common Language Specification 7

La Cross-Language Interoperability 9 Tipi di valore e tipi di riferimento 9 Conversioni tra tipi, boxing e unboxing 10 La gestione della memoria: il Garbage Collector 10 Il concetto di Assembly 12 Interoperabilità tra.net Framework e COM 14 Conclusioni 15 Capitolo 2 - Visual Studio 2010 17 L IDE di Visual Studio 2010 17 Text Editor, designer e Intellisense 18 Toolbox 20 Property Editor 20 Altre aree dell IDE 21 Creare un progetto 22 Il multi-targeting del.net Framework in Visual Studio 22 Il conversion wizard 23 Il concetto di progetto e soluzione 24 Gestire soluzione e progetto 24 Aggiungere un progetto alla soluzione 24 Gestione delle referenze 25 Gestione di directory nella solution 26 Gestione del codice sorgente 26 Compilare un progetto 27 Gestire le configurazioni 28 Debug di un progetto 29 Usare il debugger 29 Breakpoint e watch 30 Intellitrace e historical debug 31 Tool di refactoring 32 Conclusioni 34 Capitolo 3 - Sintassi di base 35 Introduzione al linguaggio 35 Commenti 37 Tipi di base 38

Namespace 39 Dichiarazione di variabili 40 Espressioni e operatori 42 Conversione dei tipi 44 Array 45 Enumerazioni 46 Funzioni e procedure 47 Istruzioni di selezione 50 Istruzione if 50 Istruzione switch 51 Operatore condizionale 51 Istruzioni d iterazione 52 Istruzione while 52 Istruzione do...while 53 Istruzione for 53 Istruzione foreach 54 Istruzioni di salto 54 Istruzione break 54 Istruzione continue 55 Istruzione return 55 Istruzione goto 56 Conclusioni 56 Capitolo 4 - Programmazione orientata agli oggetti 57 Principi fondamentali di OOP 58 Ereditarietà 58 Polimorfismo 59 Incapsulamento 59 Classi 59 Membri di una classe 60 Livelli di accessibilità 61 Creazione delle istanze di classe 62 Classi statiche e parziali 65 Ereditarietà e polimorfismo 68 Interfacce 71 Strutture 72

Regole di nomenclatura 74 Conclusioni 75 Capitolo 5 - Collection e Generics 77 Introduzione alle collection 77 La classe Arraylist 78 Dizionari in.net tramite la classe Hashtable 80 Le interfacce in System.Collections 82 Ulteriori tipologie di collection 84 I Generics e la tipizzazione forte 85 Le collezioni generiche 86 La lista nel mondo dei generics: List<T> 86 Le interfacce nelle collezioni generiche 88 Un dizionario fortemente tipizzato: Dictionary<TKey, TValue> 89 Una collection con elementi univoci: HashSet<T> 90 Altre tipologie di collezioni generiche 91 Creazione di tipi generici 92 Impostare dei vincoli sul tipo generico 93 Un particolare tipo generico: Nullable<T> 94 Assegnazioni tra tipi generici: covarianza e controvarianza 95 Creazione di interfacce covarianti e controvarianti 97 Conclusioni 98 Capitolo 6 - Delegate ed Eventi 99 I Delegate nel.net Framework 99 Definizione e utilizzo di un delegate 100 Modello a oggetti dei delegate 102 Combinazione di delegate: la classe MulticastDelegate 104 Cenni sull esecuzione asincrona di un delegate 106 I delegate e i generics 108 Anonymous method e lambda expression 109 I delegate come strumento di notifica: gli eventi 111 Definizione e uso di un evento in un oggetto 112 Creare eventi personalizzati 114 Scambiare dati tramite eventi: la classe EventArgs e le sue derivate 114 Definizione esplicita di eventi 117 Conclusioni 118 Capitolo 7 - Approfondimento del linguaggio 119

Gestione delle eccezioni 119 Gli errori prima del.net Framework 119 Gestione strutturata degli errori tramite le exception 120 La classe System.Exception 122 Realizzare custom exception 123 Lavorare con le eccezioni nel codice 124 Intercettare le eccezioni 125 Il blocco finally 126 L interfaccia IDisposable e il blocco using 127 Sollevare eccezioni nel codice e best practice 130 Gestione e rilancio delle eccezioni 130 Utilizzo delle InnerException 131 Considerazioni a livello di prestazioni sull uso delle Exception 132 Esplorare i tipi a runtime con Reflection 132 La classe System.Type 133 Scrittura di codice dinamico 135 Realizzazione di codice dinamico con reflection 135 Codice dinamico in C# 4 tramite la parola chiave dynamic 136 Le classi DynamicObject e ExpandoObject 137 Codice dichiarativo tramite gli attributi 139 Costruire e usare attributi custom: la classe System.Attribute 141 Conclusioni 142 Capitolo 8 - Eseguire query nel codice con LINQ 145 I perché di LINQ 145 Come funziona LINQ 146 Introduzione all esempio del capitolo 147 Gli extension method di LINQ 148 La filosofia alla base LINQ 149 Anatomia di una query 150 Gli operatori di restrizione 150 OfType 151 Gli operatori di proiezione 151 Select 152 SelectMany 153 Gli operatori di ordinamento 153 OrderBy, OrderByDescending, ThenBy e ThenByDescending 154 Reverse 154

Gli operatori di raggruppamento 155 Gli operatori di aggregazione 156 Average, Min, Max, Sum 156 Count, LongCount 157 Gli operatori di elemento 157 Gli operatori di partizionamento 158 Take e Skip 159 TakeWhile e SkipWhile 159 Operatori di insieme 159 Except 160 Intersect 161 Distinct 161 Union 161 La query syntax 162 Conclusioni 163 Capitolo 9 - L accesso ai dati con ADO.NET 165 Managed Data Provider 165 Connessione a una sorgente dati 168 Esecuzione di un comando 172 Lettura del risultato di una query 175 Provider Factory 176 Supporto specifico per SQL Server 177 Modalità disconnessa in ADO.NET 178 Container di dati: DataSet e DataTable 180 Conclusioni 181 Capitolo 10 - Accesso ai dati con Entity Framework 183 Cosa è un O/RM 183 I componenti di Entity Framework 185 EDM Mapping 186 LINQ to Entities 186 Entity SQL 187 Object Services 187

Entity Client 187 Creare un modello 188 Modificare il modello tramite designer 189 Generare il codice 191 Recuperare i dati dal database 192 Ottimizzare il fetching 194 Il tipo restituito da una query 195 Salvare i dati sul database 195 Persistere un nuovo oggetto 195 Persistere le modifiche a un oggetto 197 Cancellare un oggetto dal database 198 Gestire la concorrenza 199 Utilizzare le stored procedure 200 Conclusioni 202 Capitolo 11 - XML e LINQ to XML 203 Il supporto a XML nel.net Framework 203 Gestire l XML con la classe XmlDocument 204 Lettura e scrittura rapida e leggera 209 Leggere con XmlReader 209 Scrivere con XmlWriter 210 LINQ to XML 212 Interrogare i nodi con LINQ 212 Manipolazione dei nodi 214 Interrogare rapidamente con XPathDocument 216 Navigare tra i nodi 216 Modificare i nodi 218 Trasformare i documenti con XSLT 219 Conclusioni 221 Capitolo 12 - Windows Presentation Foundation - base 223 Introduzione a WPF 223 L Ambiente di sviluppo 223 Le Application e Browser Application 226 Il markup XAML 228

La sintassi 228 La sintassi Object element 228 La sintassi Property attribute 229 La sintassi Property Element 229 I namespace 229 Il layout system 231 Elementi fisici e logici 231 La disposizione degli elementi 232 I pannelli 232 I controlli 234 Le classi principali: UIElement e Framework 234 I controlli di WPF 234 La grafica 236 I pennelli: il Brush 236 Le trasformazioni sugli oggetti 237 Le animazioni 239 Conclusioni 241 Capitolo 13 - Windows Presentation Foundation: concetti avanzati 243 Definire e riutilizzare le risorse 243 Creare e gestire gli Style 246 Definire e utilizzare uno Style 246 Eseguire azioni mediante i Trigger 248 Modellare il layout con i Template 249 Personalizzare un controllo con il ControlTemplate 250 Il data binding 252 Mostrare le informazioni con il data binding 252 Scenari master/detail con il data binding 254 Le fonti dati per il data binding 256 La formattazione dei dati 257 Le modalità di data binding 259 Gestire gli eventi 260 I documenti XPS e la stampa 262 Conclusioni 264

Capitolo 14 - Applicazioni ASP.NET con C# 265 La prima pagina ASP.NET 265 Creare un progetto ASP.NET 266 Sviluppare con WebForm 267 Gli eventi, il PostBack e il ViewState 268 Interagire con la pagina 269 Validazione delle form 271 Generare codice conforme agli standard web 272 Mantenere il layout con le master page 273 Visualizzare dati: il data binding 274 I list control 275 Utilizzare i template 276 I data source control 277 Dynamic Data Control 279 Creare URL per la SEO 280 Gestione delle aree protette 281 Conclusioni 281 Capitolo 15 - Windows Communication Foundation 283 Cos è Windows Communication Foundation 283 L ABC di un servizio 284 Realizzare il primo servizio 286 Il servizio 286 Il consumatore 289 Hosting dei servizi 292 Hosting manuale tramite ServiceHost 292 Hosting con Internet Information Services 293 Servizi REST e POX per applicazioni Web 2.0 294 I WCF Data Services 297 Funzionalità avanzate dei servizi 299 Conclusioni 300 Capitolo 16 - Sviluppo ed installazione di Windows Service 301

Cos è un Windows Service 301 Sviluppo di un Windows Service 302 Creazione dell Installer e configurazione 309 Installazione di un Windows Service 312 Il componente ServiceController 314 Conclusioni 316 Capitolo 17 - Distribuzione di librerie e applicazioni 317 Assembly privati e pubblici 317 Firma di un assembly con uno strong name 319 Installazione di un assembly firmato nella GAC 320 Creazione di un progetto di setup 321 Distribuzione delle applicazioni Windows con ClickOnce 324 Configurazione delle opzioni di pubblicazione 324 Pubblicazione dell applicazione 325 Assegnazione del certificato 326 Gestione della sicurezza 327 Distribuzione delle applicazioni web 328 Distribuzione con code inline 329 Distribuzione con code behind 329 Distribuzione con code file 330 One-Click Deployment 331 Scelta del modello di sviluppo 331 Configurazione del package 331 Scelta dei database e creazione degli script SQL 332 Generazione del package 333 Deployment in produzione 334 Conclusioni 334 Capitolo 18 - La sicurezza nelle applicazioni per il.net Framework 335 Progettare applicazioni sicure 335 Sicurezza by-design 336 Il modello di sicurezza del CLR 336 Transparency model 337

Il concetto di Permission 338 Definizione delle Permission in modo dichiarativo 340 Creare una sandbox per isolare codice esterno 340 Principi di crittografia 343 Windows Data Protection 343 Crittografia simmetrica 344 Crittografia asimmetrica 347 Cifratura irreversibile: hashing 350 Firmare gli assembly 352 Validazione dei dati immessi dall utente 352 Proteggersi da attacchi SQL Injection 352 Conclusioni 353 Capitolo 19 - Multithreading ed esecuzione parallela 355 Processi e thread 355 La classe System.Threading.Thread 356 Passare parametri a un worker thread 358 Controllare il flusso di esecuzione di un thread 359 Il ThreadPool per applicazioni multithreading 361 Asynchronous programming model 363 Utilizzo del metodo EndInvoke 364 Sincronizzazione tramite IAsyncResult e polling 365 Utilizzo di un metodo di callback 366 Esecuzione parallela con Parallel Extensions 368 La Task Parallel Library 368 Composizione di task 371 Nested task e child task 372 Parallel LINQ 373 Concorrenza e thread safety 375 Sincronizzare l accesso alle risorse 375 Collezioni con supporto alla concorrenza 378 Conclusioni 380 Capitolo 20 - Gestione dei file e del registry 381 Gestione del File system 381 Organizziamo le informazioni: Directory e File 381 Creazione di una directory 382 Eliminare una directory 384

Spostare una directory 387 Copiare una directory 389 Eseguire ricerche sul file system 391 Creare e modificare un file 393 IsolatedStorage 394 Il Registry 396 Conclusioni 399 Capitolo 21 - Networking e accesso a internet 401 Principi di comunicazione di rete 401 Architettura a livelli: il modello di trasporto 402 Porte e protocolli applicativi standard 402 I protocolli TCP e UDP 403 I socket e la comunicazione a basso livello 403 Inviare un semplice testo con un client UDP 404 Ricevere i messaggi con un mini server UDP 404 Inviare e ricevere dati con la classe TcpClient 406 Il namespace System.Net 409 La classe WebClient 409 Inviare dati al server 411 Comunicazione con i web server attraverso HTTP 412 Scambiare file con il protocollo FTP 415 SMTP, POP3 e le comunicazioni con i server e-mail 416 Conclusioni 418 Appendice A - Sviluppare per Windows 7 419 La task bar di Windows 7 419 Le jump list 420 Altri effetti sulla task bar 421 Altre informazioni 422 Appendice B - Windows Azure 423 Introduzione a Windows Azure 423 Hello World, da Windows Azure 424

Appendice C - Interoperabilità con DLL e COM 429 Creare un documento Excel 429 Chiamare le API di Windows 432