Visual F#
F# è un linguaggio di programmazione che fornisce supporto per la programmazione funzionale e per la programmazione tradizionale imperativa (procedurale) e orientata agli oggetti. Il prodotto Visual F# offre supporto per lo sviluppo di applicazioni F# e l'estensione di altre applicazioni .NET Framework tramite codice F#. F# è un importante membro dei linguaggi .NET Framework e presenta una spiccata somiglianza con la famiglia ML di linguaggi funzionali.
Linguaggio multiparadigma
F# supporta i costrutti di programmazione funzionale, ad esempio:
Funzioni come valori, che consentono una modifica flessibile delle funzioni. Per ulteriori informazioni, vedere Funzioni come valori di prima classe (F#).
Composizione di funzioni e pipelining, per consentire il concatenamento di funzioni al fine di crearne nuove e semplificare la codifica di operazioni consecutive sui dati. Per ulteriori informazioni, vedere Funzioni (F#).
Inferenza del tipo, che riduce la necessità di chiamare in modo esplicito i tipi senza sacrificare l'indipendenza dai tipi.
Generalizzazione automatica, che promuove il riutilizzo del codice rendendo più semplice la scrittura di codice compatibile con diversi tipi senza alcuno sforzo aggiuntivo.
Supporto per ricerca di corrispondenza, che semplifica il codice condizionale complesso generato, e unioni discriminate ottimizzate per l'utilizzo con ricerche di corrispondenza.
Tipi di insieme per l'utilizzo di dati non modificabili, tra cui tipi di elenchi e sequenze.
Espressioni lambda, fondamentali per numerosi costrutti di programmazione funzionale.
Applicazione parziale degli argomenti delle funzioni, che consente la creazione implicita di nuove funzioni dalle funzioni esistenti. Per ulteriori informazioni, vedere Funzioni (F#).
Quotation di codice, una funzionalità che consente di modificare le espressioni F# a livello di codice.
F# supporta la programmazione orientata agli oggetti e le funzionalità .NET Framework, tra cui:
Modello a oggetti di .NET Framework, inclusi gli oggetti che dispongono di proprietà, metodi ed eventi; polimorfismo o funzioni virtuali, ereditarietà e interfacce.
Incapsulamento dei dati o separazione dell'interfaccia pubblica di un tipo dall'implementazione.
Overload degli operatori, perfettamente compatibile con tipi primitivi incorporati e generics.
Estensioni dei tipi, che consentono di estendere agevolmente un tipo esistente senza il sovraccarico aggiuntivo necessario per creare un nuovo tipo derivato.
Espressioni di oggetto, che consentono di definire in modo implicito oggetti di piccole dimensioni nelle espressioni in base alle necessità, anziché dichiarare un nuovo tipo e creare un'istanza di un oggetto.
Accesso a .NET Framework e a qualsiasi assembly di codice gestito.
Accesso al codice nativo mediante platform invoke.
F# supporta inoltre tutti i costrutti di programmazione imperativi comuni, ad esempio costrutti di ciclo e di creazione di rami.
Librerie F#
Il prodotto Visual F# include inoltre una libreria F# con diversi tipi e funzioni utili, tra cui interfacce API per insiemi quali elenchi, matrici, mappe, set e sequenze. La libreria F# supporta inoltre reflection, eventi e I/O formattato.
Include inoltre il supporto per i flussi di lavoro asincroni per consentire i calcoli paralleli, nonché i meccanismi di comunicazione tra flussi di lavoro paralleli. Per ulteriori informazioni, vedere Flussi di lavoro asincroni (F#), Classe Control.Async (F#) e Classe Control.MailboxProcessor<'Msg> (F#).
La libreria F# principale è FSharp.Core.dll. In F# PowerPack, disponibile sul sito Web relativo al centro per sviluppatori Microsoft F#, sono presenti ulteriori librerie.
Scripting interattivo
Visual F# fornisce una finestra interattiva integrata nell'ambiente di sviluppo di Visual Studio. Questa finestra consente di immettere codice F#, che verrà immediatamente compilato ed eseguito. In questo modo sarà possibile creare agevolmente prototipi di costrutti di codice e testare il codice in fase di scrittura. La finestra interattiva esegue lo strumento interattivo di F#, fsi.exe, che è possibile eseguire anche dalla riga di comando. Questa funzionalità consente l'utilizzo di F# come linguaggio di script. Per ulteriori informazioni, vedere Riferimenti per F# Interactive (fsi.exe).
Integrazione con Visual Studio
F# è integrato con Visual Studio e offre supporto per gli elementi seguenti:
Progetti, inclusi modelli per i tipi di progetti comuni. Per ulteriori informazioni, vedere Utilizzo di Visual Studio per la scrittura di programmi F# e Configurazione di progetti (F#).
IntelliSense. Per ulteriori informazioni, vedere Utilizzo di IntelliSense.
Debug. Per ulteriori informazioni, vedere Debugging in Visual Studio.
Distribuzione. Per eseguire programmi F# su un computer, è necessario che siano installati i componenti di runtime di F#. Tali componenti vengono installati da Pacchetto F# ridistribuibile.
Per ulteriori informazioni, vedere Funzionalità dell'ambiente di sviluppo di F#.
Argomenti correlati
Titolo |
Descrizione |
---|---|
Vengono fornite informazioni introduttive sulla versione corrente di Visual F#. |
|
Punto di partenza per un'ampia gamma di informazioni su F#. |
|
Vengono fornite informazioni sull'utilizzo di F# in IDE (Integrated Development Environment), tra cui le impostazioni del progetto e IntelliSense. |
|
Vengono fornite informazioni di riferimento sul linguaggio F#, tra cui informazioni su parole chiave, simboli e operatori. |
|
Vengono fornite informazioni di riferimento sulla libreria di base F#, FSharp.Core.dll. |
|
Vengono fornite informazioni sul compilatore F#, fsc.exe, incluse informazioni sulle opzioni del compilatore. |
|
Vengono fornite informazioni su F# Interactive, fsi.exe, tra cui informazioni sulle opzioni da riga di comando e sui messaggi di diagnostica specifici di F# Interactive. |
|
Vengono forniti collegamenti a procedure dettagliate ed esempi relativi a F#. |