noocyada java
Java waxay kusoo baxdaa ugu yaraan afar nooc oo kala duwan oo loogu talagalay marxaladaha kala
duwan ee kumbuyuutarada iyo baahida. Tusaale ahaan moobilada iyo kumbuyuutarada inkastoo ay ka
simanyihiin waxyaalo badan, haddana waxay ku kala duwanyihiin meelo badan tusaale ahaan mugga
xasuusta iyo quwadda fulinta. Sidaas awgeed Java waxay leedahay soosaar loogu talagalay duruufaha
telefoonada moobilada iyo kumbuyuutarada gacanta lagu qaato.
Sidoo kale kumbuyuutarada dadka caadiga ay isticmaalaan iyo kuwa ay shirkadaha waaweyn adeegsadaan
waxa jirta waxyaalo ay ku kala duwanyihiin oo dhanka baahida la xidhiidha. Shirkadaha waaweyn inta
badan waxay adeegsadaan nidaam daadsan oo ka kooban kumbuyuutarro farabadan, kuwaas oo qaarkood
ay yihiin nooca server-ka. Sidaas awgeed waxa jirta daabacaad Java oo loogu talagalay shirkadaha gaar
ahaan. Laakiin ma jirto wax diidaaya in dadka caadiga ah ay isticmaalaan daabacaadda shirkadaha.
Dhammaan daabacaadahaas waxay ka simanyihiin waxyaalo badan
Sawirka 1.1 waxad ka arkaysaa soosaarada ama daabacaadaha Java ee kala duwan iyo siday u kala
duwanyihiin. Sidaad sawirka ka arkayso Java EE iyo Java SE waa isku mid kaliya waxay ku kala
duwanyihiin in Java EE laga helaayo waxyaalo aan ka mid ahayn Java SE. Waxyaalaha ugu muhiimsan
ee ku jira Java EE ee aan ku jirin Java SE waa waxyaalaha looga baahanyahay nidaamyada daadsan iyo
dhanka Web-ka gaar ahaan samaynta Web Server-rada. Java EE waxad ka helaysaa qaybihii luuqadda
Java ka midka ahaa ee aad u adeegsan lahayd si aad kumbuyuutarkaaga uga dhigto Web Server laga soo
galikaro kumbuyuutarada kale. Sidaan soo sheegayba Java EE waxa loogu talagalay shirkadaha si ay
ugu dhisaan nidaamyadooda qaybta dhanka server-ka. Java SE waxa loogu talagalay kumbuyuutarrada
caadiga ah ee dadku isticmaalaan. Buuggan waxaynu ku adeegsanaynaa Java SE. Java ME waa qayb
sawirka ka arkayso. Java ME waxa loogu talagalay kumbuyuutarrada gacanta iyo moobilada, oo inta
badan awooddoodu iyo xasuustoodu yartahay marka loo eego kumbuyuutarada caadiga ah. Waxyaalaha
kale ee inta badan u gaarka ah kumbuyuuttarada fudud iyo kuwa gacanta waa ku xidhnaantooda Internetka-
ka oo aan inta badan joogto ahayn. Java ME waxa loo isticmaali karaa meel kasta oo kumbuyuutar khafiif
ah looga baahanyahay.
Ugu dambayntii Java SE waxa loo yaqaaney J2SE, Java EE J2EE, Java ME:n J2ME. Waxay shirkadda
Sun badashay magacyadii sanadkii 2006, oo ay nambarka 2 ka tuurtay magacyadii.
1.2 Waa maxay Java Virtual Machine (JVM)
Sidaan hore u soo sheegayba JVM (jey-fii-am) waa borogaraam lagama maarmaan ah si loo kexeeyo ama
loo isticmaalo borogaraamyada lagu qoray luuqadda Java. Ujeedada ama hadafka JVM waxa weeye iney
kala dhexgasho borogaraamka lagu qoray Java iyo Operating System (OS)-ka. Waxa la rabaa in aan
laysku xidhin borogaraamka iyo OS-ka, sababtoo ah OS-ku wuu is badali karaa oo waxa laga yaabaa
in loo baahdo in borogaraamka lagu isticmaalo OS ka duwan kii hore ee lagu dhisay. JVM waxay
saamaxaysaa in borogaraamkii lagu qoray luuqadda Java lagu isticmaalo OS-yo kala duwan. Sidaan
hore u soo sheegayba arintani waxay ka midtahay waxyaalaha ay Java kaga duwantahay C iyo C++.
Qodobkani waa waxyaalaha ugu muhiimsan ee lagu kala sooco luuqadaha kumbuyuutarka. Lu-
uqadaha sida Java oo kale u baahan borogaraam dheeraad ah si loo kexeeyo waxa loo yaqaan interpreted.
Halka kuwa kale sida C iyo C++ loo yaqaano compiled language.
1.3 Waa maxay OOP
Haddii aad dooneyso inaad barato luuqadda Java waa lagama maarmaan inaad isla markaa fahamto hab
dhismeedka OOP (ow-ow-be). Waad ku qasbantahay, sababtoo ah Java waxay ku saleysantahay OOP.
OOP waa hab borogaraamyada kumbuyuutarada loo dhiso iyada oo lagu dayanaayo habka waxyaalaha
kale ee physical-ka ah ama muuqaalka leh sida guryaha, baabuurta, iwm loo dhiso. Muhiimaduna waa in
borogaraamyada kumbuyuutarka dhismahooda la fududeeyo, maadaama ay adayg iyo weynaansho isku
darsadeen. OOP waa hab lagu wajahaayo waxa lagu magacaabo Software Crisis oo ah khalkhal ku yimid
dhisidda borogaraamyada kumbuyuutarada. Dhibaatadan ama khalkhalkan waxa keenay horumarka
dhakhsaha badan ee sanad walba ku yimaada qalabka hardware kumbuyuutarada. Sida xasuusta, iyo
quwadda fulinta (processing power ).
OOP wuxuu dadka u sahlayaa in ay dhisaan borogaraamyo dhismahoodu habeysanyahay, kuwaas oo
ay fududahay5
in wax laga badalo ama la fahmo dhismahooda. Borogaramyadii hore (ka hor OOP iyo
luuqadaha casriga ah sida Java) waxay ahaayeen qaar dhismahoodu isdhex daadsanyahay oo aan laheyn
wax structure ah. Waxey aad ugu dhawaayeen hardware-ka sida processor-ka kumbuyuutarka. Waxa
toos loo qori jirey nambarada ay processor-ku fahmeyso. Waxaaney ku caanbaxeen magaca spagetti
code, sababtoo ah macluumaadka (data) iyo koodhku (code) way isdhex daadsanaayeen. Kadib waxa
yimid data structures, oo waxa la kala qaadey data-dii iyo code-kii xukumaayey. Data-da isla xidhiidha
inta laysu uruuriyo ayaa magac loo bixinayaa, waxaana loo yaqaan data structure. Waxa ka dambeeyey
hidisiddii module-ka, oo saamaxdey in code-kana la qayb-qaybiyo oo wixii isla xidhiidha hal module lagu
uruuriyo. Waxaana horumarkan ugu dambeeyey Objects-ka oo ah casrigan imika socda. Waxaynu toos
ula jaanqaadeynaa casrigan imika socda.
1.4 Waa maxay Objects
Object af-soomaaliga waxa lagu macneyn karaa walax. Markaas objects waxay noqoneysaa walxo oo
wadar ah. Walxuhu waxay fure u yihiin luuqadda Java. Haddii aad hareerahaaga eegto, waxad arki
kartaa tusaalooyin badan oo ah walxaha aduunka (real-world objects), sida: gurigaaga, gaadhiigaaga,
baaskeelkaaga, bisaddaada, tv-gaaga iyo qaar kale oo badan. Waxlaha aduunku waxay badankood
leeyihiin laba arimood: Kulligood waxay leeyihiin xaalad (state) iyo hab ama ficil (behavior, method).
Tusaale ahaan bisadda xaaladaheeda waxa ka mid ah magaceeda (waa bisadda la dhaqdo), kalarkeeda,
jinsigeeda (race) iyo iney gaajeysantahay. Ficilkeedana waxa ka mid ah ci’yitaanka (barking), ugaadhsiga
iyo raaxeysiga. Sidoo kale baaskeelku wuxu leeyahay xaalad (kalarka, geerka ku jira, xawaaraha, iwm)
iyo hab (balad geerka, wareejinta cagaha, qabasho bireegga ama fariinka).
Walxaha aduunka inta badan waxa laga codsankaraa ficil, tusaale ahaan bisadda iney socoto, baas-
keelka in geerku is badalo, gaadhigu inuu istaago, iwm. Waxa kale oo la badali karaa xaladooda,
1.5. WAA MAXAY CLASSES 9
tusaale ahaan gaadhiga oo istaagga laga dhaqaajiyo, bisadda oo cunto la siiyo, iwm. Waxaynu arki-
doonaa in sidoo kale walxaha borogaraamka laga codsankaro ficil ama la badali karo xaaladooda. Had-
aba, waa muhiim inaad fahamto ama garwaaqsato xaaladaha iyo hababka walxaha aduunka. Taasi waxay
kaa caawineysaa fikirka iyo dhisidda borogaraamyadaada kumbuyuutarka. Waxa jiri kara walxo badan
oo aan aduunka ka jirin, laakiin borogaraamka kumbuyuutarka ku jira oo ka muuqda, marka la eego
qoraalka borogaraamka oo loo yaqaano source code. :Security :Door Fariin
Sawirka 1.2: Dirista fariinta (Qaabkani waa sida inta badan loo sawiro walxaha. Xariijinta magaca
hoosta laga mariyey iyo labada dhibcood.)
Walxuhu way wada xidhiidhi karaan sida ka muuqata sawirka 1.2 oo waxay isu diri karaan fariimo
(message) kala duwan (walxaha aduunka xidhiidhkooda haddii aynu eegno, waa sida laba qof oo wada-
hadlaaya ama qof gaadhi kicinaaya ama laba bisadood oo islaynaysa). Sawirka waxad ka arkeysaa walax
qaabilsan ammaanka (Security) oo fariin u direysa walax qaabilsan albaabka (Door). Fariintaasi waxay
tusaale ahaan noqon kartaa ”xidh albaabka”. U dirista fariinta iyo codsashada ficilku waa isku arin.
Habkuu albaabka u xidhaayo isagey u taallaa.
Labada walxood ee sawir 1.2 midba shaqo gooni ah oo uu isagu yaqaano habka loo fulinaayo ayuu
qabanayaa. Mid wuxu qaabilsanyahay amaanka midna albaabka. Waxa loo yaqaan arintaas modularity.
Tusaale ahaan kasoo qaad in guri weyn oo albaabo badan leh nidaamkan lagu xidhay ama lagu rakibey.
Albaab walba waa in lagu xidho hal walax oo nooceedu yahay Door. Taas oo qaabilsan albaabkaas
xidhitaankiisa iyo furitaankiisa. Dirista fariintu waxay ka dhigantahay codsi ficil ama hab oo laga
codsanaayo walaxda loo diraayo.
Haddii wakhti dambe la rabo in albaabka si kale loo xidho, waxa la badelayaa walaxda qaabilsan
albaabka oo ah Door. Badalka, walaxda shaqada qabaneysa wakhtigii la rabo la badali karo waa arin
aad muhiim u ah oo kamid ah sifooyinka fikirka ku saleysan walxaha (OOP), waxaana loo yaqaan
polymorphism. Waxase shardi ah in aaney walaxda Security fahmin badalka walaxda albaabka. Taasi
waxay ku imaneysaa haddii, aaney waxba iska badalin habkii ay walaxda Security u isticmaali jirtay
walaxda Door.
Sidoo kale habka albaabka loo xidhaayo waxa taqaanna walaxda Door oo kaliya, walxaha kale (sida
Security) ma yaqaanaan (waayo iyagaa xidhi lahaa, haddii ay yaqaanaan). Marka la rabo in albaabka
la xidho waa in laga codsado walaxda Door. Sifadan waxa loo yaqaan encapsulation, waxaaney ka mid
tahay sifooyinka ugu muhiimsan ee fikirkan.
Waxa kale oo muhiim ah inaad fahamto in qoraalka walxahan ay dad kala duwani qori karaan, oo
isu diri karaan. Taasi waxay saamaxeysaa in dad kala duwan oo aan tusaale ahaan isku meel joogin
ay borogaraamka wada dhisaan. Waxase muhiim ah iney ku heshiiyaan protocol-ka labada walxood ku
wada hadlayaan oo loo yaqaano inta badan interface. Sidoo kale haddii mar hore la qoray walaxda, dib
ayaa loo isticmaali karaa mar dambe haddii loo baahdo, waxaana loo yaqaan code re-use arintaas.
Waxaynu halkan ku dulmarey ugu yaraan shan arimood oo muhiim ah oo kala ah: modularity,
polymorphism, encapsulation, interface iyo code re-use. Kalmadahani way soo laaban doonaan inta
buuggani socdo. Waxa kale oo aynu cadeynay ineynu ereyga walax u isticmaali doono ereyga ingiriisiga
ah ee object.
1 Comments
Keep going mine 🥰✊🏻
ReplyDelete