Uploaded by temurbeknuriddinov9

” fanidan mustaqil ishi mavzu Android uchun Java dasturlash til

advertisement
O’ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA
KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
SAMARQAND FILIALI
“Telekommunikatsiya texnologiyalari va kasb ta‘limi” fakulteti
“Raqamli va ta’lim texnologiyalari” kafedrasi
“MOBIL ILOVALARINI ISHLAB CHIQISH”
fanidan
Mavzu: Android uchun Java dasturlash tilida ilovalar yaratish.
Bajardi: Abdurayimov Shahzod
KIS20-04-guruh talabasi
Qabul qildi: Jiyanov O.P.
SAMARQAND–2024
Mavzu: Android uchun Java dasturlash tilida ilovalar yaratish.
REJA:
1. Java dasturlash tili haqida umumiy tushunchalar
2. Android uchun Java dasturlash tilida ilovalar yaratish
Kalit so’zlar: Java, OOP,JVM, Java SE (Java Standart Edition), (Multithread WORA — Write Once, Run Anywhere, AVD Manager.
Java dasturlash tili haqida umumiy tushunchalar
Java dasturlash tili yuqori darajali, zamonaviy va kuchli dasturlash tillaridan
biridir. Java dasturlash tili 1990-yili dezaynlashtirilgan va u payti Sun Microsystems
kompaniyasiga tegishli bo’lgan. Xozir esa Oracle kompaniyasiga tegishli.
1995-yili James Gosling tomonidan Sun Microsystems kompaniyasining
kompanenti bo’lib realizatsiya bo’lib ishlab chiqilgan (Java 1.0 [J2SE]).
Sun Microsystems Java dasturlash tilining keying versiyasini boshqacha
nomladi, Java 2.0 versiyasi Java SE, Java EE va Java ME nomlari berildi. Bu
narsalar unga quyidagi eng zo’r imkoniyatlardan birini berdi : WORA – Write Once,
Run Anywhere. Ya’ni bir marta yoziladi, xohlagan joyda ishga tushiriladi.
Java quyidagi imkoniyatlari bilan boshqa tillardan ajralib turadi :
Obyektga yo’naltirilganligi, Java dasturlash tilida hamma narsa obyekt
Platformaliligi – Java dasturlash tili C va C++ dasturlash tillariga ko’p
jihatdan o’xshash, lekin Java C va C++ ning xatoliklari va hokazolardan xoli
qilingan. Java dasturlash tilida dasturni boshda bayt kodga o’giriladi (byte code),
keyin qaysi platformada, ya’ni qaysi operatsion sistemaga qarab shu platforma
uchun mashina kodiga o’giriladi va ishga tushiriladi. Bayt kod JVM ya’ni Java
Virtual Mashinasi orqali ishga tushiriladi. Bu JVM dasturi xozirda hamma
kompyuterlarda o’rnatilgan bo’ladi.
Oddiyligi: Java dasturlash tili o’rganish uchun va ishlash uchun juda soda
qilingan. Shuning uchun boshlovchi dasturchilarga aynan shu til taklif qilinadi. Agar
siz OOP haqida bilimlarga egamisiz, demak siz tez kunda Java dasturlash tili
bo’yicha master bo’laolasiz. Chunki OOP [ (object oriented programming)
{obyektga yo’naltirilgan dasturlash tili} ] Java dasturlash tilining ildizi desak ham
bo’ladi.
Kuchli himoyaga ega ekanligi: Java kodlarini ishga tushiruvchi dasturlar
kodlarni xavfsiz qilib keyin bizga ishlatish uchun xizmat qiladi.
Dinamikligi: Java dasturlash tili o’zi C va C++ lardan kuchlidir. To’g’ri har
bir dasturlash tilining o’z yo’nalishi bor. Shunday bo’lsada xozirda Java dasturlash
tili birinchilikni qo’lda saqlab kelyabti. Buning yana bitta sababi til dinamikligi. Bu
degani Java dasturlash tilining o’zi hisob kitob jarayonida xotirani tejab beradi.
Eng kamida kompyuter tezkor xotirasi : 128Mb yoki undan baland;
Eng kamida : 200 Megagers (MHZ) bo’lishi kerak (Pentium);
Quyidagi operatsion sistemalardan biri :
Linux 7.1 yoki Windows 95/98/2000/XP va undan yangilari;
Java JDK 5 – Oracle.com saytidan yuklash mumkin (Tekin);
Oddiy bir matn protsessori, misol uchun Notepad/Akelpad;
Java obyektga yoʻnaltirilgan dasturlash (OOP — Object Oriented
Programming) tili va u C++ ga ancha oʻxshash. Eng koʻp yoʻl qoʻyildigan xatolarga
sabab boʻluvchi qismalari olib tashlanib, Java dasturlash tili ancha soddalashtirildi.
Java kod yozilgan fayllar (*.java bilan nihoyalanuvchi) kompilatsiyadan
keyin bayt kod (bytecode) ga oʻtadi va bu bayt kod Java Virtual Mashinasi JVM
tomonidan oʻqib yurgizdiriladi.
Java afzalliklari:
WORA — Write Once, Run Anywhere (portable). Platforma tanlamaydi;
havfsizlik (ishonch yoʻq kodni havfsiz ishga tushirish);
hotirani havfsiz boshqarish (avtomat ravishda musorlarni yigʻadi);
tarmoq uchun dasturlar yozish ;
koʻp oqimli (Multi-thread) dasturlash;
dinamik & kengaytirish;
Class lar alohida fayllarda saqlanadi. Kerak boʻlsa ishlatiladi. Dinamik
ravishda imkoniyatini oshirish xam mumkin kerak boʻlsa.
Java texnologiyalari
Java SE (Java Standart Edition) — serverda, shaxsiy kompyuterda
desktoplarda ishlovchi dasturlar, appletlar yaratish uchun ishlatiladi. Bu texnologiya
yordamida yaratilgan dasturlar deyarli barcha operatsion tizimlarda ishlay
oladi(Windows NT, Macintosh,Linux va Solaris). Shu bilan birga JavaSE boshqa
Java turlarining asosi hisoblanadi
Android tizimida foydalanuvchi interfeysini yaratish
Kerakli dasturlar va yordam dasturlarini o'rnatish
JDK - Java ishlab chiqish to'plami;
Android SDK va AVD Manager - ishlab chiqish + emulyatori uchun
yordamchi dasturlar to'plami;
Android ishlab chiqarishni qo'llab-quvvatlovchi IDE:
Eclipse + ADT plaginlari;
IntelliJ IDEA Community Edition;
Netbeans + nbandroid plaginlari;
Kompyuterga dasturlar yuqorida ko'rsatilgan tartibda o'rnatiladi. Ro'yxatdagi
barcha IDE-larni o'rnatish shart emas. Faqat bittasini o’rnatish kifoya, bunda
o’rnatilgan dastur to’g’ri ishlasa bo’lgani.
Hozirgacha Java uchun eng zamonaviy IDE-lardan biri bo'lgan IntelliJ IDEA
Community Edition-dan foydalanmoqdaman.
Virtual qurilmani ishga tushirish
AVD Manager-ni ishga tushirgandan va qo'shimcha paketlarni (turli xil
versiyalardagi SDK) o'rnatgandan so'ng, kerakli parametrlarga ega virtual qurilmani
yaratishni boshlash mumkin. Interfeysni tushunish qiyin bo'lmasligi kerak.
3.1-rasm. Qurilmalar ro'yxati
3.2-rasm.Loyihani yaratish
IDEda loyihani yaratishni o'z ichiga olgan tayyorgarlik tadbirlarini
minimallashtirib, ishga kirishish lozim ayniqsa loyiha ta'limga tegishli bo'lsa va
ishlab chiqarish uchun qo'llanilmasa.
File->New Project:
3.3-rasm. Yangi hujjat yaratish jarayoni.
3.4-rasm. Loyiha tuzilishini
F6 tugmachasini bosish orqali loyiha yig'iladi, kompilyatsiya qilinadi va
virtual qurilmada ishga tushiriladi.
Loyiha tarkibi
Quyida loyiha tarkibiga kiruvchi kataloglar keltirilgan ular quyidagilar:
•
gen
•
res
•
src.
Gen papkasida loyiha qurilganda avtomatik ravishda hosil bo'ladigan fayllar
mavjud. Ularni qo'lda o'zgartirish mumkin emas.
Res papkasi rasmlar, matnlar (shu jumladan tarjimalar), standart qiymatlar,
maketlar kabi resurslarni saqlash uchun mo'ljallangan.
src - bu ishning asosiy qismi bo'lib o'tadigan papka, chunki dasturimizning
manba kodi bo'lgan fayllar shu erda saqlanadi.
Android tizimida foydalanuvchi interfeysini yaratish
MainActivity.java
package package nomi kiritilsin (com.example.gallery)
import android.app.Activity;
import android.os.Bundle;
import android.content.Context;
import android.content.res.TypedArray;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.ImageView;
import android.widget.Toast;
public class MainActivity extends Activity {
//---the images to display--Integer[] imageIDs = {
R.drawable.pic1,
R.drawable.pic2,
R.drawable.pic3,
R.drawable.pic4,
R.drawable.pic5,
R.drawable.pic6,
R.drawable.pic7
};
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Gallery gallery = (Gallery) findViewById(R.id.gallery1);
gallery.setAdapter(new ImageAdapter(this));
gallery.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView parent, View v, int position, long id)
{
Toast.makeText(getBaseContext(),
"pic" + (position + 1) + " selected",
Toast.LENGTH_SHORT).show();
//---display the images selected--ImageView imageView = (ImageView) findViewById(R.id.image1);
imageView.setImageResource(imageIDs[position]);
}
});
}
public class ImageAdapter extends BaseAdapter
{
private Context context;
private int itemBackground;
public ImageAdapter(Context c)
context = c;
//---setting the style--TypedArray a = obtainStyledAttributes(R.styleable.Gallery1);
itemBackground = a.getResourceId(
R.styleable.Gallery1_android_galleryItemBackground, 0);
a.recycle();
}
//---returns the number of images--public int getCount() {
return imageIDs.length;
}
//---returns the ID of an item--public Object getItem(int position) {
return position;
}
//---returns the ID of an item--public long getItemId(int position) {
return position;
}
//---returns an ImageView view--public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView = new ImageView(context);
imageView.setImageResource(imageIDs[position]);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
imageView.setLayoutParams(new Gallery.LayoutParams(150, 120));
imageView.setBackgroundResource(itemBackground);
return imageView;
}
}
}
main.xml
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Images of San Francisco" />
android:id="@+id/gallery1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
android:id="@+id/image1"
android:layout_width="320px"
android:layout_height="250px"
android:scaleType="fitXY" />
attrs.xml
Ushbu darsda Android Studio Layout Editor-dan layout yaratish uchun
qanday foydalanishni o'rganamiz.
Android
ilovasi
uchun
foydalanuvchi
interfeysi
(UI) layouts va widgets ierarxiyasi sifatida qurilgan.
Layoutlar - bu ViewGroup obyektlari, ularning bola(child) views-i ekranda
qanday joylashishini boshqaruvchi konteynerlar. Vidjetlar(Widgets) - bu View
ob'ektlari, tugma va matn kabi foydalanuvchi interfeysi komponentlari.
LinearLayout-View elementlarini bitta satr (Agar u Horizontal bo'lsa) yoki
bitta ustun (Agar u vertikal bo'lsa) sifatida namoyish etadi.
TableLayout-elementlarni jadval shaklida, qatorlar va ustunlar bo'yicha
ko'rsatadi.
RelativeLayout - har bir element uchun uning pozitsiyasi boshqa
elementlarga nisbatan o'rnatiladi.
FrameLayout-har bir element uchun tortishish kuchini ko'rsatish kerak.
Android ViewGroup va View sinflari uchun XML - ni taqdim etadi, shuning
uchun sizning interfeysingizning ko'p qismi XML fayllarida aniqlanadi. Ammo,
sizga XML yozishni o'rgatish o'rniga, ushbu va keyingi darslarda sizga Android
Studio-ning Layout Editor-dan foydalanib maket(layout) yaratishni ko'rsataman.
O'zingizning maket(layout)ingizni yaratish uchun ko'rinishlarni sudrab
tashlaganingizda Layout Editor tahrirlovchisi sizga XML kodini o'zi o'zgartiradi.
Layout Editor-ni ochish.
Quyidagilarni ketma-ket bajaring:
1) Project oynasida app > res > layout > activity_main.xml - ni oching.
2) Layout Editor-ga joy ajratish uchun Project oynasini yashiring. Buning
uchun View > Tool Windows > Project -ni tanlang yoki shunchaki Android Studio
ekranining chap qismidagi Project tugmasini bosing.
Project-ni bosing
3) Design yorlig'ini bosing.
4) Select Design Surface - ni bosing va Blueprint - ni tanlang.
Select Design Surface - ni bosing va Blueprint - ni tanlang.
5) Layout Editor-ning asboblar panelidagi Show - ni bosing va Show All
Constraints belgilanganligiga ishonch hosil qiling.
6) Autoconnect o'chirilganligiga ishonch hosil qiling. Autoconnect o'chirilgan
bo'lsa, quyidagicha bo'ladi:
Autoconnect o'chirilgan. Uni yoqib qo'ymang
7) Asboblar panelidagi Default Margins tugmachasini bosing va 16-ni tanlang.
Agar kerak bo'lsa, keyinchalik har bir ko'rinish uchun chegaralarni sozlashingiz
mumkin.
16-ni yozib Enter-ni bosing
8) Asboblar panelidagi Device for Preview - ni bosing va 5.5, 1440 × 2560, 560
dpi (Pixel XL) - ni tanlang.
Agar xohlasangiz boshqa qurilmani tanlang
Sizning Layout Editor-ingiz endi quyidagidek ko'rinadi:
Pastki chap tomondagi Component Tree paneli ko'rinishlarning ierarxiyasini
ko'rsatadi. Bizni holatda, ildiz ko'rinishi ConstraintLayout bo'lib, u faqat bitta
TextView ob'ektini o'z ichiga oladi.
Component Tree-ni bosing
XULOSA
Android ilovalarini Java dasturlash tilida yaratishda asosiy jarayonlarni
ta'minlaydi. Bu qadam-qadam ko'rsatmalar orqali siz Android ilovalarini Java tilida
osonlik bilan yaratish mumkin.
Mavzudan olingan xulosalarni aytadigan bo’lsak Java dasturlash tili muhitini
hamda mobil ilovani Java orqali qanday taribda ishga tushirish kerakligi tushunib
oldim . Mobil ilovalarga ma’lumotlar bazasini yaratish davomida bir qancha
dasturiy taminotlarsan foydalanib ushbu dasturlarni ha, o’rganib oldim. Bu usullar,
mobil ilovalarda ma'lumotlar bazasi bilan ishlash va bulut xizmatlarini qo'llashning
eng mashhur yollari hisoblanadi. Har birining o'zining afzalliklari va qulayliklari
mavjud,
Foydalanilgan adabiyotlar ro’yxati.
1. Doshanova M.YU. «Programmnыe sredstva dlya mobilnыx ustroystv».
Uchebnoe posobie. – TUIT «Aloqachi». 2016.
2. Wei-Meng Lee, Android Application development cookbook – John Wiley and
Sons – 2013- 410p.
3. Gloshapov A.L. Goole Android: programmirovanie dlya mobilnыx ustroystv. –
SPb. BXV-Peterburg, 2011- 448 c.
4. Anthony Gray, Swift pocket reference, Programming for IOS and OSX, Shroff
Publishers and Distr, 2016
Qo‘shimcha adabiyotlar:
5. “Introduction to Android Application Development Fourth edition” Developer’s
library by Joseph Annuzzi, Jr. Lauren Darcey Shane Conder, November 2013.
6. “Android Wireless Application Development Volume I: Android Essentials, 3rd
Edition”, Published Feb 23, 2012 by Addison-Wesley Professional.
7. “Professional Android Sensor Programming”, Greg Milette, Adam Stroud
2012.
Axborot manbalari
8. http://www.fayllar.org/
9. https://www.bing.com/chat
10. www.tuit.uz
11. https://chatgpt.com/
12. www.edu.uz
13. http://dl/e-book-free.com
http://moodle.tuit.uz/my/
Download