Waxaad hore u haysatay software-kaaga, laakiin waxaad weli u baahan tahay hab wax ku ool ah oo awood u siinaya isticmaaleyaashaada farsamada inay ballaariyaan goobta.
Inkasta oo OSGi ay si fiican u yaqaanaan inta badan horumarinta Java, ku-daridda alaabtaada waxay u ekaan kartaa hawl adag. Hufnaan la'aanta ku saabsan shaqada saxda ah ee OSGi ayaa sii xumaynaysa wadadii hore.
Si ka duwan wax kasta oo ay jeclaan lahaayeen in ay ku tijaabiyaan, OSGi waxa ay aad u dareemaysaa in ay isku dayaan in ay u shiraacdo badweynta ballaaran ee horumariyayaal badan oo Java ah.
Maqaalkani wuxuu ku bari doonaa casharrada guga ee OSGi Felix iyadoo la adeegsanayo barnaamij toos ah oo aad ku marto, faa'iidooyinka, iyo faahfaahinta kale ee muhiimka ah.
Haddaba waa maxay OSGi?
Abuuritaanka iyo qaybinta cutubyada iyo qaybaha waxaa suurtageliyay qaabka Java ee loo yaqaan OSGi (Initiative Service Gateway Initiative).
Waxay xooga saaraysaa isku xidhka shaqada iyo isku xidhka dabacsan, kaas oo siinaya dhawr faa'iidooyin horumariyayaal, oo ay ku jiraan shaqaynta habaysan ee si sahal ah loo kala wareejin karo inta u dhaxaysa koodh isha iyo tijaabinta aan u baahnayn ku tiirsanaanta aan dhamaanayn.
Sidee OSGi u shaqeysaa?
Nidaamka qayb firfircoon ee Java waxaa lagu qeexaa qaybo gaar ah oo loo yaqaan OSGi. Tilmaamahani waxay awood siinayaan hab horumarineed oo codsi laga soo dhisay qaybo badan ka dibna lagu duubay xidhmo.
Adeegyada maxaliga ah iyo kuwa shabakadaha ku salaysan waxaa isticmaala qaybahan si ay ula xiriiraan. In koodka xudunta u ah barnaamijka laga dhigo mid cufan sida suurtogalka ah ayaa ah ujeeddada. Isku xidhka sare ee u dhexeeya koodkan iyo dhawr qaybood ayaa suurtogal ah.
Qaybaha dhismaha ee dib loo isticmaali karo codsiga waxa loo yaqaan qaybo. Ka fakar sifooyinka sida gaadhiga wax iibsiga ee shabakadaada e-commerce ama codsiga mushahar bixinta ee nidaamka maamulka shaqaalahaaga.
Qaybaha waxay isticmaali karaan OSGi si ay uga qariyaan fulintooda qaybaha kale oo ay ku siiyaan oo kaliya xogta lagama maarmaanka ah iyaga oo isticmaalaya adeegyada.
Tani waxay ka hortagtaa qaybaha inay si ula kac ah u beddelaan xogta aysan ahayn inay helaan waxayna maareeyaan ku-tiirsanaanta.
Dhammaan xidhiidhada ka dhexeeya qaybaha arjiga OSGi waxaa lagu sameeyaa adeegyo ku jira adduun ku habboon. Xirmada Java waxay ka kooban tahay API-ga loo cayimay adeegyada.
Wadashaqeynta ka dhexeysa adeeg bixiyayaasha iyo macaamiisha waxay u baahan tahay isticmaalka fasallo iyo/ama is-dhexgal, kuwaas oo ka kooban API.
Dhammaan qaybaha OSGi waxaa lagu soo ururiyey xidhmooyin, mid kasta oo ka mid ah waxaa ku jira agabyada ay u baahan yihiin si ay u shaqeeyaan. Xirmooyinka ayaa si cad u qeexaya waxa ay uga baahan yihiin deegaanka iyo waxa ay awoodaan.
Faa'iidooyinka
- Codsiyada OSGi waxay marin u helayaan kaydka xidhmo dibadeed
- Qaab-dhismeedku waxa uu ogolaanayaa nashqadaynta adeegga ku jihaysan heerka moduleka.
- Waxay suurtogal ka dhigtaa in la maareeyo noocyada iyo ku-tiirsanaanta xidhmooyinka arjiga marka lagu daro habaynta iyo fududaynta isku dhafka maktabadaha qolo saddexaad.
- Codsiyada ayaa aad ula qabsan kara baahida beddelka, la qaadi karo, oo degdeg ah in dib loo habeeyo.
- A codsiga web waxaa loo diri karaa koox ka mid ah xirmooyinka OSGi nooca loo qaabeeyey oo leh nolol firfircoon iyada oo ay ugu wacan tahay isku dhafka qaab dhismeedka qaabka barnaamijka Java EE.
- Halkii lagu rakibi lahaa maktabad qolo saddexaad oo qayb ka ah codsiga, qaabdhismeedku waxa uu bixiyaa isu imaatinka caddaynta iyo tijaabinta cutubka la habeeyey ee Qaabka Guga oo qaab habaysan ah kaas oo lagu bixiyo qayb ka mid ah wakhtiga adeegaha codsiga.
- Codsiyada shirkadda oo ka kooban xidhmooyin badan oo nooc ah oo leh wareegyo nololeed firfircoon, qaabdhismeedku waxa uu bixiyaa go'doomin.
- Waxa ay ka kooban tahay kayd xidhmo isku dhafan oo kaydin kara xidhmooyin la wadaago oo la wadaago oo la habeeyey oo ay isticmaalaan dhawr codsi, taas oo ka hortagaysa codsi kasta inuu geeyo nuqul gaar ah oo maktabad kasta oo la wadaago.
Bilawga OSGi Felix guga
Helitaanka Khayraadka
Adigoo soo dejinaya Apache Karaf nuqulkiisii ugu dambeeyay boggan, waxaan bilaabi karnaa khibradeena OSGi.
Iyada oo ku saleysan Apache Felix, hirgelinta Apache ee qeexida OSGi, Apache Karaf waxay siisaa madal loogu talagalay codsiyada ku saleysan OSGi.
Karaf wuxuu bixiyaa sifooyin kala duwan oo waxtar leh oo ku yaal dusha sare ee Felix kuwaas oo naga caawin doona inaan barano nafteena OSGi, sida interface khadka taliska kaas oo awood noo siin doona inaan la xiriirno goobta.
Barta Gelitaanka Xidhmooyinka
Codsiga waa in loo xirxiraa sidii xirmo OSGi ka hor inta aan lagu socodsiin deegaanka OSGi. Intaa waxaa dheer, barta gelitaanka codsiga waa in la cayimaa; ma aha shaqada caadiga ah ee dadweynaha static void main(String[] args).
Markaa aan ku bilowno abuurista "Waad salaaman tihiinCodsiga ku salaysan OSGi.
Waxaan ku bilaabaynaa sameynta ku tiirsanaanta OSGi API aasaasiga ah:
Wakhtiga socodsiinta OSGi waxa ay heli doontaa ku tiirsanaanta, sidaa darteed xidhmada uma baahna in ay ku jirto. Sidaa darteed, waxaa loo calaamadeeyay sidii la keenay.
Hadda aynu abuurno fasalka tooska ah ee HelloWorld:
Fasalada u dhaqma sidii dhibcaha laga soo galo xirmooyinka waa inay hirgeliyaan interface-ka BundleActivator-ka ay bixiso OSGi.
Marka xidhmada ka kooban fasalkan la bilaabo, madal OSGi waxay wacdaa shaqada bilawga (). Dhinaca kale, wax yar ka hor inta aan xidhmada la joojin, shaqada joojinta() ayaa loo yaqaan.
Aynaan iloobin in xidhmo kastaa ay yeelan karto hal BundleActivator oo keliya. Labada siyaaboodba waxay kula xidhiidhi karaan OSGi runtime iyagoo isticmaalaya shayga BundleContext ee la bixiyo.
Abuuritaanka Xidhmo
Samee pom.xml xirmo OSGi run ah adiga oo samaynaya isbeddelada lagama maarmaanka ah.
Waa in aan marka hore si cad u sheegnaa in hadafkeenu yahay in aanu soo saarno xidhmo.
Kadib, waxaanu isticmaalnaa maven-bundle-plugin si aanu ugu xidho fasalka HelloWorld sida xidhmo OSGi ah, ixtiraamka bulshada Apache Felix:
Qiimaha madaxyada OSGi waxaan rabnaa inaan ku darno xirmada MANIFEST faylka waxaa lagu qeexay qaybta tilmaamaha.
Bundle-Activator runtii waa magaca saxda ah ee u qalma xalinta BundleActivator kaas oo loo shaqayn doono si loo bilaabo oo loo joojiyo xidhmada. Waxay la jaan qaadaysaa fasalka hadda la abuuray.
In kasta oo aysan ahayn madaxa OSGi, madaxa Xirmada Gaarka loo leeyahay ayaa faraya plugin in xirmada lagu daro xirmada laakiin aan ka dhigin mid la heli karo plugins kale. Amarka rakibaadda mvn waa in la isticmaalo si loo abuuro xidhmada.
Rakibaadda iyo socodsiinta Xidhmada
Aan ku bilowno Karaf annagoo fulinayna amarkan:
meesha "KARAF HOME" waxaa loola jeedaa galkii lagu rakibay Karaf. Waxaan u adeegsan karnaa amarka soo socda si aan u rakibno xirmada marka uu soo muuqdo qalabka Console Karaf:
Isticmaalka kaydka Maven ee deegaanka waa sida Karaf loogu sheegay in uu xidho xidhmada.
Soo celinta aqoonsiga nambarka xidhmada, Karaf ayaa qoray. Aqoonsigani wuu ka duwanaan karaa iyadoo ku xidhan inta xidhmo ee hore loo rakibay. Xidhmada hadda si guul leh ayaa loo rakibay, amarka lagu bilaabayna waa sida soo socota:
Isla marka aad bilowdo xirmada, "Hello World by Jay" ayaa soo bandhigaysa. Hadda waanu joojin karnaa oo ka saari karnaa xidhmada anagoo:
Console-ku wuxuu soo bandhigayaa "Nabadgelyo Adduunka by Jay."
Ugu Dambeyn
Soo-saarayaashu waxay si fudud ugu dari karaan hawlqabad cusub arji shabakadeed jira iyagoo ilaalinaya oo ka go'doonsan qaybaha kale ee barnaamijka muhiimka ah iyagoo isticmaalaya OSGi.
Waxaan ku baranay OSGi qoraalkan, oo ay ku jiraan sida ay u shaqeyso, faa'iidooyinkeeda, iyo barnaamij toos ah. Ma adka in OSGi lagu daro codsigaaga.
Codayn farxad leh!
Leave a Reply