Bosh sahifa Wiki AngularJS

AngularJS

AngularJS — Google xodimi Misko Xevery tomonidan boshlangan va 2010-yilda ochiq manba sifatida taqdim etilgan JavaScript freymvorki. U veb-ilovalar dunyosida ikki tomonlama ma’lumot bog’lash (two-way data binding) g’oyasini ommalashtirgan birinchi yirik freymvorklardan biri hisoblanadi.

Misko Hevery va Google tomonidan yaratilishi

Rivoyatga ko’ra, Xevery ichki loyiha ustida ishlayotganda, uning kichik qismini shaxsiy vaqtida qayta yozib, buni ancha kamroq kod bilan amalga oshirgan — bu tajriba AngularJS’ning asosiy g’oyalariga turtki bo’lgan. Google keyinchalik loyihani rasman qo’llab-quvvatishni boshladi.

Ikki tomonlama ma’lumot bog’lash innovatsiyasi

AngularJS’ning eng inqilobiy xususiyati — HTML shablonidagi element va JavaScript o’zgaruvchisi orasida avtomatik, ikki tomonlama sinxronlashni ta’minlashi edi. Foydalanuvchi forma maydoniga matn kiritganda, tegishli o’zgaruvchi avtomatik yangilangan, dasturchi buni qo’lda yozish zarurati yo’q edi — bu o’sha davr uchun katta yutuq hisoblangan.

MVW arxitekturasi

AngularJS o’zini qat’iy MVC (Model-View-Controller) emas, balki “Model-View-Whatever” (MVW) deb tavsiflagan, chunki u dasturchiga controller, service yoki boshqa turli tuzilmalardan foydalanish erkinligini bergan. Bu moslashuvchanlik freymvorkni turli xil arxitektura uslublariga moslashtirgan.

Angular’ga qayta yozilishi

2016-yilda Google AngularJS’ni davom ettirish o’rniga, uni butunlay yangi, TypeScript asosidagi “Angular” (raqamsiz, “2” versiyasidan boshlab) bilan almashtirdi. Bu ikki freymvork texnik jihatdan deyarli mos kelmaydi, AngularJS’dan Angular‘ga o’tish esa amalda to’liq qayta yozishga teng bo’lgan.

Rasmiy qo’llab-quvvatlashning tugashi

Google AngularJS uchun rasmiy uzoq muddatli qo’llab-quvvatlashni 2022-yil yanvar oyida to’xtatdi, bu esa freymvorkning rasmiy hayot tsiklini yakunladi. Shunga qaramay, ko’plab eski, o’nlab yil oldin yozilgan veb-ilovalar hamon AngularJS asosida ishlashda davom etmoqda, chunki ularni to’liq qayta yozish sezilarli xarajat talab qiladi.

Bog’liq tushunchalar

Angular, Google, JavaScript, Two-way data binding, MVC arxitekturasi, TypeScript