Java skripti nima uchun. Javascript nima uchun va u nima qiladi? Misollar. Muqobil dasturlash tillari

JavaScript dasturlash tili ob'ektga yo'naltirilgan skript tili bo'lib, dastlab Netscape Communications tomonidan LiveScript nomi ostida ishlab chiqilgan, ammo keyinchalik "JavaScript" nomini o'zgartirgan va Sun Microsystems Java-ga yaqinroq sintaksisga ega. Keyinchalik JavaScript ECMA tomonidan ECMAScript nomi bilan standartlashtirildi. Microsoft o'zining versiyalarini JScript deb ataydi.

Ismning LiveScript-dan JavaScript-ga o'zgarishi Netscape Netscape Navigator brauzerida Java texnologiyasini qo'llab-quvvatlagan paytda sodir bo'ldi. Ushbu o'zgarish yangi boshlanuvchilar uchun dasturlashni o'rganayotganlarning ongida juda ko'p chalkashliklarni keltirib chiqardi. Java va JavaScript o'rtasida haqiqiy aloqa yo'q; ularning o'xshashliklari o'xshash sintaksis bilan boshlanadi va tugaydi va ikkala til ham Internetda keng qo'llaniladi.

JavaScript - ob'ektga yo'naltirilgan skript tili bo'lib, u veb-sahifalarni ko'rishda foydalanuvchining veb-brauzerida server tomonida (veb-serverlar) va mijoz tomonida bajarilishi mumkin bo'lgan tarkib bilan Hujjat Ob'ekt Modeli (DOM) deb nomlangan interfeys orqali o'zaro ta'sir qiladi. Ko'pgina veb-saytlar dummilar uchun dasturlashda kuchli dinamik veb-ilovalarni yaratish uchun mijoz tomoni JavaScript texnologiyalaridan foydalanadi. U Unicode-dan foydalanishi va kuch va quvvatdan foydalanishi mumkin muntazam iboralar(bu Netscape Navigator 4-ning 1.2-versiyasida taqdim etilgan va Internet Explorer 4). Satr sifatidagi JavaScript ifodalari EVAL funksiyasi yordamida bajarilishi mumkin.

JavaScript-ning asosiy muammolaridan biri bu o'rnatilgan kichik funktsiyalardir HTML sahifalar va bajarish uchun brauzerdan DOM bilan ishlashga imkon beradi muayyan vazifalar, bu statik HTMLda mumkin emas: masalan, yangi oyna ochish, shaklga kiritilgan qiymatlarni tekshirish, sichqoncha kursorini olib borganingizda tasvirni o'zgartirish va hokazo. Afsuski, bunday funktsiyalarni yozish juda zerikarli, chunki brauzerlar standartlashtirilmagan, turli brauzerlar turli xil ob'ektlar yoki skript usullarini yaratishi mumkin va shuning uchun siz ko'pincha turli xil versiyalarni yozishingiz kerak bo'ladi. JavaScript funktsiyalari turli brauzerlar uchun, lekin bu dasturlash asoslarini o'rganishda juda qulay emas.

JavaScript / ECMAScript quyidagi dvigatellar tomonidan qo'llab-quvvatlanadi:

  • Karkidon
  • O'rgimchak maymun

Atrof muhit

Belgilash izohi kodni tanimaydigan brauzerlarda matn sifatida ko'rsatilmasligini ta'minlash uchun talab qilinadi. XHTM/XML hujjatlaridagi teglar, ammo izoh berilsa, ishlamaydi. XHTML va XML-ni qo'llab-quvvatlaydigan zamonaviy brauzerlar tanib olish uchun etarlicha yaxshi ishlab chiqilgan, shuning uchun ushbu hujjatlardagi kod izohsiz qolmoqda.

HTML elementi skript ishlovchisi ulanishi mumkin bo'lgan ichki hodisalarni yaratishi mumkin. Huquqni yaratish uchun HTML hujjati 4.01 da, hujjat sarlavhasi bo'limiga tegishli standart skript havolasi bayonotini kiritishingiz kerak.

Til elementlari

O'zgaruvchilar

O'zgaruvchilar odatda dinamik tarzda yoziladi. O'zgaruvchilar oddiygina qiymat berish yoki "var" operatori yordamida aniqlanadi. Funktsiyadan tashqarida e'lon qilingan o'zgaruvchilar "global" doirada bo'lib, butun veb-sahifada ko'rinadi; funktsiya ichida e'lon qilingan o'zgaruvchilar ushbu funktsiya uchun lokaldir. O'zgaruvchilarni bir sahifadan ikkinchisiga o'tkazish uchun ishlab chiquvchi "cookie" ni o'rnatishi yoki yashirin ramka yoki oynadan foydalanishi mumkin. fon ularni saqlash uchun.

Ma'lumotlar tuzilmalari

Asosiy turi Perl dasturlash tili yoki Python, Postscript va Smalltalk lug'atlaridagi xeshlarga o'xshash assotsiativ massiv ma'lumotlar strukturasidir.

Elementlarga raqamlar yoki bog'langan nomlar (agar ular aniqlangan bo'lsa) orqali kirish mumkin. Shunday qilib, quyidagi iboralarning barchasi ekvivalent bo'lishi mumkin:

MyArray,
myArray.north,
myArray["shimoliy"].

Massivlarni e'lon qilish

MyArray = yangi massiv (365);

Massivlar shunday amalga oshiriladiki, faqat ma'lum (bo'sh bo'lmagan) elementlar xotiradan foydalanadi, ular "massivlarni zaryadsizlantiradi". Agar myArray = "u erda bir narsa" va myArray = "u erda boshqa narsa" to'plamini o'rnatsak, biz faqat shu ikki element uchun bo'sh joydan foydalanganmiz.

Ob'ektlar

JavaScript-da bir necha turdagi o'rnatilgan ob'ektlar mavjud: Ob'ekt, Massiv, String, raqam, mantiqiy, funktsiya, sana va matematik. Boshqa ob'ektlar DOM ob'ektlariga tegishli (oynalar, shakllar, havolalar va boshqalar).

Konstruktor funktsiyalarini belgilash orqali siz ob'ektlarni belgilashingiz mumkin. JavaScript prototipga asoslangan ob'ektga yo'naltirilgan tildir. Alohida ob'ektlar yaratilgandan keyin ularga qo'shimcha xususiyat va usullarni qo'shishingiz mumkin. Buning uchun siz ob'ektning ma'lum bir turining barcha misollari uchun prototip bayonotidan foydalanishingiz mumkin.

Misol: Ob'ekt yaratish
// Konstruktor funktsiyasi

Funktsiya MyObject(attributeA, attributeB) ( this.attributeA = attributeA this.attributeB = attributeB )
// Ob'ekt yaratish
obj = yangi MyObject("qizil", 1000)

// Ob'ekt atributiga kirish
ogohlantirish (obj.attributeA)

// Assotsiativ massiv belgisi bilan Access atributi
ogohlantirish (obj ["atributA"])

Ob'ektlar ierarxiyasi JavaScript-da takrorlanishi mumkin. Masalan:

Function Base() ( this.Override = _Override; this.BaseFunction = _BaseFunction; function _Override() ( alert("Base::Override()"); ) function _BaseFunction() ( alert("Base::BaseFunction()" ); ) ) funktsiyasi Derive() ( this.Override = _Override; function _Override() ( alert("Derive::Override()"); ) ) Derive.prototype = new Base(); d = new Derive(); d.Override(); d.BaseFunction();

Natijada biz ekranga chiqamiz: Derive::Override() Base::BaseFunction()

Tekshirish ko'rsatmalari
If ... else if (shart) ( iboralar )
Velosipedlar
while (shart) ( gaplar ) Do ... while do ( gaplar ) while (shart); For loop for (; ; ) ( iboralar ) For loop ... in
Ushbu tsikl ob'ektning (yoki massivdagi elementning) barcha xususiyatlaridan o'tadi.
for (ob'ektdagi o'zgaruvchi) (bayonot)

Tanlash operatori
switch (ifoda) ( case label1: iboralar; break; case label2: statements; break; default: statements; )

Funksiyalar
Funktsiya tanasi (tanasi bo'sh bo'lishi mumkin) ichida joylashgan va argumentlar ro'yxati funksiya nomidan keyin () ichida ko'rsatilgan. Funktsiyalar bajarilgandan so'ng qiymatni qaytarishi mumkin.

Funktsiya (arg1, arg2, arg3) (bayonotlar; ifodani qaytarish; )

Misol tariqasida Evklidning eng katta umumiy boʻluvchi algoritmiga asoslangan funksiyani koʻrib chiqamiz:

Funktsiya gcd(a, b) ( while (a != b) ( if (a > b) ( a = a - b; ) else ( b = b - a; ) ) return a; )

Berilgan funktsiyani chaqirishda argumentlar soni funktsiya e'lon qilinganda ko'rsatilgandek ko'p argumentlarni taqdim etishi shart emas. Funktsiyada argumentlarga argumentlar massivi orqali ham kirish mumkin.

Har bir funktsiya funksiyaning namunasi, ob'ektning asosiy turi. Funktsiyalar boshqa ob'ektlar kabi yaratilishi va tayinlanishi mumkin:

Var myFunc1 = new Function("alert("Salom")"); var myFunc2 = myFunc1; myFunc2();

Ekrandagi natija:

Foydalanuvchining o'zaro ta'siri

Ko'pgina foydalanuvchilarning o'zaro ta'siri HTML DOM orqali kirish mumkin bo'lgan HTML shakllari yordamida amalga oshiriladi. Biroq, juda ham bor oddiy vositalar foydalanuvchi bilan aloqa:

Ogohlantirish dialog oynasi
Muloqot oynasini tasdiqlang
Dialog chiziqlari
Holat paneli
Konsollar

Matn elementlari turli hodisalarning manbasi bo'lishi mumkin, agar EMCAScript hodisasi ishlov beruvchisi ro'yxatga olingan bo'lsa, harakatlarni boshlashi mumkin. HTMLda bu hodisalarni qayta ishlash funktsiyalari odatda HTML teglarida anonim funksiyalar sifatida aniqlanadi.

JavaScript® (ko'pincha JS ga qisqartiriladi) veb-sahifalar bilan ishlash uchun mo'ljallangan, talqin qilingan dasturlash tilidir. JavaScript Internetning mijoz tomonida ishlaydi va ma'lum voqealar sodir bo'lganda veb-sahifalar qanday harakat qilishini dasturlash uchun ishlatiladi.

JavaScript nima?

JavaScript - bu veb-sahifalaringizga interaktivlik va sezgirlikni qo'shadigan o'zaro platformali, ob'ektga yo'naltirilgan skript tili.

JavaScript veb-sayt ishlab chiqaruvchisiga veb-sahifa qanday ishlashini nazorat qilish imkonini beradi. Bu JavaScript-ni veb-hujjat tuzilishi uchun mas'ul bo'lgan HTML tilidan va CSS-ni tashkil etuvchi tildan tubdan farq qiladi. tashqi ko'rinish veb-sahifalar.

Yozilgan dasturlar JavaScript, skriptlar deb ataladi. Brauzerda ular to'g'ridan-to'g'ri HTML hujjatiga ulanadi va sahifa yuklanishi bilanoq darhol bajariladi. Skriptni bajarish jarayoni "tarjima" deb ataladi.

Agar PHP skripti server tomonida qayta ishlansa PHP yordamida tarjimon, keyin JavaScript foydalanuvchi brauzerida JavaScript tarjimoni tomonidan bajariladi.

Bugungi kunda har bir brauzer JavaScript-ni qo'llab-quvvatlaydi va bu uni Internet tiliga aylantiradi.

Brauzerda JavaScript HTML hujjatini manipulyatsiya qilish, tashrif buyuruvchi bilan ishlash va ba'zi cheklovlar bilan server bilan o'zaro aloqada bo'lish bilan bog'liq hamma narsani qila oladi:

  • Maxsus HTML shakllari to'g'ri to'ldirilganligini tekshiring.
  • Veb-kamera, mikrofon va boshqa qurilmalar bilan o'zaro aloqada bo'ling.
  • HTML elementlarining uslublarini o'zgartiring, elementlarni yashiring, ko'rsating va hokazo.
  • Qalqib chiquvchi oynalar va dialog oynalarini ko'rsatish.
  • Mehmon harakatlariga munosabat bildiring, sichqonchani bosish, kursor harakati va hokazolarni qayta ishlash.
  • Sahifani qayta yuklamasdan serverga so'rovlar yuboring va ma'lumotlarni yuklang.

JavaScipt - bu nihoyatda kuchli va samarali til bo'lib, uni albatta sinab ko'rishingiz kerak!

JavaScript va ECMAScript

Ushbu qo'llanma JavaScript deb nomlanuvchi til haqida yozilgan. Biroq, tilni tavsiflovchi spetsifikatsiyalarni belgilaydigan rasmiy standart uni ECMAScript deb ataydi.

Netscape JavaScript tilini axborot va kommunikatsiya tizimlarini standartlashtirishga bagʻishlangan Ecma International tashkilotiga taqdim etdi (ECMA dastlab Yevropa kompyuter ishlab chiqaruvchilari assotsiatsiyasining qisqartmasi edi), u yerda 1997 yilda ECMAScript standarti sifatida tasdiqlangan.

Bu standartlashtirilgan Java versiyasi ECMAScript deb nomlangan skript standartni qo'llab-quvvatlaydigan barcha ilovalarda bir xil ishlaydi. Ishlab chiquvchilar ochiq til standartidan JavaScript-ni o'zlarining ilovalarini ishlab chiqish uchun foydalanishlari mumkin.

Rasmiy ravishda, ishlab chiquvchilar ECMAScript-ga murojaat qilganda, ular odatda Ecma standarti tomonidan belgilangan "ideal" tilga ishora qiladilar. Ko'pincha bu ikki tushuncha bir-birini almashtiradi. Shuning uchun, ushbu qo'llanmada rasmiy standartga murojaat qilganda, ECMAScript nomi ishlatiladi va boshqa hollarda tilga murojaat qilganda, JavaScript ishlatiladi. Darslik ECMAScript standartining beshinchi nashriga ishora qilganda ES5 umumiy qisqartmasidan ham foydalanadi.

JavaScript Java emas

JavaScript-ni o'rganishni boshlashdan oldin, JavaScript Java emasligini tushunishingiz kerak. Bu ikkita mutlaqo boshqa dasturlash tillari. JavaScript-ning Java tili bilan o'xshash sintaksisidan boshqa hech qanday umumiyligi yo'q.

Java - bu Sun Microsystems tomonidan 1991 yildan beri ishlab chiqilgan va 1995 yil 23 mayda rasmiy ravishda chiqarilgan ob'ektga yo'naltirilgan dasturlash tili. Java kuchli va ancha murakkab dasturlash tili bo'lib, unda siz turli xil dasturlarni yozishingiz mumkin. Internet sahifalari uchun maxsus imkoniyat mavjud - appletlar yozish.

Applet - bu Java dasturi bo'lib, u yordamida HTML ga ulanishi mumkin. Java ilovalari kompilyator yordamida ishga tushiriladi. Java ilovalari veb-sahifaga joylashtirilgan, lekin diskda shunday saqlanadi alohida fayllar. Bu ikkilik fayllar, va agar siz ularni ochsangiz, ko'rmaysiz manba kodi applet.

JavaScript skriptlari veb-sahifa ichida joylashgan va undan alohida mavjud bo'lolmaydi. JS skriptlarini bajarish uchun kompilyator kerak emas, ular foydalanuvchi tomonidagi brauzer tomonidan bajariladi. JS skripti oddiy matn bo'lib, siz kodni yalang'och ko'z bilan ko'rishingiz mumkin - hech qanday maxsussiz dasturiy ta'minot.

Java tez, xavfsiz va ishonchli sinfga asoslangan tildir. Java-ning sinfga yo'naltirilgan modeli dasturlarning faqat sinflar va ularning usullaridan iboratligini bildiradi. Sinflarni meros qilib olish va Java tilida kuchli yozish odatda bir-biriga mahkam bog'langan ob'ektlar ierarxiyasini talab qiladi. Ushbu talablar Java dasturini JavaScript dasturlashdan ko'ra murakkabroq qiladi.

JavaScript bu oson til ega bo'lgan dasturlash oddiy sintaksis, maxsus o'rnatilgan funksionallik va minimal talablar ob'ektlarni yaratish uchun. O'zgaruvchilar, sinflar va usullarni e'lon qilishingiz shart emas. Usullarning umumiy, shaxsiy yoki himoyalanganligi haqida tashvishlanishingiz shart emas va interfeyslarni amalga oshirishingiz shart emas. JS skriptlarining o'zgaruvchilari, parametrlari va funksiyalarini qaytarish turlari aniq yozilmagan.

JavaScript-ni o'rganish uchun nima kerak?

JavaScript-ni oldindan bilish shart emas, lekin JavaScript veb-sahifalar ichida joylashgani va ularning dinamikasini nazorat qilgani uchun siz asoslarni yaxshi bilasiz deb taxmin qilinadi. HTML tili, garchi "parallel" JavaScript imkoniyati istisno qilinmasa ham.

Ko'pchilik JavaScript skriptlari HTML-ni "jonlantirish" uchun mo'ljallangan, ya'ni skript yaratishdan maqsad HTML teg parametrlarining qiymatlarini o'zgartirganda sahifaning ko'rinishi qanday o'zgarishini ko'rsatishdir. To'plangan va to'g'ri formatlangan ushbu turdagi stsenariylar ishlab chiqilgan veb-ilovaning namunasidir.

Birinchi JavaScript dasturimizni yozishni boshlashdan oldin, bizda barcha kerakli vositalar sozlangan va joyida ekanligiga ishonch hosil qilish juda muhim.

JavaScript-ni o'rganishda har bir darsda keltirilgan misollarni ishga tushirish, ularni o'zgartirish va o'rgangan materialingizni qanchalik yaxshi tushunganingizni ko'rish uchun ularni qayta ishga tushirish muhimdir. Bu JavaScript tarjimonini talab qiladi. Yaxshiyamki, siz allaqachon bilganingizdek, har bir veb-brauzerda JavaScript tarjimoni mavjud.

JavaScript dasturlarini yozish va bajarish uchun har qanday zamonaviy Internet-brauzerni o'rnatish kifoya (masalan, Yandex, Internet Explorer, Mozilla Firefox yoki Google Chrome).

Keyinchalik ushbu qo'llanmada siz JavaScript kodini to'g'ridan-to'g'ri HTML fayllariga, teglarga joylashtirish mumkinligini ko'rasiz va HTML fayl yuklanganda, kod brauzer tomonidan bajariladi. Shuni ta'kidlash kerakki, JavaScript kodining qisqa qismini sinab ko'rmoqchi bo'lganingizda buni har safar qilishingiz shart emas.

JavaScript kodi bilan tajriba o'tkazishning eng oson yo'li brauzeringizda o'rnatilgan Web Console vositasidan foydalanishdir.

Odatda, veb-konsol F12 yoki tugmachalarini bosib ishga tushirilishi mumkin issiq kombinatsiya tugmalar - Ctrl + Shift + J. Odatda odatiy "ishlab chiquvchi vosita" ning paneli yoki oynasi sifatida ochiladi alohida panel shaklda ko'rsatilganidek, brauzer oynasining yuqori yoki pastki qismida. 1.

Panel HTML hujjat tuzilishini, CSS uslublarini va hokazolarni oʻrganish imkonini beruvchi koʻplab yorliqlarni oʻz ichiga oladi. Ular orasida JavaScript konsoli yorligʻi mavjud boʻlib, u yerda JavaScript kod satrlarini kiritishingiz va ularni bajarishingiz mumkin.

Dastur kodini batafsilroq tahlil qilish uchun bizga kerak matn muharriri dastur kodini yozish va tahrirlashni soddalashtiradigan qo'shimcha funksionallik bilan. Shunday qilib, biz Notepad++ muharriridan foydalanamiz. Agar siz allaqachon boshqa muharrirdan foydalanayotgan bo'lsangiz va unga ko'nikishga muvaffaq bo'lsangiz, undan foydalanishni davom ettirishingizga hech narsa to'sqinlik qilmaydi.

Qo'llanmamizda keltirilgan misollarning aksariyati bilan siz o'rnatilgan vosita - JS mini-muharriri yordamida to'g'ridan-to'g'ri sayt sahifasida tajriba o'tkazishingiz mumkin.

Yangi oynada skriptni ishga tushirish natijasini ko'rish uchun belgini bosing va agar siz koddagi biror narsani o'zgartirmoqchi bo'lsangiz, belgini bosing.

Bu oddiy HTML hujjatidir

Biz HTMLga qaytamiz

Iltimos, diqqat qiling: Bu kabi oddiy JavaScript tajribalarida siz HTML faylida , teglarini ham qoldirishingiz mumkin.

JavaScript-ni o'rganish, boshqa dasturlash tillari kabi, oson ish emas, lekin bu albatta kuch va vaqtga arziydi. O'rganish faqat shunday emas, balki kuch bilan berilganda samarali bo'ladi. Siz yangi ko'nikmalar va qobiliyatlarni o'rganish uchun ongli ravishda harakat qilishingiz kerak. Harakatsiz olingan bilim suvdagi to'lqinlarga o'xshaydi - tez orada undan asar ham qolmaydi.

Elektron kitoblar, bepul onlayn kurslar va muammoli ta'lim uchun onlayn platformalar, bugungi kunda sifatli bilim manbalarini tanlash deyarli cheksizdir. Ammo o'zingizni qanday rag'batlantirish kerak o'z-o'zini o'rganish Mustaqil o'qishni qanday o'rganish kerak?

Bir nechta oddiy, ammo tasdiqlangan maslahatlarga amal qilishga harakat qiling.

Siz asta-sekin, lekin muntazam ravishda o'rganishingiz kerak. Muntazamlik o'rganishdagi muvaffaqiyat kalitidir. Har kuni kamida bir soat JavaScript-ni o'rganishga bag'ishlashingiz uchun kundalik tartibingizni rejalashtiring. Qisqa vaqt ichida hamma narsani birdaniga o'rganishga urinmang. O'z-o'zini tarbiyalash jarayonini kichik o'quv mashg'ulotlariga ajratish tez muvaffaqiyat tuyg'usini yaratadi va sizni ertasi kuni o'rganishga qaytishga undaydi.

O'qish uchun eng yomon vaqt - bu charchagan vaqt. Bunday daqiqalarda asosiy narsa o'zingizni majburlamang - kutilgan natijani olmaysiz. Inson miyasi biror narsani cheksiz o'rgana olmaydi - unga tanaffuslar berish kerak. 25/5 tamoyiliga ko'ra mashq qiling. 25 daqiqa dars berish va 5 daqiqa dam olish amaliyotini sinab ko'ring. Sizning miyangiz bunday bir xil yuklarga o'rganib qoladi va imkon qadar samarali ishlaydi.

Esda saqlash amaliyotlaridan foydalaning - o'rganishning asosi. Biz ma'lumotni qanchalik tez-tez eslasak, u xotiramizda shunchalik uzoqroq saqlanadi.

Kechiktirilgan eslab qolishning samarali usuli bu: kartaning bir tomonida siz o'rgangan materialga tegishli savolni, ikkinchisida esa unga javobni yozing. Karta mazmunini bilib oling, keyin bir kundan keyin javobni eslab qolishga harakat qiling. Agar siz to'g'ri javob bergan bo'lsangiz, karta keyingi takrorlashgacha bir haftaga qoldirilishi mumkin. Agar siz xato qilsangiz, ertasi kuni savolni takrorlashingiz kerak. Muvaffaqiyatli javoblar zanjiri qanchalik uzoq bo'lsa, keyingi takrorlashdan oldin interval shunchalik uzoq bo'lishi kerak.

Nazariy tadqiqotlar bilan bir qatorda, doimiy ravishda mashq qiling. Amaliy tajriba orttirish uchun siz shunchaki ko'p yozishingiz va misollarni tahlil qilishingiz kerak. yaxshi kod. Misollar bilan ishlashda, kodning barcha satrlarini diqqat bilan ko'rib chiqing - har bir satr qanday ishlashini tushunganingizga ishonch hosil qilishingiz kerak. Tajriba qilishdan qo'rqmang. Ba'zi ma'lumotlarni brauzer oynasida ko'rsatish va ularni tahlil qilishni o'rganing. Masalan, ekranda nima ko'rsatiladi va nimadan keyin siz xohlagan narsangizga erishdingizmi, agar bo'lmasa, nima uchun.

Qaysi o'quv usulini tanlagan bo'lsangiz ham, u siz uchun qiziqarli va mustahkam bo'lishi kerakligini unutmang amaliy mashg'ulotlar- misollar ming so'zga arziydi. Ko'p sahifali nazariyaga qaraganda misollarni tushunish odatda osonroq. Shunday ekan, jasoratli bo'ling! Umid qilamanki, ushbu qo'llanma sizning harakatlaringizda yaxshi yordam beradi.

Dasturlash shunchaki katta pul topishning bir usuli emas va hatto butunlay aqliy ish emas. Bu bizni o'rab turgan dunyo nimadan iboratligini tushunish, uni kichik zarrachalarga ajratish va keyin o'z mantiqimiz va bilimimiz asosida uni qayta yig'ish imkoniyatidir.

Dasturlash tillari shunchaki inson yaratilgan tizimlarda qoidalar tuzadigan vositadir.

Internet juda ko'p imkoniyatlarni taqdim etadi, ularni yorqin va tashabbuskor onglar qo'llaydi. Albatta, veb-ishlab chiqish g'oyalarni hayotga tatbiq etish uchun ham o'z vositalariga ega. Ulardan biri bu maqolada muhokama qilinadigan JavaScript dasturlash tilidir:

umumiy ma'lumot

Ko'pchilik, hatto IT sohasiga hech qanday aloqasi bo'lmaganlar ham Java so'zini eshitgan. Ilovalar faol ravishda yoziladigan inqilobiy platformadan mustaqil til mobil tizimlar. U Oracle qanoti ostidagi istiqbolli Sun kompaniyasi tomonidan ishlab chiqilgan. Biroq, hech bir kompaniyaning JavaScript bilan aloqasi yo'q:

Sundan talab qilinadigan narsa bu ismning bir qismini ishlatishga ruxsat berish edi. Ajablanarlisi shundaki, JavaScript hech qanday kompaniyaga tegishli emas.

Veb-ilovalarni yozishda ko'pincha JavaScript dasturlash qo'llaniladi. Qisqacha ro'yxatga olish uchun asosiy xususiyatlar Ushbu tilda quyidagilarni ta'kidlash kerak:

  • Ob'ektni yo'naltirish. Dasturning bajarilishi ob'ektlarning o'zaro ta'sirini ifodalaydi;
  • Ma'lumotlar turini o'zgartirish avtomatik ravishda amalga oshiriladi;
  • Funktsiyalar asosiy sinf ob'ektlari hisoblanadi. Bu xususiyat JavaScript-ni Lisp va Haskell kabi ko'plab funktsional dasturlash tillariga o'xshash qiladi;
  • Xotirani avtomatik tozalash. Axlat yig'ish deb ataladigan narsa JavaScript-ni C# yoki Java-ga o'xshash qiladi.

Agar biz JavaScript-dan foydalanishning mohiyati haqida gapiradigan bo'lsak, unda bu til sizga ijro uchun ishga tushirilishi mumkin bo'lgan kod (skriptlar deb ataladigan) yordamida harakatsiz veb-sayt sahifalarini "jonlantirish" imkonini beradi. Ya'ni, biz multfilmlarga o'xshatishimiz mumkin, bu erda html va css chizilgan belgilar va JavaScript ularni harakatga keltiradi.

Agar JavaScript sintaksisi haqida gapiradigan bo'lsak, u quyidagi xususiyatlarga ega:

  • Ro'yxatdan o'tish muhim. func() va Func() deb nomlangan funksiyalar butunlay boshqacha;
  • Operatorlardan keyin nuqta-vergul qo'yilishi kerak;
  • O'rnatilgan ob'ektlar va operatsiyalar;
  • Bo'shliqlar hisobga olinmaydi. Kodni formatlash uchun siz o'zingiz xohlagancha ko'p chekinishlardan, shuningdek qator uzilishlaridan foydalanishingiz mumkin.

Eng oddiy JavaScript kodi quyidagicha ko'rinadi:

Qo'llash doirasi

JavaScript nima uchun kerakligini va uni o'rganish qanchalik zarurligini tushunish uchun u qo'llaniladigan ba'zi sohalarni ajratib ko'rsatishimiz kerak. berilgan til dasturlash.

  • Veb-ilovalarni ishlab chiqish. Oddiy hisoblagich o'rnatmoqchimisiz, shakllar o'rtasida ma'lumotlar uzatishni tashkil qilmoqchimisiz yoki veb-saytingizga o'yin joylashtirmoqchimisiz? Keyin JavaScript bu masalada ishonchli yordamchi bo'ladi;
  • AJAXda "faol ishtirok". Ushbu texnologiya "fon" rejimida server bilan ma'lumot almashish orqali ilovalarning ishlashini sezilarli darajada tezlashtirishga imkon berdi:
  • OS. Ba'zi odamlar bilmagan bo'lishi mumkin, ammo Windows, Linux va Mac-ning o'z brauzer raqobatchilari bor, ularning eng katta ulushi JavaScript-da yozilgan;
  • Mobil ilovalar;
  • O'quv sohasi. Universitetdagi har qanday dasturlash mutaxassisligi u yoki bu darajada JavaScript-ni o'rganishni o'z ichiga oladi. Bu tilning dastlab unchalik kuchli bo'lmagan dasturchilar uchun ishlab chiqilganligi bilan bog'liq. JavaScript darslari mantiqiy ravishda to'qilgan asosiy kurs HTML, shuning uchun uni o'zlashtirish juda oddiy.
Afzalliklari va kamchiliklari

JavaScript-ni barcha muammolar uchun qandaydir davo deb o'ylamang va har bir dasturchi bu tildan tabassum bilan foydalanadi. Dunyoda hamma narsaning ijobiy va salbiy tomonlari bor. Birinchidan, kamchiliklarni ta'kidlaymiz.

  • Brauzerlar o'rtasidagi muvofiqlikni ta'minlash zarurati. JavaScript Internet texnologiyasi sifatida ishlaganligi sababli, siz u o'rnatgan qoidalarga dosh berishingiz kerak World Wide Web. Kod barcha yoki hech bo'lmaganda eng mashhur brauzerlarda to'g'ri ishlashi kerak;
  • Tildagi meros tizimi nima bo'layotganini tushunishni qiyinlashtiradi. JavaScript prototipga asoslangan merosni amalga oshiradi. Boshqa ob'ektga yo'naltirilgan dasturlash tillarini o'rgangan odamlar odatiy "bolalar sinfi ota-onalar sinfini meros qilib oladi" ga o'rganib qolgan. Ammo JavaScript-da bunday narsalar to'g'ridan-to'g'ri ob'ektlar tomonidan boshqariladi va bu sizning tasavvuringizdan tashqarida;
  • Yo'q standart kutubxona. JavaScript fayllar, kiritish-chiqarish oqimlari yoki boshqa foydali narsalar bilan ishlash uchun hech qanday imkoniyatlarni taqdim etmaydi;
  • Sintaksis umuman tushunishni qiyinlashtiradi. Kodning go'zalligi aniq JavaScript-ning kuchli tomoni emas, lekin dasturchilarning asosiy qoidasiga rioya qilinadi: "U ishlaydimi? Tegmang! "
Endi ba'zi afzalliklarni ta'kidlash kerak
  • JavaScript turli xil muammolarni hal qilish uchun juda ko'p imkoniyatlarni taqdim etadi. Tilning moslashuvchanligi muayyan sharoitlarga nisbatan ko'plab dasturlash naqshlaridan foydalanish imkonini beradi. Ixtirochi aql haqiqiy zavqga ega bo'ladi;
  • JavaScript-ning mashhurligi dasturchi uchun juda ko'p tayyor kutubxonalarni ochib beradi, bu esa kod yozishni sezilarli darajada soddalashtirishi va sintaktik kamchiliklarni tekislashi mumkin;
  • Ko'p sohalarda qo'llanilishi. JavaScript-ning keng imkoniyatlari dasturchilarga o'zlarini turli xil ilovalarni ishlab chiquvchi sifatida sinab ko'rish imkoniyatini beradi va bu, albatta, professional faoliyatga qiziqishni kuchaytiradi.

Plyuslardan ko'ra ko'proq minuslar borligiga e'tibor bermaslik kerak. JavaScript o'z joyiga mustahkam o'rnashib olgan va u erdan hech qanday tanqid yo'q bu daqiqa uni yiqitib yubormaydi.

O'qishni xohlovchilar uchun

JavaScript-ni puxta o'rganishga qaror qilganlarni qiyin va uzoq yo'l kutib turibdi. Yangi boshlanuvchilar uchun asosiy tavsiyalar mavjud bo'lib, ularga rioya qilgan holda siz o'rganishni sezilarli darajada soddalashtirishingiz mumkin.

  • Birinchidan, HTML. Asosiy ma'lumotlarsiz Internet uchun hech narsa qilishni boshlay olmaysiz. Kaskadli uslublar jadvallari (CSS) ham juda qulay bo'ladi;
  • Yangi adabiyotlardan foydalaning. Dasturlash qonunlari daxlsiz bo'lgan fizika emas, balki yangi o'quv qurollari- bular eskirganlar. IT-texnologiyalari doimo rivojlanib bormoqda va foydali yangilanishlarni e'tiborsiz qoldirmaslik kerak;
  • Dasturning barcha bo'limlarini o'zingiz yozishga harakat qiling. Agar biror narsa umuman ishlamasa, siz boshqa birovning kodini qarzga olishingiz mumkin, lekin faqat o'zingiz uchun har bir satrni birinchi marta tushunganingizdan so'ng;
  • Nosozliklarni tuzatish sizning eng yaxshi do'stingizdir. Xatolarni tezda topish - ulardan biri eng muhim daqiqalar dasturlashda;
  • Formatlash qoidalarini e'tiborsiz qoldirmang. Albatta, kod turli xil bo'shliqlar va bo'shliqlar tufayli yaxshilanmaydi yoki yomonlashmaydi, ammo dasturchi tomonidan o'qish va tushunish qulayligi ham muhim nuqtadir. Quyidagi kod? sezish juda qiyin, ayniqsa siz u bo'lmasangiz
  • O‘zgaruvchi nomlari lug‘aviy ma’noga ega bo‘lishi kerak. Yozish jarayonida oddiy dasturlar Bu umuman muhim emasdek tuyuladi, lekin kod satrlari soni mingdan oshib ketganda, barcha shaytonlar oyoqlarini sindirib tashlashadi;

Hali ham Javascript nima ekanligini bilmayapsizmi? Ushbu maqolada biz javob topamiz.

Bir oz nazariya

Brauzerlar va boshqa ko'plab dasturlar ko'pincha JavaScript-dan foydalanadi. Bu skript dasturlash tili bo'lib, u prototipga asoslangan modeldan foydalanadi va erkin teriladi. Ushbu tilga o'zidan oldingi - ECMAScript sezilarli ta'sir ko'rsatdi.

Uni yaratishning umumiy maqsadi uni mutaxassis bo'lmaganlar tomonidan foydalanishni osonlashtirish va boshqarishni osonlashtirish edi. JavaScript hozirda o'z turidagi eng mashhur dasturlash tillaridan biri hisoblanadi. Foydalanishni osonlashtiradigan narsa shundaki, u ilovalarga o'rnatilgan. JavaScript - bu ob'ektga yo'naltirilgan til, ammo uning funksionalligi odatda shunga o'xshash til turlaridan bir oz farq qiladi.

JavaScript veb-ishlab chiqishda faol foydalaniladi. Ochiladigan menyular, kalendarlar, taymerlar, kalitlar - bu va boshqa ko'plab elementlar endi ushbu tilning imkoniyatlaridan foydalangan holda amalga oshirilmoqda.

U ob'ektlar va sinflar bilan ishlashni boshqacha amalga oshiradi, avtomatik ravishda turlarni aniqlay oladi va anonim funktsiyalarni qo'llab-quvvatlaydi. JavaScript sintaksisi Java va C o'rtasida turadi, lekin funksionallikda u boshqa dasturlash tillari bilan chambarchas bog'liq. Java va JavaSkript o'rtasida ko'plab funksional farqlar mavjud. Masalan, Java ob'yekt yondashuvini sinflarda, JavaScript esa prototiplarda amalga oshiradi. Kod ma'lum konteynerlardagi veb-sahifaga kiritilishi mumkin.

Javascriptni qanday yoqish mumkin?

— javascript kodi ushbu konteynerga ulangan.
- ushbu html sahifasi bilan bir xil papkada joylashgan animate.js kutubxonasini ulash misoli. src(manba) - faylga yo'l.

JavaScript juda xavfsiz hisoblanadi, chunki uning kodi veb-sahifaga kiritilgan bo'lsa ham, u yuqori imtiyozlarga ega emas va boshqa sahifalar va ko'plab ob'ektlar bilan ishlay olmaydi. U hatto juda katta ocholmaydi dastur oynasi. JavaScript-ning asosiy zaifligi saytlararo skriptdir.

Skript foydalanuvchi ishlayotgan sahifaga o'rnatilgan va shuning uchun uning hisobini egallashi mumkin. Bu istalmagan xatti-harakatlarga olib kelishi mumkin. Bu brauzerning o'zidagi xatolar tufayli ham sodir bo'lishi mumkin. Skriptlarni ishlab chiqish va ular bilan ishlashda siz har doim kod yoki dasturning o'zi tajovuzkorlar qo'liga tushishi mumkinligini hisobga olishingiz kerak. Ayg'oqchi dastur yoki zararli ta'sir yaratish uchun ularni turli yo'llar bilan o'zgartirish yoki aralashtirish mumkin.

Bir xil skript shakllariga hech qanday maxfiy ma'lumotlarni kiritmasligingiz kerak. Ularning barchasi haqiqiy maqsadlarini chetlab o'tib, uchinchi tomon serveriga yuborilishi va shu tariqa o'g'irlanishi mumkin. Brauzerlar JavaScript-ni maxsus rejimdan tashqarida ham ishga tushirishi mumkin, bu esa xatolar va skriptlarning haddan tashqari kuchga ega bo'lishiga olib kelishi mumkin. Bu ulardan foydalanishdagi qiyinchiliklardan biridir. Odatda oddiy ilovalar sifatida ishga tushiriladigan skriptlar troyan dasturlari bo'lishi mumkin.

Github statistik ma'lumotlariga ko'ra, hozirgi vaqtda Java va JavaScript Python, PHP va Rubydan keyin eng mashhur dasturlash tillari hisoblanadi. Ismlari o'xshashligiga qaramay, bu juda boshqacha tillar. Siz JavaScript-ni Java-ning sodda va engil versiyasi deb o'ylashingiz mumkin. Lekin siz xato qilyapsiz. Bular turli xil ishlarni bajarishga imkon beradigan ikkita mutlaqo boshqa to'liq huquqli dasturlash tillari, ammo ayni paytda ular o'xshashlikdan ko'ra ko'proq farqlarga ega.

Ushbu maqolada biz sizning muammolaringizni hal qilish uchun eng mos bo'lgan tilni tanlashda yordam berish uchun java va javascript o'rtasidagi farqni ko'rib chiqamiz. Ko'rib turganingizdek, ikkala til ham bir xil vazifalarni bajarish uchun juda kam qo'llaniladi.

Dastlabki ishlab chiqilganidan keyin "Oak" va "Green" kod nomi bilan atalgan Java-ning birinchi versiyasi 1995 yil may oyida chiqarilgan. O'sha paytda ko'pgina dasturchilar bu tilni C/C++ tilining o'rnini bosuvchi til deb hisoblashgan, chunki u o'xshash sintaksisga ega va yangi tushunchalarni ham kiritgan. Til dasturlashni oson va xavfsizroq qildi.

O'sha paytda boshlangan va bugungi kunda ham davom etayotgan Java-ning asosiy tamoyillaridan biri dasturchilar bir marta kod yozishlari va uni hamma joyda ishlatishlari mumkinligi g'oyasidir. Kompilyatsiya qilinganidan farqli o'laroq bajariladigan fayllar, turli platformalar uchun turli formatlarga ega, java kodi Java-ni qo'llab-quvvatlovchi har qanday muhitda ishlashi mumkin bo'lgan yagona JAR fayliga kompilyatsiya qilinadi.

Bu Java mashinasi (JVM) yordamida amalga oshirildi. Java mashinasi oddiy dastur bo'lib, ular orasida vositachi bo'lib xizmat qiladi operatsion tizim va Jar fayli. U Java ko'rsatmalarini o'z ichiga olgan dastur faylini o'qiydi va ularni ish vaqtida ishlaydigan platforma uchun ko'rsatmalarga aylantiradi. Bu jarayon Just-in-time kompilyatsiya yoki JIT deb ataladi.

JavaScript nima?

JavaScript cheklash yaratish uchun oddiy til sifatida paydo bo'ldi HTML shakllari. Netscape Communications yanada dinamik Internetga ega bo'lishni xohlashga qaror qilganda, ular HTML ichida ishlatilishi mumkin bo'lgan yangi tilni yaratdilar. Bu til LiveScript deb nomlangan va o'n kun ichida ishlab chiqilgan.

Keyin til bu nom ostida bir muncha vaqt rivojlandi, ammo keyin nomni o'zgartirish uchun bir nechta sabablar paydo bo'ldi. Birinchidan, JavaScript va Java bir-birini to'ldirishi kerak edi, shuning uchun JavaScript shunga o'xshash sintaksisni oldi, ikkinchidan, o'sha paytda Java juda mashhur edi va shuning uchun ishlab chiquvchilar tilga ko'proq odamlarni jalb qilish uchun quduqdan foydalanishga qaror qilishdi. -nomdagi ma'lum so'z va Java-da Live o'rniga. JavaScript shunday tug'ilgan. Ammo tillarda faqat sintaksis o'xshash, keyinchalik Internetda Java kamroq va kamroq qo'llanila boshlandi va tillar o'z yo'nalishlarini ajratib turdi. Hozirgi vaqtda HTML, CSS va JavaScript veb-ishlab chiqishning asosiy komponentlari hisoblanadi.

Kompilyatsiya qilingan Javadan farqli o'laroq, JavaScript to'liq talqin qilingan tildir. JavaScript-dan foydalanadigan saytga tashrif buyurganingizda, brauzeringiz dastur uchun to'liq manba kodini oladi. Keyin u JavaScript dvigateli yordamida tezda bajariladi. Har xil brauzerlar Ular turli xil dvigatellardan foydalanadilar: V8 (Chrome), SpiderMonkey (Firefox), Chakra (Edge) va boshqalar.

Java yoki JavaScript-ning o'xshash jihatlari

Barcha farqlarga qaramay, ushbu tillar bir nechta o'xshashliklarga ega, agar siz ikkala tilni veb-ishlab chiqish uchun ishlatmoqchi bo'lmasangiz ham ko'rib chiqilishi mumkin. Mana asosiylari:

  • Maqsadga yo'naltirilgan dasturlash (OOP) - Ikkala til ham dasturchidan kodlashda ob'ektlar printsiplari va ular o'rtasidagi munosabatlardan foydalanishni talab qiladi. Ikkala til ham interfeyslar, inkapsulyatsiya va polimorfizm kabi OOP naqshlarini qo'llab-quvvatlaydi.
  • Forend Development - Ikkala til ham forendni, boshqacha aytganda, server bilan birgalikda ishlaydigan foydalanuvchi interfeysini ishlab chiqish uchun ishlatilishi mumkin. JavaScript HTML-ga yoki sayt sahifalarida uchinchi tomon kutubxonasi sifatida kiritilishi mumkin. Java esa brauzerda java ilovasi sifatida ishlashi mumkin.
  • Backend ishlab chiqish - boshqacha qilib aytganda - server dasturiy ta'minotini ishlab chiqish. Java uzoq vaqtdan beri Apache, JBoss va WebSphere loyihalari tomonidan backend texnologiyalarida qo'llanilgan. Yangi texnologiya,Node.js JavaScript-da yozilgan serverlarni ishga tushirish imkonini beradi.
Java va JavaScript o'rtasidagi asosiy farqlar

Dastlab, tillar butunlay boshqa muammolarni hal qilish uchun ishlab chiqilgan. Java ko'proq to'liq huquqli ilovalar yaratish uchun mo'ljallangan, JavaScript esa Internetda interfeysni tashkil qilish uchun skript tilidir. Java va javascript o'rtasidagi farqni tushunishni osonlashtiradigan asosiy farqlar:

  • Kompilyatsiya va sharhlash - yuqorida yozganimdek, Java kompilyatsiya qilingan dasturlash tilidir va JavaScript talqin qilinadi. Farqi faqat amalga oshirishda; aslida ikkala til ham turli platformalarda ishlashi mumkin.
  • Statik va dinamik turni tekshirish - Java statik turdagi tekshirishdan foydalanadi. O'zgaruvchining turi kompilyatsiya vaqtida tekshiriladi. Dasturchi o'zgaruvchining qanday turi bo'lishini aniq belgilashi kerak - satr, raqam, suzuvchi nuqta raqami va boshqalar). JavaScript, boshqa skript tillari kabi, dinamik yozishdan foydalanadi. Turlarning to'g'ri ishlatilishi ish vaqtida tekshiriladi. Dasturchi o'zgaruvchini e'lon qilishda uning turini ko'rsatishi shart emas. Ikkala yondashuv ham ko'plab afzalliklarga va kamchiliklarga ega. Java va javascript o'rtasidagi eng muhim farq shundaki, statik yozishda ko'pchilik xatolar ishlab chiqish bosqichida paydo bo'ladi, chunki kompilyator nima kutish kerakligini biladi, kod tezroq ishlaydi va kamroq xotira sarflaydi. Dinamik yozishning afzalligi shundaki, dasturlar tezroq va oson yoziladi.
  • Parametrlilik - bir vaqtning o'zida bir nechta ko'rsatmalar ketma-ketligini bajarish qobiliyatini amalga oshirish Java va JavaScript-da juda farq qiladi. Java parallel vazifalarni bajarish uchun bir nechta iplardan foydalanish imkonini beradi. JavaScript-da parallellikni amalga oshirish juda murakkab. U faqat Node.js da mavjud. Asosiy oqimda bu voqea tsikli deb ataladigan ishga tushirish navbati orqali amalga oshiriladi. Ikkala usul ham yaxshi ishlaydi, lekin Java mavzulari tezroq.
  • Sinflar va ob'ektlar - Java sinflar va ular orasidagi munosabatlardan foydalanadi. Ob'ektning xossalari sinfda aniqlanadi va sinfning o'zgarmas qismidir. Siz sinflarni boshqa sinflardan meros qilib olishingiz mumkin, keyin ular ota-onalarning barcha xususiyatlarini oladi. Siz hayron bo'lishingiz mumkin, ammo JavaScript-da darslar yo'q. U erda faqat ob'ektlar bor. Va meros boshqacha tarzda amalga oshiriladi. Barcha ob'ektlar to'g'ridan-to'g'ri boshqa ob'ektlardan meros qilib olinishi mumkin. Buning uchun kerakli ob'ektni prototip sifatida ko'rsatish kifoya.
Qachon foydalanish yaxshiroq?

Barcha tillarda bo'lgani kabi, Java va JavaScript-ni tanlashingiz ko'p omillarga bog'liq bo'ladi. Masalan, nima yaratmoqchi ekanligingiz va buning uchun qanday resurslaringiz borligi haqida. JavaScript veb-texnologiyalar uchun ko'proq mos keladi, Java esa yaratish uchun idealdir muntazam dasturlar va boshqa narsa.

Agar siz Java-ni ishlab chiqayotgan bo'lsangiz, uni tanlash yaxshidir:

  • Android ilovasi;
  • Tijoriy dasturiy ta'minot;
  • Ilmiy hisoblash dasturlari;
  • Katta ma'lumotlarni tahlil qilish dasturi;
  • BY umumiy maqsad yoki xavfsizlik vositalari;
  • Server dasturlari.

JavaScript-dan quyidagi sohalarda foydalanish yaxshidir:

  • Dinamik bir sahifali ilovalar (SPA);
  • Fort-end ilovalari (Query, AngularJS, Backbone.js, Ember.js, ReactJS);
  • Server ilovalari (Node.js, MongoDB, Express.js va boshqalar);
  • Mobil ilovalar (PhoneGap, Ract Native va boshqalar).
xulosalar

Ushbu maqolada biz java javascriptdan qanday farq qilishini ko'rib chiqdik. Ko'rib turganingizdek, tillar o'xshash nomga ega bo'lishiga qaramay, juda ko'p farqlar mavjud. Qaysi biri java yoki javascriptdan yaxshiroq degan savolga javob berish qiyin, chunki tillar juda xilma-xil dastur sohalariga ega. Umid qilamanki, bu ma'lumot siz uchun foydali bo'ldi.

Xulosa qilib aytganda, Taxtlar o'yini asosida Java va JavaScript o'rtasidagi qarama-qarshilik haqida video hazil: