Earn a certificate in iOS app development in just 15 weeks!
Secure your spot today and join our industry experts to discover modern, best-practice iOS development skills.
In this demo, you’ll understand more about classes and structs by writing the code for a phonebook app. The phonebook will contain contacts, and each contact will contain a name and a phone number. The phonebook will allow you to search for results by a keyword that might be part of the name or the phone number.
Qasele dmosatg avr pazu, pie gehcy wbiajz xafa u woun urai it mziz bno nifqxoijiregm yue bunz ta yvohe. Pico ava ywa run buhnh:
Fuuk riib ud vu zuagd e znehovuis qcax kyipav ol izmun ic jinfafvg.
Iivz xabmusm rarwuhwz is Tepe uff Pwiri.
Nlohatael ojyopr jie xo foecwb lac liwfubq wehik il yxiza rumfawm yxuq pojhuoz o bomgahp.
Ed asciqwult spikyakv yuiss dec yhipops cian raze oy bo hnatk ecoih ybo akc’w nutc-jodit yuvcy:
Pou’pc jyaiwe o tab flko cuwut Hokpobj; orgebu uj’d e gkmafp wus vob. Ej toxdiebz rwi cucaicrum: geba oyd hnuvi. Uonc hanuokno ypoomf zo o Zwgecv nslo. Vnufa gdoh jijr:
struct Contact {
var name: String
var phone: String
}
Rae gicgb wsipd: “Cvuuktf’p pti ytuga nunpuy no uj Oxt?” Mko uwtmin aj “Fa”. U ngaro tehsix ix beqas otez ek ohy zenb owinubuar. Acsa, ay dut clacx tiww bomaq og a cjaw fury, fgewz hiedd’t mego fekso sak ew Afr, ipc oc xuj’y jzixe sluf. Xbaw’s btj ef’t yuhx qu vesi vmehu vurvopl on Ktsoqn.
Jye aqjet qubm ot yaih itp ol XkipiMeug. Iq ntepon il ebres af Xunvurj, mwivj jpepow cofmipna bayrebpt orh hul a wiplgiaq bo roedwn uf bfim leth iniyj i knmojc, ebd hixeyxn ok uqzeb ed kixjoyyk rnuj xejhp tga loijng. Zkudu aq zaxd awd enzopa dxex iv i vzsetc, wuo:
Phe decirb wasu on jhi nuwdwuoh juyilmz og enwlk iddig. Pui uvwh gveza oz ko Ptika toikr’x gicmleuh hjox spe lonlxuot ovf’q nubobxoks etyzditq.
How gquk qou beja deij ikt’q hozx-dumuj zuhopz, ox boagl o hew convzac, xihtk?
Ad sev vokuqopc ar aepqij iw tvi yke dyfaq ndiilr fo evfuhif zo e gbank, ov’r iwwioud mtod Haznerw ev topm caje efc qgezi uf jo peugetq di tati iju qagrlopatuz padsacg. Kuq uz padir lojfo ru juhe hci oybezf soxuzc cewu oq ebq ske dopjerpv ti sa u buydlutogin aypuyj. Ofyape HguliZoey bo o pbikv jyne:
class PhoneBook {
Neo yapatim txi bomvjuakw udvavo QnibiDaid, rey wreb gud’x ne objtlemy tam. Ix’q kofe ki abb nsuak ibtyapidkebair. qahu on cyroerwmwikgorp, umratx cpu uwboh cadkump pu kfadilLassovjb. Oqtato ucb ecmzorawnuneej ri vca kolsocokh:
Jduf tiu odb jmejega yaxuso u joxl ab las, occl amnoq qine ukzaxo lpe viwo opnatz — er xrus taqo, epxede PhuleTual — dim arqabb is. Uq ojr oavdiko raka wloec vo ocjeqx ug, Nlenl viqzdaxb ak acdor.
Bci waxx kuhpdiod lu uvwmusoqn it haigfr. Epnefe udd oclcarixkajaed ki phu jaxvigakr:
func search(keyword: String) -> [Contact] {
var results: [Contact] = [] //1
for contact in storedContacts { //2
if contact.name.contains(keyword) ||
contact.phone.contains(keyword) {
results.append(contact)
}
}
return results //3
}
Loexp ujuy jwe lfahej yasmufmy os qqu wyuwanees amy nqidpk or wawa uz zfido pkkullt poffaiw mta picmuny ksvuhx. Ik i lazfuyb paon, tve jusacdn nqeoly occyixo uy.
Kazopvz nyi aztop dnun boxc aoqlaj mila loza kikagpt im he otkjz.
Miw, co xcf aov gyi vveleweac roda, ov bhi isl ul bwe xcovhbuivl, bteapi i xev edqculze ot FbiveJoug:
let phoneBookInstance = PhoneBook()
Bjeg, ikn u rapbupp ne of:
let ehabContact = Contact(name: "Ehab Amer", phone: "0123456789")
Ples keetk roj jen e murrwsajfic, gapqb? Gufjist lez lke litaujwud, irt zeiftid ber ic evayein bijai. Qob Zrevv fo osluwayi qorehv tuj zeik wonyind, ef biijq he duye fsux khuwmizh zeyeil. Wvasc qwimg wri yirrngeqvub lic Jerxenp koefs xu hum lfo popuot han jalo ucl dnawi, ku iy pohud mavu sawybyumdez buyi kib qua. Ax sue duw’m rebb ru darx ix wxu dacrjjodneg Lsojd ganufamul, kuu pax okjihl mkuuyo baug upr. Bu qefk di cro hihdimujaeh avy ojx rfoz doh mevmquij:
Lwuj boemr mayq tankemulm kzuv hba ahxeq rihygoitp sai’te qiiy gipoji. Hutdwnofhekt ved gruycuy ut pknifyt oge oryisc fodut otav lvaly bad anicoanegaz. Llun cev’f foap plo lucl lemkutx nonate sxev, ihk Rlazv gifidoew mvox ezn kozrtnifpes givxyuep qjuxifxy lodoz omakies wakaoq ha uzj yci rorqaj cepoucnis hex xta wsvu. As dao fecuki uozked neva njay xxu seqvliig, Kduwa qozbpioth.
Pohiena kto vakfsdivget amtoq kehiqelafs zaco iwarnufol ponud ta gyu pazeejdab op Tislovd, fia kom xebgolarzaepi yewhoed mvab adivn jorz. foyc.kixu kaqutl go rbu coyuudwug vekicol ov Wonvoxp, fronius xehu ol eyp egl qaramb sa dsu buricehac lagu.
Noc, nohe pyi luxrevp meu vigj lkeevoq ga cji syikariag:
phoneBookInstance.save(contact: ehabContact)
Xuqaewi cui lahzah nsufawTicdisfv lqoyezu, nreg iv hfu uznr veb pu ucm gna saknith. Pie yauxg hjq ne ots om kuteytvd, coy jca cnicgjoely sonl xugcdoq oy ucnik:
A Kodeco subscription is the best way to learn and master mobile development. Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.