KOMPETENSSYSTEM - Örebro universitet
KOMPETENSSYSTEM - Örebro universitet
KOMPETENSSYSTEM - Örebro universitet
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Kompetensia<br />
De två första problemen har man löst på det sätt som illustreras i figur 3.9. Källkoden<br />
översätts först till vad som kallas Microsoft Intermediate Language (MSIL). Denna IL-kod<br />
körs sedan i exekveringsmotorn, Common Language Runtime (CLR). CLR hanterar<br />
översättningen till maskinspecifika instruktioner och kontrollerar även minnet,<br />
undantagshantering och skräpsamling.<br />
Figur 3.9: Virtuell exekveringsmotor kör programmets kod<br />
Problemet med det svårhanterliga Win32 API har man löst genom att införa det som kallas för<br />
klassramverket. Det är en stor samling klasser som innehåller all funktionalitet som en<br />
utvecklare kan tänkas behöva. Till skillnad från Win32 API är klasserna välorganiserade i så<br />
kallade namnutrymmen (eng. namespace). Till exempel innehåller namnutrymmet System<br />
klasser för att hantera de primitiva datatyperna: System.Int32, System.Array, System.String<br />
osv. (MSDN, 2004)<br />
3.4 ASP.NET<br />
ASP.NET är en ny teknik för att kunna ta del av de ovan nämnda fördelarna även vid<br />
webbutveckling. Detta betyder att ASP.NET-sidor utvecklas i något av de<br />
programmeringsspråk som stöds av plattformen .NET.<br />
Då en klient begär en webbsida kontrollerar webbservern om aktuell IL-kod finns tillgänglig<br />
och i så fall genereras HTML som skickas till klienten. Om IL-kod saknas eller om<br />
ASP.NET-sidans kod uppdaterats, kompileras sidan om på nytt. Den nya IL-koden sparas<br />
sedan på disk så att framtida kompileringar ej behövs.<br />
En annan nyhet i ASP.NET är code-behind vilket gör det möjligt att separera logik från<br />
presentation och lägga all kod i separata klassfiler.<br />
Peter Lorenz 18(47)