Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
Microsoft Foundation Classes - Wikipedia

Microsoft Foundation Classes

Da Wikipedia, l'enciclopedia libera.

Microsoft Foundation Classes, meglio conosciuta con l'acronimo MFC, è una libreria di classi C++ prodotta da Microsoft con lo scopo di incapsulare le Windows API. È definita una classe per ciascun oggetto di Windows dotato di handle, e anche per le finestre predefinite e per i controlli comuni (common controls).

MFC è stata introdotta nel 1992 per essere usata con le versioni a 16 bit di Windows, come parte del tentativo di Microsoft di guadagnare quote di mercato nell'area degli strumenti di sviluppo, ed è stata progettata per essere una sorta di rassegna delle potenzialità del linguaggio di programmazione C++. In quel tempo infatti il C++ aveva appena iniziato a sostituire il linguaggio C nello sviluppo di software commerciale, e Microsoft aveva da poco aggiunto il supporto del C++ al suo compilatore C.

Più o meno nello stesso periodo venne lanciato da Borland un prodotto concorrente denominato Object Windows Library (OWL), inserito nel compilatore Turbo C di Borland. Siccome aveva una struttura object oriented superiore, OWL per un certo periodo ebbe più successo di MFC, tuttavia perse quote di mercato quando i suoi aggiornamenti mancarono di supportare le nuove caratteristiche di Windows, ed in seguito non venne più prodotta.

Quando MFC venne introdotta, le potenze di calcolo e la memoria disponibile nei computer erano risorse limitate. Per questo motivo Microsoft decise per la gestione dei messaggi di windows di non avvalersi delle funzioni virtuali, uno dei meccanismi più potenti offerti dal C++ ma fonte di un discreto overhead, e di utilizzare al loro posto una speciale sintassi basata su macro. Siccome però le macro non dispongono di un sufficiente controllo dei tipi da parte del compilatore, il loro uso è stato spesso fonte di bug. Oltre alle code di messaggi, anche la serializzazione e la gestione delle eccezioni furono basate su macro anziché su caratteristiche native del C++ che proprio per questo tardarono ad affermarsi negli anni. Queste caratteristiche sono ancora presenti nelle versioni attuali di MFC.

Da un punto di vista pratico, lo sviluppo di programmi Windows con MFC risulta molto più rapido e semplificato rispetto all'uso diretto delle Windows API, anche se la loro conoscenza è quasi indispensabile per un programmatore MFC per via della poca astrazione introdotta dalla libreria di classi. Una vantaggi maggiori deriva dal fatto che gli handle degli oggetti vengono gestiti automaticamente dalla libreria e chiusi quando gli oggetti vengono distrutti.

Per lungo tempo MFC è stata promossa da Microsoft come il proprio strumento di punta nello sviluppo di applicazioni commerciali. Già con l'avvento di Visual Basic però, MFC iniziò a declinare perché sembrò che C++ e MFC fossero troppo complesse per molti programmatori. Più recentemente, la nascita della piattaforma .NET ha condannato ad un ruolo di nicchia MFC anche se Microsoft ne ha confermato il supporto, almeno per il futuro prossimo.

[modifica] Collegamenti esterni

Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com