Linguaggio C# (Procedure relative a C# Express)
Aggiornamento: novembre 2007
In questa pagina viene fornito il collegamento alla guida relativa ad attività comuni correlate al linguaggio C#. Per visualizzare altre categorie di attività comuni trattate nella Guida, vedere Procedure relative a C# Express.
Nota
Se si sta utilizzando Visual C# Express Edition, è possibile che alcuni collegamenti alla Guida presenti in questa pagina non siano disponibili, a seconda delle opzioni scelte durante l'installazione. Per ulteriori informazioni, vedere la classe Risoluzione dei problemi in Visual C# Express.
Linguaggio C#
Novità di Visual C#
Sono contenute informazioni sulle nuove funzionalità, ad esempio variabili locali tipizzate in modo implicito, inizializzatori di oggetto, metodi di estensione, tipi anonimi, espressioni lambda e parole chiave di query.Funzionalità di Visual C# Express
Vengono presentate le funzionalità principali di Visual C# Express Edition: il compilatore Visual C#, il debugger, l'ambiente di sviluppo integrato (IDE, Integrated Developer Environment), il supporto per Windows Form e i controlli, il supporto per database, nonché l'utilizzo di servizi Web e di Progettazione classi.Novità di Visual C# Express
Vengono descritte le nuove funzionalità disponibili in Visual C# Express Edition, ad esempio Windows Presentation Foundation (WPF), LINQ (Language-Integrated Query) e l'utilizzo dei servizi Windows Communication Foundation (WCF).Confronto tra C# e altri linguaggi
Viene introdotto un confronto tra C# e altri linguaggi quali C++, Visual Basic e Java.C# e .NET Framework
Vengono forniti cenni preliminari su .NET Framework e sull'utilizzo di .NET Framework e Common Language Runtime (CLR).Utilizzo di LINQ in C#
Vengono forniti cenni preliminari su LINQ e i collegamenti ad argomenti in cui LINQ viene descritto più dettagliatamente.Specifiche del linguaggio C#
Vengono forniti collegamenti alla versione più aggiornata della specifica del linguaggio C# in formato Microsoft Word.
Tipi anonimi
- Procedura: restituire sottoinsiemi di proprietà degli elementi in una query (Guida per programmatori C#)
Viene illustrato come utilizzare un tipo anonimo per restituire solo un sottoinsieme delle proprietà di ciascun elemento di origine che corrisponde alla condizione specificata.
Riga di comando
Main() e gli argomenti della riga di comando (Guida per programmatori C#)
Viene illustrato il metodo Main, ovvero il punto di ingresso del programma in cui vengono creati oggetti e richiamati altri metodi. In un programma C# può esistere un solo punto di ingresso.Procedura: accedere ad argomenti della riga di comando utilizzando foreach (Guida per programmatori C#)
Viene fornito un esempio di codice in cui viene illustrato come accedere ai parametri della riga di comando.Procedura: visualizzare gli argomenti della riga di comando (Guida per programmatori C#)
Viene illustrato come visualizzare gli argomenti della riga di comando tramite la matrice di stringhe args.Valori restituiti da Main() (Guida per programmatori C#)
Vengono illustrati i possibili valori restituiti dal metodo Main.
Classi ed ereditarietà
base (Riferimenti per C#)
Viene descritto come specificare il costruttore di classe base chiamato durante la creazione di istanze di una classe derivata.Procedura: accedere a una classe di insiemi con foreach (Guida per programmatori C#)
È contenuto un esempio di codice in cui viene illustrato come scrivere una classe Collection utilizzabile con foreach.Procedura: differenza tra il passaggio a un metodo di una struttura e di un riferimento a una classe (Guida per programmatori C#)
È contenuto un esempio di codice in cui viene mostrato che quando si passa una struttura a un metodo, viene passata una copia della struttura, ma quando si passa un'istanza di classe, viene passato un riferimento.Costruttori di istanze (Guida per programmatori C#)
Vengono illustrati i costruttori di classe e l'ereditarietà.Procedura: ereditare da una classe (Visual C#)
È contenuto un esempio di codice in cui vengono definite le classi Circle e Rectangle, che entrambe ereditano dalla classe Shape, e la classe Square che eredita dalla classe Rectangle.
Interfacce
Procedura: implementare in modo esplicito i membri di interfaccia (Guida per programmatori C#)
Viene illustrato come dichiarare una classe che implementa in modo esplicito un'interfaccia e come accedere ai membri tramite l'istanza dell'interfaccia.Procedura: implementare i membri di interfaccia in modo esplicito con l'ereditarietà (Guida per programmatori C#)
Viene fornito un esempio in cui sono visualizzate le dimensioni di una casella sia in unità di misura decimali che in unità di misura inglesi.
Espressioni lambda
Procedura: utilizzare espressioni lambda in una query (Guida per programmatori C#)
Viene illustrato come utilizzare un'espressione lambda in una query basata sul metodo.Procedura: utilizzare espressioni lambda al di fuori di LINQ (Guida per programmatori C#)
Viene illustrato come utilizzare un'espressione lambda in un gestore eventi di Windows Form.
Proprietà
Procedura: dichiarare e utilizzare le proprietà Read/Write (Guida per programmatori C#)
È contenuto un esempio in cui viene illustrato come dichiarare e utilizzare le proprietà di sola scrittura e sola lettura.Procedura: definire proprietà astratte (Guida per programmatori C#)
È contenuto un esempio di codice in cui viene illustrato come definire proprietà astratte.
Stringhe
Procedura: eseguire la ricerca di stringhe tramite espressioni regolari (Guida per programmatori C#)
Viene illustrato come utilizzare la classe Regex per eseguire la ricerca nelle stringhe. Queste ricerche possono essere molto semplici oppure basate sull'utilizzo delle espressioni regolari.Procedura: concatenare più stringhe (Guida per programmatori C#)
È contenuto un esempio di codice in cui viene illustrato come unire più stringhe.Procedura: eseguire la ricerca di stringhe tramite metodi stringa (Guida per programmatori C#)
È contenuto un esempio di codice in cui viene illustrato come utilizzare i metodi String per eseguire la ricerca di una stringa.Procedura: dividere stringhe (Guida per programmatori C#)
È contenuto un esempio di codice in cui viene illustrato come analizzare una stringa utilizzando il metodo System.String.Split.
Generics
Parola chiave default in codice generico (Guida per programmatori C#)
Viene fornito un esempio di codice in cui viene illustrato come utilizzare la parola chiave predefinita per i parametri dei tipi.Metodi generici (Guida per programmatori C#)
Viene presentata la sintassi per dichiarare un metodo generico. Viene inoltre fornito un esempio in cui vengono utilizzati metodi generici in un'applicazione.Vincoli sui parametri di tipo (Guida per programmatori C#)
Viene spiegato come vincolare parametri di tipo in modo da consentire l'accesso ai metodi e alle proprietà dei tipi utilizzati per creare un'istanza della classe generica.Delegati generici (Guida per programmatori C#)
Sono contenuti la sintassi per dichiarare delegati generici ed esempi di codice. Sono inoltre contenute importanti osservazioni sulla creazione di istanze e sull'utilizzo di delegati generici.
Eventi
Procedura: generare eventi della classe base in classi derivate (Guida per programmatori C#)
È contenuto un esempio di codice in cui viene illustrata una classe, ListWithChangedEvent, simile alla classe standard ArrayList, ma che richiama anche un evento Changed ogni volta che il contenuto dell'elenco viene modificato.Procedura: pubblicare eventi conformi alle indicazioni di .NET Framework (Guida per programmatori C#)
È contenuto un esempio in cui viene creato un controllo che risponde agli eventi attenendosi alle linee guida di .NET Framework.Procedura: implementare gli eventi di interfaccia (Guida per programmatori C#)
Viene spiegato come dichiarare un evento in un'interfaccia e implementarlo in una classe.
Metodi di estensione
Procedura: implementare e chiamare un metodo di estensione personalizzato (Guida per programmatori C#)
Viene illustrato come implementare i metodi di estensione personali per qualsiasi tipo .NET che si desidera estendere.Procedura: creare un nuovo metodo per una enumerazione (Guida per programmatori C#)
Viene illustrato come aggiungere un metodo di estensione a un'enumerazione.
Spazi dei nomi
Procedura: utilizzare lo spazio dei nomi My (Guida per programmatori C#)
Viene fornito un esempio in cui vengono chiamati diversi metodi statici contenuti nello spazio dei nomi My.Procedura: utilizzare il qualificatore di alias dello spazio dei nomi (Guida per programmatori C#)
Viene descritto come accedere a un membro dello spazio dei nomi globale quando il membro potrebbe essere nascosto da un'altra entità con lo stesso nome.
Variabili locali tipizzate in modo implicito
- Procedura: utilizzare variabili e matrici locali tipizzate in modo implicito in un'espressione di query (Guida per programmatori C#)
Viene illustrato come utilizzare variabili locali tipizzate in modo implicito per archiviare tipi anonimi e per determinare il tipo di una variabile locale.
Iteratori
Procedura: creare un blocco iteratore per un elenco generico (Guida per programmatori C#)
Viene fornito un esempio in cui viene utilizzata una matrice di valori integer per compilare l'elenco SampleCollection. Per scorrere l'insieme e restituire il valore di ogni elemento, viene utilizzato un ciclo For. Viene quindi utilizzato un ciclo foreach per visualizzare gli elementi dell'insieme.Procedura: creare un blocco iteratore per un elenco generico (Guida per programmatori C#)
Viene fornito un esempio in cui la classe generica Stack<T> implementa un'interfaccia generica IEnumerator<T>. Viene dichiarata una matrice di tipo T alla quale vengono assegnati valori utilizzando il metodo Push. Nel metodo GetEnumerator i valori della matrice vengono restituiti tramite l'istruzione yield return.
Delegati
Funzioni anonime (Guida per programmatori C#)
Viene descritto come utilizzare espressioni lambda e metodi anonimi per creare tipi delegati.Procedura: combinare delegati multicast (Guida per programmatori C#)
Viene fornito un esempio in cui viene illustrato come comporre delegati multicast.Procedura: dichiarare un delegato, crearne un'istanza e utilizzarlo (Guida per programmatori C#)
Viene fornito un esempio che illustra come dichiarare e utilizzare un delegato e come crearne un'istanza.
Interoperabilità
- Procedura: utilizzare il richiamo piattaforma per riprodurre un file audio (Guida per programmatori C#)
Viene illustrato come utilizzare i servizi platform invoke per riprodurre un file audio wave nel sistema operativo Windows.
Inizializzatori di oggetto e di insieme
Procedura: inizializzare oggetti senza chiamare un costruttore (Guida per programmatori C#)
Viene illustrato come utilizzare gli inizializzatori di oggetto per inizializzare oggetti Type in modo dichiarativo senza dover richiamare il costruttore del tipo.Procedura: inizializzare un dizionario con un inizializzatore di insieme (Guida per programmatori C#)
Viene illustrato come utilizzare un inizializzatore di insieme per inizializzare un oggetto Dictionary.
Overload dell'operatore
- Procedura: utilizzare l'overload degli operatori per creare una classe di numeri complessi (Guida per programmatori C#)
Viene illustrato come utilizzare l'overload dell'operatore per creare una classe Complex di numeri complessi che definisca l'operazione di addizione tra numeri complessi.
Threading
Procedura: creare e terminare thread (Guida per programmatori C#)
Viene fornito un esempio in cui viene illustrato come creare e avviare un thread; viene inoltre descritta l'interazione tra due thread eseguiti contemporaneamente nello stesso processo.Procedura: sincronizzare un thread producer e un thread consumer (Guida per programmatori C#)
Viene fornito un esempio in cui viene illustrata la sincronizzazione tramite la parola chiave lock di C# e il metodo Pulse dell'oggetto Monitor.Procedura: utilizzare un pool di thread (Guida per programmatori C#)
Viene fornito un esempio in cui viene illustrato come utilizzare un pool di thread.
Utilizzo delle DLL
- Procedura: creare e utilizzare DLL C# (Guida per programmatori C#)
Viene illustrato, tramite uno scenario di esempio, come compilare e utilizzare una DLL.
Codice unsafe
Procedura: utilizzare puntatori per copiare una matrice di byte (Guida per programmatori C#)
Viene illustrato come utilizzare i puntatori per copiare byte da una matrice a un'altra.Procedura: utilizzare la funzione ReadFile di Windows (Guida per programmatori C#)
Viene spiegato come chiamare la funzione ReadFile di Window, per la quale è necessario utilizzare un contesto unsafe in quanto il buffer di lettura richiede un puntatore come parametro.
Frammenti di esempio sulla programmazione in C#
Progettazione di un'interfaccia utente in Visual C#
Vengono presentati esempi di codice per la creazione di applicazioni Windows Form in Visual C# Express Edition.Controlli TreeView
Consente di individuare esempi di codice in cui viene illustrato come eseguire attività comuni di programmazione conTreeView utilizzando Visual C# Express Edition.Controlli Button
Consente di individuare esempi di codice in cui viene illustrato come eseguire attività comuni di programmazione con Button utilizzando Visual C# Express Edition.Controlli di testo
Consente di individuare esempi di codice in cui viene illustrato come eseguire attività comuni di programmazione con TextBox e RichTextBox utilizzando Visual C# Express Edition.Finestre di dialogo (Visual C#)
Consente di individuare esempi di codice in cui viene illustrato come utilizzare finestre di dialogo incorporate tramite Visual C# Express Edition.Creazione di testo e grafica
Consente di individuare esempi di codice in cui viene illustrato come eseguire attività comuni di programmazione per la creazione di testo utilizzando Visual C# Express Edition.Controlli di data e ora
Consente di individuare esempi di codice in cui viene illustrato come eseguire attività comuni di programmazione con DateTimePicker e MonthCalendar utilizzando Visual C# Express Edition.Creazione di un'interfaccia utente personalizzata
Consente di individuare esempi di codice in cui viene illustrato come eseguire attività comuni di programmazione per la creazione di interfacce utente utilizzando Visual C# Express Edition.Aggiunta di funzionalità multimediali a un'applicazione
Consente di individuare esempi di codice in cui viene illustrato come eseguire attività di programmazione per l'integrazione di funzionalità multimediali in un'applicazione di Visual C#.Accesso e visualizzazione di dati
Consente di individuare esempi di codice su controlli DataGrid e sulle funzionalità dei dati XML in Visual C# Express Edition.
Altre risorse
I siti Web indicati di seguito sono eccellenti risorse che consentono di ottenere ulteriori informazioni, conoscere le attività degli altri utenti di Express e mantenersi aggiornati man mano che la comunità di Visual C# Express si sviluppa.
Visual C# Developer Center
Agisce come posizione centrale per le informazioni su Visual C# Express Edition. Include video, nuovi strumenti e altri download.Beginner Developer Learning Center
Agisce come posizione principale per i materiali di apprendimento rivolti allo sviluppatore principiante. Include esercitazioni video, articoli, How-To Reference Library e Kid's Corner.Coding4Fun
Sono disponibili numerosi articoli e suggerimenti sulla codifica per lo sviluppatore di Visual C# Express.