1 00:00:00,000 --> 00:00:11,420 2 00:00:11,420 --> 00:00:13,590 >> TIANYU LIU: Hei, kuidas on läheb kõigile? 3 00:00:13,590 --> 00:00:20,250 Ja see on iOS App kavandamise eesmärk c seminar. 4 00:00:20,250 --> 00:00:21,520 Ja minu nimi on Tianyu Liu. 5 00:00:21,520 --> 00:00:26,114 Ma olen Lowell junior kohe, keskendudes infotehnoloogia. 6 00:00:26,114 --> 00:00:28,030 Nii et selles seminar ma olen lähen õpetama teid poisid 7 00:00:28,030 --> 00:00:30,770 natuke kuidas teha app. 8 00:00:30,770 --> 00:00:33,030 Jee, erutu ta. 9 00:00:33,030 --> 00:00:36,790 >> Nii et enne kui me isegi alustada sukeldumine tegelikud programmeerimine poolel 10 00:00:36,790 --> 00:00:41,840 olgem lihtsalt väga kiiresti rääkida miks võiks soovid ehitada iOS app? 11 00:00:41,840 --> 00:00:43,940 Miks on iOS nii vinge? 12 00:00:43,940 --> 00:00:47,250 Nii esimene probleem, esimene asi, mis on päris vinge meile 13 00:00:47,250 --> 00:00:51,190 eriti CS50 tudeng, on see, et iOS 14 00:00:51,190 --> 00:00:55,860 kasutab Eesmärk C. Noh, seal on Uue keeles nimetatakse Swift, 15 00:00:55,860 --> 00:00:58,260 kuid me ei kavatse kasutada, et see seminar. 16 00:00:58,260 --> 00:01:01,540 Kui olete huvitatud Swift, seal on sõltumatu seminar sellest. 17 00:01:01,540 --> 00:01:05,590 Aga Eesmärk C on põhimõtteliselt superset C. tähendus 18 00:01:05,590 --> 00:01:10,230 et kõik, mida kasutavad C saa tõlgitakse Eesmärk C 19 00:01:10,230 --> 00:01:11,630 väga lihtsalt. 20 00:01:11,630 --> 00:01:15,730 >> Nagu võite näha hiljem, et tõepoolest seal on mõned väga põhilised süntaks, on 21 00:01:15,730 --> 00:01:19,790 põhimõtteliselt täpselt sama, C ja eesmärk C. Nii 22 00:01:19,790 --> 00:01:22,860 sest te olete võtnud CS50 up nii kaugele, siis juba 23 00:01:22,860 --> 00:01:26,500 tean Eesmärk C, vähemalt 40%. 24 00:01:26,500 --> 00:01:30,720 Ka Apple on tõesti jõuline API iOS. 25 00:01:30,720 --> 00:01:33,750 Seal on palju tõesti hull asju saab teha. 26 00:01:33,750 --> 00:01:36,760 Üks, mis on keegi tegelikult loodud iOS app 27 00:01:36,760 --> 00:01:40,600 kontrolli autod, mis on päris huvitav. 28 00:01:40,600 --> 00:01:42,610 Tõenäoliselt helikopter on põnev. 29 00:01:42,610 --> 00:01:47,020 Aga see, kuidas võimas iOS API saab. 30 00:01:47,020 --> 00:01:49,340 >> Ja nagu te võib-olla arvasin kohe, 31 00:01:49,340 --> 00:01:53,000 stack overflow on ilmselt üks Kõige olulisem online-vahendeid 32 00:01:53,000 --> 00:01:54,250 teile kättesaadavaks. 33 00:01:54,250 --> 00:01:58,090 Ja hea uudis, et iga ühe probleemi saab võimaluse 34 00:01:58,090 --> 00:02:01,840 mõtle ehitamise ajal oma Lõplik projekt Eesmärk C, 35 00:02:01,840 --> 00:02:05,910 on tõenäoliselt stack overflow vastus. 36 00:02:05,910 --> 00:02:07,420 See on lihtsalt fantastiline. 37 00:02:07,420 --> 00:02:12,780 Lisaks sellele, iOS on tõesti platvorm 38 00:02:12,780 --> 00:02:16,260 kui jõuad suur publiku vähese vaevaga. 39 00:02:16,260 --> 00:02:20,170 See ei ole nagu Android, kus kõik on päris killustatud. 40 00:02:20,170 --> 00:02:22,540 >> Kõik iOS on ühtne. 41 00:02:22,540 --> 00:02:25,920 Ja nii kaua, kui loote app iPhone, 42 00:02:25,920 --> 00:02:31,260 Te saate väga lihtsalt port, et iPadi iPad mini või erinevate iPhone suurused. 43 00:02:31,260 --> 00:02:33,050 Need kõik on tõesti mugav. 44 00:02:33,050 --> 00:02:36,430 Ja see on lihtsalt väga hea viisiks oma sõpradega. 45 00:02:36,430 --> 00:02:38,920 Sa võid omada iPhone ja öelge oma sõbrale hei, 46 00:02:38,920 --> 00:02:40,250 see on app teen. 47 00:02:40,250 --> 00:02:43,860 Seda saab teha mis tahes desktop apps, mis on kena. 48 00:02:43,860 --> 00:02:48,870 >> Olgu, nüüd lähme tegelikult saada keelde Eesmärk C. 49 00:02:48,870 --> 00:02:52,910 Miks ei alustame mõned väga põhilised süntaks. 50 00:02:52,910 --> 00:02:57,410 Nagu mainisin enne Eesmärk C See on põhimõtteliselt superset C. 51 00:02:57,410 --> 00:03:01,860 Nii palju põhiliste süntaksi on tegelikult täpselt sama. 52 00:03:01,860 --> 00:03:06,150 Kuulutatakse muutuv ja lisades kahe muutuja kokku 53 00:03:06,150 --> 00:03:09,440 on täpselt nii, nagu me oleme seda teinud Mario. 54 00:03:09,440 --> 00:03:11,140 Midagi uut siin. 55 00:03:11,140 --> 00:03:17,370 >> Samuti üürniku jaoks silmus ja tingimus on ka sama. 56 00:03:17,370 --> 00:03:22,370 Seda saab teha silmus nagu sa on teinud Mario [kuuldamatu]. 57 00:03:22,370 --> 00:03:26,280 Ja seda saab teha tingimused sama, mida sa 58 00:03:26,280 --> 00:03:29,240 on teinud oma eelmise p komplekti. 59 00:03:29,240 --> 00:03:33,400 Kuid Eesmärk C ei ole täielikult C, 60 00:03:33,400 --> 00:03:36,640 ja seal on midagi, mida on selline imelik midagi. 61 00:03:36,640 --> 00:03:42,340 >> Esimene on see, et kui sa oled teed C programmeerimine, siis tavaliselt nimetame 62 00:03:42,340 --> 00:03:46,310 hulka ja seejärel teegi nime. 63 00:03:46,310 --> 00:03:49,860 Aga Eesmärk C helistate, et import. 64 00:03:49,860 --> 00:03:53,100 Põhimõtteliselt öeldes funktsionaalsust, lihtsalt erinevad nimed. 65 00:03:53,100 --> 00:03:55,940 Ja stringid on tegelikult natuke imelik. 66 00:03:55,940 --> 00:03:58,250 Näete, et esimene asi, mis on imelikuks 67 00:03:58,250 --> 00:04:04,190 on see, et teil on päris weird-- sorry-- teil on päris imelik NS 68 00:04:04,190 --> 00:04:04,960 kirjutada siia. 69 00:04:04,960 --> 00:04:07,452 70 00:04:07,452 --> 00:04:09,160 Ja teine ​​asi et imelikuks 71 00:04:09,160 --> 00:04:14,090 on teil on märk enne tegelikult kuulutatakse string. 72 00:04:14,090 --> 00:04:19,209 Nii on märk põhimõtteliselt tähendab et string on mitte ainult string, 73 00:04:19,209 --> 00:04:20,880 see on tegelikult objekti. 74 00:04:20,880 --> 00:04:22,780 Me läheme selgitada et hiljem nii, et ärge 75 00:04:22,780 --> 00:04:25,800 paanika, kui te ei aru, mida see tähendab. 76 00:04:25,800 --> 00:04:29,980 Ja trükkimine konsool on natuke erinev, sest C kutsume printf, 77 00:04:29,980 --> 00:04:33,350 kuid Eesmärk C kutsume [kuuldamatu]. 78 00:04:33,350 --> 00:04:35,640 >> Teilt võidakse küsida mis see on. 79 00:04:35,640 --> 00:04:38,070 See on põhimõtteliselt printf, lihtsalt erinevat keelt. 80 00:04:38,070 --> 00:04:41,370 Täpselt sama kasutus, täpselt sama funktsionaalsust. 81 00:04:41,370 --> 00:04:44,060 Noh selgub, et Eesmärk C tegelikult 82 00:04:44,060 --> 00:04:50,040 on ns eesliide peaaegu kõik, kõik põhiandmed tüüp, 83 00:04:50,040 --> 00:04:52,690 nsstring, nsarray, nsdictionary. 84 00:04:52,690 --> 00:04:56,340 Põhjus on selles, et ns tegelikult tähendab Next Step, 85 00:04:56,340 --> 00:04:59,980 mis on firma, mis Steve Jobs on põhjendatud, 86 00:04:59,980 --> 00:05:03,960 mis on firma, kus keel Eesmärk C sünnib. 87 00:05:03,960 --> 00:05:06,140 Nii et see on põhimõtteliselt traditsioon. 88 00:05:06,140 --> 00:05:09,010 Ma tean, et see on natuke imelik, aga see on Apple. 89 00:05:09,010 --> 00:05:16,840 >> Nii et kui miski on isegi weirder kui on funktsiooni deklaratsiooni. 90 00:05:16,840 --> 00:05:22,600 See on väga erinev sellest, mida me vt C, sest siin on tegelikult 91 00:05:22,600 --> 00:05:25,190 ei tundu C enam. 92 00:05:25,190 --> 00:05:28,810 Mida sa pead siin-- poolt kuidas see ei ole taane, 93 00:05:28,810 --> 00:05:30,690 see on miinusmärgiga. 94 00:05:30,690 --> 00:05:36,440 Sul on miinusmärk sulgudes void ja siis funktsiooni nimi. 95 00:05:36,440 --> 00:05:38,450 Ütleme nii, et kui me on hello world, siis 96 00:05:38,450 --> 00:05:42,820 Tagastatava väärtuse tüüp oleks kehtetu sest me tagasi midagi. 97 00:05:42,820 --> 00:05:44,680 >> Mis saab tõesti imelik on see, et kui sa oled 98 00:05:44,680 --> 00:05:49,580 millel on rohkem kui üks parameeter pääsemist sama funktsiooni, mis 99 00:05:49,580 --> 00:05:53,870 on tõesti imelik nagu siin näidatud. 100 00:05:53,870 --> 00:05:58,230 Meil on viis nime, nimetatakse addInt et [kuuldamatu] 101 00:05:58,230 --> 00:06:00,370 ja me vastu ühe parameetri. 102 00:06:00,370 --> 00:06:05,170 Aga pärast, et meil rohkem meetod nimi kõnest. 103 00:06:05,170 --> 00:06:08,500 Ja pärast koos me möödaminnes Teine parameeter. 104 00:06:08,500 --> 00:06:11,940 See on tegelikult natuke imelik, kuid kõik need funktsiooni deklaratsioonid 105 00:06:11,940 --> 00:06:14,770 järgida sama mustriga nagu see. 106 00:06:14,770 --> 00:06:17,450 >> Meil on miinusmärk alustada. 107 00:06:17,450 --> 00:06:21,550 Miinusmärk võiks olla plussmärgiga mõnikord põhineb millist meetodit 108 00:06:21,550 --> 00:06:22,340 see on. 109 00:06:22,340 --> 00:06:25,000 Meetod on põhimõtteliselt teine ​​nimetus funktsiooni. 110 00:06:25,000 --> 00:06:26,760 Ja me ei kavatse selgitada, et hiljem, kui 111 00:06:26,760 --> 00:06:30,580 me räägime objekti programmeerimine. 112 00:06:30,580 --> 00:06:34,300 Esmalt kindlaks tagasituleku kirjuta sees sulgudes 113 00:06:34,300 --> 00:06:37,450 pärast, mis pakub meetod nimi. 114 00:06:37,450 --> 00:06:40,310 Sa vastu ühe parameetri. 115 00:06:40,310 --> 00:06:44,750 Ja kui sul on rohkem parameetrid peate laiendada meetodi nimi 116 00:06:44,750 --> 00:06:46,770 ja põhimõtteliselt kirjutan midagi siin. 117 00:06:46,770 --> 00:06:48,090 >> See võib olla ükskõik mida tahad. 118 00:06:48,090 --> 00:06:50,140 Meie puhul on see koos. 119 00:06:50,140 --> 00:06:56,160 Aga võib öelda, lõppu või või või abc täis baari, mida iganes sa tahad. 120 00:06:56,160 --> 00:06:59,500 Ja siis pärast, et sa oled kulgeb parameeter b. 121 00:06:59,500 --> 00:07:01,750 See on väga imelik Konventsioon kuid me oleme 122 00:07:01,750 --> 00:07:05,800 näeme, miks Apple ei tahtnud mida teha, et väga kiiresti. 123 00:07:05,800 --> 00:07:10,530 Niisiis, kuidas sa helistada funktsioon? 124 00:07:10,530 --> 00:07:15,520 Funktsioonide eesmärgi C erineb ka C. 125 00:07:15,520 --> 00:07:18,170 >> Tegelikult, kutsudes funktsiooni eesmärgi C 126 00:07:18,170 --> 00:07:21,030 on rohkem nagu sa oled rääkinud keegi. 127 00:07:21,030 --> 00:07:27,030 Siin me oleme ise, mis nimetatakse objekti. 128 00:07:27,030 --> 00:07:33,830 Sa põhimõtteliselt ütlen vastuväiteid ise öelda "Tere maailm!" 129 00:07:33,830 --> 00:07:36,830 See, kuidas helistada funktsioon. 130 00:07:36,830 --> 00:07:41,690 Objekti ja meetodi nimi üksteisega kombineerida. 131 00:07:41,690 --> 00:07:49,600 Ja see on koht, kus imelik pikendamine meetodis nimi tõesti hakkavad. 132 00:07:49,600 --> 00:07:52,150 >> Vaatame teine ​​näide. 133 00:07:52,150 --> 00:07:56,780 Me lihtsalt määratletud meetodit nimetatakse addInt koos blah blah blah. 134 00:07:56,780 --> 00:08:00,066 Nii et kui kui helistate selle konkreetse [? sõnum?] see läheb 135 00:08:00,066 --> 00:08:02,035 nägema ise addInt: 10: 2. 136 00:08:02,035 --> 00:08:05,410 137 00:08:05,410 --> 00:08:08,070 See kõlab inglise keeles. 138 00:08:08,070 --> 00:08:11,980 Kuigi funktsiooni funktsiooni deklaratsioon imelik, 139 00:08:11,980 --> 00:08:15,600 koht Eesmärk C on meetod deklaratsiooni muster, 140 00:08:15,600 --> 00:08:18,830 on see, et kui helistate funktsiooni või meetodit 141 00:08:18,830 --> 00:08:21,980 see tunduda tegelik inglise keeles. 142 00:08:21,980 --> 00:08:25,270 Nii et see on väga intuitiivne kui sa sinna sisse. 143 00:08:25,270 --> 00:08:28,740 >> Eriti sel juhul, kus saab põhimõtteliselt 144 00:08:28,740 --> 00:08:33,010 näha, et funktsiooni nimi on omamoodi dokumenteerimine ise. 145 00:08:33,010 --> 00:08:35,390 Sa ei vaja rohkem selgitusi, et näha 146 00:08:35,390 --> 00:08:42,770 Mida see siis tähendab, mida täpselt üks parameeter teeb. 147 00:08:42,770 --> 00:08:48,470 Minnes kaugemale, et räägime veidi natuke objektorienteeritud programmeerimine. 148 00:08:48,470 --> 00:08:52,160 Objektorienteeritud programmeerimine on üks põhilisi programmeerimine 149 00:08:52,160 --> 00:08:57,110 tehnikaid ja mustreid, mis on kasutatud eesmärgi C. Eesmärk C 150 00:08:57,110 --> 00:09:03,110 nimetatakse Eesmärk C, ei C, tõesti hea põhjus. 151 00:09:03,110 --> 00:09:07,560 >> Nii et enne kui me sattuda Eesmärk C süntaksit 152 00:09:07,560 --> 00:09:11,670 Olgem tõesti kiiresti vaadata Mis täpselt on objekti. 153 00:09:11,670 --> 00:09:15,480 Me oleme ilmselt teinud midagi nagu objekti enne, mis 154 00:09:15,480 --> 00:09:19,780 nimetatakse struct, kui olete rakendamise puu või seotud nimekirja 155 00:09:19,780 --> 00:09:25,730 või [? proovida. ?] Nii, see on põhimõtteliselt nagu struct, 156 00:09:25,730 --> 00:09:28,560 aga see on palju võimsam kui see. 157 00:09:28,560 --> 00:09:33,150 Objektil on meetodeid ja omadusi. 158 00:09:33,150 --> 00:09:35,310 Meetodid on põhimõtteliselt funktsioone. 159 00:09:35,310 --> 00:09:39,480 Põhimõtteliselt toimib see spetsiifilised teatud objekti. 160 00:09:39,480 --> 00:09:45,440 >> Ja omadused on põhimõtteliselt valdkonnas määrate struct. 161 00:09:45,440 --> 00:09:48,500 Nii iga objekti meil on mõned kinnisvara 162 00:09:48,500 --> 00:09:53,160 et mõned muutujad, mis on omased objekti. 163 00:09:53,160 --> 00:09:57,170 Ja meil on mõned funktsioonid, mis Samuti on spetsiifiline objekt. 164 00:09:57,170 --> 00:10:01,180 Ja funktsioone nimetatakse meetodeid ja muutujate nimetatakse omadused. 165 00:10:01,180 --> 00:10:03,190 See on lihtsalt väljamõeldud nimega. 166 00:10:03,190 --> 00:10:10,440 Kuigi sa tegelikult iga vaade näete, kui avate iOS app, 167 00:10:10,440 --> 00:10:17,720 Ütleme Twitter või Facebook, iga vaade näed on objekti. 168 00:10:17,720 --> 00:10:22,110 Ja isegi kogu app on objekti alustada. 169 00:10:22,110 --> 00:10:25,340 Väga huvitav kontseptsioon. 170 00:10:25,340 --> 00:10:28,480 >> Ja miks me tahame objekti programmeerimine? 171 00:10:28,480 --> 00:10:33,530 Nii võite ette kujutada, et kui sa Programm see läheb päris keeruline. 172 00:10:33,530 --> 00:10:36,400 Ütleme nii, et kui sa oled rakendamise malelaual 173 00:10:36,400 --> 00:10:40,020 loogika läheb tuleb tõesti keeruline. 174 00:10:40,020 --> 00:10:43,280 Sul on 36 erinevat tükki, nii et kui te 175 00:10:43,280 --> 00:10:48,370 tahan kirjutada loogika kõikide 36 erinevat tükki malet, 176 00:10:48,370 --> 00:10:52,150 et see saab olema palju erinevaid funktsioone ja muutujaid. 177 00:10:52,150 --> 00:10:54,070 See on palju vaeva. 178 00:10:54,070 --> 00:10:58,980 Ja ilmselt sa lähed kirjutada erineva meetodi või erinevad funktsioonid 179 00:10:58,980 --> 00:11:03,950 Iga tükk täpselt kontrollida, mida nad teevad. 180 00:11:03,950 --> 00:11:08,830 >> Aga kui sa objektorienteeritud programmeerimine, kõik need tükid 181 00:11:08,830 --> 00:11:12,440 saab ammutatud sisse ühe objekti. 182 00:11:12,440 --> 00:11:16,111 Ja objekt on mõned ühised omadused, nagu millist tükk 183 00:11:16,111 --> 00:11:16,610 see on? 184 00:11:16,610 --> 00:11:17,740 Mis värvi see on? 185 00:11:17,740 --> 00:11:19,480 Kuidas on võimalik liikuda? 186 00:11:19,480 --> 00:11:24,660 Ja sel moel on oluliselt lihtsustatud loogikat see. 187 00:11:24,660 --> 00:11:28,480 Nii et see on lihtsalt väga hea võimalus keerukamate programmide, 188 00:11:28,480 --> 00:11:33,700 ja hierarhiline seos programmi raames, väga lihtne. 189 00:11:33,700 --> 00:11:36,800 Nagu me näeme miks väga kiiresti, kui 190 00:11:36,800 --> 00:11:39,660 me tegelikult teeme programming-- kui me tegelikult 191 00:11:39,660 --> 00:11:42,830 teeme S-koodi programmeerimine istungil hiljem. 192 00:11:42,830 --> 00:11:48,120 >> Noh lisaks sellele, objektorienteeritud programmeerimine 193 00:11:48,120 --> 00:11:50,030 on lihtsalt lõbus. 194 00:11:50,030 --> 00:11:51,990 Sul on kujundada oma objekti. 195 00:11:51,990 --> 00:11:56,080 Sul on kujundada mida teeb see näeb välja ise. 196 00:11:56,080 --> 00:11:58,250 Ei ole õige vastuse. 197 00:11:58,250 --> 00:12:02,940 Ja see on täiesti huvitav. 198 00:12:02,940 --> 00:12:07,270 Nii objektorienteeritud programmeerimine, kahe põhimõistete 199 00:12:07,270 --> 00:12:10,130 on klassi ja näiteks. 200 00:12:10,130 --> 00:12:13,570 Klassi on põhimõtteliselt malli objekti. 201 00:12:13,570 --> 00:12:18,070 Ja näiteks on põhimõtteliselt ühe konkreetse objekti. 202 00:12:18,070 --> 00:12:21,090 >> Ütleme nii, et sa üritad küpsist. 203 00:12:21,090 --> 00:12:24,800 Sel juhul iga cookie sa tegelikult lõpuks 204 00:12:24,800 --> 00:12:27,310 läheb objekti. 205 00:12:27,310 --> 00:12:35,830 Aga cookie plaat sa kasutad küpsetada kõik küpsised olema klassis. 206 00:12:35,830 --> 00:12:37,880 Klass on põhiliselt malli. 207 00:12:37,880 --> 00:12:46,170 Ja näiteks on üks konkreetne objekti loonud läbi selle klassi. 208 00:12:46,170 --> 00:12:49,970 >> Ja näiteks luuakse põhineb klassi deklaratsiooni, 209 00:12:49,970 --> 00:12:56,760 nagu me näeme hiljem slaidid. 210 00:12:56,760 --> 00:13:00,010 Nii saab tegelikult teha tõesti kiirnäide [kuuldamatu]. 211 00:13:00,010 --> 00:13:04,280 Oletame, et me kuulutab objekti kass. 212 00:13:04,280 --> 00:13:07,930 Objekt peaks have-- cat klassi peaks 213 00:13:07,930 --> 00:13:11,260 on mõned omadused ja meetodid. 214 00:13:11,260 --> 00:13:17,300 Millist omadused peaksid klassi have-- peaks kass on? 215 00:13:17,300 --> 00:13:20,580 >> Näiteks värvi, vanus ja tõug, nende 216 00:13:20,580 --> 00:13:24,440 on muutujad, mis on iga kass. 217 00:13:24,440 --> 00:13:27,790 Ja need on mõned asjad mida me kasutame, et kirjeldada kass. 218 00:13:27,790 --> 00:13:31,880 Millist meetodit, või mida võib kass teha? 219 00:13:31,880 --> 00:13:37,160 Mõned näited, oleks chase hiir, süüa kala või lihtsalt mjäu. 220 00:13:37,160 --> 00:13:40,900 See on tõesti kiire Näiteks kass klassi. 221 00:13:40,900 --> 00:13:46,920 Ja tõesti konkreetse cat objekti saab kass 222 00:13:46,920 --> 00:13:50,930 kus me täpsustada värvi, vanuse ja tõu. 223 00:13:50,930 --> 00:13:53,790 >> Sel juhul meie eesmärk on enam klassi enam. 224 00:13:53,790 --> 00:14:00,010 Me kopeerida malli klassi ja me täpsustada iga konkreetse info 225 00:14:00,010 --> 00:14:04,510 Selle konkreetse objekti et ta on sõltumatu. 226 00:14:04,510 --> 00:14:09,350 Ja kui te helistate Meetod sees objekti, 227 00:14:09,350 --> 00:14:16,640 sa lihtsalt helistada mjäu objektil, mis on kass äsjaloodud. 228 00:14:16,640 --> 00:14:19,020 >> Ilmselt siis välja printida midagi "Hello World! 229 00:14:19,020 --> 00:14:20,000 Meow. " 230 00:14:20,000 --> 00:14:22,110 Päris armas. 231 00:14:22,110 --> 00:14:24,500 Olgu, lähme lihtsalt satuvad mõned üksikasjad 232 00:14:24,500 --> 00:14:30,650 ja vaata, mida täpselt teeb, tõlkida on iOS programmeerimine. 233 00:14:30,650 --> 00:14:36,500 Nii iOS programmeerimine iga klassi viiakse ellu kaks faili. 234 00:14:36,500 --> 00:14:41,420 Üks fail on siin, mis nimetatakse liides. 235 00:14:41,420 --> 00:14:45,300 Teine fail on siin, mis nimetatakse rakendamist. 236 00:14:45,300 --> 00:14:48,890 >> Tüüpiliselt liides on extension.h 237 00:14:48,890 --> 00:14:51,740 nagu me oleme näinud C raamatukogudes. 238 00:14:51,740 --> 00:14:56,340 Ja rakendamine faili läheb on extension.n. 239 00:14:56,340 --> 00:14:57,260 See on selline imelik. 240 00:14:57,260 --> 00:15:01,270 Aga .n tähendab tegelikult .c puudub Põhiline erinevus nende 241 00:15:01,270 --> 00:15:02,100 kaks. 242 00:15:02,100 --> 00:15:06,650 Nii et kui me näeme, et me oleme kuulutatakse liides, Kasside: objekti. 243 00:15:06,650 --> 00:15:10,660 244 00:15:10,660 --> 00:15:13,760 Seda nimetatakse pärandist. 245 00:15:13,760 --> 00:15:19,170 Me põhimõtteliselt pärib cat klassist objekti klassi. 246 00:15:19,170 --> 00:15:24,790 Nii et iga vara ja meetod, mis oli eelnevalt määratletud objekti klassi 247 00:15:24,790 --> 00:15:28,560 automaatselt määratletud in kass klassi samuti. 248 00:15:28,560 --> 00:15:35,900 >> Lisaks sellele, me määratleme värvi, tõu ja vanuse, kolm tunnust. 249 00:15:35,900 --> 00:15:39,360 See tegelikult välja näeb midagi, mida varem teinud. 250 00:15:39,360 --> 00:15:41,770 Tundub struct. 251 00:15:41,770 --> 00:15:44,950 See on põhimõtteliselt süntaks jaoks struct deklaratsiooni, 252 00:15:44,950 --> 00:15:47,710 ja see on täiesti õige. 253 00:15:47,710 --> 00:15:51,825 Ja kuna ma varem mainitud, Erinevus struct 254 00:15:51,825 --> 00:15:53,960 ja objekti, üks põhimõttelised erinevused 255 00:15:53,960 --> 00:15:59,080 et objektil on meetod, samas struct ainult muutujaid. 256 00:15:59,080 --> 00:16:03,450 Niisiis lisaks omadused või muutujad oleme loonud objekti, 257 00:16:03,450 --> 00:16:05,700 me täpsustada mõningaid meetod. 258 00:16:05,700 --> 00:16:09,720 >> Ütleme nii, et meil on siin kaks meetodit, üks Mjäu, 259 00:16:09,720 --> 00:16:12,460 teine ​​on tagaajamine hiirt. 260 00:16:12,460 --> 00:16:18,600 Me ilmselt tahavad olla taandumas parameeter, mis põhineb meie eelmine meetod 261 00:16:18,600 --> 00:16:20,440 deklaratsiooni muster. 262 00:16:20,440 --> 00:16:22,160 Sa ilmselt tahad olla ettenägematud hiir. 263 00:16:22,160 --> 00:16:25,180 Ja sa ilmselt tahad tagasi bool märgilist 264 00:16:25,180 --> 00:16:30,010 Kui teie kass on edukalt püütud hiir või mitte. 265 00:16:30,010 --> 00:16:33,170 >> See on liides, kuid me saame näha, et liides tegelikult 266 00:16:33,170 --> 00:16:35,150 ei tee midagi. 267 00:16:35,150 --> 00:16:40,800 See lihtsalt näitab programmi, mida exists-- see on juba olemas kass klassi. 268 00:16:40,800 --> 00:16:43,640 Niisiis selleks Programmi midagi teha, 269 00:16:43,640 --> 00:16:46,680 vajame rakendamise faile. 270 00:16:46,680 --> 00:16:51,940 Nii et siin, esimene asi, mida me teeme on ilmselt Toome liides. 271 00:16:51,940 --> 00:16:56,470 Pärast Toome liides, me defineerime meetodit. 272 00:16:56,470 --> 00:17:00,150 >> Ütleme nii, et siin mjäu oleks lihtsalt välja printida 273 00:17:00,150 --> 00:17:01,740 "Hello World!" konsooli. 274 00:17:01,740 --> 00:17:04,319 275 00:17:04,319 --> 00:17:08,460 Ja pärast rakendamist faili, me päris palju teinud. 276 00:17:08,460 --> 00:17:14,530 See on põhimõtteliselt klassi deklaratsiooni ühe liigi. 277 00:17:14,530 --> 00:17:19,970 Nüüd küsimus on, kuidas sa kuulutada muutuja? 278 00:17:19,970 --> 00:17:26,880 Kuidas te kasutate klassi luua objekti Eesmärk C on kirjutatud siin. 279 00:17:26,880 --> 00:17:30,730 >> Esmalt täpsustada, et see on kass pointer, 280 00:17:30,730 --> 00:17:38,700 sest iga objekti Eesmärk C lõpuks ellu pointer. 281 00:17:38,700 --> 00:17:46,210 Ja sa nimetad klassi nimetame neid kui alloc, mis on põhimõtteliselt malloc, 282 00:17:46,210 --> 00:17:51,220 ütlen opsüsteemi vajan mälu Selle objekti. 283 00:17:51,220 --> 00:17:55,780 Pärast seda on objekti juba ja sa lihtsalt vormindamiseks. 284 00:17:55,780 --> 00:17:56,780 See on lihtsalt konventsioon. 285 00:17:56,780 --> 00:17:59,390 286 00:17:59,390 --> 00:18:04,410 Ma tean, et see on natuke imelik, kuid see on tegelikult, kuidas Apple teeb asju. 287 00:18:04,410 --> 00:18:07,130 >> Omistamine omadused on tegelikult päris lihtne. 288 00:18:07,130 --> 00:18:09,250 See on väga sarnane mida sa teed, kui 289 00:18:09,250 --> 00:18:13,780 sa määrates teatud valdkonnas sees struct. 290 00:18:13,780 --> 00:18:16,830 Sa pead lihtsalt muutuja Nime, vara nimetus, 291 00:18:16,830 --> 00:18:20,140 ja määrata konkreetne väärtus seda. 292 00:18:20,140 --> 00:18:24,120 Ja kutsudes meetod on väga sarnased. 293 00:18:24,120 --> 00:18:29,080 Kutsudes meetod on põhimõtteliselt mida ma räägin 294 00:18:29,080 --> 00:18:32,390 kokkukutsumise tahes meetodi eesmärgi C. 295 00:18:32,390 --> 00:18:36,660 >> Sa kulgeb objekti sisse Sel juhul saab olema myCat, 296 00:18:36,660 --> 00:18:42,490 ja sa möödaminnes meetodi nimi. 297 00:18:42,490 --> 00:18:47,130 Nagu kui sa räägid objekti, myCat, et sa peaksid mjäu. 298 00:18:47,130 --> 00:18:48,570 See on päris huvitav. 299 00:18:48,570 --> 00:18:52,010 300 00:18:52,010 --> 00:18:55,680 Pärast seda, seal on üks olulisem disain muster 301 00:18:55,680 --> 00:18:59,940 et me peame rääkima enne saada tegelikku S-kood. 302 00:18:59,940 --> 00:19:03,300 See disain muster nimetatakse sündmustepõhine programmeerimine. 303 00:19:03,300 --> 00:19:09,660 See on ilmselt ka üks põhilisi ideid iOS programmeerimine. 304 00:19:09,660 --> 00:19:14,410 >> Nii et sa ilmselt ei tea, mida täpselt on ajendatud sündmustest programmeerimine, 305 00:19:14,410 --> 00:19:16,990 kuid see ei ole tegelikult nii hirmutav. 306 00:19:16,990 --> 00:19:20,400 Noh tegelikult olete juba teinud enne. 307 00:19:20,400 --> 00:19:24,894 See on üks rida oled ilmselt juba kirjutatud viimase [kuuldamatu] 308 00:19:24,894 --> 00:19:26,810 on CS50, google.maps.event.addListener (marker, 309 00:19:26,810 --> 00:19:27,810 "Click", funktsiooni () {}) :. 310 00:19:27,810 --> 00:19:32,410 311 00:19:32,410 --> 00:19:37,620 Helistades seda joont olete sisuliselt ütleb arvuti 312 00:19:37,620 --> 00:19:42,650 et kui üritus nimega "Nuppu" juhtub marker, 313 00:19:42,650 --> 00:19:43,630 kasutada seda funktsiooni. 314 00:19:43,630 --> 00:19:46,910 315 00:19:46,910 --> 00:19:50,950 >> See on väga erinev mida te teete mario.c. 316 00:19:50,950 --> 00:19:56,670 In mario.c sa lihtsalt käivitada programmi kord, see annab sulle väljund, 317 00:19:56,670 --> 00:19:58,590 ja sa oled teinud. 318 00:19:58,590 --> 00:20:02,590 Need on omamoodi nagu üks lask programme. 319 00:20:02,590 --> 00:20:05,830 Sündmus juhitud programmides on väga erinevad. 320 00:20:05,830 --> 00:20:10,230 Oletame, kui Facebook on üks shot programmi see ei ole tõesti hea. 321 00:20:10,230 --> 00:20:13,750 Sa lihtsalt minna Facebook üks kord ja see on tehtud. 322 00:20:13,750 --> 00:20:16,700 See annab teile mõned väljund ja sa ei saanud seda tagasi. 323 00:20:16,700 --> 00:20:19,380 Sa ei saanud midagi enamat. 324 00:20:19,380 --> 00:20:23,880 >> Nii et siin, eriti muster, mida me kasutame on 325 00:20:23,880 --> 00:20:26,940 Kui sõita, nii et Iga funktsioon 326 00:20:26,940 --> 00:20:31,480 püütakse selle põhjal, mida Kui on juhtunud. 327 00:20:31,480 --> 00:20:34,670 Näiteks, kui meil on nuppu ja me täpsustada 328 00:20:34,670 --> 00:20:39,870 et kui selle nupu vajutamist on helistada funktsioon nimega "Hello World!" 329 00:20:39,870 --> 00:20:47,810 Sel moel saame tegelikult hallata funktsiooniga loogika 330 00:20:47,810 --> 00:20:50,560 voolavad väga paindlikult. 331 00:20:50,560 --> 00:20:55,840 Kasutaja saab teha või helistage funktsiooni mis on juba kutsutud. 332 00:20:55,840 --> 00:20:59,900 See on täiesti põhjal, mida kasutajad teevad. 333 00:20:59,900 --> 00:21:04,080 >> Nii näeme, et see on tegelikult palju parem kui mario.c. 334 00:21:04,080 --> 00:21:07,190 Ja hea uudis on see, et see on tegelikult ei ole uus mõiste. 335 00:21:07,190 --> 00:21:12,140 Kutid on seda juba teinud et viimase probleemi seatud. 336 00:21:12,140 --> 00:21:16,640 Nii Eesmärk C on kolm erinevat diagrammid 337 00:21:16,640 --> 00:21:19,030 sündmuse sõidetakse programmeerimine. 338 00:21:19,030 --> 00:21:21,970 Esimene skeem on nimetatakse kavandab meetmeid, 339 00:21:21,970 --> 00:21:26,990 kus sa seovad nuppu vajutage mõne funktsiooni. 340 00:21:26,990 --> 00:21:31,590 Ütleme lihtsalt, kui klõpsate mõned nuppu, siis helista mõnda funktsiooni. 341 00:21:31,590 --> 00:21:33,620 See on väga lihtne sihtmärk meetmeid. 342 00:21:33,620 --> 00:21:35,580 >> Teine on tegelikult kõige raskem, 343 00:21:35,580 --> 00:21:38,450 seda nimetatakse delegatsiooni protokolli. 344 00:21:38,450 --> 00:21:41,800 Me läheme selgitada et väga üksikasjalikult hiljem. 345 00:21:41,800 --> 00:21:44,420 Ja kolmas võimalus on teatavakstegemisest. 346 00:21:44,420 --> 00:21:46,770 See ei ole tegelikult väga oluline nii kaugele 347 00:21:46,770 --> 00:21:50,920 kui me mures, sest võimalus et sa lähed kasutada teatavakstegemisest 348 00:21:50,920 --> 00:21:53,310 Teie lõplik projekt on üsna madal. 349 00:21:53,310 --> 00:21:56,440 Nii et me läheme vahele selle osa. 350 00:21:56,440 --> 00:21:59,460 >> Ja me läheme sukelduma arvesse delegatsiooni protokolli. 351 00:21:59,460 --> 00:22:02,380 352 00:22:02,380 --> 00:22:04,470 Mis täpselt on protokoll? 353 00:22:04,470 --> 00:22:06,450 Või mida täpselt on delegatsioon? 354 00:22:06,450 --> 00:22:09,670 Räägime protokolli alustada. 355 00:22:09,670 --> 00:22:13,360 Protokollid on vaid sündmusi. 356 00:22:13,360 --> 00:22:19,230 Aga need sündmused on andnud Teile Apple alustada. 357 00:22:19,230 --> 00:22:22,640 Näiteks, ma ei ole täiesti kindel, kui palju sa 358 00:22:22,640 --> 00:22:27,930 poisid kasutavad Apple originaal app mail või kontakt 359 00:22:27,930 --> 00:22:32,180 kuid iga kord kui satute laua ja vajutage konkreetse raku 360 00:22:32,180 --> 00:22:36,130 lauale, mis on sündmus. 361 00:22:36,130 --> 00:22:38,330 >> Ja kui sa tahad teha Sellisel juhul ise, 362 00:22:38,330 --> 00:22:40,410 see on tegelikult natuke raske. 363 00:22:40,410 --> 00:22:44,880 Nii Apple on andnud, et isegi teile nii et võid lihtsalt otse kasutada 364 00:22:44,880 --> 00:22:49,610 Kui midagi teha ise. 365 00:22:49,610 --> 00:22:52,980 Protokolle tegelikult tõesti, tõesti laialdaselt 366 00:22:52,980 --> 00:22:58,320 Eesmärk C. Noh Tegelikult iga app 367 00:22:58,320 --> 00:23:00,870 on midagi püütud app delegaat. 368 00:23:00,870 --> 00:23:06,330 Toas õrn on kõik protokollid laadimise app. 369 00:23:06,330 --> 00:23:12,470 >> Ütleme nii, et on olemas sündmus app ei koorma. 370 00:23:12,470 --> 00:23:18,200 Mis juhtub siis, kui olete loodud app, pärast avate app, 371 00:23:18,200 --> 00:23:22,630 pärast sulgete rakenduse või pärast paned iPhone magama. 372 00:23:22,630 --> 00:23:27,480 Need on kõik sündmused, mis on juba antud teile. 373 00:23:27,480 --> 00:23:34,730 Ja algselt sees need osakesed ei tule mingit rakendamist. 374 00:23:34,730 --> 00:23:39,750 Apple lihtsalt ütlesin, et see funktsioon juhtub, kui mõne sündmuse juhtub, 375 00:23:39,750 --> 00:23:44,380 aga mida sa teed, et funktsioon on täiesti sinust. 376 00:23:44,380 --> 00:23:49,290 >> Delegatsioon on põhimõtteliselt räägib klassi 377 00:23:49,290 --> 00:23:53,060 et sa peaksid hakkama neid protokolle. 378 00:23:53,060 --> 00:23:55,340 See on natuke segane, kuid see saab olema 379 00:23:55,340 --> 00:23:59,380 palju selgem, kui me teeme s koodid tegevuses. 380 00:23:59,380 --> 00:24:04,760 Delegatsiooni protokoll on tegelikult väga tugev mehhanism, mis tähendab, 381 00:24:04,760 --> 00:24:08,160 et kui me delegatsioon konkreetse klassi, 382 00:24:08,160 --> 00:24:12,400 saame sisuliselt hakkama igasuguseid üritusi 383 00:24:12,400 --> 00:24:17,040 kasutades ükskõik millist liiki meil, väga mugav tööriist. 384 00:24:17,040 --> 00:24:21,530 >> Nii et üks kiire eeskujuks delegatsiooni protokoll 385 00:24:21,530 --> 00:24:24,120 on see, mida ma just rääkisin. 386 00:24:24,120 --> 00:24:26,720 387 00:24:26,720 --> 00:24:30,890 See protokoll konkreetselt nimetatakse Tableview [kuuldamatu] valimiseks rolli 388 00:24:30,890 --> 00:24:35,480 kell [? indeks?] [? Viimase. ?] Nii et see Juhul, kui oleks püütud kui 389 00:24:35,480 --> 00:24:39,710 tegelikult puuduta konkreetset cell oma Tableview, 390 00:24:39,710 --> 00:24:43,570 ütleme lihtsalt oma mail või oma kontaktid app. 391 00:24:43,570 --> 00:24:48,180 >> Toas funktsioon oli algselt mitte midagi. 392 00:24:48,180 --> 00:24:51,950 Funktsioon ei midagi vaikimisi. 393 00:24:51,950 --> 00:24:55,540 Aga sa võid täpsustada mis funktsioon teeb, 394 00:24:55,540 --> 00:24:59,610 arvestades seda, mida sa tahad välja oma app. 395 00:24:59,610 --> 00:25:01,610 Väga mugav tööriist. 396 00:25:01,610 --> 00:25:06,840 Ja kõik, mis Nagu öeldud, ma põhimõtteliselt 397 00:25:06,840 --> 00:25:11,430 katta mõned väga põhiliste süntaksi ja põhimõiste eesmärgi C 398 00:25:11,430 --> 00:25:15,860 programmeerimine, ja me saame teha mõned s-kood. 399 00:25:15,860 --> 00:25:17,980 Palju põnevam. 400 00:25:17,980 --> 00:25:21,070 Nii s kood on tegelikult natuke suur 401 00:25:21,070 --> 00:25:23,330 kui avate seda esimest korda. 402 00:25:23,330 --> 00:25:26,640 >> Üks kiire märkus, et kui sa tahan teha iOS areng, 403 00:25:26,640 --> 00:25:29,630 Ma väga soovitada teil on Mac. 404 00:25:29,630 --> 00:25:33,930 Kuna teeme iOS areng Windows on tõesti väga raske. 405 00:25:33,930 --> 00:25:37,560 See on teostatav, kuid see on tõesti raske. 406 00:25:37,560 --> 00:25:40,610 Ja sa kindlasti teha ei soovi kasutada g muuta. 407 00:25:40,610 --> 00:25:47,950 Nii s koodi meil mitme eri piirkondades. 408 00:25:47,950 --> 00:25:53,050 Kui te esimest korda avada s koodi näed sõidupiirkond, 409 00:25:53,050 --> 00:25:57,470 mis sisuliselt näitab kõiki faile, mis on oma praeguse projekti. 410 00:25:57,470 --> 00:26:03,590 >> Sul on tööriistariba ala, mis on põhimõtteliselt juhtimise seisukohti, 411 00:26:03,590 --> 00:26:08,570 või mõni väike kiire tööriistad umbes s koodi ise. 412 00:26:08,570 --> 00:26:11,140 Ja see on tegelik toimetaja piirkonnas. 413 00:26:11,140 --> 00:26:15,900 See ala on väga sarnane g muuta, kuid palju parem kui g muuta. 414 00:26:15,900 --> 00:26:21,150 Ja see õigus ala, on nimetatakse kasuliku ala. 415 00:26:21,150 --> 00:26:27,170 Piirkond muutub tõesti mugav, kui loote liides või täpsustades 416 00:26:27,170 --> 00:26:30,070 mõned kiired seadistuse oma app. 417 00:26:30,070 --> 00:26:34,570 >> Ja viimane ala on silumist. 418 00:26:34,570 --> 00:26:37,970 See sisaldab konsooli. 419 00:26:37,970 --> 00:26:43,170 Nii et kui sa ütled printf, või nslog meie puhul 420 00:26:43,170 --> 00:26:47,330 kõik oma tulemused läheb trükitakse siin. 421 00:26:47,330 --> 00:26:48,260 Kõik on korras? 422 00:26:48,260 --> 00:26:52,090 Ma arvan, et me võime tõesti kiiresti teha Näiteks iOS programmeerimine. 423 00:26:52,090 --> 00:26:54,220 Ja olgem tegelikult avada s koodi. 424 00:26:54,220 --> 00:26:57,210 425 00:26:57,210 --> 00:27:01,346 Nii et iga kord, kui avada s koodi, see on läheb, et näidata üles midagi sellist. 426 00:27:01,346 --> 00:27:03,220 See küsin Mida sa teha tahad? 427 00:27:03,220 --> 00:27:06,830 Kas soovite alustada midagi juhuslik, mänguväljak, põhimõtteliselt sa 428 00:27:06,830 --> 00:27:11,250 lihtsalt testida koodi ilma tegelikult toime mis tahes app. 429 00:27:11,250 --> 00:27:13,020 >> Kas soovite luua uus projekt? 430 00:27:13,020 --> 00:27:16,660 Või tahad jätkata kallal olemasolevat projekti? 431 00:27:16,660 --> 00:27:20,270 Meie puhul me ei kavatse luua uus projekt. 432 00:27:20,270 --> 00:27:22,980 Nii et see on tõesti kena, S kood on tegelikult juba 433 00:27:22,980 --> 00:27:26,820 poetanud malle loomiseks objektid. 434 00:27:26,820 --> 00:27:32,680 Kui sa tahad teha mängu, s-koodi tegelikult on mäng template teie eest, 435 00:27:32,680 --> 00:27:36,890 on lehel põhinevaid rakendusi, tab põhine rakendus. 436 00:27:36,890 --> 00:27:39,280 Sel juhul me läheme midagi väga lihtne, 437 00:27:39,280 --> 00:27:43,230 ja me ei kavatse kasutada ühevaade taotluse. 438 00:27:43,230 --> 00:27:48,270 >> Pärast seda just see, mida soovite helistada oma toodet, ja mis su nimi on, 439 00:27:48,270 --> 00:27:52,760 mis su tunnus ja mis keelt te kasutate. 440 00:27:52,760 --> 00:27:57,060 Siin me ei taha vaadake kasutades Core Data. 441 00:27:57,060 --> 00:28:00,170 Core andmed on põhimõtteliselt andmebaasistamine iOS. 442 00:28:00,170 --> 00:28:05,360 Kui sa põhiandmed, s koodi saab määratleda 443 00:28:05,360 --> 00:28:07,710 palju keerulisem klasside teile. 444 00:28:07,710 --> 00:28:12,740 Nii, et hoida kõike lihtne, me oleme lihtsalt kavatse seda teha ilma Core andmed 445 00:28:12,740 --> 00:28:15,290 just nüüd. 446 00:28:15,290 --> 00:28:18,030 >> Probleem me ei kavatse olla kasutades on selle-- probleem 447 00:28:18,030 --> 00:28:23,770 me ei kavatse olla loomiseks on, et me põhimõtteliselt soovite importida Mario C 448 00:28:23,770 --> 00:28:25,437 et iOS app. 449 00:28:25,437 --> 00:28:26,645 Nii saab helistada, et Mario-iOS. 450 00:28:26,645 --> 00:28:31,230 451 00:28:31,230 --> 00:28:34,880 Muidugi saab määrata, mida sa tahan panna oma projekti. 452 00:28:34,880 --> 00:28:37,870 Ja seal me läheme. 453 00:28:37,870 --> 00:28:41,390 >> Seega on see natuke valdav, kuid see on tegelikult 454 00:28:41,390 --> 00:28:43,540 mida me lihtsalt nägin slaidid. 455 00:28:43,540 --> 00:28:49,710 Ja esimene ala näeme praegu on põhimõtteliselt projekti konfiguratsiooni. 456 00:28:49,710 --> 00:28:53,390 Nii et kõik, mida tahame teha Projekti millist seadet, 457 00:28:53,390 --> 00:28:58,810 Ütleme, millist seadet kas sa tahad oma app ilmuma? 458 00:28:58,810 --> 00:29:01,280 Kas see on iPhone, iPad või universaalne? 459 00:29:01,280 --> 00:29:04,660 Nii seadme sättumuse, kõik see kraam. 460 00:29:04,660 --> 00:29:08,490 Mitte eriti oluline, kuid võib olla, kuid see 461 00:29:08,490 --> 00:29:11,050 on koht, kus sa luua oma projekti kui te tegelikult 462 00:29:11,050 --> 00:29:15,180 soovite kasutada, et Apple poest. 463 00:29:15,180 --> 00:29:20,420 >> Olgu, vaatame midagi, mis on sees meie koodi. 464 00:29:20,420 --> 00:29:22,360 Lähme läbi file navigaator. 465 00:29:22,360 --> 00:29:30,140 Ja need on kõik failid, mis on juba kaasas malli, väga kena. 466 00:29:30,140 --> 00:29:35,980 Nii et kui me klõpsake ühte neist see on kuidas see välja näeb. 467 00:29:35,980 --> 00:29:38,530 Väga sarnane g muuta. 468 00:29:38,530 --> 00:29:41,340 Aga näed, et süntaksi esiletõstmine on ilmselt 469 00:29:41,340 --> 00:29:42,780 natuke kenamaks. 470 00:29:42,780 --> 00:29:45,610 Ja see on tegelikult palju rohkem võimsam kui g toimetamine. 471 00:29:45,610 --> 00:29:49,970 Ja saate auto täielik palju asju teile, 472 00:29:49,970 --> 00:29:52,370 nagu me näeme väga kiiresti. 473 00:29:52,370 --> 00:29:54,100 >> Avame silumine piirkonnas samuti. 474 00:29:54,100 --> 00:30:02,790 475 00:30:02,790 --> 00:30:07,000 Olgu, näeme, konsool on siin. 476 00:30:07,000 --> 00:30:13,840 See on see, mida sa lähed, et näha, kus sa oled printf või nsloging midagi. 477 00:30:13,840 --> 00:30:17,155 Nii ilma pikema jututa, olgem tegelikult koostada app ja vaata, mis juhtub. 478 00:30:17,155 --> 00:30:20,000 479 00:30:20,000 --> 00:30:23,410 Üks oluline tunnus s-koodi, on see, et s-koodi 480 00:30:23,410 --> 00:30:25,850 Kaasas iPhone simulaator. 481 00:30:25,850 --> 00:30:29,820 Nii et sa ei pea olema iPhone proovida oma projekti, 482 00:30:29,820 --> 00:30:34,440 s koodi saab simuleerida, et teid, nagu näeme praegu. 483 00:30:34,440 --> 00:30:36,406 >> See on päris kena. 484 00:30:36,406 --> 00:30:38,640 See võtab natuke natuke aega koostada 485 00:30:38,640 --> 00:30:43,040 ja põhimõtteliselt on meil tühi taotluse 486 00:30:43,040 --> 00:30:44,640 mis tegelikult ei tee midagi. 487 00:30:44,640 --> 00:30:46,175 Aga see kogub. 488 00:30:46,175 --> 00:30:47,380 See on päris vinge. 489 00:30:47,380 --> 00:30:50,200 See on palju parem kui C, ah? 490 00:30:50,200 --> 00:30:52,130 Olgu siis olgem proovida midagi lisada. 491 00:30:52,130 --> 00:30:56,050 492 00:30:56,050 --> 00:31:02,650 Üks fail, mis on natuke imelik siin nimetatakse storyboard. 493 00:31:02,650 --> 00:31:08,020 See on tegelikult suur, awesome funktsioon s-kood. 494 00:31:08,020 --> 00:31:14,170 Sest s koodi, saate tegelikult drag ja tilk elemente peale liides 495 00:31:14,170 --> 00:31:17,430 ja see on otseselt näha. 496 00:31:17,430 --> 00:31:18,055 Proovime seda. 497 00:31:18,055 --> 00:31:21,230 498 00:31:21,230 --> 00:31:27,236 >> Me tilk label siin, "Hello World !!!" 499 00:31:27,236 --> 00:31:29,740 Saame keskus, mis. 500 00:31:29,740 --> 00:31:30,970 Päris lahe. 501 00:31:30,970 --> 00:31:33,915 Nüüd käivitada stop simulatsioon. 502 00:31:33,915 --> 00:31:36,940 503 00:31:36,940 --> 00:31:38,700 Siin on meil "Hello World !!!" 504 00:31:38,700 --> 00:31:40,810 Me isegi ei tee mingit kodeerimine veel. 505 00:31:40,810 --> 00:31:42,750 Mida kuradit toimub? 506 00:31:42,750 --> 00:31:45,880 See, kuidas võimas Interface Builder saab. 507 00:31:45,880 --> 00:31:48,030 Keegi isegi ütles, et Saate ilmselt lihtsalt 508 00:31:48,030 --> 00:31:52,800 täielik app ilma kirjalikult ilmselt tuhat rida koodi 509 00:31:52,800 --> 00:31:54,820 lihtsalt kasutades Interface Builder. 510 00:31:54,820 --> 00:31:59,680 Aga see ilmselt ei ole Parim viis seda teha. 511 00:31:59,680 --> 00:32:01,670 >> Nüüd tegelikult pikali kodeerimine. 512 00:32:01,670 --> 00:32:04,860 513 00:32:04,860 --> 00:32:08,330 Nii struktuur faili on tegelikult väga huvitav 514 00:32:08,330 --> 00:32:15,610 sest, nagu võite näha, et ei ole peamine ülesanne kuhugi. 515 00:32:15,610 --> 00:32:17,466 Vaata? 516 00:32:17,466 --> 00:32:19,340 Nagu me varem mainitud, näed, et see 517 00:32:19,340 --> 00:32:22,830 on rakendamise faili konkreetse klassi. 518 00:32:22,830 --> 00:32:25,690 Aga ei ole peamine kuhugi. 519 00:32:25,690 --> 00:32:27,490 Nii et kui on peamine? 520 00:32:27,490 --> 00:32:31,970 Tegelikult on peamine, kuid Peamine on tegelikult peidus sinult. 521 00:32:31,970 --> 00:32:34,560 Peamine on siin. 522 00:32:34,560 --> 00:32:37,120 See tundub tuttav. 523 00:32:37,120 --> 00:32:41,000 >> Ühesõnaga, mida iOS teeb sees peamine 524 00:32:41,000 --> 00:32:43,540 on see, et alati, kui peamine on nimetatakse, mis on põhimõtteliselt 525 00:32:43,540 --> 00:32:49,000 iga kord, kui rakendus on täidetud, siis loob objekti nimetatakse AppDelegate. 526 00:32:49,000 --> 00:32:52,980 527 00:32:52,980 --> 00:32:57,350 Nagu juba mainisin, on kogu app on tegelikult objekti iseenesest. 528 00:32:57,350 --> 00:33:02,270 Nii et sel viisil, põhiliselt iOS app räägib tõlkija 529 00:33:02,270 --> 00:33:05,540 et OK, ma lähen, et luua toode nimega AppDelegate, 530 00:33:05,540 --> 00:33:07,620 ja mis saab olema minu app. 531 00:33:07,620 --> 00:33:09,640 Nii et sa pead minema läbi, et AppDelegate 532 00:33:09,640 --> 00:33:12,040 ja vaata, mida see kutt teeb. 533 00:33:12,040 --> 00:33:14,850 Minu töö on tehtud minu jaoks. 534 00:33:14,850 --> 00:33:22,070 >> Ja AppDelegate näed, et seal on mõned väga imelik funktsioone, 535 00:33:22,070 --> 00:33:25,290 ka tegelikult meetodeid, mis Apple on juba andnud teile. 536 00:33:25,290 --> 00:33:27,464 Mis need on? 537 00:33:27,464 --> 00:33:31,010 Need on tegelikult lihtsalt protokollid et ma rääkisin. 538 00:33:31,010 --> 00:33:35,670 Nii et need on sündmused, mis Apple on andnud teile alustada. 539 00:33:35,670 --> 00:33:38,050 Ei ole midagi mõnes funktsioonide kohe, 540 00:33:38,050 --> 00:33:40,820 aga kui me tahame initsialiseerida midagi meie app 541 00:33:40,820 --> 00:33:46,140 enne sattumist väljapanek Igal juhul on meil seda teha siin. 542 00:33:46,140 --> 00:33:51,150 >> Sa võid lugeda nime ja ma arvan, Üritus on tegelikult päris selge. 543 00:33:51,150 --> 00:33:54,160 544 00:33:54,160 --> 00:33:58,350 Nüüd peamine on loonud objekti AppDelegate. 545 00:33:58,350 --> 00:34:05,220 Ja mida AppDelegate kavatseb teha tegelikult peidus ka teile. 546 00:34:05,220 --> 00:34:09,250 AppDelegate kavatseb alustada laadimisel ViewController laos. 547 00:34:09,250 --> 00:34:13,170 Nii see on põhimõtteliselt lähed alustada peale üles kõiki seisukohti, et teil on 548 00:34:13,170 --> 00:34:17,500 ja lihtsalt muuta vaade põhineb hierarhia. 549 00:34:17,500 --> 00:34:21,280 >> Nii et kui meil on ainult ühes vaates, mis on siin. 550 00:34:21,280 --> 00:34:25,060 Nii et see on ainus vaade et läheb nimetada. 551 00:34:25,060 --> 00:34:28,159 ViewController loogika on siin. 552 00:34:28,159 --> 00:34:32,159 See on kood, mis tegelikult kontrollib silmas me just nägin. 553 00:34:32,159 --> 00:34:33,679 Olgu, teeme siin midagi. 554 00:34:33,679 --> 00:34:44,030 555 00:34:44,030 --> 00:34:50,560 Nii viewDidLoad kõlab juhul kui tegelikult on see ka delegaat, 556 00:34:50,560 --> 00:34:52,500 see on ka protokoll. 557 00:34:52,500 --> 00:34:56,350 >> Mida iganes arvates on koormatud, kõik sees funktsiooni 558 00:34:56,350 --> 00:34:57,920 kutsutakse. 559 00:34:57,920 --> 00:35:02,840 Sellisel juhul peaksime nägema "Tere Tianyu! ", Kui me käivitada programmi. 560 00:35:02,840 --> 00:35:09,820 561 00:35:09,820 --> 00:35:12,842 Läheb natuke aeglane koostamise storyboard faile. 562 00:35:12,842 --> 00:35:15,440 563 00:35:15,440 --> 00:35:18,190 Noh tegelikult, me ei näe väljund ta. 564 00:35:18,190 --> 00:35:20,720 See on päris lahe. 565 00:35:20,720 --> 00:35:22,000 Nüüd tõesti Mario. 566 00:35:22,000 --> 00:35:25,400 567 00:35:25,400 --> 00:35:27,625 Ma lähen määratleda toimivad väga kiiresti. 568 00:35:27,625 --> 00:35:31,510 569 00:35:31,510 --> 00:35:54,245 marioWithLevels: (int) tasemel tulemusi. 570 00:35:54,245 --> 00:36:01,120 571 00:36:01,120 --> 00:36:06,410 >> Olgu, see on tegelikult fantastiline omadus s koodi auto valmimist. 572 00:36:06,410 --> 00:36:10,680 Nii et kui sa kirjutad ja kirjutad siseneda, see on juba loobunud template 573 00:36:10,680 --> 00:36:12,325 teid, mis on päris lahe. 574 00:36:12,325 --> 00:36:50,480 575 00:36:50,480 --> 00:36:52,850 See peaks vaatama tõesti tuttavad kutid. 576 00:36:52,850 --> 00:36:55,940 577 00:36:55,940 --> 00:36:59,680 Vabandust, see on minu süü. 578 00:36:59,680 --> 00:37:15,790 579 00:37:15,790 --> 00:37:18,120 Olgu, lahe. 580 00:37:18,120 --> 00:37:22,710 See loogika peaks vaatama tõesti tuttav kutid, eriti lihtsalt Mario. 581 00:37:22,710 --> 00:37:26,140 >> Aga me nüüd välja printida kuni konsooli iga kord, 582 00:37:26,140 --> 00:37:29,280 sest me tahame kuidagi hoida jälgida, mida me printimist. 583 00:37:29,280 --> 00:37:31,810 Me ei kavatse kasutada tulemused kuidagi hiljem 584 00:37:31,810 --> 00:37:35,010 näidata print välja tuua kasutaja. 585 00:37:35,010 --> 00:37:37,730 Nii et selle asemel me lihtsalt nslogging kõike, 586 00:37:37,730 --> 00:37:42,410 mis me ladustamiseks kõik arvesse funktsioon kõne tulemusena 587 00:37:42,410 --> 00:37:44,070 kuid loogika on täpselt sama. 588 00:37:44,070 --> 00:37:48,030 589 00:37:48,030 --> 00:37:51,800 Kui oleme lõpetanud, siis me lihtsalt printida meie tulemused. 590 00:37:51,800 --> 00:37:59,330 591 00:37:59,330 --> 00:38:04,970 >> Ja siin printimise asemel läbi minu nimi, me ei kavatse helistada funktsioon. 592 00:38:04,970 --> 00:38:15,340 593 00:38:15,340 --> 00:38:18,090 Vaatame, mis juhtub. 594 00:38:18,090 --> 00:38:21,240 Vabandust, ilmselt. 595 00:38:21,240 --> 00:38:24,320 Meil on kena väike püramiid siin. 596 00:38:24,320 --> 00:38:28,370 See on põhiliselt C, me oleme lihtsalt manipuleerides kui helistate funktsiooni 597 00:38:28,370 --> 00:38:30,010 ja kuidas funktsiooni nägema. 598 00:38:30,010 --> 00:38:31,560 Pole midagi erinevat. 599 00:38:31,560 --> 00:38:34,040 Aga see on tegelikult ei ole väga põnev siin 600 00:38:34,040 --> 00:38:37,500 sest me ei näe midagi iPhone app. 601 00:38:37,500 --> 00:38:42,120 >> Nii et kui sa tegelikult iPhone app-- kui sa tegelikult Mario iOS õigus 602 00:38:42,120 --> 00:38:45,080 nüüd, sa ei kavatse näha midagi, mis 603 00:38:45,080 --> 00:38:49,450 on midagi pistmist Mario sest kõik need väljundid konsool 604 00:38:49,450 --> 00:38:51,620 on peidetud kasutaja. 605 00:38:51,620 --> 00:38:53,850 See on see, mida sa näed, mis on "Hello World !!!" 606 00:38:53,850 --> 00:38:55,720 Ole hea. 607 00:38:55,720 --> 00:39:03,090 Nüüd proovime teha kasutaja vaata mida täpselt me ​​väljatrükk. 608 00:39:03,090 --> 00:39:06,000 Nii et me ei pea märgistama enam. 609 00:39:06,000 --> 00:39:09,800 Proovime aru saada, midagi muud, mis võiks olla kasulik. 610 00:39:09,800 --> 00:39:12,140 >> Seal on tegelikult üks element, mida nimetatakse 611 00:39:12,140 --> 00:39:16,460 tekstiväli, mis võivad väga kasulik meile. 612 00:39:16,460 --> 00:39:19,880 Sisuliselt näitab piirkonna teksti, mida saab muuta. 613 00:39:19,880 --> 00:39:22,320 Nii et tundub tõesti kasulik. 614 00:39:22,320 --> 00:39:23,810 Nüüd lohista see ja lastakse tal. 615 00:39:23,810 --> 00:39:26,880 616 00:39:26,880 --> 00:39:32,670 Wow, meil on tekst eesmärgiga Meie arvates tõesti meeldib. 617 00:39:32,670 --> 00:39:35,430 See on natuke liiga suur. 618 00:39:35,430 --> 00:39:38,150 Teeme seda väiksem. 619 00:39:38,150 --> 00:39:40,290 Pane see keskus. 620 00:39:40,290 --> 00:39:43,760 Tee väiksem samuti. 621 00:39:43,760 --> 00:39:50,110 >> Nüüd on meil teksti arvamust, mida võiksime kasutatakse kuvamiseks meie lõpptulemuse. 622 00:39:50,110 --> 00:39:52,860 Aga praegu on see kindlasti ei hakka tööle 623 00:39:52,860 --> 00:39:56,970 sest seal on ei-- ViewController me lihtsalt 624 00:39:56,970 --> 00:40:03,010 määratletud ei tea, et on tekst eesmärgiga seal. 625 00:40:03,010 --> 00:40:06,550 Seega peame kuidagi loetu arvates me lihtsalt 626 00:40:06,550 --> 00:40:11,660 loodud klass, on juba meiega tulla. 627 00:40:11,660 --> 00:40:14,860 >> Kuidas me teeme, mis on tegelikult tõesti maagiline. 628 00:40:14,860 --> 00:40:18,190 Nii avada storyboard. 629 00:40:18,190 --> 00:40:22,220 On olemas spetsiaalne [kuuldamatu] nimetatakse [? assistent?] [kuuldamatu]. 630 00:40:22,220 --> 00:40:25,190 Kui klõpsate seda, see on läheb avama kaks faili. 631 00:40:25,190 --> 00:40:29,425 Üks on klassi ja teine on vastava silmas seda. 632 00:40:29,425 --> 00:40:31,920 See on väga, väga kasulik. 633 00:40:31,920 --> 00:40:35,950 Ja olgem lihtsalt läheb läbi .h faili. 634 00:40:35,950 --> 00:40:39,110 Kontroll, see on [kuuldamatu] loogika. 635 00:40:39,110 --> 00:40:47,280 Vajutage Kontroll ja lohista Teksti vaadet deklaratsiooni. 636 00:40:47,280 --> 00:40:48,780 Me läheme helistada, et outputView. 637 00:40:48,780 --> 00:40:52,189 638 00:40:52,189 --> 00:40:53,670 Ühendage. 639 00:40:53,670 --> 00:40:59,420 Nii et siin me oleme kuulutanud uue vara meie ViewController klassi. 640 00:40:59,420 --> 00:41:02,300 Ja uus vara on lihtsalt teksti vaade 641 00:41:02,300 --> 00:41:05,000 oleme loonud liidese hoone. 642 00:41:05,000 --> 00:41:07,990 Nii et kuidas me võiksime juurdepääsu kõigile andmetele 643 00:41:07,990 --> 00:41:13,630 ja manipuleerida kõike, mis on sees vaatel, mis on fantastiline. 644 00:41:13,630 --> 00:41:19,260 >> Nii meie tegelik kood, olgem sellega midagi teha. 645 00:41:19,260 --> 00:41:23,810 Nii et see aeg, mil me oleme nagu trükkimine välja lõpptulemuse Mario, 646 00:41:23,810 --> 00:41:28,020 me oleme ei logides midagi. 647 00:41:28,020 --> 00:41:30,080 Ma mõtlen võiksime hoida metsaraie avalduse. 648 00:41:30,080 --> 00:41:41,490 Lisaks sellele, et meil Kirjuta näit me lihtsalt 649 00:41:41,490 --> 00:41:47,622 loodud vaatel, mis on UI textview me lihtsalt loodud. 650 00:41:47,622 --> 00:41:48,746 Nüüd vaatame, mis juhtub. 651 00:41:48,746 --> 00:41:54,470 652 00:41:54,470 --> 00:41:56,620 Wow. 653 00:41:56,620 --> 00:41:59,130 Meil on püramiidi app kohe. 654 00:41:59,130 --> 00:42:06,720 >> Nii saab kasutaja näha meie toodangut, kuna oleme kopeeritud väljund meie koodi 655 00:42:06,720 --> 00:42:08,045 meie liides. 656 00:42:08,045 --> 00:42:10,950 See on päris hea. 657 00:42:10,950 --> 00:42:14,990 See on tegelikult ei ole, et põnev, sest me can-- 658 00:42:14,990 --> 00:42:18,250 Kõik app teeb on näitab püramiidi teile, 659 00:42:18,250 --> 00:42:20,520 ja seal on midagi, mida saate teha. 660 00:42:20,520 --> 00:42:22,330 See ei ole eriti põnev. 661 00:42:22,330 --> 00:42:27,840 Nüüd teeme nuppu mis selge seisukohti. 662 00:42:27,840 --> 00:42:30,290 Tundub, et nupp on abiks. 663 00:42:30,290 --> 00:42:33,270 Lohista. 664 00:42:33,270 --> 00:42:33,900 Button üks. 665 00:42:33,900 --> 00:42:36,730 666 00:42:36,730 --> 00:42:37,320 Button kaks. 667 00:42:37,320 --> 00:42:49,170 668 00:42:49,170 --> 00:42:52,052 >> Nii et kui me klõpsake vasakul nuppu, pidades peaks selge. 669 00:42:52,052 --> 00:42:53,635 Seal peaks olema midagi ekraanil. 670 00:42:53,635 --> 00:42:56,970 Ja kui me klõpsake parempoolset nuppu, Mario, 671 00:42:56,970 --> 00:42:59,740 arvates läheb jälle ilmuvad. 672 00:42:59,740 --> 00:43:05,510 Nii et see, kuidas me ka ei magic värk, kontrolli ja drag 673 00:43:05,510 --> 00:43:08,740 klassi deklaratsioon in assistent director-- 674 00:43:08,740 --> 00:43:11,600 in assistent vaataja. 675 00:43:11,600 --> 00:43:18,620 Sel juhul me täpsustades et see peaks olema tegevus. 676 00:43:18,620 --> 00:43:19,120 clearMario. 677 00:43:19,120 --> 00:43:21,650 678 00:43:21,650 --> 00:43:26,830 >> Nii et siin me oleme juba loodud meetmega clearMario, 679 00:43:26,830 --> 00:43:34,210 mis on meetod, mis oleks nn kui me vajutage nuppu selge. 680 00:43:34,210 --> 00:43:41,030 Nii et meie tegelikult koodi, lähme lihtsalt pane väljund teksti ja vaatel 681 00:43:41,030 --> 00:43:44,620 ei millekski, ja sel viisil see tundub olevat selge. 682 00:43:44,620 --> 00:43:47,500 683 00:43:47,500 --> 00:43:57,230 Lisaks sellele, loome teist meetodit nimetatakse runMario. 684 00:43:57,230 --> 00:44:00,140 685 00:44:00,140 --> 00:44:03,436 Oh kahju, et ei tohiks olla vara. 686 00:44:03,436 --> 00:44:12,107 687 00:44:12,107 --> 00:44:13,940 Olgu, mis peaks Olgu tegu samuti. 688 00:44:13,940 --> 00:44:25,780 689 00:44:25,780 --> 00:44:34,740 >> Ja kui see funktsioon on nimetatakse, me lihtsalt joosta Mario kümme. 690 00:44:34,740 --> 00:44:37,620 691 00:44:37,620 --> 00:44:39,780 Loodetavasti saab trahvi. 692 00:44:39,780 --> 00:44:41,120 Kas see kompileerida? 693 00:44:41,120 --> 00:44:43,920 Jah. 694 00:44:43,920 --> 00:44:45,090 Nüüd on meil vaadata. 695 00:44:45,090 --> 00:44:46,560 Meil on väljund. 696 00:44:46,560 --> 00:44:50,040 Ja olgem lihtsalt näha, mis juhtub. 697 00:44:50,040 --> 00:44:52,590 See on läinud. 698 00:44:52,590 --> 00:44:54,500 See on jälle tagasi. 699 00:44:54,500 --> 00:44:57,620 Nii et siin me oleme määratud millist funktsiooni 700 00:44:57,620 --> 00:45:00,400 nimeks saab millal me kirjutad midagi, 701 00:45:00,400 --> 00:45:03,160 kui me vajuta konkreetset nuppu. 702 00:45:03,160 --> 00:45:07,890 See on põhiliselt eesmärgi meetmete kava 703 00:45:07,890 --> 00:45:12,510 jaoks sündmustepõhine programmeerimine Eesmärk C. 704 00:45:12,510 --> 00:45:15,030 >> Lisaks sellele, see ei ole väga põnev 705 00:45:15,030 --> 00:45:19,810 sest me ei saa muuta kuidas kõrge püramiid on, 706 00:45:19,810 --> 00:45:23,640 nii et me ilmselt tahad kuidagi saada kasutajalt 707 00:45:23,640 --> 00:45:29,490 ja kõrguse muutmiseks püramiidi põhjal, mida nad toodangut. 708 00:45:29,490 --> 00:45:32,900 Nii et me teeme seda. 709 00:45:32,900 --> 00:45:38,720 Nii et see aeg, mil me nimetame runMario, me ei ole lihtsalt helistada Mario otse. 710 00:45:38,720 --> 00:46:06,280 711 00:46:06,280 --> 00:46:07,000 See üks pealkiri. 712 00:46:07,000 --> 00:46:22,180 713 00:46:22,180 --> 00:46:23,700 >> Delegaat. 714 00:46:23,700 --> 00:46:25,160 See on väga huvitav. 715 00:46:25,160 --> 00:46:26,720 Mis on delegaat? 716 00:46:26,720 --> 00:46:28,950 Ma panen ise siia. 717 00:46:28,950 --> 00:46:31,038 Ja me näeme mida see tähendab hiljem. 718 00:46:31,038 --> 00:46:46,380 719 00:46:46,380 --> 00:46:51,120 Nii et siin me oleme põhimõtteliselt loodud konkreetsel juhul nimetatakse UI alert 720 00:46:51,120 --> 00:46:52,210 pidades. 721 00:46:52,210 --> 00:46:54,440 UI alert on Põhimõtteliselt, mida te 722 00:46:54,440 --> 00:46:58,940 vaata iga kord midagi hüppab üles ja küsib sisend, 723 00:46:58,940 --> 00:47:03,080 nagu mis juhtub, kui sa üritad osta midagi App Store. 724 00:47:03,080 --> 00:47:14,250 >> Lisaks sellele, kui te luua, siis me lihtsalt näidata teate. 725 00:47:14,250 --> 00:47:20,090 726 00:47:20,090 --> 00:47:22,568 Olgu, lähme lihtsalt kiiresti testiga, et töö või mitte. 727 00:47:22,568 --> 00:47:31,105 728 00:47:31,105 --> 00:47:32,140 See on väga lahe. 729 00:47:32,140 --> 00:47:55,370 730 00:47:55,370 --> 00:47:59,120 Nüüd tegelikult luua input väli UI teate. 731 00:47:59,120 --> 00:48:01,170 See, kuidas me seda teeme. 732 00:48:01,170 --> 00:48:07,490 Ja meil peaks olema vaatel hoiatusteade. 733 00:48:07,490 --> 00:48:09,020 Väga lahe. 734 00:48:09,020 --> 00:48:12,330 Ütleme nii, et 10. 735 00:48:12,330 --> 00:48:14,900 >> See ei tee midagi õigesti nüüd, sest kõne tegelikult 736 00:48:14,900 --> 00:48:17,770 ei muutunud täidesaatva Mario. 737 00:48:17,770 --> 00:48:23,470 Nii on see muutunud veidi natuke imelik, sest iga kord, kui 738 00:48:23,470 --> 00:48:30,790 meil vajutage nuppu all, kui me vajutage nuppu alert, 739 00:48:30,790 --> 00:48:35,560 midagi peaks juhtuma, kuid seda ei juhtu. 740 00:48:35,560 --> 00:48:37,220 Kuidas jõuavad? 741 00:48:37,220 --> 00:48:41,280 Kuidas me teame, et kasutaja pidas alert 742 00:48:41,280 --> 00:48:45,630 ja juba sisestatud number, sest kohe midagi tegelikult toimub. 743 00:48:45,630 --> 00:48:50,450 >> Noh, sa oleks võinud arvata see õigus, delegatsioon. 744 00:48:50,450 --> 00:48:55,440 Nii et lisaks kõigile Nende deklaratsioonide 745 00:48:55,440 --> 00:49:03,190 meil on vaja lisada uus delegatsioon ta kutsus UI alert delegaat. 746 00:49:03,190 --> 00:49:06,440 Nii et iga suhtlemist või sündmuse 747 00:49:06,440 --> 00:49:10,190 et me ei kavatse olla koos UI alert 748 00:49:10,190 --> 00:49:14,100 läheb käidelda meie klassi ka. 749 00:49:14,100 --> 00:49:26,297 >> Niisiis lisaks sellele, on alert vaatamiseks kliki nuppu indeks. 750 00:49:26,297 --> 00:49:34,260 751 00:49:34,260 --> 00:49:37,730 See on saavutatud. 752 00:49:37,730 --> 00:49:42,020 Nii et sel juhul on meil already-- nii et meil on 753 00:49:42,020 --> 00:49:46,210 selgus, protokoll, mis tegelen juhul, kui 754 00:49:46,210 --> 00:49:51,320 me klõpsake nuppu Valmis valvel arvates. 755 00:49:51,320 --> 00:49:55,976 Nii et iga kord, kui me jätta alert arvates see peaks toimuma. 756 00:49:55,976 --> 00:49:57,350 Lubage mul seda testida väga kiiresti. 757 00:49:57,350 --> 00:50:16,220 758 00:50:16,220 --> 00:50:19,300 Noh tegelikult oleme jõudnud siin. 759 00:50:19,300 --> 00:50:22,210 >> Nii et siin, mida me ei tegelikult saada on tegelikult 760 00:50:22,210 --> 00:50:43,120 saada the-- Nii me saada tahame teksti, mis meil varem 761 00:50:43,120 --> 00:50:45,350 kantud alert. 762 00:50:45,350 --> 00:50:48,505 Ja mis põhineb teksti, me oleme läheb näidata Mario. 763 00:50:48,505 --> 00:50:52,336 764 00:50:52,336 --> 00:50:55,480 See on väga kiiresti välja kui ta tegelikult töötab või mitte. 765 00:50:55,480 --> 00:50:59,476 Nii et juhul, kui me sisend, oletame, 10, peaksime nägema 10. 766 00:50:59,476 --> 00:51:02,740 767 00:51:02,740 --> 00:51:05,210 >> Väga hea, meil on mitmeid siin. 768 00:51:05,210 --> 00:51:06,470 See on päris hea. 769 00:51:06,470 --> 00:51:16,840 Nüüd on viimane samm on olema-- Nii Viimase sammuna peame tegema just nüüd 770 00:51:16,840 --> 00:51:21,100 lihtsalt helistada Mario tasandil sisendi põhjal 771 00:51:21,100 --> 00:51:23,270 et oleme kasutusele võetud alert. 772 00:51:23,270 --> 00:51:26,920 Seega peame muutma Selle stringi iOS. 773 00:51:26,920 --> 00:51:33,820 774 00:51:33,820 --> 00:51:35,496 Staatiline overflow on väga võimas. 775 00:51:35,496 --> 00:51:44,930 776 00:51:44,930 --> 00:51:51,182 Ja siis me lihtsalt helistada ise marioWithLevels väärtus. 777 00:51:51,182 --> 00:51:54,550 778 00:51:54,550 --> 00:51:56,284 Vaatame, tahan, et tegelikult töötavad või mitte. 779 00:51:56,284 --> 00:51:59,070 780 00:51:59,070 --> 00:52:01,550 >> Me juba andnud püramiid. 781 00:52:01,550 --> 00:52:04,785 Proovime kõrgust muuta. 782 00:52:04,785 --> 00:52:06,530 See tegelikult toimib. 783 00:52:06,530 --> 00:52:07,610 See on päris lahe. 784 00:52:07,610 --> 00:52:10,420 Nii et nüüd saab lihtsalt input mingit väärtust, mida soovid. 785 00:52:10,420 --> 00:52:12,440 Ütleme nii, et neli. 786 00:52:12,440 --> 00:52:14,260 See on päris vinge. 787 00:52:14,260 --> 00:52:17,090 Nii et see on põhimõtteliselt tõesti kiire näiteks 788 00:52:17,090 --> 00:52:23,170 kuidas luua projekti s koodi ja kuidas tõesti kiiresti juhtmetega ühendada 789 00:52:23,170 --> 00:52:26,220 mõned väga lihtsad sündmusi ja ülesandeid. 790 00:52:26,220 --> 00:52:28,840 >> Nii allikas läheb panna Internetis hiljem. 791 00:52:28,840 --> 00:52:33,400 Nii et kui olete huvitatud kuidas iOS Mario töötab, 792 00:52:33,400 --> 00:52:38,360 Ma panen täpselt sama projektide peale CS50 veebisaidil hiljem. 793 00:52:38,360 --> 00:52:41,260 Me põhimõtteliselt teha Suvel ja enne kui me lõpetada 794 00:52:41,260 --> 00:52:45,190 Ma tahan juhtida kutid mõned tõesti awesome ressursse, et 795 00:52:45,190 --> 00:52:47,550 on kättesaadavad Internetis. 796 00:52:47,550 --> 00:52:52,270 >> Ilmselt Apple dokumentatsioon saab olema väga kasulik. 797 00:52:52,270 --> 00:52:57,630 Kuid lisaks sellele, I eriti Soovitame neli allikat, kood kooli, 798 00:52:57,630 --> 00:53:02,120 puu maja, AppCoda ja WWDC videos. 799 00:53:02,120 --> 00:53:07,270 Kood koolis ja puu maja on Kahe Internetis Hariv veebilehed, 800 00:53:07,270 --> 00:53:10,210 mis konkreetselt keskenduda tarkvaratehnika. 801 00:53:10,210 --> 00:53:16,930 Eriti kood kooli, nad on tõesti hea juhendaja iOS. 802 00:53:16,930 --> 00:53:19,550 >> See on tõesti kiire näiteks seda. 803 00:53:19,550 --> 00:53:22,980 Nad tegelikult luua tõeliselt cute-- vaadata, et väike armas iPhone 804 00:53:22,980 --> 00:53:24,920 dude seal, see on päris vinge. 805 00:53:24,920 --> 00:53:31,010 Ja kuidas nad selgitavad Eesmärk C süntaks on täiesti selge. 806 00:53:31,010 --> 00:53:32,230 Tree house on sama. 807 00:53:32,230 --> 00:53:34,660 Ja AppCoda on foorum. 808 00:53:34,660 --> 00:53:38,130 See on tegelikult blogi, mis viidi läbi mida tõesti kogenud Eesmärk C 809 00:53:38,130 --> 00:53:39,120 programmeerija. 810 00:53:39,120 --> 00:53:43,950 Ja kõik need õpetused AppCoda on päris lühike ja lihtne rakendada, 811 00:53:43,950 --> 00:53:45,390 väga soovitatav. 812 00:53:45,390 --> 00:53:47,700 >> Ja kui sa oled arendaja, kindlasti minna kontrollima 813 00:53:47,700 --> 00:53:55,660 kuidas WWDC videos, kus saab õpivad viimaseid iOS programmeerimine 814 00:53:55,660 --> 00:53:58,250 tehnikaid, API ja raamatukogud. 815 00:53:58,250 --> 00:54:02,850 Nii et on päris palju see seminar. 816 00:54:02,850 --> 00:54:03,820 Tänan sind nii palju. 817 00:54:03,820 --> 00:54:08,040 Ja ma loodan, et teil on lõbus luua oma iOS app. 818 00:54:08,040 --> 00:54:09,302