Microsoft.NET texnologiyasi va ASP.NET .NET texnologiyasi Microsoft-ning eng so'nggi rivojlanishi bo'lib, ilovalar o'rtasidagi o'zaro ta'sir vositalarini rivojlantirishda yangi bosqich deb e'lon qilindi. Hozirda u Windows Windows 2003 operatsion tizimlar oilasi uchun .NET Framework-ga qo'shimcha sifatida, shuningdek yangi Windows Server 2003 mahsulotida mavjud va boshqa operatsion tizimlarda .NET Framework yaratish bo'yicha ishlar olib borilmoqda. .NET platformasi dasturlarni ishlab chiqishni soddalashtiradi va kodlarning ishonchliligini oshiradi. Xususan, bu ob'ektlarning ishlash muddatini, tilga oid neytral sinf kutubxonalarini va tillarni meros chegaralarini kesib o'tishni, istisnolarni qayta ishlash va disk raskadrovka jarayonini avtomatik boshqarish imkonini beradi.
ASP (Active Server Pages) bu Microsoft-ning kuchli texnologiyasidir, bu Internet-ilovalarni ishlab chiqishni osonlashtiradi va dinamik veb-sahifalarni yaratishda ishlatiladi.
ASP-ni dasturlash tili deb atash mumkin emas, chunki bu faqat sahifani shakllantirish jarayonida dastur modullarini ulash imkonini beradigan oldindan ishlov berish texnologiyasidir. Buni tarmoq uchun kutubxona bilan taqqoslash mumkin: arxivlarni qidirish qobiliyatiga ega bo'lgan "Katta entsiklopedik lug'at". ASP boshqa skriptga asoslangan texnologiyalarga nisbatan tezlikka nisbatan ustunlikka ega.
ASP-ning qulayligi, u Windows operatsion tizimining bir qismi bo'lgan maxsus PWS-serverda (Shaxsiy veb-server) ishlaydiganligidadir.
.NET asoslari - Common Language Runtime (tillarning umumiy ishlash vaqti) operatsion tizimning tizim xizmatlariga tayanadi va har qanday zamonaviy dasturlash tilida yozilgan kodning bajarilishini nazorat qiladi. Asosiy sinflar to'plami ishlab chiquvchilar istalgan dasturlash tilidan foydalanishi mumkin bo'lgan platforma xizmatlariga kirishni ta'minlaydi. Umumiy tilning davomiyligi va tayanch sinflari birgalikda .NET platformasining asosini tashkil qiladi. NET shuningdek yuqori darajadagi xizmatlarni taklif etadi:
ADO.NET - ma'lumotlar almashish uchun XML va SOAP-dan foydalanadigan ADO yangi avlodi;
ASP.NET - veb-sahifalarni dasturlash uchun har qanday (.NET-ga mos) tilni ishlatishga imkon beradigan ASP-ning yangi versiyasi;
Windows shakllari va veb-shakllar - mahalliy va veb-yo'naltirilgan dasturlarning foydalanuvchi interfeysini yaratish uchun sinflar to'plami.
.NET platformasida tizimlarni joylashtirish maxsus usulda amalga oshiriladi. Manba kodlari x86 protsessor ko'rsatmalariga yoki boshqa mashina kodlariga qo'shilmaydi. Buning o'rniga kompilyator Microsoft Intermediate Language (MSIL) da kod yaratadi. MSIL-ni o'z ichiga olgan fayl operatsion tizim .NET CLR-ni ta'minlasa, har qanday protsessor platformasida ishlashi mumkin.
.NET platformasining muhim tarkibiy qismi bu yangi ASP.NET muhiti (ilgari ASP + deb nomlangan). ASP.NET xususiyatlari shu qadar kattaki, uni ASPning keyingi versiyasi deb atash qiyin. U boshqa platformaga asoslangan va C # va Visual Basic oldingi skript tillari o'rniga uning uchun asosiy dasturlash tillari sifatida tanlangan. Shu bilan birga, yangi texnologiya sizga ASP sahifalarini istalgan tilda yozishga imkon beradi.
ASP.NET veb-ilovalarning rivojlanish siklini tezroq va osonroq qilish uchun hamma narsaga ega. Quyida ASP.NET-ning asosiy xususiyatlari va tamoyillari keltirilgan.
*Birinchi marta ishlatishda kompilyatsiya kodi.
*.NET bilan jo'natilgan komponentli kutubxonalarning keng tanlovi.
*Rivojlanishning kuchli vositasi - Visual Studio. NET
*Umumiy CLR ish vaqti amalga oshiriladigan platformalarda til mustaqilligi.
*Ko'p protsessor va klaster echimlari yordamida kengaytirish imkoniyatlari.
*Xatolarni qayta ishlashning yangi xususiyatlari.
*Ob'ektga yo'naltirilgan rivojlanish tillari (yangi C # tili).
*Qayta foydalanishning qo'shimcha xususiyatlari.
Shubhasiz, .NET va ASP.NET platformalari Internetni rivojlantirish uchun yangi imkoniyatlarni taqdim etdi. Ular barcha zamonaviy talablarga javob beradi va murakkab dasturlarni ishlab chiqishni sezilarli darajada tezlashtirishi va soddalashtirishi mumkin.
Ammo, hozirgi vaqtda .NET faqat Windows platformasi uchun to'liq mavjud. Boshqa tizimlarga o'tkazishni rivojlantirish davom etmoqda, ammo hali yakunlanmagan va ularning kelajakdagi natijalarini baholash qiyin. Veb-saytni ishlab chiqishga kelsak, ASP.NET IIS serveriga kuchli bog'langan va .NET arxitekturasi ASP.NET dasturlarini boshqa platformaga ulashga imkon bergan bo'lsa-da, hozirda real imkoniyat yo'q. Shunday qilib, eng muhimi - ko'p platformali hali .NET platformasi bilan qoniqish hosil qila olmaydi, ya'ni uning bunday tizim uchun ishlatilishi hali oqlanmagan. Ammo shuni ta'kidlash kerakki, bunday tizim .NET platformasi (ayniqsa veb-servislar) bilan birlashishi kerak, chunki undan kelajakda keng foydalanish shubhasizdir.
Xulosa Shunday qilib, serverda ishlaydigan ilovalarni yaratish uchun eng mashhur asosiy texnologiyalar ko'rib chiqildi. Yuqoridagilardan server dasturlari arxitekturasiga quyidagi asosiy yondoshuvlarni ajratish mumkin:
Alohida so'rov bajarilishi. Dinamik tarkib uchun har bir so'rov so'rovlarni qayta ishlash uchun alohida dasturni ishga tushiradi. Dastur mijozga uzatiladigan tarkibni yaratadi. Ushbu yondashuv klassik CGI skriptlarida qo'llaniladi.
Amalga oshiriladigan jarayonlarning to'planishi. Yondashuv avvalgisiga o'xshaydi, lekin agar so'rov takrorlangan bo'lsa, dastur yana boshlamaydi va qayta ishlash mavjud jarayonga o'tkaziladi. Ushbu yondashuv Java Servlets, Fast CGI texnologiyalarida qo'llaniladi.
Sahifa shablonlari. Agar so'ralsa, shablonlar odatda talqin qilingan ssenariy tili tomonidan yaratilgan dinamik tarkib bilan to'ldiriladi. Yondashuv ASP, JSP va PHP texnologiyalarida qo'llaniladi.
Veb-server kengaytmalari. Veb-server dinamik tarkib bilan ishlash uchun maxsus kengaytmalarni anglatadi. Kengaytmalar veb-serverga xosdir. Ushbu yondashuv IS API, NSAPI, mod_perl-da qo'llaniladi.
Ushbu yondashuvlarning har biri o'z imkoniyatlari va cheklovlariga va shunga mos ravishda uning qamroviga ega. Alohida so'rovlarni bajarish modeli ishlashni sezilarli darajada cheklaydi.
Oldin belgilangan talablarga muvofiq platformalarni ko'rib chiqaylik. CGI sharhga kiritilmagan, chunki foydalanish noqulay va samarasi past, va server kengaytmalari muayyan dasturiy mahsulotlar bilan juda qattiq bog'langan. So'rovni qayta ishlash sxemasiga muvofiq platformalar quyidagicha taqsimlanadi:
PHP - shablonlar. Apache veb-serverida bajarilganda, tarjimon serverning kengaytmasi bo'lishi mumkin (eksperimental IIS rejimida).
Java Servletlar - har bir servlet uchun jarayonlarning to'planishi.
JSP - andozalar. Qayta ishlash jarayonida ular Java Servletlarda oldindan to'plangan bo'lib, sizga jarayonni to'plash sxemasidan foydalanishga imkon beradi.
ASP.NET - shablonlar.Kod talqini emas, balki prekompilyatsiya sxemasi qo'llaniladi. Natijada, IIS veb-server kengaytmasidan foydalaniladi. Past darajadagi ishlov beruvchilar ham ishlatilishi mumkin.