Meny
Är gratis
checka in
den huvudsakliga  /  Utbildning / Grundläggande begrepp på plattform.net. Allmän information om de grundläggande begreppen på plattformen. NET Framework Huvudkomponenterna i Net Framework

De grundläggande begreppen på plattformen.net. Allmän information om de grundläggande begreppen på plattformen. NET Framework Huvudkomponenterna i Net Framework

Är en av de mest eftertraktade, multifunktionella och aktivt utvecklade programmeringsspråk på det här ögonblicket. Med det kan du utveckla nästan vilken programvara som helst, allt från enkla vinstformer applikationer, närbild klient-server webbapplikationer eller till och med mobila applikationer och dataspel. Och det fungerar på grundval av en plattform. NET Framework. Låt oss ta reda på vad det är.

Se min video på ämnet. NET Framework Platform och CLR Execution Miljö för C #

C # programmeringsspråk Det är relativt fräscht, men han har redan lyckats tjäna självförtroende. Utgåvan av den första versionen ägde rum i februari 2002. Den extrema versionen av språket vid skrivningstiden är artikeln c # 7.2, som kom ut 08/16/2017.

C #-syntaxen enligt namnet går in i familjen SI-liknande språk och liknar andra populära språk från den här gruppen (C ++, Java). Därför, om du redan är bekant med ett av dessa språk, blir det mycket lättare för dig att behärska C # programmeringsspråket.

Eftersom C # är ett objektorienterat språk stöder den arv, polymorfism, inkapsling, strikt typ av variabler, överbelastningsoperatörer och mer. Alla dessa begrepp kommer att övervägas i detalj i efterföljande artiklar. Tack vare användningen av det objektorienterade designparadigmet med ett programmeringsspråk är det möjligt att enkelt utveckla storskaliga och flexibla projekt. Med allt detta publicerade regelbundet nya versioner av C #, lägger till ny funktionalitet för att förenkla utvecklarens liv, öka utvecklingshastigheten, öka produktiviteten och tillförlitligheten.

Plattform.net.

.NET Framework. - Det här är en mjukvaruplattform från företagetMicrosoft. tillåter att utföra utveckling på olika programmeringsspråk, eftersom enhetlig exekveringsmiljö används för alla språk.Vanlig språk runtime (CLR). Således är de viktigaste möjligheterna för plattformen. Net:

  • Krossplattor - .NET Framework. upprätthålls av de flesta moderna operativsystemWindows, och har också möjlighet att skapa program som stöds Linux-system, och till och med mobila applikationer.
  • Flerspråkig - Eftersom källkoden som skrivs i det programmeringsspråket som används sänds i den gemensamma mellanliggande språkkoden (CIL), är det möjligt att utvecklas på något programmeringsspråk och även använda olika programmeringsspråk i en lösning. De mest populära stödda språken är c \u200b\u200b#, vb.net, c ++, f #.
  • Omfattande bibliotek av klasser och teknik - existerar stor mängd Klar att använda bibliotek för att lösa de nödvändiga uppgifterna. Ofta är det inte nödvändigt att implementera applikationens lågnivålogik, det är tillräckligt att använda den färdiga lösningen som bekvämt levereras via Nuget Package Manager. Dessutom ger Platform.net lätt utveckling för nästan vilken typ av typ som helst programvara.

Hanterad och omanagd kod. Jitkompilering

Managed Code (Managed Code) - Det här är den kod som styrs av den gemensamma CLR-miljön. Det innebär att kontrollmiljön har förmåga att upphäva genomförandet av ansökan och få specifik information om tillämpningen av ansökan när som helst av genomförandet. Källkoden för programmeringsspråket som används sänds till den CIL-hanterade koden (den kallas också högnivåmonterare).

Efter att ha skapat ett klassbibliotek eller ett program fortsätter källkoden att lagras i CIL. Och när du startar en applikation eller tillgång till biblioteket, körs just-in-tiden. Jit.) Sammanställning av applikationen i en maskinkod som är specifik för den miljö som ansökan utförs. I det här fallet är en viktig funktion som endast sammanställer den del av applikationen eller biblioteket, som överklagandet utförs (väl, naturligt). Detta gör att du kan öka systemets prestanda och spara resurser.

Oanpassad kod (ommanaged kod) - Denna kod sänds omedelbart i maskinens körbar kod och exekveras direkt av operativsystemet.

Dessutom rekommenderar jag att du läser en artikel. Och prenumerera även på VContakte-gruppen, Telegram och YouTube-kanal. Det är ännu mer användbart och intressant för programmerare.

Begreppet miljö. Miljöfaktorer och deras klassificering

Termen "miljö" i ekologi tillämpas i en bred och smal känsla av ordet. I den breda känslan av ordmediet är miljön. Miljön är en kombination av alla levnadsvillkor som finns på planeten jorden. Amerikansk biolog P. Olich i sin bok "Demografisk explosion", som publicerades i slutet av 60-talet, så figurativt beskrev miljön: "Vår miljö är den enda" huden "av mark, vatten och gasformiga atmosfär, mineraläringsämnen och levande organismer som täcker något annat särskilt inte en anmärkningsvärd planet. " Mediet i den smala känslan av ordet är livsmiljön. Habitat är den del av naturen som omger kroppen och med vilken den direkt interagerar. Habitaten för varje kropp är olika och bytbar. Den består av många delar av levande och livliga natur och element som introduceras av människan som ett resultat av sin ekonomiska verksamhet.
Alla delar av mediet i förhållande till kroppen är entydiga: Några av dem påverkar sin vitala aktivitet, och andra är likgiltiga för det. I detta avseende grupperas alla element i mediet enligt följande.
1. Neutrala faktorer är de element i mediet som inte påverkar kroppen och orsakar inte någon reaktion.
2. Miljöfaktorer är de element i mediet som direkt eller indirekt påverkar kroppen åtminstone under en av faserna av sin individuella utveckling och orsaka ett specifikt adaptivt svar.
Miljöfaktorer är olika, de har olika handlingar och specificitet av åtgärder. För betydelsen av dem för kroppen är de uppdelade i två grupper:
1. Förfarandena för existens eller levnadsvillkor är de miljöfaktorer, utan vilka kroppen inte kan existera och med vilken den är i en oskiljaktig enhet. Frånvaron av minst en av dessa faktorer leder till kroppens död.
2. Sekundära faktorer är de miljöfaktorer som inte är viktiga, men kan ändra kroppens existens, förbättra eller förvärra den.
En analys av det stora utbudet av miljöfaktorer av ursprunget av deras ursprung gör det möjligt för dem att dela dem i tre stora grupper, varav, i sin tur kan undergrupper särskiljas:
I. Abiotiska faktorer är faktorer för livlig natur, som direkt eller indirekt påverkar kroppen. De är uppdelade i fyra undergrupper:
a) Klimatfaktorer - det här är alla faktorer som bildar klimat och kan påverka organismernas livslängd (ljus, temperatur, fuktighet, atmosfärstryck, vindhastighet etc.);
b) Effigisk eller jord, faktorer är jordens egenskaper, som påverkar organismernas livslängd. De är i sin tur uppdelade i fysikalisk (mekanisk komposition, kommersiellitet, kapillär, välbefinnande, luft och fuktpermeabilitet, luft och fuktintensitet, densitet, färg, etc.) och kemisk (surhet, mineralkomposition, humusinnehåll) jordegenskaper;
c) orografiska faktorer eller lättnadsfaktorer - det här är påverkan av naturens natur och specificitet på organismens livslängd (terrängens höjd över havsnivån, latitorn av området i förhållande till ekvatorn, brantheten av området är lutningsvinkeln i horisonten, är utställningen av området området för områdets relation till ljusets parter);
d) Hydrofysiska faktorer - det här är effekten av vatten i alla stater (flytande, fasta, gasformiga) och fysiska miljöfaktorer (buller, vibration, gravitation, magnetisk, elektromagnetisk och joniserande strålning) till organismernas livslängd.
II. Biotiska faktorer är djurlivets faktorer, påverkan av levande organismer på varandra. De är mest varierade och agerar inte bara direkt, men också indirekt genom den överlevande oorganiska naturen. Beroende på vilken typ av skådespelande organismen är de uppdelade i två grupper:
a) intravidala faktorer - det här är effekten av individerna i samma form på kroppen (hare per hare, tall på tall, etc.);
b) Interspecifika faktorer är påverkan av individer av andra typer av organism (varg per hare, tall på björk, etc.).
Beroende på det som tillhör ett visst rike är biotiska faktorer uppdelade i fyra huvudgrupper:
a) Fytogena faktorer - det här är påverkan av växter på kroppen;
b) Zogena faktorer är effekten av djur på kroppen;
c) Mikrobogena faktorer är effekten av mikroorganismer (virus, bakterier, enklaste, rickettsia) på kroppen;
d) Mikogena faktorer - det här är effekten av svampar på kroppen.
III. Antropogena faktorer är en kombination av mänskliga effekter på organismernas livslängd. Beroende på arten av effekterna är de uppdelade i två grupper:
a) Direkta inflytningsfaktorer är den direkta effekten av en person på kroppen (klipptgräs, skär ner skogen, skjuter djur, fiskfångst etc.);
b) Faktorerna för indirekt påverkan är påverkan av en person med det faktum att dess existens (årligen i processen för andning av människor i atmosfären, 1,1x1012 kg koldioxid och från miljön i form av mat är 2, 7x1015 kcal energi) och genom ekonomiska aktiviteter (jordbruk, industri, transport, hushållsaktiviteter, etc.).
Beroende på effekterna av konsekvenser är båda grupperna av antropogena faktorer fortfarande uppdelade i positiva faktorer (landnings- och matningsanläggningar, avel och bevakning av djur, miljöskydd etc.), vilket förbättrar organismernas liv eller ökar deras nummer , och negativa faktorer (skära ner av träd, miljöföroreningar, förstörelse av livsmiljöer, packning av vägar och annan kommunikation), som förvärra organismernas liv eller minska deras nummer.
Original klassificering av miljöfaktorer enligt graden av konsistens, d.v.s. Enligt deras periodicitet föreslog A...Monchadsky. Enligt denna klassificering skiljer följande tre grupper av faktorer.
1. Primär periodiska faktorer - det här är faktorer vars handling började före livets utseende på jorden och levande organismer borde ha anpassats till dem direkt (daglig periodicitet av belysning, säsongens periodicitet, månens rytmer etc.).
2. Sekundära periodiska faktorer är faktorer som är en följd av primära periodiska faktorer (fuktighet, temperatur, matdynamik, gaser i vatten, etc.).
3. Avfallshanteringsfaktorer är faktorer som inte har rätt periodicitet eller cyklicitet (auktionsfaktorer, antropogena faktorer, innehållet av föroreningar i vatten, atmosfär eller jord etc.).
Beroende på typen av tidsförändringen är miljöfaktorerna uppdelade i tre grupper:
1. Regelbundet periodiska faktorer är faktorer som ändrar sin styrka beroende på tid på dagen, årets årstid eller rytm av tidvatten och sjunker (belysning, temperatur, ljusdagslängd, etc.).
2. Oregelbundna faktorer är faktorer som inte har tydligt uttalat periodicitet (klimatfaktorer i olika år, katastrofala ursprungsfaktorer som ett resultat av översvämning, orkan, jordbävning etc.).
3. De riktningsfaktorer är faktorer som verkar under en lång tid i en riktning (kylning eller klimatuppvärmning, överväxt av behållaren, betar på ett ställe, etc.).
Enligt arten av kroppens svar skiljer sig följande grupper av miljöfaktorer på effekterna av en miljös faktor:
1. Irriterar är faktorer som orsakar adaptiva förändringar av fysiologiska funktioner och biokemiska reaktioner.
2. Modifierare är faktorer som orsakar adaptiva anatomiska och morfologiska förändringar i kroppen.
3. Begränsare är faktorer som resulterar i omöjligheten av existens under dessa förhållanden och begränsar miljöfördelningsmiljön.
4. Larmet är faktorer som indikerar förändringen i andra faktorer och fungerar som en förebyggande signal.
Beroende på möjligheten att konsumera när de interagerar med kroppen är miljöfaktorer indelade i två kategorier:
1. Villkoren är miljöfaktorer för livsmiljöer i tid och utrymme, som kroppen svarar på olika sätt, beroende på kraftens kraft (temperatur, fuktighet, atmosfärstryck, fysikaliska egenskaper hos jorden etc.). Villkoren för kroppen förbrukas inte och är inte uttömda.
2. Resurser är alla miljöhabitativa faktorer som kroppen förbrukar, förbrukar i den meningen att mängden av dem (kontanter) som ett resultat av interaktion med kroppen kan minska. Resurser är fördelen med det ämne som består av kroppens kropp, den energi som är involverad i processerna med sin vitala verksamhet, liksom de platser där de eller andra faser av sitt livscykelflöde.
Förutom ovanstående klassificeringar av miljöfaktorer tillämpas även andra klassificeringar i ekologi, som bygger på olika kriterier, beroende på forskarens intressen.

Introduktion

Plattformen är åtminstone programkörningsmiljön och ... något annat som definierar funktionerna i utvecklingen och genomförandet av programkoden - Programmering Paradigms, programmeringsspråk, många grundläggande klasser.

Microsoft.net (.NET Framework) är en mjukvaruplattform. Innehåller följande huvudkomponenter: Common Language Runtime (CLR) och .NET Framework Class Library (.NET FCL).

CLS (gemensam språkspecifikation) - Den övergripande specifikationen av programmeringsspråk. Detta är en uppsättning mönster och restriktioner som är manuella för bibliotekets skapare och kompilatorer i .NET Framework. Bibliotek som är byggda i enlighet med CLS kan användas från alla programmeringsspråk som stödjer CLS. Språk som motsvarar CLS (till deras nummer är visuell C #, Visual Basic, Visual C ++ - Språk), kan integrera med varandra. CLS är grunden för nödinteraktion inom Microsoft.net-plattformen.

CLR (Common Language Runtime) - Runtime eller virtuell maskin. Ger montering. Huvudkomponenten .NET Framework. Under den virtuella maskinen är en abstraktion av ett inkapslat (separat) kontrollerat operativsystem på hög nivå, vilket säkerställer utförandet av programkoden och involverar lösningen av följande uppgifter:

§ Kodhantering (nedladdning och utförande),

§ Minneshantering när du lägger objekt,

§ Isolering applikationsminne,

§ Kod säkerhetskontroll,

§ Intermediate språket omvandling till maskinkod,

§ Tillgång till metadata (Extended Type Information),

§ Undantagsbehandling, inklusive intersiva undantag,

§ Interaktion mellan hanterad och okontrollerbar kod (inklusive COM-objekt),

§ Service support för utveckling (profilering, debugging, etc.).

Kort sagt, CLR är en uppsättning tjänster som krävs för montering. Vart i programkod Montering kan vara både hanterbar (kod, när du utför CLR, aktiverar i synnerhet minneshanteringssystemet) och omanagd ("gammal" programkod).

CLR själv består av två huvudkomponenter: kärnor (mscoree.dll) och grundläggande klassbibliotek (mscorlib.dll). Närvaron av dessa filer på skivan är rätt tecken på att ett försök att installera plattformen görs åtminstone på datorn.

Övningskärnan implementeras som ett MSCOORE.DLL-bibliotek. När du bygger en montering i den är speciell information inbäddad, vilken, när du kör en applikation (EXE) eller när du laddar biblioteket (åtkomst till DLL från en obehandlad modul - Ring till LoadLibrary-funktionen för att ladda ner den kontrollerade enheten) leder till CLR-belastningen och initialisering. Efter att ha laddat CLR i processutrymmet för processen utför kärnans kärna följande åtgärder:

§ finner platsen för församlingen,

§ Laster montering i minnet,

§ Analys av monteringsinnehållet (identifierar klasser, strukturer, gränssnitt),

§ utför metadataanalys,

§ ger en sammanställning av kod i ett mellanliggande språk (IL) till plattformsberoende instruktioner (Assembler Code),

§ Utför kontroller i samband med säkerhet,

§ Med hjälp av huvudflödet av programmet, sänder kontrollen av monteringskoden till processorns kommando.

FCL (.NET Framework Class Library) är ett motsvarande CLS-specifikationer objektorienterat bibliotek av klasser, gränssnitt och typsystem (typvärden), som ingår i Microsoft .NET-plattformen.

Detta bibliotek ger tillgång till funktionella funktioner System och är utformat som grund för utvecklingen av .NET-applikationer, komponenter, kontroller.

Net Class Library är den andra CLR-komponenten.

Net FCL kan använda alla. NET-applikationer, oavsett destination, arkitektur som används för att utveckla programmeringsspråk. I synnerhet innehåller den:

§ Inbyggda (elementära) typer som presenteras i form av klasser (på plattform.net Allt är byggt på strukturer eller klasser),

§ Klasser för att utveckla ett grafiskt användargränssnitt (Windows Form),

§ Klasser för att utveckla webbapplikationer och webbtjänster baserat på ASP.NET-teknik (webbformulär),

§ Klasser för att utveckla XML och Internet-protokoll (FTP, HTTP, SMTP, SOAP),

§ Klasser för att utveckla program som körs med databaser (ADO.NET),

§ och mycket mer.

Net-applikation är en applikation som är utformad för att utföra på Microsoft.net-plattformen. Den implementeras i programmeringsspråk som motsvarar CLS.

MSIL (Microsoft Intermediate Språk, det är IL - Intermedia Language) - Intermediate Språk på Microsoft.net-plattformen. Källkoden för program för .NET-applikationer är skrivna i programmeringsspråk som motsvarar CLS-specifikationer. För programmeringsspråk kan motsvarande CLS-specifikation byggas omvandlare i MSIL. Således kan program på dessa språk sändas till mellankoden på MSIL. Tack vare CLS-överensstämmelse, som ett resultat av överföringen av programkoden som skrivs på olika språk, erhålls en kompatibel IL-kod.

Faktum är att MSIL är en assembler av en virtuell processor.

Metadata - När man konverterar en programkod i MSIL, bildas också ett metadatablock innehållande information om de data som används i programmet. Faktum är att dessa är uppsättningar av tabeller som innehåller information om de typer av data som definieras i modulen, de typer av data som refereras av den här modulen. Tidigare bevarades sådan information separat. Till exempel kan applikationen innehålla gränssnittsinformation som beskrivs i gränssnittsdefinitionsspråk (IDL). Nu är metadata en del av den hanterade modulen.

I synnerhet används metadata för:

§ Spara information om typer. Vid sammanställning krävs inte rubrik- och biblioteksfilerna. All nödvändig informationskompilator läser direkt från de kontrollerade modulerna,

§ Kodverifiering i processen för exekvering av modulen,

§ Dynamisk minneshantering (minnesfrigöring) i processen att exekvera modulen,

§ När du utvecklar en programstandard verktyg (Microsoft Visual Studio.net)

§ Baserat på metadata tillhandahålls av en dynamisk prompt (intellisense).

Språk för vilka överföring till MSIL:

och många andra språk.

Den exekverbara modulen är oberoende av kompilatorn (och inmatningsspråk). Signalen för applikationen är den styrda körbara modulen (styrd modul). Detta är en standard bärbar exekverbar (PE-portabel exekverbar) Windows-fil.

Elementen i den hanterade modulen presenteras i tabellen.

Den hanterade modulen innehåller en hanterad kod.

Den hanterade koden är den kod som utförs i CLR-miljön. Koden är baserad på de strukturer och klasser som meddelas i den ursprungliga modulen som innehåller förfarandena. Den hanterade koden måste överensstämma med en viss informationsnivå (metadata) för runtime-miljön. C #, visuell grundläggande kod, och JScript är hanterbar som standard. Visual C ++ - kod är inte hanterbar som standard, men kompilatorn kan skapa en hanterad kod, för detta måste du ange argumentet på kommandoraden (/ CLR). En av funktionerna i den kontrollerade koden är närvaron av mekanismer som låter dig arbeta med hanterade data.

Hanterade data - Objekt som under utförandet av modulkoden är placerade i det kontrollerade minnet (i den styrda högen) och förstörs av CLR-sopsamlaren. C #, visuell grundläggande och jscript. NET-data hanteras som standard. C # Data kan också märkas som okontrollerbar.

Montering - Grundläggande byggstenar i V.Net-ramen. Kontrollerade moduler kombineras i montering. Monteringen är en logisk gruppering av en eller flera hanterade moduler eller resursfiler. Kontrollerade moduler exekveras i exekveringstiden (CLR). Monteringen kan vara antingen körbar applikation (den placeras i filen med tillägg.exe) eller biblioteksmodul (i filen med tillägg.dll). Samtidigt har inget gemensamt med det vanliga (gamla provet!) Sammansättningen har inte körbara applikationer och biblioteksmoduler.

Monteringsdeklaration (manifest) - komponent hopsättning. En annan uppsättning metadatabord, som:

§ Identifierar enheten i form av ett textnamn, dess version, kultur och digital signatur (om enheten är uppdelad bland applikationer),

§ Bestämmer de filer som ingår i kompositionen (med namn och hash),

§ Indikerar de typer och resurser som finns i församlingen, inklusive beskrivningen av de som exporteras från församlingen,

§ Listar beroenden från andra församlingar,

§ Indikerar den uppsättning rättigheter som krävs av församlingen för korrekt drift.

Denna information används under genomförandet för att stödja korrekt drift av ansökan.

Processorn kan inte exekvera IL-kod. Och IL-koden översättningen utförs av JIT-kompilatorn (precis i tid - i rätt ögonblick), som aktiveras av CLR efter behov och utförs av processorn. I det här fallet sparas resultaten av JIT-kompilatoraktiviteten i RAM. Mellan fragmentet av den exklusiva IL-koden och motsvarande minnesenhet är en korrespondens inställd, vilken i framtiden tillåter CLR att sända kontrollkommandon till processorkommandon som spelas in i det här minnesblocket genom att passera JIT-kompilatorn igen.

I CLR-miljön är samarbete och interaktion av mjukvarukomponenter som implementerats på olika programmeringsspråk tillåtna.

Baserat på det tidigare bildade blocket av metadata CLR, ger den effektiv interaktion utförd av .NET-applikationer.

För CLR är alla byggnader desamma, oavsett vilka programmeringsspråk de skrevs. Det viktigaste är att de matchar clsna. Faktum är att CLR förstör gränserna för programmeringsspråk (tvärgående interoperabilitet). Således, tack vare CLS och CTS. NET-applikationer tillhandahålls faktiskt av applikationer på MSIL (IL).

CLR antar många problem som traditionellt har varit i den särskilda uppmärksamheten hos applikationsutvecklare. Funktionerna som utförs av CLR är:

§ Kontrollera och dynamiska (JIT) som sammanställer MSIL-koden i processorns kommando,

§ Minneshantering, processer och strömmar,

§ Organisation av interaktion av processer,

§ Lösning av säkerhetsproblem (inom systemet med säkerhetspolicy i systemet).

AppDomain (applikationsdomän) är en logisk monteringsbehållare, som används för att isolera applikationen inom processutrymmet för processen. Alla objekt som skapats av programmet skapas inom en viss applikationsdomän. Flera applikationsdomäner kan existera i samma operativsystemprocess. CLR isolerar applikationer genom att köra minne inom applikationsdomänen.

Koden som utförts i CLR (CLR-processen) är separerad från andra processer som utförs på datorn samtidigt.

Den vanliga processen startas av systemet inom ramen för den specifikt tilldelade målutrymmet. CLR ger möjlighet att utföra ett flertal hanterade applikationer i en process. Alla kontrollerad applikation associerad med sin egen domän (förkortad appdomain). Förutom huvuddomänen kan flera ytterligare domäner skapas utöver huvuddomänen.

Strukturen på CLR-körningen presenteras på bilden.

Domänegenskaper:

§ Domäner är isolerade från varandra. Objekt som skapats inom samma domän är inte tillgängliga från en annan domän,

§ CLR kan ladda upp domäner med alla församlingar relaterade till dessa domäner,

§ Ytterligare konfiguration och skydd av domäner är möjliga,

§ För att utbyta data mellan domäner har en särskild mekanism genomförts säker tillgång (Marshaling).

§ V.NET Framework utvecklade sin egen komponentmodell, vars element är .NET-enheter (.NET-montering), och för direkt och bakåtkompatibilitet med COM / COM + -modellen i CLR är inbyggda mekanismer (com interop) , tillhandahålla tillgång till COM-objekt enligt reglerna. NET och till COM-enheterna enligt COM-reglerna. Samtidigt kräver inte för. Net-applikationer inte registrering av komponenter i systemregister Fönster.

För att utföra. NET-applikationer är det tillräckligt för att rymma relaterat till den här applikationen Montering i samma katalog. Om monteringen kan användas i flera applikationer, är den uppdaterad och registrerad med ett speciellt verktyg i GAC (Global Assembly Cache med General Assembly Cache).

CTS - Vanligt typsystem Standardsystem Typer. Stöds av alla plattformens språk. På grund av det faktum att .Net-barnet är ett tal här kommer på grundstyper, klasser, strukturer, gränssnitt, delegater och uppräkningar.

Vanligt typsystem är en viktig del av körtiden, bestämmer strukturen av syntaktiska strukturer, metoder för annonser, användning och tillämpa vanliga typer av körtid. CTS fokuserar grundläggande information om systemet med vanliga fördefinierade typer, om deras användning och ledning (värden för transformation av värden). CTS spelar en viktig roll i integrationen av flerspråkiga hanterade applikationer.

Namnrymden är ett sätt att organisera ett typsystem i en enda grupp. Det finns ett allmänt språkbibliotek med grundläggande klasser. Och konceptet Namespace ger en effektiv organisation och navigering i det här biblioteket. Oavsett programmeringsspråket säkerställs tillgången till specifika klasser genom att gruppera inom ramen för gemensamma namn.

Rymdnamn Syfte
Systemet.
System.data. Att vädja till databaser
System.data.common.
System.data.oldb.
System.data.sqlclient.
System.Kollektioner Klasser för att arbeta med behållarobjekt
System.Diagnostics. Klasser för spår och felsökningskod
System.drawing. Grafiska supportklasser
System.drawing.drawing2d.
System.drawing.printing.
System.io. I / O-stöd
System.net. Stöddataöverföring på nätverk
System.reflection. Arbeta med användartyper under ansökan
System.reflection.emit.
System.runtime.interopservices. Stöd för interaktion med "Normal Code" - DLL, COM-servrar, fjärranslutning
System.runtime.remoting
System.Security Kryptografi, behörigheter
System.Träd Arbeta med flöden
System.web. Arbeta med webbapplikationer
System.windows.form. Arbeta med Windows-gränssnittselement
System.xml. XML Data Support

Utföra omanställda exekverbara moduler (vanliga Windows-program), Tillhandahålls direkt av Windows-systemet. Omanställda moduler utförs i windows-miljö Som "enkla" processer. Det enda kravet på vilket sådana moduler måste uppfylla är korrekta drift i Windows-miljön. De måste "korrekt" arbeta (häng inte systemet, förhindra minnesläckor, blockera inte andra processer och använd korrekt verktyg för att arbeta på uppdrag av processerna). Det vill säga, uppfylla de vanligaste reglerna för Windows.

Samtidigt är de flesta problemen med det korrekta utförandet av en omanagd modul (problem med interaktion, fördelning och frigörande minne) problemen med applikationsutvecklare. Till exempel är den välkända COM-tekniken ett sätt att organisera interaktionen mellan heterogena komponenter inom applikationen.

Objekt - I bred mening är detta ett minnesområde (stack eller heap), som tilldelats under programmets exekveringsprogram för inspelning av några värden. Det kännetecknas av en typ (fast uppsättning egenskaper som bestämmer storleken på det upptagna området, metoden för tolkning av värdet, värden, olika åtgärder som tillåts vid manipulering av ett objekt) plats i minnet (adress).

Skräpkollektionen är en mekanism som tillåter CLR att bestämma när objektet inte blir tillgängligt i det hanterade programminnet. Vid montering av soporna släpps det kontrollerade minnet. För applikationsutvecklaren innebär närvaron av en sopsamlingsmekanism att det inte längre bör ta hand om frisläppandet av minnet. Detta kan emellertid kräva förändringar i programmeringsstil, till exempel bör särskild uppmärksamhet ägnas åt förfarandet för utsläpp av systemresurser. Det är nödvändigt att genomföra de frigjorda metoderna systemresursersom fungerar under ansökan.

Stacken är ett speciellt organiserat minnesområde som är utformat för att tillfälligt lagra objekt (variabler och konstanter), för att sända parametrar när man ringer metoder för att spara returadressen. Kontrollstapel jämfört med ett gäng är enkelt nog. Den är baserad på att ändra värdet på motsvarande stapel vertex. När du skär storleken på stapeln, är föremål helt förlorade.

C # program

Programmet är korrekt byggt (orsakar inte invändningar från C # Compiler) sekvensen av förslag baserade på vilken monteringen bildas.

I det allmänna fallet skapar programmeraren en fil som innehåller klasser av klasser, som levereras till kompilatorns ingång. Resultaten av sammanställningen verkar vara en översättare i form av en montering och bestäms av programmernas preferenser. I princip kan monteringen vara två typer:

§ Bärbar körbar fil (PE-fil med Extension.exe) är lämplig för direkt utförande av CLR,

§ Dynamic Link Library File (DLL-fil med tillägg.dll) är utformad för att återanvändas som en komponent som en del av en applikation.

I vilket fall som helst, baserat på ingångskoden, bygger översättaren en modul på IL, manifest och bildar en montering. I framtiden kan monteringen antingen utföras efter JIT-kompilering, eller kan användas som en del av andra program.

Typer av applikationer.net

C # Språk kan användas för att skapa konsolapplikationer - Textprogram som körs i DOS-fönstret. Mest troligt kommer sådana tillämpningar att tillämpas på testning av klassbibliotek. Men mycket oftare måste C # -språket användas för att skapa program som har tillgång till flera tekniker relaterade till s.net. Den här artikeln presenterar en kort översikt över olika typer av applikationer som kan skrivas på C #.

Skapa ASP.NET-program

Ursprungligen ändrade utseendet på ASP.NET 1.0 fundamentalt webbprogrammeringsmodellen. ASP.NET 4 är en senior produktutgåva och byggd på grundval av tidigare prestationer. I ASP.NET 4 implementeras de viktigaste revolutionära stegen som syftar till att förbättra produktiviteten av arbetet. Det främsta målet med ASP.NET 4 - Låt dig bygga kraftfulla, säkra, dynamiska applikationer med det lägsta möjliga mängden kod.

ASP.NET-funktioner

Först och det är kanske det viktigaste är de sidorna strukturerad. Det vill säga varje sida är i huvudsak den klass som ärvd från class.net system.web.ui.sida.som kan åsidosätta en uppsättning metoder som orsakas under sidans livscykel. (Du kan uppfatta dessa händelser som specifika för händelsens släktingar OnApplication_start. och Onsession_startsom gick in i de globala. Eftersom filerna i den klassiska ASP-plattformen.) Eftersom sidans funktionalitet kan markeras i händelsehanterarna i ett visst ändamål, är ASP.NET-sidorna mycket lättare att förstå.

En annan trevlig egenskap hos ASP.NET-sidor är att de kan skapas i Visual Sludio 2010 - samma miljö där företagslogik och dataåtkomstkomponenter programmeras av samma ASP.NET-sidor. Visual Studio 2010, eller lösning (lösning), innehåller alla filer som är associerade med programmet. Dessutom kan klassiska ASP-sidor felsökas direkt i redigeraren. I tidigare tiderRelaterat till Visual InterDev fanns ett obehagligt behov av att specifikt konfigurera InterDev och projektets webbserver för att aktivera debugging.

För större klarhet möjliggör enheten i den separerade koden (kod-bakom) ASP.NET att du distribuerar ett strukturerat tillvägagångssätt ytterligare. ASP.NET kan du isolera serverns funktionalitet i klassrummet, kompilera den här klassen tillsammans med andra sidor till DLL-biblioteket och placera den här DLL i katalogen under HTML-delen. Direktiv @Page, som anges i början av sidan, associerar den här filen med klassen. När webbläsaren begär att sidan genererar webbservern händelser i klassen i sidklassfilen.

Den sista men lika viktiga egenskapen hos ASP.NET, som bör nämnas är ökad produktivitet. Medan de klassiska ASP-sidorna tolkades varje gång ett sidmeddelande, ASP.NET-sidor efter kompilering cachas på en webbserver. Det innebär att alla efterföljande förfrågningar om ASP.NET-sidor utförs snabbare än den första.

ASP.NET underlättar också att skriva sidor som visar formulär i webbläsaren som kan användas i företagsnätverket. Den traditionella utsikten över de formorienterade applikationerna är att de ger ett utvecklat användargränssnitt, men de är svårare att följa med dem, eftersom de lanseras på många klientmaskiner. Av denna anledning är folk beroende av formorienterade applikationer, endast när ett utvecklat gränssnitt krävs och det är möjligt att säkerställa tillförlitligt stöd till användarna.

Webms

För att göra det enklare att konstruera webbsidor erbjuder Visual Studio 2010 ett webbplatsbibliotek (webbformulär). Med det här verktyget kan du grafiskt skapa ASP.NET-sidor - på samma sätt som Windows skapas i Visual Basic 6 och i C ++ Builder. Med andra ord måste du dra de nödvändiga kontrollerna från verktygsfältet till formytan och korrigera sedan formkoden och skriv händelsehanterare för kontroller. När du använder C #-språket för att skapa en webbformulär skapar du en C #-klass ärvd från den grundläggande klassen Sida, och ASP.NET-sidan, som visar den här klassen som den separerade koden. Naturligtvis är du inte skyldig att ansöka om att skapa ett webbformulär exakt C #; För att göra detta kan du också använda Visual Basic 2010 eller något annat språkorienterat av ON.

Tidigare höll komplexiteten av webbutveckling några utvecklare lag från att försöka behärska det. För att uppnå framgång i att utveckla webbapplikationer fick jag veta många olika teknikersom VBScript, ASP, DHTML, JavaScript, etc. Användningen av webbformulär koncept till webbsidor har väsentligt förenklat byggandet av webbapplikationer.

Web Server Control Elements

De kontroller som används i webbformer kontrolleras inte i samma mening, där de är aktiva elementen. Istället är de XML-deskriptorer som tillhör ASP.NET Namespace, som webbläsaren dynamiskt omvandlas till HTML-deskriptorer och klientscenarier när sidan begärs. Överraskande kan webbservern visa samma serverns sidokontroll. olika sätt, generera en omvandling som uppfyller den specifika webbläsaren, som skickade en förfrågan. Det innebär att du enkelt kan skapa perfekta användargränssnitt för webbsidor utan att oroa dig för hur du uppnår sidan för att arbeta i någon av de tillgängliga webbläsarna - webbformulär kommer att ta hand om detta.

XML Web Services

Hittills utgör HTML-sidorna det mesta av världens breda webbtrafik. Men tack vare XML får datorer ett oberoende format som kan användas för att interagera på Internet. I framtiden kommer datorer att kunna använda XML för att utbyta information istället för att skicka varandra med dedikerade rader av meddelandet i ett speciellt proprietärt format som liknar EDI (elektronisk datautbyte). XML Web Services är utformade för en servicesorienterad webbmiljö när fjärrdatorer ger varandra dynamiska uppgifter som kan analyseras och omformateras innan den har den slutliga representationen för användaren. XML Web Services är ett enkelt sätt för datorer för att ge information i form av XML till andra datorer på Internet.

Inom ramen för teknisk terminologi är webbplatsen för XML V.net en ASP.NET-sida som returnerar en XML-kod på kundförfrågningar istället för HTML-kod. Sådana sidor är baserade på DLL-biblioteket i den separerade koden som innehåller klasser ärvda från webservice. Integrerad Visual Studio 2010 Utvecklingsmiljö erbjuder en mekanism som underlättar skapandet av webbtjänster.

Ett företag eller organisation kan ge företräde till XML-webbtjänster av två huvudorsaker. Den första anledningen är att de är baserade på HTTP; Websons kan använda befintliga HTTP-baserade nätverk som mellanhänder för informationsöverföring. En annan anledning är relaterad till det faktum att XML-webbtjänster använder XML, är det överförda dataformatet självdokumentation, öppet och oberoende av plattformen.

Skapa Windows Forms

Även om c # i.net är utformad, i synnerhet för webbutveckling, stöder de fortfarande de så kallade "tjocka" klientprogrammen - dvs. Program som ska installeras på slutanvändaren, där det mesta av behandlingen utförs. Detta ger Windows Forms Bibliotek (Windows Form).

Men om du börjar lära sig plattformen. Net, skulle jag rekommenderas inte Du studerar Windows-formulär och flyttar omedelbart till studien av den senaste WPF-tekniken.

Windows Presentation Foundation (WPF)

En av de nyaste revolutionära tekniken är Windows Presentation Foundation (WPF). När du bygger WPF-applikationer är beroende av användning av XAML. XAML Förkortning betyder Extensible Application Markup Language - Expanderbar Application Markup Language. Det här nya sättet att skapa applikationer i Microsoft-miljön, först inlämnad 2006, ingår i versioner. NET Framework 3.0, 3.5 och 4. Det innebär att för att starta någon WPF-applikation måste du se till att plattformen är installerad på Klientmaskinen. NET Framework 3.0, 3.5 eller 4. WPF-applikationer är tillgängliga för Windows 7, Windows Vista, Windows XP, Windows Server 2003 och Windows Server 2008 (endast dessa operativsystem tillåter dig att installera. Net Framework 3.0, 3.5 eller 4).

XAML är ett XML-meddelande som används för att skapa formulär som representerar alla visuella aspekter och beteende hos WPF-applikationer. Eftersom WPF-applikationen du kan arbeta programmatiskt är denna teknik ett steg mot deklarativ programmering till vilken hela branschen rör sig. Deklarativ programmering innebär att allting för att skapa objekt genom att skriva kod på ett sammanställt språk, till exempel C #, VB eller Java, förklaras allt med XML-liknande programmering.

Windows-tjänster

Windows Service (Windows-tjänst som ursprungligen heter NT Service) är ett program som är utformat för att börja i bakgrunden i Windows NT / 2000 / XP / 2003 / Vista / 7-miljön (men inte Windows 9X). Dessa tjänster är praktiska när du behöver organisera den kontinuerliga driften av program som är redo att svara på händelser, utan att behöva uttryckligen köra dem på användarens initiativ. Ett bra exempel är World Wide Web Service Service på webbservrar, som lyssnar på kundens webbförfrågningar.

Utveckla tjänster i C # är väldigt enkelt. I namnrymden System.service.process. Grundläggande klasser är tillgängliga. NET, som låter dig lösa de flesta malluppgifter som är förknippade med systemtjänster. Dessutom gör det möjligt att skapa ett C # Service-projekt, som använder C # källkoden för att bygga en Windows-tjänst.

Windows Communication Foundation (WCF)

Att studera sätt att flytta data och tjänster från en punkt till en annan, som används i Microsoft Technologies, hittar du att till ditt förfogande är ett brett utbud av möjliga lösningar. Du kan till exempel använda ASP.NET Web Services, Technology.Net-remotering, Enterprise Services eller MSMQ. Vilken teknik att välja? Svaret på den här frågan dikteras av det du försöker uppnå, eftersom var och en av dessa tekniker är att föredra i en viss situation.

Markera om det har Microsoft verkligen samlat in alla dessa tekniker tillsammans, och i den version av .NET Framework 3.0, liksom i dess införande av V.Net Framework 3.5 och 4, finns det en enda metod för att flytta data - Windows Communication Foundation (WCF). WCF-biblioteket ger möjlighet till inledande konstruktion av tjänsten med den efterföljande leveransen av denna tjänst på olika sätt (även av olika protokoll) genom att helt enkelt ändra konfigurationsfilen. WCF. - Ett mycket kraftfullt nytt sätt att ansluta distribuerade system.

Windows Workflow Foundation (WF)

Windows Workflow Foundation (WF) -tjänsten presenterades först i version. NET Framework 3.0, men genomgick nu en grundlig omstrukturering, vilket innebär att många nu kommer att finna det mycket mer användbart. Du kommer att upptäcka att Visual Studio 2010 har förbättrat arbetet med WF, och skapa egna arbetsflöden har blivit mycket bekvämare. Du hittar också nya flödesregleringar, flödesschema, samt ett antal nya åtgärder, som Dowhile, Foreach och Parallelforach.

I den mån som. Netto. Framework är en kraftfull plattform för att utveckla applikationer, det gör det möjligt att utveckla applikationer av en helt annan typ.

· Skrivbordsapplikationer (applikationer som körs på användarens lokala dator);

· Webpplikationer (applikationer som fungerar inom webbservern och är tillgängliga för användaren via webbläsaren under HTTP / HTTPS-protokollet);

· Webpplikationer med ett rikt användargränssnitt (applikationer som levereras av användaren med hjälp av HTTP / HTTPS-protokollet i webbläsaren och exekveras på klientsidan);

· Webbtjänster (programkod som körs på serverns sida och kan ringas från klienten för att få data eller utförande av operationen);

· Mobila applikationer (applikationer som utförs på mobila enheter).

För var och en av ovanstående tillämpningar i kompositionen. Netto. Ramar finns relevant teknik som gör att du kan skapa program. Dessutom ,. Netto. Ramar innehåller gemensamma bibliotek som kan användas i olika typer av applikationer. Till sådana bibliotek inkluderar bibliotek:

· Att arbeta med rader;

· Att arbeta med matematiska funktioner;

· Att arbeta med grafik

· Tillgång till data;

· Att arbeta med filer och andra I / O-operationer;

· Att utföra kryptografiska operationer

· Att organisera datasynkronisering mellan datakällor;

· Och ett stort antal andra bibliotek.

Låt oss granska alla typer av applikationer. Som redan nämnts ovan, för var och en av typerna av applikationer som en del av plattformen. Netto. Ramar finns speciella projektmallar.

Skrivbordsapplikationer De skiljer sig från att de börjar direkt på användarens dator. Detta är den vanligaste typen av applikation. Skrivbordsapplikationer har vanligtvis tillgång till användardatorresurser, som hdd, ljudutrustning etc. Fördelarna med denna typ av applikationer kan tillskrivas interaktivitetanvändargränssnitt och förmågan att arbeta ansökan oavsett nätverksanslutning Internet och andra resurser. Men för att arbeta sådana applikationer måste de installeras på den lokala en dator.

Skrivbordsapplikationer kan delas upp i tre typer - fönsterprogram, konsolansökningar och tjänster Fönster. Fönsteransökningar har grafiskt gränssnitt. Konsolansökningar har vanligtvis en kommandortyp, och gränssnitt Sådana tillämpningar är textuella, inte grafiska. Slutligen service Fönster Har inte ett användargränssnitt alls och arbetar i bakgrunden.

Att bygga applikationer med fönstret grafiskt gränssnitt inom plattformen. Netto. Framework kan använda teknik Fönster Formulär (tillgänglig från. Netto. Framework 1.0) och Windows Presentation Foundation. (Tillgänglig från. Netto.Framework 3.0). Den sista tekniken är mer ny och lovande.


Webbapplikationer De skiljer sig från skrivbordet vad de arbetar på distans på webbservern. Användare Använder webbapplikationer via webbläsare och protokoll Http./ Https. Fördelen med denna typ av ansökan är att det inte finns något behov av att installera dem en dator Varje användare - anknytning måste installera på webben server, varefter det blir tillgängligt för alla användare. Nackdelen med sådana tillämpningar är emellertid den begränsade förmågan att bygga användargränssnitt. Detta beror på det faktum att användargränssnitt Baserat på format Html., CSS. Och JavaScript, som är ganska begränsade. Därför är användargränssnittsfunktionaliteten ganska begränsad.

Eftersom webbapplikationer har en allvarlig nackdel - begränsade funktioner. förbi Bildandet av användargränssnittet - en ny typ av applikation uppträdde, vilket kallas rika online-applikationer eller internet-applikationer med ett rikt användargränssnitt (Rich Internet-applikationer, RIA). Ideologin av dessa applikationer är det webbläsare integrera speciella tillägg (plugin), som kan visa ytterligare innehållstyp. Efter det när användare Ta bort sidan i webbläsaren, programkoden överförs till klientsidan, som fungerar som en del av detta tillägg. Sedan i det här fallet fungerar hela koden på klientsidan, utvecklare verkar fler möjligheter förbi bildar användargränssnitt.

För att bygga en sådan typ av ansökan finns det flera tekniker. En av de mest kända teknikerna är Adobe-teknik Blixt.. Dessutom finns det också en teknik Microsoft Silverlight.vilket gör det möjligt för dig bekvämt integrera med andra tekniker inom. Netto. Ramverk.

En annan typ av applikationer är tjänster (eller webbtjänster). Tjänster är en viss programkod som finns på servern och startar förbi Begäran från användaren. Till exempel kan du skapa en uppsättning tjänster. förbi Arbeta med data från databaslagras på servern. Vanligtvis hänvisar andra typer av applikationer (skrivbordsapplikationer, webbapplikationer etc.) till tjänster för att utföra någon operation på servern eller få data från servern.

Inom plattformen. Netto. Ramar Det finns ett antal tekniker som gör att du kan skapa tjänster. Den äldsta tekniken är ASP..Net Web. Tjänster. Det låter dig skapa enkla webbtjänster som fungerar förbi Protokoll Http./ Https. Ytterligare utveckling Fast teknik Windows Communication Foundation (WCF). Denna plattform är det mest kraftfulla och flexibla verktyget som stöder olika typer kanaler ( Http., TCP., namngivna kanaler, etc.) och utökar signifikant utvecklingsmöjligheterna förbi Skapa tjänster.

Det finns också ytterligare filialer av WCF-projektet - det här är WCF Syndikering. Förlängningar (WCF-vila) och VÄSEN..Netto data. Tjänster. Dessa projekt är utformade för att säkerställa att det är bekvämt att bygga dataåtkomsttjänster.

Slutligen är den senaste typen av applikationer mobila applikationer. Mobila applikationer Arbeta som en del av mobila enheter baserat på operativsystemet Windows Mobile. För mobila enheter finns det också en delmängd av möjligheter. Netto. Ramar som heter. Net Compact. Ramverk.

Således hela spektret av teknik inom plattformen. Netto. Ramar kan lämnas till följande system.