RxSwift agus coroutines i Kotlin - rogha roghnach i bhforbairt soghluaiste ó AGIMA agus GeekBrains

RxSwift agus coroutines i Kotlin - rogha roghnach i bhforbairt soghluaiste ó AGIMA agus GeekBrains

Tá eolas go maith, ach iontach. Ach tá gá le cleachtadh freisin ionas gur féidir leat na sonraí a fuarthas a úsáid, agus iad á n-aistriú ón stádas “stóráil éighníomhach” go dtí an stádas “úsáid ghníomhach”. Is cuma cé chomh maith is atá an oiliúint teoiriciúil, tá obair “sa réimse” fós ag teastáil. Baineann an méid thuas le beagnach aon réimse staidéir, lena n-áirítear, ar ndóigh, forbairt bogearraí.

I mbliana, thosaigh GeekBrains, mar chuid de dhámh forbartha soghluaiste na hollscoile ar líne GeekUniversity, ag obair leis an ngníomhaireacht idirghníomhach AGIMA, a bhfuil a bhfoireann ina bhforbróirí gairmiúla (cruthaíonn siad tionscadail ard-ualach casta, tairseacha corparáideacha agus feidhmchláir shoghluaiste, sin é go léir). Chruthaigh AGIMA agus GeekBrains ábhar roghnach chun tumadh domhain a dhéanamh ar na saincheisteanna praiticiúla a bhaineann le forbairt feidhmchlár soghluaiste.

Le déanaí labhair muid le Igor Vedeneyev, speisialtóir iOS, agus Alexander Tizik, a bhfuil saineolas aige i... AndroidA bhuíochas leo, tá an cúrsa roghnach forbartha soghluaiste saibhrithe le praiticiúlachtaí cúrsa speisialta ar chreat RxSwift и coroutines i Kotlin. San Airteagal seo, labhair na forbróirí faoi thábhacht gach réimse do ríomhchláraitheoirí.

Ríomhchlárú frithghníomhach i iOS ag baint úsáide as RxSwift mar shampla

RxSwift agus coroutines i Kotlin - rogha roghnach i bhforbairt soghluaiste ó AGIMA agus GeekBrains
Múinteoir tofa Igor Vedeneev: "Le RxSwift, beidh d'iarratas ag eitilt"

Cén t-eolas a fhaigheann mic léinn le linn an chúrsa roghnach?

Labhraímid ní hamháin faoi chumais an chreata, ach léiríonn muid freisin conas é a úsáid sa chomhcheangal clasaiceach MVVM + RxSwift. Pléitear roinnt samplaí praiticiúla freisin. Chun na sonraí a fhaightear a chomhdhlúthú, scríobhaimid feidhmchlár atá chomh gar agus is féidir do choinníollacha oibriúcháin allamuigh. Feidhmchlár cuardaigh ceoil a bheidh anseo ag baint úsáide as iTunes Search API. Ansin cuirfimid na Cleachtais is Fearr ar fad i bhfeidhm, chomh maith le rogha níos simplí a mheas chun RxSwift a úsáid i bparaidím MVC.

RxSwift - cén fáth a bhfuil an creat seo ag teastáil ó ríomhchláraitheoir iOS, conas a dhéanann sé an saol níos éasca d'fhorbróir?

Déanann RxSwift obair a shruthlíniú le sruthanna imeachta agus naisc idir réada. Is é an sampla is simplí agus is soiléire ná ceangail: mar shampla, is féidir leat an comhéadan a nuashonrú trí luachanna nua a shocrú in athróg sa viewModel. Mar sin, éiríonn an comhéadan sonraí-tiomáinte. Ina theannta sin, ligeann RxSwift duit cur síos a dhéanamh ar an gcóras i stíl dhearbhaithe, a ligeann duit do chód a eagrú agus inléiteacht a mhéadú. Cuidíonn sé seo go léir le feidhmchláir a fhorbairt ar bhealach níos éifeachtaí.

Maidir le forbróir, is buntáiste maith é eolas ar an gcreat ar atosú, ós rud é go bhfuil meas ar an margadh ag tuiscint ar ríomhchlárú imoibríoch, agus go háirithe taithí le RxSwift.

Cén fáth a roghnaíonn tú an creat áirithe seo thar cinn eile?

Tá an pobal is mó ag RxSwift. Ciallaíonn sé seo go bhfuil seans níos fearr ann go bhfuil an fhadhb atá roimh fhorbróir réitithe cheana féin. Tá líon mór ceangail réamhdhéanta aige freisin. Ina theannta sin, is cuid de ReactiveX é RxSwift, rud a chiallaíonn go bhfuil coibhéis ann do Android, mar shampla (RxJava, RxKotlin), agus is féidir le comhghleacaithe sa cheardlann labhairt lena chéile sa teanga chéanna, in ainneoin go n-oibríonn cuid acu le iOS, cuid eile le Android.

Déantar an creat a nuashonrú i gcónaí, ceartaítear mionfhabhtanna, cuirtear tacaíocht do ghnéithe ó leaganacha nua de Swift leis, agus cuirtear ceangail nua leis. Ós rud é gur foinse oscailte é RxSwift, is féidir leat na hathruithe go léir a leanúint. Thairis sin, is féidir iad a chur leat féin.

Cá háit ar cheart RxSwift a úsáid?

  1. ceangail. De ghnáth, táimid ag caint faoin Chomhéadain, an cumas an Chomhéadain a athrú, amhail is dá mba rud é go n-imoibríonn sé le hathruithe sonraí, agus gan a rá go sainráite leis an gcomhéadan go bhfuil sé in am é a nuashonrú.
  2. Gaol idir comhpháirteanna agus oibríochtaí. Níl ort ach sampla. Ní mór dúinn liosta sonraí a fháil ón líonra. Go deimhin, ní oibríocht chomh simplí é seo. Chun seo a dhéanamh, ní mór duit iarratas a sheoladh, an freagra a mhapáil isteach i raon rudaí, é a shábháil ar an mbunachar sonraí agus é a sheoladh chuig an Chomhéadain. De ghnáth, tá comhpháirteanna éagsúla freagrach as na hoibríochtaí seo a chomhlíonadh (is breá linn agus leanaimid na prionsabail Soladach?). Agus uirlis cosúil le RxSwift ar láimh agat, is féidir cur síos a dhéanamh ar CAD a dhéanfaidh an córas, agus CONAS a dhéanfaidh sé beidh sé in áiteanna eile. Is mar gheall air seo a dhéantar an cód a eagrú níos fearr agus go méadaítear inléiteacht. Go réasúnta, is féidir an cód a roinnt i dtábla ábhar agus sa leabhar féin.

Coroutines i Kotlin

RxSwift agus coroutines i Kotlin - rogha roghnach i bhforbairt soghluaiste ó AGIMA agus GeekBrains
Múinteoir cúrsa roghnach Alexander Tizik: “Tá modhanna teicniúla nua-aimseartha ag teastáil le haghaidh forbairt nua-aimseartha”

Cad a mhúinfear ag an dámh GeekBrains mar chuid den ráithe brandáilte?

Teoiric, comparáidí le cur chuige eile, samplaí praiticiúla i Kotlin íon agus sa mhúnla Android- feidhmchláir. Maidir le hoiliúint phraiticiúil, taispeánfar do mhic léinn feidhmchlár atá ceangailte go hiomlán le coroutines. Braitheann an chuid is mó de na feidhmchláir go mór ar ríomhanna asincrónacha agus comhthreomhara. Ligeann coroutines Kotlin, áfach, comhdhlúthú cód casta, ilchineálach, nó róchasta agus dian ar fheidhmíocht i stíl aonair, éasca le tuiscint, rud a bhainfidh feabhsuithe amach i gcruinneas forghníomhaithe agus i bhfeidhmíocht.

Foghlaimeoidh muid conas cód gnásúil a scríobh i coroutines a réitíonn fadhbanna praiticiúla agus atá intuigthe ar an gcéad amharc fiú gan eolas domhain ar conas a oibríonn coroutines (rud nach féidir a rá faoi leabharlanna mar RxJava). Tuigfimid freisin conas coincheapa níos casta a úsáid, mar shampla an tsamhail aisteoir, chun fadhbanna níos casta a réiteach, mar shampla an stóras sonraí sa choincheap MVI.

Dála an scéil, níos mó dea-scéala. Le linn don ábhar roghnach a bheith á thaifeadadh, eisíodh nuashonrú ar leabharlann Kotlin Coroutines, ina raibh an rang le feiceáil Flow - analógach de chineálacha Flowable и Observable ó RxJava. Go bunúsach déanann an nuashonrú gné coroutines iomlán ó thaobh fhorbróra an fheidhmchláir de. Fíor, tá spás le feabhsú fós: in ainneoin go bhfuil sé indéanta cheana féin feidhmchláir il-ardáin a scríobh i Kotlin a scríobh a bhuíochas le tacaíocht coroutines i kotlin/dúchais agus gan a bheith ag fulaingt ó easpa RxJava nó analógacha i Kotlin íon, níl an tacaíocht do coroutines in kotlin/dúchais críochnaithe fós. Mar shampla, níl aon choincheap aisteoirí ann. Go ginearálta, tá pleananna ag foireann Kotlin tacú le gníomhaithe níos casta ar gach ardán.

Kotlin Coroutines - conas a chuidíonn siad le forbróir Kotlin?

Tugann coroutines deis iontach chun cód a scríobh atá inléite, inchothaithe, agus slán, asincrónach, agus comhairgeadra. Is féidir leat cuibheoirí a chruthú freisin do chreataí agus cineálacha cur chuige asincrónacha eile a d’fhéadfaí a úsáid cheana féin sa bhunachar cód.

Cén difríocht atá idir Coroutines agus snáitheanna?

Glaonn foireann Kotlin snáitheanna éadroma coroutines. Ina theannta sin, is féidir le coroutine luach éigin a thabhairt ar ais, mar, ina chroílár, is ríomh ar fionraí é coroutine. Ní bhraitheann sé go díreach ar shnáitheanna an chórais;

Cad iad na fadhbanna praiticiúla is féidir a réiteach trí úsáid a bhaint as Coroutine, nach féidir nó atá deacair a réiteach trí úsáid a bhaint as Kotlin “íonachta”?

Réitítear aon tascanna asincrónacha, comhthreomhara, “iomaíoch” go maith trí úsáid a bhaint as coroutines - bíodh sé ag próiseáil cliceanna úsáideoirí, ag dul ar líne, nó ag liostáil le nuashonruithe ó bhunachar sonraí.

I Kotlin íon, déantar na fadhbanna seo a réiteach ar an mbealach céanna le Java - le cabhair ó na mílte creataí, a bhfuil a buntáistí agus a míbhuntáistí féin ag gach ceann acu, ach níl tacaíocht leibhéal teanga ag aon cheann acu.

Mar chonclúid, is fiú a rá go ndéantar an dá roghnacha (agus na príomhchúrsaí freisin) a nuashonrú de réir athruithe ar choinníollacha seachtracha. Má bhíonn nuashonruithe tábhachtacha le feiceáil i dteangacha nó i gcreat, cuireann múinteoirí é seo san áireamh agus modhnóidh siad an clár. Ligeann sé seo go léir duit do mhéar a choinneáil ar chuisle an phróisis forbartha, mar a déarfá.

Foinse: will.com

Ceannaigh óstáil iontaofa do shuímh le cosaint DDoS, freastalaithe VPS VDS 🔥 Ceannaigh óstáil gréasáin iontaofa le cosaint DDoS, freastalaithe VPS VDS | ProHoster