Lataa esitys
Esittely latautuu. Ole hyvä ja odota
JulkaistuIivari Järvinen Muutettu yli 8 vuotta sitten
1
.NET ohjelmointi C#-kielellä RäsSe, lokakuu 2004
2
Historiaa C# julkaistiin 6/2000 Julkaisun yhteydessä CLI (common language infrastructure) ECMA.n standartoitavaksi Kehittelyn taustalla Anders Hejlsberg (palkattiin Borlandilta kehittämään Java- virtuaalikonetta) Sun ja Microsoft erimielisyyksiin JVM:stä
3
.NET Suurin muutos sitten DOS Win MS:n taisteluase Javaa vastaan satsattu paljon Sovelluskehittäjälle Yhteinen runtime Uusi komponenttimalli Uudet kielet ?.NET Parempi kehitysympäristö XML-tuki Tukihenkilölle DLL ongelmat poistuu Tietoturva Uusi integreointimalli
4
.NET perhe C# VB.NET ASP.NET ADO.NET J# (C++) … muut.NET kielet
5
Käsitteitä CLS – Common Language Specifigation, määrittää millainen.NET kielen tulee olla CTS – Common Type System, määrittää kielen muuttujatyyppirakenteen kaikille.NET kielille BCL – Base Class Library, kaikille kielille yhteinen perusluokkakirjasto CLR – Common Language Runtime on ajonaikainen ympäristö (lataa sovellukset, suorittaa JIT käännökset, huolehtii suoritusoikeuksista, muistin hallinta, kutsuu käyttöjärjestelmän palvelut) JIT – Just In Time
6
Mitä uutta Managed koodia suoritetaan CLR:n alla ei enää bin-koodia, vaan MSIL-kieltä (Microsoft Intermediate Language, assembly-kieli) koodi ajetaan frameworkissä (vrt. Javan VM…) { C# FrameWork käyttöjärjestelmä } Alusta riippumaton hajautustekniikka (Web Services) Helpompi hallita… asennus on xcopyä (on dll-tiedostoja, muttei tarvitse rekisteröintiä)
7
FrameWork WindowsCOM+ Services Common Language Runtime Base Class Library ADO.NET and XML ASP.NETWindows Forms Common Language Specification VB.NETC++C#J#Jne..
8
Koodista sovellukseksi… 1. Kirjoita lähdekoodi 2. Käännä lähdekoodi exeksi (csc.exe) 3. C# kääntäjä kirjoittaa MSIL-koodin ja luettelon (manifest), jossa on PE (Win32 portable executable) otsikko koodiin tulee _CorExeMain ajonaikainen tiedosto 4. Kun sovellus käynnistetään, otetaan PE ja tarvittavat DLL:t, myös mscoree.dll (CorExeMainiä varten) 5. Käyttöjärjestelmän lataaja hyppää PE:n aloituskohtaan = aloituskohta on _CorExeMain- funktion aloituskohta
9
… koodista sovellukseksi 6. CorExeMain käynnistää MSIL koodin suorituksen 7. MSIL-koodia ei voi suorittaa suoraan, vaan se on käännettävä CLR:n avulla konekieleksi. Käännöksessä käytetään JIT täsmäkääntäjää JITeistä on käytössä kolme erilaista vaihtoehtoa Asennusaikainen (PreJIT) – kääntää asennuksen aikana bin-koodiksi JIT – suorituksen aikainen käännös EconoJIT – koneille joissa vähän muistia eli käännetään osia sitä mukaa kuin tarvitaan
10
CLR käännös, suoritus kuvana LähdekoodiKääntäjäCode / Metadata JIT compilerNative code Käännös tehdään Metodikohtaisesti JIT valinnan mukaisesti; Ensimmäisellä kutsu- Kerralla tai asennetta- essa
11
ILDASM IL Disassembler Tee sovellus ja käännä exe Aja ildasm Start – Programs – MS Visual Studio.NET 2003 – Visual Studio.NET Tools – Visual Studio.NET 2003 Command Promt Avaa File/Open toiminnolla exe Tutustu Manifestiin ja assembler koodiin
Samankaltaiset esitykset
© 2024 SlidePlayer.fi Inc.
All rights reserved.