1 00:00:00,000 --> 00:00:11,270 2 00:00:11,270 --> 00:00:14,340 >> DANIEL Armendariz: Sveiki, visi, kviečiame iOS app plėtra 3 00:00:14,340 --> 00:00:15,020 su SWIFT. 4 00:00:15,020 --> 00:00:15,870 Aš Danas Armendariz. 5 00:00:15,870 --> 00:00:18,920 Aš precepter iš kompiuterio mokslas čia mokyklos 6 00:00:18,920 --> 00:00:21,200 Inžinerijos ir taikomųjų mokslų. 7 00:00:21,200 --> 00:00:24,310 Ir greitai iš tikrųjų yra natūra iš tikrųjų tvarkingas kalba. 8 00:00:24,310 --> 00:00:27,190 Ir aš turiu keletą pasiūlymų šiandien planus. 9 00:00:27,190 --> 00:00:31,430 Taigi per kitą valandą ar taip mes ketiname pažvelgti į iOS app plėtra pati 10 00:00:31,430 --> 00:00:36,640 naudojant Xcode ir iš tikrųjų sukurti kai labai paprastas, labai paprastas programas. 11 00:00:36,640 --> 00:00:40,070 Ir žiūri taip, kad jums iš tikrųjų imtis šiuos prašymus, 12 00:00:40,070 --> 00:00:42,887 ir kurti juos, ir iš tikrųjų įdėti juos į iOS įrenginį. 13 00:00:42,887 --> 00:00:44,970 Kai kurie iš dalykų, kad mes neketiname ieškoti 14 00:00:44,970 --> 00:00:47,540 bus įtraukti tokius dalykus kaip iš tikrųjų, atsižvelgiant paraišką 15 00:00:47,540 --> 00:00:48,940 ir padėkite jį ant App Store. 16 00:00:48,940 --> 00:00:52,930 Yra samouczków daug internete, kad padės jums su tuo jos aspektą. 17 00:00:52,930 --> 00:00:56,230 Bet taip pat, nes, kaip dalis CS50, gausite 18 00:00:56,230 --> 00:00:59,780 prisijungti prie "Apple" plėtrą komanda, CS50 app plėtros komanda. 19 00:00:59,780 --> 00:01:02,790 Jei to dar nepadarėte, kad dar jūs susijęs su CS50, 20 00:01:02,790 --> 00:01:04,810 Aš rekomenduoju, kad jūs daryti, nes, kad 21 00:01:04,810 --> 00:01:08,820 kaip jums pavyko sukurti kai kurie Xcode programos, 22 00:01:08,820 --> 00:01:11,890 atstatysiu juos, ir iš tikrųjų įdėti juos dėl kai kurių iš jūsų iOS prietaisų 23 00:01:11,890 --> 00:01:14,087 jei jūs iš tikrųjų turi fizinis IOS prietaisas. 24 00:01:14,087 --> 00:01:16,670 Jei jūs neturite fizinį iOS įrenginys, kuris yra daugiau nei gerai. 25 00:01:16,670 --> 00:01:19,810 Jūs iš tikrųjų galite kurti iOS. 26 00:01:19,810 --> 00:01:22,390 Ir Xcode turi simuliatorius, kuris leidžia jums 27 00:01:22,390 --> 00:01:26,570 pamatyti savo prašymą veiksmai jūsų kompiuteryje. 28 00:01:26,570 --> 00:01:30,440 Bet tai tarsi yra tvarkingas dalykas kad iš tikrųjų žaisti ir bendrauti 29 00:01:30,440 --> 00:01:34,235 su jūsų paraiška dėl faktinio prietaiso. 30 00:01:34,235 --> 00:01:37,360 Taigi ten reikalavimų pora iš tikrųjų visą šį vystymąsi. 31 00:01:37,360 --> 00:01:39,151 Vienas iš jų yra tai, kad Jūs turite turėti Mac. 32 00:01:39,151 --> 00:01:44,770 Ji turi būti įdiegta 10.9.4 arba naujesnė versija siekiant padaryti vystymą SWIFT. 33 00:01:44,770 --> 00:01:47,770 >> Galite naudoti anksčiau versija plėtoti 34 00:01:47,770 --> 00:01:50,810 objektyviais C iOS ir Mac. 35 00:01:50,810 --> 00:01:53,990 Bet aš rekomenduoju, ir apie daug pavyzdžių, kad mes pamatysime šiandien, 36 00:01:53,990 --> 00:01:55,700 naudoti 10.10 Yosemite. 37 00:01:55,700 --> 00:02:00,910 Taigi, jei turite dar tobulinama, tai geras pretekstas daryti. 38 00:02:00,910 --> 00:02:05,480 Dabar Xcode 6.1 yra naujausia versija integruota kūrimo aplinka 39 00:02:05,480 --> 00:02:08,979 kad "Apple" teikia nemokamai, kad Jūs galite atsisiųsti išjungti App Store. 40 00:02:08,979 --> 00:02:11,220 Ir aš rekomenduoju, kad jums taip pat paleisti naujausią versiją. 41 00:02:11,220 --> 00:02:14,700 >> Jei atsitiktų būti paleista anksčiau versija, Xcode 5 ir žemesnis tik 42 00:02:14,700 --> 00:02:16,741 tiesiog nepalaiko greitai apskritai. 43 00:02:16,741 --> 00:02:19,490 Bei beta versijos šešių, kurie buvo išleistas per vasarą, 44 00:02:19,490 --> 00:02:21,770 padaryti paremti greitai, bet ten buvo milžiniškas skaičius 45 00:02:21,770 --> 00:02:25,220 pokyčių kalba, pakankamai kad kodas, kad esate 46 00:02:25,220 --> 00:02:28,320 ketina ieškoti ir kad jūs gali rasti internete 47 00:02:28,320 --> 00:02:33,294 nebus iš tikrųjų sudaryti tinkamai Šiose prieš versijų Xcode. 48 00:02:33,294 --> 00:02:35,460 Taigi dar kartą, jei jūs dar ne turėti programuotojo sąskaitą, 49 00:02:35,460 --> 00:02:38,560 Aš rekomenduoju jums eiti developer.apple.com. 50 00:02:38,560 --> 00:02:42,240 Prašome užsiregistruoti, sukurti kūrėjas sąskaitą, ir prisijungti prie CS50 App plėtros komanda. 51 00:02:42,240 --> 00:02:45,530 Tai suteiks jums galimybę sudaryti savo programas 52 00:02:45,530 --> 00:02:47,840 ir įdėti juos į savo prietaisą. 53 00:02:47,840 --> 00:02:49,222 Gerai, kad galime pradėti. 54 00:02:49,222 --> 00:02:50,930 Pats pirmas dalykas, mes ketiname padaryti, tai 55 00:02:50,930 --> 00:02:55,140 kad iš tikrųjų sukurti labai paprastas projektas Xcode 56 00:02:55,140 --> 00:02:59,530 kuris leis jums pateikti paraišką. 57 00:02:59,530 --> 00:03:03,170 >> Taigi, jei jūs dar neturite Xcode atvira, eiti į priekį ir jį atidaryti 58 00:03:03,170 --> 00:03:04,270 ir sukurti naują projektą. 59 00:03:04,270 --> 00:03:06,570 Ypatingą ekrano užsklanda atvers ir duos jums 60 00:03:06,570 --> 00:03:08,800 keletas variantų, apie ką tai yra, kad jūs norite daryti. 61 00:03:08,800 --> 00:03:12,170 Tiesiog pasakyti, kad norite sukurti Naujas projektas, nauja paraiška. 62 00:03:12,170 --> 00:03:15,650 Šiame lange bus pop-up, darant prielaidą, kad jūs naudojate Xcode 6.1. 63 00:03:15,650 --> 00:03:17,650 Dabar, ir už trukmė šiame seminare, 64 00:03:17,650 --> 00:03:19,990 mes ketiname naudoti Single Peržiūrėti prašymai, tiesiog 65 00:03:19,990 --> 00:03:22,590 rūšiuoti pagrindinio taikymo gauti jūsų kojų šlapias. 66 00:03:22,590 --> 00:03:25,200 Ir jūs galite išsišakoti dėl savo iš ten. 67 00:03:25,200 --> 00:03:27,660 >> Spustelėkite Next šiuo klausimu. 68 00:03:27,660 --> 00:03:30,796 Dabar čia nėra pora dalykų kad jūs galbūt norėsite atvykti. 69 00:03:30,796 --> 00:03:32,670 Gaminio pavadinimas yra Pavadinimas savo projektą. 70 00:03:32,670 --> 00:03:34,859 Šiuo atveju, aš tiesiog ketina jį vadiname Seminar1 71 00:03:34,859 --> 00:03:36,150 nes tai pirmasis mūsų pavyzdys. 72 00:03:36,150 --> 00:03:38,290 Organizacijos pavadinimas, į šiuo atveju yra tik mano vardas. 73 00:03:38,290 --> 00:03:41,760 Jūs galite, žinoma, jį pakeisti savo paties vardu, arba CS50. 74 00:03:41,760 --> 00:03:46,160 Organizacija identifikatorius, jei jūs atsitiktų turėti interneto svetainę tiesiog 75 00:03:46,160 --> 00:03:49,940 domeno vardas pakeisti, com.yourname. 76 00:03:49,940 --> 00:03:54,200 ir tada produkto pavadinimas turėtų atsirasti automatiškai 77 00:03:54,200 --> 00:03:55,820 po to kaip ryšulio identifikatorius. 78 00:03:55,820 --> 00:03:59,200 >> Akivaizdu kalba, kad mes ketinate naudoti šiandien yra greita. 79 00:03:59,200 --> 00:04:02,590 Jūs galite, žinoma, naudoti Tikslo C už tai, bet šiandien bus greitai. 80 00:04:02,590 --> 00:04:04,920 Ir mes dabar pasakyti universalūs įrenginiai, todėl 81 00:04:04,920 --> 00:04:06,900 kad jis veikia tiek iPad ir iPhone. 82 00:04:06,900 --> 00:04:10,040 Ir mes palikti branduolį duomenys nekontroliuojamai saugoti 83 00:04:10,040 --> 00:04:12,830 Projektas palyginti paprasta laikas viduryje. 84 00:04:12,830 --> 00:04:14,430 Taigi eikime į priekį ir spustelėkite Pirmyn. 85 00:04:14,430 --> 00:04:16,471 Ir tai vyksta paklausti manęs kur aš noriu ją išsaugoti. 86 00:04:16,471 --> 00:04:19,250 Aš tiesiog išsaugokite jį savo kompiuteryje dabar. 87 00:04:19,250 --> 00:04:22,267 >> Gerai, kad dabar tai kas bus atsitikti, kai jūs iš tikrųjų atvirą Xcode. 88 00:04:22,267 --> 00:04:24,100 Ir pastebėti, kad Pats pirmas dalykas, jūs matote 89 00:04:24,100 --> 00:04:28,770 tai šauktukas, kad sako "ne" pasirašymas tapatybė nustatyta. 90 00:04:28,770 --> 00:04:31,520 Aš tyčia tai padarė ant mano kompiuterio ir aš 91 00:04:31,520 --> 00:04:34,220 tikiuosi, kad aš ruošiuosi galės faktiškai nustatyti jį, 92 00:04:34,220 --> 00:04:37,860 nes aš noriu jums pamatyti, kaip tai tikrai bus dirbti savo mašinoje. 93 00:04:37,860 --> 00:04:40,400 >> Eiti į priekį ir spustelėkite fix klausimą. 94 00:04:40,400 --> 00:04:45,400 Jis lieps jei turite esamų obuolių kūrėjas sąskaitą. 95 00:04:45,400 --> 00:04:48,330 Tai kur prisijungti CS50 App plėtros komanda 96 00:04:48,330 --> 00:04:51,240 Svarbu, kad jūs ne tik app sąskaitą, 97 00:04:51,240 --> 00:04:53,690 bet jūs taip pat turite galimybė pasirašyti programas 98 00:04:53,690 --> 00:04:56,420 ir įdėti juos į savo iOS prietaiso. 99 00:04:56,420 --> 00:04:58,957 Tai not-- spustelėdami Fix problema nebūtina 100 00:04:58,957 --> 00:05:01,040 jei esate tik ketina kurti ir plėtoti vietos, 101 00:05:01,040 --> 00:05:03,520 visiškai atitinka iOS simuliatorius. 102 00:05:03,520 --> 00:05:05,820 >> Bet dabar aš ruošiuosi parengti ir pateikti juos 103 00:05:05,820 --> 00:05:08,160 mano iPad, kuri bus galėtų transliuoti, taip pat. 104 00:05:08,160 --> 00:05:10,770 Taigi aš noriu, kad iš tikrųjų pridėti. 105 00:05:10,770 --> 00:05:13,670 Ir tai vyksta paklausti man mano obuolių ID. 106 00:05:13,670 --> 00:05:15,700 Taigi tai bus tai. 107 00:05:15,700 --> 00:05:18,940 Ir aš turiu paimti My slaptažodis, kuris yra daugiau nei čia. 108 00:05:18,940 --> 00:05:27,760 Taigi man tik vieną sekundę, konstatuodama, kad ir kopijuoti, kad ir įklijuokite jį čia. 109 00:05:27,760 --> 00:05:28,580 >> Spustelėkite Pridėti. 110 00:05:28,580 --> 00:05:31,095 Tai vyksta paklausti manęs kuri komanda Noriu prisijungti. 111 00:05:31,095 --> 00:05:33,240 Aš ruošiuosi daryti mokyklą inžinerija. 112 00:05:33,240 --> 00:05:35,680 Spauskite Prisijunkite. 113 00:05:35,680 --> 00:05:37,780 Oi, tai negerai vienas. 114 00:05:37,780 --> 00:05:40,730 Darom šį vieną. 115 00:05:40,730 --> 00:05:42,060 Tikimės, kad vienas veiks. 116 00:05:42,060 --> 00:05:44,220 Tai vienas vis dar neveikia. 117 00:05:44,220 --> 00:05:46,610 Mes bėga gerų čia. 118 00:05:46,610 --> 00:05:48,260 Gerai, tai vienas turi dirbti. 119 00:05:48,260 --> 00:05:50,816 Dabar uždaryti, kad. 120 00:05:50,816 --> 00:05:54,450 Dabar darykime mokyklą inžinerijos, spustelėkite pasirinkti. 121 00:05:54,450 --> 00:06:00,190 >> Ir dabar tikiuosi po pora sekundžių jums can-- Gerai, 122 00:06:00,190 --> 00:06:02,550 Aš atšaukti ir prašymas. 123 00:06:02,550 --> 00:06:05,410 O vyras, tai vyksta ne dirbti. 124 00:06:05,410 --> 00:06:08,890 Gerai, bandysiu kitą. 125 00:06:08,890 --> 00:06:11,167 Leiskite tai padaryti čia. 126 00:06:11,167 --> 00:06:17,020 127 00:06:17,020 --> 00:06:19,310 Gyvi demo nesugeba mane. 128 00:06:19,310 --> 00:06:22,540 Mes gali tekti grįžti prie ką tik statybos visiškai lokaliai, 129 00:06:22,540 --> 00:06:25,050 tačiau, kad būtų OK, šiuo atveju. 130 00:06:25,050 --> 00:06:28,560 >> Taigi čia, o iš tikrųjų tai yra darbo, ką mes ketiname daryti, yra tik 131 00:06:28,560 --> 00:06:31,190 sukurti labai paprasta Hello World taikymas. 132 00:06:31,190 --> 00:06:32,340 Taigi tai yra Xcode. 133 00:06:32,340 --> 00:06:37,300 Ir jei nemačiau dar, tai gali būti šiek tiek bauginanti ne pirmas. 134 00:06:37,300 --> 00:06:41,430 Yra daug stiklų daug, ten daug doodads įvairiose srityse. 135 00:06:41,430 --> 00:06:44,300 Bet tik suprasti, kad ten tikrai keli pagrindiniai komponentai 136 00:06:44,300 --> 00:06:46,580 šios programos plėtojimo aplinkoje. 137 00:06:46,580 --> 00:06:51,090 Tolimajame kairiajame kampe yra visi failai kurie yra taikomi į savo programą 138 00:06:51,090 --> 00:06:52,997 arba savo konkrečiam projektui. 139 00:06:52,997 --> 00:06:55,080 Mes bus Naršyti aplink dėl kai kurių iš jų, ir mes 140 00:06:55,080 --> 00:06:57,660 atkreipti dėmesį į labiausiai svarbiausi per tam tikrą laiką. 141 00:06:57,660 --> 00:06:59,650 Dėl dešinėje, mes turėti atributų rinkinį. 142 00:06:59,650 --> 00:07:02,920 Ir visi iš šių požymių, yra Yra įvairių stiklai skirti atributų. 143 00:07:02,920 --> 00:07:06,770 Stiklo plokštės bus pakeisti, priklausomai nuo Pagrindinio turinio konteksto, kuris 144 00:07:06,770 --> 00:07:08,290 atsitinka būti per vidurį. 145 00:07:08,290 --> 00:07:11,740 Dabar vidurys iš tiesų gali parodyti Jūs dalykų įvairovė, pavyzdžiui, 146 00:07:11,740 --> 00:07:13,290 Pats savo kodą. 147 00:07:13,290 --> 00:07:17,070 Arba jūs iš tiesų gali have-- kai Paspaudus ant siužetinės linijos, kurios 148 00:07:17,070 --> 00:07:21,270 yra, beje, tiesiog grafinė atstovavimas jūsų naudotojo 149 00:07:21,270 --> 00:07:25,350 sąsaja jūsų application-- tada atributai Polangis 150 00:07:25,350 --> 00:07:27,334 nuo labai toli į dešinę tikrai bus pakeisti. 151 00:07:27,334 --> 00:07:29,750 Dabar yra apie kitas pora dalykų, kad aš noriu atkreipti. 152 00:07:29,750 --> 00:07:33,360 Jūs galite rūšiuoti tyrinėti aplink į į savo aplinką. 153 00:07:33,360 --> 00:07:35,730 Tačiau vienas iš dalykų, kad buvo labai naudinga 154 00:07:35,730 --> 00:07:38,470 yra šį mygtuką čia, viršutiniame dešiniajame lango. 155 00:07:38,470 --> 00:07:41,230 Yra šis mygtukas, kad atrodo kaip ant kiek 156 00:07:41,230 --> 00:07:46,090 palikti ji punktas po du apskritimai ir rūšiavimas 157 00:07:46,090 --> 00:07:49,540 iš dviejų strėlių nukreipta vienas nuo kito. 158 00:07:49,540 --> 00:07:52,640 Jei perjungti standartinį redaktorių, kuris 159 00:07:52,640 --> 00:07:55,560 yra toli į kairę vienas, vienas kad pasirinkta pagal nutylėjimą, 160 00:07:55,560 --> 00:08:01,040 ir du apskritimai persidengiančių tarpusavyje, ką jūs iš tikrųjų gauti 161 00:08:01,040 --> 00:08:02,210 yra dvigubai blokinis. 162 00:08:02,210 --> 00:08:04,240 >> Ir tai yra iš tikrųjų bus naudinga mums 163 00:08:04,240 --> 00:08:07,330 kai mes turime susieti elementus į į kodą UI. 164 00:08:07,330 --> 00:08:09,330 Ir mes kalbame daugiau apie kad tik akimirką. 165 00:08:09,330 --> 00:08:12,050 Bet suprantu, kad jei jūs gaunate dar daugiau stiklai, pavyzdžiui, tai, 166 00:08:12,050 --> 00:08:15,830 galite supaprastinti savo požiūrį tik šiek tiek paspaudę atgal 167 00:08:15,830 --> 00:08:20,680 Jūsų vienu redaktoriumi. 168 00:08:20,680 --> 00:08:21,580 Kol kas viskas gerai. 169 00:08:21,580 --> 00:08:24,560 Taigi, iš esmės, mes turime įtraukti kodą kairysis, atributus dešinėje, 170 00:08:24,560 --> 00:08:28,260 ir kokia ji yra, mes dirbame čia pačiame centre. 171 00:08:28,260 --> 00:08:30,390 >> Taigi čia aš spustelėjote pagrindiniame siužetinės linijos. 172 00:08:30,390 --> 00:08:33,350 Ir siužetinės linijos, vėl yra Xcode būdas 173 00:08:33,350 --> 00:08:38,110 kad jūs iš tikrųjų galite sukurti savo vartotoją sąsaja, naudojant tiesiog vilkite ir upuść 174 00:08:38,110 --> 00:08:39,130 būdai. 175 00:08:39,130 --> 00:08:41,190 Ir dėl to mūsų labai Pirmasis prašymas tai 176 00:08:41,190 --> 00:08:42,720 Būtent tai mes ketiname daryti. 177 00:08:42,720 --> 00:08:45,950 Mes ketiname eiti į labai toli apačioje dešinėje dalis 178 00:08:45,950 --> 00:08:49,900 ekrano, kuriame yra Vartotojo elementų įvairovė 179 00:08:49,900 --> 00:08:53,270 kad jūs galite tada spustelėkite ir vilkite sukurti savo vartotojo sąsają. 180 00:08:53,270 --> 00:08:55,550 >> Dabar visi šie elementai yra vadinami svečiai 181 00:08:55,550 --> 00:08:57,370 nes jie pateikti tam tikrą nuomonę rūšiuoti. 182 00:08:57,370 --> 00:09:00,190 Yra vaizdas vaizde už Pavyzdžiui, iš tikrųjų rodo, 183 00:09:00,190 --> 00:09:01,740 nuo vartotojo sąsajos vaizdas. 184 00:09:01,740 --> 00:09:04,310 Yra stalo vaizdas į iš tikrųjų rodo, staliuką. 185 00:09:04,310 --> 00:09:05,190 Taigi, toliau ir taip toliau. 186 00:09:05,190 --> 00:09:08,250 Yra įvairių peržiūros, kad jūs galite pasirinkti čia. 187 00:09:08,250 --> 00:09:11,100 Taigi tik dabar mes ketiname ieškoti etiketėje. 188 00:09:11,100 --> 00:09:13,550 Jūs galite tiesiog pereiti per visi sąrašus, kuriuos ten. 189 00:09:13,550 --> 00:09:15,460 Bet ten paieška baras pačioje apačioje 190 00:09:15,460 --> 00:09:19,460 kad lengviau nustatyti specialūs svečiai, kad jūs iš tikrųjų 191 00:09:19,460 --> 00:09:22,020 norite nuvilkti į savo vartotojo sąsają. 192 00:09:22,020 --> 00:09:23,560 >> Surasta mano etiketę. 193 00:09:23,560 --> 00:09:28,430 Aš ruošiuosi vilkite jį čia tiesiogiai ant mano imties taikymo. 194 00:09:28,430 --> 00:09:30,130 Teisė ten viduriniosios gerai atrodo. 195 00:09:30,130 --> 00:09:33,180 Ir aš ruošiuosi rašyti "Hello World!" 196 00:09:33,180 --> 00:09:33,810 Paspauskite Enter. 197 00:09:33,810 --> 00:09:34,877 Dabar aš turiu etiketę. 198 00:09:34,877 --> 00:09:36,960 Jis neturi atrodyti tai centre gana gerai. 199 00:09:36,960 --> 00:09:38,500 Taigi aš galiu pabandyti iš naujo centre ją. 200 00:09:38,500 --> 00:09:42,100 Laimei, jis siūlo šias kreiptuvus, kad viskas daug lengviau. 201 00:09:42,100 --> 00:09:44,130 Aš ruošiuosi pabandyti surinkti ją. 202 00:09:44,130 --> 00:09:46,570 Tikimės, kad tai bus iš tikrųjų čia dirbti. 203 00:09:46,570 --> 00:09:52,870 O jei ne, vos akimirką ji iš tikrųjų atrodo mano iPad. 204 00:09:52,870 --> 00:09:54,360 Tai čia. 205 00:09:54,360 --> 00:09:55,060 Ten ji yra. 206 00:09:55,060 --> 00:09:56,590 >> Gerai, kad viskas. 207 00:09:56,590 --> 00:09:57,160 Mes padaryti. 208 00:09:57,160 --> 00:09:58,868 Sukūrėme mūsų labai pirmoji paraiška. 209 00:09:58,868 --> 00:10:01,330 Dabar žinoma, tai nėra nieko daryti. 210 00:10:01,330 --> 00:10:02,280 Tai tiesiog etiketė. 211 00:10:02,280 --> 00:10:07,350 Nėra tarp ryšys ir vartotojo sąsaja kodas. 212 00:10:07,350 --> 00:10:10,130 Taigi, jei mes iš tikrųjų norėjo sukurti šį ryšį, 213 00:10:10,130 --> 00:10:14,790 jei mes iš tikrųjų norėjo turėti tam tikros rūšies bendravimo tarp elementų 214 00:10:14,790 --> 00:10:17,540 kad egzistuoja ekranas ir kodas, kuris yra 215 00:10:17,540 --> 00:10:19,810 leidžia kontroliuoti tie elementai, tada 216 00:10:19,810 --> 00:10:23,570 mes iš tikrųjų reikia pažvelgti į patį kodą. 217 00:10:23,570 --> 00:10:27,000 >> Taigi tai yra tai, kas vadinama ViewController.swift. 218 00:10:27,000 --> 00:10:30,080 Ir, ypač savo pirmuosius keletą programų, 219 00:10:30,080 --> 00:10:33,120 tai bus tarsi birių kodą, Jums enter-- 220 00:10:33,120 --> 00:10:35,980 bus šiame dokumente čia. 221 00:10:35,980 --> 00:10:38,390 Yra daug dalykų kad tai čia iki šiol, tiesa? 222 00:10:38,390 --> 00:10:42,660 Yra importo UI rinkinys klasė, nepaisyti, [? funk,?] visi šie įvairių dalykų. 223 00:10:42,660 --> 00:10:45,820 Ir tai ne visai aišku, kas ji yra, kad visa tai reiškia. 224 00:10:45,820 --> 00:10:48,570 Taigi leiskite žengti žingsnį atgal toli nuo Xcode už trupučiu 225 00:10:48,570 --> 00:10:52,420 ir pažvelgti į pačios kalbos, greitai. 226 00:10:52,420 --> 00:10:56,370 >> Taigi su greitai, jis buvo dizainas ir kūrimas 227 00:10:56,370 --> 00:10:58,645 Apple apie keturias metų iki mano supratimu. 228 00:10:58,645 --> 00:11:01,270 Ir ten funkcijų pora apie tai, kad yra tikrai tvarkingas. 229 00:11:01,270 --> 00:11:03,910 Visų pirma, jis parengė kalba, tik norėčiau C. 230 00:11:03,910 --> 00:11:06,120 Taigi pirmiausia turite kaupia ir tada paleisti jį 231 00:11:06,120 --> 00:11:09,580 Prieš jūs iš tikrųjų galite vykdyti kodą, rezultatus. 232 00:11:09,580 --> 00:11:14,250 Bet yra, skirtingai nuo C, interaktyvus greitai, kad jūs iš tikrųjų galite paleisti 233 00:11:14,250 --> 00:11:16,680 ir įveskite savavališkų komandas į. 234 00:11:16,680 --> 00:11:20,280 Ir labai panašiai kaip "JavaScript" konsolė, kurie jums gali būti susipažinę su dabar 235 00:11:20,280 --> 00:11:24,506 ji iš tikrųjų bus įvertinti tie, komandos ir suteikti jums išvestį. 236 00:11:24,506 --> 00:11:26,380 Ir jie net imtis , kad į kitą lygį 237 00:11:26,380 --> 00:11:29,100 ir jie jau sukūrė kažką vadinami aikštelių Xcode 238 00:11:29,100 --> 00:11:31,720 kad leidžia jums vizualiai dirbti su kodu. 239 00:11:31,720 --> 00:11:34,910 Ir mes iš tikrųjų matyti keletą pavyzdžių to vos truputį. 240 00:11:34,910 --> 00:11:41,680 Jis grindžiamas C. C grindžiamas ji, nes visi iš sudarytojų 241 00:11:41,680 --> 00:11:46,820 sukurti kodą iš C sukurti objekto kodą iš jo. 242 00:11:46,820 --> 00:11:49,240 Bet tai tikrai akcijos palyginti mažai sintaksė. 243 00:11:49,240 --> 00:11:50,721 Jis atrodys gana skirtingi. 244 00:11:50,721 --> 00:11:51,970 Ten bus keletas panašumų. 245 00:11:51,970 --> 00:11:54,140 Tačiau ketiname būti nemažai skirtumų 246 00:11:54,140 --> 00:11:57,200 lyginant su, tarkim, "JavaScript", arba PHP. 247 00:11:57,200 --> 00:11:59,070 Ir mes atkreipti jų iš vos akimirką. 248 00:11:59,070 --> 00:12:01,420 >> Dabar vienas iš didžiausių dalykų, apie greiti, kad gražus 249 00:12:01,420 --> 00:12:05,650 yra tai, kad, ypač palyginti C, tai reiškė, kad būtų saugūs. 250 00:12:05,650 --> 00:12:08,100 Viskas jame yra skirtas būti labai stipriai įvedėte. 251 00:12:08,100 --> 00:12:10,780 Iš tiesų tai beveik erzina pirmiausia, kai jūs pirmą kartą 252 00:12:10,780 --> 00:12:15,610 pradėti dirbti su SWIFT, tik kaip kiek ji įgyvendina tipų visur. 253 00:12:15,610 --> 00:12:17,860 Viskas, kas yra eilutė turi išlikti eilutė. 254 00:12:17,860 --> 00:12:22,100 Tai labai sunku rūšiuoti konvertuoti jis arba priversti jį į kitą formą. 255 00:12:22,100 --> 00:12:23,800 >> Ir vėl, mes parodysime pavyzdžių. 256 00:12:23,800 --> 00:12:26,830 Bet galiausiai suprantu, kad Tai reiškia, kad apsaugotų jus, 257 00:12:26,830 --> 00:12:32,010 ir jus aš tai savo kodą, nuo kritimo kai siaubingas būdu, kai 258 00:12:32,010 --> 00:12:34,330 jūs turite šiek tiek nesutampa tipo rūšiuoti. 259 00:12:34,330 --> 00:12:36,040 Ir vėl su juo dirbti. 260 00:12:36,040 --> 00:12:40,210 Nes ji bus nelinksma pirmoji kaip jūs bandote išsiaiškinti, kodėl būtent 261 00:12:40,210 --> 00:12:43,070 jūs gaunate tai neįprasta klaidos susijusios su tipus. 262 00:12:43,070 --> 00:12:45,350 Bet tai bus verta pabaigos. 263 00:12:45,350 --> 00:12:47,267 >> Ji kovoti su automatiniu atminties valdymas, 264 00:12:47,267 --> 00:12:49,100 taip nebėra padaryti jums turi spręsti dalykų 265 00:12:49,100 --> 00:12:51,400 kaip malloc ir nemokama ir visiems Šių dalykų rūšių. 266 00:12:51,400 --> 00:12:53,066 Ir jis taip pat skirtas bendrais. 267 00:12:53,066 --> 00:12:58,360 Taigi, nors mes galime naudoti Xcode į sukurti iOS Apps "ir" Mac programas, 268 00:12:58,360 --> 00:13:00,380 mes taip pat galite naudoti ją kaip skriptų kalba. 269 00:13:00,380 --> 00:13:03,660 Ir taip mes galime jį naudoti rūšiuoti iš vietoj PHP arba vietoj 270 00:13:03,660 --> 00:13:07,800 Python faktiškai greitai apdoroti ir procesas 271 00:13:07,800 --> 00:13:09,800 Kai kurie duomenys, kad mes turime mūsų kompiuterio. 272 00:13:09,800 --> 00:13:13,290 >> Jis turi platų šiuolaikinės funkcijos, Papildomi reikmenys, Wzruszalność, 273 00:13:13,290 --> 00:13:17,900 generiniai vaistai, uždarymo ir tai daug kas jums gali arba negali pripažinti. 274 00:13:17,900 --> 00:13:22,810 Ir tai tiesiog tarsi gaila dalis kalba, kad kai kurie iš šių 275 00:13:22,810 --> 00:13:26,700 rūšiuoti futuristinis, modernių elementų, yra sumontuoti elementai 276 00:13:26,700 --> 00:13:34,520 taip giliai įsišaknijęs, kad aš iš tikrųjų bus turi išmokyti jus CS50.5 truputį. 277 00:13:34,520 --> 00:13:37,305 >> Mes turime išmokti truputį daugiau apie kai kurias funkcijas, kad 278 00:13:37,305 --> 00:13:40,180 tikrai suprasti, kas vyksta toliau ir taip, kad jūs galite pažvelgti kodas 279 00:13:40,180 --> 00:13:42,450 o ne jaustis visiškai prarastas. 280 00:13:42,450 --> 00:13:44,820 Ir pamatysite, ką aš turiu galvoje Iki, kad vos per minutę. 281 00:13:44,820 --> 00:13:47,830 Gerai, kad let's-- pakankamai tai Rūšiuoti teorinių dalykų. 282 00:13:47,830 --> 00:13:52,450 Leiskite tikrųjų pažvelgti mūsų Pats pirmas greitas programa. 283 00:13:52,450 --> 00:13:53,590 Tai viena linija kodą. 284 00:13:53,590 --> 00:13:57,690 14 eilutė čia, ją sako spausdinimo L N labas CS50. 285 00:13:57,690 --> 00:14:01,160 >> Taigi ten keletą dalykų, kad yra labai skiriasi apie tai palyginti 286 00:14:01,160 --> 00:14:04,140 dalykų, kad jums gali būti naudojama iš C, pavyzdžiui. 287 00:14:04,140 --> 00:14:08,390 Vienas iš jų yra tai, kad nėra intmain, nėra įtraukti skyrių, 288 00:14:08,390 --> 00:14:10,790 ten nė vienas iš šių papildomų dalykų. 289 00:14:10,790 --> 00:14:13,790 Apima, kaip standartas I / O, pavyzdžiui, bibliotekų 290 00:14:13,790 --> 00:14:16,580 kad iš tikrųjų teikia standartiniai bruožai kalba, 291 00:14:16,580 --> 00:14:19,180 automatiškai įtraukti kaip dalis Swift standartinės bibliotekos 292 00:14:19,180 --> 00:14:20,680 ir kad automatiškai importuojami. 293 00:14:20,680 --> 00:14:23,740 Jūs neturite daryti kad importas rankiniu būdu. 294 00:14:23,740 --> 00:14:27,360 >> Intmain neegzistuoja, nes Pagrindinis įvažiavimo kodas 295 00:14:27,360 --> 00:14:29,470 tikrai ne pradedant nuo kodu. 296 00:14:29,470 --> 00:14:32,000 Taigi bet kodas, kad jūs turite pradedant nuo pradžios 297 00:14:32,000 --> 00:14:34,940 iš tikrųjų bus įvykdytas pradžioje. 298 00:14:34,940 --> 00:14:36,520 Taigi tai tikrai labai supaprastina. 299 00:14:36,520 --> 00:14:38,470 Atkreipkite dėmesį, taip pat, kad nėra kabliataškis. 300 00:14:38,470 --> 00:14:41,040 Nėra jokių šioje kalba kabliataškiai. 301 00:14:41,040 --> 00:14:43,261 Jūs įdėti pareiškimą individualiai linija 302 00:14:43,261 --> 00:14:45,510 ir tada kitą eilutę atstovauja kitą pareiškimą. 303 00:14:45,510 --> 00:14:47,420 Jei norite įdėti mulitiple pareiškimai internete, 304 00:14:47,420 --> 00:14:49,086 tada jūs turite jį atskirti kabliataškiais. 305 00:14:49,086 --> 00:14:50,940 Tačiau didžioji dalis, už gerą stilių, mes 306 00:14:50,940 --> 00:14:56,530 niekada pamatyti Kabliataškis už atskyrimo ataskaitų tikslais 307 00:14:56,530 --> 00:14:58,420 SWIFT. 308 00:14:58,420 --> 00:14:59,820 Taigi, kaip tai iš tikrųjų veikia? 309 00:14:59,820 --> 00:15:04,080 Na labai panašiai kaip C mes iš tikrųjų turi sudaryti tai. 310 00:15:04,080 --> 00:15:10,640 Ir taip mes galime padaryti, kad naudojant greitas c ir tada 1.swift. 311 00:15:10,640 --> 00:15:13,850 Ir tada, po pora min tai kompiliuoti 312 00:15:13,850 --> 00:15:16,340 ir tada aš galiu paleisti vieną elementą. 313 00:15:16,340 --> 00:15:19,691 Ir nei ji tiesiog pasakyti "Labas CS50". 314 00:15:19,691 --> 00:15:20,690 Nuostabus, todėl mes einame. 315 00:15:20,690 --> 00:15:22,273 Yra mūsų pirmasis hello world programa. 316 00:15:22,273 --> 00:15:24,790 Pereikime prie numeris du. 317 00:15:24,790 --> 00:15:30,450 >> Dabar this-- tai pasikeitė šiek tiek, nes tuo tarpu paprastai jums 318 00:15:30,450 --> 00:15:34,720 do-- iš tiesų visada turite su kaupia greitai prašymą prieš jus 319 00:15:34,720 --> 00:15:37,180 iš tikrųjų paleisti it-- vieną iš puikių savybių 320 00:15:37,180 --> 00:15:40,230 kad aš užsiminiau anksčiau buvo, kad greitai gali būti iš tiesų naudojami rūšiuoti 321 00:15:40,230 --> 00:15:43,390 iš pseudo-interpretacinis būsenos, Iš tiesų, kaip vertėją. 322 00:15:43,390 --> 00:15:46,690 Bet ką tai padaryti, tai yra yra, iš tiesų, greitai taikymas 323 00:15:46,690 --> 00:15:47,520 kad jūs galite paleisti. 324 00:15:47,520 --> 00:15:51,050 >> Taigi, pavyzdžiui, jei jūs tiesiog įrašykite greitai čia kas nutiks 325 00:15:51,050 --> 00:15:52,330 yra tai, kad jums bus gauti eilutę. 326 00:15:52,330 --> 00:15:59,040 Ir jūs galite įvesti savo SWIFT kodas, spausdinti labas, ir paleisti jį. 327 00:15:59,040 --> 00:16:01,867 Ir tai tikrai bus print-- gerai, tai nebuvo spausdinti šiuo atveju 328 00:16:01,867 --> 00:16:04,450 nes jis atspausdintas centre iš, kurių nesimato čia. 329 00:16:04,450 --> 00:16:06,660 Bet tai iš tikrųjų sugeba veikti. 330 00:16:06,660 --> 00:16:09,580 Ir taip, šiuo atveju, aš tiesiog ketinate naudoti kaip scenarijaus. 331 00:16:09,580 --> 00:16:11,259 Ir aš iš tikrųjų gali paleisti šį kodą ten. 332 00:16:11,259 --> 00:16:13,800 Taigi taip, kad aš iš tikrųjų paleisti ji bus šiek tiek kitoks, 333 00:16:13,800 --> 00:16:15,710 bet pamatysite, kad vos akimirką. 334 00:16:15,710 --> 00:16:18,890 Dabar, šiuo atveju, ką mes ketiname reikia padaryti, tai pirmiausia apibrėžti kintamąjį. 335 00:16:18,890 --> 00:16:22,160 Taigi, tai, kaip mes apibrėžiame SWIFT kintamasis, 336 00:16:22,160 --> 00:16:25,900 yra mes naudojame tegul raktažodį, po by kintamojo pavadinimu, 337 00:16:25,900 --> 00:16:29,280 ir tada mes teikiame kai Inicijuojama duomenis pasirinktinai. 338 00:16:29,280 --> 00:16:34,660 Taigi šiuo atveju mes apibrėžti pastovus vadinamas vardas 339 00:16:34,660 --> 00:16:37,775 ir mes ketiname naudoti, kad Mūsų spausdinimo linijos produkcija 340 00:16:37,775 --> 00:16:39,590 pačioje apačioje, hello vardu. 341 00:16:39,590 --> 00:16:43,260 >> Dabar pastebėti, kad, o ne naudojant "% s", mes galime viską, kad šis pavadinimas 342 00:16:43,260 --> 00:16:49,960 kintamasis / (), ir būtų galima Jungiant į šią turinį 343 00:16:49,960 --> 00:16:51,790 styginių į šią eilutę. 344 00:16:51,790 --> 00:16:56,510 Dabar, skirtingai nei C eilutė tikrasis nekilnojamojo tipas SWIFT. 345 00:16:56,510 --> 00:16:59,240 Ir taip jis sėdi šalia ints ir kartu 346 00:16:59,240 --> 00:17:02,220 dvigubinamas labai lengvai ir, žinoma, palyginti 347 00:17:02,220 --> 00:17:05,450 į kai kita kalbos, kad mes matėme. 348 00:17:05,450 --> 00:17:07,980 Taigi tai iš tiesų veikia kaip būtų galima tikėtis. 349 00:17:07,980 --> 00:17:10,540 >> Galiu paleisti 2.swift. 350 00:17:10,540 --> 00:17:14,390 Ir mes matome, kad mano vardas yra iš tikrųjų sujungta į "Sveiki Danas". 351 00:17:14,390 --> 00:17:16,050 Gerai, nuostabus. 352 00:17:16,050 --> 00:17:17,485 Pereinant prie numeris trys. 353 00:17:17,485 --> 00:17:19,359 Dabar ji buvo šiek tiek baltas melas, kad aš 354 00:17:19,359 --> 00:17:23,369 sakė, kad būdas, kad mes pareiškiame kintamieji buvo naudoti tegul žodį. 355 00:17:23,369 --> 00:17:27,640 Kaip daug kartų, kaip jūs galbūt galite padaryti norite naudoti tegul, nes tai, ką daro, kad 356 00:17:27,640 --> 00:17:29,280 tai apibrėžia konstantą. 357 00:17:29,280 --> 00:17:33,010 Ir tai sako greitai, kad jis gali optimizuoti savo paraiškos greitį 358 00:17:33,010 --> 00:17:36,230 nes jis žino, kad kintamasis nesiruošia keisti. 359 00:17:36,230 --> 00:17:38,760 >> Taigi vertinti atsargiai kai jūs ketinate naudoti 360 00:17:38,760 --> 00:17:41,382 už kintamasis tikslai jį pakeisti. 361 00:17:41,382 --> 00:17:43,340 Ir kai jūs ketinate sukurti kintamąjį tik 362 00:17:43,340 --> 00:17:47,010 turėti kai kurie duomenys, ir kad yra ne iš tikrųjų ketina keisti. 363 00:17:47,010 --> 00:17:50,150 Taigi šis nekintamumo koncepciją, ji nėra iš tikrųjų ketiname pakeisti, 364 00:17:50,150 --> 00:17:53,740 yra svarbus net toli žemyn, kaip apibrėžti kintamuosius. 365 00:17:53,740 --> 00:17:56,870 Taigi čia mes apibrėžta pavadinimą, leisti vardą, ir šiuo atveju 366 00:17:56,870 --> 00:18:02,120 tai konstanta, kad yra tipo eilutę, ir jis yra lygus Dano. 367 00:18:02,120 --> 00:18:05,580 >> Taigi tuo tarpu prieš versija, tai infers-- ir "ji" 368 00:18:05,580 --> 00:18:08,220 Aš turiu galvoje, swift-- SWIFT daro išvadą, kad duomenų tipas 369 00:18:08,220 --> 00:18:10,850 kad mes įvesti į kintamąjį. 370 00:18:10,850 --> 00:18:12,930 Šiuo atveju, galime būti aiškų. 371 00:18:12,930 --> 00:18:17,590 Tad tada šis pavadinimas kintamasis yra vardą, tada dvitaškis. 372 00:18:17,590 --> 00:18:21,350 Ir po dvitaškio padaryti mes nurodyti duomenų tipą. 373 00:18:21,350 --> 00:18:24,694 Taigi nebėra tai Žiniasklaida pavadinimą arba styginių pavadinimą arba kažkas panašaus. 374 00:18:24,694 --> 00:18:26,860 Bet vietoj to, tegul etiketę, mes apibrėžiant ar ne 375 00:18:26,860 --> 00:18:29,090 tai nuolatinis arba kintamas, po kurio pavadinimu, 376 00:18:29,090 --> 00:18:31,870 po kurio tipo taikyti pasirinktinai. 377 00:18:31,870 --> 00:18:34,730 >> Taigi šiuo atveju mes apibrėžti šis pavadinimas yra eilutė. 378 00:18:34,730 --> 00:18:35,790 Mes pasakyti, Danas. 379 00:18:35,790 --> 00:18:39,270 Ir dabar aš turiu kitą kintamąjį, šiuo atveju ji vadinama etiketės. 380 00:18:39,270 --> 00:18:42,090 Bet pranešimas, kad jis yra su priešdėliu var raktinį žodį. 381 00:18:42,090 --> 00:18:44,430 VaR raktažodžių priemonės kad šis kintamasis gali 382 00:18:44,430 --> 00:18:48,720 būti pakeistas, kad vėliau taške laikas, kažkur žemyn kodas 383 00:18:48,720 --> 00:18:52,480 mes galime realiai pakeisti jį, ir jis neduos mums kokią nors konkrečią klaidą. 384 00:18:52,480 --> 00:18:56,760 >> Mes galime padaryti standartinį concatenating operatorius čia naudodamas pliuso simbolį 385 00:18:56,760 --> 00:19:00,130 faktiškai pridėti mūsų pavadinimas į šią eilutę. 386 00:19:00,130 --> 00:19:02,921 Ir tada mes galime spausdinti kaip matėme vos prieš akimirką. 387 00:19:02,921 --> 00:19:04,920 Dabar tarkime, kad jums norite sukurti kintamąjį 388 00:19:04,920 --> 00:19:06,586 bet jūs nenorite inicijuoti dar. 389 00:19:06,586 --> 00:19:08,590 Jūs dar norite įdėti jokių duomenų joje. 390 00:19:08,590 --> 00:19:11,760 Na jūs turite pasakyti skubiai, ką Duomenų tipas 391 00:19:11,760 --> 00:19:16,430 bus prieš jūs galite iš tikrųjų nustatyti tinkamai. 392 00:19:16,430 --> 00:19:20,360 >> Taigi šiuo atveju, kai mes apibrėžta kintamasis vadinamas laipsnio turime būti 393 00:19:20,360 --> 00:19:24,450 aiškiai apie tokio tipo, nes jis negali numanyti tiesiog ieško 394 00:19:24,450 --> 00:19:27,300 tuo inicializuoti duomenis kad jūs pateikti. 395 00:19:27,300 --> 00:19:30,050 Tai suteiks mums, jei klaidą Tiesiog įveskite var laipsnio, pavyzdžiui, 396 00:19:30,050 --> 00:19:31,830 nes ji turi, todėl neturi tipą. 397 00:19:31,830 --> 00:19:33,353 Taigi kokybės = 100. 398 00:19:33,353 --> 00:19:35,790 Taip, kad 100 yra sveikasis skaičius, jį tinka labai gražiai į tai. 399 00:19:35,790 --> 00:19:36,998 Ji toliau funkcionuoti. 400 00:19:36,998 --> 00:19:40,350 401 00:19:40,350 --> 00:19:43,022 Mes galime pamatyti, kaip mes gali Jungiant tai. 402 00:19:43,022 --> 00:19:44,730 Dabar tu gali būti pagunda, jei jūs iš tikrųjų 403 00:19:44,730 --> 00:19:48,610 norėjau Jungiant Įvertinimas į kitą teksto eilutę, 404 00:19:48,610 --> 00:19:52,560 į kitą eilutę, kad jūs tiesiog naudoti tą patį concatenating operatorių. 405 00:19:52,560 --> 00:19:54,630 Ir, kad paprastai būtų tiesa. 406 00:19:54,630 --> 00:20:00,540 Bet greitai neleis Jums netiesiogiai pakeisti duomenų tipą. 407 00:20:00,540 --> 00:20:03,440 Taigi, šiuo atveju, šis linija, 25, žlugs 408 00:20:03,440 --> 00:20:06,650 nes klasė yra sveikas, o ne eilutė. 409 00:20:06,650 --> 00:20:08,760 Ir taip ten neatitikimas nustatytas rūšių. 410 00:20:08,760 --> 00:20:11,780 Taigi jūs turite būti aiškus, kai norite pakeisti šiuos duomenis, 411 00:20:11,780 --> 00:20:14,080 jei norite priversti tai duomenys į kitos rūšies 412 00:20:14,080 --> 00:20:17,250 ir sako, gerai, aš noriu imtis šis įvertinimas, kuris yra sveikasis skaičius, 413 00:20:17,250 --> 00:20:19,050 ir konvertuoti jį į eilutę. 414 00:20:19,050 --> 00:20:23,970 >> Taigi aš kapitalo s eilutę visus tipai, jūs pastebėsite, yra kapitalizuojamos, 415 00:20:23,970 --> 00:20:26,280 Žiniasklaida, Dvivietis, styginių, taip toliau ir taip toliau. 416 00:20:26,280 --> 00:20:28,930 Visi jie yra kapitalizuojamos tik, kad viskas taip paprasta. 417 00:20:28,930 --> 00:20:32,240 Ir mes pasakyti pasinaudoti Styginių pereiti į rangą. 418 00:20:32,240 --> 00:20:35,020 Ir tai bus sukurti eilutė iš to sveikojo skaičiaus. 419 00:20:35,020 --> 00:20:37,970 Ir tada mes galime Jungiant du labai gražiai. 420 00:20:37,970 --> 00:20:40,500 Bet šioje stuff šiol klausimų? 421 00:20:40,500 --> 00:20:43,770 Gerai, tegul plūgas iki keturių skaičių. 422 00:20:43,770 --> 00:20:47,870 >> Dabar pakalbėkime apie šiek tiek daugiau pažangių struktūros, kaip masyvai ir kilpų. 423 00:20:47,870 --> 00:20:54,920 Ir skirtingai nuo C, matricas Swift neatstovauja patarimų. 424 00:20:54,920 --> 00:20:58,730 Pointeriai SWIFT, nors jie egzistuoja, vadinamas 425 00:20:58,730 --> 00:21:02,840 kaip nesaugių rodykles arba kai panašaus tipo kaip šis, 426 00:21:02,840 --> 00:21:04,950 jie nesusiduria su jumis normaliai. 427 00:21:04,950 --> 00:21:07,300 Taigi ji tampa labai sunku Jums manipuliuoti 428 00:21:07,300 --> 00:21:10,020 tiesiogiai iš kompiuterio atminties. 429 00:21:10,020 --> 00:21:11,670 >> Taigi matricos yra tiesiog duomenų tipas. 430 00:21:11,670 --> 00:21:16,830 Ir jie nuorodos naudojant šios rūšies ir dabar standartinis kvadratinis laikiklis žymėjimas 431 00:21:16,830 --> 00:21:18,280 kad jūs matėte anksčiau. 432 00:21:18,280 --> 00:21:21,130 Bet kai jūs iš tikrųjų norite apibrėžti kintamąjį tipą 433 00:21:21,130 --> 00:21:24,330 kaip kai masyvo pirma rūšis, tada jūs 434 00:21:24,330 --> 00:21:27,150 įdėti tą tipą laužtiniuose skliaustuose. 435 00:21:27,150 --> 00:21:30,260 Taigi, ką aš noriu pasakyti, kad čia yra Kuriu kintamasis vadinamas 436 00:21:30,260 --> 00:21:33,930 rūšių tipo int masyvas. 437 00:21:33,930 --> 00:21:37,380 Ir aš nustatant, kad lygus kai INITIALIZED duomenys, kuri šiuo atveju 438 00:21:37,380 --> 00:21:42,960 yra 100, 0, 90, 85, kuri yra tik kolekcija savavališkai klasių čia. 439 00:21:42,960 --> 00:21:46,480 Dabar šiuo atveju galėčiau, atminkite, kad pašalinti tipą 440 00:21:46,480 --> 00:21:49,580 ir tai galėtų daryti išvadą, kad remiantis INITIALIZED duomenimis. 441 00:21:49,580 --> 00:21:51,990 Bet jei aš pašalinti šį ir Man reikia jį vėliau, 442 00:21:51,990 --> 00:21:56,840 tada aš turiu įsitikinti, kad turiu tipo ten. 443 00:21:56,840 --> 00:21:58,750 Gerai, tegul judėti. 444 00:21:58,750 --> 00:22:03,010 Taigi, mes can-- matricos pateikiate mums įvairovė 445 00:22:03,010 --> 00:22:07,130 metodų per tą dot žymėjimo ne jums tikriausiai dabar susipažinę su. 446 00:22:07,130 --> 00:22:10,360 Taigi, grades.count, pavyzdžiui, pasako tiksliai skaičių 447 00:22:10,360 --> 00:22:13,680 iš elementų, kurie yra pateikta per šio masyvo. 448 00:22:13,680 --> 00:22:17,260 >> Jei aš noriu pridėti additional-- dabar pastebėti, kad tai yra var 449 00:22:17,260 --> 00:22:20,140 ir not-- tai kintamasis o ne konstanta, kuri 450 00:22:20,140 --> 00:22:24,410 tai reiškia, kad aš galiu pakeisti turinį Šio masyvo, galiu pridėti objektus į jį. 451 00:22:24,410 --> 00:22:28,870 Bet aš negaliu tiesiog pasakyti pažymius ir tada laužtiniuose skliaustuose 452 00:22:28,870 --> 00:22:33,280 keturių, nes, kad bus iš ribų paklaida šiuo atveju. 453 00:22:33,280 --> 00:22:36,190 Jei aš noriu, kad iš tikrųjų pokytis Šio masyvo dydis, 454 00:22:36,190 --> 00:22:41,140 Turiu naudoti dot append metodą pridėti kažką iki galo jį. 455 00:22:41,140 --> 00:22:46,900 Aš galiu, tačiau pokytis individualūs indeksai. 456 00:22:46,900 --> 00:22:48,920 >> Taigi aš galėtų naudoti pažymius ir tada skliausteliuose 457 00:22:48,920 --> 00:22:52,480 nulis manipuliuoti šį pirmąjį indeksą ir tt, kaip jūs paprastai tikėtis. 458 00:22:52,480 --> 00:22:56,530 Ir aš galiu padaryti, kad iš tikrųjų pats gauna duomenis iš, kad taip pat. 459 00:22:56,530 --> 00:23:00,420 Dabar ten taip pat rūšiuoti išgalvotas būdas tai padaryti, pažymius plius kaip lygių 460 00:23:00,420 --> 00:23:02,525 ir tada kitą indeksas, kuri append-- 461 00:23:02,525 --> 00:23:04,400 ar ne kita index-- bet kitas sąrašas, kuris 462 00:23:04,400 --> 00:23:07,340 bus prideda šį sąrašą į klases gale. 463 00:23:07,340 --> 00:23:09,780 Ir lygiai bus tada yra visa tai. 464 00:23:09,780 --> 00:23:13,850 Bet tai tarsi papildomą dalyką kad aš tiesiog parodyti jums įdomus. 465 00:23:13,850 --> 00:23:14,910 >> Dabar yra už kilpos. 466 00:23:14,910 --> 00:23:18,970 Ir tai yra, kur paleidimo dalykų pradėti keisti truputį. 467 00:23:18,970 --> 00:23:22,920 Atkreipkite dėmesį, kaip tai už kilpa skiriasi nuo už kilpomis C 468 00:23:22,920 --> 00:23:26,470 Dabar aš atkreipti dėmesį, kad už kilpomis Swift gali 469 00:23:26,470 --> 00:23:30,650 būti pagaminti atrodo kaip už kilpos C, bet ten daugiau naudingų stato daug 470 00:23:30,650 --> 00:23:37,840 kad iš esmės pašalinti poreikį turėti var i lygus 0 kabliataškį i 471 00:23:37,840 --> 00:23:40,340 yra mažesnis nei tam tikru ilgiu, tt ir tt, tiesa? 472 00:23:40,340 --> 00:23:42,940 Ir šis konstruktas yra tik vienas iš jų. 473 00:23:42,940 --> 00:23:49,030 >> Dėl indekso rodiklis Kas naujo kintamasis, šiuo atveju, diapazone. 474 00:23:49,030 --> 00:23:52,730 Ir tai, ką aš noriu pasakyti, yra tai, kad ten svyruoja nuo 0 visi kelią iki 475 00:23:52,730 --> 00:23:55,870 bet neįskaitant grades.count. 476 00:23:55,870 --> 00:23:58,470 Taigi, šis taškas dot mažiau nei ženklas atstovauja 477 00:23:58,470 --> 00:24:05,040 verčių diapazonas nuo nulio visą kelią iki grades.count atėmus 1. 478 00:24:05,040 --> 00:24:07,070 Yra atskiras operatorius, egzistuoja, 479 00:24:07,070 --> 00:24:13,320 kuris yra dot dot dot, kuri būtų reiškia, kad aš noriu, kad nulio asortimentą 480 00:24:13,320 --> 00:24:16,310 rangams tikėtis imtinai. 481 00:24:16,310 --> 00:24:19,130 >> Bet šiuo atveju, nes jie matricos yra nulis indeksas, mes, žinoma, 482 00:24:19,130 --> 00:24:23,290 nenori eiti į Didžiausias skaičius klasėse. 483 00:24:23,290 --> 00:24:26,390 Galiu Apibendrinant rangus, kaip galima tikėtis, ir išėjimo visos šios medžiagos. 484 00:24:26,390 --> 00:24:29,620 Gerai, pereinant. 485 00:24:29,620 --> 00:24:32,270 Dabar pakalbėkime apie funkcijas. 486 00:24:32,270 --> 00:24:35,465 Siekiant apibrėžti funkciją jūs naudojate funk žodį. 487 00:24:35,465 --> 00:24:38,090 Ir dar kartą, Swift turite būti labai atsargūs su rūšimis. 488 00:24:38,090 --> 00:24:41,530 Jūs teikti tai parametrai apibrėžiant, pavyzdžiui, 489 00:24:41,530 --> 00:24:45,440 Parametro pavadinimas ir tada Colin, Duomenų tipas 490 00:24:45,440 --> 00:24:47,690 kad jūs tikėtis, kad parametras priimti. 491 00:24:47,690 --> 00:24:50,700 >> Taigi, šiuo atveju turime funkcija vadinama spausdinimo kokybės skaičius. 492 00:24:50,700 --> 00:24:54,630 Ji pripažįsta, kintamasis vadinamas gradebook, ar veikiau parametras vadinamas gradebook. 493 00:24:54,630 --> 00:24:59,267 Ir mes tikimės, kad gradebook būti sveikieji skaičiai, masyvas. 494 00:24:59,267 --> 00:25:01,350 Jei tai gradebook yra tuščias, mes spausdinti vieną dalyką. 495 00:25:01,350 --> 00:25:06,090 Priešingu atveju mes atsispausdinti numerį pažymių, kad tai iš tiesų turi. 496 00:25:06,090 --> 00:25:09,470 >> Dabar, jei mes norime grįžti kai vertė, tada būdas 497 00:25:09,470 --> 00:25:14,595 kad mes keisti šis apibrėžimas yra kad iš tikrųjų naudoti šią rodyklės raktažodį 498 00:25:14,595 --> 00:25:16,870 ar naudoti šį rodyklės signifikanto. 499 00:25:16,870 --> 00:25:19,440 Taigi čia mes ketiname nustatyti funkcija vadinama vidurkis. 500 00:25:19,440 --> 00:25:21,940 Mes ketiname priimti iš numerių sąrašą. 501 00:25:21,940 --> 00:25:25,430 Ir mes ketiname grįžti dvigubai, kuris, tikimės, bus 502 00:25:25,430 --> 00:25:31,270 būti iš šio masyvo vidurkis. 503 00:25:31,270 --> 00:25:34,570 Ir tam, kad tai, jog tam, kad iš tikrųjų apskaičiuoja šį vidurkį, 504 00:25:34,570 --> 00:25:38,651 imsimės sumą ir mes, Žinoma Apibendrinant visus objektus 505 00:25:38,651 --> 00:25:39,400 per šį masyvo. 506 00:25:39,400 --> 00:25:41,480 >> Atkreipkite dėmesį, kad yra naujas stilius už kilpos čia. 507 00:25:41,480 --> 00:25:45,450 Neturime būti aiškiai apie Iteracja per kiekvieną elementą, 508 00:25:45,450 --> 00:25:48,280 bet mes galime vietoj pasakyti Įvertinimas ir gradebook, reikšmė 509 00:25:48,280 --> 00:25:50,930 kad kiekvienas punktas, kad mes turime tai, 510 00:25:50,930 --> 00:25:53,482 numatyti, kad elementą tai kintamasis vadinamas laipsnio. 511 00:25:53,482 --> 00:25:54,940 Ir aš noriu kažką daryti su juo. 512 00:25:54,940 --> 00:26:00,350 Taigi, aš ruošiuosi Apibendrinant visus šiuos duomenis ir iš tikrųjų grįžti dvigubo padalijimo. 513 00:26:00,350 --> 00:26:04,436 >> Dabar pastebėti vėl čia yra koncepcija sveikasis padalijimo Swift. 514 00:26:04,436 --> 00:26:06,810 Jei norite dvigubai padalinys nes norite kablelio, 515 00:26:06,810 --> 00:26:09,460 tada jūs turite būti aiškus, ne tik apie viena pusė, 516 00:26:09,460 --> 00:26:14,030 nes jis nesiruošia leisti jums siekiant priversti duomenis iš abiejų šis pusėje, 517 00:26:14,030 --> 00:26:17,030 jūs turite iš tikrųjų žinoma abi pusės į dvejetų 518 00:26:17,030 --> 00:26:19,440 kad esate labai aiškiai apie tai, kad 519 00:26:19,440 --> 00:26:23,370 kad jūs darote dvigubo padalijimo. 520 00:26:23,370 --> 00:26:26,150 >> Pereikime. 521 00:26:26,150 --> 00:26:31,150 Taigi, jei aš iš tikrųjų noriu accept-- taip, kad šiuo konkrečiu Pavyzdžiui, 522 00:26:31,150 --> 00:26:34,260 tai vis dar komandą linija pagrindu sukurta programa. 523 00:26:34,260 --> 00:26:37,920 Ir mes pradedame matyti kai jaunos kalba apribojimai 524 00:26:37,920 --> 00:26:41,850 tuo, kad nors mes galime pasiekti argumentus naudojant 525 00:26:41,850 --> 00:26:44,940 tai process.arguments, tai dar nebūtinai švariausių 526 00:26:44,940 --> 00:26:46,200 dalykas, kad mes kada nors matė. 527 00:26:46,200 --> 00:26:49,142 Bet iš esmės Raginu jus rūšiuoti pažvelgti į šį kodas 528 00:26:49,142 --> 00:26:51,100 ir bandyti išsiaiškinti, kas tiksliai vyksta. 529 00:26:51,100 --> 00:26:55,030 >> Iš esmės tai, kas vyksta, kad mes atsižvelgiant argumentų sąrašą 530 00:26:55,030 --> 00:26:57,610 ir buvo versti juos į sveikieji skaičiai, ir tada mes 531 00:26:57,610 --> 00:27:03,620 ketinate naudoti, kad tokiu būdu spausdinti dėmesį į visus mūsų klasėse vidurkis. 532 00:27:03,620 --> 00:27:06,150 533 00:27:06,150 --> 00:27:07,350 Permainos. 534 00:27:07,350 --> 00:27:11,190 Dabar yra dar vienas data-- tipas dar duomenų tipas, o ne masyvus 535 00:27:11,190 --> 00:27:14,940 vadinami žodynai, kurios yra labai panašus į maišos lenteles arba maišos žemėlapiai 536 00:27:14,940 --> 00:27:18,560 ir yra panašūs, taip pat į PHP Association masyvai. 537 00:27:18,560 --> 00:27:20,770 Taigi jie turi sąvoka Raktų ir vertybes. 538 00:27:20,770 --> 00:27:23,780 >> Ir jie apibrėžti taip pat su ši aikštė laikiklis žymėjimas, 539 00:27:23,780 --> 00:27:26,750 bet skirtumas yra kad žodynai turi 540 00:27:26,750 --> 00:27:29,370 viduje kvadratinių laikiklis, dvitaškiu. 541 00:27:29,370 --> 00:27:33,850 Ir dvitaškis atskiria duomenis tipo, kad yra raktas ir vertė. 542 00:27:33,850 --> 00:27:38,540 Taigi šiuo atveju, aš ruošiuosi kurti žodynas priimti keletą klasių. 543 00:27:38,540 --> 00:27:44,200 Ir tai bus tipo string: int, 544 00:27:44,200 --> 00:27:46,940 o tai reiškia, kad visi raktai bus stygos, 545 00:27:46,940 --> 00:27:53,080 ir visi tų vertybių raktai bus sveikieji skaičiai. 546 00:27:53,080 --> 00:27:55,780 >> Ką tai reiškia, kad aš galiu tada nuoroda į konkrečią duomenis 547 00:27:55,780 --> 00:28:00,490 kad aš noriu, naudojant tuos raktus, o nei naudojant skaitinius rodiklius kaip I 548 00:28:00,490 --> 00:28:04,350 būtų standartinio masyvo. 549 00:28:04,350 --> 00:28:06,470 Dabar pažiūrėkime, ten vienas svarbus dalykas, 550 00:28:06,470 --> 00:28:10,790 kad aš taip pat noriu paminėti apie tai ypač seka kodą. 551 00:28:10,790 --> 00:28:12,910 Ir tai, kad yra kitą duomenų tipą, 552 00:28:12,910 --> 00:28:15,580 ar veikiau ten tai idėja duomenų, kad yra 553 00:28:15,580 --> 00:28:18,340 pateikta per Swift vadinamas Papildomi reikmenys. 554 00:28:18,340 --> 00:28:21,270 >> Ir ką reiškia Papildomi reikmenys kad ji pripažįsta tai, 555 00:28:21,270 --> 00:28:27,500 kad kartais jūs nesiruošia gauti duomenis, kad jūs iš tikrųjų tikėtis. 556 00:28:27,500 --> 00:28:31,400 Ir taip, tai ką aš turiu galvoje, kad is-- tegul pažvelgti šio kodo seka išvaizdą 557 00:28:31,400 --> 00:28:38,910 kuris kartojasi per visą kad buvo priimti šio kodo argumentai 558 00:28:38,910 --> 00:28:43,460 ir bando juos konvertuoti, bando padalinti į kelias eilutes įvairovę, 559 00:28:43,460 --> 00:28:47,310 nes ji priima labai tikro tipo argumentas. 560 00:28:47,310 --> 00:28:51,530 Ir tada ji ketina bandyti priversti stygos, kurios atstovauja numerius 561 00:28:51,530 --> 00:28:55,460 į sveikieji skaičiai, kurie yra lygiai, kad aš tada galima apskaičiuoti. 562 00:28:55,460 --> 00:28:58,230 >> Taigi, iš esmės aš ruošiuosi naudoti šią funkciją split, kad 563 00:28:58,230 --> 00:29:00,080 egzistuoja kaip Swift standartinės bibliotekos. 564 00:29:00,080 --> 00:29:03,720 Aš ruošiuosi pereiti į juo eilutė, noriu padalinti. 565 00:29:03,720 --> 00:29:06,980 Ir tada naudojant šią rūšiuoti funky sintaksę, kuri 566 00:29:06,980 --> 00:29:09,670 Aš nežinau, jei mes gauti, bet gal mes 567 00:29:09,670 --> 00:29:14,320 tikrai bus nurodyti tikslūs simbolių, kad mes norime padalinti ne. 568 00:29:14,320 --> 00:29:16,030 Taigi, ką tai iš tiesų atrodo? 569 00:29:16,030 --> 00:29:18,740 Paimkime pažvelgti tikrai veikia šį kodą. 570 00:29:18,740 --> 00:29:22,000 >> Taigi, pavyzdžiui, tarkim turiu viktorina ir aš 50, kad. 571 00:29:22,000 --> 00:29:23,960 Ir aš turiu PSETs ir Gavau šimtus apie tai. 572 00:29:23,960 --> 00:29:29,180 Ir aš got-- yra kita viktorina ir gavau 40, kad. 573 00:29:29,180 --> 00:29:33,520 Aš paspauskite Enter, ir galiausiai, kas įvyks tai, kad ką ji daro 574 00:29:33,520 --> 00:29:37,730 vartoja šiuos parametrus, skėlimo dėl kurių šių dvitaškius stygos, 575 00:29:37,730 --> 00:29:41,390 pripažįstant, kad yra du elementai kiekvienoje vieną, 576 00:29:41,390 --> 00:29:43,700 ir tai iš esmės sekti kiekvieną. 577 00:29:43,700 --> 00:29:49,226 >> Taigi turiu mano žodyne viktorinoje, kurios vertė yra lygi iš skaičiaus 50, 578 00:29:49,226 --> 00:29:54,290 Turiu PSET kad turi vertę 100, ir viktorinos tas, kuris turi vertę iš 40. 579 00:29:54,290 --> 00:29:57,400 Tada vėliau kodų I realiai vidutiniškai visų šių vertybių 580 00:29:57,400 --> 00:30:01,160 sąrašą ir visus raktus kad ypač žodyną. 581 00:30:01,160 --> 00:30:03,217 Tačiau tai yra svarbu, taip, kad jūs galite pastebėti, 582 00:30:03,217 --> 00:30:06,050 tai, kas vyksta, yra tai, kad tai, ką mes noriu padaryti, tai priimti šį eilutę 583 00:30:06,050 --> 00:30:11,450 ir padalino jį ne tokio pobūdžio, kurį mes galime padaryti dar kartą su šiuo padalijimu 584 00:30:11,450 --> 00:30:15,690 funkcija naudojant šią rūšiuoti Įdomu sintaksė, kad egzistuoja čia. 585 00:30:15,690 --> 00:30:17,880 >> Tiesiog dabar manome, kad tai yra gerai. 586 00:30:17,880 --> 00:30:19,980 Mes atrodo labiau į tai vos truputį. 587 00:30:19,980 --> 00:30:23,230 Bet dabar ten įdomu aspektas, kad mes iš tikrųjų 588 00:30:23,230 --> 00:30:27,250 noriu pabandyti tai pakeisti styginių į sveikojo skaičiaus. 589 00:30:27,250 --> 00:30:29,720 Bet kitomis kalbomis kas gali atsitikti 590 00:30:29,720 --> 00:30:33,440 kad mes tikriausiai bandyti tai padaryti ir arba grįžti 591 00:30:33,440 --> 00:30:36,185 kai kontrolinių rūšiuoti vertė, kaip neigiamas 592 00:30:36,185 --> 00:30:39,420 gal niekinis ar kažkas panašaus. 593 00:30:39,420 --> 00:30:41,070 O gal tai tiesiog sukelia klaidą. 594 00:30:41,070 --> 00:30:42,820 Ir mes turime tada sugauti tą klaidą 595 00:30:42,820 --> 00:30:44,820 ir tada pabandyti padaryti kažkas grindžiamas tuo, 596 00:30:44,820 --> 00:30:48,280 kad šio perskaičiavimo iki sveikojo skaičiaus nepavyko. 597 00:30:48,280 --> 00:30:50,460 Štai kur ši idėja nuo Papildomi reikmenys ateina. 598 00:30:50,460 --> 00:30:56,120 Jūs iš tikrųjų galite sukurti duomenų tipą, yra int klaustukas, pavyzdžiui. 599 00:30:56,120 --> 00:30:59,140 600 00:30:59,140 --> 00:31:01,910 Tai reiškia, kad šio sveikojo skaičiaus yra, iš tikrųjų, pasirinktinai. 601 00:31:01,910 --> 00:31:05,980 Ir, kas bus yra tai, kad ji gali sudėtyje yra sveikasis skaičius, arba ji negali. 602 00:31:05,980 --> 00:31:10,650 Tai gali būti, iš tikrųjų, būti ši kita idėja, visiškai vadinamas nill. 603 00:31:10,650 --> 00:31:14,900 Kokiais tai reiškia, kad ten jokios vertės kokia šioje srityje. 604 00:31:14,900 --> 00:31:16,810 Tai net ne nulis, ten tiesiog nėra vertybė. 605 00:31:16,810 --> 00:31:18,790 Yra absoliučiai jokios vertės atstovaujama. 606 00:31:18,790 --> 00:31:21,650 >> Ir tai yra tai, ką ši eilutė 71 daro. 607 00:31:21,650 --> 00:31:25,990 Yra tai, kad sakydamas, kad aš noriu pabandyti nustatyti vertę, 608 00:31:25,990 --> 00:31:31,790 kintamasis vadinamas laipsnio, lygus konversija šiame eilutę į int. 609 00:31:31,790 --> 00:31:34,010 Taigi aš ėmėsi šio eilutę, tai pirmieji komponentai, 610 00:31:34,010 --> 00:31:37,680 ar veikiau antras komponentai, nes šis 611 00:31:37,680 --> 00:31:40,770 yra lygus nuliui indeksuoti, tai eilutė, kad aš padalinti. 612 00:31:40,770 --> 00:31:42,930 Ir aš noriu konvertuoti kad į sveikojo skaičiaus. 613 00:31:42,930 --> 00:31:46,730 Bet tai ne visada gali elgtis paprastai, nes įsivaizduoti 614 00:31:46,730 --> 00:31:50,710 kas nutiktų, jei, užuot tipą skaičius, aš tipo žinoma kaip asdf. 615 00:31:50,710 --> 00:31:51,534 >> Tai vyksta žlugti. 616 00:31:51,534 --> 00:31:54,200 Tai nėra iš tikrųjų bus gali paversti, kad į sveikasis skaičius 617 00:31:54,200 --> 00:31:55,510 kaip aš norėčiau tikėtis. 618 00:31:55,510 --> 00:31:58,660 Taigi užuot nusimesti kai klaidos rūšiuoti, 619 00:31:58,660 --> 00:32:01,210 mes turime šį neprivaloma idėją. 620 00:32:01,210 --> 00:32:04,240 O tai reiškia, kad naudojant tai klaustukas, ką galiu pasakyti, 621 00:32:04,240 --> 00:32:09,100 Gerai, tai įmanoma, kad galiu imtis tai, konvertuoti jį į int, 622 00:32:09,100 --> 00:32:12,630 ir įdėti jį į kintamąjį, kuris taip pat bus int. 623 00:32:12,630 --> 00:32:15,420 Jei taip, tada, kad priemonė kad tai buvo sėkmingas 624 00:32:15,420 --> 00:32:18,720 ir šis pirmasis porcija blokas gali tęstis. 625 00:32:18,720 --> 00:32:21,040 >> Priešingu atveju, ji nepavyko. 626 00:32:21,040 --> 00:32:25,840 Nėra grade-- vertė arba o nėra esama vertė, 627 00:32:25,840 --> 00:32:30,220 ir aš iš tikrųjų turi stengtis dirbti šį klaidos būklę. 628 00:32:30,220 --> 00:32:33,340 Jūs ketinate tai pamatyti klaustukas visą laiką 629 00:32:33,340 --> 00:32:35,990 Swift ir pavyzdys kodą Swift. 630 00:32:35,990 --> 00:32:40,980 Ir iš tiesų nill operatorius, tai tarsi nuo klaustuku, Papildomi reikmenys dalį, 631 00:32:40,980 --> 00:32:45,057 bus turbūt vienas iš daugiau sunkiausių dalykų 632 00:32:45,057 --> 00:32:47,640 rūšiuoti wrap savo galvos aplink kaip jūs iš tikrųjų su juo dirbti. 633 00:32:47,640 --> 00:32:48,490 >> Tai gali prasmės dabar. 634 00:32:48,490 --> 00:32:50,760 Ir iš tikrųjų, kai buvau raštu mėginio kodą už tai, 635 00:32:50,760 --> 00:32:52,780 tikrai supratau kas vyksta, 636 00:32:52,780 --> 00:32:55,570 bet vis dar sugauti mane staigmena kas taip dažnai 637 00:32:55,570 --> 00:32:58,370 jei noriu pastebėti, kad kai kurie duomenys buvo iš tikrųjų 638 00:32:58,370 --> 00:33:04,024 nulinis variantas, neprivalomas versija Duomenų, kad tikėjausi. 639 00:33:04,024 --> 00:33:06,190 Taigi tiesiog suprasti, kad jei jus turi papildomą versiją 640 00:33:06,190 --> 00:33:09,360 turite spausti, kad duomenys šiame langelyje. 641 00:33:09,360 --> 00:33:15,870 >> Taigi, tai tarsi I-- įsivaizduokite, jei jus turi langelį ir jame kažką. 642 00:33:15,870 --> 00:33:18,490 O ką jums reikia padaryti, yra užduoti klausimą, 643 00:33:18,490 --> 00:33:22,800 tai įmanoma, kad iš tikrųjų šis langelis yra duomenų, kad Aš ieškau? 644 00:33:22,800 --> 00:33:28,180 Jei taip, tada patraukite, kad duomenis iš ir įdėti jį į esamą šio kintamojo. 645 00:33:28,180 --> 00:33:32,080 Jei ne, tada aš tiesiog nepaisyti šio langelio turinį 646 00:33:32,080 --> 00:33:34,310 apskritai, nes ji tiesiog yra nieko. 647 00:33:34,310 --> 00:33:36,880 648 00:33:36,880 --> 00:33:40,400 >> Bet apie tai klausimai? 649 00:33:40,400 --> 00:33:44,430 Gerai, pereikime nuo šio rūšiuoti komandinės eilutės pagrįstas dalykas 650 00:33:44,430 --> 00:33:47,610 ir pradėti ieškoti kai kurios technologijos 651 00:33:47,610 --> 00:33:53,060 kad Xcode suteikia mums į žaidimų aikštelės forma. 652 00:33:53,060 --> 00:33:56,669 Taigi ten yra daug galimybė čia Swift. 653 00:33:56,669 --> 00:33:59,210 Ir jei jūs atverti Xcode ir IT prašo, ką norite daryti, 654 00:33:59,210 --> 00:34:01,340 galite atverti žaidimų aikštelė ir tiesiog žaisti aplink 655 00:34:01,340 --> 00:34:06,200 su įvairių struktūrų partijos ir aspektai kalba 656 00:34:06,200 --> 00:34:11,800 prieš jus net pradėti paliesdami "iOS SDK arba" Mac "SDK. 657 00:34:11,800 --> 00:34:15,670 >> Taigi šiuo atveju, tarkim, kad aš have-- Turiu gana nenatūralu pavyzdį 658 00:34:15,670 --> 00:34:18,460 čia, bet būti su manimi, kaip mes rūšiuoti darbo per šį pavyzdį. 659 00:34:18,460 --> 00:34:22,639 Tarkime, kad mes turime padaryti daug eksponentų su fiksuota vertė, 660 00:34:22,639 --> 00:34:26,397 kaip mes žinome, kad jūs ketinate reikia padaryti kvadratinių galių daug, pavyzdžiui. 661 00:34:26,397 --> 00:34:28,980 Taigi mes ketiname imtis tam tikrų vertę x, mes ketiname suvesti ją, 662 00:34:28,980 --> 00:34:30,540 mes ketiname imtis tam tikrų vertę y ir mes ketiname suvesti ją. 663 00:34:30,540 --> 00:34:31,780 Taigi, toliau ir taip toliau. 664 00:34:31,780 --> 00:34:35,549 >> Dabar mes iš tiesų gali tiesiog sukurti galia 2 funkcija tai, tiesa? 665 00:34:35,549 --> 00:34:37,090 Taigi, mes norime sukurti 2 funkcijos galią. 666 00:34:37,090 --> 00:34:38,600 Mes priimame dvigubai. 667 00:34:38,600 --> 00:34:41,489 Mes output-- ar mes grįžti dvigubą tipą. 668 00:34:41,489 --> 00:34:46,159 Mes priimsime šį rezultatą ir tada du kartus per 669 00:34:46,159 --> 00:34:52,040 tai, ką mes iš tikrųjų imtis rezultatus, kurie buvo inicializuoti vertės vieną, 670 00:34:52,040 --> 00:34:53,090 ir padauginkite jį iš x. 671 00:34:53,090 --> 00:34:56,540 Taigi iš esmės turime x kartų x čia. 672 00:34:56,540 --> 00:35:01,860 >> Ir taip, tada aš galiu tada, kaip mes galime tikisi, į tai, paleisti galia 2, 673 00:35:01,860 --> 00:35:03,680 teikia jai kai kurie duomenys, man patinka 2.0. 674 00:35:03,680 --> 00:35:05,756 Ir mes turime pamatyti čia 4,0 rezultatus. 675 00:35:05,756 --> 00:35:09,200 Paleiskite galios 2 d 3.2 ir mes pamatys mūsų rezultatą, 10.24. 676 00:35:09,200 --> 00:35:10,840 Kol kas viskas gerai, tiesa? 677 00:35:10,840 --> 00:35:12,070 Dabar mes galvojate, gerai, gerai. 678 00:35:12,070 --> 00:35:15,530 Dabar aš iš tikrųjų reikia padaryti galių 3 aikštelė. 679 00:35:15,530 --> 00:35:19,180 Taigi aš nukopijuoti įklijuokite visą šį kodą, pakeisti nuo funkcijos pavadinimą 680 00:35:19,180 --> 00:35:24,440 galia nuo 2 iki galios 3, ir viskas bus vienodi, išskyrus šios vertės 681 00:35:24,440 --> 00:35:26,740 čia tai asortimentas, 1 ... 2. 682 00:35:26,740 --> 00:35:29,590 >> Taigi, o ne kartoti šis ciklas du kartus, 683 00:35:29,590 --> 00:35:31,880 Noriu pakartoti Šis ciklas tris kartus. 684 00:35:31,880 --> 00:35:36,330 Taigi, aš tiesiog pakeisti šią vertę iš Nuo 1 iki 3-- arba, o 2-3. 685 00:35:36,330 --> 00:35:39,230 Taigi dar kartą, tas pats kodas, tai vienintelis pakeitimas. 686 00:35:39,230 --> 00:35:40,080 Dabar tai taip pat veikia. 687 00:35:40,080 --> 00:35:43,860 Maitinimo 3, jei kai 2 vertę. 688 00:35:43,860 --> 00:35:44,420 Mes gauname 8. 689 00:35:44,420 --> 00:35:45,370 Taigi 2 kubeliais. 690 00:35:45,370 --> 00:35:48,060 Ir 3.2 kubeliais yra 32,768. 691 00:35:48,060 --> 00:35:50,597 Ir kol kas viskas gerai, tiesa? 692 00:35:50,597 --> 00:35:52,930 Bet tikiuosi, tai tiek tiek raudona vėliava jums 693 00:35:52,930 --> 00:35:55,530 tuo, kad dabar mes turime kai kodo dubliavimo 694 00:35:55,530 --> 00:35:58,800 išskyrus kai labai mažas keisti iš vieno į kitą. 695 00:35:58,800 --> 00:36:02,170 Taigi nėra kokiu nors būdu, kad galėtume supaprastinti 696 00:36:02,170 --> 00:36:06,080 ši problema, kur mes galime iš tikrųjų, vykdymo metu, išsiaiškinti kai, 697 00:36:06,080 --> 00:36:11,320 pateikiate mums šiek funkciją, kuri turi Būtent to mes norime galios. 698 00:36:11,320 --> 00:36:13,960 >> Ir ten ši idėja uždarymo, kuris yra tikrai, tikrai 699 00:36:13,960 --> 00:36:18,180 svarbus Swift kontekste ir daugelyje kitų kalbomis, taip pat. 700 00:36:18,180 --> 00:36:21,580 Bet tikriausiai pamatysite jis naudojamas labiau, kad SWIFT 701 00:36:21,580 --> 00:36:23,650 nes jis nematomas per kalbą 702 00:36:23,650 --> 00:36:28,280 nei jums bus į kitą taip pat šiuolaikinių kalbų. 703 00:36:28,280 --> 00:36:31,140 Taigi nuo uždarymo idėja tai yra, yra, kad mes 704 00:36:31,140 --> 00:36:35,430 gali turėti funkciją, kuris yra skirtas būti bendrinis funkcija, bendrinis galia 705 00:36:35,430 --> 00:36:36,860 funkcijos. 706 00:36:36,860 --> 00:36:41,010 >> Ir ši funkcija ketina priimti tai eksponentė, kad mes iš tikrųjų 707 00:36:41,010 --> 00:36:42,990 norite sukurti. 708 00:36:42,990 --> 00:36:46,550 Taigi, pavyzdžiui, labai pirmasis Pavyzdžiui, mes norėjome iš 2 galios. 709 00:36:46,550 --> 00:36:50,050 Taigi, mes suteiks galią ir tada skliausteliuose 2. 710 00:36:50,050 --> 00:36:52,490 Ir dabar pastebėsite, ką tai iš tiesų grįžta. 711 00:36:52,490 --> 00:36:57,680 Tai užtrunka gruntas įvestį vadinamas y, kad yra sveikasis skaičius, 712 00:36:57,680 --> 00:37:03,090 ir jis grįžta šio crazy ieškote dalykas parentheses-- skliausteliuose 713 00:37:03,090 --> 00:37:06,230 dvigubai ir tada arrow dvigubai. 714 00:37:06,230 --> 00:37:10,270 >> Ką tai reiškia, kad aš ketina grįžti funkciją. 715 00:37:10,270 --> 00:37:13,510 Aš negrįžta kitas duomenų tipas, aš 716 00:37:13,510 --> 00:37:16,350 iš tikrųjų grįžta funkciją kuris turi šį parametrą, kad 717 00:37:16,350 --> 00:37:22,680 priima dvigubai įvesties ir išveda du kartus, kaip grįžimo vertės. 718 00:37:22,680 --> 00:37:29,750 Ir kaip rezultatas, nes dabar aš vadinamas galia, einančios tikru vertės y, 719 00:37:29,750 --> 00:37:32,280 ir aš sukurti tai kita function-- pranešimas, kad yra 720 00:37:32,280 --> 00:37:35,980 kita funkcija, kad manimi kuriama viduje this-- ką aš darau 721 00:37:35,980 --> 00:37:37,830 yra galiu tada pakeisti ta vertė, kad vienas 722 00:37:37,830 --> 00:37:41,010 vertė, kad aš pasikeitė 2-3, dabar padaryti, kad jis y. 723 00:37:41,010 --> 00:37:42,500 >> Ir tai tęsiasi. 724 00:37:42,500 --> 00:37:48,530 Taigi kiekvieną kartą, kai aš vadinu galia iš esmės tai, kas vyksta 725 00:37:48,530 --> 00:37:51,030 yra, kad man grįžo funkciją. 726 00:37:51,030 --> 00:37:54,310 Atkreipkite dėmesį, kad čia aš apibrėžta Naujas kintamasis vadinamas aikštėje. 727 00:37:54,310 --> 00:37:59,340 Aš nustatyti, kad jis lygus galios, jeigu ši vertė 2 į valdžią. 728 00:37:59,340 --> 00:38:02,030 Ir ką tai grįžo yra funkcija. 729 00:38:02,030 --> 00:38:05,970 Taigi aikštė, kintamasis aikštė, dabar tipo funkcija 730 00:38:05,970 --> 00:38:11,390 kad turi this-- Oi, slinkite aukštyn mažai bit--, kad turi šią parašą 731 00:38:11,390 --> 00:38:15,560 priimti dvigubai ir išvestį dvigubai. 732 00:38:15,560 --> 00:38:17,330 >> Taigi, ką aš padariau yra aš iš esmės 733 00:38:17,330 --> 00:38:22,890 sukurta funkcija vadinama kvadratinės, kad priima kokią nors vertę ir aikštė ją. 734 00:38:22,890 --> 00:38:24,960 Mes galime pamatyti, kas vyksta žemyn čia. 735 00:38:24,960 --> 00:38:29,960 Aikštė 3, pavyzdžiui, reiškia, kad aš ruošiuosi imtis vertę 3 ir kvadrato jį. 736 00:38:29,960 --> 00:38:32,010 Taigi, kaip tiksliai tai veikia? 737 00:38:32,010 --> 00:38:37,800 Kai aš praeiti galia 2-- kai aš praeiti 2 į šią funkciją galios, 738 00:38:37,800 --> 00:38:44,430 Šis kintamasis y yra apgyvendintos su tos vertės 2. 739 00:38:44,430 --> 00:38:46,340 Ir kad yra rūšiuoti vyko atmintyje. 740 00:38:46,340 --> 00:38:49,430 Tai tarsi kaip vyksta būklė kažkur kompiuteryje, 741 00:38:49,430 --> 00:38:51,980 mes nerūpi, kaip arba, kur šiuo metu. 742 00:38:51,980 --> 00:38:54,692 >> Bet grįžtu šią funkciją vadinamas exponentiate. 743 00:38:54,692 --> 00:38:57,400 Ir vėl, tai tikrai ne klausimas ką ši funkcija vadinama, 744 00:38:57,400 --> 00:39:01,730 mes tikrai gali skambinti jai nieko, kad priima dvigubai ir grąžina dvigubai, 745 00:39:01,730 --> 00:39:05,640 bet naudoja šią vertę y viduje ji. 746 00:39:05,640 --> 00:39:09,290 Taigi, nors tai ši funkcija, tai exponentiater funkcija, kuri yra 747 00:39:09,290 --> 00:39:13,600 buvo grąžintas atgal į mano kintamasis, aš vadinamas aikštė, 748 00:39:13,600 --> 00:39:17,980 ji joje esančios tai, kas y buvo sąvoka. 749 00:39:17,980 --> 00:39:19,070 Ir tai prisimena, kad. 750 00:39:19,070 --> 00:39:24,810 >> Taigi kiekvieną kartą aš vadinu šią funkciją, kad dabar vadinama aikštė, ji naudoja, kad. 751 00:39:24,810 --> 00:39:27,990 Tačiau tai taip pat reiškia, kad aš galiu sukurti kitą kintamąjį, naudojant 752 00:39:27,990 --> 00:39:29,120 skiriasi galia. 753 00:39:29,120 --> 00:39:33,240 Taigi aš galiu sukurti kubo kintamasis, už Pavyzdžiui, suteikti jai galią 3. 754 00:39:33,240 --> 00:39:37,230 Dabar kubas bus iš tikrųjų imtis kai vertė ir kubas, kad ir grąžinti ją. 755 00:39:37,230 --> 00:39:39,570 Taigi matome, kad aš gausiu vertė 8 iš to. 756 00:39:39,570 --> 00:39:42,720 >> Tačiau ši vertė Y neturi pasikeitė, nes jie 757 00:39:42,720 --> 00:39:44,980 vyks rūšiuoti nepriklausomų kintamųjų. 758 00:39:44,980 --> 00:39:47,480 Jie tarsi vyksta nepriklausomos erdvės atmintyje. 759 00:39:47,480 --> 00:39:51,290 Taigi kubas visada turės x su 3 galia. 760 00:39:51,290 --> 00:39:55,380 Ir aikštė visada turės x su 2 jėgą, kuri 761 00:39:55,380 --> 00:39:58,470 reiškia, kad aikštė bus visada kvadratinių numeriai, kaip aš tikėtis. 762 00:39:58,470 --> 00:40:01,794 Ir kubas visada Cubed numeriai, kaip aš tikėtis. 763 00:40:01,794 --> 00:40:04,960 Tai taip pat reiškia, kad kartais jūs galite kažkiek funky ieško sintaksė rūšiuoti 764 00:40:04,960 --> 00:40:09,030 kur jūs turite galią esant labai dugnas ekrano čia, galia 5. 765 00:40:09,030 --> 00:40:11,410 Ir jūs patenka į rezultatą. 766 00:40:11,410 --> 00:40:14,670 Jūs vadinate šią funkciją, kad yra buvo grąžintas su skaičiumi 4. 767 00:40:14,670 --> 00:40:17,440 Ir taip, kas iš esmės tai yra nuo 4 iki penkto galia, 768 00:40:17,440 --> 00:40:20,830 matome rezultatus ten. 769 00:40:20,830 --> 00:40:23,690 Su manimi iki šiol? 770 00:40:23,690 --> 00:40:26,620 >> Taigi ši idėja yra vadinamas uždarymą, nes tai, ką mes iš esmės darome 771 00:40:26,620 --> 00:40:30,610 yra mes sandarinimo kai kurie duomenys into-- rūšiuoti 772 00:40:30,610 --> 00:40:33,050 telpa šiuos duomenis į funkciją ir mes 773 00:40:33,050 --> 00:40:36,240 galėtų panaudoti šią funkciją. 774 00:40:36,240 --> 00:40:41,480 Dabar tai sintaksė nors iš tikrųjų galite supaprastinti labai daug. 775 00:40:41,480 --> 00:40:45,005 Ir ten daug galimybių Swift šio supaprastinimo. 776 00:40:45,005 --> 00:40:47,780 Ir tai, kokios rūšies vėlesni tikrųjų pažvelgti. 777 00:40:47,780 --> 00:40:51,400 Taigi, 7b, pavyzdžiui, mes pasinaudoti šia patį kodą. 778 00:40:51,400 --> 00:40:54,360 >> Bet dabar, o ne iš tikrųjų apibrėžti funkciją 779 00:40:54,360 --> 00:40:57,910 viduje šio galios veikti ir suteikti jai pavadinimą, 780 00:40:57,910 --> 00:41:00,150 ir tada grįžti pavadinimą tos funkcijos, kuri 781 00:41:00,150 --> 00:41:02,357 tada yra naudojamas kaip dalis dėl šio uždarymo, o ne mes 782 00:41:02,357 --> 00:41:03,440 tik ketina supaprastinti. 783 00:41:03,440 --> 00:41:06,580 Mums nereikia ši funkcija turi būti įvardytas. 784 00:41:06,580 --> 00:41:09,760 Taigi tai yra koncepcija Anoniminis funkcija, kur mes galime tada 785 00:41:09,760 --> 00:41:15,180 priimti kaip indėlį, skliausteliuose čia kintamasis x, kuris yra tipo dvigubai. 786 00:41:15,180 --> 00:41:17,250 >> Mes ketiname grįžti tipo dvigubai. 787 00:41:17,250 --> 00:41:19,830 Ir tada sąvoka, n, yra šios funkcijos pradžia. 788 00:41:19,830 --> 00:41:22,180 Taigi, pastebėti, kad visa tai yra per garbanotas skliausteliuose 789 00:41:22,180 --> 00:41:25,310 ir mes apibrėžti Anoniminis veikti čia. 790 00:41:25,310 --> 00:41:29,910 Tiesiog paprastesnis būdas apibrėžti tą patį dalyką. 791 00:41:29,910 --> 00:41:30,810 Gerai? 792 00:41:30,810 --> 00:41:36,740 Bet laikykis Swift tikrųjų leidžia mums eiti toliau ir supaprastinti dar labiau, 793 00:41:36,740 --> 00:41:40,180 nes tikrai mes ne rūpintis, kad šis parametras yra 794 00:41:40,180 --> 00:41:41,700 pavadintas jokio konkretaus dalyko. 795 00:41:41,700 --> 00:41:48,090 Jis tikrai gali būti vadinamas nieko ir mes vis dar galime naudoti, kad pirmąjį parametrą. 796 00:41:48,090 --> 00:41:53,800 >> Taigi iš tiesų yra ši ypatinga duomenų tipas anonimiškai funkcijas, 797 00:41:53,800 --> 00:41:57,710 ten šis specialus pavadinimas kintamieji anonimiškai funkcijas 798 00:41:57,710 --> 00:42:00,280 kad pradžia su dolerio ženklas ir atstovauja 799 00:42:00,280 --> 00:42:03,785 parametrų numerius, nulis indeksuojami, šiai funkcijai. 800 00:42:03,785 --> 00:42:05,410 Taigi ten pora dalykų vyksta. 801 00:42:05,410 --> 00:42:08,550 Čia aš ruošiuosi grįžti, tada garbanotas petnešomis atstovaujanti funkciją, 802 00:42:08,550 --> 00:42:09,050 tiesa? 803 00:42:09,050 --> 00:42:13,920 >> Atkreipkite dėmesį, kad aš neturiu apibrėžta parametrų tipų ar grįžimas tipo. 804 00:42:13,920 --> 00:42:16,460 Ji iš tiesų gali būti daroma išvada, dėl to, kad parašu 805 00:42:16,460 --> 00:42:18,360 Šio originalaus funkcija. 806 00:42:18,360 --> 00:42:20,500 Taigi, mes galime pašalinti kad kaip galimybę. 807 00:42:20,500 --> 00:42:25,120 Bet taip pat galiu naudoti dolerio ženklas nulio iki atstovauti šį pirmąjį parametrą, kad yra 808 00:42:25,120 --> 00:42:28,200 perėjo į šią anoniminę funkcija. 809 00:42:28,200 --> 00:42:31,630 Taigi supaprastinti dar daugiau. 810 00:42:31,630 --> 00:42:32,750 Gerai? 811 00:42:32,750 --> 00:42:33,820 Iki šiol, taip gerai? 812 00:42:33,820 --> 00:42:36,980 >> Dabar tai tik type-- padaryti jums prisiminti šią dolerio ženklas nulį 813 00:42:36,980 --> 00:42:40,130 mes matėme šiame garbanotais petnešomis mes matėme tik truputį 814 00:42:40,130 --> 00:42:43,870 prieš šiame Swift šešių pavyzdžiui? 815 00:42:43,870 --> 00:42:46,560 Tai buvo čia. 816 00:42:46,560 --> 00:42:48,430 Atkreipkite dėmesį, kad tai tiksliai mes ieškome, kas, 817 00:42:48,430 --> 00:42:51,580 yra tai, kad mes praėjo į šią persėdimais funkcija 818 00:42:51,580 --> 00:42:55,140 Anoniminis funkcija, tikrina pirmąjį parametrą 819 00:42:55,140 --> 00:42:57,830 pamatyti, jei ji lygi dvitaškis simbolis. 820 00:42:57,830 --> 00:42:59,830 Ir tai būtent tai, kas vyksta, yra ta, kad visi 821 00:42:59,830 --> 00:43:02,320 mes doing-- grąžą raktažodis numanomų 822 00:43:02,320 --> 00:43:05,800 Šioje case-- mes grįžti ši vertė kur mes palyginti 823 00:43:05,800 --> 00:43:10,020 pirmasis parametras prieš šio pobūdžio dvitaškis. 824 00:43:10,020 --> 00:43:11,730 Ir taip, kad tarsi demystifies tai. 825 00:43:11,730 --> 00:43:17,210 Ir jūs ketinate pamatyti šį konstruktą Swift sintaksė daug, todėl tai laikyti, kad 826 00:43:17,210 --> 00:43:19,400 omenyje, kai jūs atsižvelgiant į tai žiūrėti. 827 00:43:19,400 --> 00:43:21,970 Dabar mes galime išlipti bėgiai šiek tiek 828 00:43:21,970 --> 00:43:25,460 ir eiti tikrai išgalvotas, kad šou net kai SWIFT galios daugiau. 829 00:43:25,460 --> 00:43:27,950 Galbūt net pamatyti kai iš jų iš pavyzdžių kodus. 830 00:43:27,950 --> 00:43:29,790 Štai kodėl aš ruošiuosi rodo, kad tai jums. 831 00:43:29,790 --> 00:43:37,260 >> Iš esmės tai, ką mes galime padaryti, tai, kad, pirma iš visų, jis buvo natūra Nereikia man 832 00:43:37,260 --> 00:43:41,710 įgyvendinti visi tą valdžią kodas nes jei importuoti Darvinas 833 00:43:41,710 --> 00:43:46,490 biblioteka, ji iš tikrųjų apima funkciją vadinamas pow kad daro tai už jus. 834 00:43:46,490 --> 00:43:50,570 Taigi, mes galime supaprastinti dar labiau ir turime galios iki funkciją dabar tik 835 00:43:50,570 --> 00:43:54,890 būti nuostabią vieną linijinės, kur mes tik grąžinti šią anoniminę funkciją, 836 00:43:54,890 --> 00:44:00,780 priima dolerio ženklas 0 kaip savo bazę ir y jos eksponentė. 837 00:44:00,780 --> 00:44:02,582 >> Tačiau mes galime gauti tikrai, tikrai išgalvotas, kai mes 838 00:44:02,582 --> 00:44:04,790 suprasti, kad Swift daug energijos po gaubtu. 839 00:44:04,790 --> 00:44:07,010 Operatorių daug, kad mes užsiimame, 840 00:44:07,010 --> 00:44:11,270 plius ženklai ir dalybos simboliai ir visi šie dalykai, kad jūs paprastai 841 00:44:11,270 --> 00:44:15,620 dirbti su su duomenų tipų programavimo kalba, 842 00:44:15,620 --> 00:44:17,600 iš tikrųjų yra pailginamas Swift. 843 00:44:17,600 --> 00:44:21,460 Taigi, ką tai reiškia, kad mes gali apibrėžti savo pačių operatorių. 844 00:44:21,460 --> 00:44:26,020 >> Taigi, dabar aš esu pavargęs rašyti visa tai pow ir tada skliaustai ir tada 845 00:44:26,020 --> 00:44:26,520 bazę. 846 00:44:26,520 --> 00:44:27,520 Aš nenoriu to daryti. 847 00:44:27,520 --> 00:44:30,190 Aš iš tikrųjų noriu turėti operatorius, kuris leidžia man tai padaryti. 848 00:44:30,190 --> 00:44:34,510 Taigi galiu pasakyti Swift, kad aš noriu sukurti operatorius, žvaigždė 849 00:44:34,510 --> 00:44:39,472 star-- beje aš negaliu naudoti karatų nes karatais yra operatorius, 850 00:44:39,472 --> 00:44:40,680 daro ką nors kita visiškai. 851 00:44:40,680 --> 00:44:42,720 Taigi, aš nenoriu rūšiuoti nuo susiduria su tuo. 852 00:44:42,720 --> 00:44:45,750 Ir taip, tai ką matote veislės kalbų, įskaitant Python, 853 00:44:45,750 --> 00:44:48,810 yra tarsi star star operatoriaus atstovauti eksponentų. 854 00:44:48,810 --> 00:44:50,730 >> Taigi, kad vienintelė priežastis, kodėl aš padariau tai. 855 00:44:50,730 --> 00:44:53,067 Ir tai bus Iestiprināt tipo operatorius. 856 00:44:53,067 --> 00:44:54,900 Ir aš turiu pateikti jai šiek tiek informacijos 857 00:44:54,900 --> 00:44:58,386 apie tai Vyresniškumo operatorius todėl kairėje asociatyvus. 858 00:44:58,386 --> 00:45:00,260 Tai tarsi palyginti aukštos pirmenybę palyginti 859 00:45:00,260 --> 00:45:02,432 į sumavimo arba dauginimasis. 860 00:45:02,432 --> 00:45:04,140 Tai didesnė pirmenybė nei visi tie. 861 00:45:04,140 --> 00:45:04,931 Taigi, toliau ir taip toliau. 862 00:45:04,931 --> 00:45:07,410 Ir tada aš apibrėžti funkcija, kuri iš tikrųjų 863 00:45:07,410 --> 00:45:10,070 diktuoja, ką šis operatorius daro. 864 00:45:10,070 --> 00:45:14,150 Taigi darant prielaidą, kad turiu kairę pusėje ir dešinėje pusėje, 865 00:45:14,150 --> 00:45:17,330 kuri būtų gal geriau kintamojo vardas už tai. 866 00:45:17,330 --> 00:45:20,690 Kairiosios pusės ir dešinėje pusėje. 867 00:45:20,690 --> 00:45:26,740 Galiu tada šią galią kairėje pusėje, kad dešinėje pusėje 868 00:45:26,740 --> 00:45:28,980 ir grąžinti šią vertę. 869 00:45:28,980 --> 00:45:30,370 Taigi dabar tai super saldus. 870 00:45:30,370 --> 00:45:33,790 Visi mes turime padaryti, tai 2 star 3 ir, kad yra nuo 2 iki trečiosios galia, 871 00:45:33,790 --> 00:45:35,290 ir mes vertė yra 8. 872 00:45:35,290 --> 00:45:40,280 2 star 10 yra nuo 2 iki 10 galia, kurią mes gauname 1,024. 873 00:45:40,280 --> 00:45:43,630 >> Taigi dabar mūsų galia funkcija, kuris vėl yra skirtingas, 874 00:45:43,630 --> 00:45:47,030 nes visa idėja tai buvo tai, kad mes turime vieną funkciją, kuri 875 00:45:47,030 --> 00:45:50,700 visada užtrunka tam tikrą vertę ir daugina it-- ar veikiau 876 00:45:50,700 --> 00:45:53,240 laikosi prie tos pačios galios eksponentų. 877 00:45:53,240 --> 00:45:54,300 Taigi, dabar tai dar paprasčiau. 878 00:45:54,300 --> 00:45:57,070 Taigi, dabar tai tik doleris pasirašyti 0 star m. 879 00:45:57,070 --> 00:46:01,190 Mes net neturime naudoti pow nebėra. 880 00:46:01,190 --> 00:46:03,020 >> Gerai, kas prarasta? 881 00:46:03,020 --> 00:46:03,700 Ar mes darome gerai? 882 00:46:03,700 --> 00:46:05,090 Bet šioje stuff klausimų? 883 00:46:05,090 --> 00:46:05,815 Taip? 884 00:46:05,815 --> 00:46:09,500 >> AUDITORIJA: Kai you-- [nesigirdi] funk galia y dvigubai. 885 00:46:09,500 --> 00:46:11,441 Taigi, kai jūs grįžti funkciją. 886 00:46:11,441 --> 00:46:13,190 DANIEL Armendariz: Funk galia y dvigubai. 887 00:46:13,190 --> 00:46:14,270 Oh yeah, aš nežinau, kas y numeriai. 888 00:46:14,270 --> 00:46:15,708 Atsiprašome apie tai. 889 00:46:15,708 --> 00:46:19,420 >> AUDITORIJA: Kodėl tu grįžti funkcija [nesigirdi] korpusas. 890 00:46:19,420 --> 00:46:24,214 Ar ne doleris nulio žvaigždučių y zvaigzdes [nesigirdi] 891 00:46:24,214 --> 00:46:29,710 rasti, kad operatoriui, kad grįžti dvigubai [nesigirdi] dvigubai? 892 00:46:29,710 --> 00:46:32,742 >> DANIEL Armendariz: Tegul man atsakyti į jūsų klausimą 893 00:46:32,742 --> 00:46:35,950 kaip suprantu ir tu gali man pasakyti, jei aš nesuprantu jūsų klausimą. 894 00:46:35,950 --> 00:46:42,850 Taigi, šis konstruktas, garbanotas petnešomis dolerio ženklas nulis star y 895 00:46:42,850 --> 00:46:44,280 yra funkcija. 896 00:46:44,280 --> 00:46:50,080 Ir ji sutinka parametras, kuris yra atstovauja šio dolerio ženklas nulio. 897 00:46:50,080 --> 00:46:55,830 Grįžimas raktažodis numanomų šiame labai trumpas, anoniminis funkcija sintaksė. 898 00:46:55,830 --> 00:46:57,870 >> Tai reiškia, kad iš esmės ką tai sako 899 00:46:57,870 --> 00:47:01,270 yra tai, kad aš apibrėžti function-- ir tada aš 900 00:47:01,270 --> 00:47:05,320 tik jį vadiname something-- kur turiu šiek vertės m. 901 00:47:05,320 --> 00:47:08,300 I turėti y, kuris yra dvigubai. 902 00:47:08,300 --> 00:47:10,750 Ir aš grįžta dvigubai. 903 00:47:10,750 --> 00:47:19,010 Ir aš turiu per tą deklaraciją y-- Atsiprašome, Aš neturėjo pavadino šį y-- x. 904 00:47:19,010 --> 00:47:20,240 O dieve, oi brangioji, oi brangi. 905 00:47:20,240 --> 00:47:27,440 X-- nope-- star m. 906 00:47:27,440 --> 00:47:29,720 >> Taigi tai yra tik supaprastinta versija tai. 907 00:47:29,720 --> 00:47:33,990 Ir taip todėl, kad turiu doleris ženklas nulis yra tai, kad naudojant šią kamerą 908 00:47:33,990 --> 00:47:41,050 reiškia, kad aš jau nebeturi įveskite Pow, arba nebegali padaryti 909 00:47:41,050 --> 00:47:45,570 Turiu kažką daryti kaip 3 star 2. 910 00:47:45,570 --> 00:47:48,530 Galiu tik turėti vieną funkcija vadinama aikštė 911 00:47:48,530 --> 00:47:50,820 kad bus visada kai kaip pirkimo vertė 912 00:47:50,820 --> 00:47:52,980 ir iš tikrųjų grįžti į kvadratą. 913 00:47:52,980 --> 00:47:56,460 >> Taigi, visa tikslas uždarymo yra tiesiog tarsi piliulę tai 914 00:47:56,460 --> 00:47:59,920 kad aš visada nori naudotis y kai Aš vadinu šią funkciją kaip galios 915 00:47:59,920 --> 00:48:01,710 Vartojant šį eksponentų. 916 00:48:01,710 --> 00:48:04,650 Taigi grįžtant tada, funkcija, kuri priima 917 00:48:04,650 --> 00:48:08,460 dviguba, kuris yra bazinis, ir grąžinant tos eksponentė rezultatą 918 00:48:08,460 --> 00:48:10,740 yra raktas čia. 919 00:48:10,740 --> 00:48:12,790 Ir tai pagrindinis skirtumas. 920 00:48:12,790 --> 00:48:14,430 Čia buvo tik iš klestėti tiek. 921 00:48:14,430 --> 00:48:17,970 >> Tai nėra kitoks palyginti su ankstesnių pavyzdžių, 922 00:48:17,970 --> 00:48:20,530 bet tai buvo tik šiek tiek klestėti mes iš tikrųjų gali 923 00:48:20,530 --> 00:48:24,500 sukurti operatorių Swift ir iš tikrųjų stuff su juo, 924 00:48:24,500 --> 00:48:26,396 kuris yra tipo vėsioje dalykas. 925 00:48:26,396 --> 00:48:27,520 Ar aš atsakyti į jūsų klausimą? 926 00:48:27,520 --> 00:48:28,390 Saldūs. 927 00:48:28,390 --> 00:48:31,350 Kitoks kol mes pereiti? 928 00:48:31,350 --> 00:48:33,570 Gerai. 929 00:48:33,570 --> 00:48:36,430 >> Dabar tai tarsi maldauja klausimas yra that-- gerai Gerai 930 00:48:36,430 --> 00:48:40,870 dabar mes turime už galimybę funkcijos turi būti grąžintas. 931 00:48:40,870 --> 00:48:48,950 Ar mes taip pat perduoti funkcijas kaip duomenų arba parametrų kitų funkcijų? 932 00:48:48,950 --> 00:48:50,710 Ir iš tiesų, mes galime. 933 00:48:50,710 --> 00:48:53,480 Taigi tarkime, kad mes turime visi tuo pačiu kodu. 934 00:48:53,480 --> 00:48:56,120 Mes turime kvadratinę kintamasis kad bus suvesti šį kodą. 935 00:48:56,120 --> 00:48:59,320 Ir mes turime kubo kintamasis kad bus kubas kai kuriuos duomenis. 936 00:48:59,320 --> 00:49:02,440 Ir mes iš tikrųjų norime taikyti į platų skaičių. 937 00:49:02,440 --> 00:49:06,870 >> Taigi, ką mes galime bandyti daryti, Žinoma, kuri yra žinoma, galioja, 938 00:49:06,870 --> 00:49:15,430 yra Iterate per šį numerių sąraše ir taikyti mano funkcijos kvadrato ir kubo 939 00:49:15,430 --> 00:49:22,270 ir gauti du naujus sąrašus, kaip rezultatus kad yra tai Pradinis sąrašas kvadrato 940 00:49:22,270 --> 00:49:24,970 ir Cubed, atitinkamai. 941 00:49:24,970 --> 00:49:26,880 Puikiai priimtinas. 942 00:49:26,880 --> 00:49:29,130 Bet kas, ką, kad matome čia yra, kad mes turime, 943 00:49:29,130 --> 00:49:31,310 vėl, dubliavimo mūsų kodą. 944 00:49:31,310 --> 00:49:34,310 Ir ten gal galimybė mums supaprastinti tai truputį. 945 00:49:34,310 --> 00:49:41,260 Ką daryti, jei ten buvo būdas mums iš tikrųjų visada kartoti per tam tikrą sąrašą 946 00:49:41,260 --> 00:49:45,450 ir tiesiog pereiti į tai stebuklinga veikti kintamąjį, kad 947 00:49:45,450 --> 00:49:47,350 žymi funkciją kad mes norite taikyti 948 00:49:47,350 --> 00:49:50,336 į kiekvieną elementą šio sąrašo. 949 00:49:50,336 --> 00:49:53,210 Tai iškelia sąvoką, kas vadinami aukštesnės eilės funkcijas. 950 00:49:53,210 --> 00:49:57,150 Ir tai yra iš esmės, ką šis yra, yra ta, kad galėtume sukurti funkciją. 951 00:49:57,150 --> 00:50:00,210 >> Ir šiuo atveju ji vadinama Mapper, tiesiog suteikti jai pavadinimą, tiesiog 952 00:50:00,210 --> 00:50:02,510 kartografavimas per kiekvieną vieną elementą iš sąrašo. 953 00:50:02,510 --> 00:50:06,191 Kur aš sąrašą ir aš funkciją. 954 00:50:06,191 --> 00:50:08,440 Ir kad funkcija, žinoma, turi tam tikrą parašą. 955 00:50:08,440 --> 00:50:11,980 Ji pripažįsta, kaip parametras dvigubai ir jis bus produkcija yra dvigubai. 956 00:50:11,980 --> 00:50:14,310 Ir visa rezultatas ši funkcija vyksta 957 00:50:14,310 --> 00:50:18,921 būti naujas sąrašas, kad yra tipo dvigubai. 958 00:50:18,921 --> 00:50:19,420 Gerai? 959 00:50:19,420 --> 00:50:22,650 >> Ir tai, ką aš ruošiuosi daryti yra taikyti šią funkciją f 960 00:50:22,650 --> 00:50:24,960 kiekvienam į savo sąrašą elementas. 961 00:50:24,960 --> 00:50:30,280 Ir reply-- ir gana grįžti ši nauja sąrašas, kaip rezultatas, kuris tikrai cool. 962 00:50:30,280 --> 00:50:31,820 Dabar galiu perduoti funkcijas aplink. 963 00:50:31,820 --> 00:50:35,290 Ir šis aukštesnės eilės idėja funkcijos yra tikrai svarbus. 964 00:50:35,290 --> 00:50:39,260 Ir tai Mapper yra tikrai tik beturčio įgyvendinimas 965 00:50:39,260 --> 00:50:43,130 apie funkciją, kuri yra pastatytas į Swift vadinamas žemėlapį. 966 00:50:43,130 --> 00:50:45,690 Ir tai daro būtent tai, galbūt net šiek tiek geriau. 967 00:50:45,690 --> 00:50:48,260 >> Tai tiesiog tarsi bendriniu, supaprastinta versija, kad 968 00:50:48,260 --> 00:50:51,270 leidžia mums pamatyti sąvoka, kuri taikoma čia. 969 00:50:51,270 --> 00:50:54,630 Dabar pažvelgti į tai, kaip aš iš tikrųjų gali kreiptis savo aikštėje 970 00:50:54,630 --> 00:50:57,850 ir mano kubo funkcijos į šį numerių sąraše. 971 00:50:57,850 --> 00:50:58,780 Aš paleisti savo mapper. 972 00:50:58,780 --> 00:51:00,280 Aš suteikti jai savo sąrašą numerius. 973 00:51:00,280 --> 00:51:02,155 Aš suteikti jai į funkcija, kuri vyksta 974 00:51:02,155 --> 00:51:04,170 taikyti, kad kiekviena iš šių indeksų. 975 00:51:04,170 --> 00:51:07,120 Ir tai bus išėjimo, kaip rezultatas. 976 00:51:07,120 --> 00:51:11,810 Ir aš pamatys, kad aš kvadrato ir Cubed savo numerius, kaip rezultatas. 977 00:51:11,810 --> 00:51:14,660 >> Ir, žinoma, Mapper užtruks bet anoniminio funkcija rūšiuoti. 978 00:51:14,660 --> 00:51:17,640 Mes galime pamatyti, kad aš sukūriau Naujas anoniminė funkcija, 979 00:51:17,640 --> 00:51:20,220 tereikia šiek parametrą ir ją dalina iš 2. 980 00:51:20,220 --> 00:51:24,340 Ir mes galime pamatyti, kad aš, tiesą sakant, suskirstyti savo sąrašą 2 vietoj. 981 00:51:24,340 --> 00:51:25,250 Cool? 982 00:51:25,250 --> 00:51:27,340 Iki šiol, taip gerai? 983 00:51:27,340 --> 00:51:29,650 Gerai, dabar tegul grįžti į šią idėją. 984 00:51:29,650 --> 00:51:36,160 Leiskite įgyvendinti šią atgal iš gradebook kontekstas. 985 00:51:36,160 --> 00:51:41,860 >> Ir jei aš tai padaryti, mes galime pamatyti, kad aš galiu taikyti įvairius šių options-- 986 00:51:41,860 --> 00:51:44,330 arba įvairių šių Aukštesnio lygmens funkcijos 987 00:51:44,330 --> 00:51:51,450 kad iš tikrųjų supaprastinti savo gebėjimą atlikti įvairių dalykų sąrašus numerius. 988 00:51:51,450 --> 00:51:53,660 Taigi, pavyzdžiui, jei aš imtis numerių sąrašą, 989 00:51:53,660 --> 00:51:57,060 vienas iš aukštesnių eilės funkcijų kad egzistuoja vadinama sumažinti. 990 00:51:57,060 --> 00:52:00,080 Kas sumažinti daro, o nei žemėlapyje, sumažėja bus 991 00:52:00,080 --> 00:52:03,710 paimti du elementus sąraše, bus šiek tiek funkciją, 992 00:52:03,710 --> 00:52:07,420 palygina du elementus: sąrašas ir jis bus tada 993 00:52:07,420 --> 00:52:09,610 rūšiuoti output-- produkcija šią funkciją 994 00:52:09,610 --> 00:52:13,790 bus dar vienas elementas, tada palyginti su kitais. 995 00:52:13,790 --> 00:52:18,190 >> Taigi jums gali tai naudoti, kad iš tikrųjų suma iš jūsų sąrašo numerius. 996 00:52:18,190 --> 00:52:20,640 Pavyzdžiui, jei turėjo iš 1, sąrašas, 2, 3, 4, 5, 997 00:52:20,640 --> 00:52:22,940 Jums žengti pirmuosius elementus 1 ir 2. 998 00:52:22,940 --> 00:52:27,270 Galite kreiptis į jį papildymo funkcija, į tuos du elementus 999 00:52:27,270 --> 00:52:30,980 ir išspjauna vieną iš šių elementų, kuris būtų vertė 3. 1000 00:52:30,980 --> 00:52:35,684 Tada mes tą vertę 3 su kitais elementas sąraše, sudeda tie du, 1001 00:52:35,684 --> 00:52:37,100 ir tada toliau žemyn sąrašą. 1002 00:52:37,100 --> 00:52:40,410 >> Mes mažinti sąrašą, kad vieno vertę. 1003 00:52:40,410 --> 00:52:42,700 Ir tai tiesiog taip atsitinka, kad pliuso simbolį 1004 00:52:42,700 --> 00:52:44,670 yra operatorius, kaip mes ką tik matė. 1005 00:52:44,670 --> 00:52:47,500 Tai operatorius iš tikrųjų funkcija, 1006 00:52:47,500 --> 00:52:53,100 turi tiksliai šį sąrašą, kad mes norėtų, o šių savybių 1007 00:52:53,100 --> 00:52:54,770 kad mes norime. 1008 00:52:54,770 --> 00:52:56,760 Taigi raginu jus Paimkite šį išvaizdą. 1009 00:52:56,760 --> 00:52:59,290 Noriu rūšiuoti kelyje nuo kai kurių šio kodekso 1010 00:52:59,290 --> 00:53:05,330 taip, kad mes iš tikrųjų galite pažvelgti į kai faktinis, realus, tiesa SWIFT Xcode, 1011 00:53:05,330 --> 00:53:06,880 Ios plėtrai. 1012 00:53:06,880 --> 00:53:08,630 Tačiau pažvelgti tai ir pamatyti, jei jūs galite 1013 00:53:08,630 --> 00:53:11,171 apdoroti per tai, kas vyksta kai kurie iš šių aukštesnės eilės 1014 00:53:11,171 --> 00:53:13,790 funkcijos, įskaitant filtro, sumažinti, ir jums net 1015 00:53:13,790 --> 00:53:17,060 matyti kažkur čia map taip pat. 1016 00:53:17,060 --> 00:53:17,910 Tai čia. 1017 00:53:17,910 --> 00:53:20,410 Kur ji imsis seka pažymių ir jis bus iš tikrųjų 1018 00:53:20,410 --> 00:53:24,230 žemėlapį juos naudojant jungiklį konstruktą, kurį gali atpažinti iš C, 1019 00:53:24,230 --> 00:53:27,640 bet iš tikrųjų tai yra daug daugiau galingesnis nei jungiklio konstrukcija 1020 00:53:27,640 --> 00:53:29,810 kad mes turime C 1021 00:53:29,810 --> 00:53:31,930 >> Ir mes taikyti, kad būtų kas sąraše elementas 1022 00:53:31,930 --> 00:53:34,540 ir faktiškai teikia laišką klasės kiekvieno 1023 00:53:34,540 --> 00:53:40,780 tų klasių, naudojant visas šias sąvokas kad mes ką tik kalbėjome apie anksčiau. 1024 00:53:40,780 --> 00:53:44,760 Dabar tegul išsisukti tik už minučių ir kalbėti apie structs. 1025 00:53:44,760 --> 00:53:49,680 Ir taip structs yra C laukti, kad mes galėjo apibrėžti naują duomenų rūšį,. 1026 00:53:49,680 --> 00:53:53,590 Structs egzistuoja Swift. 1027 00:53:53,590 --> 00:53:58,980 Ir taip daryti kitų konstruktų daug vadinami enums ir klases, kad tikrai 1028 00:53:58,980 --> 00:54:01,175 pasinaudoti šia idėją Visa kitą lygį. 1029 00:54:01,175 --> 00:54:05,300 >> Ir iš esmės tai tik būdas apibrėžti naują duomenų rūšį,. 1030 00:54:05,300 --> 00:54:11,010 Taigi, jei jūs get-- jei ateis visoje klasėje ar structs ar enums, 1031 00:54:11,010 --> 00:54:13,290 nereikia susipainioti juo. 1032 00:54:13,290 --> 00:54:16,280 Tai tiesiog apibrėžti būdas kai kurių naujų pirma duomenų tipas. 1033 00:54:16,280 --> 00:54:20,230 Ir tai yra labai svarbu, kai mes kalbame apie iOS app plėtra 1034 00:54:20,230 --> 00:54:24,630 nes viskas, egzistuoja per iOS app 1035 00:54:24,630 --> 00:54:27,460 iš esmės yra tam tikros rūšies objektas. 1036 00:54:27,460 --> 00:54:31,980 Ir tikslas yra iš esmės klasės ar pervedimą arba konstrukto. 1037 00:54:31,980 --> 00:54:34,760 >> Taigi šiuo atveju aš apibrėžiant naują duomenų rūšį, 1038 00:54:34,760 --> 00:54:37,740 kad aš raginama įvertinti tai kai savybėmis, įskaitant 1039 00:54:37,740 --> 00:54:41,040 pavadinimas ir pažymių seka. 1040 00:54:41,040 --> 00:54:43,470 Taigi, vieno tipo įvertinimo kad galėčiau turėti omenyje, 1041 00:54:43,470 --> 00:54:44,760 Būtų viktorinos, pavyzdžiui. 1042 00:54:44,760 --> 00:54:48,180 Norėčiau turėti vertinimas buvo viktorina 1043 00:54:48,180 --> 00:54:51,460 ir kad turėjo klasių įvairovė susijęs su tuo, už viktorina vieną, 1044 00:54:51,460 --> 00:54:52,840 Testas du, taip toliau ir taip toliau. 1045 00:54:52,840 --> 00:54:55,720 >> Arba aš gali turėti kitą tipo vertinimo probleminėms rinkinių. 1046 00:54:55,720 --> 00:54:56,650 Ir aš galiu padaryti dalykus. 1047 00:54:56,650 --> 00:54:59,860 Aš iš tikrųjų gali turėti funkcijas pagal šio tipo 1048 00:54:59,860 --> 00:55:02,645 Duomenų, kurie dabar vadinami metodai. 1049 00:55:02,645 --> 00:55:04,520 Taigi, jei jūs kada nors pamatyti Žodis metodas, tai tikrai 1050 00:55:04,520 --> 00:55:08,190 yra tik funkcija, kuri taikoma labai konkrečios klasės, 1051 00:55:08,190 --> 00:55:10,100 arba su labai specifinio tipo duomenimis. 1052 00:55:10,100 --> 00:55:12,350 Tai leidžia mus keisti duomenis per. 1053 00:55:12,350 --> 00:55:15,510 >> Taigi, kitaip tariant, jei aš noriu pridėti pažymį į savo vertinimą 1054 00:55:15,510 --> 00:55:18,630 tada visa, ką reikia padaryti, tai pridėti rezultatas, kuris buvo įėjimas 1055 00:55:18,630 --> 00:55:22,660 į šią funkciją mano vidinis nuosavybė. 1056 00:55:22,660 --> 00:55:25,880 Yra dar vienas tvarkingas konstruktas čia Swift, kuri yra tai dot dot dot 1057 00:55:25,880 --> 00:55:31,780 operatorius, o tai reiškia, kad rezultatai gali dabar priimti bet sveikieji skaičiai, skaičių. 1058 00:55:31,780 --> 00:55:33,940 Ir balai bus sveikųjų skaičių masyvas, kad 1059 00:55:33,940 --> 00:55:39,030 buvo perduota į mano tarnybą, kuri tai reiškia, kad aš galiu padaryti stuff, kaip šis. 1060 00:55:39,030 --> 00:55:42,360 >> Galiu padaryti pridėti pažymius ir tiesiog suteikti savavališkų numeriai sveikieji į jį 1061 00:55:42,360 --> 00:55:47,420 ir iš tikrųjų būti teikiama masyvą tų mano funkcijos reikšmių 1062 00:55:47,420 --> 00:55:50,270 ar mano metodas, kaip yra šiuo atveju. 1063 00:55:50,270 --> 00:55:54,040 Dabar tai yra svarbu, nes viskas Xcode, viskas iOS, 1064 00:55:54,040 --> 00:55:56,250 iš tikrųjų yra objektas. 1065 00:55:56,250 --> 00:55:59,630 Taigi keep that in mind kai mes biustas atvirą Xcode 1066 00:55:59,630 --> 00:56:04,890 ir praleisti į priekį už "iOS" dviejų ir trijų versijų 1067 00:56:04,890 --> 00:56:08,820 ir iš tikrųjų eiti į keturias versiją. 1068 00:56:08,820 --> 00:56:11,940 >> Ir dar, visa tai bus būti paskelbtas seminaro puslapyje. 1069 00:56:11,940 --> 00:56:16,980 "iOS keturi yra tarsi visiškai išsiskleidęs įgyvendinimas labai pagrindinio app. 1070 00:56:16,980 --> 00:56:23,920 Ir ką ši programa daro tai įkelia UI, kuris atrodo kaip šis. 1071 00:56:23,920 --> 00:56:28,680 Vėlgi, jei mes paspauskite ant siužetinės linijos mes galime matyti, kad tai, kaip jis atrodo. 1072 00:56:28,680 --> 00:56:31,320 Tai sąsaja. 1073 00:56:31,320 --> 00:56:33,676 Ji pačiame viršuje titulą. 1074 00:56:33,676 --> 00:56:34,800 Aš jį pavadino interneto galerija. 1075 00:56:34,800 --> 00:56:38,400 >> Viduryje ten elementas vadinamas UI vaizdas vaizdas. 1076 00:56:38,400 --> 00:56:41,340 Ir apačioje ten įrankių juosta su vienu mygtuko, kad 1077 00:56:41,340 --> 00:56:46,850 turi Elastingas erdves, kad ji galėtų centras viduryje šioje juostoje. 1078 00:56:46,850 --> 00:56:51,780 O kas atsitinka, kad kai šis krovinių ir jį parsisiųsti į JSON failą, kad yra 1079 00:56:51,780 --> 00:56:55,540 esančios serveryje kitur, suvokia, kad JSON failą, 1080 00:56:55,540 --> 00:56:58,130 ir JSON failas atrodo kaip tai tiek. 1081 00:56:58,130 --> 00:57:02,770 1082 00:57:02,770 --> 00:57:06,230 JSON failas atrodo taip. 1083 00:57:06,230 --> 00:57:08,650 Ten ji yra. 1084 00:57:08,650 --> 00:57:11,730 >> Ji albumo pavadinimą ir ji turi nuotraukų masyvo. 1085 00:57:11,730 --> 00:57:13,490 Kiekvienas iš šių nuotraukų turėti pavadinimą, o taip pat 1086 00:57:13,490 --> 00:57:19,460 patys URL, atstovauti jpeg versija, kad individualios nuotrauką. 1087 00:57:19,460 --> 00:57:24,780 Taigi, kas atsitiks tai, kad kai ši programa kroviniai, jis atsisiunčia JSON failą, 1088 00:57:24,780 --> 00:57:30,590 analizuoja ją, kelia visa tai į AN iOS masyvo lygiavertis 1089 00:57:30,590 --> 00:57:33,020 App plėtrą, kuri yra nsarray. 1090 00:57:33,020 --> 00:57:37,520 Ir tada aš galiu tada įkelti šie duomenys į programą 1091 00:57:37,520 --> 00:57:41,100 ir įkelti jį ant mano ekrano. 1092 00:57:41,100 --> 00:57:44,760 >> Yra vaizdas, kuris buvo pakrautas su Pačioje apačioje mygtuką. 1093 00:57:44,760 --> 00:57:49,190 Jei aš spustelėkite Gauti Kita nuotrauka, tai tada traukia, kad vaizdas iš interneto 1094 00:57:49,190 --> 00:57:53,370 ir pakeičia, kad vaizdas į UI vaizdų nuomone. 1095 00:57:53,370 --> 00:57:57,820 Taigi jūs galite atsisiųsti šį ir iš tikrųjų į ją pažvelgti į savo kompiuterį. 1096 00:57:57,820 --> 00:58:00,940 Ir statyti ir iš tikrųjų kaupia jį ant savo prietaiso. 1097 00:58:00,940 --> 00:58:04,710 Bet iš esmės procesas tai, sukurti storyboard-- 1098 00:58:04,710 --> 00:58:08,080 ar veikiau ne create-- bet pasirinkti siužetinės linijos. 1099 00:58:08,080 --> 00:58:15,030 Ir iš tikrųjų we'll-- jei jūs neturite mind-- mes priimsime tik keletą sekundžių 1100 00:58:15,030 --> 00:58:18,390 realiai parodyti jums, kaip tai buvo padaryta. 1101 00:58:18,390 --> 00:58:22,430 1102 00:58:22,430 --> 00:58:27,820 >> Tiesiog taip, kad tai, kaip mes galime iš tikrųjų tai pasiekti yra pagamintas šiek tiek daugiau 1103 00:58:27,820 --> 00:58:28,360 akivaizdu. 1104 00:58:28,360 --> 00:58:30,651 Vienvietis vaizdas taikymas, aš ketinate skambinti šiuo seminarą 1105 00:58:30,651 --> 00:58:35,330 keturi atstovauja tai pirma, skaičius. 1106 00:58:35,330 --> 00:58:36,335 Išsaugokite ją ant darbastalio. 1107 00:58:36,335 --> 00:58:39,890 1108 00:58:39,890 --> 00:58:42,110 Gerai, einu į spustelėkite siužetinės linijos. 1109 00:58:42,110 --> 00:58:47,030 Ir tai, ką aš ruošiuosi daryti yra rasti savo vaizdo rodinį, 1110 00:58:47,030 --> 00:58:50,940 vilkite jį į mano vartotojo sąsaja ir centro jis. 1111 00:58:50,940 --> 00:58:54,850 Dabar tik centravimo ją, deja, nesiruošia daryti visai daug, 1112 00:58:54,850 --> 00:58:58,680 išskyrus ekrane kad tai yra tikslus dydis. 1113 00:58:58,680 --> 00:59:03,950 >> Taigi, mes galime įtikinti save ir kad spustelėję šią dvigubo apskritimo dalykas, 1114 00:59:03,950 --> 00:59:08,290 mažinant šį pasipriešinimo meniu čia ir keičiasi 1115 00:59:08,290 --> 00:59:11,110 peržiūrėti, kur mes iš tikrųjų gauti galimybę pamatyti, kaip 1116 00:59:11,110 --> 00:59:13,530 tai iš tikrųjų atrodo ant kitų įrenginių. 1117 00:59:13,530 --> 00:59:16,500 Kaip matome, mes net ne pamatyti jį šiuo konkrečiu atveju. 1118 00:59:16,500 --> 00:59:18,500 Taigi, aš ruošiuosi uždaryti šį dabar. 1119 00:59:18,500 --> 00:59:22,100 >> Ir aš ruošiuosi pasirinkti ši piktograma žemyn labai 1120 00:59:22,100 --> 00:59:23,910 apačios dalis ekrane. 1121 00:59:23,910 --> 00:59:26,584 Ji sako išspręsti Auto išdėstymas klausimais. 1122 00:59:26,584 --> 00:59:28,000 Atsiprašome, jis nukirto apačioje. 1123 00:59:28,000 --> 00:59:36,360 Bet jei aš spustelėkite, kad tai, ką aš gauti yra tai pop up-- išeiti. 1124 00:59:36,360 --> 00:59:39,740 1125 00:59:39,740 --> 00:59:51,220 Kas man yra tai, kad pop-up leidžia man pridėti trūkstamus apribojimus. 1126 00:59:51,220 --> 00:59:53,780 Ir tai, kad ji Tada tarsi užrakinti 1127 00:59:53,780 --> 00:59:56,640 į centrą daliai ekranas kaip galiu tikėtis. 1128 00:59:56,640 --> 01:00:00,520 >> Dabar norint gauti šį mygtuką Top jo, man reikia eiti į redaktoriaus. 1129 01:00:00,520 --> 01:00:05,010 Eiti į Įterpti ir spauskite Navigacijos kontrolierius. 1130 01:00:05,010 --> 01:00:08,900 Kas, kad bus padaryti, tai, kad bus pridėti visas šis komponentas, kitas į jį, 1131 01:00:08,900 --> 01:00:11,310 bet tai tikrai bus susieti jį atgal prie mano originalios UI. 1132 01:00:11,310 --> 01:00:14,450 Ir detalės, ir vėl, mes neturime tikrai reikia rūpintis dabar. 1133 01:00:14,450 --> 01:00:16,710 Bet aš noriu turėti įrankių pačioje apačioje. 1134 01:00:16,710 --> 01:00:18,530 Taigi aš patikrinimas rodo, įrankių juostą. 1135 01:00:18,530 --> 01:00:21,870 >> Ir tai suteikia per mano nuomone, kuris dabar yra kažkur kitur, 1136 01:00:21,870 --> 01:00:23,900 matome tai susiję čia. 1137 01:00:23,900 --> 01:00:28,710 Dabar ji suteikia įrankių juostą tuo savo UI apačioje. 1138 01:00:28,710 --> 01:00:34,770 Taigi, dabar, o ne pasirinkdami vaizdas vaizde galiu rasti etiketę, 1139 01:00:34,770 --> 01:00:41,140 ar veikiau toolbar-- pažiūrėkime, kur tai yra? 1140 01:00:41,140 --> 01:00:41,890 Ką jis vadinamas? 1141 01:00:41,890 --> 01:00:49,760 Button-- punktas bar-- item-- sorry-- baras mygtuką punktas. 1142 01:00:49,760 --> 01:00:54,590 Staiga, kad ir taikyti pora lanksčių tarpai iš abiejų pusių 1143 01:00:54,590 --> 01:00:57,429 faktiškai centras, kuris. 1144 01:00:57,429 --> 01:00:58,970 Taigi, dabar aš sukūriau savo UI, iš esmės. 1145 01:00:58,970 --> 01:01:01,428 Ir aš galiu duoti jai vardą dukart spragtelėjus pačiame viršuje 1146 01:01:01,428 --> 01:01:04,880 čia ir pasakyti, web galerija ir pan. 1147 01:01:04,880 --> 01:01:08,100 Dabar vėl, šie elementai kad egzistuoja patys. 1148 01:01:08,100 --> 01:01:10,400 Ir aš turiu prisijungti jiems mano kodas, kuris 1149 01:01:10,400 --> 01:01:14,297 Galiu padaryti vėl pareikšti iki šio dvigubo apskritimo piktogramą, 1150 01:01:14,297 --> 01:01:15,380 keičiasi iš peržiūros. 1151 01:01:15,380 --> 01:01:18,950 Kuris, beje, dabar matome, yra gražiai centre ir atrodys gerai 1152 01:01:18,950 --> 01:01:23,720 ant įvairių prietaisų. 1153 01:01:23,720 --> 01:01:27,280 >> Perjungti į automatinis, kurie bus auklėti ViewController kodą. 1154 01:01:27,280 --> 01:01:29,030 Ir dabar ši dalis yra labai svarbi. 1155 01:01:29,030 --> 01:01:34,590 Kad galėtumėte prijungti juos du elementai, jūsų kodas UI, 1156 01:01:34,590 --> 01:01:36,680 Pasirinkus elementą, norite prisijungti. 1157 01:01:36,680 --> 01:01:39,570 Taigi, šiuo atveju, mes iš tikrųjų nori koduoti 1158 01:01:39,570 --> 01:01:43,520 pakeisti įvaizdį, kad manimi esančią per šį UI vaizdų nuomone. 1159 01:01:43,520 --> 01:01:47,070 Taigi, jei jums kontroliuoti spustelėkite iš vaizdas vaizdas ir vilkite, 1160 01:01:47,070 --> 01:01:51,960 jūs pastebėsite, kad jūs gaunate šiek tiek juostą, kai jūs atleiskite visko tai pop 1161 01:01:51,960 --> 01:01:53,550 iki įvyks. 1162 01:01:53,550 --> 01:01:56,470 >> Ir ji sako, kad mes sukurti ryšį. 1163 01:01:56,470 --> 01:01:59,300 Ir iš čia aš noriu duoti vardas, kažkas panašaus į galeriją. 1164 01:01:59,300 --> 01:02:00,240 Paspauskite Enter. 1165 01:02:00,240 --> 01:02:03,040 Ir tai iš tikrųjų suteikia kintamasis vadinamas galerija 1166 01:02:03,040 --> 01:02:08,600 kad aš tada gali nuoroda į mano kodas pakeisti vaizdą, pavyzdžiui. 1167 01:02:08,600 --> 01:02:10,430 Taigi, kaip, kad kodas iš tikrųjų atrodo? 1168 01:02:10,430 --> 01:02:13,030 Na vėl, aš nenoriu per daug laiko praleidžia ant jo. 1169 01:02:13,030 --> 01:02:15,430 Ir raginu jus jį atsisiųsti ir pažvelgti. 1170 01:02:15,430 --> 01:02:18,330 Tačiau vienas iš labiausiai svarbus aspektas yra kodas 1171 01:02:18,330 --> 01:02:20,980 kad iš tikrųjų ima vaizdą. 1172 01:02:20,980 --> 01:02:26,470 >> Taigi šiuo atveju aš noriu gauti per mano nuotraukas 1173 01:02:26,470 --> 01:02:28,520 masyvo, kuris yra pateiktas per mano klasėje. 1174 01:02:28,520 --> 01:02:33,390 Noriu apibrėžti pavadinimą ir URL kad buvo apdoroti iš šio JSON. 1175 01:02:33,390 --> 01:02:39,810 Tiesą sakant paklausti prietaisą gauti URL atnešti URL iš to, 1176 01:02:39,810 --> 01:02:44,060 ir tada paimti duomenis iš tos URL turinį. 1177 01:02:44,060 --> 01:02:49,430 Tada konvertuoti šiuos duomenis į atvaizdą praleidžiant jį į UI vaizdą. 1178 01:02:49,430 --> 01:02:52,880 Taigi dar kartą, visa tai yra skirtingų tipų objektų, skirtingų tipų klasių. 1179 01:02:52,880 --> 01:02:58,410 >> Ir tada aš galiu tada nustatykite savo gallery.image lygi šių duomenų. 1180 01:02:58,410 --> 01:03:00,750 Ir tai tarsi mėsos tai, kad iš tikrųjų yra tada 1181 01:03:00,750 --> 01:03:08,250 galėtų pakeisti duomenų from-- pokyčius Vaizdas iš vieno į kitą. 1182 01:03:08,250 --> 01:03:10,660 Taigi dar kartą, tikiuosi dabar iš konstruoja daug 1183 01:03:10,660 --> 01:03:12,240 bus šiek tiek daugiau prasmės. 1184 01:03:12,240 --> 01:03:15,260 Atkreipkite dėmesį, kad yra keletas šauktukų čia. 1185 01:03:15,260 --> 01:03:19,810 Į šauktukų yra iš esmės susiję su Papildomi reikmenys. 1186 01:03:19,810 --> 01:03:22,657 >> Ką aš iš esmės pasakyti, kad net tikrinti 1187 01:03:22,657 --> 01:03:24,490 pamatyti, jei ten duomenys per tai neprivaloma, 1188 01:03:24,490 --> 01:03:27,140 Aš ruošiuosi eiti į priekį ir daryti prielaidą, kad yra ir išvystyti jį. 1189 01:03:27,140 --> 01:03:31,340 Atminkite, kad mes panaudojome analogiją tarsi už Papildomi reikmenys pakuotėje 1190 01:03:31,340 --> 01:03:34,700 ir mes turime išvystyti paketas ir traukti duomenis iš. 1191 01:03:34,700 --> 01:03:37,570 Šauktukas jėgos, kurios iš tikrųjų įvyktų. 1192 01:03:37,570 --> 01:03:39,590 >> Bet aš žinau, kad tai yra saugūs, nes aš patikrinti 1193 01:03:39,590 --> 01:03:42,070 pamatyti, jei vaizdo duomenys yra lygus iki nulio, aš iš tikrųjų patikrinti 1194 01:03:42,070 --> 01:03:45,420 pamatyti, jei tai neprivaloma iš tiesų buvo, nepavyko. 1195 01:03:45,420 --> 01:03:47,110 Jei tai buvo iš tikrųjų nepavyko jau. 1196 01:03:47,110 --> 01:03:52,450 Ir todėl aš tikiu, kad kai gaunu tai I punkte galima saugiai išsivynioti, kad duomenis. 1197 01:03:52,450 --> 01:03:55,710 Jūs taip pat gali matyti iš klaustuko forma. 1198 01:03:55,710 --> 01:03:59,100 Taigi, jei mes slinkti žemyn, kur aš reikia realiai apdoroti duomenis. 1199 01:03:59,100 --> 01:04:01,850 >> Taigi nereikia atidėlioti tai ilgų pavadinimų rūšiuoti. 1200 01:04:01,850 --> 01:04:06,580 Jūs galite rasti, kad "Apple" kūrėjas svetainė aikštelė 1201 01:04:06,580 --> 01:04:09,620 nuorodų į visus objektai ir visi procesai, 1202 01:04:09,620 --> 01:04:11,170 kad iš tikrųjų tai padaryti. 1203 01:04:11,170 --> 01:04:15,990 Bet pranešimas, kad tai yra iš esmės funkcija, kur aš perduoti jį tam tikrus duomenis. 1204 01:04:15,990 --> 01:04:18,410 Ir aš grįšiu šiek tiek duomenų rūšiuoti. 1205 01:04:18,410 --> 01:04:24,190 Ir man reikia naudoti tai kaip raktinis žodis konvertuoti jį į šį nsdictionary? 1206 01:04:24,190 --> 01:04:26,490 Kuris yra vėl, neprivaloma nsdictionary. 1207 01:04:26,490 --> 01:04:31,070 Kuris man tada reikia patikrinkite, ar jis egzistuoja. 1208 01:04:31,070 --> 01:04:37,130 >> Taigi aš galiu naudoti, kad jei tegul sėkmingai nelygiaverčiai apdoroti, 1209 01:04:37,130 --> 01:04:40,620 Tada aš žinau, kad nebūtina iš tikrųjų yra tam tikrus duomenis. 1210 01:04:40,620 --> 01:04:43,840 Arba ką aš čia padariau buvo tiesiog manyti, kad, jei yra 1211 01:04:43,840 --> 01:04:49,067 buvo nėra klaidų, kad jis yra iš esmės saugūs. 1212 01:04:49,067 --> 01:04:51,400 Gerai, aš noriu padėkoti Jūs visi labai daug ateina. 1213 01:04:51,400 --> 01:04:53,540 Aš žinau, tai buvo daug, bet tai buvo tik valandą 1214 01:04:53,540 --> 01:04:55,920 kalbėti apie kai gana pažangi medžiaga. 1215 01:04:55,920 --> 01:04:59,640 Ir todėl tikiuosi, jūs gausite tikimybė, atsisiųsti visų kodą 1216 01:04:59,640 --> 01:05:01,657 ir imtis geriau, nuodugniai pažvelgti į jį. 1217 01:05:01,657 --> 01:05:04,240 Rūšiuoti įtikinti save, visų stuff, kad vyksta. 1218 01:05:04,240 --> 01:05:06,800 Ir aš noriu padėkoti jums visi, vėlgi, dėl atėjimo. 1219 01:05:06,800 --> 01:05:08,760 Ir geros kloties su savo galutinius projektus. 1220 01:05:08,760 --> 01:05:10,600 Ar puiki diena. 1221 01:05:10,600 --> 01:05:11,467