AppML tarixi
1999-yilda Refsnes Data AppML’ning birinchi versiyasini ishlab chiqdi.
O‘shandayoq AppML veb-klient va veb-server o‘rtasidagi HTTP so‘rovlari orqali aloqaga asoslangan edi. Keyinchalik bu usul AJAX nomi bilan mashhur bo‘ldi.
2000-yil sentabrida yirik norvegiyalik mijoz uchun ishlab chiqish loyihasi boshlandi. Loyihaning maqsadi — ulkan axborot tizimini (taxminan 300 ta ilova) faqat AppML’dan foydalanib, Windows desktop ilovasidan zamonaviy Internet ilovasiga o‘tkazish edi.
AppML asosidagi tizim 2001-yilda, rejalashtirilgan muddatdan bir necha oy oldin, dunyodagi birinchi tijoriy AJAX ilovasi sifatida ishga tushirildi. Loyiha katta muvaffaqiyat qozondi: oddiy veb-ishlab chiqishga nisbatan ishlab chiqish vaqti 75% ga qisqardi. O‘shandan beri tizimga yangi ilovalar qo‘shib borildi va hozir u 1000 dan ortiq ishlayotgan ilovani qamrab oladi.
2015-yil fevralida W3Schools AppML’ni hamma uchun ochiq yangi mahsulot sifatida qayta ishga tushirdi.
AppML’ning loyihaviy maqsadlari:
- AppML ilovalari Internet orqali ishlashi shart
- AppML ilovalari platformaga bog‘liq bo‘lmasligi shart
- AppML ilovalari faqat Internet standartlaridan (HTML, CSS, JavaScript) foydalanishi shart
- AppML ilovalari turli xil ilova ehtiyojlarini qo‘llab-quvvatlashi shart
- AppML ilovalari o‘zini o‘zi tavsiflaydigan bo‘lishi shart
- AppML ilovalarini ishlab chiqish, qo‘llab-quvvatlash va o‘zgartirish oson bo‘lishi shart
- AppML ilovalari kelajakka mos (eskirmaydigan) bo‘lishi shart
Quyidagi paragraflarda Refsnes Data’ning kelajakdagi veb-ilovalar haqidagi dastlabki qarashlari (1999) bayon qilingan.
Bajariladigan fayllar yo‘qoladi, JavaScript yashab qoladi
Kompilyatsiya qilingan bajariladigan fayllar (C yoki Java kabi tillardan kompilyatsiya qilingan) turli apparat ta’minotida ishlay olmaydi.
Bajariladigan fayllar (EXE fayllar, ActiveX va COM obyektlari, DLL fayllar) Internet orqali ishlay oladigan ilovalarni ishlab chiqishga to‘sqinlik qiladigan komponentlardir.
Kelajakdagi ilovalar klient kompyuteriga o‘rnatilgan bajariladigan fayllar yoki boshqa komponentlardan foydalanmaydi va ularga tayanmaydi.
Bizning tavsiyalarimiz:
Kelajakdagi ilovalaringizni faqat HTML, CSS va JavaScript yordamida yozing.
Kelajakdagi ilovalaringiz istalgan veb-brauzerda ishlashiga ishonch hosil qiling.
Veb-ilovalar Internet xizmatlariga aylanadi
Tarix muayyan maqsad uchun yaratilgan yirik ilovalarga to‘la. Ularning ko‘pchiligi juda tez yo‘q bo‘lib ketdi, chunki talablar o‘zgarishiga bardosh bera olmadi.
Ilovalar moslashuvchan, umumlashtirilgan bo‘lishi va parchalanib ketmasdan yoki buzilmasdan o‘zgarishlarga silliq moslashishi kerak.
Ilovalar kuniga bir nechta so‘rovdan millionlab so‘rovgacha xizmat ko‘rsatishga kengaya olishi kerak.
Ilovalar buzilmasdan bitta serverdan ko‘plab serverlarga tarqalishi yoki serverlar o‘rtasida ko‘chishi mumkin bo‘lishi kerak.
Ilovalar boshqa ilovalar bilan hamkorlik qila olishi kerak.
Ilovalar katta hajmdagi kodni o‘z ichiga olmasligi kerak.
Ilovalar yaratish va qo‘llab-quvvatlash oson bo‘lgan kichikroq xizmatlarga bo‘linishi kerak.
Ilovalar yuborilgan Internet so‘rovlariga ma’lumot qaytara oladigan Internet xizmatlari to‘plamidan iborat bo‘lishi kerak.
Ilovalar server bilan doimiy ulanishni saqlab turmasdan, standart Internet protokollari orqali xizmatlarni so‘rashi kerak.
Bizning tavsiyalarimiz:
Kelajakdagi ilovalaringizni Internetga asoslangan SOA (servisga yo‘naltirilgan arxitektura) yordamida yozing.
Ilova xizmatlaringizni umumiy va moslashuvchan, turli xil so‘rovlarga xizmat ko‘rsatishga tayyor qiling.
Kelajakdagi ilovalarni yaratish va tahrirlash oson bo‘ladi
Klientlar va serverlar ma’lumotlarni oson tushuniladigan tarzda almashadi.
Imkoni bo‘lsa, ilovalar kodlanmaydi.
Ilovalar kodni emas, modellarni tahrirlash orqali yaratiladi va o‘zgartiriladi.
Ilova tavsiflari inson o‘qiy oladigan shaklda bo‘ladi.
Ilova tavsiflari o‘zini o‘zi tavsiflaydigan bo‘ladi.
Ilovalarni dasturchilar emas, foydalanuvchilar yozadi.
Bizning tavsiyalarimiz:
Xizmatlarni tavsiflash uchun inson o‘qiy oladigan matnli fayllardan foydalaning va xizmatlarni shu tavsiflarni bajarish orqali taqdim eting.
Ilovalarni tavsiflash uchun matnli fayllardan (masalan, JSON fayllardan) foydalaning.
Ma’lumot almashish uchun matnli fayllardan (masalan, JSON fayllardan) foydalaning.
Ilovalarni bajarish uchun HTML, CSS va JavaScript’dan foydalaning.
Uchta kichkina veb-dasturchi...
Bir bor ekan, bir yo‘q ekan, yangi veb-sayt ishlab chiqayotgan uchta kichkina veb-dasturchi bor ekan.
1. Birinchi veb-dasturchi AppML’dan foydalanardi.
2. Ikkinchi veb-dasturchi o‘zining sevimli server dasturlash tilidan foydalanardi.
3. Uchinchisi professional korporativ veb-ishlab chiqish freymvorkidan foydalanardi.
Birinchi veb-dasturchi ikki kun ichida ishlaydigan demo tayyorladi. Foydalanuvchilar bilan hamkorlikdan so‘ng bir hafta ichida ajoyib prototip tayyor bo‘ldi. Ikki haftalik sinovdan keyin esa aqlli, tez va foydalanish oson veb-sayt nashr qilishga tayyor edi.
Ikkinchi veb-dasturchining veb-sayti 6 oydan keyin tayyor bo‘ldi. Biroq WWW o‘z talablarini o‘zgartirgan edi va natijadan qoniqmadi. Veb-dasturchi loyihasiga katta o‘zgartirishlar kirita olmadi, chunki unda juda ko‘p kod bor edi. Shuning uchun u 2-versiyani ishlab chiqishni boshladi.
Uchinchi veb-dasturchi o‘z ishini hech qachon yakunlay olmadi. Professional veb-ishlab chiqish freymvorkidan foydalanish juda qiyin, uni tushunish juda murakkab va testlash deyarli imkonsiz edi.
Birinchi dasturchi buni qanday qilganini ko‘ring.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
