Android dasturlash asoslari. Android uchun dasturlash: o'z ilovalaringiz va o'yinlaringizni yaratishni qanday boshlash kerak? Sinov usuli qanday bo'ladi?

Afsuski, Java-ning murakkabligi har kimning unda dasturlashiga to'sqinlik qiladi. Ob'ektga yo'naltirilgan dasturlash tili sifatida u sinf konstruktorlari ko'rinishidagi juda ko'p xususiyatlarga ega, ish paytida ilovalarning ishdan chiqishiga olib keladigan istisnolar va ishlab chiqishda doimo e'tiborga olinishi kerak bo'lgan boshqa jihatlar. Biroq, Java kodini o'qish va tuzish oson, ayniqsa uning dizayni uchun qabul qilingan standartlarga rioya qilingan taqdirda.

Android uchun Java-ni ishlab chiqishda nafaqat kodni o'z ichiga olgan Java sinflari, balki tizimga dastur haqida asosiy ma'lumotlarni taqdim etadigan XML-dagi manifest fayllar va buyruqlar yozilgan Gradle, Maven yoki Ant avtomatik qurish tizimlari qo'llaniladi. Groovy, POM va XML mos ravishda; sukut bo'yicha loyihalar Gradle-dan foydalanadi va Java-da ishlab chiqishni o'rganishning dastlabki bosqichlarida Groovy-da yozilgan fayllarni tahrirlashingiz shart emas. UI qismini joylashtirish uchun odatda XML ham ishlatiladi.

2014-yil dekabr oyida Google tomonidan Android OS uchun rasmiy ishlab chiqish muhiti sifatida tan olingan Android Studio yildan-yilga takomillashtirilib, Android ishlab chiquvchilari hayotini osonlashtirmoqda. Vizual UI muharriri va kodni to'ldirish kabi xususiyatlar ishlab chiqish jarayonini yanada qulayroq qilishga yordam beradi.

Android rivojlanishiga to'liq kirishga tayyor bo'lganlar uchun birinchi navbatda Java tavsiya etiladi. Biroq, agar tilning o'ziga xos xususiyatlari tufayli o'zingizni qiyin his qilsangiz, unda oddiyroq narsadan boshlang va o'zingizni ishonchli his qilganingizda qaytib keling.


Til rasmiy ravishda Android hamjamiyatiga 2017-yilning may oyida Google I/O’da taqdim etilgan. 2019-yilda allaqachon Google uni Android-ni rivojlantirish uchun afzal qilingan tanlov sifatida tan oldi va Java-ni fonga o'tkazdi. Bu shuningdek, yangi standart vositalarni (kutubxonalar, Android Studio funktsiyalari) yaratish birinchi navbatda Kotlinga qaratilganligini anglatadi.

2019 yildan beri Live Typing Android ishlab chiquvchilari faqat Kotlinda yozishadi. Superbro kabi loyihalar ushbu tilda yozilgan va asta-sekin unga tarjima qilinmoqda.

Kotlin Java, Scala, TypeScript kabi zamonaviy dasturlash tillarining eng yaxshilarini o'z ichiga oladi. Asosiy afzalliklarga ma'lumotlar turlarini avtomatik aniqlash, funktsional paradigmani qo'llab-quvvatlash va kengaytma funktsiyalari kiradi. Shu bilan birga, til bir qator keng ko'lamli muammolardan himoyalangan, masalan, "milliarddagi xato" yoki NullPointerException. Bularning barchasi uning mashhurligini tushuntiradi - 2019 yilgi StackOverflow so'roviga ko'ra, Kotlin hamjamiyat tomonidan eng sevimli besh tildan biri edi.

Kotlin Java-ga asoslangan bo'lib, tajribali ishlab chiquvchilar uchun o'tishni osonlashtiradi. Agar Java sizga notanish bo'lsa, avval u bilan ishlashni tavsiya qilamiz. Ko'p eski kodga ega yirik loyihalar Java-da yozilgan bo'lishi mumkin. Ya'ni, tijorat rivojlanishida Java bilimi talab qilinadigan vazifalar bo'lishi mumkin.

C/C++


Java NDK yordamida Android Studio tomonidan ham qo'llab-quvvatlanadigan quyi darajadagi tillar. Bu sizga o'yinlar yoki boshqa resurs talab qiladigan dasturlarni yaratish uchun foydali bo'lishi mumkin bo'lgan mahalliy ilovalarni yozish imkonini beradi. Android Studio Android NDK (Native Development Kit) orqali C/C++ yordamini taklif etadi. Bu shuni anglatadiki, kod Java Virtual Machine orqali emas, balki to'g'ridan-to'g'ri qurilma orqali ishlaydi, bu sizga xotira, sensorlar, imo-ishoralar va boshqalar kabi tizim elementlarini ko'proq boshqarish imkonini beradi, shuningdek, maksimal resurslarni siqib chiqarish imkoniyatini beradi. Android qurilmalari. Bu shuningdek, C yoki C++ tillarida yozilgan kutubxonalardan foydalanishingiz kerakligini bildiradi.

O'z navbatida, uni sozlash qiyin va unchalik qulay emas, shuning uchun uni faqat murakkab operatsiyalarni tezda bajarish kerak bo'lgan dastur modullarini yozish uchun ishlatish tavsiya etiladi: grafikalar, videolar va murakkab 3D modellarni qayta ishlash va ko'rsatish.


Android mahalliy ilovalarni yaratish uchun Python-dan foydalanishni qo'llab-quvvatlamasligi bu mumkin emas degani emas. Ushbu tilning muxlislari Python kodini kerakli holatga kompilyatsiya qilish imkonini beruvchi ko'plab vositalarni ishlab chiqdilar va turli kutubxonalarning mavjudligi Materiallar dizayni bo'yicha ko'rsatmalarga muvofiq hatto mahalliy interfeyslarni yaratishga imkon beradi. Eng mashhur ramka Kivy bo'lib, u sof Python-da Play Market ilovasini yaratishga imkon beradi.

ASOSIY


Oddiyligi va samimiyligi tufayli BASIC yangi dasturchilar uchun eng maqbul kirish nuqtasidir.

Yomon xabar shundaki, u Android Studio tomonidan qo'llab-quvvatlanmaydi va Unity va Xamarin muhitlari uchun mos emas. Yaxshi xabar shundaki, BASIC, B4A uchun maxsus ishlab chiqish muhiti mavjud bo'lib, unda siz Android ilovalarini yaratishingiz mumkin. B4A tez va oson dasturlash uchun mo'ljallangan RAD vizual prototiplash kontseptsiyasini o'zida mujassam etgan. Bu erda juda ko'p qulay dizayn echimlari va har qanday muammoda yordam beradigan foydali hamjamiyat mavjud.

Yana bir salbiy tomoni shundaki, BASIC-da resurs talab qiladigan o'yinlarni yaratib bo'lmaydi va dasturiy ta'minotning norasmiy holati tufayli Google yordamiga ishonmasligingiz kerak. Bu shuni anglatadiki, ilovalar Material Designga mos kelmaydi va siz faqat BASIC tilini biladigan professional dasturchi hisoblanmaysiz. Va ushbu maqoladagi tillar va muhitlarning butun ro'yxati orasida bu yagona pullikdir.

Lua (Corona SDK yordamida)


Androidni ishlab chiqishni o'rganish qulayligi va ishlab chiquvchining nazorat qilish hissi o'rtasidagi muvozanat. Corona o'zaro platformali grafik dvigateli Lua tiliga asoslangan. LUA Java-ga qaraganda ancha sodda va Corona SDK bu til bilan ishlashni oson va yoqimli qiladi. U barcha mahalliy kutubxonalarni qo'llab-quvvatlaydi, bu sizga ko'plab platformalar uchun yozish imkonini beradi.

Kod yozish uchun sizga Notepad++ kerak, uni kompilyatsiya qilmasdan ishga tushirish uchun esa emulyator kerak. Agar APK yig'ilgan bo'lsa va dastur o'rnatishga tayyor bo'lsa, siz ilovani onlayn vosita orqali ishga tushirishingiz mumkin. Asosiy dasturlash ko'nikmalariga ega bo'lgan holda, siz Corona-dan foydalangan holda Android-ni ishlab chiqishni qiyinchiliksiz o'zlashtirishingiz mumkin.

Ba'zi cheklovlar va cheklovlar mavjud edi, bu jiddiy narsalarni rivojlantirish va o'zingizni professional sifatida ko'rsatishni imkonsiz qildi. Agar sizga ilovangizda ilova ichidagi xaridlar kabi funksionallik kerak boʻlsa, uni ishlab chiqish imkoniyati uchun, xuddi mahalliy Android API-dan foydalanganingiz uchun toʻlashingiz kerak boʻladi.


Agar siz umuman veb-dasturlash, xususan HTML, CSS va JavaScript haqida biror narsa bilsangiz, bu bilim sizga PhoneGap ramkasidan foydalangan holda asosiy platformalararo ilovalarni yaratishda foydali bo'ladi. Bu bizning ro'yxatimizning oxirgisi, ammo Android rivojlanishini engishning eng muhim usuli emas.

Live Typing-da ilovalarni ishlab chiqish uchun PhoneGap-dan foydalanishning asosiy sabablari quyidagilar edi:

  • bir vaqtning o'zida bir nechta platformalar uchun dasturni ishlab chiqish vaqti va narxini qisqartirish (shahar sport muassasalariga obuna olish uchun ariza);
  • mijozning mavjud veb-saytidan va uning qismlaridan foydalanish imkoniyati (xizmatlar va onlayn xaridlar uchun to'lov uchun ariza).

Xulosa

Umuman olganda, Android uchun ilovalar deyarli har qanday mashhur tilda yaratilishi mumkin - hamma narsa uchun ramkalar va yordamchi dasturlar mavjud. Biroq, agar siz Android-ning professional dasturchisi bo'lishni istasangiz, operatsion tizimning barcha imkoniyatlaridan foydalaning va Android-ning eng so'nggi xususiyatlaridan foydalanish imkoniyatiga ega bo'lsangiz, Java yoki Kotlin sizning sodiq hamrohlaringiz bo'ladi. Ushbu tillar sizga notanish bo'lsa ham va murakkab ko'rinsa ham, ular Android operatsion tizimi uchun boy, chiroyli va funktsional ilovalar yozishni o'rganishga arziydi.

Va biz to'plagan maqolamizdan Android rivojlanishining nazariy tomoni bilan tanishishni boshlashingiz kerak.

Va agar siz mobil ilovani yaratishga qaror qilsangiz, lekin qaysi platformadan boshlashni bilmasangiz, unda Android-dan boshlang. Android ilovalarini yuklab olish iOSga qaraganda 65% yuqori, Android ilovalarini loyihalash va ishlab chiqish xarajatlari esa kamroq. Ishonchli mobil ishlab chiqish studiyasini qidiryapsizmi? , va biz siz bilan bog'lanamiz.

Biroz vaqt oldin rasmiy Android uchun IDE ADT plagini bilan Eclipse (Java uchun de-fakto standarti sifatida) mavjud edi. Biroz vaqt o'tgach, JetBrains-dan IDE Java dasturchilari orasida mashhurlikka erisha boshladi, keyin u uchun Android-ni ishlab chiqish uchun plagin paydo bo'ldi va odamlar asta-sekin Eclipse-dan unga o'tishni boshladilar.

Biroz vaqt o'tgach, Google Android Studio IDEA asosida nima qilishini e'lon qiladi. Va endi Android Studio-ning ikkinchi versiyasi yaqinlashmoqda va Eclipse faqat yomon tush sifatida eslanadi :)

Android Studio— Android uchun rasmiy ishlab chiqish muhiti. Asosan, Android Studio plaginlari bilan mashhur Java IDE IntelliJ IDEA hisoblanadi.

Hozirda Android IDE ni tanlashda quyidagi variantlar mavjud:

  1. Tutilish. Bir muncha vaqt oldin Java uchun eng mashhur IDE, endi Androidni ishlab chiqish uchun foydalaning juda tavsiya etilmaydi.
  2. IntelliJ IDEA. Ajoyib IDE, Android uchun yaxshi.
  3. Android Studio. Android uchun eng yaxshi IDE. U IDEA dan kichik narsalarda farq qiladi, lekin bu mayda-chuydalar juda va juda yoqimli va ishimizni ancha osonlashtiradi :) Bu yerda biz e'tiborimizni qaratamiz.

Avvalo, sizda JDK (Java Development Kit) o'rnatilganligiga ishonch hosil qilishingiz kerak. Bu Java-da ishlab chiqish uchun zarur komponent hisoblanadi va Android uchun ishlab chiqish Java-da amalga oshirilganligi sababli, Android uchun ishlab chiqish uchun ham talab qilinadi.

Ikkinchidan, "satr raqamlarini ko'rsatish" va "usul ajratgichlarini ko'rsatish" katakchalarini belgilang:

Birinchisi matnning chap tomonidagi satr raqamlarini ko'rsatadi, ikkinchisi koddagi usullar o'rtasida ajratgichlarni chizadi.

Ushbu ikkita variant, ayniqsa, yangi boshlanuvchilar uchun nihoyatda muhim va men nima uchun ular sukut bo'yicha o'chirilganligini tushunmayapman.

Uchinchidan, avtoto'ldirishni sozlang. Buni amalga oshirish uchun "Harf-harflar sezgir yakunlash" da "Yo'q" ni tanlang:

Keling, nima uchun bunday bo'lishini tushuntiraman. Odatiy parametr avtoto'ldirish faqat birinchi harf to'g'ri kiritilsa ishlaydi degan ma'noni anglatadi. Hech qaysi holatda kodni yozishni boshlashingizdan qat'i nazar, "Yo'q" opsiyasi avtomatik to'ldirishga olib keladi.

Ushbu variantning standart ma'nosi, oldingi ikkitasi kabi, meni hayratda qoldiradi.

Birinchi loyihani yaratish

Biz Android Studio-ni sozlash va o'rnatishni aniqladik, birinchi loyihamizni yaratish vaqti keldi.

Android Studio asosiy oynasida "ni bosing. Yangi Android Studio loyihasini ishga tushiring«:

Yangi oyna paydo bo'ladi, unda biz bir nechta amallarni bajarishimiz kerak.

Birinchisida siz dastur nomini, kompaniya domenini (paket nomi ushbu ikki parametrdan yaratiladi) va loyihaning diskdagi joylashuvini belgilashingiz kerak:

Android-da, Java-da bo'lgani kabi, dasturning asosiy identifikatori paket nomidir. Agar siz ilgari Java bilan ishlagan bo'lsangiz, uning nima ekanligini bilasiz. Bilmaydiganlar uchun men Google-ni tavsiya qilaman, yoki, masalan, bu erda.

Keyinchalik, Android Studio bizdan SDK ning qaysi va qaysi versiyalaridan foydalanishni xohlashimizni so'raydi. Hozircha "Telefon va planshet" SDK biz uchun etarli bo'ladi; API versiyasini tavsiya etilgan 15 o'rniga 16 ga o'rnating, chunki API 15 endi ahamiyatli emas va umuman keng tarqalmagan:

Keyingi ekranda bizdan qaysi dastur komponentlarini yaratmoqchi ekanligimiz so'raladi. "Bo'sh faoliyat" ni tanlang:

Keyingi bosqichda hech narsani o'zgartirmasdan "Finish" tugmasini bosing.

Ushbu jarayonni tugatgandan so'ng, siz nihoyat birinchi loyihangizni ko'rasiz:

Bu allaqachon juda funktsional, ammo uni ishga tushirish uchun bizga Android emulyatori kerak.

Android emulyatorini yaratish

Android emulyatorini yaratish uchun bizga kerak Android AVD menejeri(AVD = Android Virtual Device). Xavotir olmang, boshqa hech narsa o'rnatishingiz shart emas. Shunchaki ushbu tugmani bosing:

Keyin ushbu tugmada:

Va keyin bir necha marta "Keyingi" tugmasini bosing va nihoyat "Finish" tugmasini bosing.

Hello World ishga tushirilishi

Yaratilgan birinchi loyihamizni ishga tushirish vaqti keldi Android Studio!

Ushbu tugmani bosing (yoki Shift-F10):

Shundan so'ng siz dialog oynasini ko'rasiz, unda sizdan IDE yig'ilgan dasturni ishga tushirishi kerak bo'lgan qurilmani tanlashingiz so'raladi:

Ok bilan belgilangan katakchani belgilang va OK tugmasini bosing. Loyiha qurishni boshlaydi, emulyator ishga tushadi, dastur emulyatorga o'rnatiladi va dastur ishga tushadi.

Bu biroz vaqt talab etadi (kompyuteringiz qanchalik kuchli bo'lsa, shunchalik kam vaqt ketadi), chunki so'nggi bir necha yil ichida katta yaxshilanishlarga qaramay, emulyator juda sekin ishlaydi.

Va endi, 1-10 daqiqadan so'ng (emulyatorni ishga tushirgandan so'ng, loyihalar, albatta, tezroq yig'iladi va ishga tushiriladi), siz nihoyat emulyator ekranida Salom dunyongizni ko'rasiz!

Hammasi shu va keyingi darsda biz ko'rib chiqamiz.

Har kuni yangi darslar qo'shiladi! Hech narsani o'tkazib yubormaslik uchun bizning kanalimizga obuna bo'ling

Salom. Bugun men Linux Foundation veb-saytida Android uchun dasturlash kursi haqidagi postga duch keldim va shu bilan birga men ushbu darslarning tarjimasini ko'rishni istagan ko'plab sharhlarga duch keldim. Hozirdan boshlab, mikrokontrollerlar uchun to'rt yillik ishlab chiqishdan so'ng, men mobil qurilmalar uchun dasturlashni o'rganishni boshladim, shu bilan birga men darsning birinchi qismini tarjima qilishga qaror qildim.

Yangi boshlanuvchilar uchun Android dasturlash. 1-qism
Android smartfonlari va planshetlari bizning sumkalarimiz va cho'ntaklarimizda tobora ko'proq topilmoqda va Android dasturlash ham mashhur bo'lib bormoqda. Bu ajoyib ishlab chiqish platformasi - API yaxshi hujjatlashtirilgan va ulardan foydalanish oson va smartfoningizda ishga tushirishingiz mumkin bo'lgan narsani yaratish juda qiziqarli. Dastlab, siz Linux kompyuteringizda emulyator yordamida kodni yaratish va sinab ko'rish orqali buni amalga oshirishingiz mumkin. Ikki qismli kirishning birinchi qismi oddiy taymer ilovasini qanday yaratishni tushuntiradi va Android API bilan tanishtiradi. Kurs Java, XML va dasturlash texnologiyalari haqida asosiy tushunchani o'z ichiga oladi, ammo bu haqda juda noaniq tushunchaga ega bo'lsangiz ham, sinab ko'ring.
Ishga kirishish va rivojlanish muhiti
Versiyalar haqida bir oz: Android-ning so'nggi versiyasi 4.2 (Jelly Bean), ammo ushbu jadvaldan ko'rinib turibdiki, u hali keng tarqalmagan. 4.0 (Ice Cream Sandwich) yoki 2.3 (Gingerbeard) versiyalaridan birida ishlab chiqishni boshlash yaxshidir, ayniqsa Android versiyalari orqaga qarab mos (yaʼni 2.3 versiyasi uchun kodingiz 4.2 da ishlaydi) va keyingi versiya uchun ishlab chiqilgan ilovalar. har doim ham eskisi ustida ishlamaydi. Bu erda ko'rsatilgan kod 4.0 va 2.3 versiyalarida ishlashi kerak.
Rivojlanish muhitini olishning eng oson yo'li Android Bundle-ni o'rnatishdir, uni yuklab olishingiz mumkin. Bundan tashqari, sizga JDK 6 kerak bo'ladi (faqat JRE emas). Android gcj bilan mos kelmasligini unutmang. Agar siz allaqachon Eclipse yoki boshqa IDE dan foydalanayotgan bo'lsangiz, uni Android uchun sozlashga urinib ko'rishingiz mumkin. Buni qanday qilish tasvirlangan. Endi Eclipse yordamida yoki buyruq satridan Countdown deb nomlangan loyiha yarating. Men sozlamalarni BuildSDK 4.0.3 va minimal SDK 2.2 ga o'rnatdim va (Eclipse'da) BlankActivity shablonidan foydalandim.
Android uchun birinchi loyiham: interfeys
Android uchun bizning birinchi dasturimiz tugmani bosgandan keyin 10 soniyadan boshlab ortga hisoblashni ko'rsatadigan taymer bo'ladi. Kod yozishdan oldin biz interfeysni yaratishimiz kerak - foydalanuvchi dasturimizni ishga tushirganda nimani ko'radi. Siz res/layout/activity_countdown.xml ni ochishingiz va XML shablonini yaratishingiz kerak - Eclipse muharriri yoki matn/XML muharriridan foydalanib, quyidagilarni kiriting:
Yuklanmoqda...Yuklanmoqda...