1 00:00:00,000 --> 00:00:11,420 2 00:00:11,420 --> 00:00:13,590 >> TIANYU LIU: Hey, hvernig er það að fara alla? 3 00:00:13,590 --> 00:00:20,250 Og þetta er iOS App forritun Objective C námskeið. 4 00:00:20,250 --> 00:00:21,520 Og nafn mitt er Tianyu Liu. 5 00:00:21,520 --> 00:00:26,114 Ég er Lowell yngri núna, einbeita í tölvunarfræði. 6 00:00:26,114 --> 00:00:28,030 Svo í þessari ráðstefnu ég að fara að kenna ykkur 7 00:00:28,030 --> 00:00:30,770 svolítið um hvernig á að gera app. 8 00:00:30,770 --> 00:00:33,030 Yay, fá spenntur fyrir því. 9 00:00:33,030 --> 00:00:36,790 >> Svo áður en við byrjum jafnvel köfun í raun forritun hlið, 10 00:00:36,790 --> 00:00:41,840 við skulum bara mjög fljótt tala um hvers vegna þú might vilja til að byggja upp IOS app? 11 00:00:41,840 --> 00:00:43,940 Hvers vegna er iOS svo ógnvekjandi? 12 00:00:43,940 --> 00:00:47,250 Svo fyrsta vandamál, fyrsta hlutur sem er nokkuð ógnvekjandi fyrir okkur, 13 00:00:47,250 --> 00:00:51,190 sérstaklega þar sem CS50 nemandi, er að iOS 14 00:00:51,190 --> 00:00:55,860 notar Markmið C. Jæja, það er nýtt tungumál sem heitir Swift, 15 00:00:55,860 --> 00:00:58,260 en við erum ekki að fara að nota það í þessari ráðstefnu. 16 00:00:58,260 --> 00:01:01,540 Ef þú hefur áhuga á Swift er sjálfstæð málstofa um það. 17 00:01:01,540 --> 00:01:05,590 En Objective C er í grundvallaratriðum a superset C. Merking 18 00:01:05,590 --> 00:01:10,230 að allt sem þú notar í C ​​geta vera þýdd á Objective C 19 00:01:10,230 --> 00:01:11,630 mjög auðveldlega. 20 00:01:11,630 --> 00:01:15,730 >> Eins og þú might sjá síðar, að örugglega það eru sumir mjög undirstöðu setningafræði, eru 21 00:01:15,730 --> 00:01:19,790 grundvallaratriðum nákvæmlega sama, C og Objective C. Svo, 22 00:01:19,790 --> 00:01:22,860 þar sem þú hefur tekið CS50 upp þetta langt, þú nú þegar 23 00:01:22,860 --> 00:01:26,500 vita Objective C, að minnsta kosti 40%. 24 00:01:26,500 --> 00:01:30,720 Einnig, Apple hefur virkilega sterkur API fyrir IOS. 25 00:01:30,720 --> 00:01:33,750 There ert a einhver fjöldi af mjög brjálaður hlutir sem þú getur gert við það. 26 00:01:33,750 --> 00:01:36,760 Einn sem er einhver í raun búið til IOS app 27 00:01:36,760 --> 00:01:40,600 til að stjórna bílum, sem er nokkuð áhugavert. 28 00:01:40,600 --> 00:01:42,610 Sennilega þyrla er meira spennandi. 29 00:01:42,610 --> 00:01:47,020 En það er hvernig öflugur IOS API getur verið. 30 00:01:47,020 --> 00:01:49,340 >> Og eins og þú gætir hafa mynstrağur út núna, 31 00:01:49,340 --> 00:01:53,000 stafla flæða er sennilega einn af mikilvægustu auðlindir online 32 00:01:53,000 --> 00:01:54,250 í boði fyrir þig. 33 00:01:54,250 --> 00:01:58,090 Og góðar fréttir, fyrir hvert einn vandamál þú getur hugsanlega 34 00:01:58,090 --> 00:02:01,840 hugsa um á meðan að byggja þinn Lokaverkefni í Objective C, 35 00:02:01,840 --> 00:02:05,910 það er líklegt að stafla flæða svarið. 36 00:02:05,910 --> 00:02:07,420 Það er bara frábært. 37 00:02:07,420 --> 00:02:12,780 Í samlagning til þessi, iOS er í raun vettvangur 38 00:02:12,780 --> 00:02:16,260 þar sem þú getur náð a gríðarstór áhorfendur með smá fyrirhöfn. 39 00:02:16,260 --> 00:02:20,170 Það er ekki eins og Android, þar allt er nokkuð brotakennd. 40 00:02:20,170 --> 00:02:22,540 >> Allt iOS er sameinað. 41 00:02:22,540 --> 00:02:25,920 Og svo lengi sem þú býrð app fyrir iPhone, 42 00:02:25,920 --> 00:02:31,260 þú getur mjög auðveldlega tengi sem að iPad, iPad Mini, eða mismunandi stærðum iPhone. 43 00:02:31,260 --> 00:02:33,050 Þetta eru allt mjög þægilegt. 44 00:02:33,050 --> 00:02:36,430 Og það er bara mjög gott fyrir impressing vinum þínum. 45 00:02:36,430 --> 00:02:38,920 Þú getur bara haldið iPhone og segja vini þínum hey, 46 00:02:38,920 --> 00:02:40,250 þetta er app sem ég gera. 47 00:02:40,250 --> 00:02:43,860 Þú getur gert það fyrir einhverjar skrifborð apps, sem er gott. 48 00:02:43,860 --> 00:02:48,870 >> Allt í lagi, nú skulum raunverulega fá í tungumálið Objective C 49 00:02:48,870 --> 00:02:52,910 Svo hvers vegna eigum við ekki að byrja með sumir raunverulega undirstöðu setningafræði. 50 00:02:52,910 --> 00:02:57,410 Eins og ég nefndi áður Objective C Það er í grundvallaratriðum a superset C. 51 00:02:57,410 --> 00:03:01,860 Svo mikið af undirstöðu setningafræði eru raun nákvæmlega það sama. 52 00:03:01,860 --> 00:03:06,150 Lýsa breytu og að bæta við tveimur breytum saman 53 00:03:06,150 --> 00:03:09,440 er nákvæmlega eins og við höfum gert í Mario. 54 00:03:09,440 --> 00:03:11,140 Ekkert nýtt hér. 55 00:03:11,140 --> 00:03:17,370 >> Á sama hátt, lodger fyrir lykkju og ástand er einnig það sama. 56 00:03:17,370 --> 00:03:22,370 Þú getur gert a for lykkju eins og þú hafa gerði í Mario [inaudible]. 57 00:03:22,370 --> 00:03:26,280 Og þú getur gert skilyrði bara eins og það sem þú 58 00:03:26,280 --> 00:03:29,240 hafa verið að gera í fyrri p setur þinn. 59 00:03:29,240 --> 00:03:33,400 Hins vegar, Objective C er ekki alveg C, 60 00:03:33,400 --> 00:03:36,640 og það er eitthvað sem er góður af skrýtið um það. 61 00:03:36,640 --> 00:03:42,340 >> Sú fyrsta er sú að þegar þú ert gera C forritun, kalla þú venjulega 62 00:03:42,340 --> 00:03:46,310 eru og þá nafn bókasafn. 63 00:03:46,310 --> 00:03:49,860 En í Objective C þú kalla þessi innflutning. 64 00:03:49,860 --> 00:03:53,100 Grundvallaratriðum að segja virkni, bara mismunandi nöfn. 65 00:03:53,100 --> 00:03:55,940 Og strengir eru reyndar svolítið undarlegt. 66 00:03:55,940 --> 00:03:58,250 Þú getur séð að fyrsta hlutur sem er góður af skrýtið 67 00:03:58,250 --> 00:04:04,190 er að þú ert ansi weird-- sorry-- þú hafa a laglegur undarlegt NS 68 00:04:04,190 --> 00:04:04,960 undirrita hérna. 69 00:04:04,960 --> 00:04:07,452 70 00:04:07,452 --> 00:04:09,160 Og annar hlutur það er góður af skrýtið 71 00:04:09,160 --> 00:04:14,090 er þú ert með á skilti áður raun að lýsa yfir strenginn. 72 00:04:14,090 --> 00:04:19,209 Svo á skilti táknar grundvallaratriðum að strengur er ekki bara band, 73 00:04:19,209 --> 00:04:20,880 það er í raun hlutur. 74 00:04:20,880 --> 00:04:22,780 Við erum að fara að útskýra sem síðar svo ekki 75 00:04:22,780 --> 00:04:25,800 læti ef þú ert ekki skilja hvað það þýðir. 76 00:04:25,800 --> 00:04:29,980 Og prentun til hugga er svolítið öðruvísi vegna þess að í C við köllum printf, 77 00:04:29,980 --> 00:04:33,350 en í Objective C við köllum [inaudible]. 78 00:04:33,350 --> 00:04:35,640 >> Þú gætir verið að spá í hvað er að. 79 00:04:35,640 --> 00:04:38,070 Það er í grundvallaratriðum printf, bara mismunandi tungumál. 80 00:04:38,070 --> 00:04:41,370 Nákvæmlega það sama notkun, nákvæmlega sama virkni. 81 00:04:41,370 --> 00:04:44,060 Jæja það kemur í ljós að Objective C raun 82 00:04:44,060 --> 00:04:50,040 hefur NS undan í næstum allt, hvert undirstöðu gögn gerð, 83 00:04:50,040 --> 00:04:52,690 nsstring, nsarray, nsdictionary. 84 00:04:52,690 --> 00:04:56,340 Ástæðan er sú að NS reyndar stendur fyrir næsta skref, 85 00:04:56,340 --> 00:04:59,980 sem er fyrirtæki sem Steve Jobs hefur stofnað, 86 00:04:59,980 --> 00:05:03,960 sem er fyrirtæki þar sem Tungumál Markmið C er fæddur. 87 00:05:03,960 --> 00:05:06,140 Svo er þetta í rauninni hefð. 88 00:05:06,140 --> 00:05:09,010 Ég veit að það er svolítið undarlegt, en það er Apple. 89 00:05:09,010 --> 00:05:16,840 >> Svo eitthvað sem er jafnvel weirder en það er fall yfirlýsing. 90 00:05:16,840 --> 00:05:22,600 Þetta er mjög ólíkt því sem við eigum sjá í C, því hér það í raun 91 00:05:22,600 --> 00:05:25,190 lítur ekki eins og C lengur. 92 00:05:25,190 --> 00:05:28,810 Það sem þú hefur here-- komi vegur þetta ekki bullet lið, 93 00:05:28,810 --> 00:05:30,690 þetta er mínus merki. 94 00:05:30,690 --> 00:05:36,440 Þú ert með mínus merki sviga niður og þá virka nafn. 95 00:05:36,440 --> 00:05:38,450 Segjum bara ef við hafa Halló heimur, þá 96 00:05:38,450 --> 00:05:42,820 aftur gerð yrði ógilt vegna þess að við aftur neitt. 97 00:05:42,820 --> 00:05:44,680 >> Hvað fær mjög undarlegt er að þegar þú ert 98 00:05:44,680 --> 00:05:49,580 hafa fleiri en einn stika liggur í sama virka sem 99 00:05:49,580 --> 00:05:53,870 verður mjög undarlegt eins og sýnt er hér. 100 00:05:53,870 --> 00:05:58,230 Við höfum aðferð nafn, kallað addInt til [inaudible] 101 00:05:58,230 --> 00:06:00,370 og við erum að brottför einn stika. 102 00:06:00,370 --> 00:06:05,170 En eftir það, við höfum meira nafn aðferð kalla með. 103 00:06:05,170 --> 00:06:08,500 Og eftir með við erum liggur seinna viðfangið. 104 00:06:08,500 --> 00:06:11,940 Þetta er í raun svolítið skrýtið, En allt þetta virka yfirlýsingar 105 00:06:11,940 --> 00:06:14,770 fylgja sama munstri og þetta. 106 00:06:14,770 --> 00:06:17,450 >> Við höfum mínusmerki til að byrja með. 107 00:06:17,450 --> 00:06:21,550 Mínus merki gæti verið plús merki stundum byggt á hvers konar aðferð 108 00:06:21,550 --> 00:06:22,340 er það. 109 00:06:22,340 --> 00:06:25,000 Aðferð er í grundvallaratriðum annað nafn fyrir virka. 110 00:06:25,000 --> 00:06:26,760 Og við erum að fara að útskýra það seinna þegar 111 00:06:26,760 --> 00:06:30,580 við erum að tala um hlut Name forritun. 112 00:06:30,580 --> 00:06:34,300 Þú verður að tilgreina fyrst aftur tegund inni sviga, 113 00:06:34,300 --> 00:06:37,450 eftir sem kemur aðferðin nafn. 114 00:06:37,450 --> 00:06:40,310 Þú ert liggur einn stika. 115 00:06:40,310 --> 00:06:44,750 Og ef þú ert með fleiri breytur þú þarft að lengja aðferð nafn 116 00:06:44,750 --> 00:06:46,770 og í rauninni skrifa eitthvað meira hér. 117 00:06:46,770 --> 00:06:48,090 >> Það gæti verið eitthvað sem þú vilt. 118 00:06:48,090 --> 00:06:50,140 Í okkar tilviki er það með. 119 00:06:50,140 --> 00:06:56,160 En þú gætir sagt enda, eða eða eða abc fullur bar, hvað sem þú vilt. 120 00:06:56,160 --> 00:06:59,500 Og síðan eftir að þú ert brottför breytu b. 121 00:06:59,500 --> 00:07:01,750 Þetta er mjög undarlegt samningur en við erum 122 00:07:01,750 --> 00:07:05,800 fara að sjá hvers vegna Apple vildi að gera það mjög fljótt. 123 00:07:05,800 --> 00:07:10,530 Svo hvernig gera þú kallar virka? 124 00:07:10,530 --> 00:07:15,520 Kalla fram aðgerðir í Objective C er einnig mismunandi frá C. 125 00:07:15,520 --> 00:07:18,170 >> Reyndar kalla a virka í Objective C 126 00:07:18,170 --> 00:07:21,030 er meira eins og þú ert að tala við einhvern. 127 00:07:21,030 --> 00:07:27,030 Hér höfum við sjálf, sem er kallað mótmæla. 128 00:07:27,030 --> 00:07:33,830 Þú ert í rauninni að segja að mótmæla sjálf að segja "Halló heimur!" 129 00:07:33,830 --> 00:07:36,830 Það er hvernig á að hringja í aðgerð. 130 00:07:36,830 --> 00:07:41,690 Hlut og aðferð nafn sameina við hvert annað. 131 00:07:41,690 --> 00:07:49,600 Og þetta er þar sem undarlegt eftirnafn fyrir nafn aðferð í raun kemur inn í leik. 132 00:07:49,600 --> 00:07:52,150 >> Við skulum líta á annað dæmi. 133 00:07:52,150 --> 00:07:56,780 Við skilgreind bara aðferð sem kallast addInt með bla bla bla. 134 00:07:56,780 --> 00:08:00,066 Þannig að í þessu tilfelli þegar þú ert að hringja í sem sérstakur [? skilaboð?] það er að fara 135 00:08:00,066 --> 00:08:02,035 að líta út eins og sjálf addInt: 10 með: 2. 136 00:08:02,035 --> 00:08:05,410 137 00:08:05,410 --> 00:08:08,070 Það hljómar eins og ensku. 138 00:08:08,070 --> 00:08:11,980 Þótt virka virka yfirlýsing er undarlegt, 139 00:08:11,980 --> 00:08:15,600 að benda á Objective C áratugnum aðferð yfirlýsingu mynstur, 140 00:08:15,600 --> 00:08:18,830 er að þegar þú ert að hringja fallið eða aðferð 141 00:08:18,830 --> 00:08:21,980 það hljómar eins og raunverulegt ensku. 142 00:08:21,980 --> 00:08:25,270 Svo það er mjög leiðandi þegar þú fá inn í það. 143 00:08:25,270 --> 00:08:28,740 >> Sérstaklega í þessu tilfelli, þar sem þú getur í rauninni 144 00:08:28,740 --> 00:08:33,010 sjá að fallið nafn er konar skrásetja sig. 145 00:08:33,010 --> 00:08:35,390 Þú þarft ekki allir meira útskýring til að sjá 146 00:08:35,390 --> 00:08:42,770 hvað nákvæmlega er að gerast, hvað nákvæmlega ein færibreyta gera. 147 00:08:42,770 --> 00:08:48,470 Fara út að við skulum tala svolítið hluti um Hlutbundin forritun. 148 00:08:48,470 --> 00:08:52,160 Hlutbundin forritun er einn af grundvallar forritun 149 00:08:52,160 --> 00:08:57,110 tækni eða mynstur sem er nota Objective C. Objective C 150 00:08:57,110 --> 00:09:03,110 er kallað Objective C, ekki C, fyrir mjög góð ástæða. 151 00:09:03,110 --> 00:09:07,560 >> Svo áður en við komum inn Objective C setningafræði, 152 00:09:07,560 --> 00:09:11,670 Við skulum virkilega fljótt að líta á hvað nákvæmlega er hlutur. 153 00:09:11,670 --> 00:09:15,480 Við höfum líklega gert eitthvað eins hlut áður, sem 154 00:09:15,480 --> 00:09:19,780 er kallað struct þegar þú ert framkvæmd tré eða tengdan lista 155 00:09:19,780 --> 00:09:25,730 eða [? reyna. ?] Svo er það grundvallaratriðum eins strúktúrinn, 156 00:09:25,730 --> 00:09:28,560 en það er miklu öflugri en það. 157 00:09:28,560 --> 00:09:33,150 Hlut hefur aðferðir og eiginleika. 158 00:09:33,150 --> 00:09:35,310 Aðferðir eru í grundvallaratriðum aðgerðir. 159 00:09:35,310 --> 00:09:39,480 Í grundvallaratriðum aðgerðir sem sérstaklega við tiltekinn hlut. 160 00:09:39,480 --> 00:09:45,440 >> Og eiginleika eru í grundvallaratriðum reit þú tilgreinir í strúktúrinn. 161 00:09:45,440 --> 00:09:48,500 Svo fyrir hvert einasta hlut við höfum einhverja eign 162 00:09:48,500 --> 00:09:53,160 sem hefur einhverja breytur sem eru fyrir hlut. 163 00:09:53,160 --> 00:09:57,170 Og við höfum nokkrar aðgerðir sem eru einnig sérstaklega við hlut. 164 00:09:57,170 --> 00:10:01,180 Og aðgerðir eru kallaðir aðferðir og breytur eru kallaðir eignir. 165 00:10:01,180 --> 00:10:03,190 Það er bara fínt nafn. 166 00:10:03,190 --> 00:10:10,440 Þó að þú raun, hvert einasta sýn þú sérð á meðan þú opnar IOS app, 167 00:10:10,440 --> 00:10:17,720 við skulum bara segja Twitter eða Facebook, hvert einasta útsýni sem þú sérð er hlutur. 168 00:10:17,720 --> 00:10:22,110 Og jafnvel alla app er hlut til að byrja með. 169 00:10:22,110 --> 00:10:25,340 Mjög áhugavert hugtak. 170 00:10:25,340 --> 00:10:28,480 >> Og hvers vegna viljum mótmæla stilla forritun? 171 00:10:28,480 --> 00:10:33,530 Svo þú getur ímyndað sér að þegar þér program það fær nokkuð flókið. 172 00:10:33,530 --> 00:10:36,400 Segjum bara þegar þú ert framkvæmd taflborð, 173 00:10:36,400 --> 00:10:40,020 röksemdafærsla er að fara að vera mjög flókið. 174 00:10:40,020 --> 00:10:43,280 Þú hefur 36 mismunandi stykki, þannig að ef þú 175 00:10:43,280 --> 00:10:48,370 langar að skrifa rökfræði fyrir alla 36 mismunandi stykki í skák, 176 00:10:48,370 --> 00:10:52,150 það er að fara til vera a einhver fjöldi af mismunandi aðgerðir og breytur. 177 00:10:52,150 --> 00:10:54,070 Það er a einhver fjöldi af vandræðum. 178 00:10:54,070 --> 00:10:58,980 Og sennilega þú ert að fara að skrifa Önnur aðferð eða mismunandi virka 179 00:10:58,980 --> 00:11:03,950 fyrir hvert stykki til að nákvæmlega stjórna því hvað þeir gera. 180 00:11:03,950 --> 00:11:08,830 >> En ef þú gerir mótmæla stilla forritun, allar þessar stykki 181 00:11:08,830 --> 00:11:12,440 Hægt er að abstracted inn í einn einn hlut. 182 00:11:12,440 --> 00:11:16,111 Og mótmæla mun hafa nokkrar algengar eiginleika, eins hvers konar stykki 183 00:11:16,111 --> 00:11:16,610 er það? 184 00:11:16,610 --> 00:11:17,740 Hvaða litur er það? 185 00:11:17,740 --> 00:11:19,480 Hvernig getur það að færa? 186 00:11:19,480 --> 00:11:24,660 Og á þann hátt sem þú hefur stórlega einfaldað rökfræði af því. 187 00:11:24,660 --> 00:11:28,480 Svo það er bara mjög góð leið að gera flókið forrit, 188 00:11:28,480 --> 00:11:33,700 og hierarchic samband innan áætlunarinnar, mjög einfalt. 189 00:11:33,700 --> 00:11:36,800 Eins og við erum að fara að sjá hvers vegna mjög fljótt þegar 190 00:11:36,800 --> 00:11:39,660 við erum í raun að gera programming-- þegar við erum í raun og veru 191 00:11:39,660 --> 00:11:42,830 gera S kóða forritun fundur síðar. 192 00:11:42,830 --> 00:11:48,120 >> Jæja í viðbót við það, Hlutbundin forritun 193 00:11:48,120 --> 00:11:50,030 er bara mjög gaman. 194 00:11:50,030 --> 00:11:51,990 Þú verður að hanna eigin hlut þinn. 195 00:11:51,990 --> 00:11:56,080 Þú verður að hanna hvað virkar það líta út eins sjálfur. 196 00:11:56,080 --> 00:11:58,250 Það er ekkert rétt svar við henni. 197 00:11:58,250 --> 00:12:02,940 Og það er alveg áhugavert. 198 00:12:02,940 --> 00:12:07,270 Svo í Object oriented Forritun, tveir grundvallarhugmyndum 199 00:12:07,270 --> 00:12:10,130 verður bekknum og dæmi. 200 00:12:10,130 --> 00:12:13,570 A flokkur er í grundvallaratriðum sniðmát fyrir hlut. 201 00:12:13,570 --> 00:12:18,070 Og dæmi er í grundvallaratriðum einn tiltekinn hlut. 202 00:12:18,070 --> 00:12:21,090 >> Segjum bara að þú ert að gera köku. 203 00:12:21,090 --> 00:12:24,800 Í þessu tilviki, í hvert eitt kex þú endar í raun upp með 204 00:12:24,800 --> 00:12:27,310 er að fara að vera hlutur. 205 00:12:27,310 --> 00:12:35,830 En kex plata sem þú notar til baka allar smákökur verða flokki. 206 00:12:35,830 --> 00:12:37,880 A flokki er í grundvallaratriðum a sniðmát. 207 00:12:37,880 --> 00:12:46,170 Og dæmi mun vera einn sérstakur hlut búið út af þeim flokki. 208 00:12:46,170 --> 00:12:49,970 >> Og dæmi mun vera búið byggt á bekknum yfirlýsingu, 209 00:12:49,970 --> 00:12:56,760 eins og við munum sjá í síðari skyggnur. 210 00:12:56,760 --> 00:13:00,010 Svo skulum gera í raun mjög fljótur dæmi [inaudible]. 211 00:13:00,010 --> 00:13:04,280 Segjum að við erum að lýsa hlut fyrir kött. 212 00:13:04,280 --> 00:13:07,930 Hluturinn ætti have-- kötturinn bekknum ætti 213 00:13:07,930 --> 00:13:11,260 hafa sumir eiginleika og aðferðir. 214 00:13:11,260 --> 00:13:17,300 Hvers konar eignir Ætti flokki have-- ætti kötturinn að hafa? 215 00:13:17,300 --> 00:13:20,580 >> Til dæmis, litur, aldur og kyn, þá 216 00:13:20,580 --> 00:13:24,440 verður breytur sem eru sérstaklega við hvert kött. 217 00:13:24,440 --> 00:13:27,790 Og þeir eru nokkur atriði sem við notum til að lýsa kött. 218 00:13:27,790 --> 00:13:31,880 Hvers konar aðferð, eða hvað er hægt a köttur gert? 219 00:13:31,880 --> 00:13:37,160 Sumir fljótur dæmi væri elta mús, borða fisk eða bara meow. 220 00:13:37,160 --> 00:13:40,900 Þetta er mjög fljótur dæmi um köttur flokki. 221 00:13:40,900 --> 00:13:46,920 Og mjög sérstakur köttur mótmæla mun vera köttur 222 00:13:46,920 --> 00:13:50,930 þar sem við tilgreinir lit, aldur og kyn. 223 00:13:50,930 --> 00:13:53,790 >> Í því tilfelli, mótmæla okkar er ekki lengur flokki lengur. 224 00:13:53,790 --> 00:14:00,010 Við afrita sniðmát úr bekknum og við að skilgreina hvert tilteknar upplýsingar 225 00:14:00,010 --> 00:14:04,510 það tiltekna hlut til að gera það sjálfstætt. 226 00:14:04,510 --> 00:14:09,350 Og þegar þú ert að hringja í Aðferð inni í hlut, 227 00:14:09,350 --> 00:14:16,640 þú hringir bara meow á hlut, sem er kötturinn þú bjóst bara. 228 00:14:16,640 --> 00:14:19,020 >> Sennilega þú prentar út eitthvað eins og "Halló heimur! 229 00:14:19,020 --> 00:14:20,000 Meow. " 230 00:14:20,000 --> 00:14:22,110 Pretty sætur. 231 00:14:22,110 --> 00:14:24,500 Allt í lagi, við skulum bara fá inn einhverjar upplýsingar 232 00:14:24,500 --> 00:14:30,650 og sjá hvað nákvæmlega er að þýða að iOS forritun. 233 00:14:30,650 --> 00:14:36,500 Svo í iOS forritun hverjum einasta flokki verður framkvæmd í tveimur skrám. 234 00:14:36,500 --> 00:14:41,420 Ein skrá er hér, sem er kallað tengi. 235 00:14:41,420 --> 00:14:45,300 Annar skrá er hér, sem er kallað framkvæmd. 236 00:14:45,300 --> 00:14:48,890 >> Venjulega tengi mun hafa extension.h 237 00:14:48,890 --> 00:14:51,740 eins og við höfum séð í bókasöfnum C. 238 00:14:51,740 --> 00:14:56,340 Og framkvæmd skrá er fara að hafa extension.n. 239 00:14:56,340 --> 00:14:57,260 Það er góður af skrýtið. 240 00:14:57,260 --> 00:15:01,270 En .n þýðir í raun .c, það er engin grundvallarmunur á þeim 241 00:15:01,270 --> 00:15:02,100 tvö. 242 00:15:02,100 --> 00:15:06,650 Þannig að í þessu tilfelli getum við séð að við erum lýsa tengi, Cat: hlut. 243 00:15:06,650 --> 00:15:10,660 244 00:15:10,660 --> 00:15:13,760 Það er kallað arfleifð. 245 00:15:13,760 --> 00:15:19,170 Við erum í grundvallaratriðum erfi köttur flokki frá mótmæla bekknum. 246 00:15:19,170 --> 00:15:24,790 Svo hvert eign og aðferð sem var og áður var skilgreint í í Object- 247 00:15:24,790 --> 00:15:28,560 verður sjálfkrafa skilgreind í köttur flokki eins vel. 248 00:15:28,560 --> 00:15:35,900 >> Í samlagning til þessi, skilgreinum við lit, kyn og aldur, þrjár breytur. 249 00:15:35,900 --> 00:15:39,360 Sem raunverulega lítur út eins eitthvað sem þú hefur gert áður. 250 00:15:39,360 --> 00:15:41,770 Það lítur út eins og strúktúrinn. 251 00:15:41,770 --> 00:15:44,950 Það er í grundvallaratriðum the setningafræði fyrir struct yfirlýsingu, 252 00:15:44,950 --> 00:15:47,710 og það er algerlega rétt. 253 00:15:47,710 --> 00:15:51,825 Og þar sem ég nefndi áður, munurinn a struct 254 00:15:51,825 --> 00:15:53,960 og hlut, einn af grundvallar munur 255 00:15:53,960 --> 00:15:59,080 er að hlutur hefur aðferð, meðan struct hefur aðeins breytur. 256 00:15:59,080 --> 00:16:03,450 Svo til viðbótar við eiginleika eða breytur sem við höfum búið til fyrir hlutnum, 257 00:16:03,450 --> 00:16:05,700 við að skilgreina einhverja aðferð. 258 00:16:05,700 --> 00:16:09,720 >> Segjum bara hér höfum við tvær aðferðir, er einn meow, 259 00:16:09,720 --> 00:16:12,460 annað er elta mús. 260 00:16:12,460 --> 00:16:18,600 Við viljum líklega að vera farið a breytu byggt á fyrri aðferð okkar 261 00:16:18,600 --> 00:16:20,440 yfirlýsing mynstur. 262 00:16:20,440 --> 00:16:22,160 Þú vilt sennilega að vera brottför mús. 263 00:16:22,160 --> 00:16:25,180 Og þú munt sennilega vilja að skila bool kynna 264 00:16:25,180 --> 00:16:30,010 ef kötturinn þinn hefur tekist lent músina eða ekki. 265 00:16:30,010 --> 00:16:33,170 >> Þetta er tengi, en við getum sjá að viðmótið raun 266 00:16:33,170 --> 00:16:35,150 gerir ekki neitt. 267 00:16:35,150 --> 00:16:40,800 Það segir bara forrit sem exists-- hvað er í köttur bekknum. 268 00:16:40,800 --> 00:16:43,640 Svo í röð til að forrit til að gera eitthvað, 269 00:16:43,640 --> 00:16:46,680 við þurfum að hafa framkvæmd skrár. 270 00:16:46,680 --> 00:16:51,940 Svo hér er það fyrsta sem við gerum er augljóslega við innflutning tengi. 271 00:16:51,940 --> 00:16:56,470 Eftir að við flytjum tengi, við skilgreina aðferðina. 272 00:16:56,470 --> 00:17:00,150 >> Segjum bara hér meow myndi bara prenta út 273 00:17:00,150 --> 00:17:01,740 "Hello World!" að hugga. 274 00:17:01,740 --> 00:17:04,319 275 00:17:04,319 --> 00:17:08,460 Og eftir framkvæmd skrá, við erum ansi mikið gert. 276 00:17:08,460 --> 00:17:14,530 Þetta er í grundvallaratriðum a tegund Yfirlýsing fyrir einn flokk. 277 00:17:14,530 --> 00:17:19,970 Svo nú verður spurningin, hvernig gera þú lýsa breytu? 278 00:17:19,970 --> 00:17:26,880 The vegur þú notar flokk til að búa til hlut í Objective C er skrifað hér. 279 00:17:26,880 --> 00:17:30,730 >> Þú tilgreinir fyrst að þetta er köttur músina, 280 00:17:30,730 --> 00:17:38,700 því hvern hlut í Objective C er loksins til framkvæmda sem bendill. 281 00:17:38,700 --> 00:17:46,210 Og þú hringja í bekknum, kalla þá sem Alloc, sem er í grundvallaratriðum malloc, 282 00:17:46,210 --> 00:17:51,220 segja stýrikerfi sem þig þurfa sumir minni fyrir þennan hlut. 283 00:17:51,220 --> 00:17:55,780 Eftir að þú hefur hlut nú þegar og þú frumstilla bara það. 284 00:17:55,780 --> 00:17:56,780 Þetta er bara samningur. 285 00:17:56,780 --> 00:17:59,390 286 00:17:59,390 --> 00:18:04,410 Ég veit að það er er svolítið skrítið, en þetta er í raun hvernig Apple gerir efni. 287 00:18:04,410 --> 00:18:07,130 >> Úthlutun eiginleika er í raun frekar einfalt. 288 00:18:07,130 --> 00:18:09,250 Það er mjög svipað hvað þú ert að gera þegar 289 00:18:09,250 --> 00:18:13,780 þú ert að framselja sumir sérstakur reit inni strúktúr. 290 00:18:13,780 --> 00:18:16,830 Þú verður bara breytu nafn, eign nafn, 291 00:18:16,830 --> 00:18:20,140 og úthluta ákveðna gildi við það. 292 00:18:20,140 --> 00:18:24,120 Og kallar aðferð er mjög svipuð. 293 00:18:24,120 --> 00:18:29,080 The kalla aðferð er grundvallaratriðum það sem ég tala um 294 00:18:29,080 --> 00:18:32,390 fyrir starf hvaða aðferð í Objective C 295 00:18:32,390 --> 00:18:36,660 >> Þú ert liggur hlut í þetta mál það er að fara að vera myCat, 296 00:18:36,660 --> 00:18:42,490 og þú ert að hleypa aðferð nafn. 297 00:18:42,490 --> 00:18:47,130 Eins og ef þú ert að tala við hlut, myCat, að þú ættir að meow. 298 00:18:47,130 --> 00:18:48,570 Það er nokkuð áhugavert. 299 00:18:48,570 --> 00:18:52,010 300 00:18:52,010 --> 00:18:55,680 Eftir það, það er einn meira ómissandi hönnun mynstur 301 00:18:55,680 --> 00:18:59,940 að við þurfum að tala um áður en að komast að raunverulegum S kóða. 302 00:18:59,940 --> 00:19:03,300 Að hönnun munstrið heitir atburður ekið forritun. 303 00:19:03,300 --> 00:19:09,660 Þetta er líka sennilega einn af mest grundvallaratriði hugmyndir í iOS forritun. 304 00:19:09,660 --> 00:19:14,410 >> Svo þú sennilega veist ekki hvað nákvæmlega er atburður ekið forritun, 305 00:19:14,410 --> 00:19:16,990 en það er í raun ekki að skelfilegt. 306 00:19:16,990 --> 00:19:20,400 Jæja í raun, hefur þú þegar gert það áður. 307 00:19:20,400 --> 00:19:24,894 Þetta er einn af þeim línum sem þú hefur sennilega þegar skrifað í síðustu [inaudible] 308 00:19:24,894 --> 00:19:26,810 af CS50, google.maps.event.addListener (merki, 309 00:19:26,810 --> 00:19:27,810 "Smellur", virka () {}) :. 310 00:19:27,810 --> 00:19:32,410 311 00:19:32,410 --> 00:19:37,620 Með því að kalla þessa línu sem þú ert meginatriðum segja tölvuna 312 00:19:37,620 --> 00:19:42,650 að þegar atburður heitir "Smellur" gerist á merki, 313 00:19:42,650 --> 00:19:43,630 nota þessi aðgerð. 314 00:19:43,630 --> 00:19:46,910 315 00:19:46,910 --> 00:19:50,950 >> Þetta er mjög mismunandi frá hvað þú gerir í mario.c. 316 00:19:50,950 --> 00:19:56,670 Í mario.c þú keyrir bara forritið einu sinni, gefur það þér framleiðsla, 317 00:19:56,670 --> 00:19:58,590 og þú ert búinn. 318 00:19:58,590 --> 00:20:02,590 Þetta eru eins konar eins og einu skoti forrit. 319 00:20:02,590 --> 00:20:05,830 Viðburður ekið forrit eru mjög, mjög mismunandi. 320 00:20:05,830 --> 00:20:10,230 Við skulum ímynda sér, ef Facebook er einn skot program það er ekki mjög gott. 321 00:20:10,230 --> 00:20:13,750 Þú ferð bara á Facebook einu sinni og það er gert. 322 00:20:13,750 --> 00:20:16,700 Það gefur þér framleiðsla og þú aldrei fengið það aftur. 323 00:20:16,700 --> 00:20:19,380 Þú fékk aldrei neitt meira. 324 00:20:19,380 --> 00:20:23,880 >> Svo hér, sérstaklega mynstur sem við notum er 325 00:20:23,880 --> 00:20:26,940 atburður rekinn, þannig að hvert hlutverk mun 326 00:20:26,940 --> 00:20:31,480 vera veiddur miðað við það atburður hefur gerst. 327 00:20:31,480 --> 00:20:34,670 Til dæmis, ef við höfum a hnappur og við tilgreint 328 00:20:34,670 --> 00:20:39,870 að þegar að smellt er á, hringja í fall sem kallast "Hello World!" 329 00:20:39,870 --> 00:20:47,810 Þannig getum við í raun stjórna virka rökfræði 330 00:20:47,810 --> 00:20:50,560 rennsli í mjög sveigjanlegan hátt. 331 00:20:50,560 --> 00:20:55,840 The notandi geta gera eða hringja í aðgerð sem hefur þegar verið kallað. 332 00:20:55,840 --> 00:20:59,900 Það er algjörlega byggt á hvað notendur gera. 333 00:20:59,900 --> 00:21:04,080 >> Svo við getum séð að þetta er í raun miklu betri en mario.c. 334 00:21:04,080 --> 00:21:07,190 Og góðar fréttir er að það er reyndar ekki nýtt hugtak. 335 00:21:07,190 --> 00:21:12,140 Þú krakkar hafa þegar gert að á síðasta vandamáli sett. 336 00:21:12,140 --> 00:21:16,640 Svo í Objective C eru þrjár mismunandi skýringarmyndir 337 00:21:16,640 --> 00:21:19,030 fyrir atburð ekið forritun. 338 00:21:19,030 --> 00:21:21,970 Fyrsta mynd er kallað aðgerð miða, 339 00:21:21,970 --> 00:21:26,990 þar sem þú binda hnappinn ýttu með nokkrum virka. 340 00:21:26,990 --> 00:21:31,590 Segjum bara, þegar þú smellir sumir hnappur, þú kalla sumir virka. 341 00:21:31,590 --> 00:21:33,620 Þetta er mjög einfalt skotmark aðgerð. 342 00:21:33,620 --> 00:21:35,580 >> The second einn er reyndar erfiðasta einn, 343 00:21:35,580 --> 00:21:38,450 það heitir sendinefnd á siðareglur. 344 00:21:38,450 --> 00:21:41,800 Við erum að fara að útskýra að í smáatriðum síðar. 345 00:21:41,800 --> 00:21:44,420 Og þriðja leiðin er tilkynning. 346 00:21:44,420 --> 00:21:46,770 Þetta er í raun ekki mjög mikilvægt eins langt 347 00:21:46,770 --> 00:21:50,920 eins og við erum að ræða, vegna þess að tækifæri að þú ert að fara að nota tilkynningu 348 00:21:50,920 --> 00:21:53,310 í lokaverkefni þitt er mjög lágt. 349 00:21:53,310 --> 00:21:56,440 Þannig að við erum að fara að sleppa þeim hluta. 350 00:21:56,440 --> 00:21:59,460 >> Og við erum að fara að kafa í sendinefnd á siðareglur. 351 00:21:59,460 --> 00:22:02,380 352 00:22:02,380 --> 00:22:04,470 Svo hvaða einmitt er siðareglur? 353 00:22:04,470 --> 00:22:06,450 Eða hvað nákvæmlega er sendinefnd? 354 00:22:06,450 --> 00:22:09,670 Við skulum tala um siðareglur til að byrja með. 355 00:22:09,670 --> 00:22:13,360 Bókanir eru ekkert annað en atburði. 356 00:22:13,360 --> 00:22:19,230 En þessir atburðir eru gefin til þú af Apple til að byrja með. 357 00:22:19,230 --> 00:22:22,640 Til dæmis, ég er ekki alveg viss um hvernig margir af þú 358 00:22:22,640 --> 00:22:27,930 krakkar nota upprunalega Apple app mail eða tengilið, 359 00:22:27,930 --> 00:22:32,180 en í hvert skipti sem þú flettir að borð og ýta á ákveðna frumu 360 00:22:32,180 --> 00:22:36,130 á borðið, það er viðburður. 361 00:22:36,130 --> 00:22:38,330 >> Og ef þú vilt gera að atburður sjálfur, 362 00:22:38,330 --> 00:22:40,410 það er í raun svolítið erfitt. 363 00:22:40,410 --> 00:22:44,880 Svo Apple hefur gefið að jafnvel við þig þannig að þú getur bara beint að nota 364 00:22:44,880 --> 00:22:49,610 atburður að gera eitthvað á eigin spýtur. 365 00:22:49,610 --> 00:22:52,980 Siðareglur eru í raun virkilega, virkilega mikið notað 366 00:22:52,980 --> 00:22:58,320 í Objective C. vel í staðreynd, hvert einasta app 367 00:22:58,320 --> 00:23:00,870 hefur eitthvað lent app fulltrúa. 368 00:23:00,870 --> 00:23:06,330 Inni viðkvæmt er allt af samskiptareglur fyrir hleðslu app. 369 00:23:06,330 --> 00:23:12,470 >> Við skulum bara segja að það er atburður fyrir app gerði álag. 370 00:23:12,470 --> 00:23:18,200 Svo hvað ætti að gerast þegar þú hefur búin að app, eftir að þú opnar forritið, 371 00:23:18,200 --> 00:23:22,630 eftir að þú lokar app, eða eftir þú setur iPhone að sofa. 372 00:23:22,630 --> 00:23:27,480 Þetta eru allir atburðir sem hefur þegar verið gefið. 373 00:23:27,480 --> 00:23:34,730 Og upphaflega inni þessara agna það verður engin framkvæmd. 374 00:23:34,730 --> 00:23:39,750 Apple bara sagt þér að þetta fall mun gerast þegar sumir atburður gerist, 375 00:23:39,750 --> 00:23:44,380 en hvað þú gerir við það virka er alveg undir þér komið. 376 00:23:44,380 --> 00:23:49,290 >> Sendinefnd er í grundvallaratriðum segja bekknum 377 00:23:49,290 --> 00:23:53,060 að þú ætti að höndla þessar siðareglur. 378 00:23:53,060 --> 00:23:55,340 Það er svolítið truflandi, en það mun vera 379 00:23:55,340 --> 00:23:59,380 miklu skýrari þegar við gerum að s númerin í aðgerð. 380 00:23:59,380 --> 00:24:04,760 Sendinefnd á siðareglur er í raun Mjög sterkur vélbúnaður í þeim skilningi 381 00:24:04,760 --> 00:24:08,160 að ef við gerum sendinefnd við ákveðinn flokk, 382 00:24:08,160 --> 00:24:12,400 við getum í raun séð alls konar viðburði 383 00:24:12,400 --> 00:24:17,040 nota hvaða tegund sem við höfum, mjög þægilegt tól. 384 00:24:17,040 --> 00:24:21,530 >> Svo einn fljótur dæmi fyrir sendinefnd á siðareglur 385 00:24:21,530 --> 00:24:24,120 verður það sem ég talaði bara um. 386 00:24:24,120 --> 00:24:26,720 387 00:24:26,720 --> 00:24:30,890 Þessi samskiptamáti sérstaklega er kallað Tableview [inaudible] velja hlutverk 388 00:24:30,890 --> 00:24:35,480 á [? Vísitala?] [? fortíð. ?] Þannig að þetta er atburður sem myndi vera veiddur þegar þér 389 00:24:35,480 --> 00:24:39,710 raun tappa á a sérstakur fruma í Tableview þinni, 390 00:24:39,710 --> 00:24:43,570 segjum bara í póstinn þinn eða á tengiliðalistanum app. 391 00:24:43,570 --> 00:24:48,180 >> Inni fall var upphaflega að gera ekki neitt. 392 00:24:48,180 --> 00:24:51,950 Fallið er ekki gera neitt sjálfgefið. 393 00:24:51,950 --> 00:24:55,540 En þú getur tilgreint hvað aðgerðin tekur, 394 00:24:55,540 --> 00:24:59,610 gefið það sem þú vilt út úr forritinu þínu. 395 00:24:59,610 --> 00:25:01,610 Mjög þægilegt tól. 396 00:25:01,610 --> 00:25:06,840 Og með allt sem að segja, ég í rauninni 397 00:25:06,840 --> 00:25:11,430 ná einhverjum mjög undirstöðu setningafræði og grundvallaratriði hugtak fyrir Objective C 398 00:25:11,430 --> 00:25:15,860 forritun, og við getum gert nokkrar s kóða. 399 00:25:15,860 --> 00:25:17,980 Miklu meira spennandi. 400 00:25:17,980 --> 00:25:21,070 Svo er s kóða raun svolítið yfirþyrmandi 401 00:25:21,070 --> 00:25:23,330 þegar þú opnar það í fyrsta skipti. 402 00:25:23,330 --> 00:25:26,640 >> Einn fljótur athugið, þannig að ef þú langar að gera IOS þróun, 403 00:25:26,640 --> 00:25:29,630 Ég mæli þú ert með Mac. 404 00:25:29,630 --> 00:25:33,930 Því að gera IOS þróun á Windows er mjög, mjög erfitt. 405 00:25:33,930 --> 00:25:37,560 Það er mögulegt, en það er mjög erfitt. 406 00:25:37,560 --> 00:25:40,610 Og þú örugglega ekki að nota g breyta. 407 00:25:40,610 --> 00:25:47,950 Svo í s kóða við höfum mismunandi svæðum. 408 00:25:47,950 --> 00:25:53,050 Þegar þú opnar upp s kóða þú munt sjá flakk svæði, 409 00:25:53,050 --> 00:25:57,470 sem í grundvallaratriðum sýnir þér alla skrár sem er í núverandi verkefni. 410 00:25:57,470 --> 00:26:03,590 >> Þú ert með tólastiku svæði, sem er í grundvallaratriðum stjórna skoðunum, 411 00:26:03,590 --> 00:26:08,570 eða einhver smá fljótur verkfæri um s sjálft. 412 00:26:08,570 --> 00:26:11,140 Og þetta er í raun ritstjóri svæði. 413 00:26:11,140 --> 00:26:15,900 Þetta svæði er mjög svipuð g breyta, en miklu betra en g breyta. 414 00:26:15,900 --> 00:26:21,150 Og í þessu rétt svæði er kallað gagnsemi svæði. 415 00:26:21,150 --> 00:26:27,170 Svæðið verður mjög vel þegar þú ert að búa tengi eða tilgreina 416 00:26:27,170 --> 00:26:30,070 sumir fljótur skipulag fyrir app. 417 00:26:30,070 --> 00:26:34,570 >> Og endanleg svæði er kembiforrit. 418 00:26:34,570 --> 00:26:37,970 Þetta svæði inniheldur vélinni. 419 00:26:37,970 --> 00:26:43,170 Svo þegar þú segir printf, eða nslog í okkar tilviki, 420 00:26:43,170 --> 00:26:47,330 Allar niðurstöður eru að fara að prenta hér. 421 00:26:47,330 --> 00:26:48,260 Allt í lagi? 422 00:26:48,260 --> 00:26:52,090 Ég held að við getum í raun fljótt gera dæmi fyrir iOS forritun. 423 00:26:52,090 --> 00:26:54,220 Og við skulum opna raun upp s kóða. 424 00:26:54,220 --> 00:26:57,210 425 00:26:57,210 --> 00:27:01,346 Svo í hvert skipti sem þú opnar upp s kóða, það er fara að mæta eitthvað svoleiðis. 426 00:27:01,346 --> 00:27:03,220 Það er að fara að biðja þig hvað viltu gera? 427 00:27:03,220 --> 00:27:06,830 Viltu byrja eitthvað handahófi, leiksvæði, í grundvallaratriðum þú 428 00:27:06,830 --> 00:27:11,250 getur bara prófa kóðann án raun fremja hvaða app. 429 00:27:11,250 --> 00:27:13,020 >> Viltu búa til nýtt verkefni? 430 00:27:13,020 --> 00:27:16,660 Eða viltu halda áfram vinna á núverandi verkefni? 431 00:27:16,660 --> 00:27:20,270 Í okkar tilviki erum við að fara til að búa til nýtt verkefni. 432 00:27:20,270 --> 00:27:22,980 Svo það er mjög gaman, s númer hefur reyndar þegar 433 00:27:22,980 --> 00:27:26,820 gefið þér nokkrar sniðmát til að búa til hluti. 434 00:27:26,820 --> 00:27:32,680 Ef þú vilt gera leik, s kóða reyndar hefur leik sniðmát fyrir þig, 435 00:27:32,680 --> 00:27:36,890 hefur síðu undirstaða umsókn, flipann undirstaða umsókn. 436 00:27:36,890 --> 00:27:39,280 Í þessu tilfelli erum við að fara að gera eitthvað mjög einfalt, 437 00:27:39,280 --> 00:27:43,230 og við erum að fara að nota a einn útsýni umsókn. 438 00:27:43,230 --> 00:27:48,270 >> Eftir það bara hvað þú vilt hringja vöruna, og hvað er nafnið þitt, 439 00:27:48,270 --> 00:27:52,760 hvað er heiti þitt, og hvaða tungumál þú notar. 440 00:27:52,760 --> 00:27:57,060 Hér við viljum ekki að athuga með Core Data. 441 00:27:57,060 --> 00:28:00,170 Core Data er í grundvallaratriðum a databasing iOS. 442 00:28:00,170 --> 00:28:05,360 Ef þú gerir Core Data, s númer er að fara að skilgreina 443 00:28:05,360 --> 00:28:07,710 mikið flóknara flokkar fyrir þig. 444 00:28:07,710 --> 00:28:12,740 Svo til að halda öllu einfalt, við erum bara að fara að gera án Core Data 445 00:28:12,740 --> 00:28:15,290 núna. 446 00:28:15,290 --> 00:28:18,030 >> Vandamálið sem við erum að fara að vera nota er that-- vandamálinu 447 00:28:18,030 --> 00:28:23,770 við erum að fara að búa til er að við grundvallaratriðum vilt flytja Mario frá C 448 00:28:23,770 --> 00:28:25,437 til IOS app. 449 00:28:25,437 --> 00:28:26,645 Svo skulum kalla það Mario-IOS. 450 00:28:26,645 --> 00:28:31,230 451 00:28:31,230 --> 00:28:34,880 Auðvitað þú tilgreinir hvað þér vilja til setja í verkefninu. 452 00:28:34,880 --> 00:28:37,870 Og þar sem við förum. 453 00:28:37,870 --> 00:28:41,390 >> Þannig að þetta er svolítið yfirþyrmandi, en þetta er í raun 454 00:28:41,390 --> 00:28:43,540 það sem við sáum bara stóð. 455 00:28:43,540 --> 00:28:49,710 Og fyrsta svæði sem við sjáum núna er í grundvallaratriðum verkefni stillingar. 456 00:28:49,710 --> 00:28:53,390 Svo allt sem þú vilt gera Verkefnið, hvers konar tæki, 457 00:28:53,390 --> 00:28:58,810 við skulum bara segja hvers konar tæki viltu app til að birtast á? 458 00:28:58,810 --> 00:29:01,280 Er það iPhone, iPad eða alhliða? 459 00:29:01,280 --> 00:29:04,660 Svo tæki stefnumörkun, allt þetta efni. 460 00:29:04,660 --> 00:29:08,490 Ekki mjög mikilvægt, en gæti verið, en þetta 461 00:29:08,490 --> 00:29:11,050 er staður þar sem þú setur upp verkefni ef þú í raun og veru 462 00:29:11,050 --> 00:29:15,180 langar að senda til Apple Store. 463 00:29:15,180 --> 00:29:20,420 >> Allt í lagi, við skulum líta á eitthvað sem er inni kóða. 464 00:29:20,420 --> 00:29:22,360 Við skulum fara í gegnum skrá Navigator. 465 00:29:22,360 --> 00:29:30,140 Og þetta eru allar skrár sem þegar kom með sniðmáti, mjög gott. 466 00:29:30,140 --> 00:29:35,980 Svo þegar við smellur einn af þeim þetta er það sem það lítur út. 467 00:29:35,980 --> 00:29:38,530 Mjög svipað g breyta. 468 00:29:38,530 --> 00:29:41,340 En þú getur séð að setningafræði auðkenning er líklega 469 00:29:41,340 --> 00:29:42,780 svolítið betur. 470 00:29:42,780 --> 00:29:45,610 Og það er í raun miklu meira öflugri en g klippingu. 471 00:29:45,610 --> 00:29:49,970 Og þú getur sjálfvirkt lokið a einhver fjöldi af hlutur fyrir þig, 472 00:29:49,970 --> 00:29:52,370 eins og við munum sjá mjög fljótt. 473 00:29:52,370 --> 00:29:54,100 >> Við skulum opna kembiforrit svæði eins og heilbrigður. 474 00:29:54,100 --> 00:30:02,790 475 00:30:02,790 --> 00:30:07,000 Allt í lagi, eins og sjá má, hugga er hérna. 476 00:30:07,000 --> 00:30:13,840 Þetta er það sem þú ert að fara að sjá hvar þú ert í printf eða nsloging eitthvað. 477 00:30:13,840 --> 00:30:17,155 Svo án frekari fjaðrafok, við skulum í raun þýða forritið og sjá hvað gerist. 478 00:30:17,155 --> 00:30:20,000 479 00:30:20,000 --> 00:30:23,410 Eitt mikilvægt lögun fyrir s kóða, er að s kóða 480 00:30:23,410 --> 00:30:25,850 koma með iPhone hermir. 481 00:30:25,850 --> 00:30:29,820 Svo þú þarft ekki að hafa iPhone til að reyna verkefni, 482 00:30:29,820 --> 00:30:34,440 s kóða má líkja að fyrir þú, eins og við getum séð núna. 483 00:30:34,440 --> 00:30:36,406 >> Það er nokkuð gott. 484 00:30:36,406 --> 00:30:38,640 Það tekur smá smá tíma til að safna saman 485 00:30:38,640 --> 00:30:43,040 og í rauninni höfum við tómt umsókn, 486 00:30:43,040 --> 00:30:44,640 sem reyndar gerir ekki neitt. 487 00:30:44,640 --> 00:30:46,175 En það safnar. 488 00:30:46,175 --> 00:30:47,380 Það er nokkuð ógnvekjandi. 489 00:30:47,380 --> 00:30:50,200 Það er miklu betra en C, ha? 490 00:30:50,200 --> 00:30:52,130 Allt í lagi, þá skulum reyna að bæta eitthvað. 491 00:30:52,130 --> 00:30:56,050 492 00:30:56,050 --> 00:31:02,650 Ein skrá sem er svolítið undarlegt hér er kallað storyboard. 493 00:31:02,650 --> 00:31:08,020 Þetta er í raun frábær, ógnvekjandi lögun fyrir s kóða. 494 00:31:08,020 --> 00:31:14,170 Vegna þess að í s kóða, getur þú í raun draga og falla þætti á tengi 495 00:31:14,170 --> 00:31:17,430 og það verður beint mæta. 496 00:31:17,430 --> 00:31:18,055 Við skulum reyna það. 497 00:31:18,055 --> 00:31:21,230 498 00:31:21,230 --> 00:31:27,236 >> Við falla merki hér, "Hello World !!!" 499 00:31:27,236 --> 00:31:29,740 Við getum sent það. 500 00:31:29,740 --> 00:31:30,970 Laglegur kaldur. 501 00:31:30,970 --> 00:31:33,915 Nú skulum keyra þetta stöðva uppgerð. 502 00:31:33,915 --> 00:31:36,940 503 00:31:36,940 --> 00:31:38,700 Hér höfum við "Hello World !!!" 504 00:31:38,700 --> 00:31:40,810 Við vildum ekki einu sinni gera allir erfðaskrá ennþá. 505 00:31:40,810 --> 00:31:42,750 Hvað Heck er að gerast? 506 00:31:42,750 --> 00:31:45,880 Þetta er hvernig öflugur Interface Builder getur verið. 507 00:31:45,880 --> 00:31:48,030 Einhver sagði einu sinni að þú getur sennilega bara 508 00:31:48,030 --> 00:31:52,800 ljúka app án þess að skrifa sennilega þúsund línur af kóða 509 00:31:52,800 --> 00:31:54,820 bara með því að nota Interface Builder. 510 00:31:54,820 --> 00:31:59,680 En það er líklega ekki besta leiðin til að gera það. 511 00:31:59,680 --> 00:32:01,670 >> Nú skulum fá í raun niður til erfðaskrá. 512 00:32:01,670 --> 00:32:04,860 513 00:32:04,860 --> 00:32:08,330 Svo uppbyggingu á skrána er reyndar mjög áhugavert 514 00:32:08,330 --> 00:32:15,610 vegna þess, eins og þú sérð, það er engin Helsta hlutverk hvar. 515 00:32:15,610 --> 00:32:17,466 Sjá? 516 00:32:17,466 --> 00:32:19,340 Eins og við umtal áður, þú getur séð að þetta 517 00:32:19,340 --> 00:32:22,830 er framkvæmd skrá í ákveðinn flokk. 518 00:32:22,830 --> 00:32:25,690 En það er engin helsta hvar sem er. 519 00:32:25,690 --> 00:32:27,490 Svo hvar er main? 520 00:32:27,490 --> 00:32:31,970 Reyndar, það er helsta, en Helstu er í raun hulin. 521 00:32:31,970 --> 00:32:34,560 The aðalæð er hér. 522 00:32:34,560 --> 00:32:37,120 Það lítur þekki. 523 00:32:37,120 --> 00:32:41,000 >> Svo í rauninni hvað iOS er að gera inni helsta 524 00:32:41,000 --> 00:32:43,540 er að þegar helstu er heitir, sem er í grundvallaratriðum 525 00:32:43,540 --> 00:32:49,000 þegar app er keyrð, það skapar hlut sem kallast AppDelegate. 526 00:32:49,000 --> 00:32:52,980 527 00:32:52,980 --> 00:32:57,350 Eins og ég nefndi áður, allt app er í raun hlutur af sjálfu sér. 528 00:32:57,350 --> 00:33:02,270 Svo á þennan hátt, í grundvallaratriðum iOS app er að segja þýðanda 529 00:33:02,270 --> 00:33:05,540 það í lagi, ég ætla að búa til vara heitir AppDelegate, 530 00:33:05,540 --> 00:33:07,620 og það er að fara að vera app minn. 531 00:33:07,620 --> 00:33:09,640 Svo þú þarft að fara gegnum þessi AppDelegate 532 00:33:09,640 --> 00:33:12,040 og sjá hvað þessi strákur er að gera. 533 00:33:12,040 --> 00:33:14,850 Starf mitt er gert fyrir mig. 534 00:33:14,850 --> 00:33:22,070 >> Og í AppDelegate þú getur séð að það eru sumir raunverulega furðulegur aðgerðir, 535 00:33:22,070 --> 00:33:25,290 vel í raun aðferðir, sem Apple hefur nú þegar gefið þér. 536 00:33:25,290 --> 00:33:27,464 Hvað eru þessir? 537 00:33:27,464 --> 00:33:31,010 Þetta eru í raun bara samskiptareglur að ég var að tala um. 538 00:33:31,010 --> 00:33:35,670 Svo þetta eru viðburðir sem Apple hefur gefið þér til að byrja með. 539 00:33:35,670 --> 00:33:38,050 Það er ekkert í sumar af hlutverkum núna, 540 00:33:38,050 --> 00:33:40,820 en ef við viljum að frumstilla eitthvað fyrir app okkar 541 00:33:40,820 --> 00:33:46,140 áður hafa komist sýna allir að skoða, gera við það hér. 542 00:33:46,140 --> 00:33:51,150 >> Þú getur bara lesið nafn og ég held atburður er reyndar mjög skýr. 543 00:33:51,150 --> 00:33:54,160 544 00:33:54,160 --> 00:33:58,350 Svo nú helsta hefur skapað hlut fyrir AppDelegate. 545 00:33:58,350 --> 00:34:05,220 Og hvað AppDelegate er að fara að gera er í raun einnig hulin. 546 00:34:05,220 --> 00:34:09,250 The AppDelegate er að fara að byrja hleðslu ViewController lager. 547 00:34:09,250 --> 00:34:13,170 Svo það er í rauninni að fara að byrja hleðslu allt skoðanir sem þú hefur 548 00:34:13,170 --> 00:34:17,500 og bara láta þá skoðun byggt á stigveldi. 549 00:34:17,500 --> 00:34:21,280 >> Svo í þessu tilfelli höfum við aðeins Ein skoðun, sem er hér. 550 00:34:21,280 --> 00:34:25,060 Svo er að bara skoðað það er að fara að vera kölluð. 551 00:34:25,060 --> 00:34:28,159 The ViewController rökfræði er hérna. 552 00:34:28,159 --> 00:34:32,159 Þetta er kóðinn sem raunverulega stýrir útsýni við sáum bara. 553 00:34:32,159 --> 00:34:33,679 Allt í lagi, við skulum gera eitthvað hérna. 554 00:34:33,679 --> 00:34:44,030 555 00:34:44,030 --> 00:34:50,560 Svo viewDidLoad hljómar eins atburði, þegar í raun er þetta líka fulltrúi, 556 00:34:50,560 --> 00:34:52,500 þetta er líka siðareglur. 557 00:34:52,500 --> 00:34:56,350 >> Svo hvað útsýnið er hlaðinn, Allt inni í virka 558 00:34:56,350 --> 00:34:57,920 verður kallaður. 559 00:34:57,920 --> 00:35:02,840 Í þessu tilfelli erum við að sjá "Hello Tianyu! "Ef við hlaupa the program. 560 00:35:02,840 --> 00:35:09,820 561 00:35:09,820 --> 00:35:12,842 Það er að fá svolítið hægur gerð storyboard skrár. 562 00:35:12,842 --> 00:35:15,440 563 00:35:15,440 --> 00:35:18,190 Vel örugglega, við sjáum framleiðsla fyrir það. 564 00:35:18,190 --> 00:35:20,720 Það er laglegur kaldur. 565 00:35:20,720 --> 00:35:22,000 Nú skulum gera í raun Mario. 566 00:35:22,000 --> 00:35:25,400 567 00:35:25,400 --> 00:35:27,625 Ég ætla að skilgreina virka mjög fljótt. 568 00:35:27,625 --> 00:35:31,510 569 00:35:31,510 --> 00:35:54,245 marioWithLevels: (int) stigi niðurstöður. 570 00:35:54,245 --> 00:36:01,120 571 00:36:01,120 --> 00:36:06,410 >> Allt í lagi, þetta er í raun ógnvekjandi eiginleiki s kóða farartæki lokið. 572 00:36:06,410 --> 00:36:10,680 Svo þegar þú skrifar fyrir og slá inn, það hefur nú þegar gefið upp sniðmát 573 00:36:10,680 --> 00:36:12,325 fyrir þig, sem er laglegur kaldur. 574 00:36:12,325 --> 00:36:50,480 575 00:36:50,480 --> 00:36:52,850 Það ætti að líta raunverulega þekki til ykkur. 576 00:36:52,850 --> 00:36:55,940 577 00:36:55,940 --> 00:36:59,680 Því miður, það er mér að kenna. 578 00:36:59,680 --> 00:37:15,790 579 00:37:15,790 --> 00:37:18,120 Allt í lagi, flott. 580 00:37:18,120 --> 00:37:22,710 Það rökfræði ætti að líta mjög kunnugleg að ykkur, einkum rétt Mario. 581 00:37:22,710 --> 00:37:26,140 >> En við munum nú prenta út til hugga hvert einasta sinn, 582 00:37:26,140 --> 00:37:29,280 vegna þess að við viljum að einhvern veginn að halda utan um það sem við erum að prenta. 583 00:37:29,280 --> 00:37:31,810 Við erum að fara að nota niðurstöður einhvern veginn seinna, 584 00:37:31,810 --> 00:37:35,010 til að birta prenta út leiða til notanda. 585 00:37:35,010 --> 00:37:37,730 Þannig að í stað að við erum bara nslogging allt, 586 00:37:37,730 --> 00:37:42,410 sem við erum að geyma allt í virka kalla vegna, 587 00:37:42,410 --> 00:37:44,070 en rökfræði er nákvæmlega sú sama. 588 00:37:44,070 --> 00:37:48,030 589 00:37:48,030 --> 00:37:51,800 Eftir að við klára það, við bara prenta niðurstöður okkar. 590 00:37:51,800 --> 00:37:59,330 591 00:37:59,330 --> 00:38:04,970 >> Og hér í stað þess að prenta út minn nafn, við erum að fara að hringja í aðgerð. 592 00:38:04,970 --> 00:38:15,340 593 00:38:15,340 --> 00:38:18,090 Við skulum sjá hvað gerist. 594 00:38:18,090 --> 00:38:21,240 Úbbs, vitanlega. 595 00:38:21,240 --> 00:38:24,320 Við höfum gott litla pýramída út hér. 596 00:38:24,320 --> 00:38:28,370 Þetta er í grundvallaratriðum C, við erum bara notfæra þar sem þú hringja í aðgerð 597 00:38:28,370 --> 00:38:30,010 og hvernig virkar fall líta út. 598 00:38:30,010 --> 00:38:31,560 Það er ekkert öðruvísi. 599 00:38:31,560 --> 00:38:34,040 En þetta er í raun ekki mjög spennandi hér, 600 00:38:34,040 --> 00:38:37,500 vegna þess að við erum ekki að sjá allt frá iPhone app. 601 00:38:37,500 --> 00:38:42,120 >> Svo ef þú ert í raun iPhone app-- ef þú ert í raun Mario IOS rétt 602 00:38:42,120 --> 00:38:45,080 nú, þú ert ekki að fara að sjá eitthvað sem 603 00:38:45,080 --> 00:38:49,450 hefur eitthvað að gera með Mario því allir þessir framleiðsla í vélinni 604 00:38:49,450 --> 00:38:51,620 eru falin frá notanda. 605 00:38:51,620 --> 00:38:53,850 Þetta er það sem þú sérð, sem er "Hello World !!!" 606 00:38:53,850 --> 00:38:55,720 Ekki gott. 607 00:38:55,720 --> 00:39:03,090 Nú skulum reyna að gera notanda að sjá hvað nákvæmlega við erum að prenta út. 608 00:39:03,090 --> 00:39:06,000 Þannig að við þurfum ekki að merkja lengur. 609 00:39:06,000 --> 00:39:09,800 Við skulum reyna að reikna út eitthvað annað sem gæti verið gagnlegt. 610 00:39:09,800 --> 00:39:12,140 >> Það er í raun einn þáttur sem heitir 611 00:39:12,140 --> 00:39:16,460 texti sviði, sem gæti verið mjög gagnlegt fyrir okkur. 612 00:39:16,460 --> 00:39:19,880 Það birtir í grundvallaratriðum svæði texta sem hægt er að breyta. 613 00:39:19,880 --> 00:39:22,320 Svo lítur það mjög gagnlegt. 614 00:39:22,320 --> 00:39:23,810 Nú skulum draga það og sleppa því. 615 00:39:23,810 --> 00:39:26,880 616 00:39:26,880 --> 00:39:32,670 Vá, höfum við texta útsýni að okkar mati, mjög fínt. 617 00:39:32,670 --> 00:39:35,430 Það er svolítið of stór. 618 00:39:35,430 --> 00:39:38,150 Við skulum gera það minna. 619 00:39:38,150 --> 00:39:40,290 Setjið það í miðju. 620 00:39:40,290 --> 00:39:43,760 Minnkað hana eins og heilbrigður. 621 00:39:43,760 --> 00:39:50,110 >> Nú höfum við texta útsýni, sem við gátum nota til að sýna endanlega niðurstöðu okkar. 622 00:39:50,110 --> 00:39:52,860 En núna er það örugglega ekki að fara að vinna 623 00:39:52,860 --> 00:39:56,970 vegna þess að það er no-- að ViewController við bara 624 00:39:56,970 --> 00:40:03,010 skilgreind veit ekki að það er texti útsýni þarna úti. 625 00:40:03,010 --> 00:40:06,550 Þannig að við þurfum að einhvern veginn tengja texta útsýni við bara 626 00:40:06,550 --> 00:40:11,660 búin með bekknum sem hefur nú þegar komið með okkur. 627 00:40:11,660 --> 00:40:14,860 >> Leiðin sem við gerum sem er reyndar mjög töfrandi. 628 00:40:14,860 --> 00:40:18,190 Svo opna Sögulínur. 629 00:40:18,190 --> 00:40:22,220 Það er sérstakt [inaudible] heitir [? aðstoðarmaður?] [inaudible]. 630 00:40:22,220 --> 00:40:25,190 Þegar þú smellir það, það er að fara að opna tvær skrár. 631 00:40:25,190 --> 00:40:29,425 Einn er í flokki og hitt er samsvarandi sýn fyrir það. 632 00:40:29,425 --> 00:40:31,920 Það er mjög, mjög gagnlegt. 633 00:40:31,920 --> 00:40:35,950 Og við skulum bara fer í gegnum .h skrá. 634 00:40:35,950 --> 00:40:39,110 Control, þetta er [inaudible] rökfræði. 635 00:40:39,110 --> 00:40:47,280 Ýttu Control og dragðu Textayfirlit í yfirlýsingunni. 636 00:40:47,280 --> 00:40:48,780 Við erum að fara að kalla það outputView. 637 00:40:48,780 --> 00:40:52,189 638 00:40:52,189 --> 00:40:53,670 Tengja. 639 00:40:53,670 --> 00:40:59,420 Svo hér höfum við lýst nýtt eign fyrir ViewController bekknum. 640 00:40:59,420 --> 00:41:02,300 Og nýja eign er bara texti útsýni 641 00:41:02,300 --> 00:41:05,000 við höfum búið í tengi byggingu. 642 00:41:05,000 --> 00:41:07,990 Svo á þann hátt að við gætum aðgang að öllum gögnum 643 00:41:07,990 --> 00:41:13,630 og vinna allt sem er inni framleiðsla útsýni, sem er ógnvekjandi. 644 00:41:13,630 --> 00:41:19,260 >> Svo í raun númerið okkar, við skulum gera eitthvað við það. 645 00:41:19,260 --> 00:41:23,810 Þannig að þetta skipti þegar við erum eins prentun út endanlega niðurstöðu fyrir Mario, 646 00:41:23,810 --> 00:41:28,020 við erum í ekki að skrá þig neitt. 647 00:41:28,020 --> 00:41:30,080 Ég meina við gætum haldið skógarhögg yfirlýsingu. 648 00:41:30,080 --> 00:41:41,490 Í samlagning til þessi, við senda aflestri við bara 649 00:41:41,490 --> 00:41:47,622 búin að framleiðsla útsýni, sem er UI textview við bjuggum bara. 650 00:41:47,622 --> 00:41:48,746 Nú skulum sjá hvað gerist. 651 00:41:48,746 --> 00:41:54,470 652 00:41:54,470 --> 00:41:56,620 Vá. 653 00:41:56,620 --> 00:41:59,130 Við höfum pýramída í app núna. 654 00:41:59,130 --> 00:42:06,720 >> Svo getur notandinn séð framleiðsla okkar vegna við höfum afrita úttak kóða okkar 655 00:42:06,720 --> 00:42:08,045 að trufla þig. 656 00:42:08,045 --> 00:42:10,950 Það er nokkuð gott. 657 00:42:10,950 --> 00:42:14,990 Það er í raun ekki að spennandi vegna þess að við can-- 658 00:42:14,990 --> 00:42:18,250 Allt app er að gera er sýna pýramída til þín, 659 00:42:18,250 --> 00:42:20,520 og það er ekkert sem þú getur gert það. 660 00:42:20,520 --> 00:42:22,330 Það er ekki sérlega spennandi. 661 00:42:22,330 --> 00:42:27,840 Svo nú skulum gera hnappinn sem mun hreinsa skoðanir. 662 00:42:27,840 --> 00:42:30,290 Virðist sem hnappur vilja vera hjálpsamur. 663 00:42:30,290 --> 00:42:33,270 Draga og sleppa. 664 00:42:33,270 --> 00:42:33,900 Button einn. 665 00:42:33,900 --> 00:42:36,730 666 00:42:36,730 --> 00:42:37,320 Button tvö. 667 00:42:37,320 --> 00:42:49,170 668 00:42:49,170 --> 00:42:52,052 >> Svo þegar við smellur vinstri hnappinn, útsýnið ætti að hreinsa. 669 00:42:52,052 --> 00:42:53,635 Það ætti að vera ekkert á skjánum. 670 00:42:53,635 --> 00:42:56,970 Og þegar við smellur the hægri hnappinn, Mario, 671 00:42:56,970 --> 00:42:59,740 útsýnið er að fara að birtast aftur. 672 00:42:59,740 --> 00:43:05,510 Þannig að þetta leiðin sem við gerum líka galdur efni, eftirlit og draga 673 00:43:05,510 --> 00:43:08,740 á bekknum yfirlýsingu í aðstoðarmaður director-- 674 00:43:08,740 --> 00:43:11,600 í aðstoðarmaður áhorfandi. 675 00:43:11,600 --> 00:43:18,620 Í þessu tilfelli erum við að tilgreina að það ætti að vera aðgerð. 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 >> Svo hér höfum við nú þegar búið aðgerð kallast clearMario, 679 00:43:26,830 --> 00:43:34,210 sem er aðferð sem myndi vera kallað þegar við ýta á hnappinn skýr. 680 00:43:34,210 --> 00:43:41,030 Svo í raun númerið okkar, við skulum bara setja framleiðsla texta og framleiðsla útsýni 681 00:43:41,030 --> 00:43:44,620 í ekki neitt og þannig það mun birtast að vera skýr. 682 00:43:44,620 --> 00:43:47,500 683 00:43:47,500 --> 00:43:57,230 Í samlagning til þessi, við skulum búa til önnur aðferð sem kallast runMario. 684 00:43:57,230 --> 00:44:00,140 685 00:44:00,140 --> 00:44:03,436 Oh miður, sem ætti ekki að vera eign. 686 00:44:03,436 --> 00:44:12,107 687 00:44:12,107 --> 00:44:13,940 Allt í lagi, það ætti vera aðgerð eins vel. 688 00:44:13,940 --> 00:44:25,780 689 00:44:25,780 --> 00:44:34,740 >> Og þegar að virka er heitir, við að keyra bara Mario tíu. 690 00:44:34,740 --> 00:44:37,620 691 00:44:37,620 --> 00:44:39,780 Vonandi að verður fínt. 692 00:44:39,780 --> 00:44:41,120 Er það saman? 693 00:44:41,120 --> 00:44:43,920 Já. 694 00:44:43,920 --> 00:44:45,090 Nú höfum við útsýni. 695 00:44:45,090 --> 00:44:46,560 Við höfum framleiðsla. 696 00:44:46,560 --> 00:44:50,040 Og við skulum bara sjá hvað gerist. 697 00:44:50,040 --> 00:44:52,590 Það er farið. 698 00:44:52,590 --> 00:44:54,500 Það er aftur. 699 00:44:54,500 --> 00:44:57,620 Svo hér höfum við tilgreint hvers konar starfsemi 700 00:44:57,620 --> 00:45:00,400 verður kallað þegar við tegund í eitthvað, 701 00:45:00,400 --> 00:45:03,160 þegar við stutt ákveðna hnappinn. 702 00:45:03,160 --> 00:45:07,890 Þetta er í grundvallaratriðum miða aðgerð kerfi 703 00:45:07,890 --> 00:45:12,510 fyrir atburði ekið forritun í Objective C 704 00:45:12,510 --> 00:45:15,030 >> Í samlagning til þessi, það er ekki mjög spennandi 705 00:45:15,030 --> 00:45:19,810 vegna þess að við getum í raun ekki breytt hversu hár pýramída verður, 706 00:45:19,810 --> 00:45:23,640 þannig að við viljum líklega að einhvern veginn fá inntak frá notanda 707 00:45:23,640 --> 00:45:29,490 og breyta hæð á pýramída byggt á því sem þeir framleiðsla. 708 00:45:29,490 --> 00:45:32,900 Þannig að við erum að fara að gera það. 709 00:45:32,900 --> 00:45:38,720 Þannig að þetta skipti þegar við köllum runMario, eigum við ekki bara að kalla Mario beint. 710 00:45:38,720 --> 00:46:06,280 711 00:46:06,280 --> 00:46:07,000 Titill þessa manns. 712 00:46:07,000 --> 00:46:22,180 713 00:46:22,180 --> 00:46:23,700 >> Fulltrúi. 714 00:46:23,700 --> 00:46:25,160 Þetta er mjög áhugavert. 715 00:46:25,160 --> 00:46:26,720 Hvað er fulltrúi? 716 00:46:26,720 --> 00:46:28,950 Ég ætla að setja sjálf hér. 717 00:46:28,950 --> 00:46:31,038 Og við erum að fara að sjá hvað það þýðir síðar. 718 00:46:31,038 --> 00:46:46,380 719 00:46:46,380 --> 00:46:51,120 Svo hér höfum við í rauninni búið a sérstakur dæmi kallast UI viðvörun 720 00:46:51,120 --> 00:46:52,210 útsýni. 721 00:46:52,210 --> 00:46:54,440 A UI viðvörun útsýni er grundvallaratriðum hvað þú munt 722 00:46:54,440 --> 00:46:58,940 sjá hvert skipti sem eitthvað birtist upp og biður þig um inntak, 723 00:46:58,940 --> 00:47:03,080 eins hvað mun gerast þegar þú ert að reyna til að kaupa eitthvað á app birgðir. 724 00:47:03,080 --> 00:47:14,250 >> Í samlagning til þessi, eftir þig skapa það, birtum við bara viðvörun. 725 00:47:14,250 --> 00:47:20,090 726 00:47:20,090 --> 00:47:22,568 Allt í lagi, við skulum bara fljótt próf verður að vinna eða ekki. 727 00:47:22,568 --> 00:47:31,105 728 00:47:31,105 --> 00:47:32,140 Það er mjög svalt. 729 00:47:32,140 --> 00:47:55,370 730 00:47:55,370 --> 00:47:59,120 Nú skulum við búa í raun inntak sviði fyrir HÍ varðbergi. 731 00:47:59,120 --> 00:48:01,170 Þetta er hvernig við gerum það. 732 00:48:01,170 --> 00:48:07,490 Og við ættu að hafa inntak útsýni fyrir varðbergi. 733 00:48:07,490 --> 00:48:09,020 Mjög flott. 734 00:48:09,020 --> 00:48:12,330 Segjum bara 10. 735 00:48:12,330 --> 00:48:14,900 >> Það er ekki að gera neitt rétt nú vegna þess að hringja í raun 736 00:48:14,900 --> 00:48:17,770 breyttist ekki fyrir framkvæmd Mario. 737 00:48:17,770 --> 00:48:23,470 Svo hefur þetta orðið svolítið svolítið skrýtið því hvenær 738 00:48:23,470 --> 00:48:30,790 við að ýta á hnapp niður, þegar við ýta á hnappinn í viðvörun útsýni, 739 00:48:30,790 --> 00:48:35,560 eitthvað ætti að gerast, en það gerist ekki. 740 00:48:35,560 --> 00:48:37,220 Hvernig eigum við skilið það? 741 00:48:37,220 --> 00:48:41,280 Hvernig vitum við að notandi hefur vísað frá sér sýn 742 00:48:41,280 --> 00:48:45,630 og þegar slegið númer, vegna núna ekkert er í raun að gerast. 743 00:48:45,630 --> 00:48:50,450 >> Jæja, þú might hafa giska það rétt, sendinefnd. 744 00:48:50,450 --> 00:48:55,440 Svo til viðbótar við allt Yfirlýsingar þessar, 745 00:48:55,440 --> 00:49:03,190 við þurfum að bæta við nýjum sendinefndinni það heitir UI vakandi view fulltrúa. 746 00:49:03,190 --> 00:49:06,440 Þannig að hver einasta samskipti eða atburð 747 00:49:06,440 --> 00:49:10,190 að við erum að fara að hafa með UI viðvörun útsýni 748 00:49:10,190 --> 00:49:14,100 er að fara að meðhöndla með bekknum okkar eins og heilbrigður. 749 00:49:14,100 --> 00:49:26,297 >> Svo til viðbótar við þessi, mun vera viðvörun skoða smella á hnappinn á vísitölu. 750 00:49:26,297 --> 00:49:34,260 751 00:49:34,260 --> 00:49:37,730 Þetta er náð. 752 00:49:37,730 --> 00:49:42,020 Svo í því tilfelli sem við höfum already-- þannig að við höfum 753 00:49:42,020 --> 00:49:46,210 fann út siðareglur sem höndlar atburðinn þegar 754 00:49:46,210 --> 00:49:51,320 við smella á hnappinn Lokið á viðvörun útsýni. 755 00:49:51,320 --> 00:49:55,976 Svo í hvert skipti sem við segja að vakandi útsýni, þetta ætti að gerast. 756 00:49:55,976 --> 00:49:57,350 Leyfðu mér að prófa bara það mjög fljótt. 757 00:49:57,350 --> 00:50:16,220 758 00:50:16,220 --> 00:50:19,300 Jæja reyndar höfum við náð hér. 759 00:50:19,300 --> 00:50:22,210 >> Svo hér, hvað við munum ekki í raun að fá er í raun 760 00:50:22,210 --> 00:50:43,120 fá the-- Þannig að við viljum fá út textinn sem við höfum áður 761 00:50:43,120 --> 00:50:45,350 færð í viðvörun útsýni. 762 00:50:45,350 --> 00:50:48,505 Og byggt á texta, erum við fara að sýna Mario. 763 00:50:48,505 --> 00:50:52,336 764 00:50:52,336 --> 00:50:55,480 Þetta kemur mjög fljótt út ef það virkar í raun eða ekki. 765 00:50:55,480 --> 00:50:59,476 Svo í því tilfelli, ef við inntak, segjum, 10, við ættum að sjá 10. 766 00:50:59,476 --> 00:51:02,740 767 00:51:02,740 --> 00:51:05,210 >> Mjög gott, gera við höfum fjölda hér. 768 00:51:05,210 --> 00:51:06,470 Það er nokkuð gott. 769 00:51:06,470 --> 00:51:16,840 Nú síðasta skrefið verður be-- Svo síðasta skrefið sem við þurfum að gera núna 770 00:51:16,840 --> 00:51:21,100 er bara að hringja Mario með stigi byggt á inntak 771 00:51:21,100 --> 00:51:23,270 sem við höfum sett í viðvörun útsýni. 772 00:51:23,270 --> 00:51:26,920 Þannig að við þurfum að breyta þetta band í IOS. 773 00:51:26,920 --> 00:51:33,820 774 00:51:33,820 --> 00:51:35,496 Static flæða er mjög ógnvekjandi. 775 00:51:35,496 --> 00:51:44,930 776 00:51:44,930 --> 00:51:51,182 Og þá erum við að hringja bara sjálf marioWithLevels gildi. 777 00:51:51,182 --> 00:51:54,550 778 00:51:54,550 --> 00:51:56,284 Við skulum sjá mun að í raun vinna eða ekki. 779 00:51:56,284 --> 00:51:59,070 780 00:51:59,070 --> 00:52:01,550 >> Við erum nú þegar gefið pýramída. 781 00:52:01,550 --> 00:52:04,785 Við skulum reyna að breyta hæð. 782 00:52:04,785 --> 00:52:06,530 Það virkar í raun. 783 00:52:06,530 --> 00:52:07,610 Það er laglegur kaldur. 784 00:52:07,610 --> 00:52:10,420 Svo að nú getur þú bara inntak hvaða gildi þú vilt. 785 00:52:10,420 --> 00:52:12,440 Segjum bara fjórir. 786 00:52:12,440 --> 00:52:14,260 Það er nokkuð ógnvekjandi. 787 00:52:14,260 --> 00:52:17,090 Svo er þetta í rauninni mjög fljótur dæmi 788 00:52:17,090 --> 00:52:23,170 fyrir hvernig á að búa til verkefni í s kóða og hvernig á að í raun fljótt víra upp 789 00:52:23,170 --> 00:52:26,220 sumir mjög einföld viðburðir og aðgerðir. 790 00:52:26,220 --> 00:52:28,840 >> Svo heimildar er að fara til að setja á netinu síðar. 791 00:52:28,840 --> 00:52:33,400 Svo ef þú hefur áhuga í hvernig iOS Mario virkar, 792 00:52:33,400 --> 00:52:38,360 Ég ætla að setja nákvæmlega það sama verkefni inn á CS50 heimasíðu seinna. 793 00:52:38,360 --> 00:52:41,260 Við erum í grundvallaratriðum með sumar, og áður en við ljúkum 794 00:52:41,260 --> 00:52:45,190 Ég vil bara að benda ykkur á að sumir mjög ógnvekjandi úrræði sem 795 00:52:45,190 --> 00:52:47,550 eru í boði á netinu. 796 00:52:47,550 --> 00:52:52,270 >> Augljóslega Apple skjöl er að fara að vera mjög hjálpsamur. 797 00:52:52,270 --> 00:52:57,630 En í viðbót við það, ég sérstaklega mæla fjórum heimildum kóða skóla, 798 00:52:57,630 --> 00:53:02,120 tré hús, AppCoda og WWDC myndbönd. 799 00:53:02,120 --> 00:53:07,270 Code skóla og tré hús eru tveir á netinu mennta vefsíður, 800 00:53:07,270 --> 00:53:10,210 sem sérstaklega leggja áherslu á hugbúnaðarverkfræði. 801 00:53:10,210 --> 00:53:16,930 Sérstaklega fyrir kóða skóla, þeir hafa mjög góða einkatími á IOS. 802 00:53:16,930 --> 00:53:19,550 >> Það er mjög fljótur dæmi um það. 803 00:53:19,550 --> 00:53:22,980 Þeir búa í raun mjög cute-- líta á að lítill sætur iPhone 804 00:53:22,980 --> 00:53:24,920 náungi þarna, það er nokkuð ógnvekjandi. 805 00:53:24,920 --> 00:53:31,010 Og hvernig þeir útskýra Objective C setningafræði er fullkomlega ljóst. 806 00:53:31,010 --> 00:53:32,230 Tree House er sú sama. 807 00:53:32,230 --> 00:53:34,660 Og AppCoda er vettvangur. 808 00:53:34,660 --> 00:53:38,130 Það er í raun blogg sem var að keyra með mjög reyndur Objective C 809 00:53:38,130 --> 00:53:39,120 forritari. 810 00:53:39,120 --> 00:53:43,950 Og allir þessir námskeið í AppCoda eru mjög stutt og auðvelt að hrinda í framkvæmd, 811 00:53:43,950 --> 00:53:45,390 mjög mælt með. 812 00:53:45,390 --> 00:53:47,700 >> Og ef þú ert forritari, ákveðið að fara athuga 813 00:53:47,700 --> 00:53:55,660 hvernig á WWDC vídeó þar sem þú getur læra um nýjustu IOS forritun 814 00:53:55,660 --> 00:53:58,250 tækni, API og bókasöfn. 815 00:53:58,250 --> 00:54:02,850 Svo er það ansi mikið það fyrir námskeiðinu. 816 00:54:02,850 --> 00:54:03,820 Þakka þér svo mikið. 817 00:54:03,820 --> 00:54:08,040 Og ég vona að þú hafir gaman búa til eigin IOS app. 818 00:54:08,040 --> 00:54:09,302