Forskjeller mellom ATL, MFC og Win32

Microsofts Visual Studio tilbyr flere ulike prosjekttyper for C ++ utviklere som har til oppgave med å lage Windows-programmer. Disse typene inkluderer Win32, MFC og ATL. Win32 prosjekter generere en standard 32-bits Windows kjørbar eller bibliotek kun ved hjelp av Windows API. MFC skaper også 32-bits Windows-programmer, men forenkler utvikling gjennom et rammeverk kalt Microsoft Foundation Class. ATL skaper ActiveX-komponenter som kan plugges inn i Microsoft Office og andre programmer.

Win32

På Windows-plattformer gir Win32 API utvikleren maksimal kontroll, men det er også den vanskeligste å mestre. En grunnleggende tiltak som å åpne et vindu eller legge til tekst, kan noen knapper eller andre kontroller kreve flere sider med kode. Det kan ta måneder å lære å mestre hendelsen håndtering og alle de andre teknikker er nødvendig for å bygge en fullverdig app; Likevel vil mestring av Win32 API og dens nyere 64-bit motstykke gi programmene full kontroll over Windows.

MFC

Microsofts Foundation Classes for C ++ bringer Windows programmering ned til gjennomsnittlig programmerer. Maskinen bruker et objektorientert modell som eliminerer mye av tedium og krevende detalj av Win32 API, men det fortsatt tilbyr det meste av kraften som trengs for å lage fullfunksjons Windows-programmer. MFC-maskinen bruker en modell-view-controller mønster til egne programmer i mer håndterbare biter. MFC Veiviseren oppretter et enkelt program som omfatter alle nødvendige filer samt kommentarer å hjelpe deg i gang. Selv om koden er langt mer komplisert enn mange andre språk, gjør det C ++ enklere å administrere.

ATL

Active Template Library lar utviklere lage ActiveX-komponenter som plugger inn til Microsoft Office, Web apps og andre COM-baserte Windows-programmer. ActiveX popularitet toppet seg om et tiår siden med Visual Studio 6, men teknologien er fortsatt brukes i en rekke populære programvarepakker.

Andre prosjekttyper

I tillegg til de tradisjonelle Windows-maler, Visual Studio tilbyr flere nye smaker for C ++ utviklere. .NET Framework og dens Common Language Runtime gi en tryggere og sikrere programmering modell pluss innebygd søppelrydding og en massiv klassebibliotek. Makefile prosjekter tillate full kontroll over kompilatoren og lenkealternativene, slik at etableringen av 64-bits kjørbare og blandet språklige prosjekter. Maler også er tilgjengelig for mobil utvikling og ulike web-applikasjoner og tjenester.

Hvilken du skal velge

De fleste utviklere finne MFC rammeverk for å være det beste valget for fullfunksjons Windows-programmer. Veiviseren genererer opprinnelige koden, og utviklerne kan konsentrere seg om virksomheten løsningen, ikke på lavt nivå Windows krav. Win32 prosjekter fungerer godt for konsollbaserte verktøy og Windows-tjenester, men om noe mer, er MFC et mye bedre valg. For et rikt brukergrensesnitt, vurdere Windows Forms-baserte programmer ved hjelp av Common Language Runtime og .NET Framework, som forenkler tilgang til databaser, skytjenester og ulike ressurser maskin. Uansett hvilken type prosjekt du velger, Visual Studio Integrated Development Environment og dens kodegenerer veivisere gjør C ++ tilgjengelig for hverdags programmerere.