>> [Musika jotzen]
>> DAN AMRMENDARIZ: orok, CS50 mintegi ongi etorria,
iOS App Swift garapena.
Nago Dan Armendariz, eta preceptor naiz informatikako hemen Harvard.
>> Eta hurrengo ordu izango da bezainbeste gauza bira zurrunbilo bat
Gai honi buruz ere doi dezakegu.
Jatorrizko kodea guztiekin zer egingo dut Hori gaur ikusiko duzu online.
Agian ez dugu izan gai benetan dena baino gehiago joan
naizela naizela zuk erakusten ordu honetan.
Baina, gutxienez, zorionez bidez Jatorrizko kodea iruzkinak,
irudikatu saiatzeko gai izango duzu zer zehazki gauza horiek gertatzen ari
ez dugu, nahiko iristeko.
>> Orokorra, egitura Gaur egungo eztabaida honako hau izango da.
Hasteko egingo dugu oinarrizko batzuk egiten Swift hizkuntzaren sintaxia,
gehiago aurreratu batzuk sartzen joan Swift hizkuntzaren sintaxia.
Hizkuntzaren delako benetan moderno eta hura
Maila handiko asko ditu ezaugarriak, hori ez dugun gauza
C ikusi CS50 zehar, edo nahiz eta batzuk bestean hizkuntzetan
hori hasi dugu atsegin PHP erabiliz CS50,
Beraz, nahi saiatu behar joan gai batzuk ere aurkeztu duten
diren hizkuntza maila altuagoa lotuta duzu agian ez dela sakonki ikusi CS50,
baina ikusi ahal izango duzu beranduago informatikako klaseetan.
Beraz, bat izango da ongi josia ordu.
Eta mesedez, aske utzi nau Badakizu edozein zalantza izanez gero.
Beraz, nahi izanez gero garapen egitean
Swift batekin, edo benetan Edozein iOS app garapena,
Han baldintzak pare bat daude.
Lehenik eta behin, erabili egin behar duzu Mac bat, adibide jarraituko du abian
gaur erabiliz duten goaz, OS bertsio berri samarra
X. Kasu honetan, exekutatzen ari naiz X 10,5.
Da exekutatzen dezakezu 10,11 nahi baduzu.
Baina dena zarela joan Ikusten da Xcode 7 eta geroago hartu zuten parte,
bertan, azken bertsioa ditu Swift, hau da, Swift 2.0.
Hau da, benetan polita bat bereizketa garrantzitsua.
Sintaxia asko ditu nahiko nabarmen aldatu
Swift 1.0 batetik, zenbait kasutan, iaz kaleratu zen,
Swift 2.0, zein atera jaitsiera hau.
Beraz, goazen Swift 2.0 erakusteko.
Gauza asko dagoela bilatu online for you
denean gehigarria lortzeko saiatzen ari zaren Hainbat gauza bati buruzko informazioa,
Ahal izango duzu esplizituki nahi den bilatu Swift 2
baizik eta Swift besterik ez arrunta zaharra baino egiteko Ziur sintaxia zuzena lortu duzu.
>> Izan ere, hau da, oro har, egia.
Ez dago garapen zenbatekoa azkar bat da Swift hizkuntzan gertatzen
Apple kaleratu da ordutik, uste dut zer, apur bat izan da urte bat baino gehiago
orain.
Eta gauzak aldatu egin dira Garai hartan ere nabarmen.
Eta beraz, ez da zapuztu bada, orduan inguruan bilatzen ari zaren
Swift edo gaiak nola betetzeko for Zerbait Adibidez kode batzuk erabiliz
edo zerbait ez dela benetan Swift 2.0 lan egiteko.
Ziurtatu ari zaren Zehazki bertsioa horretarako
desberdinen ondorioak gutxitzeko saiatu bertsioak eta gauza mota horiek.
>> Egingo azpimarratzea gauza batzuk besterik saiatzen naiz Hori bertsio zaharragoak desberdinak dira.
Baina zerbait ikusi ahal izateko da.
Hori da, ziurrenik hori izango da buruko handienetako bat
duzula da aurkitzea Swift dituzte Adibidez kodea zaharragoa da, nahiz eta, besterik gabe,
Hilabete gutxi batzuk eginda, erabiltzen saiatzen Zure proiektuaren modernoagoa da.
Eta hori besterik ez, besterik gabe, ez du funtzionatzen.
Oraindik konpilatzailea akatsak lortzean duzu, sintaxia akatsak, zoro-mota guztiak.
Beraz, besterik gabe, izan duen gaixo hori, eta espero izango duzu
esperientzia polita polita izan da Swift, oro har.
>> Orain benetan ahal duzun join-- eta espero dut Benetan dugu oraindik aurten honetan hau izan
CS 50 Apple aplikazioa Garapen taldeak, eta horrek
aplikazio instalatzeko aukera emango dizu bertan sortu duzu zure iOS gailuak.
Beraz URL honetan bada begirada bat hartu egiten duzula interesa.
>> Beraz, besterik gabe, pare bat Swift berari buruz gauza.
Konpilatu hizkuntza bat da.
Baina ikusiko duzu batzuk Erabiltzen ditugun ezaugarrietako
uzten erabili ahal izateko, gainera, pixka batean bat bezala interpretatu bide baita.
>> Sintaxia asko mailegatu da C. from oinarritutako da eta C. idatzitako
Eta beraz, ikusiko dugu daude Takeaways asko
zure dagoen ezagutzatik C-tik Swift den ataka ahal dugun.
>> Baina badira gauza egiteko C. oso bestelakoa
Da oso biziki idatzitako.
Ez dago memoria kudeatzea automatikoa da.
Oraindik ez duzu nahi izan joan malloc edo doan edozein lekutan erabiltzeko.
Honez orokortasun diseinatua.
Beraz, beste era batera esanda, erabili ahal izango duzu testuinguru mota guztiak, Apple Watch
iPhone modu guztiak OS X, eta gehienez are zerbitzari batzuetan, nahiz eta scripting batzuk.
Baina ikusiko dugu hori scripting laguntza
da Oraindik ez da bukatu bezain da beste hizkuntza batzuetan ere egiten.
Beraz, ziurrenik erabili beharko duzu honen garapenean esklusiboki
zure Mac edo zure iPhone.
>> Eta modernoaren ezaugarriak asko ditu.
Eta gauza horiek asko dira gauza dela gaur saiatuko goaz,
baina, aldi berean, gure gaiak Egia hori, ikastaroak osoa eskaintzeko aukera izango dugu.
Izan ere, CS 51, hau da, Eskainitako hurrengo seihilekoan,
gai horien inguruko asko zentratzen beherago azaltzen dira horretan.
Beraz seihileko oso bat eman ahal izango duzu Gauza horiek ulertzeko.
Baina ari gara saiatzen joan horien bitartez lortu
gutxienez nahikoa dela ulertzen zer da
denean begiratuz gertatzen Swift programa batean
eta zure bidea aldatu ahal Bidez azken proiektua da.
>> Orain modu onenetako bat ezin duzula Honen inguruko informazio gehiago lortu
Egia da Apple-en bidez emandako dokumentazioa Swift da.
Ez dago APIak asko da daude eskuragarri.
Eta hau hasiera ona base zuretzat da den, gauza zehatzak bilatzeko duzula
API bat iOS inplikatuz egin nahi.
Kamera erabili nahi izanez gero Adibidez, hemen bila hasi ahal izateko,
eta Google eta Stack ere erabili Gainezkatzea, ohi den bezala.
>> Honetako zalantzaren eskubidea dugu salto, aurretik ere?
Ados.
Dezagun aurrera.
>> Beraz, lehenik eta behin, daukat Adibidez fitxategiak kopurua.
Eta ez dut nahi zapaldu saiatzeko joan Horien bitartez, nahiko azkar.
Hau Swift Hello World fitxategia da.
Oso erraza da.
There iruzkinak modu gehiago baino ez dira, benetako kodea.
Iragarki benetako kodea dagoena on line 14 bukaeraraino.
Inprimatu dio.
Eta, ondoren, funtzio-dei bat da.
Da bat sartu dugu pasatzen ari Kaixo CS50 izeneko katea.
Iragarki hori ez puntuz dago.
Iragarki hori ez dago int nagusia.
Ez dago bat ere ez cruft zuela C. dugun
When Swift erabiltzen dugun modu horretan, hau da, besterik idatzitako testu fitxategi batean
eta nire ordenagailuan gordetako, eta gero I konpila dezakezu eta exekutatu.
>> Iragarki hemen nago Ez CS50 IDE erabiliz.
Horren arabera, neu naiz korrika eta naiz OS X dut,
eta hori izan dut Xcode dagoeneko instalatutako makina hau ordena horretarako on
benetan funtzio bat.
Baina honek testu-fitxategi normal bat da garela eta konpilatzeko eta editatu daiteke.
Beraz, ikus dezagun nola benetan funtzionatzen.
Zer da biltzeko nahi badut?
swiftc 1.swift.
Une bat edo bi egin ondoren, gaur egun dugun ikusiko
konpilatu hau deitzen 1 fitxategira.
Eta orain, gure CS50 inprimatutako dugu, Gure Hello World aplikazio baizik.
>> Bezain beste gauza bat nabarituko Ondo lehenetsita, hau da,
ez genuen sarrerari dute a / n linea berri bat inprimatzeko.
Besterik adierazi ezean, inprimatu funtzioa Swift inprimatu linea berri bat izango duzu.
Aukerako osagarri bat gainditu ahal izango duzu Parametrorik kontatzeko ez hacerlo.
Baina Googlek buruzko informazio gehiago eskuratzeko.
Besterik adierazi ezean, inprimatu lerro egingo da.
>> Ondo da, beraz dezagun aurrera ondoren, beste gauza batzuk egiteko.
Beraz, nola benetan defini dezakegu aldagai?
Egin ahal izango dugu, hori erabilita bi metodo bat.
Eta hori egin nahi dut bat esango dizu Lehenengo egin dezagun definizio hau.
Eta hau da garrantzitsuena eraginkortasunez delako
zer egiten ari garen konstante bat definitzeko da.
Aldagai bat sortzen ari gara, edo, hobeto esanda, izen etengabe izenekoa,
ere data-- batzuk bertara ematen Kasu honetan, katea Dan.
Baina utzi hau erabiliz hitzarekin, esaten ari gara
hori aldagai edo Berriro constant-- izeneko
izen da inoiz aldatu egingo da.
Honez aldaezina izan behar zehar joan Programa honen iraupena
edo osoan zehar testuinguruan iraupena
aldagai hori eskuragarri dagoela.
>> Hau da, benetan garrantzitsua da hori Hori ez da datu batzuk duzu
zure programan aldatuko denik, eta hainbat adibide bat ikusiko duzu
zuk erabili nahi dugu buruz utzi beste sintaxia versus,
Garrantzitsua da erabili utzi ahal den neurrian delako jakinarazten honetan
Hizkuntzaren dela Ez aldatu egingo da,
eta bertan burutu ahal optimizazioak asko
abiadura hobetzeko eta Zure programa segurtasuna.
Eta segurtasun-ek, esan nahi dut, ez utzi zoro erroreekin bai hutsegiteak
garela egongo den C. ere ikusten ohituta
>> Ondoren kate interpolazio erabili ahal izango dugu hau enkapsulatu kate baten barruan.
Beraz, hau ikus daitezkeen inprimatu lerro, inprimatu kaixo,
eta, ondoren, backslash Parentesi irekia erabiliz, eta, ondoren, nire aldagai izenean,
Kasu konstante honetan, Parentesi ixteko.
Naiz funtsean, ondoren jarriz aldakorra izeneko name honetako edukiak
katearen barruan, eta gero emaitza inprimatzeko han.
>> Ez dago fitxategi honetara beste aldaketa bat da hau da, behar dudala, oso goian,
shebang lerro batean jarri, eta horrek funtsean, besterik zehazten
erabili nahi dut Swift interpretatzailea, eta horrek
esan nahi dut, ez da gehiago behar bereziki, programa honetan bildu.
Besterik ez dut exekutatu daiteke bere gidoia bezala.
Baina hori da, kasu honetan, atzetik bildu eta gero eszenak ari
exekutatu.
Besterik ez da guretzat ikusezina da.
>> Ondo da, beraz dezagun aurrera.
Beraz, ez dira iruzurrak pixka bat da Hori baino zertxobait lehenago gertatu zen.
Erakutsi dut dut konstante bat defini daiteke.
Eta datu batzuk ere egin ematen izan dut.
Baina kasu honetan, nabarituko ez ez dut Benetan zehaztu datu-motak
dela.
Eta hori da egin delako konpiladorea, Swift ahal
inferitu besterik oinarritutako datu-motak datu hori dut ipini ditu.
Hori ebaluatzen daki delako aldakorreko hementxe, datuak eskubide hori
Hemen, kate bat dela badaki.
Eta beraz, etengabeko izen hau da, beraz, kate bat izan baita joan.
>> Baina gainera ere esplizituak izan mota hori da buruz
to erabiliko ditugu konstanteak edo aldagaiak
sintaxia hau erabiliz Horren ordez utzi name colon String berdinen
Dan, kasu honetan, esan nahi dugu izen etengabe izenekoa zehazteko.
Honez mota katea izango da.
Eta balioa Dan izango.
Orain, beste modu batean, sortu ahal izango dugu aldagai
eta horiek ez dira aldagai aldakorra, eta horrek esan nahi dugu ez direla, hain zuzen ere, joan
euren edukiak noizbait aldatzeko Testuinguru iraupena ere
aldagai hori garela definitutako dago erabili ordez var hitzarekin utzi.
Baina, berriro ere, besterik ezean, badakizu ezean Datu hori manipulatu behar duzula,
saiatu utzi erabiltzeko performance hobekuntzak.
>> Kasu honetan, beraz ezin dut Datu mota zehaztu
to barruan izango da espero dugun etiketa izeneko aldagai berri hau.
Honez kate bat izango da.
Eta ari gara, ondoren kateatu joan bi kateak elkarrekin, katea kaixo,
eta soka-ek aurkeztu aldakorra, edo hobeto esanda, etengabeko izen.
>> Beraz, hau da, polita delako honetan zertxobait dugun bezala PHP
Oso erraza kate lotuz dute.
Ez dugu izan, ez automatikoki Edozein memoria kudeaketa moduko erabili
tamaina handitzeko eta egin Edozein gauza dibertigarria han moduko.
Honek lan benetan genuke espero bezala.
>> Ondo da, horri buruzko edozein galdera?
>> Orain beste arrazoia gaitasuna izan behar dugu
zer definitu ahal izateko Datu aldagai mota daude
da batzuetan ez garelako aldagaiak hasieratu nahi
bertan datu batzuk definizio puntua.
Beraz, kasu honetan, demagun inputting hasi nahi duten I
kalifikazio batzuen kalifikazioa liburu batean.
Beno dakit bat dagoela Hori izan nahi dut aldagai
da mutable kalifikazio bat izango da.
Eta, gainera, badakigu dugun Nahi zenbaki oso bat izango da.
Baina agian ez dugu oraindik dute nota hori eskuragarri.
>> Swift ere, hau egin behar duzu definitzeko datu-motak
hori batekin lotutako aldagai edo konstante bat utzi
Egia esan, ezin duzu lehenago aldagai hori erabili.
Da biziki idatzitako delako, mota bat lotzeko duzu
aldagai hauekin.
>> Kasu honetan, beraz, ez dut behar bezala hasieratu balio batzuk lehenengoan,
Orduz Swift kontatu behar dut zer Datu-mota nahi izan espero dut.
Eta nik geratzen joan datu-mota hori bera
Programa honen historian zehar.
>> Orain bezain laster tentazioa egon liteke Kalifikazioa aldagai hau sortu dut
eta betiere bat 100 osokoa, orain badut
to kateatu saiatu nahi osokoa dela katea,
tentazioa egon liteke oraindik erabili kate lotuz operadorea
bezala egin dugu lerro batzuk lehenago.
Baina, zoritxarrez, borondate hori benetan ez
lan, zuk daudelako funtsean eszenikoen
Bi mota ezberdinak operazio batean.
>> Azken hau da, oso desberdinak PHP bezalako hizkuntza zein diren benetan
Beren mota moduko batekin loosey goosey.
Zu besterik nahi dute, bai, edozein dela ere, ez zait axola.
Just eman dit mota bat, eta agian, eskuineko gauza egin dut.
>> Kasu honetan, Swift da oso motei buruz zorrotza
aurre ari zaren.
Summation operadorea hau edo lotuz operadorea
funtsean pare bat ditu Posible aukera desberdinak.
Summation egin dezakezu osokoak, edo zurekin
kate lotuz egin daiteke, eta agian beste gauza batzuk ere bai.
Baina bada operadorea ez duela aitortu Zer den aldeetan da,
edo horien konbinazioa baizik Bi mota, ez da, zer espero da,
ondoren, porrot bat sor joan.
>> Beraz, kasu honetan, zer esan nahi du Kate bat plus zenbaki oso bat izatea?
Beno testuinguru batean honek, ziurrenik nahi dugu
kate lotuz ekintza aurrera eramateko.
Baina, jakina, ordenagailuaren ez dauka testuinguru moduko hori.
Eta horrela eman behar dugu informazio gehiago
Badakizu zer egiten utzi da egin nahi dugun.
>> Beraz, beste era batera esanda, hain zuzen, Swift biziki idatziko da
esan nahi du bat egin behar duzu lan osagarriak pixka
funtzionatzeko da iritsi Hori nahi zenuke horrela.
Baina emaitza gisa, seguruagoa da.
Eta behin duzu hartu Kontu-mota horietan sartu,
Gauzak besterik Egia hasteko Nahiko ondo lan egiteko.
>> Beraz, kasu honetan, orduan genuke kate lotuz egin
esplizituki galdaketa Kate bat osokoa
bilduz honetan kapital S kate funtzioa,
eta ondoren, kate lotuz erabiliz operadorea gure etiketa aldakorra aldatzeko,
eta, ondoren, inprimatu.
>> Orain arte, hain ona?
Guztiak eskubidea, dezagun aurrera.
>> Orain ez dago datu ugari daude Hori Swift erabili ahal izango dugu mota.
Ohituta duzun bezala, mutable array bat sortu ahal izango dugu.
Eta array ahal bakarra mota bakar bat eduki.
>> Beraz, kasu honetan, ari gara, sortu joan Osoko zenbaki multzo aldakorra da, eta horrek
kalifikazio hartuko bagenu, eta gai izango gara duten gordetzeko kortxetea honetan
formatu ahala Nik ohitu da beste hizkuntza ugaritan ere.
Baina hemen gauden Gauza pare bat definituz.
kalifikazio mutable aldagai bat da utzi hitzarekin erabiltzen dugu.
Beraz, horrek esan dugu gero alda dezakezu array honen edukia.
Da mota Array Int ditu, eta hori esan dezakegu
oinarritutako karratu parentesi horiek hemen.
>> Orain gauza polit bat honi buruz dugun
asko sarbidea izan informazio gehigarria
array buruz besterik erabiliz dot idazkera sinple batzuk.
Beraz, adibidez, grades.count guri eskaintzen
Hori dela existitzen elementu kopurua array, eta gero ezin dugu sartzeko nahiko
Erraz besterik dot idazkera hori erabilita.
>> Gehiago gehitu nahi baduzu array hau elementuak,
ezin duzu PHP estiloa non esplizituki besterik ez duzu definitzeko,
indize jakin batean, balio batzuk txertatu nahi duzula.
Horren ordez, erabili erantsi array mota, metodo
elementu hori, 95 eransteko, zerrenda honetan.
>> Beraz, orain array honetan, honako hauek ditu contents-- 100, 0, 90, 85.
Eta orain erantsi diren ditugu 95 baita.
>> Badira beste modu Gauzak erantsi dezakegu.
Benetan erabili ahal izango duzu summation operadorea,
bertan bezala interpretatuko da array append operazio bat.
Eta zuk, gero, erantsi ahal beste array, zeinaren eduki diren 70 eta 80,
array hori.
Beraz, gaur egun dugun aldakorreko honen edukia
100, 0, 90, 85, 95, 70, eta 80 grades--.
Hau gutxi sintaktikoa polit bat besterik ez da azukrea Swift digu ematen.
>> Beraz batzea nahi badugu kalifikazio, agian ez gara
batetik bestera joateko nahi joan begizta honetan elementu bakoitza baino gehiago.
Eta ez dugu, Swift ere, ideia Bat begizta for espero bezala.
Baina bide hori adierazi dugu sorta bat, apur bat desberdina da.
Beraz, kasu honetan, Laburbilduz dena, dizkizugu
aldi baterako sortzen joan batuketa izeneko aldagai ordenan guretzat
Aldaketa hau mantendu ahal izateko.
>> Eta konturatu gure alde begizta eraikuntza hemen.
0 indizeak For .. <grade.count.
Beraz, eraikuntza hau, 0 .. <grades.count sorta operazio bat non gauden da
ari garela sortu esaten Osoko zenbaki sorta bat 0-tik gora
baizik grades.count kenduta.
Beraz, hau izango da 0, 1, 2, 3, 4, 5 up bat ezin zenbatu arte
grades.count aurretik.
>> Beraz, hau da, nola baino desberdina dugu normalean begiztak erabiltzen
non indize batzuk izango litzateke duzu aldakorra, ezarri 0 berdinak hasiera batean,
eta gero integratu batzuk arte balio elementu kopurua baino gutxiago
Array horretan.
>> Beraz, ez da aldaketa bat da hau da, benetan,
horri esker, guretzat oso erraz areak mota ezberdinak ezarri.
Sorta hau aldatzen baduzu hiru puntuak, 0 ... grade.count,
hau sorta bat irudikatzen 0 biak barne grades.count den,
kopuru hori dela ere esan nahi ondoren, tarte horretan sartzen.
>> Baina hau ez da oso praktikoa Gauzak zehatza horietarako,
denean egin behar dugu begizta baino gehiago iterazioak
indizeak horiek zero indexatutako delako, beste hizkuntzetan ikusi dugun bezala
baita.
Honetako zalantzaren begizta for?
>> Beraz, ez da definizio inplizitu da indizea aldagai horren,
bere balioa 0 hasten da, eta begizta-iterazio bakoitzean jarraitzen
1era eman areagotuko puntu bat arte Hori dela berdina grades.count,
eta amaitzen da, begizta aborts.
>> Iragarki gure kateekin dagoela Interpolazioa hemen,
Egia esan, ez dugu erraz batzuk egin ditzake Horien manipulazio.
Beraz indizea gehi 1 izango da benetan balio duten batzea egiteko
indizea delako, in Kasu honetan, oso bat.
Eta puntu horretan, izango da Ondoren katea bihurtuta
eta kate hau sartu interpolatu hemen, eta inprimatutako espero ohi dugun bezala. .
>> Eta gauza polita arrayetako buruz hemen da
halaber, izan gai garela baloreak eskuratzea eta ezartzeko balioak
kortxetea notazioa gisa erabiliz beste hizkuntza batzuetan ere ikusi dugu, baita.
>> Ondo da, beraz, hemendik aurrera, orain dugu konputatzeko gure gure kalifikazio guztien batuketa.
Orain Sort hurrengoan urrats logikoa litzateke
zatiketa ekintza aurrera eramateko aurkitzeko kalifikazio dutenen batezbestekoa atera.
Baina zerbait garrantzitsua Hemen gertatzen ari da bertan
da diru-kopuru hau da, beharbada, zenbaki osoa.
Baina batzuk egin behar dugu zatiketa bikoitz moduko.
Eta hau izango da oso garrantzitsua da
Eragiketa hau egin nahi dugu, zer esaten ari garelako
da benetan behar dugun zatiketa egiteko bi bikoitzak orrian.
Eta berriro ere, Swift delako oso biziki idatziko da,
Esplizituki guztiei ezarri behar dugu bikoizten elementuak ditugu aurretik benetan
eragiketa lantzeko.
>> Beraz, ordena gurekin zatiketa bikoitza egin,
Ez da nahikoa besterik batentzat Elementu horietako bat bikoitza izan.
Biak bat izan nahi du Swift ordena bikoitza
Ziur hori izango da da, zer egin nahi dugun.
Beraz, izango da, ondoren esplizituki typecast dugu batez ere kalkulatu ezin ditugu gehiketa
eta bikoitzak to kalifikazio kondea, eta ondoren, eragiketa hori eta denda egiteko
duten aldagai berri honetan sartu, edo, hobeto esanda, bataz izeneko konstante berri honetan,
horrek zer mota, imajinatzen duzu izango?
Bikoitza, bai.
Beraz, kasu honetan, ez dugu ez dute zehaztu nahi
Egilea inferi daitezkeenak delako Eragiketa zer datuen batezbesteko mota
izango da.
Eta Swift oro har, nahiko ona buruz moten inferitzeko gai izatea.
>> Ez hau ikusi nahi dituzun korrika egin, edo ezin, ibili naiz?
Jarraitzea nahi dut.
Honen Edozein galdera bat?
Great.
>> Orain ari gara iritsi hasteko joan the stuff-- definitzeko funtzio onak,
eta ez direla beste mota pare bat Swift berezia ez duzula
beste hizkuntza batzuetan ere ikusi Orain arte,
baina beste agertzen dira baliteke geroago aurkituko dituzu hizkuntzetan.
Beraz, lehen nahi baduzu funtzio bat definitzea,
zuk funky hitzarekin definitu funtzioa, eta, ondoren, funtzio izena,
eta, ondoren, parentesi artean, argumentuak Funtzio hori onartu nahi duzula.
Argumentuak, gainera, muztioa specify-- oro har
halaber, datu-motak zehaztu behar dela , dira dute inferitu ezin direnean.
Eta ikusiko dugu gutxi dagoela Pixka bat besterik Oharra.
>> Beraz, kasu honetan bat egin behar dugu printGradeCount izeneko funtzioa.
Onartzea goaz aldagai edo, kasu honetan,
constant-- baten kalifikazio-liburua deitu.
Eta hori da nahi izango ote zenbaki osoen array idazten.
Orain ez dago zerbait hori oso garrantzitsua da hemen
ulertu behar duzun dudala.
Lehenetsi dela, argudio horiek da duten funtzio honetarako sarrera daude
inplizitu let keyword batekin definitu, horrek esan nahi du ezin dudan aldatu honetan
kalifikazio-liburua aldakorreko hemen.
Eta hori ordenatu zentzua, Datu ari zaren pasatzen delako.
Eta zuk, agian, ez dute nahi da to you azpian aldatuko dira.
Posible da esplizituki aipatu hori aldakorra da jarriz
var hitzarekin hemen.
Baina hori gotcha hori duguna da Nabaritu pertsona iraganean egin dute
dela joan dela suposatzen dutela aldagai bat izan denean, hain zuzen ere,
konstante bat da.
>> Ondo da, beraz, hemen, ondoren, kasu honetan, Ez gara edozein itzulera mota zehaztuz.
Erakutsiko dugu nola egin une bat besterik ez dela.
Baina hemen nabarituko dugula hausnartu besterik baldintza bada soil bat.
Kalifikazio-liburuan badago hutsik, kasu honetan, zein
besterik osokoa jabetza da array, ondoren, zerbait inprimatu dugu.
Bestela, beste zerbait egin dugu.
>> Nahiko erraza orain arte uste dut.
Baina gelditu me edozein zalantza izanez gero.
>> Orain funtzio hori, batez beste, ere hartzen argumentuak batzuk, edo argumentu bat baizik,
bertan liburuan, eta oraingo honetan da mota bikoitz bat itzuli du.
Informatika delako batez bestekoa, eta hori da
benetan itzultzeko duten joan ordenagailu zenbakira deituz lerroan bestekoa.
>> Kasu honetan, zehaztu dugu itzultzeko mota gezi baten ondoren.
Eta hau sentitzen dezake bitxi mota lehen.
Ohituta hazi haizen Bueltan bezala ezartzea
funtzioaren izena aurretik idatzi.
Baina honen uste baduzu matematika dagokionez,
atsegin matematika duzu definitzen duten funtzioa,
zenbait funtzio bat duzu Sarrerek, eta irteera bat sortzen da.
Eta hori da hain zuzen honek suposatzen da imitatzen.
Eta badira beste hizkuntza pare bat duten antzeko sintaxia izan baita,
baina seguruenik ere ez dela Nik CS50 ikusi.
Baina, oraindik ere, ez ote da nahastu.
Gezi esan zer va Kasu honetan, ezin itzuli.
Ados, beraz, nola goaz Batez besteko hori kalkulatzean?
Beno, kalifikazio-liburua bada hutsik dago, bai gero gaude
0 itzuliko da, eta horrek, agian joan zentzuzko modu batean hau tratatzeko.
Ez dakit, horrek etortzen utzi atzera pixka bat ere.
Zalantzarik gabe hori ez benetan zentzuzko modu bat izan
Batez beste bada konputatu kalifikazio-liburuan huts bat daukagu.
>> Ondoren, besterik ez dugu egingo gure summation egiteko.
Ohartu, hemen dugu benetan ordezko baten bertsioa izan
begizta, eta horri esker, batetik bestera joateko guretzat array batean elementu bakoitza bakar baino gehiago
eta elementu bakoitzak jarri Bere aldakorra itzultzea.
Kalifikazioa zehaztuz arabera kalifikazio-liburuan, esaten ari gara
da ari garela inplizituki izeneko konstante berri bat sortu
kalifikazioa hori irudikatzeko liburuan elementua berezia guztietan
aldi bakoitzean begizta iterates for the.
Beraz, lehen aldiz Honez exekutatu, nota izango
liburuan lehenengo elementua izan.
Bigarren aldiz egingo da etorri Bigarren elementua, beraz, eta abar
kalifikazio-liburua dauka arte Agortu bera elementuen.
Ondoren nahi duten laburbildu ahal izango diegu Gure summation aldakorra sartu kalifikazioa
eta gure bataz itzultzeko Nik ikusi dugun bezala aurretik.
Ados, edozein galdera?
Bai?
Ikusleak: bi galdera ditut.
Telefono zenbaki bat, hipotetikoki, ahal Bat honetan zenbaki oso exekutatu duzu?
Ez dauka bat izan nahi du bikoitza, zuzena da hori?
DAN AMRMENDARIZ: Ezin duzu Galdera hori errepikatzeko?
IKUSLEEN: I egin zenbaki oso batez bestekoa eginez?
DAN AMRMENDARIZ: Ezin duzu ez da zenbaki oso batez beste?
Beraz itzultzeko zenbaki oso bat bataz ordez bikoitz bat?
>> Ikusleak: itzuliko dizu eskubide hori orain azpitik izan.
DAN AMRMENDARIZ: Hementxe, itzultzeko 0.0?
Ikusleak: Bai, besterik gabe itzultzeko 0.
Beraz, bai izango da 80 edo 85, baina ez 85,2.
>> DAN AMRMENDARIZ: Beraz, kasu horretan, beraz, ez da pare bat modu ezberdinetan
horri erantzuteko.
Demagun horiek erantzun ahal izateko.
Beraz, ez dut egin besterik ez bada itzulera honetan 0, 0 bat zenbaki oso bat da.
Eta beraz, bat sortuko dute mota error kasu honetarako
Da bikoitz bat espero delako baina, ondoren, zenbaki oso bat itzuli egin da.
Osoko bat itzuli nahi badut, I can.
Itzulera mota ezarri ahal izango dut int itzultzeko 0 hemen,
eta ez zatiketa bikoitza egin.
Baina orduan ez litzateke izango dugu Zatiketa egiten.
Eta, beraz, ez dugu gero, ez litzateke lortuko du bataz litzateke dugun seguru espero.
Baina bai alda dezakegu horrela motak.
>> Ikusleak: Eta bigarrenik, Bat bikoitza dute gainean.
Baina hor behean, duzunean ez itzultzeko Bikoitza
hori dagoeneko automatikoki formatu bikoitza itzuli.
Zergatik jarraitzen du zehaztu behar duzu gezi bikoitza batekin gainean?
>> DAN AMRMENDARIZ: So kasu horretan, hau parte da
ren the-- beraz, galdera errepikatu, Bueltan batetik inplizitua delako
mota hemen, zer mota hau benetan da, Swift-ekin esplizituak izan behar dugu
zer nahi dugun buruz itzultzeko egindako funtzio honen
Idazten egiten da, beraz, egiaztapena, ziur egin ahal izango da
zer benetan ari gara idazten duten Behean behera benetan duena darabil.
Beraz moduko on txeke bat bezala zeuk Egoera multzo.
Baina ez are--
>> Ikusleak: [INAUDIBLE] gezi?
>> DAN AMRMENDARIZ: ez dira kasu inplizituki ahal dugun zehaztu ahal
ezarri bueltan mota.
Baina kasu honetan, ez dut Uste horretan lan egiteko.
Ez dago beste sintaxia batzuk geroago ikusiko dugun.
>> Ondo da, beraz, iturri hau kodea pixka bat desberdina da
hau parses argumentuak delako funtzioa deitzen ari gara.
Utzi erakusteko nola funtzionatzen duen dugu aurretik, ibili
Gauza interesgarri batzuk hori Swift gertatzen.
>> Beraz, kasu honetan, exekutatu dut besterik ez bada hau kodea, konturatu egiten ari denaz
is-- berriz, nolako error bitxi bat ematen dit.
Pasatzeko pare bat behar dut Osoko zenbaki komando lerroko argumentu gisa.
Beraz, ikus dezagun, 150 eta 80, eta sakatu Sartu jakiteko zer da benetan egiten.
Bakoitzak Honez onartuz balio horiek zenbaki osoko bezala.
Honez horiek inputting kalifikazio-liburua batean.
Eta gero eszenikoen da bestekoaren kalkulua
eta espero ohi dugun bezala duten irteera.
>> Baina, jakina, ez da zerbait joan arbuiatzeko zerbait honekin on
Zerbait osoko gisa.
Geundenean tik baliteke gogoratzen gisa komando lerroko argumentuak aurre
C eta beste hizkuntza batzuk, lehen ere Komando lerroko argumentu hori elementu 0-garren
Zerrenda komandoaren izena da benetan exekutatu dugu.
Beraz, kasu honetan, besterik ez naiz begizta dut komando lerroko argumentuak osoko.
Baina ez dut inolako ameskeria moduko eginez gorako fakturazio saltatzeko bat lehenago.
Besterik esplizituki naiz inplizituki naiz Mota horietako bertan egiaztapena
osokoak dira I aurretik benetan konputazio hori egiteko.
>> Eta hori da, funtsean, Zer ari da gertatzen.
Ere Argumentu bakoitzarentzat Prozesu horrek argudioak,
Txeke batzuk egiteko noa.
Eta, kasu honetan, noa lehen bihurtzeko saiatu
argumentu oso bat bilakatuz finkoa esplizitua bat egitean,
, sarrera, kate bat delako eta ez, hain zuzen, zenbaki oso bat ere.
>> Baina honek sintaxia bitxi baten antzeko zerbait da, utzi kalifikazioa berdinen Int (auzia).
Zer da benetan gertatzen ari dena Hemen da oso
Zure Swift erabiliz garrantzitsua.
Hau da, zer da erabiliko aukerakoa mota bat deitu.
>> Beraz, funtzio hau, Int (argudioa), ez soilik osoko bat, baina itzultzen itzultzen
zer ari aukerakoa zenbaki oso bat deitzen.
Eta, beraz, hau da Ordena mota baten gainean mota bat.
Ordenatzeko imajinatu duzu Gustatu Honez pakete bat bezala itzuli.
Eta noiz zabalduko duzula pakete, bai
zenbaki oso bat, eta horrek ondorio da egiaztatu edo erabat bertan ez da ezer guztiak ditu.
Eta hau da erroreen zainketa gisa erabilgarria mekanismoa, zeren kasu honetan
jakin ahal izango dugu, hau izan zen motak bihurtzeko arrakasta?
Hala balitz, orduan da hain zuzen ere, barruan zenbaki oso bat izan behar da.
Bestela nik batzuk izan joan balio zero, deitu dugu bertan
zenbaki oso no ordezkari guztietan dago.
Benetan da ez da ezer ordezkari.
>> Eta beraz, eraikuntza balitz honetan aukera ematen duten pakete Unwrap digu,
hautazkoa loteslea.
Eta hori Unwrap gai gara pakete eta zenbaki oso bat aurkituko barruan,
orduan zer esaten ari gara Hemen da gero izango dugun
ahalbidetzen balio horretara sartu ezarri konstante kalifikazioa deitzen.
Eta adierazpen bada zati hau, goi adierazpen bada zatia
, exekutatu egingo duten delako unwrap arrakastatsua izan zen.
>> Besterik ez da gertatzen hori bada Oker bat izan zen agian
esplizitua motak bihurtzeko honetan kate batetik zenbaki oso bat, agian,
balio adibidez ABC da.
Eta hori da, egia esan, ez joan zenbaki oso bat bihurtzeko.
Ondoren nil itzuliko da, eta hori ez da zenbaki osoa.
Eta adierazpen bada hau bai gero huts egin.
kalifikazioa izango ez delako existitzen zenbaki oso ez du edukirik da.
Eta beste bloke horren ordez exekutatu izango da.
Bai?
>> Ikusleak: Nil N-I-L da?
DAN AMRMENDARIZ: nil N-I-L da, bai.
>> Beraz, hau da, agian, bat Swift buruzko gauza gogorrena,
batez ere Oraindik duzun IOS aplikazio bat belar
eta benetan saiatzen ari zaren garapen batzuk ez egitea.
Honez izango garrasika joan aukerakoa inguru duzu.
Honez izango duzu eskatuz joan galdera ikurrak, harridura puntu.
Baina behin out-- baduzu irudikatu denbora pixka bat eskaintzeko kalkulatzen den
zer ari den gertatzen aukerakoa motak, gorde zeure burua ikusiko duzu buruko mina asko
saiatzen ari zaren bezala Swift aplikazio bat idatzi.
>> Egia esan, ezaugarri oso indartsu bat.
Eta besterik ez dituzu behar da nire hitza hartu oraingoz.
Baina ikusiko dugu eraikuntza honetan eta beste batzuk nahi da
Beste iturburu kodearen batzuetan erakutsi dugu pixka bat besterik ez da.
>> Ba al dago hemen edozein hasierako galdera?
Beraz eramateko garrantzitsu bat da aukerakoa mota metatype moduko bat da.
Edo balioa du, eta egiten badu, orduan
ukanen dute balio duten elkartuak horrekin batera, edo daukan balio inolako,
eta zero arabera diguten moduan.
Hau gainerako da agian espero bezala.
>> Hargatik arrapala du Zailtasun berriro.
Eta oraingoan, dezagun batzuk begirada bat hori benetan existitzen beste datu motak.
Horietako bat hiztegiak da, hau da, Oso Python hiztegiak antzekoa.
Zertxobait hash taula bat antzekoa da C. Da funtsean gakoak mapaketa azaltzen
non giltzak kateak izan daiteke.
Eta noiz ireki gako hauetako begiratuz, gako hauetako balioa izango du.
Beraz, ez da array bat nahiko, baina ordez, estuago lotutako
hash mapa bat edo hash taula batean.
>> Ikus dezagun nola hau da, ustezko utzi dugu aurretik lan benetan
Iturburu-kodea berak sartu.
Exekutatu dut besterik ez bada hau, ezer benetan gertatzen.
Me da kontatzeko hori espero dut Honako mota parametro batzuk.
Beraz, nik ematen dut arazoa ezarri izen batzuk,
beraz pset0, agian, 100 lortu nuen.
Eta pset1, lortu dut 5 bat.
Eta gero, azterketa, I egin du, oso ondo, eta lortu 30.
Eta trabatzen, espazio bat hit dut hemen.
>> Sartu hit I, ikusi ahal izango duzu konputazio batzuk bete behar ditu.
Kalifikazio-liburua hiru da esaten da kalifikazio, pset1, pset0, azterketa.
Eta liburuan gordetzen ditu bataz partida honetan.
Beraz, berriro ere, lanean ari gara kalifikazio-liburua ideia honekin,
baina ari gara errepikatzean jarraituko du Gure funtzioa konplexutasuna.
>> Beraz agerpena, besterik ez gara funtzio bat sortzen joan direla
da erabilera inprimatzeko erantzule.
Eta han irteera hau da Funtzio Horrek besterik
indarrez aplikazioa utzi.
Hau ez da zerbait egingo iOS app ere erabili behar dituzu.
Hau da, bakarrik, kasu honetan, komando lerroko argumentu batekin.
Hurrengo Xcode aldera mugitzen hasi beharko dugu.
Baina hau ez da agindu bat partida lerro estilo programa Swift ere.
>> Ikus dezagun begirada bat batzuk gauza interesgarri hemen.
Ikus, pare bat bakarrik utzi Gauza interesgarri agian aipatzearren
da nire funtzioa ere kalifikazio kopurua inprimatzeko,
Zerrenda hori izan dut gogoratzen dezakezu items-- pset1, pset0, eta azterketa.
Benetan azkar ahal duzun eta erraz egin
liburuan, hau da, bat hartuz hiztegi bertan gakoak eta balioak.
Gakoa aurkitzen guztietan barrena da dot gakoak metodoaren hemen,
eta gero joinWithSeparator hau erabiltzeko, eta gero gako guztiak hartuko
ditugu idatzitako zuen, pset1-- edo Barkatu, pset0, pset1, eta exam--
eta kateatu horiek elkarrekin Koma bat eta espazio bat erabiliz
kate luzea sortzeko.
Batzeko eragiketa hau besterik ez da phenomenally testuinguru desberdinak ere erabilgarria.
Eta beraz joinWithSeparator hau da.
>> Eta hori gauza bat da hori da Swift 1etik Swift 2 aldatu.
Han izan ohi Python estiloa bazaude
Python-- Python bat ezagutzen style batu metodoa kateak.
Baina hori ez da jada Swift 2 kasu.
Hau erabili nahi izanez gero bete nahi al duzu stuff sorta batekin kateatu
elkarrekin kate batekin.
>> Beraz, agian, ondoren, gure bataz eztabaida aurretik,
zentzu pixka bat gehiago egiten du batez besteko funtzioa ezartzeko gurekin
aukerakoa bikoitz bat baizik izan nahi du bikoitza esplizitua bat baino.
Izan delako garela baldintza ezohiko non,
zer kalifikazio-liburua benetan bada ditu bere baitan balioak no?
Zer bataz bueltan egin beharko lukete?
>> Beno, agian C duzun Zerbait egingo luke
Eskainitako Sentinel balioa, like like 0.0, edo, agian, zenbaki negatiboak,
edo zerbait besterik Izan ere, ordezkari Ez zela error baldintza batzuk
eta agian ez dute benetan gaitasuna batez besteko hori kalkulatzeko.
Beno zehaztuz edertasuna aukerakoa mota hori egin ahal izango litzateke.
Eta orain, hitz horiek guztiak esaten dut, baina hau benetan ez du aukerako erabili.
Baina ikusiko dugu besterik direla minutu non batez besteko ezarri ahal izango ditugu
Datu mota aukerakoa bat da, beraz, izango da egia esan, datu batzuk, gero itzultzen bada
Datu hori itzultzeko aukera izango dugu.
Bestela itzuliko gara nil, hori esanez
no konputazio esanguratsuak ditu.
>> Dezagun aurrera eta beste zerbait.
Beraz, hemendik aurrera, dugu begira komando lerroan adibide horiek guztiak.
Baina benetan zer ari zaren izango aurre Xcode da.
Eta buruz gauza polit bat Xcode da, eta zehazki, Swift-en,
da hau dugula Playground bat izeneko gauza.
Eta parkea da Ez guztiak iOS app bikainean.
Baina esperimentu aukera ematen du Oso modu erraz batean Swift batera.
Zure kode guztia idatz dezakezu.
Honez nicely sintaxia hemen nabarmenduta.
Bein fitxategi berri bat sortzen duzunean, eskatu egingo da parkea sortu nahi baduzu.
Baina Playground buruz gauza polita dela zure leihoaren eskuinaldean,
du benetan erakusteko duzu Zure kodea irteera hau.
Beraz, behera joan badut, zer ikusi ahal izango dugu Kode lerro hainbat aginduaren irteera
benetan gertatzen den bezala.
>> Beraz, kasu honetan, goaz aldatu norabideetan pixka bat besterik ez
eta hori da benetan zertaz hitz egin Maila handiko bide hau garrantzitsua
Swift du, eta horren funtzionatzen bajen ideia hori da.
Eta seguruenik duzu ikusi Ikusteko Javascript-a apur bat.
Duzuenontzat horretarako CS50 daude, bajen
oso ezagunak dira, egiteko modu oso ona mailako hizkuntza modernoetan gauzak.
Baina, era berean, mota horretako zaila da Zure burua biltzeko lehen aldiz inguruan.
Beraz, bada bila honetan duzu Lehen aldiz, OK.
Just jatorrizko kodean begiratu eta ikusi da irudikatu dezakezu etxean bada.
>> Beraz, kasu honetan, demagun horren dugu adierazlerik asko sortu nahi
balio finko batzuk.
Beraz, kasu honetan, funtzio bat sortu ahal izango dut.
Boterea deitu noa 2. helburua bizitza zeinen mihi
sarrera batzuk eta bikoitza hartu da, eta itzultzeko balio duten.
Iragarki hemen naizela Datu mota bat onartuz.
Honez izeneko x aldagai bat izango da.
Mota bikoitz ditu.
Eta ez dut bikoitza bat itzuli behar da hemen.
Eta besterik ez dut egin behar oso, Egia, nahiko
balio hau bikoiztu modu inozoa.
Eta zuk zergatik honetan erakutsi dut segundo bat besterik ez da erabilgarria.
>> Ohartu, hemen sorta hau dugu berriro. 1 zerbait, dot for
dot dot, 2, eta horrek esan nahi du, begizta hau birritan ihes egingo.
Baina hau Aldagaia bat adierazten du.
Ez naiz benetan joan dela esan nahi du aldagai hori edonon erabiliz
begizta honen barruan.
Lerro hau nahi dut kodearen birritan exekutatu,
jakin beharrik gabe Sorta duten balioa.
>> Beraz, kasu honetan emaitza dut exekutatzen aldiz x birritan, funtsean
esan nahi du, balio honek squaring naiz.
Eta hau gertatzen den lan espero ohi dugun bezala.
Power of 2, balioa bat pasatzen 2,0 4 irteera bat ematen digu.
3.2 10.24 lanak.
>> Orain antzeko bat egin ahal izango dugu 3 boterea gauza.
Baina orain gama bakarrik aldatzeko.
1 in Aldagaia For 3 bidez, biderkatu 3 aldiz,
eta gauza bera egin.
>> Beraz, hau, apur bat okerrago sentitzen dezake.
Baina ez da garrantzitsua izan Gauza hemen bertan
da horiek aztertzen ari direla bi funtzio, ez da
Gauza bat bakarra hori da desberdina, bertan barrutia balio hau da.
Dena bi horiei buruz beste funtzioak, 3 boterea eta 2 potentzia,
dira, hain zuzen ere, zeren berdin- modu berean lan egiten dute.
>> Beraz, puntu honetan, apur bat alarma kanpai joan behar off.
, Zorionez, zer esaten ari zaren Dakizuenez, hau pixka bat sentitzen
Ahalegin bikoizketa bezala.
Agian ez dago modu bat da nuke izan hau guztia enkapsulatu gai
eta funtzio bat ematen edo funtzio bat sortzen duten
du zehazki zer gabeko nahi dut berriro idatzi egindako esplizituki beharrik.
Eta hau zer boterea da itxiera baten egiteko aukera ematen digu.
Beraz, dezagun begirada bat.
Eta pare bat pasatzeko dut honetako minutura, hau delako
polita da Swift garrantzitsua.
Hau ikusten dugu denbora guztian.
Funtzio bat definitzen goaz.
Honez powerOf deitu behar da.
Honez bat onartzeko joan parametro-mota int y izeneko.
Baina bueltan mota begirada bat hartu.
Itzultzeko mota da, in parentesi, bikoitza gezi bikoitza.
Horrek esan nahi du funtzio hori, Funtzio powerOf honetan,
funtzio bat itzuli egin da.
Hori bikoitza onartuz eta bikoitza bat itzuli.
Beraz, mota soinua ero, baina dezagun joan behera pixka bat
eta begiratu zer gertatzen den ikusteko.
Funtzio powerOf honen barruan gaude.
Funtzio berri bat sortzen ari gara exponentiator deitzen,
baina ez du axola zer da.
>> Iragarki hori dauka sarrerako x balioa.
Eta bikoitzean dago hartuz eta bikoitza bat itzuli.
Eta hori bera da dugun Ikusi berria, 2 balioa izan ezik
edo 3 balioa, hori goiko sorta horretan aritzeko,
izan ordez batera y balioa hau, eta horrek
Hasierako parametroa zen Gure powerOf funtzioa.
Eta puntu honetan, ez dugu itzultzeko exponentiator.
Funtzioa itzultzen ari gara.
>> Mota da apur bat kontuan Herrigintza bezalakoa da.
Baina demagun orain zer gertatzen den denean funtzio hau deitu dut powerOf
eta bertan sartzen 2 bezalako balio batzuk pasatzeko.
Zer esan nahi duten Orain balio daukat
2 y for, horrek esan nahi du, balio hori exponentiator funtzio honetan y
2 balio hori izango da.
Baina hau dut itzuli exponentiator funtzioa.
>> Beraz, konturatu Swift zer esan nuen dute kasu honetan sortu.
utzi plazan dago definizio bat, da, Binakako onartzen duen funtzioa
eta itzultzen bikoitza.
Funtzio bat sortu dut plazak, zerbait
Mekanismo hau erabiliz hementxe.
Eta benetan zer gertatzen ari da Funtzio honek itzuli egingo duela
exponentiator, baina balio hau y horren barruan bilduta dago.
Eta beraz, orain denbora guztietan erabili dut honetan aldagai edo konstante hau deitzen
plazan, joan egiten da funtzio baten gisa portatzen.
Eta beraz, I, gero, deitu daiteke aldagai hori bezalako funtzio bat deitu nuke,
eta bertan sartu kopuru bat gainditu, Kasu honetan 3 bezala.
Eta gero plazan egingo dut balio hau.
Beraz, 3 egingo karratu gero bihurtu 9 gisa dugu hemen ikusi ahal izango dira.
>> Benetan crazy, baina honek orain aukera ematen dit
beste powerOf funtzio sortzeko.
Esan dezaket bezala, OK, ondo hasi nahi dut funtzio berri bat sortu nahi da, powerOf (3),
eta denda batean sartu dela izeneko kubo etengabeko.
Eta orain kubo dago bat izango da aparteko funtzioa izango duten gero
sarrera eta kubo gisa balio batzuk hartzen dituzten balio bezala, beheko lerroa ikus dezakegu
hemen.
Guztira: 2 kubo da 8 eragin doa.
>> Zorionez nahiko garbia stuff.
Inoiz ez duzu ikusi ahal izan da.
Nahi bajen begiratu animatzen dut eta ikertzeko hau pixka bat gehiago.
Honez gauza benetan boteretsu asko ikusi ditugu Ikusteko Javascript-a eta beste zenbait hizkuntzatan.
Benetan funtsezkoa APIak ulertzeko baita
egingo dugun iristeko bigarren batean.
Bai?
>> Ikusleak: Noiz egin nahi duzu powerOf (2), parentesi, eta, ondoren,
parentesi beste, input-- beste Funtsean plazan ordezkatuz duzu.
DAN AMRMENDARIZ: Beraz, itxura azken lerro hemen.
Benetan da guztiz posible egin iradoki bezala kateatzea hori.
Beraz powerOf (5) esan ari garela 5 exponentiator bat izatea hemen.
Beraz, hau da, funtsean izango da Gauza bera 4 bosgarren boterera,
dugu exponentiating bat sortu duelako Bosgarren botere funtzionatzeko,
eta ari sartu pasatzen dugu Hori funtziona 4 balioa.
Eta balio hori lortuko dugu espero dugu 1024.
Ikusleak: Eta ez da bat izendatzeko, errazagoa egiten du
irakurtzeko, plazaren edozein dela ere.
>> DAN AMRMENDARIZ: Eskuin, zehazki.
Beraz, ez dut jarri aurretik, besterik ez da konstante bat hemen orain sartu
Egin dela izen hori erabili erraza.
Bai?
>> Ikusleak: Testuinguru honetan powerOf, parte da
programazio hizkuntzaren Bidean duzu ez bezala
powerOf uste [INAUDIBLE] in?
DAN AMRMENDARIZ: So Kasu honetan, powerOf
Besterik gabe, izena da funtzio hori sortu hemen definitu dut.
Beraz, ez da berez dagozkion hizkuntza bera,
baina horren ordez, besterik ez da duela funtzio bat
izen dudala eman delako izen hori.
Beste edozein galdera?
Ados.
>> Azken hau da, handia.
Baina ez duzu bat ikusteko joan itxiera funtzio asko dagoela
horrela dira bertan definituko duzu, barruan funtzio bat, funtzio bat da.
Eta gauza bera egin dezakezu.
Baina mota da, ez Benetan beharrezkoa da, ezta?
Zergatik ez nuen definitzeko honetan Like exponentiator izeneko funtzio
eta ondoren, berehala itzuliko da.
Zergatik ezin berehala besterik ez dut Funtzio hau itzultzeko?
>> Eta hain zuzen ere, hau da, hain zuzen izeneko kontzeptu bat atzean ideia
funtzio anonimoak, non funtzio anonimoak ez benetan
dutelako izen bat eduki ez dute zertan bat izatea.
Eta, beraz, kasu honetan, 7B ere, hain zuzen ere, aurki ditzakegu.
Kode bera gertatzen da, zehazki gauza bera egiten du,
baina orain zertxobait aldatu dugu, beraz, Hori powerOf funtzio hau berehala
funtzio bat itzultzen du.
Oharra bueltan ondoren, Han giltza ikusteko dago.
Sarrera hau bikoitza da espero da.
Irteera hori bikoitza espero da.
Eta gero ere hitzarekin Kodea berez bereizten ditu.
Beraz, funtzio anonimo bat da.
Ez du benetan izenik, berriz, egiten exponentiator izeneko aurretik zen.
Baina, ikusi dugun bezala, besterik gabe, benetan ez zuen aipatzen exponentiator
Funtzio hori kanpo.
Beraz, ez du axola.
Beraz, funtzio anonimoa izango da deiturikoak izenik delako,
baina oraindik erabiltzen ari Kode honen testuinguruan.
>> Hurrengo pare direnak naiz zorionez jarraituko du
zure burua pixka bat jotzen.
Hau are gehiago errazteko ahal izango ditugu.
Astutely zen bezala delako azpimarratu zuen lehenago,
agian benetan ezagutzen dugu, arabera kodea inferring zer
Kode hori, irteera behar izan da, beraz.
Eta hain zuzen ere, funtzio anonimoa honetan, Izan ere, ezin dugu datu mota ondorioztatu.
>> Beraz, hau da, ez dugu gehiago den zehaztu behar
hori izanik datu-motak Sarrera eta irteera funtzioa honetatik
arrazoi pare bat da.
Lehenik eta behin, definitu dugu, gora begira ixten funtzioa prototipoa,
zer motako datu anonimoak honen funtzionamenduari buruzko sarrera eta irteera.
Eta beste batetik, guk Kodea infer
Hemen behera dagoela onartzen dugu Sarrera horretan mota bikoitza da
eta bikoitza bat itzuli.
>> Iragarki hemen ez daukagu ​​esplizituki argumentuak izenak definitu
Funtzio hori onartuz.
Eta horrela nahi dugu erreferentzia ikus ditzakegu $ 0 $ 1 erabiltzen dutenen parametroak,
abar eta abar, arabera erabilitako parametro horren kopurua
funtzio honetan.
>> Hau dela zoazen zerbait da asko giltza open hau da ikusteko
definizio bat, eta jarraian $ 0, eta, ondoren, eragiketa batzuk,
eta gero giltza bat itxia.
Hori funtzio anonimoa da eragiketa hau burutzen.
Parametro hori non ditu mota ondorioztatzen da egin.
Lehenengo parametroa duten $ 0 da.
Eta operazio batzuk 0 $ gertatzen.
>> IKUSLEEN: dolarraren ikurra Parametrorik funtsean esan nahi du,
eta 0 lehenengoa esan nahi?
DAN Armendariz: Hori da zuzena.
Beraz, dolarraren ikurra esanahi du, parametroa, eta 0 lehenengoa esan nahi du.
Baina bereziki, lan egiten hasi Kasu honetan, non ez dut izeneko
Nire funtzio anonimoa argudioak.
>> IKUSLEEN: Perl edo zerbait dolarraren ikur hori, dolarrak 0 hor?
DAN Armendariz: Ba al du bertan, sentitzen dut?
IKUSLEEN: Perl dute dolarraren honetan 0, dolarrak 1--
DAN Armendariz: Ez naiz too Perl ezagutzen,
baina PHP zer definitzen aldagai oinarritutako dolarraren seinaleetan.
Zenbait hizkuntzatan eta gehiago izan daitezke honen antzeko ezaugarriak dituzte.
Izan ere, Swift dialektika bat hau bezalako ezaugarri asko
beste hizkuntza asko.
Python ukituak ikusi dugu bertan.
Motaren definizioa hau badirudi OCaml datoz.
Eta sorta oso bat besterik ez dugu Hizkuntza ezberdinen asko tik gauza.
Hori da polita bat Swift buruz gauza
da onena asko hartzen duela hizkuntza sorta bat ideia
eta shoehorns denak elkarrekin Hizkuntza super bat sartu.
Izan ere, aukera ematen dit duzu bada Zure kontuan Herrigintza jarraitzeko,
beraz, izan dugu hau guztia egiten.
Agian errazteko dugu hau, apur bat Pixka jabetu eta, noski,
Swift exponentiating dauka funtzioa erabiltzen.
Darwin, inporta dut bada bertan besterik liburutegian dela
izeneko funtzio pow honen ezaugarriek, orain Nire funtzioa botere I errazteko
honako hau izango da.
Da itzuli joan funtzio anonimoa honetan.
>> Baina nola simple hau da, orain begiratu.
Hau funtzio anonimoa da hau da, datu-mota batzuk onartuz,
eta da, bat izango da Argumentu zehazki,
$ 0 duten mota bikoitza da hemen agertzen den.
Da bikoitza mota bat itzuli du.
Baina bueltan instrukzioa orain funtsari.
>> Eta estilo zehatz hau da, da, oso, oso Swift nagusi,
leku guztietan zehar.
Hau ikusten ari gara Swift denbora guztian.
Beraz, hau guztia erakusten dut nahi zuk sintaxia hau delako.
Hau oso ohikoa ikusi, eta horrek esan nahi du
funtzio anonimoa da hori burutzen ari da
argudio horiek operazio batzuk.
Eta han bueltan inplizitu bat da.
Beraz, erabat gauza bera da Gurekin hori esateko, hementxe.
>> Kizkur Hori dela eta parentesi funtzio bat da,
hau egiteko ari gara Lehen argumentua orrian.
Hori itzultzeko goaz.
Baina kanpoko itzulera hau da funtzio osoa itzultzen,
funtzio anonimo hori osotasunean Oraintxe sortu dugula.
Beste edozein galdera?
Ondo da, ez badut ezagutzen horretarako prest dira mutilak,
baina are eroago gaitezke Swift batera.
Prest al zaude?
Ados, hau handia da.
>> Orain benetan gaitasuna dugu ra, Swift ere, nola modular delako
eta protokoloa nola oinarrituta dago, to gureak freaking operadore definitzeko.
Kasu honetan bezala, ez izan genuen Ondo exponentiation-- for operadorea,
Zerbait eskumenak gauzatzeko.
Baina ezin dut, Swift ere, definitu berri batean du hori, hain zuzen ere hori operadorea.
Beraz, kasu honetan, ez da sintaxia mordo bat hemen.
Eta begiratzen uzten dut Etxean begiratzen honetan duzu.
Baina artizki hau definitzeko ari gara operadorea, **, eta hauek ere ahalbidetuko digu,
zer dela definituz funtzio ** benetan
duela, ezker eskuko bat onartzeko Bigarren mailako eta eskuin hegalean bat,
eta, ondoren, horren adierazgarri itzuli ezkerreko eskua Eskuinean alboko.
>> Eta, beraz, gaur egun bat-bateko I Bat guztiak Zenbakitzaile berri bat sortu dute.
Beraz, 2 ** 3 bitartekoak 2 hirugarren potentzia da.
[Kontuan Herrigintza SOUND] Hau arabera bezala izango duzu egin behar du bere burua,
Ados, torlojua C. noa Swift modu guztiak.
Hau handia da.
Hau da, nahiko fantastikoak.
>> Honen adibide handi bat da, nahiz eta.
Baina inoiz ez dut behin kanpo Adibide honetan benetan
Nire operadorea propioa definitu.
Baina, oraindik ere, erakusten a Swift boterea asko
eta hori zergatik da benetan Benetan oso cool.
Ados, bai?
Ikusleak: Oraindik baduzu Zeure operadorea definitzeko,
ez egin nahi gabe, nola jakin duzu saiatu eta operadore batek hori sortu
C nonbait ere, atsegin nonbait ezkutatuta Swift ere,
bat ilun bat bezala duzula agian, ez dute ikusi aurretik.
>> DAN Armendariz: Beraz, saiatzen zaren Zure operadore propioa definitzeko,
Han definitzeko arriskua dago operadore emaileak gainean.
Hori xehetasun maila bat dela doa Ez dut uste denbora gehiago joan behar dugu.
Baina hori arrisku bat da.
Eta hori oso arrazoi hain zuzen ere, Ez nuen kurtsore ikurra, zein erabili
denean egindako power idazten ari gara, ohi dugu erabili 4 kurtsore little 5 edo zerbait
duten bezala, besterik ez denean gaude Lagunak edo dena Gchatting.
Baina kasu horretan, egia esan, Talka bat eragin zukeen.
Eta horrela izan dut saihestu besterik ez delako Kasu honetan Ezagutzen nuen
Hori dela talka eragingo luke.
>> Ados.
Orain, zoritxarrez, for Azken zazpi minutu,
Herrigintza mantendu behar dut Zure adimenak pixka bat.
Beraz, aukera ematen erakusteko me beste gauza batzuk ere bai.
>> Agerian dizugu ideia hau funtzio anonimo horiek izatea,
bajen horiek aukera ematen dizu motatako gainditu funtzioen inguruan.
Horietako itzul dezakezu.
Hauek manipulatu ahal izango dituzu.
Zoro mota guztiak egin ahal izango duzu.
>> Baina hori beste gauza bat Gertatzen lagungarri izateko
da gaitasuna, alderantziz, funtzio horiek itzuli
funtzio batean, funtzio bat gainditu beste funtzio parametro gisa.
Zuk be bai agian pentsatzen zergatik Lurrean litzateke horrelako zerbait egin nahi dut?
>> Beno, esan dezagun nahi dut operadorea hau hartu dudala
eta sortu nahi zuen lan hain zaila aplikatu zenbakiak ezberdinak sorta bat da
array batean.
Beraz, kasu honetan array bat izan nuen 1, 4, 7, 2, 5, 10, 56 zenbaki osoen.
Eta horiek guztiak bikoiztu nahi dut.
Bide hori, normalean genuke ez da besterik idatzi
begizta for sinple bat horiek guztiak iterates
eta nolabaiteko egiteko Haien gainean eragiketa plazan,
Balore berri horiek inputting berri batean aldakorra, edo hobeto esanda, array berri bat hemen.
Eta ekoizpen balioaren Emaitza orduan da arrayak horiek guztiak,
edo, hobeto esanda, horiek guztiak elementu orain karratu.
>> Eta gauza bera egin genezake egiten cubing gauza,
baina apur bat alarma kanpai Joan egin behar off
Hori, agian, ez da esaten duena modu batzuk genuke
izan hau errazteko pixka bat duela.
Eta egia esan, ez da.
Zer sortu ahal izango bagenu horrek ematen duen funtzio bat
, onartu harraparia, funtzio gisa?
Beraz, kasu honetan, hartu bat argudio horiek begiratu.
Bikoizten zerrenda bat onartu behar izan dugu.
Eta gero, goazen funtzio bat onartzeko
f izeneko aldagai batean va Binakako bat hartu eta itzuli bikoitza bat.
Eta irteera osoa funtzio osoa honen
ko deritzo joan bikoitza izeneko array bat itzuli.
>> Zer da hau litzateke orduan uzten niri ez da zerrenda horretan zehar batetik bestera
eta gauza bera egin du, baina orain funtzioa aplikatzen duten bakoitzean
Zerrenda horretan banakako baloreetako.
Beraz, ez dut jakin zer f da.
Ez ditu dit axola.
Baina hartzen bikoitzean, beti ere, Gainean eragiketa batzuk egiten,
eta orduan itzultzen a Bikoitza, ondoren nuke
Funtzio hori mapatzeko zehar gai Zerrendako elementu bakar behin.
>> Eta programazio-mota hori da Ordena funtzio handiagorik deitzen,
non ari funtzio pasatzen dugu parametro bezala inguruan
eta funtzio dituen gauzak egiteko.
Ordena da horiek guztiak hartuta bezala CS50 ikasi dugu ideia
eta horien moduko hartu ren hurrengo mailara.
Eta hau CS51 style gauza guztietan dago.
Eta hain sakonki dugu joan gehiago horrelako klaseetan.
>> Baina hori ere Hemen garrantzitsua dugulako
Ikusten funtzio asko direla Swift erabilitako
hori funtsean ez Joko hau, non daukagun
zenbaki batzuk, zenbakiak multzo batzuk.
Hori gainditu behar izan dugu Gure mapper sartu array.
Eta guk ere joan funtzio batzuk, pasatzen diren
dugu dagoeneko definitu hemen.
Honez plazan izango da.
Eta gero goaz Plazara zenbaki horiek guztiak
eta gordetzeko emaitza hau sartu hemen.
>> Beraz, kasu honetan definitu dugu gure ko izeneko funtzioa.
Baina gauza zehatz hau da, hain zuzen ere, Swift barneratzen.
Badira barietate funtzio mapa izeneko.
Ez da, mapa, funtzio bat, ez da bat murrizteko funtzioa,
eta han iragazkia eginkizun bat da, funtsean aplikatu funtzio
batean elementu bakar behin zerrenda horiek aldatzeko nolabait.
>> IKUSLEEN: transformatzen ari zarenetik formatu batera, datuak
funtzio baten bidez
DAN Armendariz: Eskuin.
Bai, beraz, funtzioa onartuz ari gara
da nolabait datuak eraldatzen.
Kasu honetan, bai ginen egiten squaring, edo hura cubing ari ginen,
edo benetan, egin genezake Gainean operazioa ez.
>> Baina dizute erakutsi ondoren, nola honetan da praktikan itxura.
Eta berriro ere, bat exekutatzen ari naiz denbora pixka. beraz, ez naiz
gorako guztiak joan ahal izango da iturburu-kodea hemen xehetasunez.
Baina zuk hori egin animatzen dut.
Egiten bidal dugu, ahalik eta azkarren posible eztabaida honen ondoren.
>> Baina begirada bat hartu baduzu honetan, suposatuko zenbakien zerrenda bat dugula,
zenbakiak sorta bat honetan Zenbakiak izeneko aldagai.
Ondoren, hau egin nahi dugu iragazkia zenbaki horiek eragiketa.
Beraz iragazkia garaiago Funtzio hori
array bat eta funtzio bat ere onartzen du.
Eta hori elementu guztietan array, funtzio hori betetzen du.
>> Funtzioak hori bada Egia, elementu hori mantentzen ditu.
Funtzio hori faltsua itzultzen bada, kanpoan botatzen elementua.
Eta gero zerrenda bat itzultzen du hori gero osatuta guztiak
duten iragazi elementu horiek.
>> Beraz, beste hitzetan, hau da Ideia bera da, kalifikazio-liburua.
Baliteke kalifikazio barietate daukagu izeneko balio honek zenbakiak sartu.
100, eta 70, eta izan daiteke 40, abar eta abar.
Zer iragazkia da hau ez da oharra hori azukre sintaktikoa dela
funtzio anonimoa da.
Hau esanez funtzio anonimoa da duten parametroak onartuz naiz
izango da, baldin bada 70 baino handiagoa da,
ondoren, hau egia itzuliko da, hori esan nahi elementua dela iragazkia honetan gordeko dira.
Beraz, izan gaitezen pixka bat honi buruz zehatzagoak.
Zenbakiak sorta hau badut eta osatzen 100, 70, eta 40an bertan,
Iragazki hau egin dut Eragiketa horietako bakoitzak.
Beraz, lehen 100 balioa hau da.
100 baino handiagoa edo berdina 70 to egia da, eta horrek
esan nahi du 100 hori ere mantendu array honen kopia berri honetan.
70 halaber pasatzen.
Baina 40, ez.
Beraz, zer da passingCount etxeratzen elementu 100 eta sorta da 70--
100, koma, 70.
Horiek izan ziren bi bakarrak horretan mantendu ziren elementuak.
Eta orain arrazoia azkar joan bidez dut Ordena goi-mota horiek asko
Gauzak dira, hau da, ohikoa delako Gauza hori Swift ikusiko duzu nahiko
Maiz, eragiketa batzuk burutzen ari da Funtzio sintaxia anonimo hau erabiliz.
>> Badira gauza batzuk ere egin.
Konmutadoreak benetan Swift ere indartsu daude, Esan besterik ero, ero indartsu atsegin dut.
Switch erabili ahal izango duzu, eta benetan aplikatu ahal izango dituzu horiek
eremuak, hau da, mota ero, eta ez fancy horrelako gauzak.
>> Baina azken minutu horietan, Aurrera albo batera utzi nahiko urrun nahi dut
eta nola adibide zehatz bat erakutsiko dizu dugu iOS app ere sor dezake Swift erabiliz.
Beraz, egiten ari zarenean honek, hartu beharko duzu
a Apple on dugun begiratu dokumentazioa, dute
tutoretzak benetan onak asko izan Zure lehen aplikazioa sortu da.
Eta zuk egin animatzen dut eramango dutelako
zehazki zer urrats guztietan zehar klikatu on iOS aplikazio bat sortzeko.
>> Baina hemen iOS app hau dugu.
Eta aplikazioa nahiko erraz bat benetan da.
Hau exekutatu bada, let me erakutsi duzu zer itxura.
Funtsean, guztiek egiten da Interneten JSON fitxategi batetik tira
Dudan zerbitzari batean gordetzen.
Eta JSON fitxategi hori ahalbidetzen duten irudiak definitzen
me ondoren, zikloa, bidez nire Aplikazio, nire web zerbitzari irudiak.
>> Hortaz, hona hemen getNextImage daukat.
Irudia kargatzen da Internetetik, eta, ondoren erakusten du pantailan.
>> Beraz, nahiko erraza da.
Baina helburua da hemen erakusten zuk gauzak nola konbinatu ahal izango dugu
CS50 Azken aste batzuk bertatik Benetako iOS aplikazio batean.
Beste era batera esanda, agian bat ere hori egin nahi izango duzu gauzak
iOS aplikazio bat izatea dela Internetetik datuak tira daiteke
eta informazio batzuk erakutsi erabiltzaileak.
Hau da erabat puntua iturburu kode hau hemen.
>> Beraz, ez da asko buruz esan behar da Benetako iOS garapena nola egin.
Ez dago ero sintaxia asko da ez ditugula nahiko oraindik ikusi
Klase bat bezala, zer klase bat benetan da.
Neurri handi batean, ezin dugu ahaztu Hori oraingoz.
>> Baina konturatu jasotako ditugun honek hainbat gauza barruan
hori dagoeneko dugu atsegin ikusi izen bereziak dituzte funtzioak.
Noiz eta horiek ematen dugu izen zuzena funtzioak
direla iOS espero da, hain zuzen ere hau sentitzen pixka bat magikoa.
Baina denean bat sortu IOS aplikazio, han
Funtzio izen zehatzak direla Telefonoaren berak deitzen
aplikazioa saiatuko kargatzen ari den bitartean Prozesu hori benetan sortu nahi
zure aplikazioa exekutatzen.
Beraz, berriro ere, ez dago gauza asko egin dudala hemen baino distira ordenan guretzat dute
zehazki, honi buruz hitz egiteko.
Baina zuk, agian, begiratu animatzen dut Beste iOS mintegia, baina, era berean, zenbait
tutoretzak online bertan egiten of deskribatzeko lana askoz hobeto
Informazio espezifikoa.
>> Baina gauza pare bat ikusi ahal izango dugu Kodea hemendik interesgarriak dira.
Iragarki dugula, adierazpenak dira.
Bide batez, oso garrantzitsua adierazpenak bada gauzarik
dela inguruan parentesi Espresio boolearra aukerakoa.
Baina kizkur giltza ez dira aukerako, ez du axola nola gutxi edo kode lerro asko
adierazpen bat izanez gero aukera izango duzu.
Ezin duzu eduki baten adierazpenak Swift ere giltza kizkur gabe.
>> Eta hau da, bai, silly moduko.
Baina ez dagoela arrazoi historiko da.
Honez ustezko gorde zeure burua from.
Hau atsegin adibidez, ezin duzu horren inguruan kizkur giltza kentzeko
adierazpen bada.
Horiek, hain zuzen ere beharrezkoak dira.
Beraz, animatu nahi dut honetan begirada bat hartu.
Baina, ez da inor gehiago eraiki nahi dut
Swift buruz erakusteko duten da berria Swift 2.0 aldean
Swift-ren bertsio zaharrago den, bertan honako hau da.
Ikus dezagun non hemen jarri nuen hura utzi?
>> Beraz, funtzio honetan deitzen fetchJSON, funtzio honetan
da JSON dela dio arduraduna URL bat da, eta besterik ez da gertatzen from artxibatzen
Nire CS50 IDE exekutatzen ari da.
Hasi besterik ez dut Apache, jarri nire JSON fitxategia ez,
eta ahal den orduan tira naiz erabiliz Internetetik datuak
Funtzio honek eta URL honetan, hau da, telefonoz emandako.
Honez batek emandako liburutegia erabiltzen duten duzunean
Zenbait iOS app garapena egiten ari zarenean.
>> Iragarki hemen ez dela ezohiko hau sintaktikoak eraikuntza guardia deitzen.
Eta benetan hori guztia da Swift egiaztatzeko modu bat da
Gauza batzuk izan izan duzu aurretik ezagutu
Funtzio gainerako jarraitzeko.
Beraz, izan dut erabiliz aukerakoa mota hau,
By URL nezakeen aurkitu dute NSURL Funtzio hau exekutatzen
eta URL bat sartu dela gordetzeko etengabe, eta, ondoren, egiaztatzen
URL hutsa izan zen edo ez ikusteko, delako zen aukerakoa mota bat itzuli du.
Eta zero balitz, orduan I litzateke inprimatu, akatsik eta itzuli.
>> Baina horren ordez, zer guardia aukera ematen dizu ez digu oso gauza da,
baina ziurtatu dela Egia esan, kasu horretan URL
behar bezala NSURL ezarri.
Eta hala nahi badu, orduan hau baino edukiontziak, eta hura
to jarraitzeko aukera emango dizu url izana behar bezala definitu.
Baina hala bada, hori URL ez da behar bezala definitu,
Funtzio honek errorea itzultzen edo beste ustekabeko gauza batzuk
benetan gertatzen, guardia eraikuntza hau aukera ematen digu error irteera horretara
eta itzultzeko berehala.
Bai?
>> IKUSLEEN: da mota bezala, ondoren, beste bat balitz?
DAN Armendariz: Mota da baten ondoren, ez bada, bai atsegin,
url hori da, gero izan ezik honen azpian dena definitu.
Guardia hau pasatzen da, ondoren, bada egingo datuekin benetan betetako
eta gainerako baliagarriak iturri zure funtzioa ere kodea.
Beraz zarela joan susmoa dut hasteko guardia hau ikusteko, baita.
Eta hori mindful.
>> Beraz, besterik gabe, beste pare bat begira Gauzak, eskubide hori hemen zer da,
uste duzu, besterik oinarritutako zer on aurretik buruz hitz egin genuen?
>> Ikusleak: Think egingo zerrendako exekutatu?
>> DAN Armendariz: Beraz hurbil.
Hau dela definituz ari garen funtzioa da.
Eta funtzio hori idatz ari gara funtzio hau hemen argumentu gisa.
>> Ikusleak: ez [INAUDIBLE] bada zero.
Beraz, zerrendako da, ezta?
>> DAN Armendariz: error ez da zero bada, beraz, is-- beraz korrituko dut.
Beno, ikus dezagun, ezin dut benetan eskubidea hemen korrituko da.
error hori izatearen froga baita funtzio anonimoa hau gainditu.
Hau funtzio anonimoa da.
Izenik ez dauka.
Baina onartzen dugu, hiru horiek argumentuak, datuak, erantzun, eta akats.
Eta hori da hutsunea itzultzeko, beraz, joan, Ez da ezer itzuli egingo da.
Eta honen edukiak dago funtzio hori.
Eta, ondoren, barruan sartzeko aukera izango dugu Argudio horiek bakoitzaren funtzioa.
>> Beraz zurrunbilo bat da Hizkuntzaren bira.
Baina espero dut honekin, zorionez hartu duzu
tutoretzak batzuk begirada bat iOS Swift garapen zehatzak,
go, batez ere baduzu nahi Apple sustatzailearen web orri batean
benetan onak asko izan dira tutoretzak to you get hasi.
Baina, zorionez, besterik hitz egiteko ordu honetan bera sintaxia buruz eman du
nahikoa duzu hori hasteko.
>> Iturburu hori guztia emango dizugu Mintegi, web gunean kodea
Ahalik eta, era berean, diapositibak eta azkarren beraz, horiek guztiak erreferentzia bat behar duzu.
Baina zure proiektuekin zorte ona.
Eta eskerrik asko guztioi asko etortzeagatik.
>> [Txaloak]