Ohjelmointi

Mikä on .NET Framework? Microsoftin vastaus Java: lle

Mikä on .NET Framework? .NET määritelty

 .NET on ohjelmistokehityskehys - ja siihen liittyvä työkalujen, kielten ja ajonaikaisen ekosysteemin - jonka Microsoft on luonut helpottamaan sovelluskehitystä useilla alustoilla työasemista mobiililaitteisiin. Vaikka .NET (lausutaan dot net, ja joskus kirjoitettu nimellä .Net) oli alun perin sidottu Microsoftin omistamaan Windows-käyttöjärjestelmään ja -alustoihin, kun se käynnistettiin 00-luvun alussa .NET-sovelluksia voidaan nyt kirjoittaa verkkoon, MacOSiin, iOS: iin, Androidiin, Linuxiin ja muuhun - ja .NET on muodollinen standardi, joka on virallisesti saatavilla avoimen lähdekoodin muodossa.

Microsoft kuvaa .NET: ää "yhtenäisenä olio-ohjelmointiympäristönä, olipa objektikoodi tallennettu ja suoritettu paikallisesti, suoritetaanko paikallisesti mutta Internet-hajautettuna vai etänä." .NET pyrkii tarjoamaan koodin turvallisen suorituksen, tuottamaan paremman suorituskyvyn kuin tulkitut kielet ja tekemään kehittäjäkokemuksesta yhdenmukaisen monenlaisissa sovelluksissa. 

.NET Frameworkin pääkomponentit

.NET Framework on ollut olemassa jo lähes 20 vuotta, ja siihen on tehty paljon muutoksia komponenttien käyttöönoton ja myöhemmin vanhentumisen aikana. Tällä hetkellä .NET: llä on kolme pääkerrosta:

  • .NET-standardikirjasto sisältää komponentit, jotka muodostavat infrastruktuurin melkein mille tahansa kirjoittamallesi sovellukselle - luokat ja tyypit, jotka ovat hyödyllisiä päivittäisten tehtävien suorittamisessa, kuten merkkijonojen ja primitiivien käsittely, tietokantayhteyksien luominen, I / O-operaatioiden suorittaminen ja niin edelleen .
  • Valinnainen sovellusmallit sisältää LVI-koodin eri alustoille, joihin .NET-sovellus voidaan ottaa käyttöön. On olemassa useita sovellusmalleja Windows-sovelluksille (perintö .NET: n läheisestä yhteydestä Microsoftin jatkuvasti kehittyvään lippulaiva-käyttöjärjestelmään) ja myös muille alustoille: esimerkiksi ASP.NET verkkosovelluksille ja mallit Macille ja muille mobiilialustat.
  • yhteinen infrastruktuuri on komponenttien peruskerros, joka mahdollistaa koko ekosysteemin tosiasiallisen toteuttamisen käytännössä kääntäjistä kieliin ajonaikaisiin komponentteihin. Nämä ovat ratkaisevan tärkeitä ymmärtäessä, mitä .NET tarjoaa, joten tarkastelemme niitä tarkemmin seuraavissa osioissa. 

Kuinka .NET Framework toimii

.NET Frameworkin pääkomponentit tekevät yhteistyötä sovellusten kirjoittamisen helpottamiseksi. Vakiokirjasto- ja sovellusmallit tarjoavat paljon koodia, jotta voit hoitaa ohjelmoinnin perustehtävät sinulle, joten sinun ei tarvitse keksiä pyörää uudestaan ​​jokaisessa rakentamassasi sovelluksessa. Ja yhteinen infrastruktuuri huolehtii suuresta osasta näiden sovellusten käyttöönottoa.

Millä tahansa .NET-kielellä kirjoitettu koodi (lisää siitä hetkessä) käännetään välitavukoodikieleksi nimeltä Common Intermediate Language, tai CIL. CIL-koodi ei ole ihmisen luettavissa, mutta se voidaan siirtää eri käyttöjärjestelmissä ja alustoilla. Tämän jälkeen Common Language Runtime kokoaa CIL: n uudelleen, tai CLR. CLR-toteutukset ovat alustakohtaisia, ja ne kokoavat CIL-koodin koneellisesti luettavaksi koodiksi, joka voidaan suorittaa hetkellä alustalla. Eri CLR-versiot tukevat sekä ajantasaista että ennenaikaista kokoamista.

Paikallisen koneellisesti luettavan koodin luomisen yhteydessä CLR hallitsee myös monia matalan tason sovellustoimintoja, kuten roskien keräystä ja ketjutusta, jotka ovat ratkaisevia sovelluksen suorituskyvyn kannalta, mutta kehittäjien on usein työlästä käsitellä niitä. Yhdessä CIL ja CLR muodostavat .NET Common Language Infrastructure -ympäristön (CLI, ja kyllä, tiedämme, että kaikki nämä lyhenteet ovat samanlaisia ​​ja eräänlainen sekava).

Kaiken tämän pitäisi kuulostaa tutulta jokaiselle, joka on työskennellyt Java-alustan kanssa, koska se noudattaa samaa perusparadigmaa - suuret käytettävissä olevat kirjastokirjastot, välittäjätavakoodi ja alustakohtainen ajonaika, joka automatisoi muistin hallinnan, ovat molempien tarjousten ominaisuuksia. .NET kehitettiin 90-luvun loppupuolella, Javan alkuperäisen kukoistuksen aikana, ja se oli alun perin kilpailija Java Enterprise Edition -alustalla; Java-kieli ja C #, ensimmäinen ja merkittävin .NET-kieli, ovat molemmat peräisin C: stä ja ovat semanttisesti samanlaisia.

Mitä ovat .NET-ohjelmointikielet?

C #, joka ilmoitettiin suurella äänenvoimakkuudella .NETin käynnistämisen jälkeen vuonna 2000, on tunnetuin ja eniten käytetty .NET-ohjelmointikieli. Microsoft on kehittänyt sen sisäisesti osana .NET-aloitetta, ja suurin osa .NET-standardikirjaston luokista on kirjoitettu C # -koodilla. Kieli on olio-suuntautunut ja se on suunniteltu olevan tarpeeksi samanlainen kuin C, jotta C-, C ++ -, Java- ja JavaScript-kehittäjien olisi helppo oppia ja käyttää niitä nopeasti.

Microsoft tuo myös tällä hetkellä käyttöön kaksi muuta ohjelmointikieltä, joita voidaan käyttää .NET Frameworkin kirjoittamiseen. Yksi on F #, toimiva ohjelmointikieli, joka kuuluu ML-kieliperheeseen ja jonka juuret ovat viime kädessä LISP: ssä; toinen on Visual Basic, Microsoftin kunnioitettava, helposti opittava ohjelmointikieli asiakas-palvelinsovellusten kehittämiseen. Mutta nämä ovat vain jäävuoren huippu: Koska .NET koostuu avoimista standardeista, kuka tahansa voi kirjoittaa kielen, joka kääntyy CIL-tavukoodiin ja jonka CLR voi suorittaa. Wikipediassa on luettelo yli 20 tällä hetkellä ylläpidetystä CLI-kieliprojektista. Lähes kaikki niistä edustavat olemassa olevien kielten .NET-portteja Pascalista JavaScriptiin ja jopa COBOLiin.

Se, että tämä kielten monimuotoisuus voi esiintyä rinnakkain .NET Frameworkissa, on yksi alustan vahvuuksista. Koska koodi käännetään kaikki CIL-tavukoodiksi, .NET ei välitä millä kielellä kirjoitat sen; voit valita kielen omien mieltymystesi, kunkin kielen erilaisten vahvuuksien ja heikkouksien tai .NET Frameworkin eri näkökohtien perusteella, joihin jokainen kieli antaa sinulle pääsyn (tässä on joitain muunnelmia). Kuten todettiin, suurin osa tavallisesta kirjastosta kirjoitettiin C #: lla, mutta se ei estä sinua käyttämästä näitä luokkia muilla CLI-kielillä kirjoitetulla koodilla. Eri CLI-kielillä kirjoitetut komponentit voivat todellakin toimia vapaasti .NET-sovelluksessa.

.NET Framework vs. .NET Core (ja sen ulkopuolella) 

Huomaat, että olemme käyttäneet .NET Frameworkia koko artikkelissa viitataksemme alustaan ​​yleensä. Tarkkaan ottaen se ei ole oikein: Microsoft käyttää tätä ilmausta viitaten omaan pitkäaikaiseen .NET-standardinsa käyttöönottoon, joka keskittyy yksinomaan Windowsiin. .NET on historiallisesti ollut muita toteutuksia; yksi tunnetuimmista on Mono, avoimen lähdekoodin toteutus, joka julkaistiin ensimmäisen kerran vuonna 2004 ja jonka avulla .NET-sovelluksia voidaan ajaa Linuxissa. (Julkaisu aiheutti kiistoja, koska tämä oli aikakausi, jolloin Microsoftin ja avoimen lähdekoodin yhteisön välillä oli vielä melko vähän pahaa verta.) Mono muodostaa nyt Xamarin-alustan perustan, mikä mahdollistaa .NET: n rakentamisen. sovelluksia iOS: lle, Androidille, MacOS: lle ja Linuxille. Xamarin aloitti elämänsä Monon perustajien keksimäisenä, mutta Microsoft osti viime kädessä yrityksen, jonka he perustivat tukemaan projektia.

Kolmas merkittävä Microsoftin .NET-toteutus on .NET Core. Cross-platform-toteutus .NET Standardista, joka julkaistiin avoimena lähdekoodina vuonna 2016. .NET Core rakennettiin tuoreelta pohjalta ja poisti osan kertyneestä huijauksesta. .NET Frameworkissa, vaikka siitä puuttui myöskään kaikki ominaisuudet. Usean version .NET Standardista, kaikki Microsoftilta, on ymmärrettävästi jonkin verran hämmentävää. Kolumnisti Simon Bisson käsitteli vuonna 2017 kysymystä siitä, mitä toteutusta millä konteksteilla tulisi käyttää.

Mutta kaikki muuttuu niin kaukaisessa tulevaisuudessa. Marraskuussa 2020 Microsoft aikoo yhdistää kolme .NET-toteutusta nimellä .NET 5. .NET 5 on pohjimmiltaan seuraavan sukupolven .NET Core, johon on sisällytetty paljon komponentteja .NET Frameworkista ja Xamarinista. Useat .NET Framework -sovellusliittymät eivät kuitenkaan tee matkaa .NET 5: een. Siirron tarkoituksena on yksinkertaistaa kehittäjien asioita ja keskittää Microsoftin omat ponnistelut.

Mikä .NET Framework minulla on?

Tämän kirjoituksen jälkeen se on kuitenkin yli vuoden vapaata. Nykyinen uusin .NET Framework -versio on 4.8; .NET Core -sovelluksen nykyinen versio on 3.0. Microsoftilla on sivu, jossa on ohjeet siitä, kuinka voit oppia, mikä .NET Framework -versio on tällä hetkellä asennettuna tietokoneellesi.

Mihin .NET käytetään? 

Joten kaikki, mikä antaa sinulle paljon mitä ja Miten; mutta mitä saatat vielä miettiä, on miksi. Miksi käyttää .NET Frameworkia? Altexsoft-blogissa on hyvä erittely .NET-eduista ja -miinoista. Positiivisena puolena on, että .NET tarjoaa olio-ohjelmointimallin, jolla on luotettava ja yksinkertainen välimuistijärjestelmä ja kypsä IDE, ja se mahdollistaa joustavan käyttöönoton ja helpon ylläpidon. Lisäksi .NET-alustojen välinen luonne sallii koodin siirtämisen monenlaisiin päätepisteisiin. .NET on tarkoituksenmukaisin, jos rakennat monitasoisia sovelluksia yritystason infrastruktuureihin, jotka haluat pystyä laajentamaan ilman, että sinun tarvitsee tehdä täydellistä uudelleenohjausta.

Lataa .NET Framework

Oletko valmis aloittamaan kokeilun .NET: n kanssa? Lataa .NET Framework (Windows) tai .NET Core (Windows, Linux tai MacOS) Microsoftin verkkosivustolta; Docker-kuvia on myös saatavana. Löydät Xamarinin iOS- ja Android-laitteille GitHubista. Hyvää tutkimista!