1 00:00:00,000 --> 00:00:01,291 >> David J. MALAN: Kaya kami ay bumalik. 2 00:00:01,291 --> 00:00:03,050 Kaya ang mataas na antas topic sa sandaling ito ngayon 3 00:00:03,050 --> 00:00:06,440 ay teknolohiya stack, kung saan ay hindi isang partikular na teknikal na termino, 4 00:00:06,440 --> 00:00:09,960 ito ay higit pa sa isang catch ang lahat ng para sa anumang bilang ng mga kumbinasyon ng mga teknolohiya 5 00:00:09,960 --> 00:00:11,840 na maaari mong gamitin upang malutas ang problema. 6 00:00:11,840 --> 00:00:14,850 At marahil ang pinaka angkop na paraan upang simulan ang 7 00:00:14,850 --> 00:00:18,110 ay upang tumingin sa mga wika mula noong Panatilihin ko ang dumadagundong off ang maramihang 8 00:00:18,110 --> 00:00:21,000 at pinaka-lahat ng tao sa kuwarto ay marahil narinig ng hindi bababa sa isa. 9 00:00:21,000 --> 00:00:25,730 >> At kaya bakit hindi subukan namin upang makilala what-- makilala ang mga wikang ito 10 00:00:25,730 --> 00:00:28,932 at makipag-usap sa madaling sabi tungkol sa kung kailan gagawin mo pumili ng isa sa ibabaw ng isa, kung paano ang mga ito ay 11 00:00:28,932 --> 00:00:30,890 uri ng panimula naiiba, at lalo na 12 00:00:30,890 --> 00:00:34,830 kapag ikaw ay nakikipag-chat sa mga inhinyero, o sinusubukan upang magpasya kung kanino sa upa, 13 00:00:34,830 --> 00:00:37,652 o kung ano ang pagpapatupad proposal sa greenlight, 14 00:00:37,652 --> 00:00:39,860 kung paano mo talagang gumawa ng mga uri ng mga desisyon. 15 00:00:39,860 --> 00:00:41,890 >> Kaya sabihin lamang mabilis magsalita ang ilang mga bagay-off. 16 00:00:41,890 --> 00:00:45,300 Sa mga wikang mga tao ay may naririnig ang tungkol sa, kung ano ang dumating sa isip? 17 00:00:45,300 --> 00:00:48,030 C. OK. 18 00:00:48,030 --> 00:00:48,757 OK, C ++. 19 00:00:48,757 --> 00:00:51,400 20 00:00:51,400 --> 00:00:51,990 Ano yan? 21 00:00:51,990 --> 00:00:52,390 >> Madla: sawa. 22 00:00:52,390 --> 00:00:53,348 >> David J. MALAN: sawa. 23 00:00:53,348 --> 00:00:55,330 Magaling. 24 00:00:55,330 --> 00:00:57,000 Ano pa? 25 00:00:57,000 --> 00:00:58,810 Visual Basic. 26 00:00:58,810 --> 00:01:01,100 Narinig ko Java. 27 00:01:01,100 --> 00:01:02,610 Visual Basic-- a.k.a. 28 00:01:02,610 --> 00:01:03,150 VB. 29 00:01:03,150 --> 00:01:03,650 Java. 30 00:01:03,650 --> 00:01:07,294 31 00:01:07,294 --> 00:01:12,810 NET, na kung saan ay higit pa sa isang catch ang lahat ng para sa kung ano ay karaniwang C # bilang ang wika 32 00:01:12,810 --> 00:01:13,770 sa tanong. 33 00:01:13,770 --> 00:01:14,770 At hayaan mo akong banggitin na. 34 00:01:14,770 --> 00:01:15,900 Kaya kami ay bumalik sa na. 35 00:01:15,900 --> 00:01:17,560 Patawad? 36 00:01:17,560 --> 00:01:18,170 Paumanhin? 37 00:01:18,170 --> 00:01:19,877 >> Madla: SQL. 38 00:01:19,877 --> 00:01:20,876 David J. MALAN: Scratch? 39 00:01:20,876 --> 00:01:21,610 Madla: SQL. 40 00:01:21,610 --> 00:01:22,610 David J. MALAN: Oh, SQL. 41 00:01:22,610 --> 00:01:23,110 OK. 42 00:01:23,110 --> 00:01:23,750 SQL. 43 00:01:23,750 --> 00:01:29,510 Kaya makikita namin bumalik sa na- talaga, ito ay good-- pagkatapos ng break pati na rin. 44 00:01:29,510 --> 00:01:30,572 Ano pa? 45 00:01:30,572 --> 00:01:32,530 >> Madla: Oracle. 46 00:01:32,530 --> 00:01:34,670 >> David J. MALAN: Kaya Oracle, hindi isang wika. 47 00:01:34,670 --> 00:01:36,560 Actually sila ay gumamit ng SQL pati na rin. 48 00:01:36,560 --> 00:01:38,360 Kaya sabihin ilagay na matapos ang break pati na rin. 49 00:01:38,360 --> 00:01:39,744 At paumanhin, isang bagay sa paglipas dito? 50 00:01:39,744 --> 00:01:40,660 Madla: Mathematica. 51 00:01:40,660 --> 00:01:41,390 David J. MALAN: Mathematica? 52 00:01:41,390 --> 00:01:42,303 OK, sigurado. 53 00:01:42,303 --> 00:01:46,150 54 00:01:46,150 --> 00:01:49,180 At MATLAB ay uri ng sa doon minsan. 55 00:01:49,180 --> 00:01:50,060 >> Madla: R. 56 00:01:50,060 --> 00:01:51,755 >> David J. MALAN: R. Sabihin pumunta sa paglipas dito. 57 00:01:51,755 --> 00:01:54,710 58 00:01:54,710 --> 00:01:55,210 Fortran. 59 00:01:55,210 --> 00:01:55,880 Oo naman. 60 00:01:55,880 --> 00:01:57,910 Mas lumang paaralan. 61 00:01:57,910 --> 00:01:59,390 Fortran. 62 00:01:59,390 --> 00:02:01,550 COBOL. 63 00:02:01,550 --> 00:02:02,410 Kukunin ko siklutin out BATAYANG. 64 00:02:02,410 --> 00:02:05,990 65 00:02:05,990 --> 00:02:08,539 BATAYANG. 66 00:02:08,539 --> 00:02:09,390 Any-- 67 00:02:09,390 --> 00:02:10,352 >> Madla: MATLAB? 68 00:02:10,352 --> 00:02:11,310 David J. MALAN: MATLAB. 69 00:02:11,310 --> 00:02:12,248 Oh, matalo ka sa ito. 70 00:02:12,248 --> 00:02:15,370 71 00:02:15,370 --> 00:02:15,870 Anumang bagay? 72 00:02:15,870 --> 00:02:18,700 maaari kong isipin ng ilang mga iba. 73 00:02:18,700 --> 00:02:21,876 maaari kong isipin ng ilang mga iba. 74 00:02:21,876 --> 00:02:22,792 At kung ano ay ang huling? 75 00:02:22,792 --> 00:02:23,970 >> Madla: ASP. 76 00:02:23,970 --> 00:02:25,030 >> David J. MALAN: ASP? 77 00:02:25,030 --> 00:02:26,100 Yeah. 78 00:02:26,100 --> 00:02:27,100 Active server pahina. 79 00:02:27,100 --> 00:02:30,270 Na sa pangkalahatan ay mahulog sa ilalim ng iba pang mga wika, minsan C #, 80 00:02:30,270 --> 00:02:32,040 kaya sabihin umalis na off. 81 00:02:32,040 --> 00:02:35,510 Ngunit kami ay bumalik sa na para frameworks at tulad. 82 00:02:35,510 --> 00:02:36,290 Ano pa? 83 00:02:36,290 --> 00:02:39,020 PHP ay popular. 84 00:02:39,020 --> 00:02:41,710 Ruby ay isa pa. 85 00:02:41,710 --> 00:02:48,230 JavaScript, huwag malito sa Java, ay isa pa. 86 00:02:48,230 --> 00:02:49,570 Iyon uri ng isang pulutong. 87 00:02:49,570 --> 00:02:53,590 >> Kaya maaari itong maging tiyak napakalaki, bilang kung ang listahan ay pa nagagawa, 88 00:02:53,590 --> 00:02:55,650 lamang upang simulan upang malaman kung saan ka magsimula. 89 00:02:55,650 --> 00:02:58,130 At kaya sa kabutihang-palad, sabihin diskarte na ito mula sa ilang mga anggulo. 90 00:02:58,130 --> 00:03:03,520 Una, sabihin subukan upang bigyan ng pamantayan hindi bababa sa ilan sa mga wikang ito 91 00:03:03,520 --> 00:03:06,790 sa dalawang malawak na mga bucket, nakapagpapaalaala ng ang pag-uusap namin ay may bago break, 92 00:03:06,790 --> 00:03:09,630 kung saan usapan natin ang tungkol ipon, at source code, at machine code, 93 00:03:09,630 --> 00:03:11,440 dahil na ay hindi kung paano lahat ng mga wika gumana. 94 00:03:11,440 --> 00:03:15,640 Kaya makikita namin kumalbit out ng ilang mga halimbawa of-- o counter-examples-- sa modelo. 95 00:03:15,640 --> 00:03:18,490 >> At pagkatapos ay, bakit hindi namin makipag-usap tungkol sa mga aplikasyon 96 00:03:18,490 --> 00:03:20,390 na mga wikang ito ay karaniwang ginagamit para sa. 97 00:03:20,390 --> 00:03:22,840 At lantaran, kahit na ito ay isang medyo mahabang listahan, 98 00:03:22,840 --> 00:03:26,320 ito ay lamang ng isang subset ng listahan na ito na nais mong karaniwang gumuhit mula sa mga araw 99 00:03:26,320 --> 00:03:27,220 upang malutas ang problema. 100 00:03:27,220 --> 00:03:29,150 Ang ilang mga wika ay mas bago kaysa sa iba. 101 00:03:29,150 --> 00:03:31,170 Ang ilang mga wika ay mas popular kaysa sa iba. 102 00:03:31,170 --> 00:03:34,370 Kaya ito ay hindi tulad ng ikaw ay may tulad isang napakalaki gawain bago ka 103 00:03:34,370 --> 00:03:36,970 kapag nagpapasya sa gitna mga iba't-ibang mga wika. 104 00:03:36,970 --> 00:03:40,110 >> Kaya sabihin gawin ito. 105 00:03:40,110 --> 00:03:45,870 Nagkaroon kami ng mas maaga, source code, at pagkatapos ay nagkaroon kami machine code. 106 00:03:45,870 --> 00:03:48,590 107 00:03:48,590 --> 00:03:49,400 Whoops. 108 00:03:49,400 --> 00:03:50,910 Pagsulat ng maling salita. 109 00:03:50,910 --> 00:03:52,740 Machine code. 110 00:03:52,740 --> 00:03:57,549 At kami ay may ilang mga proseso sa middle called-- yeah, ang tagatala. 111 00:03:57,549 --> 00:03:58,215 Kaya ang compiler. 112 00:03:58,215 --> 00:04:00,760 113 00:04:00,760 --> 00:04:03,910 >> At kung ano ang machine code aktwal na tumatakbo sa sa katapusan 114 00:04:03,910 --> 00:04:05,680 ay pagpunta sa maging ang iyong aktwal na CPU. 115 00:04:05,680 --> 00:04:09,660 Sa ibang salita, sa pamamagitan ng machine code, ako ibig sabihin ang pinakamababang tagubilin antas 116 00:04:09,660 --> 00:04:11,330 na ang isang CPU talagang nauunawaan. 117 00:04:11,330 --> 00:04:15,100 Addition, pagbabawas, ilipat, i-save, at mga operasyon tulad na. 118 00:04:15,100 --> 00:04:19,700 At kaya ito ay ang modelo para sa kung ano ang karaniwang kilala bilang naipon wika. 119 00:04:19,700 --> 00:04:21,000 Marahil hindi nakakagulat. 120 00:04:21,000 --> 00:04:23,550 >> Kaya ito ay ang modelo para naipon wika. 121 00:04:23,550 --> 00:04:25,970 Ngunit ito ay lumiliko out doon ni isa pang klase ng mga wika 122 00:04:25,970 --> 00:04:32,650 tinatawag interpreted languages-- interpreted languages-- 123 00:04:32,650 --> 00:04:34,030 na ay bahagyang naiiba. 124 00:04:34,030 --> 00:04:41,660 Isulat mo sa source code, patakbuhin ang mga ito sa pamamagitan ng isang interpreter, 125 00:04:41,660 --> 00:04:45,440 at na interpreter ay ano tumatakbo sa CPU. 126 00:04:45,440 --> 00:04:50,120 Sa ibang salita, kung ano ang hindi mo gusto humalimuyak ay kung ano, tila? 127 00:04:50,120 --> 00:04:50,980 Machine code. 128 00:04:50,980 --> 00:04:54,290 Ang mga zero at mga na ang CPU mismo sa huli nauunawaan. 129 00:04:54,290 --> 00:04:59,780 >> Kaya sa unang bersyon at wika tulad ng C, tulad ng nakita natin, 130 00:04:59,780 --> 00:05:02,040 mong isulat sa source code na ang isang ilan arcane, 131 00:05:02,040 --> 00:05:05,300 ngunit hindi bababa sa ito ay uri ng Ingles-tulad ng at ito ay hindi bababa nababasa 132 00:05:05,300 --> 00:05:06,780 sa sandaling masanay dito. 133 00:05:06,780 --> 00:05:10,100 patakbuhin mo ito sa pamamagitan ng isang tagatala at out makakakuha ka ng, sa huli, zero at mga. 134 00:05:10,100 --> 00:05:11,340 >> Na ang isang oversimplification. 135 00:05:11,340 --> 00:05:12,839 Mayroong ilang mga iba pang mga hakbang sa doon. 136 00:05:12,839 --> 00:05:15,530 Sa katunayan, kung ikaw ay kailanman narinig ang salitang "pagpupulong na wika," 137 00:05:15,530 --> 00:05:17,990 iyon ang isa hakbang bago ang zero at mga. 138 00:05:17,990 --> 00:05:20,949 Na ang isang kaunti pa nababasa, ngunit pa rin medyo arcane. 139 00:05:20,949 --> 00:05:23,740 At kaya may intermediate hakbang na, sa katunayan, pagpunta sa dito. 140 00:05:23,740 --> 00:05:26,360 Ngunit ang output, sa huli, ay ang mga zero at mga. 141 00:05:26,360 --> 00:05:28,990 >> Ngunit sa interpreted mundo, kung saan mayroon kang 142 00:05:28,990 --> 00:05:32,680 wika na naisalin wika, ang tunay na laktawan na hakbang. 143 00:05:32,680 --> 00:05:36,010 Sa ibang salita, kapag sumulat ka ng isang program, ikaw lamang ang agad na tumakbo ito. 144 00:05:36,010 --> 00:05:38,960 Hindi mo na itala ito at pagkatapos ay tumakbo ito, tulad ng ginawa ko dati. 145 00:05:38,960 --> 00:05:41,132 Ikaw lamang ang isulat ito at patakbuhin ito. 146 00:05:41,132 --> 00:05:44,340 At kung gusto mong gumawa ng isang mabilis na pagbabago, kang gumawa ng isang mabilis na pagbabago at muling patakbuhin ito. 147 00:05:44,340 --> 00:05:46,640 Kaya walang middle hakbang dito. 148 00:05:46,640 --> 00:05:50,840 >> Ngayon, para sa programa sinulat ko mas maaga, na kung saan ay ito "Hello World" na programa, 149 00:05:50,840 --> 00:05:53,660 maaari mong makatwirang wonder-- o maaaring makatwirang 150 00:05:53,660 --> 00:05:58,570 state-- na ay hindi oras na iyon ubos na sumulat ng libro ang aking programa. 151 00:05:58,570 --> 00:06:00,337 Mukhang sa nagawa na ito katulad nito. 152 00:06:00,337 --> 00:06:02,170 At mayroong graphical bersyon ng compiler. 153 00:06:02,170 --> 00:06:05,270 Gumagamit ako ng isang napaka arcane bersiyon, ngunit maaari mong pindutin ang isang pindutan ng play 154 00:06:05,270 --> 00:06:07,887 at na aktwal na gawin ang compilation para sa iyo. 155 00:06:07,887 --> 00:06:10,720 na pinagsama-sama ko ang mga programa at pagkatapos ay muli, upang patakbuhin ito, ko lang gawin ito. 156 00:06:10,720 --> 00:06:13,820 At ito outputs sa kaliwa doon, "Hello!" 157 00:06:13,820 --> 00:06:15,530 Iyan ay hindi tila ang lahat na mabigat. 158 00:06:15,530 --> 00:06:19,920 Ngunit kapag ang iyong programa ay higit sa isang makatarungan, dalawa, tatlo, 159 00:06:19,920 --> 00:06:25,470 apat, limang linya mahaba, kaya nito kumuha segundo malayo higit pa sa sumulat ng libro. 160 00:06:25,470 --> 00:06:28,310 Minsan kahit minuto o lubos ng kaunti ng oras upang sumulat ng libro. 161 00:06:28,310 --> 00:06:30,480 Matapos ang lahat, ang ilan sa mga pinakamalaking produkto ng mundo 162 00:06:30,480 --> 00:06:35,040 mga bagay tulad ng mga operating system, Microsoft Word, Microsoft Excel, 163 00:06:35,040 --> 00:06:39,070 na kung saan ay maaaring maging daan-daang libo o kahit na milyon-milyong mga linya ng code ang haba, 164 00:06:39,070 --> 00:06:41,300 at sa mga hindi lamang kaagad execute. 165 00:06:41,300 --> 00:06:44,560 >> Dagdag pa rito, sa web, ito ay naging fashionable upang gamitin 166 00:06:44,560 --> 00:06:47,600 lamang interpreted wika, sa bahagi dahil sa iyo 167 00:06:47,600 --> 00:06:50,570 ay maaaring gumawa ng isang pagbabago bilang developer at pagkatapos lamang i-reload agad 168 00:06:50,570 --> 00:06:52,570 ang pahina ng browser at agad na makita ang resulta. 169 00:06:52,570 --> 00:06:56,160 At kaya HTML, habang hindi isang programming language, 170 00:06:56,160 --> 00:06:58,860 ay isang wika na interpreted. 171 00:06:58,860 --> 00:07:00,770 At nakita namin na parehong epekto kahapon. 172 00:07:00,770 --> 00:07:04,070 Ikaw lamang i-reload ang pahina pagkatapos ng paggawa isang pagbabago sa Cloud9 at- voila-- 173 00:07:04,070 --> 00:07:05,560 makikita mo ang isang bagong resulta. 174 00:07:05,560 --> 00:07:07,090 >> Kaya kung ano ang pagkakaiba dito? 175 00:07:07,090 --> 00:07:13,190 Sa HTML, pagpapabalik, kami ay nagkaroon ng open HTML, open ulo, open title, malapit pamagat, 176 00:07:13,190 --> 00:07:15,250 malapit ulo, open katawan, at iba pa. 177 00:07:15,250 --> 00:07:19,149 Nagkaroon kami ng lahat ng mga tag na kami ay medyo magkano sinabi, sabihin ang browser kung ano ang gagawin. 178 00:07:19,149 --> 00:07:20,690 Hey browser, dito pagdating ng isang HTML na pahina. 179 00:07:20,690 --> 00:07:22,170 Hey browser, dito ay ang pamagat. 180 00:07:22,170 --> 00:07:24,429 Hey browser, dito ay ilang text na dapat ay naka-bold. 181 00:07:24,429 --> 00:07:25,720 At pagkatapos mong sabihin ang kabaligtaran. 182 00:07:25,720 --> 00:07:27,330 Hey browser, na ito para sa mga naka-bold face text. 183 00:07:27,330 --> 00:07:28,830 Hey browser, na ito para sa katawan. 184 00:07:28,830 --> 00:07:29,740 At iba pa. 185 00:07:29,740 --> 00:07:31,130 >> At kaya kung ano ang isang browser? 186 00:07:31,130 --> 00:07:33,170 A browser ay lamang ng isang interpreter. 187 00:07:33,170 --> 00:07:36,090 Ito ay isang programa na ang isang tao tulad ng Microsoft o Google ay may nakasulat na, 188 00:07:36,090 --> 00:07:39,160 na ang layunin sa buhay ay upang basahin ang isang wika, na kilala bilang HTML, 189 00:07:39,160 --> 00:07:39,890 at bigyang-kahulugan ito. 190 00:07:39,890 --> 00:07:41,290 Itaas hanggang sa ibaba, kaliwa papuntang kanan. 191 00:07:41,290 --> 00:07:46,880 At anumang oras ang browser nakikita open bracket, pamagat, malapit bracket, 192 00:07:46,880 --> 00:07:48,960 dapat itong bigyang-kahulugan na bilang kahulugan, oh, na 193 00:07:48,960 --> 00:07:52,490 nangangahulugan ang dapat kong ilagay ang mga salitang ito na paraan up dito sa tuktok ng browser. 194 00:07:52,490 --> 00:07:55,700 >> Kaya ito lamang ay kung ano ang HTML code says. 195 00:07:55,700 --> 00:07:57,240 Ngunit walang zero at mga. 196 00:07:57,240 --> 00:07:58,250 Walang compilation. 197 00:07:58,250 --> 00:07:58,890 Hindi mo gawin ito. 198 00:07:58,890 --> 00:07:59,931 browser ay hindi gawin ito. 199 00:07:59,931 --> 00:08:01,710 Lamang Ito ay hindi kasangkot. 200 00:08:01,710 --> 00:08:05,890 >> Kaya sa espiritu ng mga patuloy na mga paksa, ngayon at kahapon, 201 00:08:05,890 --> 00:08:08,400 na tila na maging isang kahanga-hangang katangian. 202 00:08:08,400 --> 00:08:11,410 Mong i-save ang iyong code at pagkatapos ay makatarungan tumakbo ka man o naipaliwanag mo. 203 00:08:11,410 --> 00:08:13,790 Walang intermediate hakbang. 204 00:08:13,790 --> 00:08:15,690 Tiyak na mayroong isang gastos? 205 00:08:15,690 --> 00:08:16,810 Hindi lahat ay upsides. 206 00:08:16,810 --> 00:08:19,964 Kaya kung ano ang maaaring maging na gastos? 207 00:08:19,964 --> 00:08:20,940 >> Madla: Space. 208 00:08:20,940 --> 00:08:22,370 >> David J. MALAN: Space. 209 00:08:22,370 --> 00:08:23,370 Kaya, sigurado. 210 00:08:23,370 --> 00:08:26,920 Sa pinagsama-sama mundo, mayroon kang hindi lamang ang orihinal na source code, 211 00:08:26,920 --> 00:08:29,657 din ikaw ay paggawa at pagkatapos siguro pag-save 212 00:08:29,657 --> 00:08:31,740 ang makina code-- ang zero at ones-- at iyon ang 213 00:08:31,740 --> 00:08:33,870 nakuha na kumuha ng up ng ilang mga halaga ng puwang. 214 00:08:33,870 --> 00:08:34,429 Oo naman. 215 00:08:34,429 --> 00:08:35,765 Kaya ito ay nagkakahalaga ng sa iyo ng mas maraming espasyo. 216 00:08:35,765 --> 00:08:39,289 217 00:08:39,289 --> 00:08:39,789 Yeah? 218 00:08:39,789 --> 00:08:43,280 >> Madla: Browser maaaring bigyang-kahulugan sa ibang paraan. 219 00:08:43,280 --> 00:08:46,770 >> David J. MALAN: Browser maaaring bigyang-kahulugan ito sa ibang paraan. 220 00:08:46,770 --> 00:08:48,622 Tama iyan. 221 00:08:48,622 --> 00:08:50,330 Ngunit hindi ako sigurado kung ako kumportable na nagke-claim 222 00:08:50,330 --> 00:08:51,840 iyan ay dahil ito ay interpreted. 223 00:08:51,840 --> 00:08:56,340 Iyan ay higit pa lamang dahil ito ay isang pagpapatupad ng isang wika 224 00:08:56,340 --> 00:08:58,050 na mismo ay may ambiguities. 225 00:08:58,050 --> 00:09:01,570 Kaya sabihin hindi masyadong magkaibigan na ang isa, ngunit magandang kutob ng loob. 226 00:09:01,570 --> 00:09:03,103 Ano pa ang maaaring ang presyo na binayaran? 227 00:09:03,103 --> 00:09:03,602 Andrew? 228 00:09:03,602 --> 00:09:05,912 >> Madla: Ikaw Kombinasyon dalawang hakbang, kaya mo samakatuwid 229 00:09:05,912 --> 00:09:08,300 may pagtaas ng pagiging kumplikado pati na rin. 230 00:09:08,300 --> 00:09:11,040 >> David J. MALAN: Ang complex-- ang pagtaas sa pagiging kumplikado kung saan? 231 00:09:11,040 --> 00:09:12,270 Para kanino? 232 00:09:12,270 --> 00:09:16,748 >> Madla: Kaya, sa interpreter hakbang, ikaw ay pinagsasama ang interpreter 233 00:09:16,748 --> 00:09:19,120 at compiler para sa mga lamang na humahantong hanggang to-- 234 00:09:19,120 --> 00:09:21,100 >> David J. MALAN: Ah, OK. 235 00:09:21,100 --> 00:09:25,240 Ironically, ito ay maaring isang maliit na mas simple na ipatupad ang interpreter, 236 00:09:25,240 --> 00:09:29,530 kahit na ito ay tila upang ani upsides ng kaginhawaan ito. 237 00:09:29,530 --> 00:09:30,550 Kaya marahil totoo. 238 00:09:30,550 --> 00:09:32,716 Ngunit ito uri ng ay depende, ako nais sabihin, sa wikang 239 00:09:32,716 --> 00:09:35,720 at sa kung paano sila nagpunta tungkol sa pagpapatupad ng mga ito. 240 00:09:35,720 --> 00:09:38,535 Maaaring magkaroon ng maraming higit pang kumplikado, actually, sa compiler, 241 00:09:38,535 --> 00:09:41,410 lamang dahil ikaw ay may upang pumunta mula sa bagay kaya mataas na antas sa isang bagay 242 00:09:41,410 --> 00:09:42,560 kaya mababa-level. 243 00:09:42,560 --> 00:09:45,340 Ngunit isang mahusay na pag-iisip. 244 00:09:45,340 --> 00:09:50,770 >> Kaya maglagay ng isa pang paraan, ang isang naipon na programa, kapag nakabukas sa mga zero at mga, 245 00:09:50,770 --> 00:09:54,470 nagtatapos up sa wikang na ang CPU ay nagsasalita, 246 00:09:54,470 --> 00:09:57,850 samantalang sa panig na ito ng mundo, ang programa na iyong isinulat, 247 00:09:57,850 --> 00:10:02,527 ang code na iyong isinulat, hindi talaga ay makakakuha ng convert sa aktwal na wika 248 00:10:02,527 --> 00:10:03,360 ang computer nagsasalita. 249 00:10:03,360 --> 00:10:04,190 Ang zero at mga. 250 00:10:04,190 --> 00:10:08,480 Ito ay mananatiling sa orihinal, mas tao friendly, mas nababasa wika. 251 00:10:08,480 --> 00:10:11,720 Kaya kung ano ang maaaring maging ang mga implikasyon doon, kung hindi mo talaga 252 00:10:11,720 --> 00:10:15,020 abala convert ng iyong program sa pinakadulo wika 253 00:10:15,020 --> 00:10:18,013 na ang kalakip na computer na nagsasalita? 254 00:10:18,013 --> 00:10:19,780 >> Madla: Might hindi maunawaan ang isang bagay? 255 00:10:19,780 --> 00:10:21,170 >> David J. MALAN: Might hindi maunawaan ang isang bagay. 256 00:10:21,170 --> 00:10:23,297 At upang claim-- kung hindi ito naintindihan 257 00:10:23,297 --> 00:10:25,880 isang bagay, na ang isang bug o kakulangan ng tampok sa interpreter. 258 00:10:25,880 --> 00:10:28,544 Sa gayon ay magiging higit pa sa isang pagkakamali sa isang gastos. 259 00:10:28,544 --> 00:10:30,419 >> Madla: Mayroon kang access sa source code? 260 00:10:30,419 --> 00:10:31,877 David J. MALAN: May isang magandang isa. 261 00:10:31,877 --> 00:10:34,140 Kaya ang isang downside dito ay sa iyo ay tila na magkaroon ng access. 262 00:10:34,140 --> 00:10:37,006 Kayo, ang end user, maaaring mukhang magkaroon ng access sa source code. 263 00:10:37,006 --> 00:10:38,130 At iyan ay hindi palaging totoo. 264 00:10:38,130 --> 00:10:39,660 Ngunit ito ay totoo sa kaso ng JavaScript, 265 00:10:39,660 --> 00:10:41,660 na kung saan kami ay tumingin sa matapos ang break ngayon, na 266 00:10:41,660 --> 00:10:45,720 ay isang interpreted programming language na sinulat mo sa source code. 267 00:10:45,720 --> 00:10:48,890 >> Ngunit na source code ay makakakuha ng mailipat mula sa iyong server sa browser 268 00:10:48,890 --> 00:10:51,392 at tumatakbo sa browser ng tao ni. 269 00:10:51,392 --> 00:10:54,350 Kaya dito siya ay maaaring lamang buksan ang window, tulad ng ako ng paggawa sa Chrome, 270 00:10:54,350 --> 00:10:57,740 at tumingin sa ito, bilang namin ang ating mga sarili glanced sa kahapon sa Google. 271 00:10:57,740 --> 00:11:00,420 Maaaring tumingin ng kaunti hindi kayang unawain ngunit ito ay doon. 272 00:11:00,420 --> 00:11:03,482 Kaya na walang pasubali isang presyo na babayaran. 273 00:11:03,482 --> 00:11:04,565 Madla: Performance hit? 274 00:11:04,565 --> 00:11:05,020 David J. MALAN: Oo. 275 00:11:05,020 --> 00:11:06,260 At iyon ang iba pang biggie. 276 00:11:06,260 --> 00:11:07,380 May isang pagganap hit. 277 00:11:07,380 --> 00:11:10,100 Dahil ikaw ay may ito gitna ng tao, na kung saan mismo 278 00:11:10,100 --> 00:11:13,740 ay isang programa, sa pagitan mo at ang CPU, na taliwas 279 00:11:13,740 --> 00:11:17,880 sa makatarungan feeding ang mga raw zero at mga sa CPU, 280 00:11:17,880 --> 00:11:21,060 mayroong isang pagganap hit na kayo magsama isang interpreted wika. 281 00:11:21,060 --> 00:11:24,240 Tulad na, nagkataon, isang programa na maaaring tumagal ng isang segundo 282 00:11:24,240 --> 00:11:27,840 upang tumakbo sa isang computer o isang minuto upang tumakbo sa isang computer dito, 283 00:11:27,840 --> 00:11:32,059 Maaaring tumagal ng 10 segundo o 10 minuto upang tumakbo sa isang computer dito. 284 00:11:32,059 --> 00:11:35,100 Ito ay karaniwang hindi pagpunta sa maging na marami ng isang difference-- kadahilanan ng 10-- 285 00:11:35,100 --> 00:11:36,808 dahil mayroong optimizations maaari mong gawin. 286 00:11:36,808 --> 00:11:38,680 Ngunit ito ay halos palaging mas mabagal. 287 00:11:38,680 --> 00:11:43,070 Ngayon, tingnan ang bahagi sa pag-aalala na ay na, well computer, bawat 12 288 00:11:43,070 --> 00:11:45,970 hanggang 18 months-- ayon sa batas Moore, kaya upang speak-- 289 00:11:45,970 --> 00:11:47,600 ay lamang sa pagkuha ng mas mabilis at mas mabilis. 290 00:11:47,600 --> 00:11:48,750 Mayroon akong higit pa at mas puwang sa disk. 291 00:11:48,750 --> 00:11:49,791 Mayroon akong higit pa at higit pang mga RAM. 292 00:11:49,791 --> 00:11:50,620 Sino ba talaga ang nagmamalasakit? 293 00:11:50,620 --> 00:11:52,328 >> At iyon ang uri ng isang makatwirang argumento. 294 00:11:52,328 --> 00:11:55,740 Sa katunayan, isa sa mga dahilan kung bakit maaari naming tiisin slower 295 00:11:55,740 --> 00:11:58,480 interpreted wika ay dahil namin ang mga tao ay hindi tunay na mapansin. 296 00:11:58,480 --> 00:12:00,690 Ang mga computer ay may nakuha lang kaya darn mabilis. 297 00:12:00,690 --> 00:12:04,520 Sapagkat pabalik sa araw, lalo na kapag hardware ay mas napilitan, 298 00:12:04,520 --> 00:12:06,860 kayo ay nagkaroon ng mas mababa ng lahat ng bagay, ito ay mas mahal 299 00:12:06,860 --> 00:12:10,570 kaya lahat ng bagay nagkakahalaga ng higit pa, kung sa gayon ikaw ay talagang nais na pisilin 300 00:12:10,570 --> 00:12:12,590 ng mas maraming pagganap bilang maaari mong. 301 00:12:12,590 --> 00:12:16,400 Ngunit na kinakailangan sa pagsulat isang mas mababang-level, kung ikaw ay, 302 00:12:16,400 --> 00:12:18,090 na may isang pinagsama-sama wika. 303 00:12:18,090 --> 00:12:20,830 >> Kaya gawin mong gawin ito pagganap hit. 304 00:12:20,830 --> 00:12:24,780 Ngunit sa pangkalahatan, ang upsides mukhang nagkakahalaga ito mga araw na ito. 305 00:12:24,780 --> 00:12:26,850 Well, maliban para sa mga intellectual property isyu. 306 00:12:26,850 --> 00:12:28,641 Na uri ng pagiging madaling mabasa ng code, kami ay 307 00:12:28,641 --> 00:12:30,640 bumalik sa kapag tinitingnan namin ang JavaScript. 308 00:12:30,640 --> 00:12:33,140 >> Kaya sabihin subukan upang maikategorya hindi bababa sa isang ilang sa mga ito. 309 00:12:33,140 --> 00:12:41,650 Kaya kabilang sa mga naipon wika, kami ay magkakaroon C, C ++, kinda, sorta, Java, 310 00:12:41,650 --> 00:12:48,120 kahit na ito ay isang bit ng isang exception, para dahilan kukunin ko na ipakita sa iyo sa loob lamang ng ilang sandali. 311 00:12:48,120 --> 00:12:51,540 C # ay magiging sa listahang ito. 312 00:12:51,540 --> 00:12:54,930 Susubukan naming tumingin sa higit pa sa lamang ang mas modernong mga wika. 313 00:12:54,930 --> 00:12:55,430 Lahat tama. 314 00:12:55,430 --> 00:12:56,804 At na tila tulad ng maraming doon. 315 00:12:56,804 --> 00:13:03,500 Sapagkat sa dakong ito ng bakod, magkaroon tayo ng JavaScript, at Python, 316 00:13:03,500 --> 00:13:08,040 at PHP, at Ruby. 317 00:13:08,040 --> 00:13:13,640 At na sapat para sa ang mga mas bagong mga bago? 318 00:13:13,640 --> 00:13:15,410 Na nararamdaman tulad ng maraming para sa ngayon. 319 00:13:15,410 --> 00:13:16,330 OK. 320 00:13:16,330 --> 00:13:18,760 At pagkatapos ay tuldok tuldok tuldok, dahil ang listahan ay walang hanggan. 321 00:13:18,760 --> 00:13:22,300 >> At sa katunayan, kung gusto naming lamang makakuha ng ideya ng this-- Wikipedia, 322 00:13:22,300 --> 00:13:24,130 naipon wika. 323 00:13:24,130 --> 00:13:27,150 Ako sa paghula na maaari naming makakuha ng isang malayo mas malawakan listahan. 324 00:13:27,150 --> 00:13:27,910 Kaya dito kami pumunta. 325 00:13:27,910 --> 00:13:30,620 Kaya dito ay isang mas malawakan listahan. 326 00:13:30,620 --> 00:13:34,150 At ako ay umaasa na isang tao ay hulaan D bilang isang wika dahil na rin umiiral, 327 00:13:34,150 --> 00:13:37,747 ngunit sila tumigil sa D ito ay tila. 328 00:13:37,747 --> 00:13:39,330 Kahit na may ay maaaring aktwal na maging isang E. 329 00:13:39,330 --> 00:13:41,496 >> Oh, talaga, ito ay dapat maging sa listahan ang mga araw. 330 00:13:41,496 --> 00:13:47,460 Swift ay talagang isang wika na Apple imbento 331 00:13:47,460 --> 00:13:50,302 na ginagamit ngayon, increasingly kaya, sa iPhone pag-unlad. 332 00:13:50,302 --> 00:13:52,260 Ngunit kami ay bumalik sa na sa aming discussion 333 00:13:52,260 --> 00:13:54,090 ng mga mobile na sa loob lamang ng isang maliit na bit pati na rin. 334 00:13:54,090 --> 00:13:55,260 Kaya Swift pati na rin. 335 00:13:55,260 --> 00:13:57,540 >> At pagkatapos ay kung pumunta kami sa interpreted language-- 336 00:13:57,540 --> 00:14:05,010 interpreted language-- pagkatapos ay narito isang kahit mas mahabang listahan pati na rin. 337 00:14:05,010 --> 00:14:07,260 Kaya kung ikaw lang ang google at tumingin sa Wikipedia para sa mga ito, 338 00:14:07,260 --> 00:14:09,231 makikita mo ang lahat ng masama ng mga wika. 339 00:14:09,231 --> 00:14:10,980 Ngunit ang layunin ay, para sa araw na tunay, lamang 340 00:14:10,980 --> 00:14:13,680 kahulihan babagsak ito sa marahil ito isyu ng ari-ariang intelektwal 341 00:14:13,680 --> 00:14:18,200 at pagiging madaling mabasa sa pamamagitan ng dulo ng user at upang pagganap, ay isa pang biggie pati na rin. 342 00:14:18,200 --> 00:14:21,080 >> Kaya bukod sa mga wikang ito, hayaan mo akong makita kung ang maaari naming ibigay sa iyo 343 00:14:21,080 --> 00:14:24,487 lamang ang ilan sample ng mga wika. 344 00:14:24,487 --> 00:14:26,820 Hindi namin nais upang pumunta sa pamamagitan lahat ng mga wika endlessly. 345 00:14:26,820 --> 00:14:29,720 Naisip mo ba kung ano ang isang tiyak na wika ay ganito ang hitsura? 346 00:14:29,720 --> 00:14:31,562 Ginawa namin ang isang sandali ang nakalipas. 347 00:14:31,562 --> 00:14:33,520 Bakit hindi namin tumagal ng ilang ng mga hiling sa tampok. 348 00:14:33,520 --> 00:14:35,380 Sino ang gusto nais na makita kung ano ang iba pang mga wika ay ganito ang hitsura? 349 00:14:35,380 --> 00:14:35,620 Yeah. 350 00:14:35,620 --> 00:14:36,150 >> Madla: Java. 351 00:14:36,150 --> 00:14:36,540 >> David J. MALAN: Java. 352 00:14:36,540 --> 00:14:37,040 Lahat tama. 353 00:14:37,040 --> 00:14:38,504 Kaya sabihin pumunta sa Java. 354 00:14:38,504 --> 00:14:42,300 355 00:14:42,300 --> 00:14:44,900 At lamang upang bigyan ka ng isang sample-- maaari naming isulat ang lahat ng mga ito sa labas, 356 00:14:44,900 --> 00:14:47,670 ngunit magiging mas mabilis lang tumingin sa sample code ibang tao. 357 00:14:47,670 --> 00:14:48,170 Lahat tama. 358 00:14:48,170 --> 00:14:50,330 Kaya ito ay isang magandang halimbawa? 359 00:14:50,330 --> 00:14:52,040 Whoops. 360 00:14:52,040 --> 00:14:52,540 OK. 361 00:14:52,540 --> 00:14:58,810 Kaya dito ay ang Java bersyon ng program na sinulat ko kanina, "Hello World." 362 00:14:58,810 --> 00:15:01,900 >> Kaya Java, makikita mo madalas makita ang mga keyword na "class." 363 00:15:01,900 --> 00:15:03,779 Pagkatapos ay makikita mo ang ilang mga pangalan matapos na. 364 00:15:03,779 --> 00:15:05,570 Makikita mo ang kulot tirante tulad ng nakita natin dati, 365 00:15:05,570 --> 00:15:08,153 at kung minsan pumunta sila sa parehong linya, kung minsan iba pang mga linya, 366 00:15:08,153 --> 00:15:09,734 ito ay uri ng isang personal na desisyon. 367 00:15:09,734 --> 00:15:11,900 Makakakita ka ng mga keyword tulad ng "Pampubliko," "static," "walang bisa." 368 00:15:11,900 --> 00:15:13,790 Nakita natin ang "main." "Main" ay karaniwang 369 00:15:13,790 --> 00:15:17,220 ang pangalan ng default na function o ang default na tipak ng code na 370 00:15:17,220 --> 00:15:18,760 makakakuha tumakbo sa isang programa. 371 00:15:18,760 --> 00:15:19,330 >> "Tali." 372 00:15:19,330 --> 00:15:20,850 Ano ang ibig sabihin namin sa pamamagitan ng string ng mas maaga? 373 00:15:20,850 --> 00:15:23,480 Ginamit ko ito uri ng casually. 374 00:15:23,480 --> 00:15:25,100 Ang isang string ay kung ano? 375 00:15:25,100 --> 00:15:25,601 Isang salita. 376 00:15:25,601 --> 00:15:27,058 Ito ay tulad ng isang pagkakasunod-sunod ng mga character. 377 00:15:27,058 --> 00:15:29,810 Indibidwal na mga character, bumalik sa pabalik sa likod, karaniwan ay sa isang array, 378 00:15:29,810 --> 00:15:30,690 bilang ko na napag-usapan namin. 379 00:15:30,690 --> 00:15:34,700 At sa katunayan, tingnan ang syntax dito, ang dalawang mga square bracket? 380 00:15:34,700 --> 00:15:39,210 Ang ibig sabihin nito, hey computer, dito pagdating ng isang array ng mga string. 381 00:15:39,210 --> 00:15:42,636 Ang mga parisukat na bracket notasyon ay karaniwang ginagamit upang mangahulugan iyon. 382 00:15:42,636 --> 00:15:44,510 At pagkatapos ay maaari mong marahil kumuha ng isang guess-- ano 383 00:15:44,510 --> 00:15:46,580 ay naka-highlight na ito tipak ng code marahil gawin? 384 00:15:46,580 --> 00:15:49,737 385 00:15:49,737 --> 00:15:50,639 >> Madla: Ang output? 386 00:15:50,639 --> 00:15:51,090 >> David J. MALAN: Oo. 387 00:15:51,090 --> 00:15:52,506 Ito prints ng isang bagay sa screen. 388 00:15:52,506 --> 00:15:57,070 Kaya "system" ay isang uri ng isang reference sa iyong computer. 389 00:15:57,070 --> 00:15:59,620 "Out" ay nangangahulugan ng iyong computer output o ang screen. 390 00:15:59,620 --> 00:16:04,450 Kaya "system.out.print ln" marahil ay nangangahulugan? 391 00:16:04,450 --> 00:16:05,570 "Ln." 392 00:16:05,570 --> 00:16:09,570 Print linya na programmers tulad sa tila spell ilang mga salita out 393 00:16:09,570 --> 00:16:11,820 sa kanyang kabuuan at kumuha shortcut sa iba pang mga salita. 394 00:16:11,820 --> 00:16:13,260 Ngunit "ln" ay linya, kaya print linya. 395 00:16:13,260 --> 00:16:17,370 Kaya ito mga print out "Hello World! "Na sinusundan ng isang bagong linya. 396 00:16:17,370 --> 00:16:18,300 >> Kaya na ito. 397 00:16:18,300 --> 00:16:21,150 Ngunit Java ay kung ano ang makikita nila call object-oriented. 398 00:16:21,150 --> 00:16:23,440 At sa katunayan, lamang na magbigay ng isang pares ng mga iba pang mga kahulugan 399 00:16:23,440 --> 00:16:26,420 doon na maaari ka makita, sa pangkalahatan, mayroong 400 00:16:26,420 --> 00:16:30,600 Maraming mga iba't ibang uri ng wika, ngunit ang pinaka-karaniwang 401 00:16:30,600 --> 00:16:37,830 Isasama pamamaraan o pautos na wika. 402 00:16:37,830 --> 00:16:41,600 May mga functional wika, na hindi 403 00:16:41,600 --> 00:16:43,790 ibig sabihin na ang iba ay nonfunctional. 404 00:16:43,790 --> 00:16:47,740 At pagkatapos ay mayroong object-oriented wika. 405 00:16:47,740 --> 00:16:51,170 At ito ay marahil ang pinakamahusay na Categorization ng karamihan ng mga wika 406 00:16:51,170 --> 00:16:56,445 na nais mong kailanman pumili para sa uri ng isang tipikal na komersyal na proyekto. 407 00:16:56,445 --> 00:16:58,910 >> Ito ay magiging masyadong maraming ng, Sa tingin ko, ng hole isang daga ni 408 00:16:58,910 --> 00:17:01,620 na lumusong, ay upang subukan upang ipaliwanag ang iba't-ibang mga pagkakaiba. 409 00:17:01,620 --> 00:17:04,599 Ngunit ang mga wika nasaksihan namin sa gayon far-- C 410 00:17:04,599 --> 00:17:07,680 ay isang pamamaraan o isang pautos na wika. 411 00:17:07,680 --> 00:17:11,200 Higit pang mga kamakailan imbento wika ay madalas na maging, sorry, 412 00:17:11,200 --> 00:17:14,430 object-oriented, na nangangahulugan mayroon silang iba pang mga tampok sa mga ito. 413 00:17:14,430 --> 00:17:18,130 414 00:17:18,130 --> 00:17:19,430 Maaari ko bang ipaliwanag ito sa ganitong paraan? 415 00:17:19,430 --> 00:17:20,950 Tayo'y hindi kahit na pumunta down doon. 416 00:17:20,950 --> 00:17:25,200 >> Object-oriented na paraan maaari mong implement-- 417 00:17:25,200 --> 00:17:27,930 maaari kang modelo sa tunay na mundo isang maliit na mas epektibo. 418 00:17:27,930 --> 00:17:29,722 Sangkatauhan, sa paglipas ng panahon, ay may korte out, wow, 419 00:17:29,722 --> 00:17:32,430 ito ay magiging nice kung ang aking wika ay nagkaroon na ito sa tampok o ang tampok na iyon. 420 00:17:32,430 --> 00:17:34,830 At iyon ang dahilan kung bakit kami ay may kaya maraming wika sa mundo. 421 00:17:34,830 --> 00:17:37,670 Makatwirang mga tao, smart tao, sumang-ayon o hindi sumasang-ayon 422 00:17:37,670 --> 00:17:41,000 at walang paltos uri ng dumating nang magkasama sa pagbuo ng mga bagong wika ang lahat ng sama-sama. 423 00:17:41,000 --> 00:17:41,660 >> Kaso sa point. 424 00:17:41,660 --> 00:17:45,260 Apple imbento Swift sa pag-asa ng siguro pagbaba 425 00:17:45,260 --> 00:17:47,950 ang bar upang iPhone pag-unlad, dahil sa nakaraang language-- 426 00:17:47,950 --> 00:17:51,080 tinatawag Layunin-C, na maaaring ding maging sa aming listahan here-- 427 00:17:51,080 --> 00:17:54,190 ay mas arcane at marami pang mas mahirap na balutin ng isip sa paligid. 428 00:17:54,190 --> 00:17:57,690 At bilang programming ay nagiging arguably mas naa-access at mas malawak 429 00:17:57,690 --> 00:18:00,580 pinagtibay ng mga tao kahit na mas teknikal, ang goal-- 430 00:18:00,580 --> 00:18:04,160 ito ay isang napaka magiting layunin upang subukan upang mas mababa ang hadlang sa entry sa pamamagitan ng paggawa 431 00:18:04,160 --> 00:18:07,400 mga wikang kanilang sarili mas madali upang makapagsimula sa, 432 00:18:07,400 --> 00:18:09,430 ngunit walang mga mas malakas na kinakailangan. 433 00:18:09,430 --> 00:18:10,560 >> At ng isa pang wika. 434 00:18:10,560 --> 00:18:14,110 Bakit hindi namin kumuha ng isang pagtingin sa isang bagay tulad ng sawa, 435 00:18:14,110 --> 00:18:18,090 na kung saan ay very much sa popularidad mga araw na ito. 436 00:18:18,090 --> 00:18:19,570 Sawa. 437 00:18:19,570 --> 00:18:20,464 Sample program. 438 00:18:20,464 --> 00:18:24,600 439 00:18:24,600 --> 00:18:26,700 Tingnan natin. 440 00:18:26,700 --> 00:18:28,790 "Hello World" wika. 441 00:18:28,790 --> 00:18:30,180 Gawin natin ito. 442 00:18:30,180 --> 00:18:33,625 "Hello World." 443 00:18:33,625 --> 00:18:35,375 Sabihin makita kung ito ay nagbibigay sa kami ng magandang halimbawa. 444 00:18:35,375 --> 00:18:39,450 445 00:18:39,450 --> 00:18:39,950 OK. 446 00:18:39,950 --> 00:18:41,283 Kaya ito ay talagang uri ng masaya. 447 00:18:41,283 --> 00:18:43,330 Kaya kung sakaling google "Hello World," na 448 00:18:43,330 --> 00:18:47,000 ang mangyayari sa maging isa sa mga unang mga programa kailanman nakasulat sa isang modernong wika, 449 00:18:47,000 --> 00:18:51,830 lamang bilang isang patunay ng konsepto, maaari mong makita lahat ng uri ng pagpapatupad ng mga ito. 450 00:18:51,830 --> 00:18:54,240 >> Ang ilan sa mga wikang ito Ko na hindi kahit na narinig ng. 451 00:18:54,240 --> 00:18:59,770 Ngunit maaari mong see-- sabihin pumunta sa Basic, ang isa natutunan ko taon na ang nakakaraan, sa bahagi. 452 00:18:59,770 --> 00:19:02,720 Ito ay isang masaya na wika dahil ikaw nagkaroon na, pati na ang programmer, numero 453 00:19:02,720 --> 00:19:03,710 ang lahat ng iyong mga linya. 454 00:19:03,710 --> 00:19:05,626 Hindi iba kung ano ako ay ginagawa kapag ako ay sumusulat 455 00:19:05,626 --> 00:19:08,380 pseudocode sa dilaw dokumento mas maaga para sa binary paghahanap, 456 00:19:08,380 --> 00:19:09,580 para sa paghahanap ng isang phone book. 457 00:19:09,580 --> 00:19:11,810 >> At kaya, kung ikaw ay wanted upang pumunta sa isa pang linya, 458 00:19:11,810 --> 00:19:15,780 Gusto mong literal i-type, pumunta sa 10, o pumunta sa 20. 459 00:19:15,780 --> 00:19:19,110 At kung ikaw ay sumusulat ng mga linya, ang convention ay upang gawin, ito ay line 10, 460 00:19:19,110 --> 00:19:22,545 ito ay line 20, ito ay line 30, 40, na may walang sa pagitan, 461 00:19:22,545 --> 00:19:25,170 sa gayon ay nagbibigay sa iyong sarili ng ilang mga kuwarto kung magpasya ka, maghintay ng isang minuto, 462 00:19:25,170 --> 00:19:27,230 dapat ako ay nagdagdag ng ilang mga karagdagang code sa isang lugar. 463 00:19:27,230 --> 00:19:30,960 Ikaw pa rin ay uri ng siyam pagkakataon upang pisilin na sa pagitan ng iyong programa 464 00:19:30,960 --> 00:19:33,020 bago ka had sa manwal magnumerong muli ang lahat. 465 00:19:33,020 --> 00:19:35,470 >> Kaya ito ay uri ng kung ano ang ibig sabihin ko kapag sinabi ko ang mundo ay magkaroon ng 466 00:19:35,470 --> 00:19:36,303 na may isang bagong tampok. 467 00:19:36,303 --> 00:19:39,364 Sa isang lugar sa kahabaan ng paraan ng isang tao natanto, boy na ito ay bobo. 468 00:19:39,364 --> 00:19:41,280 Ito ay lamang ng paglikha trabaho para sa mga programmer. 469 00:19:41,280 --> 00:19:44,200 Kaya siya lamang ang uri ng mga built ng isang bagong layer sa itaas ng na 470 00:19:44,200 --> 00:19:46,910 upang hindi mo kailangang mag-alala tungkol sa kung ano line numero ng iyong code 471 00:19:46,910 --> 00:19:48,570 ay talagang sa. 472 00:19:48,570 --> 00:19:54,940 >> Kaya kapag maaari mong piliin isang wika o sa iba pang? 473 00:19:54,940 --> 00:19:56,690 Well, kung alin sa mga wika gagawin mo ay may posibilidad 474 00:19:56,690 --> 00:20:00,960 makarinig ng tungkol sa mga pinaka-in ng iyong sariling mundo mga araw na ito? 475 00:20:00,960 --> 00:20:02,680 ni drop down Layunin-C masyadong Hayaan. 476 00:20:02,680 --> 00:20:06,416 477 00:20:06,416 --> 00:20:07,739 >> Madla: C #. 478 00:20:07,739 --> 00:20:08,530 David J. MALAN: C #. 479 00:20:08,530 --> 00:20:10,310 Kaya hayaan mo akong kulay. 480 00:20:10,310 --> 00:20:13,190 Huwag mayroon kaming ang aming iba pang mga kulay sa isang lugar? 481 00:20:13,190 --> 00:20:14,550 Kaya C #. 482 00:20:14,550 --> 00:20:16,390 At kung ano ang alam mo tungkol sa C #? 483 00:20:16,390 --> 00:20:18,940 Anything spring sa isip? 484 00:20:18,940 --> 00:20:20,707 >> Madla: Ito ay isang programming language. 485 00:20:20,707 --> 00:20:22,540 David J. MALAN: Ito ay isang programming language. 486 00:20:22,540 --> 00:20:23,200 OK. 487 00:20:23,200 --> 00:20:24,690 Tama iyan. 488 00:20:24,690 --> 00:20:26,440 Kaya kami ay pakikipag-usap tungkol sa C #. 489 00:20:26,440 --> 00:20:29,230 C # ay may gawi na gamitin sa kapaligiran Windows, 490 00:20:29,230 --> 00:20:33,550 kaya kung ikaw ay sumusulat Microsoft software para sa Windows, C # ay napaka-karaniwang ginagamit, 491 00:20:33,550 --> 00:20:38,560 maging ito man ay para sa mga desktop software, o kahit phone software sa Windows phone, 492 00:20:38,560 --> 00:20:41,820 kung nagkaroon ka ng mga, o sa web kahit na masyadong. 493 00:20:41,820 --> 00:20:44,642 At sa katunayan, marahil Kareem nabanggit ASP mas maaga? 494 00:20:44,642 --> 00:20:46,600 Kaya mayroon ding mga bagay na tinatawag na frameworks, 495 00:20:46,600 --> 00:20:51,040 kung saan maaari naming ipakilala sa pamamagitan ng extension. 496 00:20:51,040 --> 00:20:53,280 Frameworks, tulad ASP. 497 00:20:53,280 --> 00:20:55,740 Nakatayo para sa mga aktibong mga pahina server. 498 00:20:55,740 --> 00:20:59,880 At ito ay code at isang paraan ng programming 499 00:20:59,880 --> 00:21:03,490 na sa pangkalahatan ay ginagawang mas madali na magsulat web based na mga aplikasyon. 500 00:21:03,490 --> 00:21:07,530 Sa ibang salita, magiging super, sobrang nakakainis na magsulat ng isang website 501 00:21:07,530 --> 00:21:09,469 sa wikang C na nasaksihan namin bago, 502 00:21:09,469 --> 00:21:12,510 dahil gusto mo na kailangang gumamit ng print + F, Gusto mo bang gamitin ang keyword na 503 00:21:12,510 --> 00:21:13,940 "Main" at ang kulot tirante. 504 00:21:13,940 --> 00:21:16,720 Ang isang pulutong ng arcane syntax at diskarte upang ipatupad 505 00:21:16,720 --> 00:21:19,195 isang bagay na ay medyo mahirap unawain. 506 00:21:19,195 --> 00:21:20,240 Ang isang web page. 507 00:21:20,240 --> 00:21:23,800 >> At kaya iba pang mga wika ay may nagbago upang gumawa ng na uri ng bagay mas madali. 508 00:21:23,800 --> 00:21:26,890 At siya namang, ang mga tao ay may dumating up may frameworks, pag-uuri ng mga kasangkapan 509 00:21:26,890 --> 00:21:30,520 na maaari mong gamitin na gawin itong mas madali upang isulat ang mga pahina ng web. 510 00:21:30,520 --> 00:21:33,070 Kaya halimbawa, upang gumawa ng ito mas kongkreto, 511 00:21:33,070 --> 00:21:36,390 hayaan mo akong buksan up lamang ng isang text file para sa isang sandali. 512 00:21:36,390 --> 00:21:39,380 >> At maaari mong isipin ang kahapon na namin sinabi ng isang bagay 513 00:21:39,380 --> 00:21:41,210 tulad ng, ito ay isang web page. 514 00:21:41,210 --> 00:21:42,300 HTML. 515 00:21:42,300 --> 00:21:45,340 Isara HTML. 516 00:21:45,340 --> 00:21:48,500 Hayaan akong laktawan ang ulo at lamang gawin ang mga katawan dito. 517 00:21:48,500 --> 00:21:52,810 Ipagpalagay na nais kong isulat hindi "Hello World," 518 00:21:52,810 --> 00:21:57,020 ngunit "Hello David," kung saan David ay ang pangalan ng kasalukuyang naka-log in user. 519 00:21:57,020 --> 00:22:00,270 Ano ang isang bagay tulad ASP ay gawin, o JSP-- 520 00:22:00,270 --> 00:22:04,060 na kung saan ay Java server pages-- o anumang bilang ng mga iba pang mga frameworks 521 00:22:04,060 --> 00:22:05,435 ay ang mga ito ay hindi mga wika, per se. 522 00:22:05,435 --> 00:22:07,351 Ang mga ito ay tulad ng karagdagang software na kayo 523 00:22:07,351 --> 00:22:10,490 Gusto i-install sa iyong kapaligiran na lamang gawing mas madali sa programa. 524 00:22:10,490 --> 00:22:15,670 >> Kaya halimbawa, sa halip na may sa gawin bagay tulad ng "hello, printf (" David ")" 525 00:22:15,670 --> 00:22:17,510 o isang bagay na uri ng co-mingling-- 526 00:22:17,510 --> 00:22:20,840 ang uri ng code nasaksihan namin before-- ang gusto mong gawin ng isang bagay magkano ang mas simple, 527 00:22:20,840 --> 00:22:26,190 tulad ng "name%." 528 00:22:26,190 --> 00:22:28,660 At kaya ang mga frameworks, tulad ASP-- at ako 529 00:22:28,660 --> 00:22:31,212 hindi matandaan kung ko natatanggap ang syntax lamang karapatan para sa ASP. 530 00:22:31,212 --> 00:22:33,100 JSP ay isang little-- ay ito right? 531 00:22:33,100 --> 00:22:36,500 >> Kaya sa ASP, ito ay uri ng isang espesyal na syntax 532 00:22:36,500 --> 00:22:39,830 na ang ilang mga developer nagpasya ito ay maaaring makatulong sa mga tao out. 533 00:22:39,830 --> 00:22:43,000 At maaari kong ipahayag ang mas succinctly placeholder, halimbawa. 534 00:22:43,000 --> 00:22:47,187 Like maglagay ng isang halaga dito, kung saan ang halaga na ito pangalan ay hindi N-A-M-E, 535 00:22:47,187 --> 00:22:48,520 ito ay ang ilang mga halaga na naka-imbak sa doon. 536 00:22:48,520 --> 00:22:50,728 Kaya "pangalan," sa ganitong konteksto, gusto naming tumawag sa isang variable. 537 00:22:50,728 --> 00:22:52,760 Algebra ay variable tulad ng x, at y, at z. 538 00:22:52,760 --> 00:22:56,021 Programmers gamitin ang mga variable na mas naglalarawang kaysa sa x, y, at z, 539 00:22:56,021 --> 00:22:56,520 karaniwang. 540 00:22:56,520 --> 00:23:01,020 Kaya "pangalan" ay literal na ang ilang mga uri ng memorya container para sa isang bagay tulad ng 541 00:23:01,020 --> 00:23:05,440 D-A-V-I-D, para sa aking pangalan, o kung sinuman ang sino pa ang paririto ay naka-log sa website. 542 00:23:05,440 --> 00:23:09,300 >> At kaya ito ay ang uri ng kaginhawaan kumuha ka ng may mga tiyak na kapaligiran. 543 00:23:09,300 --> 00:23:14,220 Kaya C # at isang bagay tulad ASP gagawin very karaniwang gamitin sa isang Windows mundo, 544 00:23:14,220 --> 00:23:16,460 kung para sa kanyang desktop software o web server, 545 00:23:16,460 --> 00:23:21,490 lalo na kung ang iyong server ay siya namang tumatakbo Microsoft Windows at Microsoft 546 00:23:21,490 --> 00:23:25,810 IIS-- o Internet Information Server, kung nakukuha ko ang acronym right-- 547 00:23:25,810 --> 00:23:27,800 na kung saan ay web server ng Microsoft. 548 00:23:27,800 --> 00:23:30,820 >> Kaya kung ano ang iba pang mga wika Isasama folks pamilyar sa, 549 00:23:30,820 --> 00:23:35,228 o mayroon kang narinig ng mas madalas kaysa sa hindi? 550 00:23:35,228 --> 00:23:38,262 >> Madla: Alam ko na sawa ni uri ng isang popular [hindi marinig]. 551 00:23:38,262 --> 00:23:39,470 David J. MALAN: Very popular. 552 00:23:39,470 --> 00:23:45,490 Kaya sawa dito ay ginagamit napakadalas sa mga kaunlaran sa mga application o data 553 00:23:45,490 --> 00:23:48,330 science, kung saan mayroon kang isang pulutong ng data na gusto mong pag-aralan 554 00:23:48,330 --> 00:23:50,413 at nais mong gumamit ng isang programming language para dito. 555 00:23:50,413 --> 00:23:53,640 R ay maaaring karaniwang gamitin para sa na pati na rin, sa isang statistical konteksto. 556 00:23:53,640 --> 00:23:56,400 Ngunit sawa ay may napakaraming mga mga tampok na binuo in. 557 00:23:56,400 --> 00:23:58,850 Kaya maraming mga karagdagang aklatan, bilang mga tao sabihin. 558 00:23:58,850 --> 00:24:01,260 >> Mga Aklatan ay lamang mga koleksyon ng code na ang ibang tao 559 00:24:01,260 --> 00:24:04,218 wrote na maaari mong gamitin upang ikaw Hindi mo na kailangang muling baguhin ang mga gulong. 560 00:24:04,218 --> 00:24:07,430 At kaya sawa ay napaka-karaniwang ginagamit sa mga aplikasyon ng data science. 561 00:24:07,430 --> 00:24:09,930 Ngunit ito ay din napaka-karaniwang ginagamit sa mga aplikasyon ng web. 562 00:24:09,930 --> 00:24:12,780 Maaari mong ipatupad ang isang dynamic website gamit sawa. 563 00:24:12,780 --> 00:24:15,210 >> At sa pamamagitan ng dynamic na website, ako nangangahulugan na hindi lamang static na nilalaman 564 00:24:15,210 --> 00:24:19,530 tulad nilikha namin kahapon, sa pamamagitan ng lamang mahirap coding sa teksto Latin 565 00:24:19,530 --> 00:24:21,820 at iba pang mga bagay, ngunit sa halip ng kakayahan 566 00:24:21,820 --> 00:24:25,367 mag-log in, ang kakayahan upang bumili ng isang bagay, ang kakayahan upang tingnan ang 567 00:24:25,367 --> 00:24:26,950 sa iyong shopping cart, o mga katulad. 568 00:24:26,950 --> 00:24:30,590 Ang lahat ng iyon ay nangangailangan ng dynamism at ikaw kailangan ang ilang mga wika tulad ng isa sa mga. 569 00:24:30,590 --> 00:24:35,060 >> Madla: Kaya ang Python magkaroon ng sarili nitong extension, katulad ng gusto [hindi marinig] 570 00:24:35,060 --> 00:24:36,060 David J. MALAN: Ito ay. 571 00:24:36,060 --> 00:24:42,250 Kaya sa mundo ng Python, Django ay isang napaka-tanyag framework para sa mga sawa. 572 00:24:42,250 --> 00:24:46,520 WSGI ay isa pang mekanismo na uri ng naiiba mula sa ito 573 00:24:46,520 --> 00:24:47,640 ngunit katulad sa espiritu. 574 00:24:47,640 --> 00:24:52,200 Ito ay isang add-on na nagpapahintulot sa iyo na tumakbo sawa code sa isang server. 575 00:24:52,200 --> 00:24:53,950 Mayroong other-- yeah. 576 00:24:53,950 --> 00:24:57,250 Kaya makikita ang mga naming tumawag frameworks. 577 00:24:57,250 --> 00:24:58,870 At ito ay isang maliit na bit ng isang pang-aabuso. 578 00:24:58,870 --> 00:25:00,920 Ito ay higit pa sa isang web server teknolohiya. 579 00:25:00,920 --> 00:25:04,610 Ngunit kami ay panatilihin ito simple at ilagay ito sa ang haligi na ito gayunman. 580 00:25:04,610 --> 00:25:05,780 >> OK. 581 00:25:05,780 --> 00:25:07,850 WSGI. 582 00:25:07,850 --> 00:25:09,020 WSGI. 583 00:25:09,020 --> 00:25:12,100 Ang isa pang thing-- at talagang, sabihin sa akin ilipat na sa sarili nitong hanay, 584 00:25:12,100 --> 00:25:17,000 dahil Gusto ko sumigaw sa aking sarili para sa paglalagay ng mga ito sa parehong bucket. 585 00:25:17,000 --> 00:25:24,910 ni ilagay ito sa server Hayaan tampok, sabihin natin. 586 00:25:24,910 --> 00:25:26,710 Iyan ay hindi isang teknikal na termino. 587 00:25:26,710 --> 00:25:29,180 >> Kaya dito maaari naming WSGI. 588 00:25:29,180 --> 00:25:32,580 Mayroong CGI, na kung saan ay isang mas lumang pamamaraan para sa paghahatid up wika 589 00:25:32,580 --> 00:25:35,890 tulad ng Perl o PHP, o ilang iba. 590 00:25:35,890 --> 00:25:39,000 Muli, nabanggit ko na ang mga katagang ito hindi kaya magkano upang ayusin ng itanim ang mga ito, 591 00:25:39,000 --> 00:25:40,749 ngunit sa gayon ay kung nakita mo ang mga ito ito ay isang bagay 592 00:25:40,749 --> 00:25:42,130 mo lamang google sa read more. 593 00:25:42,130 --> 00:25:46,110 Walang tunay na juice sa ilan sa mga bagay na ito. 594 00:25:46,110 --> 00:25:47,850 >> Ngunit sabihin bumalik sa mga wika. 595 00:25:47,850 --> 00:25:50,499 Usapan natin ang tungkol sa C #, sawa. 596 00:25:50,499 --> 00:25:52,790 Ano pa ang maaaring ginagamit mo para sa web programming mga araw na ito? 597 00:25:52,790 --> 00:25:54,302 ni-focus sa na pa rin Hayaan. 598 00:25:54,302 --> 00:25:55,247 >> Madla: PHP. 599 00:25:55,247 --> 00:25:56,080 David J. MALAN: PHP. 600 00:25:56,080 --> 00:25:57,413 At ni bumalik sa isa na nagbibigay-daan. 601 00:25:57,413 --> 00:25:59,310 Kaya PHP ay napaka-karaniwang ginagamit. 602 00:25:59,310 --> 00:26:01,560 PHP ay may kaugaliang upang makakuha ng isang masamang rap. 603 00:26:01,560 --> 00:26:05,790 Ito na nagsimula off bilang isang wika ipinatupad sa pamamagitan ng mga tao na marahil ay hindi kinakailangan 604 00:26:05,790 --> 00:26:06,960 ang pinakamahusay na designer wika. 605 00:26:06,960 --> 00:26:11,290 At kaya maaari mong basahin ang lahat ng uri ng mga artikulo sa online tungkol sa kung paano masamang PHP ay. 606 00:26:11,290 --> 00:26:13,660 At sa kasamaang-palad, ito ay isang paghahayag, sa bahagi, 607 00:26:13,660 --> 00:26:18,727 na lamang ang relihiyon debates na sumabog sa mga programmer. 608 00:26:18,727 --> 00:26:20,560 At ito ay isang bagay arimuhanan sa isip, 609 00:26:20,560 --> 00:26:24,410 mula sa isang perspektibo ng negosyo, na ito ay tunay madali para sa teknikal na mga tao 610 00:26:24,410 --> 00:26:26,900 upang makakuha ng lahat ng nagtrabaho up sa kanilang mga opinyon sa ilang mga bagay. 611 00:26:26,900 --> 00:26:29,566 At ito ay hindi palaging nangangahulugan na ang isa yelling ang loudest 612 00:26:29,566 --> 00:26:31,870 o sa mga strongest, angriest opinyon ay tama. 613 00:26:31,870 --> 00:26:34,100 Isang maraming beses, ito tunay lamang ay hindi mahalaga. 614 00:26:34,100 --> 00:26:37,970 >> At kaya ang mga tao ay lamang arguing kahit anong kanilang sariling biases o ginhawa zone ay. 615 00:26:37,970 --> 00:26:40,760 At kaya dapat mong panatilihin na sa isip kapag gumagawa ng 616 00:26:40,760 --> 00:26:42,622 isang desisyon, na lamang dahil may isang taong nagsasabing 617 00:26:42,622 --> 00:26:45,080 ito ang tamang wika para sa ang trabaho, upang maging totoo, 618 00:26:45,080 --> 00:26:48,350 ngunit ito rin ay lamang ay maaaring maging ito ay ang tamang wika sa loob ng kanilang sariling kakayahan 619 00:26:48,350 --> 00:26:49,267 itakda o comfort zone. 620 00:26:49,267 --> 00:26:52,600 Na kung saan ay hindi masama, ngunit dapat mong mapagtanto na maaaring may ilang mga konteksto doon. 621 00:26:52,600 --> 00:26:54,440 May ilang objectively maling pahayag, 622 00:26:54,440 --> 00:26:59,080 tulad ng C ay ang maling wika upang magamit mga araw na ito para sa pagpapatupad ng mga website 623 00:26:59,080 --> 00:27:00,520 halos palaging. 624 00:27:00,520 --> 00:27:03,370 Ngunit ito ay hindi walang katwiran upang sabihin na ang alinman sa mga 625 00:27:03,370 --> 00:27:05,700 ay mali na ko circled namin sila hanggang dito. 626 00:27:05,700 --> 00:27:08,180 >> PHP ay wala na sa pamamagitan ng maraming mga bersyon. 627 00:27:08,180 --> 00:27:11,310 Kaya mga wika ay madalas na may bersyon numero na nauugnay sa mga ito. 628 00:27:11,310 --> 00:27:15,390 PHP ay hanggang sa, tingin ko, bersyon 7 ngayon, kaya ito ay naging sa paligid para sa ganap ng ilang oras. 629 00:27:15,390 --> 00:27:18,270 At bilang mga wika makakuha mas bago, sila ay madalas na makakuha ng mga bagong tampok. 630 00:27:18,270 --> 00:27:22,510 Ngunit mayroon kang upang maging mapag-intindi ng mga ito dahil kung ang iyong website ay naging 631 00:27:22,510 --> 00:27:27,539 ipinatupad sa bersyon 7 ng PHP ngunit sinusubukan mong patakbuhin ang iyong website, 632 00:27:27,539 --> 00:27:29,830 o marahil na iyong outsourced ang pag-unlad ng iyong code 633 00:27:29,830 --> 00:27:31,960 sa ibang tao at sila mail ito sa iyo o ipadala ito sa iyo 634 00:27:31,960 --> 00:27:33,960 at sinasabi nila, dito, ilagay na ito sa iyong web server, 635 00:27:33,960 --> 00:27:36,610 kung ang iyong web server ay isang ilang taon outdated-- maging ito man ay 636 00:27:36,610 --> 00:27:39,465 iyong sariling server o ng isang web host-- hindi talaga ito maaaring tumakbo. 637 00:27:39,465 --> 00:27:41,340 Kaya ang mga ito ay ang mga uri ng mga bagay na ang isang tao 638 00:27:41,340 --> 00:27:44,067 mga pangangailangan upang maging maingat sa kapag-upgrade ang isang site 639 00:27:44,067 --> 00:27:45,650 o pagpapatupad ng mga ito sa unang pagkakataon. 640 00:27:45,650 --> 00:27:46,900 >> Narinig ko JavaScript nang mas maaga. 641 00:27:46,900 --> 00:27:50,570 Kaya JavaScript ay isang nakawiwiling isa sa na ito ay sa pangkalahatan ay 642 00:27:50,570 --> 00:27:53,030 client side, dahil kakailanganin namin makita pagkatapos ng break, na kung saan 643 00:27:53,030 --> 00:27:55,000 ang ibig sabihin nito ay tumatakbo sa browser ng gumagamit. 644 00:27:55,000 --> 00:27:58,400 Ngunit maaari mo ring patakbuhin JavaScript mga araw na ito 645 00:27:58,400 --> 00:28:03,450 paggamit ng isang bagay na tinatawag na Node.js, kung saan Node.js 646 00:28:03,450 --> 00:28:08,000 ay isang mekanismo para sa pagpapatakbo JavaScript code server side, 647 00:28:08,000 --> 00:28:12,430 sa halip ng paggamit sawa, o PHP, o iba pang tulad ng mga wika. 648 00:28:12,430 --> 00:28:17,820 >> JavaScript ay partikular na mahusay na angkop para sa chat application at real time 649 00:28:17,820 --> 00:28:22,050 aplikasyon, samantalang PHP ay hindi isang mahusay wika para sa pagpapatupad ng isang bagay 650 00:28:22,050 --> 00:28:25,050 tulad ng isang chat server, kung saan mga gumagamit manatili konektado sa mga ito patuloy. 651 00:28:25,050 --> 00:28:28,760 PHP ay higit pa sa isang pagbisita sa akin isang beses, makabalik isang resulta, 652 00:28:28,760 --> 00:28:31,790 at pagkatapos ay i-click ang isa pang link ng ilang mga segundo o minuto mula ngayon. 653 00:28:31,790 --> 00:28:36,020 Sapagkat Node.js at JavaScript ay maaaring maging ginagamit higit pa para patuloy na koneksyon. 654 00:28:36,020 --> 00:28:40,840 Mga ibang wika na pinaghihinalaan mo ay karaniwang ginagamit para sa mga web bagay-bagay? 655 00:28:40,840 --> 00:28:42,800 >> Madla: Gusto jQuery maging isang balangkas? 656 00:28:42,800 --> 00:28:44,050 >> David J. MALAN: Magandang katanungan. 657 00:28:44,050 --> 00:28:44,700 Wala alinman sa. 658 00:28:44,700 --> 00:28:51,210 Gusto kong tumawag sa jQuery library, kung saan muli ng isang library ay lamang ng grupo ng code 659 00:28:51,210 --> 00:28:53,250 na ang isang tao sino pa ang paririto ay may nakasulat na sa pangkalahatan 660 00:28:53,250 --> 00:28:56,390 solves ilang mga problema na ginagawang, sana, mas madali 661 00:28:56,390 --> 00:28:57,760 para sa iyo na gawin ang iyong trabaho. 662 00:28:57,760 --> 00:29:00,820 At hayaan mo akong gawin ang isa halimbawa ng ito sa konteksto ng web. 663 00:29:00,820 --> 00:29:03,910 >> Sa konteksto ng web mayroong wikang ito, JavaScript, 664 00:29:03,910 --> 00:29:06,690 na namin makita sa ibang pagkakataon, kung saan mo Maaaring sabihin ng isang bagay tulad this-- 665 00:29:06,690 --> 00:29:10,060 "Document.getElementById." 666 00:29:10,060 --> 00:29:11,490 At ano ang ginawa kong tumawag ito kahapon? 667 00:29:11,490 --> 00:29:16,800 Una, sa tingin ko, ay ang mga natatanging ID ibinigay ko sa isang elemento na na mukhang ito. 668 00:29:16,800 --> 00:29:23,110 "P id =" first ">" at pagkatapos ay nagkaroon kami tulad ng "lorem ipsum," at iba pa. 669 00:29:23,110 --> 00:29:28,210 Kaya kung ako ay pagsulat ng isang programa sa JavaScript upang kahit papaano ay manipulahin, 670 00:29:28,210 --> 00:29:30,830 baguhin ang mga pahina ng web na kami ay naglalaro sa kahapon, 671 00:29:30,830 --> 00:29:33,010 Gusto ko bang gamitin ito naka-highlight na linya ng code 672 00:29:33,010 --> 00:29:38,700 upang makakuha ng na partikular na snippet ng HTML mula sa aking pahina, sa partikular na node, 673 00:29:38,700 --> 00:29:39,680 dahil kakailanganin namin tumawag ito. 674 00:29:39,680 --> 00:29:44,540 >> Gayunpaman, sa jQuery, sa halip ng pagsulat ito, na kung saan ay raw JavaScript code-- 675 00:29:44,540 --> 00:29:48,870 lamang sa labas ng kahon, na kung paano mo isulat it-- nais mong sa halip lamang sabihin, 676 00:29:48,870 --> 00:29:50,260 "#first." 677 00:29:50,260 --> 00:29:52,330 Iyan ay katumbas. 678 00:29:52,330 --> 00:29:56,040 At kaya batay lamang sa ito napaka arcane Halimbawa, kung ano marahil 679 00:29:56,040 --> 00:29:57,870 ay ang argument para sa paggamit ng jQuery? 680 00:29:57,870 --> 00:30:01,390 681 00:30:01,390 --> 00:30:05,111 Bakit ang isang developer gumamit ng isang library tulad ng jQuery, batay sa mga ito ilang halimbawa, 682 00:30:05,111 --> 00:30:05,610 marahil? 683 00:30:05,610 --> 00:30:06,335 >> Madla: Less code. 684 00:30:06,335 --> 00:30:06,780 >> David J. MALAN: Oo. 685 00:30:06,780 --> 00:30:07,530 Ito ay mas mababa code. 686 00:30:07,530 --> 00:30:09,070 Ito ay lamang ng mas mabilis mag-type. 687 00:30:09,070 --> 00:30:11,690 kontrapunkta ay na ang hitsura nito scarier. 688 00:30:11,690 --> 00:30:13,540 Talagang hindi mo maaaring basahin ito kaliwa papuntang kanan. 689 00:30:13,540 --> 00:30:16,730 Sa katunayan, dahil sa ito ay halos bantas ngayon sa halip ng mga aktwal na mga salita, 690 00:30:16,730 --> 00:30:20,950 Maaari ko bang uri ng magpakilala na "Document.getElementById" ay makakakuha ng 691 00:30:20,950 --> 00:30:23,640 isang elemento mula sa dokumento sa pamamagitan ng kanyang ID. 692 00:30:23,640 --> 00:30:26,750 Ko talagang ay maaaring gumamit ng walang ganoong nimonika mula ang bagay na ito dito. 693 00:30:26,750 --> 00:30:27,680 >> Kaya ito ay isang kalakalan off. 694 00:30:27,680 --> 00:30:30,763 May isang kabutihang-asal na nanggagaling madalas na may gamit aklatan, lalo na 695 00:30:30,763 --> 00:30:31,440 tulad ng jQuery. 696 00:30:31,440 --> 00:30:34,700 Subalit ang katotohanan ay jQuery ay may uri ng maging isang de facto na pamantayan, 697 00:30:34,700 --> 00:30:38,110 kaya na halos kahit sino ay ang mga araw na writes JavaScript code 698 00:30:38,110 --> 00:30:41,520 ay gumagamit ng jQuery o ng isang bagay tulad nito, at hindi na magsusulat 699 00:30:41,520 --> 00:30:45,200 tulad ng isang maligoy expression bilang ito, dahil muli, ang sangkatauhan 700 00:30:45,200 --> 00:30:47,850 ay natutunan, wow, na noon ay uri ng isang hindi nakuha ng pagkakataon 701 00:30:47,850 --> 00:30:49,030 upang gumawa ng aming mga buhay mas madali. 702 00:30:49,030 --> 00:30:51,140 Kaya tao gumawa ng kanilang buhay mas madali. 703 00:30:51,140 --> 00:30:53,310 Magandang tanong. 704 00:30:53,310 --> 00:30:55,870 >> Mga ibang wika upang isaalang-alang. 705 00:30:55,870 --> 00:30:58,660 Gusto ko sasabihin sa gitna ito listahan Ruby ay lubos na popular. 706 00:30:58,660 --> 00:31:01,310 At kaya sa mundo ng Ruby, may isang framework 707 00:31:01,310 --> 00:31:03,590 tinatawag daang-bakal, na kung saan ay napaka-tanyag. 708 00:31:03,590 --> 00:31:06,880 Kaya Ruby sa daang-bakal ay isang karaniwang ginagamit expression. 709 00:31:06,880 --> 00:31:10,330 Gayundin sa mundong ito, hayaan mo akong bilog Java para sa mga web bagay-bagay, 710 00:31:10,330 --> 00:31:14,160 kung saan sa mundo ng Java maaari kang magkaroon ng JSP, o Java 711 00:31:14,160 --> 00:31:18,450 Servlets, na kung saan ay isang pangkaraniwang teknolohiya. 712 00:31:18,450 --> 00:31:22,560 At ito ay lamang muli mga paraan ng paggamit na wika sa isang kapaligiran sa server. 713 00:31:22,560 --> 00:31:23,520 >> Kaya kung ano ang ibig sabihin nito? 714 00:31:23,520 --> 00:31:25,770 Kung mayroon ka ng isang pisikal na server, gusto mo literal 715 00:31:25,770 --> 00:31:30,510 i-download ang web server software at i-install ito sa paraan 716 00:31:30,510 --> 00:31:33,510 na ikaw ay may suporta para sa isa sa mga frameworks, kung saan ka 717 00:31:33,510 --> 00:31:37,260 maaaring, sa turn, gamitin ang isa o higit pa sa mga wikang ito. 718 00:31:37,260 --> 00:31:40,260 At sa katotohanan, kung nag-sign up para sa tulad ng isang web host o ilan sa mga ulap 719 00:31:40,260 --> 00:31:41,968 serbisyo usapan natin tungkol sa kahapon, madalas 720 00:31:41,968 --> 00:31:44,885 mga bagay-bagay lang ay may mga configuration ni machine para sa iyo. 721 00:31:44,885 --> 00:31:46,510 Hindi mo na kailangan upang i-set up na ito nang manu-mano. 722 00:31:46,510 --> 00:31:51,040 Ngunit kung ikaw ay, ito ay kung saan ang papel na ginagampanan ng system administrator, kaya na magsalita, 723 00:31:51,040 --> 00:31:51,860 lumapit sa maglaro. 724 00:31:51,860 --> 00:31:54,151 Siya o siya ay talagang gawin ito uri ng mga bagay-bagay para sa iyo, 725 00:31:54,151 --> 00:31:58,510 o ang tinatawag na webmaster ay madalas gawin ito para sa iyo. 726 00:31:58,510 --> 00:31:59,010 Lahat tama. 727 00:31:59,010 --> 00:32:03,300 Ang anumang mga katanungan sa ilan sa mga dito? 728 00:32:03,300 --> 00:32:06,690 O anumang mga pagkakataon sa lahat na magtanong tungkol sa wika? 729 00:32:06,690 --> 00:32:09,500 Frameworks? 730 00:32:09,500 --> 00:32:11,530 Pagkatapos hayaan mo akong ipakilala lamang ng isa pang library 731 00:32:11,530 --> 00:32:13,150 na din napaka-pangkaraniwan mga araw na ito. 732 00:32:13,150 --> 00:32:15,340 Ang listahang ito ay maaaring pumunta sa walang hanggan. 733 00:32:15,340 --> 00:32:19,140 >> At ito library ay uri ng simula upang malagas ng pabor. 734 00:32:19,140 --> 00:32:19,850 Naging paligid. 735 00:32:19,850 --> 00:32:22,040 Ito ay popularized sa pamamagitan Twitter para sa ilang oras. 736 00:32:22,040 --> 00:32:24,470 At ngayon ng maraming ng mga website, lots ng mga developer gamitin ito. 737 00:32:24,470 --> 00:32:26,629 Ngunit ang mga bagong bagay ay darating out at darating kasama. 738 00:32:26,629 --> 00:32:29,420 Ngunit ipaalam sa akin lamang mabigyan ka ng ideya ng kung ano ang ibig sabihin nito upang gamitin ang isang library. 739 00:32:29,420 --> 00:32:32,250 Kaya muli, JavaScript ay isang napaka-tanyag wika. 740 00:32:32,250 --> 00:32:35,340 CSS, o Cascading Style Sheets, usapan natin ang tungkol kahapon. 741 00:32:35,340 --> 00:32:36,600 Iyon, masyadong, ay nasa lahat ng dako. 742 00:32:36,600 --> 00:32:40,130 Walang sinuman ang gumagawa ng isang web page ngayon nang hindi gumagamit ng HTML at CSS minimally. 743 00:32:40,130 --> 00:32:42,510 Ngunit ito ay hindi laging madali na gawin ang ilang mga bagay. 744 00:32:42,510 --> 00:32:46,281 >> At kaya hayaan mo akong pumunta sa getbootstrap.com. 745 00:32:46,281 --> 00:32:46,780 Whoops. 746 00:32:46,780 --> 00:32:48,280 Iyan ay hindi kung paano namin spell. 747 00:32:48,280 --> 00:32:52,410 Getbootstrap.com, na kung saan ay pagpunta sa humantong sa akin 748 00:32:52,410 --> 00:32:56,140 sa landing page para sa library na ito. 749 00:32:56,140 --> 00:32:59,720 Kaya sila generously tumawag kanilang sarili ng isang framework, na kung saan 750 00:32:59,720 --> 00:33:02,032 ay uri ng uri ng patas, ngunit Gusto ko pa rin tumawag ito 751 00:33:02,032 --> 00:33:03,490 higit pa sa isang library sa isang framework. 752 00:33:03,490 --> 00:33:05,760 Ngunit ito ay lamang hindi tiyak semantika. 753 00:33:05,760 --> 00:33:12,360 Hayaan akong pumunta sa kanilang tab CSS at hayaan mo akong pumunta sa isang bagay tulad nito. 754 00:33:12,360 --> 00:33:15,450 >> Kaya isipin ang kung ano ang aming mga form ay tumingin tulad kahapon sa Cloud9? 755 00:33:15,450 --> 00:33:16,370 Ito ay medyo pangit. 756 00:33:16,370 --> 00:33:17,320 Old buttons paaralan. 757 00:33:17,320 --> 00:33:20,420 Sa tingin ko ang button ay kulay-abo sa pamamagitan ng default. At lahat ng bagay ay talagang 758 00:33:20,420 --> 00:33:22,420 format lubos messily. 759 00:33:22,420 --> 00:33:26,940 Kaya kung nais mo ang iyong web form upang tumingin isang maliit na nicer-- hayaan mo akong mag-zoom in dito. 760 00:33:26,940 --> 00:33:30,050 >> At sa pamamagitan ng nicer ko talagang lamang ibig sabihin very nitpicky aesthetics. 761 00:33:30,050 --> 00:33:35,390 Kaya pansinin kung paano ang email box doon ay isang bilugan hugis-parihaba sulok dito. 762 00:33:35,390 --> 00:33:37,010 Kaya ito ay isang maliit na mas malinis doon. 763 00:33:37,010 --> 00:33:40,770 Pansinin na ang salitang email ay doon hanggang sisimulan ko ang pag-type 764 00:33:40,770 --> 00:33:41,797 at pagkatapos ito napupunta ang layo. 765 00:33:41,797 --> 00:33:43,130 Kaya na ang isang magandang maliit na tampok na ito. 766 00:33:43,130 --> 00:33:46,046 Pansinin kung paano ang mga bagay ay uri ng kumikinang mabuti, na ang ilan sa inyo na ito 767 00:33:46,046 --> 00:33:49,069 makakuha ng libre mula sa iyong browser, ngunit ang ilan sa ito ay din aklatan, 768 00:33:49,069 --> 00:33:51,360 code na ang ibang mga tao ay may nakasulat na magbibigay sa iyo na ito. 769 00:33:51,360 --> 00:33:53,480 >> Isang bagay na tulad nito ay nagbibigay sa akin ang aking password. 770 00:33:53,480 --> 00:33:58,480 Ang pindutan na ito ay isang maliit na sexier kaysa sa default. Very much sa popularidad ngayon. 771 00:33:58,480 --> 00:34:03,570 Ever since iOS 7 o kaya, ang mundo ay may gotten very flat, 772 00:34:03,570 --> 00:34:09,000 samantalang ang mundo bago nagkaroon lots ng drop anino, lots 773 00:34:09,000 --> 00:34:11,040 ng reflections sa mga icon. 774 00:34:11,040 --> 00:34:14,170 Karamihan tulad ng sa mundo damit, mayroong fashion trend na darating at pumunta. 775 00:34:14,170 --> 00:34:16,190 Ngayon lahat ng bagay ay flat sa iyong telepono. 776 00:34:16,190 --> 00:34:19,159 >> Sa katunayan, mga pindutan sa iyong iPhone ay ngayon lamang asul na mga link. 777 00:34:19,159 --> 00:34:21,000 Mayroong hindi madalas kahit circular buttons. 778 00:34:21,000 --> 00:34:22,791 Kaya ito ay lamang ang mga bagay na papasok at lalabas, 779 00:34:22,791 --> 00:34:26,659 ng popularidad, at sa gayon ito ay kung paano maaari mong gumawa ng isang mas modernong naghahanap web form. 780 00:34:26,659 --> 00:34:27,159 Pindutan. 781 00:34:27,159 --> 00:34:29,190 Kaya Bootstrap ay maraming mga pretty buttons. 782 00:34:29,190 --> 00:34:33,639 Kaya kung nais mong asul na mga pindutan, berdeng pindutan, asul, orange, pula. 783 00:34:33,639 --> 00:34:35,840 Bootstrap ginagawang mas madali na gawin ang mga bagay na ito. 784 00:34:35,840 --> 00:34:38,131 Ito ang mga uri ng mga bagay na maaari mong ganap na 785 00:34:38,131 --> 00:34:41,840 nagawa kahapon sa CSS at may HTML, ngunit ito lamang ay isang sakit sa ulo. 786 00:34:41,840 --> 00:34:44,840 At kaya sa halip, kung ano ang Bootstrap gagawin kung gagawin mo ay isang bagay na tulad nito. 787 00:34:44,840 --> 00:34:48,960 >> Kung gusto mo ng button-- lumiliko out na ito ay isang HTML tag hindi namin ginamit yesterday-- 788 00:34:48,960 --> 00:34:53,070 at gusto mo ito sa hitsura tulad nito green button, 789 00:34:53,070 --> 00:34:57,380 mong literal lang bigyan ito ng isang klase, na kung saan ginawa namin makipag-usap tungkol sa kahapon, 790 00:34:57,380 --> 00:34:59,710 ng "btn btn-tagumpay." 791 00:34:59,710 --> 00:35:00,971 >> Bakit ang mga salitang iyon? 792 00:35:00,971 --> 00:35:03,470 Twitter, may-akda ng Bootstrap, ay dumating up sa mga salitang iyon. 793 00:35:03,470 --> 00:35:05,428 maaaring sila ay tinatawag na sa kanila kahit ano ang gusto nila. 794 00:35:05,428 --> 00:35:08,480 Ngunit kung ano ang nakakakuha ngayong ibang tao sa Twitter, sa kasong ito, 795 00:35:08,480 --> 00:35:12,360 ay may korte out kung paano mo gumawa ng isang button tumingin maganda at malinis at berde. 796 00:35:12,360 --> 00:35:15,580 Sila ay naka-package up na pag-andar sa isang CSS klase, na tinatawag na "btn" 797 00:35:15,580 --> 00:35:19,790 at "btn-tagumpay," upang ang anumang sa atin ay maaaring ngayon gamitin ito nang walang kahit na-iisip tungkol sa 798 00:35:19,790 --> 00:35:20,290 ito. 799 00:35:20,290 --> 00:35:22,880 Kaya sila ay lumilipad ang isip ang layo ang pagkaunawa ng isang green button 800 00:35:22,880 --> 00:35:25,320 kaya hindi namin kailangang mag-aalaga ang tungkol sa pagpapatupad ng mga ito sa ating sarili. 801 00:35:25,320 --> 00:35:28,520 maaaring aktwal na kami ay tumutok sa pagpapatupad bagay ng interes sa amin. 802 00:35:28,520 --> 00:35:30,902 >> Kung mag-scroll namin pababa dito. 803 00:35:30,902 --> 00:35:32,110 mga mensahe ng error sa screen. 804 00:35:32,110 --> 00:35:35,440 Minsan gusto mo ng kaunti mensahe upang lumitaw sa itaas ng browser. 805 00:35:35,440 --> 00:35:39,729 Sinuman sa atin ay maaaring gawin ito na may ilang mga pagsisikap, pagkatapos aralin kahapon, 806 00:35:39,729 --> 00:35:40,770 ngunit kung bakit nais mong mag-abala? 807 00:35:40,770 --> 00:35:42,540 Iyan ay tulad ng isang hindi kawili-wili aesthetic detalye. 808 00:35:42,540 --> 00:35:44,248 ni tumayo sa Hayaan balikat ng Bootstrap 809 00:35:44,248 --> 00:35:49,440 at bigyan kami ng mga bagay na tulad nito, kung saan kami literal, upang makakuha ng isang pulang kahon, 810 00:35:49,440 --> 00:35:53,220 na lang ay upang gawin ang isang talata tag sa isang klase of-- sorry. 811 00:35:53,220 --> 00:35:57,307 "Bg-panganib" ay magbibigay sa amin ito mamula-mula kahon sa halip. 812 00:35:57,307 --> 00:35:59,140 Ngayon sabihin pumunta sa mas kawili-wiling mga bagay. 813 00:35:59,140 --> 00:36:02,950 Kung pumunta ako pabalik sa tuktok ng ang pahinang ito at pumunta sa Components, 814 00:36:02,950 --> 00:36:05,380 ngayon ang mundo ay makakakuha ng mas kawili-wiling. 815 00:36:05,380 --> 00:36:08,826 Halimbawa, napaka-pangkaraniwan ay drop down na menu na katulad nito. 816 00:36:08,826 --> 00:36:11,560 Ito ay magiging isang ganap na sakit na ipapatupad. 817 00:36:11,560 --> 00:36:13,610 At ito ay hindi na matagal ang nakalipas na kami programmer 818 00:36:13,610 --> 00:36:16,490 ay magkakaroon upang ipatupad ang mga uri ng mga menu mula sa simula. 819 00:36:16,490 --> 00:36:20,800 >> Ngunit ito ay tulad ng isang pangkaraniwang paradaym na mga aklatan tulad ng Bootstrap 820 00:36:20,800 --> 00:36:25,230 lamang magbibigay sa iyo ng kakayahan upang gumawa ng isang drop down na menu malayo, malayo mas madali. 821 00:36:25,230 --> 00:36:27,850 Walang isang paraan upang gawin ito, ngunit kung basahin ko ang mga babasahin 822 00:36:27,850 --> 00:36:32,100 Gusto ko makita na, OK, dapat kong gamitin ito HTML kung gusto ko ng drop down menu 823 00:36:32,100 --> 00:36:34,030 na behaves tulad na. 824 00:36:34,030 --> 00:36:36,690 >> Katulad nito, sabihin pumunta sa button drop down. 825 00:36:36,690 --> 00:36:38,470 Kaya ito ay kahit na may interes. 826 00:36:38,470 --> 00:36:41,800 Kung nais ko ito upang magmukhang isang pindutan ngunit na maliit na tatsulok ay nangangahulugan 827 00:36:41,800 --> 00:36:44,080 ang dapat kong i-click ito at makakuha ng menu na ito, ito 828 00:36:44,080 --> 00:36:45,760 ay ang paggamit ng isang wika na tinatawag na JavaScript. 829 00:36:45,760 --> 00:36:47,470 At maaari namin ang lahat ng ipatupad na ito sa JavaScript. 830 00:36:47,470 --> 00:36:49,720 Ngunit muli, ito ay isang wheel hindi mo nais upang muling baguhin. 831 00:36:49,720 --> 00:36:52,700 Gusto mo lamang upang dalhin ito off shelf library para sa. 832 00:36:52,700 --> 00:36:58,145 >> Tayo'y pumunta sa isang bagay tulad progreso bar. 833 00:36:58,145 --> 00:36:59,770 Kaya ang isang bagay tulad ng ito ay uri ng cool. 834 00:36:59,770 --> 00:37:02,910 Kung kailanman na iyong nakita ang isang progress bar gumagalaw sa buong screen, 835 00:37:02,910 --> 00:37:06,380 pagpapatupad na madalas ay lamang ng isang icon spinning. 836 00:37:06,380 --> 00:37:10,200 Sa katunayan, lamang bilang isang bukod, sabihin akong pumunta sa Ajax-- ano ito? 837 00:37:10,200 --> 00:37:10,710 Ajax impormasyon? 838 00:37:10,710 --> 00:37:11,720 Whoops. 839 00:37:11,720 --> 00:37:13,035 Ajaxinfo. 840 00:37:13,035 --> 00:37:14,800 Hayaan akong tandaan ang address. 841 00:37:14,800 --> 00:37:15,820 Mayroon kaming pumunta. 842 00:37:15,820 --> 00:37:19,850 >> Kaya kung sakaling mo na nakita ang ilang mga animation habang ang pahina ay naglo-load, o pag-iisip, 843 00:37:19,850 --> 00:37:25,410 o pag-save, o paglikha ng isang bagay, ikaw maaaring makita tulad ng mga animation ng mga ito. 844 00:37:25,410 --> 00:37:28,800 Kaya sabihin tumingin sa isang bagay tulad ng isang ito dito, 845 00:37:28,800 --> 00:37:33,550 at sabihin pumili ng isang foreground kulay ng green, na nararamdaman uri ng friendly. 846 00:37:33,550 --> 00:37:34,545 Maaari ko bang i-click ito? 847 00:37:34,545 --> 00:37:35,500 Halika isa. 848 00:37:35,500 --> 00:37:36,000 OK. 849 00:37:36,000 --> 00:37:38,930 Susubukan naming pumunta lamang sa pula dahil na kung ano ang kami ay nakakakuha. 850 00:37:38,930 --> 00:37:40,250 Kaya dito kami ay may ito. 851 00:37:40,250 --> 00:37:43,940 >> Kaya kung kailanman na iyong nakita ito sa isang screen, kung saan biglang paglitaw nito at pagkatapos ay 852 00:37:43,940 --> 00:37:47,550 biglang mawala, kung ano ang ito na pagpapatupad nito? 853 00:37:47,550 --> 00:37:48,970 Well, ito ay lamang ng isang GIF. 854 00:37:48,970 --> 00:37:52,850 G-I-F. At ito ay isang animated file, na kung saan ay nangangahulugan lamang 855 00:37:52,850 --> 00:37:54,327 ito ay tulad ng isang lumang paaralan comic book. 856 00:37:54,327 --> 00:37:57,160 Mayroon lamang ng grupo ng mga iba't ibang frame na pagpunta [Stuttering] 857 00:37:57,160 --> 00:37:58,085 at lamang paulit-ulit. 858 00:37:58,085 --> 00:38:00,090 At ito ay paglikha ng ilusyon ng paggalaw. 859 00:38:00,090 --> 00:38:03,070 >> Ito sa lalong madaling isang pahina ay tapos na naglo-load o paggawa ng isang bagay, 860 00:38:03,070 --> 00:38:04,610 ano ang ginagawa ng isang programmer gawin? 861 00:38:04,610 --> 00:38:07,500 Well, siya ay lamang hides ang larawang ito. 862 00:38:07,500 --> 00:38:11,536 Kaya ang lahat ng progress bar ay ay uri ng gusto ng isang pelikula na iyong pinapanood. 863 00:38:11,536 --> 00:38:14,660 Ikaw uri ng malilimutin sa ang katunayan na ito ay hindi tunay na paggawa ng anumang bagay, 864 00:38:14,660 --> 00:38:15,940 lamang ito ay gumagalaw. 865 00:38:15,940 --> 00:38:19,150 >> At pagkatapos, kapag ito ay tapos progressing, sila lang itago ito o i-off ito. 866 00:38:19,150 --> 00:38:21,115 At iyon ang lahat ng mga magic na nangyayari sa doon. 867 00:38:21,115 --> 00:38:22,770 Bootstrap ay nagbibigay sa iyo isang bagay ng isang maliit na may interes, 868 00:38:22,770 --> 00:38:25,030 kung saan maaari mong aktwal na makita ang isang porsyento bilang ito napupunta, 869 00:38:25,030 --> 00:38:27,840 ngunit ito rin ay lamang ang uri ng isang simpleng animation. 870 00:38:27,840 --> 00:38:32,250 >> Tingnan natin ang ilang final Hayaan mas kumplikadong mga halimbawa dito. 871 00:38:32,250 --> 00:38:35,526 Isang bagay na tulad ng isang modal. 872 00:38:35,526 --> 00:38:36,900 Ba kahit sino malaman kung ano ang isang modal ay? 873 00:38:36,900 --> 00:38:39,880 874 00:38:39,880 --> 00:38:42,550 A modal window ay karaniwang isa na ay dapat 875 00:38:42,550 --> 00:38:46,880 upang tanggapin ang kontrol ng foreground at pigilan ka mula sa paggawa ng anumang bagay sino pa ang paririto. 876 00:38:46,880 --> 00:38:50,290 Ito uri ng mga pwersang ng gumagamit pansin sa gitna ng screen, 877 00:38:50,290 --> 00:38:52,290 pagla-lock ang mga ito out, kadalasan, ng lahat ng bagay sino pa ang paririto. 878 00:38:52,290 --> 00:38:55,830 >> Kaya kung ako ilunsad ito demo, ang screen ay karaniwang maging kulay-abo. 879 00:38:55,830 --> 00:38:57,060 Well, paano namin mapapakinabangan ito grey? 880 00:38:57,060 --> 00:38:59,080 Well, kami ay marahil lamang nagbago ang kulay ng background 881 00:38:59,080 --> 00:39:01,060 tulad ng ginawa namin kahapon o isang bagay tulad na. 882 00:39:01,060 --> 00:39:03,490 Siguro ito ay isang overlay na semi-transparent. 883 00:39:03,490 --> 00:39:06,320 At ngayon mapansin na maaari mong gawin magarbong bagay tulad nito. 884 00:39:06,320 --> 00:39:09,930 Kaya kung sakaling mag-click sa isang pindutan at nais ng isang maliit na pop out upang lumitaw, 885 00:39:09,930 --> 00:39:10,710 maaari mong gawin na. 886 00:39:10,710 --> 00:39:12,340 At kaya na nagmamalasakit tungkol all-- yeah? 887 00:39:12,340 --> 00:39:15,791 >> Madla: Kaya sa Bootstrap, makihalubilo inkorporada, 888 00:39:15,791 --> 00:39:21,002 ay itong simple hangga't tulad ng kahapon ginawa namin ang page CSS estilo? 889 00:39:21,002 --> 00:39:21,960 David J. MALAN: Sa katunayan. 890 00:39:21,960 --> 00:39:22,835 Talagang mahusay na tanong. 891 00:39:22,835 --> 00:39:24,480 Hayaan akong pumunta sa Pagsisimula. 892 00:39:24,480 --> 00:39:26,090 At oo. 893 00:39:26,090 --> 00:39:30,920 Ang kailangan mo lang gawin upang paggamit Bootstrap ay mahalagang kopyahin 894 00:39:30,920 --> 00:39:35,910 at i-paste ang tatlong mahaba ang linya ng code sa itaas ng iyong sariling web page-- 895 00:39:35,910 --> 00:39:38,892 sa head ng iyong page-- at ikaw ay up at tumatakbo. 896 00:39:38,892 --> 00:39:41,850 At mayroong iba't ibang mga paraan ng paggawa ng ito, ngunit ito ay ang pinakasimpleng. 897 00:39:41,850 --> 00:39:45,190 >> Kaya kung ano ang kapaki-pakinabang tungkol sa lahat ng ito? 898 00:39:45,190 --> 00:39:47,524 Well, kung ikaw ay hindi kaya magkano ang implementer ng isang website 899 00:39:47,524 --> 00:39:50,106 ngunit ikaw ay trying sa disenyo nito, o gusto mong magbigay ng isang tao 900 00:39:50,106 --> 00:39:53,220 may wire frame diagram, kaya na magsalita, o renditions lamang artist ng kung ano ang 901 00:39:53,220 --> 00:39:56,080 gusto mong gawin, I, sa ito araw, ay madalas pumunta sa isang site 902 00:39:56,080 --> 00:39:58,660 tulad Bootstrap, kung saan kung ako nais na ipatupad something-- 903 00:39:58,660 --> 00:40:02,290 tulad kamakailan sa campus gusto naming ipatupad 904 00:40:02,290 --> 00:40:06,170 isang web based tool para sa pag-navigate kurso catalog ni Harvard, 905 00:40:06,170 --> 00:40:08,770 paggawa ng mas madali para sa mga estudyante mag-browse sa mga kurso 906 00:40:08,770 --> 00:40:10,930 at magdagdag ng mga kurso sa shopping listahan, kaya na magsalita, 907 00:40:10,930 --> 00:40:13,070 sa uri ng magpasya kung ano ang kanilang nais na kumuha. 908 00:40:13,070 --> 00:40:16,252 >> Ako ay sinusubukan upang isipin para aking sarili, kung ano ang sangkap ng gagawin 909 00:40:16,252 --> 00:40:17,460 gusto naming gamitin upang bumuo ng ito? 910 00:40:17,460 --> 00:40:19,050 Ano ang gusto ang user interface ay magkagaya? 911 00:40:19,050 --> 00:40:22,800 At lamang ng pagtingin sa pamamagitan ng isang site tulad ng ito o iba pang mga naturang mga site library, 912 00:40:22,800 --> 00:40:26,560 maaari kang makakuha ng inspirasyon, dahil wow, Maaari ko bang gamitin ang widget na ito, at ito widget, 913 00:40:26,560 --> 00:40:27,330 at ito widget. 914 00:40:27,330 --> 00:40:29,080 At pagkatapos ay talagang kung ano ang ang programmer ay nagsisimula 915 00:40:29,080 --> 00:40:32,800 na gawin, lalo na sa mga araw na ito sa ganitong mas modernong mundo ng web programming, 916 00:40:32,800 --> 00:40:35,827 ay programming ay increasingly tungkol kable bagay nang magkakasama. 917 00:40:35,827 --> 00:40:38,910 Pagsunud-sunurin ng pagkuha ito off ang shelf, ito off ang shelf, ito off ang shelf, 918 00:40:38,910 --> 00:40:41,954 at ikaw na ang matalino isa upang ikonekta ang lahat ng mga tuldok, 919 00:40:41,954 --> 00:40:45,120 ngunit sa huli bumuo ng isang bagay sa pamamagitan ng muli nakatayo sa mga balikat ng iba, 920 00:40:45,120 --> 00:40:49,370 nang sa gayon ay hindi mo gastusin sa isang buwan pagpapatupad ng isang bobo drop down menu, 921 00:40:49,370 --> 00:40:52,080 kung saan ay talagang mahirap na gawin kung gusto mo ito upang gumana sa Chrome, 922 00:40:52,080 --> 00:40:55,220 at IE, at Firefox, at anumang bilang ng iba pang mga browser. 923 00:40:55,220 --> 00:40:59,060 Ito ay kung bakit doon ay ito upang maging mayayaman komersyal at open source software 924 00:40:59,060 --> 00:41:01,220 industriya pati na rin. 925 00:41:01,220 --> 00:41:06,810 >> Madla: Kaya ang Bootstrap makakuha ng update at mayroon kang upang pagkatapos ay i-update ang iyong mga link? 926 00:41:06,810 --> 00:41:07,820 >> David J. MALAN: Ito ay. 927 00:41:07,820 --> 00:41:09,090 Well, yes, ito ay hindi. 928 00:41:09,090 --> 00:41:12,540 Bootstrap ay kasalukuyang sa bersyon 3.3.6. 929 00:41:12,540 --> 00:41:16,720 At sa pangkalahatan kung ano ang iyong do-- ito ay talagang nagkakahalaga ng pagbanggit. 930 00:41:16,720 --> 00:41:19,200 May kung ano ang pangkalahatan ay kilala bilang isang semantiko versioning 931 00:41:19,200 --> 00:41:20,160 sistema sa mundo. 932 00:41:20,160 --> 00:41:21,320 Hindi lahat ng tao ay ito. 933 00:41:21,320 --> 00:41:26,410 >> Ngunit kung nakita mo mga numero ng bersyon na ng form x.y.z-- 934 00:41:26,410 --> 00:41:30,240 kaya halimbawa, ang unang bersyon ng isang programa ay maaaring maging 1.0.0. 935 00:41:30,240 --> 00:41:34,970 O kung ito ay napaka, napaka-beta, o kahit alpha status, na nangangahulugan na paggamit 936 00:41:34,970 --> 00:41:37,620 sa iyong sariling peligro, ito ay hindi talagang handa na para sa prime time, 937 00:41:37,620 --> 00:41:42,080 maaari mong kahit simulan 0.0.1 o ilang tulad pagtatalaga. 938 00:41:42,080 --> 00:41:47,260 Ngunit kung software ay nagsisimula sa bersiyon 1.0, o equivalently 1.0.0, 939 00:41:47,260 --> 00:41:50,530 kadalasan, kung ano ang karaniwang mga days-- bagaman hindi omnipresent-- ay 940 00:41:50,530 --> 00:41:53,520 kung ang isang kumpanya o ng isang indibidwal na mga pag-aayos programmer 941 00:41:53,520 --> 00:41:56,140 ilang mga bug sa ilang mga piraso ng software na talagang 942 00:41:56,140 --> 00:42:01,620 ay isang bug, na ang pagwawasto ay hindi dapat epekto sa iyo sa all-- ito ay hindi nagbabago 943 00:42:01,620 --> 00:42:03,940 pag-uugali ng program, ito lamang Inaayos ng isang bagay 944 00:42:03,940 --> 00:42:06,580 na ay hindi gumagana properly-- gagawin mo ay karaniwang 945 00:42:06,580 --> 00:42:08,890 i-update ang z halaga doon. 946 00:42:08,890 --> 00:42:12,900 Na nangangahulugan ng isang tao tulad Kareem maaaring lamang pumunta sa kanyang website, 947 00:42:12,900 --> 00:42:19,470 walang taros baguhin ang numero ng bersyon mula 1.0.0 sa 1.0.1, i-save ito, ipadala ito, 948 00:42:19,470 --> 00:42:21,880 at sa teorya, hindi kailangang alala na siya ay lamang nasira 949 00:42:21,880 --> 00:42:24,430 kanyang website dahil sa ilang mga kakulangan ng pag-andar, 950 00:42:24,430 --> 00:42:25,870 dahil ang isang bagay sino pa ang paririto sinira. 951 00:42:25,870 --> 00:42:28,740 >> Samantala, kung ako ang programmer o ilang kumpanya 952 00:42:28,740 --> 00:42:35,500 ay upang gumawa ng ilang mga makabuluhang pagbabago na nagdadagdag functionality, 953 00:42:35,500 --> 00:42:40,320 maaaring i-update ko sa amin upang 1.1.0 dahil ako talaga 954 00:42:40,320 --> 00:42:42,200 pagbabago ng pag-uugali ng library. 955 00:42:42,200 --> 00:42:44,470 Ako nagbibigay sa iyo maybe more functionality. 956 00:42:44,470 --> 00:42:48,490 Sa wakas, kung ako ay upang aktwal na panimula baguhin ang software upang 957 00:42:48,490 --> 00:42:54,380 magkano na ito ay break maraming gumagamit ng mga website o application, 958 00:42:54,380 --> 00:42:59,550 pagkatapos ay ako nagpapasalamat, sa modelong ito, upang i-upgrade ang mga pangunahing numero ng bersyon masyadong, 959 00:42:59,550 --> 00:43:01,059 na kung saan ay isang paglabag sa pagbabago. 960 00:43:01,059 --> 00:43:03,725 Sa ibang salita, maaari ba akong magkaroon ipinagpatuloy suporta para sa mga drop 961 00:43:03,725 --> 00:43:04,350 down menu. 962 00:43:04,350 --> 00:43:07,790 Kaya kung mag-upgrade sa 2.0, half iyong website ay maaaring huminto sa paggana. 963 00:43:07,790 --> 00:43:10,950 At ito ay uri ng isang signal sa komunidad bilang sa kung ano ang 964 00:43:10,950 --> 00:43:13,223 kasangkot sa paggawa ng isang pag-upgrade. 965 00:43:13,223 --> 00:43:16,710 966 00:43:16,710 --> 00:43:18,020 Ang isang mahusay na pagkakataon upang taasan. 967 00:43:18,020 --> 00:43:18,718 Iba pang mga tanong? 968 00:43:18,718 --> 00:43:21,761 969 00:43:21,761 --> 00:43:22,260 Lahat tama. 970 00:43:22,260 --> 00:43:26,945 Well ipaalam sa tumagal ng isang pagtingin sa isang huling topic sa segment na ito ng programming 971 00:43:26,945 --> 00:43:30,640 ng teknolohiya stack, namely na may kaugnayan sa mobile. 972 00:43:30,640 --> 00:43:36,232 >> Kaya sa mundo ng mga cell phone ngayon mo have-- at iPad, at ibabaw, 973 00:43:36,232 --> 00:43:37,940 at lahat ng mga uri ng devices-- mayroon kang 974 00:43:37,940 --> 00:43:40,950 isang pulutong ng mga pagpipilian kapag ito ay dumating sa pagpapatupad 975 00:43:40,950 --> 00:43:47,270 ang isang application o isang website para sa mobile device ng iyong customer. 976 00:43:47,270 --> 00:43:51,570 Kaya lang sa estado ang mga halata, marahil mga araw na ito, 977 00:43:51,570 --> 00:43:54,960 ano ang mga platform upang bumuo ng para sa mga mobile na space? 978 00:43:54,960 --> 00:43:59,650 Ano aparato ay maaaring gusto mong suportahan sa iyong app o website? 979 00:43:59,650 --> 00:44:00,317 >> Madla: Apple. 980 00:44:00,317 --> 00:44:01,108 David J. MALAN: OK. 981 00:44:01,108 --> 00:44:01,820 Kaya mga aparatong Apple. 982 00:44:01,820 --> 00:44:06,740 Kaya na nangangahulugan iPhone, at na nangangahulugan iPad, at marahil kahit na iPod. 983 00:44:06,740 --> 00:44:07,627 Ano pa? 984 00:44:07,627 --> 00:44:11,006 985 00:44:11,006 --> 00:44:11,505 Olivier? 986 00:44:11,505 --> 00:44:11,970 >> Madla: Android. 987 00:44:11,970 --> 00:44:13,111 >> David J. MALAN: Android. 988 00:44:13,111 --> 00:44:13,610 OK. 989 00:44:13,610 --> 00:44:17,335 Kaya Android phone, Android tablets, Android market 990 00:44:17,335 --> 00:44:21,240 ay kahit messier because-- at kahit Apple ay nagiging makalat. 991 00:44:21,240 --> 00:44:23,960 Sapagkat nang matagal nang panahon iPhone ay isang tiyak na laki, 992 00:44:23,960 --> 00:44:26,560 at iPad ay isang tiyak na laki, at iPod ay isang tiyak na laki, ngayon 993 00:44:26,560 --> 00:44:33,420 kami ay may iPad Minis, at ang manipis na Oo, ang iPhone 6 Plus at 6. 994 00:44:33,420 --> 00:44:34,407 Ito ay nagiging isang gulo. 995 00:44:34,407 --> 00:44:35,740 Ito ay nagiging ang Android mundo. 996 00:44:35,740 --> 00:44:39,030 >> At sinasabi ko sa uri ng rolling ang aking mga mata dahil mula sa isang nag-develop 997 00:44:39,030 --> 00:44:41,680 pananaw, ito ay isang sakit sa ulo kapag 998 00:44:41,680 --> 00:44:45,686 hindi mo na kailangang Steve Trabaho ' pangitain ng absolute control 999 00:44:45,686 --> 00:44:47,060 sa ibabaw ng lahat ng mga detalye. 1000 00:44:47,060 --> 00:44:49,726 Apple ay pa rin dahil ang mga ito ang mga gusali ng hardware. 1001 00:44:49,726 --> 00:44:52,690 Ngunit ito ay isang magandang bagay, kung Ako ay isang software developer, 1002 00:44:52,690 --> 00:44:54,520 malaman lamang na ang aking iPhone ay palaging pagpunta 1003 00:44:54,520 --> 00:44:56,850 upang maging ito malaki dahil ay nangangahulugan na ako ay laging alam 1004 00:44:56,850 --> 00:44:58,847 kung magkano ang screen real estate ng aking tinatangkilik. 1005 00:44:58,847 --> 00:45:01,180 Kaya kung nais ko upang ilagay ang isang icon sa tuktok na kaliwang sulok, 1006 00:45:01,180 --> 00:45:04,530 ito ay pagpunta sa maging sa ang eksaktong parehong ilagay sa device bawat solong customer. 1007 00:45:04,530 --> 00:45:07,140 >> Ngunit sa mundo ng iPhone 6s at iPhone 6 Pluses 1008 00:45:07,140 --> 00:45:10,570 at sa mundo ng Android phone, ito ay ang lahat sa ibabaw ng mapa. 1009 00:45:10,570 --> 00:45:13,580 At kaya ito ay ginagawang mas mahirap na programa bagay, lalo na user interface, 1010 00:45:13,580 --> 00:45:18,270 dahil ngayon ikaw ay may upang simulan ang pag-aayos ng ang iyong user interface relatibong, hindi 1011 00:45:18,270 --> 00:45:19,730 walang pasubali. 1012 00:45:19,730 --> 00:45:23,524 At sa parehong ay totoo sa mga browser, at desktop, at laptops para sa taon 1013 00:45:23,524 --> 00:45:25,690 dahil ikaw, siyempre, ay may iba't ibang laki ng screen. 1014 00:45:25,690 --> 00:45:26,189 >> Ano pa? 1015 00:45:26,189 --> 00:45:30,170 Maaari mong magkaroon ng ibabaw, tulad ng mula sa Microsoft. 1016 00:45:30,170 --> 00:45:31,270 Maaari mong have-- 1017 00:45:31,270 --> 00:45:32,270 Madla: Windows phone. 1018 00:45:32,270 --> 00:45:32,816 David J. MALAN: Ano iyon? 1019 00:45:32,816 --> 00:45:33,570 Madla: Windows phone. 1020 00:45:33,570 --> 00:45:34,403 David J. MALAN: Oo. 1021 00:45:34,403 --> 00:45:37,570 So windows phone ay maaari pa ring matagpuan. 1022 00:45:37,570 --> 00:45:41,840 Uri ng uri ng BlackBerrys, ngunit panatilihin ang mga ito sinusubukan. 1023 00:45:41,840 --> 00:45:43,900 At pagkatapos ay bunches ng iba pang mga device. 1024 00:45:43,900 --> 00:45:48,020 Kaya para sa pinaka-bahagi, sabihin sabihin ito ay ang mga 1025 00:45:48,020 --> 00:45:49,520 sa pag-aalaga tungkol sa sandaling ito. 1026 00:45:49,520 --> 00:45:51,890 Totoong ang Apple bagay-bagay, tiyak na ang Android bagay-bagay, 1027 00:45:51,890 --> 00:45:55,640 at sa gitna ng Windows, tulad ibabaw tablets mukhang kaakit-akit sa pretty mabuti. 1028 00:45:55,640 --> 00:45:58,030 >> At kaya kabilang sa mga aparato, kung nais mong i-roll out, 1029 00:45:58,030 --> 00:46:02,677 sabihin nating, isang mobile presence para sa iyong kumpanya, ano ang mga uri ng mga desisyon na disenyo 1030 00:46:02,677 --> 00:46:03,510 ang mayroon kayo upang gawin? 1031 00:46:03,510 --> 00:46:06,350 Well, kami ay sinabi sa mundo Apple, 1032 00:46:06,350 --> 00:46:08,790 diyan ay hindi bababa sa dalawang mga wika na karaniwang ginagamit. 1033 00:46:08,790 --> 00:46:10,260 Ang isa ay tinatawag na kung ano? 1034 00:46:10,260 --> 00:46:11,260 >> Madla: Layunin-C. 1035 00:46:11,260 --> 00:46:11,560 >> David J. MALAN: Oo. 1036 00:46:11,560 --> 00:46:13,600 Kaya Layunin-C, na kung saan ay ang mga mas lumang isa. 1037 00:46:13,600 --> 00:46:17,720 Ito ay din ang wika na ang maraming mga Mac aplikasyon ay nakasulat pa rin sa. 1038 00:46:17,720 --> 00:46:18,964 Pagkatapos ay ang iba pang mga mas bagong isa ay? 1039 00:46:18,964 --> 00:46:19,630 Madla: Swift. 1040 00:46:19,630 --> 00:46:20,590 David J. MALAN: Swift. 1041 00:46:20,590 --> 00:46:23,900 At ang mga ito ay ang uri ng dalawang malaman upang mapabilib folks. 1042 00:46:23,900 --> 00:46:28,238 Pagkatapos sa Android mundo, kung ano ang wika ay Android gamitin? 1043 00:46:28,238 --> 00:46:30,618 >> Madla: C #? 1044 00:46:30,618 --> 00:46:31,570 >> Madla: Java. 1045 00:46:31,570 --> 00:46:34,230 >> David J. MALAN: Java ay ang wika ng "du jour." 1046 00:46:34,230 --> 00:46:37,950 Sa mundo Windows, sigurado, kami sabihin C # sa kasong iyon. 1047 00:46:37,950 --> 00:46:40,590 Kaya na ito ay uri ng nakakainis, dahil kung ano ang 1048 00:46:40,590 --> 00:46:43,070 ang takeaway para sa isang negosyo may-ari o isang tao na lamang 1049 00:46:43,070 --> 00:46:44,570 nagnanais na igulong ang isang mobile harapan? 1050 00:46:44,570 --> 00:46:45,220 Like, mapapahamak ang mga ito? 1051 00:46:45,220 --> 00:46:48,590 Like, kung gusto kong suportahan isang medyo malawak na user base, 1052 00:46:48,590 --> 00:46:52,180 Kailangan ko bang magsulat, ito ay tila, tatlong mga hiwalay na mga application. 1053 00:46:52,180 --> 00:46:55,630 One sa isa sa mga wikang ito, isa sa Java, isa sa C #. 1054 00:46:55,630 --> 00:46:59,620 At kahit na gusto ko ang mga pag-andar upang maging magkapareho, ito ay hindi mahalaga. 1055 00:46:59,620 --> 00:47:02,940 Ko pa rin na kailangan upang gamitin ang iba't ibang wika dahil Apple, at Microsoft, 1056 00:47:02,940 --> 00:47:06,084 at Google ang lahat ng suporta iba't ibang mga kapaligiran. 1057 00:47:06,084 --> 00:47:07,750 At ito ay isang hamon para sa taon. 1058 00:47:07,750 --> 00:47:10,100 Bumalik sa araw, kapag mga tao na ginamit upang bumili ng software 1059 00:47:10,100 --> 00:47:12,230 sa isang tindahan ng computer sa pag-urong kahon balot, 1060 00:47:12,230 --> 00:47:14,470 nais mong alinman sa may sa maabot para sa Mac shelf, 1061 00:47:14,470 --> 00:47:19,040 o for-- marahil ito napakaliit na Mac shelf-- o sa mas malawak Windows shelf 1062 00:47:19,040 --> 00:47:19,980 at bumili ng ilang software. 1063 00:47:19,980 --> 00:47:22,813 At napakadalas, nagkaroon hindi kahit anumang bagay para sa iyo sa Mac shelf. 1064 00:47:22,813 --> 00:47:23,430 Bakit? 1065 00:47:23,430 --> 00:47:26,900 Well, ang mga kompanya ay nagpasya kung 90% ng mundo, 95% ng mundo 1066 00:47:26,900 --> 00:47:31,180 ay may PCs, kung bakit abala kahit pagpapatupad ng mga bagay sa Mac OS? 1067 00:47:31,180 --> 00:47:34,370 >> Bilang isang aside-- isang kabuuang digression-- bakit ito 1068 00:47:34,370 --> 00:47:40,960 na Mac tila kaya tinatablan sa mga virus, at bulate, at mga banta sa seguridad? 1069 00:47:40,960 --> 00:47:44,040 Ay Apple mas mahusay sa taong ito? 1070 00:47:44,040 --> 00:47:45,934 Pagbubutihin ang Pag-iingat computer secure? 1071 00:47:45,934 --> 00:47:47,750 >> Madla: Mas maliit madla? 1072 00:47:47,750 --> 00:47:50,720 >> David J. MALAN: Iyan ay marahil ang mas malaking bit dito. 1073 00:47:50,720 --> 00:47:54,740 Kaya ang maraming mga gumagamit ng Mac ay may long inaangkin, oh, gumamit ng isang Mac, 1074 00:47:54,740 --> 00:47:57,630 mapapasok mo na immune sa mga virus, at worm, at ang lahat ng mga bagay na ito 1075 00:47:57,630 --> 00:47:59,180 na matagal plagued PCs. 1076 00:47:59,180 --> 00:48:02,050 Iyon ay maaaring maging dahil Apple ay may mas mahusay na programmer 1077 00:48:02,050 --> 00:48:05,250 at sila sumulat ng mas mahusay na software, o ang operating system ay mas mahusay na dinisenyo. 1078 00:48:05,250 --> 00:48:06,870 Siguro, ngunit malamang na hindi. 1079 00:48:06,870 --> 00:48:10,840 >> Ito ay malamang na kapag ikaw ay isang 12-taon gulang na, o isang 30 bagay 1080 00:48:10,840 --> 00:48:13,510 uri ng pag-upo sa bahay pagsulat malisyosong software upang sakupin 1081 00:48:13,510 --> 00:48:17,480 mundo, ikaw ay pagpunta upang pumunta pagkatapos mas malaking target na madla. 1082 00:48:17,480 --> 00:48:20,590 Ang 95% ng mundo na maaaring na nagpapatakbo ng Windows o ilang 1083 00:48:20,590 --> 00:48:21,740 variants niyaon. 1084 00:48:21,740 --> 00:48:23,800 Kaya doon ay isang maliit na bit sa magkabilang panig. 1085 00:48:23,800 --> 00:48:25,710 Ngunit sa kanilang mga credit, Apple, sa aking kaalaman, 1086 00:48:25,710 --> 00:48:28,270 Matagal nang hindi na talagang touted kanilang sarili bilang mas ligtas, 1087 00:48:28,270 --> 00:48:32,110 dahil lamang ka na nag-aanyaya sa drama kung gumawa ka na claim, Gusto ko sa tingin. 1088 00:48:32,110 --> 00:48:32,610 >> Lahat tama. 1089 00:48:32,610 --> 00:48:36,490 Nang walang pagkuha ng masyadong malayo down na, paano namin malutas ito? 1090 00:48:36,490 --> 00:48:39,670 Mayroon ba kayong upang bumili o ang mayroon kayo upang magbayad ng tatlong iba't ibang mga tao na bumuo ng 1091 00:48:39,670 --> 00:48:41,540 iyong apps? 1092 00:48:41,540 --> 00:48:42,870 Huwag kang pumili ng isa sa isa? 1093 00:48:42,870 --> 00:48:45,460 Ano ang dapat gabayan ang iyong iisip dito sa tingin ninyo? 1094 00:48:45,460 --> 00:48:47,960 1095 00:48:47,960 --> 00:48:48,460 Kareem? 1096 00:48:48,460 --> 00:48:51,001 1097 00:48:51,001 --> 00:48:51,500 Nope. 1098 00:48:51,500 --> 00:48:54,190 Ibang tao. 1099 00:48:54,190 --> 00:48:56,885 >> Madla: Just nanggaling sa mga hardware. 1100 00:48:56,885 --> 00:48:58,510 David J. MALAN: Sumama ka sa mga hardware? 1101 00:48:58,510 --> 00:48:59,533 Anong ibig mong sabihin? 1102 00:48:59,533 --> 00:49:01,282 >> Madla: Para sa kapaligiran. [Hindi marinig] 1103 00:49:01,282 --> 00:49:04,867 1104 00:49:04,867 --> 00:49:06,200 David J. MALAN: Kaya na ay totoo. 1105 00:49:06,200 --> 00:49:09,280 Ngunit ang iyong mga customer, samantala, ay maaaring magkaroon ng mga iPhone, 1106 00:49:09,280 --> 00:49:13,530 sila rin ay magkaroon sa mga teleponong Android, ang mga ito ay maaaring magkaroon ng mga tablet na ginawa ng Microsoft. 1107 00:49:13,530 --> 00:49:19,040 Kaya paano mo magkaroon ng isang mobile na diskarte para sa lahat ng mga iba't ibang mga user? 1108 00:49:19,040 --> 00:49:23,320 Gusto Ito tila na kung ito ay nagkakahalaga, sabihin nating $ 1,000 sa gumawa na ng iPhone 1109 00:49:23,320 --> 00:49:25,940 application, ito ay pagpunta sa gastos sa iyo $ 2,000 sa gumawa 1110 00:49:25,940 --> 00:49:29,250 isang iPhone application at isang Android application, o $ 3,000 1111 00:49:29,250 --> 00:49:31,407 din sumusuporta sa Windows device pati na rin. 1112 00:49:31,407 --> 00:49:33,990 Iyon ay marahil lubos na isang paghalaga nang maliit, at ito ay hindi maaaring kahit na 1113 00:49:33,990 --> 00:49:36,050 maging isang linear relasyon tulad na. 1114 00:49:36,050 --> 00:49:41,065 >> Madla: Kung gusto mong magkaroon ng isang app o hindi, maaari kang magkaroon ng madaling tablan website. 1115 00:49:41,065 --> 00:49:41,940 David J. MALAN: Good. 1116 00:49:41,940 --> 00:49:46,255 Madla: O maaari kang magkaroon ng isang native na app. 1117 00:49:46,255 --> 00:49:47,130 David J. MALAN: Oo. 1118 00:49:47,130 --> 00:49:50,260 Kaya sa lahat ng konteksto ito dito, kami ay pakikipag-usap tungkol sa kung ano 1119 00:49:50,260 --> 00:49:53,190 tao ay tumawag native application. 1120 00:49:53,190 --> 00:49:58,040 Iyon ay mga aplikasyon na nakasulat sa katutubong wika ng device na iyon. 1121 00:49:58,040 --> 00:50:02,190 Kaya katutubong Layunin-C o Swift code, o sa Java, o sa C #. 1122 00:50:02,190 --> 00:50:06,900 Aling ay nangangahulugan na kapag nag-download ka, sabihin sabihin Snapchat, isang popular na application, 1123 00:50:06,900 --> 00:50:10,060 o kapag nag-download ka Facebook para sa isang telepono, 1124 00:50:10,060 --> 00:50:13,270 ikaw ay pag-download ng alinman sa bersyon na nakasulat para sa iyong iPhone, 1125 00:50:13,270 --> 00:50:16,830 o nakasulat para sa iyong Android phone, o nakasulat para sa iyong ibabaw. 1126 00:50:16,830 --> 00:50:18,500 >> Ngunit may ay isang alternatibo. 1127 00:50:18,500 --> 00:50:26,020 Bilang Olivier ay alluding sa, maaari mong aktwal na gamitin ang mga HTML 5 1128 00:50:26,020 --> 00:50:33,440 sa halip, gamit ang kung ano ang tinatawag na isang web application, kung saan mo lamang 1129 00:50:33,440 --> 00:50:35,940 ipatupad ang iyong mobile presence at anumang pag-andar. 1130 00:50:35,940 --> 00:50:37,030 Ano ang ibig sabihin ko sa pamamagitan ng mobile presence? 1131 00:50:37,030 --> 00:50:39,800 Tulad ng iyong website na may ang iyong impormasyon ng contact, isang listahan ng lahat 1132 00:50:39,800 --> 00:50:43,049 iyong mga produkto, marahil ito ay may isang shopping cart, marahil nagbebenta ka ng mga bagay-bagay sa pamamagitan nito. 1133 00:50:43,049 --> 00:50:46,850 Anuman ang iyong mga application ay, ikaw ipatupad ito, hindi sa Layunin-C, 1134 00:50:46,850 --> 00:50:51,200 o Swift, o Java, o C #, ngunit sa HTML 5, na kung saan ay ang wika namin hinihintay 1135 00:50:51,200 --> 00:50:55,470 sa kahapon, sa JavaScript at CSS. 1136 00:50:55,470 --> 00:50:58,700 >> At kung ano ang magaling tungkol sa mga tatlong ay na upang patakbuhin ang mga ito, 1137 00:50:58,700 --> 00:51:01,981 kailangan mo lamang kung ano ang piraso ng software? 1138 00:51:01,981 --> 00:51:02,980 Madla: Ang isang web browser. 1139 00:51:02,980 --> 00:51:04,229 David J. MALAN: Ang isang web browser. 1140 00:51:04,229 --> 00:51:07,610 At ang pinakamahusay na alam ko, ang lahat ng mga aparato ay may mga web browser, 1141 00:51:07,610 --> 00:51:10,480 kaya ang gumagamit ay hindi kailangang install ng isang bagay na espesyal. 1142 00:51:10,480 --> 00:51:12,920 Kaya maaari mo lamang sabihin sa iyong madla, ang iyong mga customer, 1143 00:51:12,920 --> 00:51:16,590 pumunta sa acme.com sa iyong browser at makikita mo lamang 1144 00:51:16,590 --> 00:51:19,730 magkaroon ng isang web based na karanasan na pa rin pumupuno sa screen, 1145 00:51:19,730 --> 00:51:25,100 ngunit hindi mo na kailangang mag-alala tungkol sa lahat ng mga gastos na ito at ang lahat ng ito kumplikado. 1146 00:51:25,100 --> 00:51:28,600 Ngunit tiyak na doon ay pagpunta na maging isang catch dito, right? 1147 00:51:28,600 --> 00:51:31,740 Lalo na kung ituro ko out na ang isang pares taon na nakalipas, 1148 00:51:31,740 --> 00:51:35,700 ang pinakaunang bersyon ng mobile application Facebook ni 1149 00:51:35,700 --> 00:51:38,810 ay halos isang HTML 5 application. 1150 00:51:38,810 --> 00:51:42,490 At mayroon silang, mas kamakailan lamang, reimplemented ito 1151 00:51:42,490 --> 00:51:44,700 sa kanilang mga iba pang mga application. 1152 00:51:44,700 --> 00:51:46,990 >> Kaya bakit hindi mo gagawin agad nais na sabihin, 1153 00:51:46,990 --> 00:51:49,190 well, malinaw naman kami ay pagpunta sa gawin ito? 1154 00:51:49,190 --> 00:51:51,560 Ano ang maaaring maging ang mga nakatagong mga gastos? 1155 00:51:51,560 --> 00:51:52,477 >> Madla: Pagganap. 1156 00:51:52,477 --> 00:51:53,643 David J. MALAN: Performance? 1157 00:51:53,643 --> 00:51:54,567 Paano ang iyong ibig sabihin? 1158 00:51:54,567 --> 00:52:01,040 >> Madla: Ang katutubong app ay may higit sa pagganap. 1159 00:52:01,040 --> 00:52:03,850 >> David J. MALAN: Kaya na ay totoo, para sa isang pares ng mga dahilan. 1160 00:52:03,850 --> 00:52:05,270 Maaari naming oversimplify ang sagot. 1161 00:52:05,270 --> 00:52:08,061 At isipin ang aming talakayan ng interpreted versus naipon wika. 1162 00:52:08,061 --> 00:52:12,030 Ito ang HTML 5 at sa mga ito, lamang na maging malinaw, JavaScript-- karaniwang nakasulat 1163 00:52:12,030 --> 00:52:15,880 JS-- at CSS ay ang lahat ng interpreted wika, 1164 00:52:15,880 --> 00:52:21,020 kahit na lamang ng JavaScript ay isang programming language. 1165 00:52:21,020 --> 00:52:25,820 >> At kaya versus mga ito, na ang ilan sa mga ay pinagsama-sama, hindi bababa sa mga three-- 1166 00:52:25,820 --> 00:52:29,990 Layunin-C, Java at C # - ang mga ito, sa teorya, ay dapat lamang maging mas mabilis. 1167 00:52:29,990 --> 00:52:31,670 Subalit may isa pang katotohanan for-- 1168 00:52:31,670 --> 00:52:32,440 >> Madla: Andar? 1169 00:52:32,440 --> 00:52:32,830 >> David J. MALAN: Ano iyon? 1170 00:52:32,830 --> 00:52:34,060 >> Madla: Andar. 1171 00:52:34,060 --> 00:52:34,570 >> David J. MALAN: Pag-andar? 1172 00:52:34,570 --> 00:52:35,070 Paano kaya? 1173 00:52:35,070 --> 00:52:37,305 Madla: Gamitin ang camera off ang iyong telepono o isang bagay. 1174 00:52:37,305 --> 00:52:41,471 Maaari mong gamitin ang mga may browser. 1175 00:52:41,471 --> 00:52:42,470 David J. MALAN: Mismong. 1176 00:52:42,470 --> 00:52:43,011 Sila ay sec-- 1177 00:52:43,011 --> 00:52:45,034 Madla: [hindi marinig] 1178 00:52:45,034 --> 00:52:46,700 David J. MALAN: Iyan ay isa pang mahusay na isa. 1179 00:52:46,700 --> 00:52:49,230 May mga tampok na nanggaling sa mga mobile phone ngayon 1180 00:52:49,230 --> 00:52:53,840 na hindi, sa pamamagitan ng disenyo, para sa seguridad dahilan, naa-access sa mga web browser. 1181 00:52:53,840 --> 00:52:56,410 Dahil magiging uri ng isang katakut-takot bagay kung lamang kapag 1182 00:52:56,410 --> 00:53:00,710 bumisita ka google.com, o cnn.com, o anumang website.com, 1183 00:53:00,710 --> 00:53:04,490 na website na may kapangyarihan upang i-on sa iyong camera, kumuha ng isang larawan ng sa iyo, 1184 00:53:04,490 --> 00:53:06,010 at pagkatapos ay gamitin ito. 1185 00:53:06,010 --> 00:53:09,280 Ngunit hindi mo nais ang isang random na website na iyong binibisita para sa pinakadulo unang pagkakataon 1186 00:53:09,280 --> 00:53:10,690 na magkaroon na kakayahan. 1187 00:53:10,690 --> 00:53:13,460 >> At kaya kung ano phone tagagawa ay karaniwang gawin 1188 00:53:13,460 --> 00:53:17,230 ay sila lamang tanggihan ang access sa na uri ng impormasyon 1189 00:53:17,230 --> 00:53:20,650 sa isang browser, na nangangahulugan na ikaw ay hindi maaaring ipatupad ang camera. 1190 00:53:20,650 --> 00:53:24,180 Hindi mo maaaring ipatupad push notification, ang beeps na makakakuha ka sa iyong screen 1191 00:53:24,180 --> 00:53:26,120 may maikling mensahe. 1192 00:53:26,120 --> 00:53:31,350 At sa katunayan, kahit na GPS ay lamang uri ng pag-uuri ng mga magagamit na sa mga web browser. 1193 00:53:31,350 --> 00:53:34,140 Kung na sa iyo kailanman, sa isang laptop o sa isang mobile device, 1194 00:53:34,140 --> 00:53:38,770 pulled up ng isang bagay tulad marahil cnn.com, ngunit din mga lokal na istasyon ng balita 1195 00:53:38,770 --> 00:53:43,890 ay may posibilidad na gawin ito, ipo-prompt madalas na may isang message-- foxnews.com 1196 00:53:43,890 --> 00:53:45,170 gustong malaman ang iyong lokasyon. 1197 00:53:45,170 --> 00:53:46,610 Aprubahan o tanggihan. 1198 00:53:46,610 --> 00:53:52,070 >> Well, ang browser ay sinusubukang i-access iyong GPS na impormasyon mula sa iyong telepono. 1199 00:53:52,070 --> 00:53:54,740 Pero thankfully Microsoft, at Apple, at Google 1200 00:53:54,740 --> 00:53:57,330 nagpasya na pakiramdam ng tulad ito ay isang kapaki-pakinabang na sitwasyon, 1201 00:53:57,330 --> 00:53:59,461 gusto naming Google Maps at iba pang mga tool upang gumana, 1202 00:53:59,461 --> 00:54:02,710 ngunit hindi namin nais na gapangin mga tao out sa pamamagitan lamang pinapagana ang anumang mga website upang gawin ito. 1203 00:54:02,710 --> 00:54:05,934 Kaya sabihin uri ng meet Halfway at prompt ng gumagamit. 1204 00:54:05,934 --> 00:54:08,850 Ngunit iyan ay hindi kinakailangan ang kaso sa lahat ng hardware, tulad ng mga camera 1205 00:54:08,850 --> 00:54:10,680 at sa push abiso at ang gusto, 1206 00:54:10,680 --> 00:54:13,650 kaya maaaring kailanganin mong isakripisyo ang ilang mga tampok. 1207 00:54:13,650 --> 00:54:15,100 Ngunit ang pagganap ng masyadong. 1208 00:54:15,100 --> 00:54:18,020 Ito ay magiging mas mababa kapansin-pansin sa panahong ito, marahil 1209 00:54:18,020 --> 00:54:22,400 bilang LTE catches sa at mas mabilis bilis ng internet sa mga telepono, 1210 00:54:22,400 --> 00:54:24,110 ngunit maaari mong uri ng pakiramdam ang pagkakaiba. 1211 00:54:24,110 --> 00:54:28,190 Tulad ng isang web based na application lamang ang nararamdaman mas mabagal, kadalasan, 1212 00:54:28,190 --> 00:54:31,100 kaysa sa isang native na application, bahagyang dahil ang isang web based na application 1213 00:54:31,100 --> 00:54:32,680 sa pamamagitan ng kahulugan ay sa internet. 1214 00:54:32,680 --> 00:54:35,610 Ito ay pakikipag-usap sa mga server sa web. 1215 00:54:35,610 --> 00:54:39,590 At kung ang iyong koneksyon sa network ay mabagal, kahit na pag-scroll ay maaaring maging mabagal. 1216 00:54:39,590 --> 00:54:43,710 >> Ngunit isang native na application, mayroon kang naka-pre-downloaded-- marahil 1217 00:54:43,710 --> 00:54:45,680 kapag ikaw ay sa bahay mula sa tindahan app, 1218 00:54:45,680 --> 00:54:47,900 o ikaw ay hindi bababa pre-nai-download ito sa kabuuan nito 1219 00:54:47,900 --> 00:54:49,640 mas maaga, ano man ang iyong koneksyon speed-- 1220 00:54:49,640 --> 00:54:52,530 at kaya ngayon mayroon ka ng lahat ng bits na ikaw ay karaniwang kailangan. 1221 00:54:52,530 --> 00:54:55,090 Maliban marahil ilang data na nanggagaling mula sa isang server. 1222 00:54:55,090 --> 00:54:57,130 >> Kaya ito ay trade-offs dito. 1223 00:54:57,130 --> 00:54:59,980 May ay uri ng isang middle kompromiso, sa katunayan. 1224 00:54:59,980 --> 00:55:00,907 At sa tingin ako sa iyo 1225 00:55:00,907 --> 00:55:02,895 >> Madla: Gamitin ang data offline. 1226 00:55:02,895 --> 00:55:06,355 Sa katutubong apps, maaari mong [hindi marinig] 1227 00:55:06,355 --> 00:55:07,480 David J. MALAN: Oo naman. 1228 00:55:07,480 --> 00:55:09,730 Kaya mayroong mga offline isyu, na kung saan ay talagang nakakainis 1229 00:55:09,730 --> 00:55:13,120 kung hindi mo maaaring i-play ang ilang mga laro o paggamit ang ilang mga software dahil lang sa ikaw 1230 00:55:13,120 --> 00:55:15,110 sa isang basement sa tabi-tabi o sa isang elevator. 1231 00:55:15,110 --> 00:55:18,700 Ang isang katutubong application ay resilient na may mas mataas na posibilidad laban na, 1232 00:55:18,700 --> 00:55:20,990 ipagpalagay na mayroon kang lahat ng mga data na kailangan mo sa isang lugar lamang. 1233 00:55:20,990 --> 00:55:22,900 >> Kaya doon ay isang pangatlong pagpipilian dito. 1234 00:55:22,900 --> 00:55:30,270 At ipaalam sa gumuhit ng spectrum bilang native na app dito at web app dito. 1235 00:55:30,270 --> 00:55:32,460 At kung ano ang nasa gitna ay isang bagay called-- 1236 00:55:32,460 --> 00:55:35,410 at sa tingin ko na maaaring mayroon ka ginamit ang salitang dati, siguro? 1237 00:55:35,410 --> 00:55:37,170 Hybrid application. 1238 00:55:37,170 --> 00:55:40,980 At kung paanong ang salitang nagpapahiwatig, ito ay isang bagay sa gitna. 1239 00:55:40,980 --> 00:55:46,230 Ito ay uri ng isang web application at ito ay uri ng isang katutubong application. 1240 00:55:46,230 --> 00:55:47,690 >> At kung ano ang ibig sabihin nito? 1241 00:55:47,690 --> 00:55:51,750 Ito ay lumiliko out may mga frameworks-- na gumamit ng isang kataga mula earlier-- software 1242 00:55:51,750 --> 00:55:55,860 na ang ibang tao ay may nakasulat na para sa bawat isa sa mga ito platform. 1243 00:55:55,860 --> 00:55:57,500 Ang mga ito at pa iba pang mga aparato. 1244 00:55:57,500 --> 00:56:02,390 Sa katunayan, hayaan mo akong pumunta sa PhoneGap, na kung saan ay isa tulad ng framework na ako 1245 00:56:02,390 --> 00:56:04,520 Naniniwala Adobe nagmamay-ari na ngayon. 1246 00:56:04,520 --> 00:56:07,830 Hayaan akong pumunta sa Pagsisimula. 1247 00:56:07,830 --> 00:56:09,430 Tingnan natin. 1248 00:56:09,430 --> 00:56:12,450 Tingnan kung maaari ko bang makita ang isang listahan ng mga tool. 1249 00:56:12,450 --> 00:56:13,150 Hardware. 1250 00:56:13,150 --> 00:56:15,845 Nagsisimula. 1251 00:56:15,845 --> 00:56:17,570 PhoneGap hardware. 1252 00:56:17,570 --> 00:56:18,672 >> Tingnan natin. 1253 00:56:18,672 --> 00:56:23,459 PhoneGap hardware access. 1254 00:56:23,459 --> 00:56:26,125 Hayaan akong makita kung ang maaari naming mahanap ang isang maliit na tsart na ginamit nila na magkaroon. 1255 00:56:26,125 --> 00:56:29,170 1256 00:56:29,170 --> 00:56:31,640 Ito ay sa isa pang site. 1257 00:56:31,640 --> 00:56:32,525 Ito ba ay kapaki-pakinabang? 1258 00:56:32,525 --> 00:56:33,030 Hindi. 1259 00:56:33,030 --> 00:56:36,330 Iyan ay gonna basura ang aming oras doon. 1260 00:56:36,330 --> 00:56:40,185 PhoneGap hardware. 1261 00:56:40,185 --> 00:56:40,685 Devices. 1262 00:56:40,685 --> 00:56:45,190 1263 00:56:45,190 --> 00:56:48,030 Aparato API. 1264 00:56:48,030 --> 00:56:49,270 Nope, sila na inilipat ito. 1265 00:56:49,270 --> 00:56:50,070 >> PhoneGap. 1266 00:56:50,070 --> 00:56:54,964 Sabihin pumunta ng isang huling tumingin sa ito at makita kung ang maaari kong ipakita sa iyo. 1267 00:56:54,964 --> 00:56:55,630 Nagsisimula. 1268 00:56:55,630 --> 00:56:58,160 1269 00:56:58,160 --> 00:56:59,020 I-install PhoneGap. 1270 00:56:59,020 --> 00:57:02,310 1271 00:57:02,310 --> 00:57:03,270 I-install mobile app. 1272 00:57:03,270 --> 00:57:04,320 Pumasok dito. 1273 00:57:04,320 --> 00:57:07,220 1274 00:57:07,220 --> 00:57:08,580 Sila na reorganized ang lahat. 1275 00:57:08,580 --> 00:57:09,750 Lahat tama. 1276 00:57:09,750 --> 00:57:11,370 Oh, lahat ng karapatan. 1277 00:57:11,370 --> 00:57:12,550 Well, dito namin pumunta. 1278 00:57:12,550 --> 00:57:16,130 Ito ay hindi lahat na nakapapaliwanag, ngunit ito ay kung ano ako ay uri ng hinahanap. 1279 00:57:16,130 --> 00:57:20,940 >> Kaya PhoneGap ay isang framework na kayo maaaring i-download para sa libre na nagbibigay sa iyo 1280 00:57:20,940 --> 00:57:22,750 ilang starter code, mahalagang. 1281 00:57:22,750 --> 00:57:26,600 Kaya ang ilang mga code na sila ay may nakasulat na na hindi gawin magkano ng anumang bagay. 1282 00:57:26,600 --> 00:57:29,610 Ngunit kung ano ang nagbibigay sa iyo ng mahalagang ay ang katumbas 1283 00:57:29,610 --> 00:57:34,910 ng isang application na lamang naglalagay ng isang malaking parihaba sa screen ng gumagamit. 1284 00:57:34,910 --> 00:57:38,040 Hindi ito ilagay ang isang URL bar, tulad ng isang browser, ay hindi maglagay ng isang address. 1285 00:57:38,040 --> 00:57:39,650 Ito lamang ay naglalagay ng isang malaking parihaba. 1286 00:57:39,650 --> 00:57:43,230 At i-configure mo ito malaki parihaba, sa ilalim ng hood, 1287 00:57:43,230 --> 00:57:50,780 upang aktwal na pumunta sa acme.com, o marahil m.acme.com, para mobile.acme.com, 1288 00:57:50,780 --> 00:57:52,910 ngunit ang gumagamit ay hindi alam ang mga ito ay sa address na iyon. 1289 00:57:52,910 --> 00:57:55,520 Lahat ng nakikita nila ay ang mga nilalaman ng web page. 1290 00:57:55,520 --> 00:57:59,822 >> Ngunit kung ano ang nice tungkol pagkatao ito isang hybrid app ay na kung ano PhoneGap 1291 00:57:59,822 --> 00:58:03,030 at iba pang mga kumpanya ay nagbibigay sa iyo ay sila ay nagbibigay sa iyo ng isang maliit na piraso ng code 1292 00:58:03,030 --> 00:58:05,760 sa Layunin-C o Swift, o isang maliit na piraso ng code sa Java, 1293 00:58:05,760 --> 00:58:08,320 o isang maliit na piraso ng code sa C #, at mahalagang, 1294 00:58:08,320 --> 00:58:12,990 ang kailangan mo lang magbigay ay minimally ang address ng iyong web based application. 1295 00:58:12,990 --> 00:58:15,750 At pagkatapos mong bundle na ito ang lahat ng magkasama at ikaw 1296 00:58:15,750 --> 00:58:20,670 ito mag-access sa iyong site sa pamamagitan ng internet, 1297 00:58:20,670 --> 00:58:24,060 o ikaw kahit cache ng isang lokal na kopyahin sa loob ng application, 1298 00:58:24,060 --> 00:58:28,690 at pagkatapos ay i-save mo ang iyong aplikasyon sa iPhone format, Android phone 1299 00:58:28,690 --> 00:58:32,030 format, ibabaw format, o anumang bilang ng mga iba pang mga aparato. 1300 00:58:32,030 --> 00:58:34,960 >> upload mo bawat isa sa mga bersyon sa Play Store Google, 1301 00:58:34,960 --> 00:58:37,690 sa App Store, sa Store ng Windows, at iba pa. 1302 00:58:37,690 --> 00:58:41,570 At ngayon, maaari kang magkaroon ng lahat ng iyong mga madla download tunay na isang native na app, 1303 00:58:41,570 --> 00:58:44,250 albeit karamihan ng code ay nakasulat sa pamamagitan ng ibang tao, 1304 00:58:44,250 --> 00:58:49,090 ngunit ang mga nilalaman ng na native na app ang lahat dumating mula sa, kadalasan, ang iyong sariling website. 1305 00:58:49,090 --> 00:58:53,950 Kaya patuloy kang sumusulat ng iyong website sa HTML, JavaScript, at CSS. 1306 00:58:53,950 --> 00:58:56,400 >> Kaya bakit lumabo ang mga linyang ito? 1307 00:58:56,400 --> 00:59:00,240 Bakit magkaroon ng isang hybrid application iyon ang uri ng katutubong, kundi pati na rin 1308 00:59:00,240 --> 00:59:02,569 uri ng mga web based na? 1309 00:59:02,569 --> 00:59:04,610 Ano ang buong punto ng pagdaragdag na ito kumplikado? 1310 00:59:04,610 --> 00:59:07,180 Ibig kong sabihin, kahit pa rin, lamang mula glancing sa pamamagitan ng pahina na ito, 1311 00:59:07,180 --> 00:59:11,790 ang Pagsisimula gabay nararamdaman tulad ito ay nakuha ng isang buong pulutong ng mga hakbang para sa akin 1312 00:59:11,790 --> 00:59:13,514 na gawin bago ako can-- 1313 00:59:13,514 --> 00:59:14,430 Madla: Reusability? 1314 00:59:14,430 --> 00:59:14,960 David J. MALAN: Reusability? 1315 00:59:14,960 --> 00:59:15,618 Anong ibig mong sabihin? 1316 00:59:15,618 --> 00:59:16,826 >> Madla: Sa mga source code. 1317 00:59:16,826 --> 00:59:19,438 Kaya ang parehong code ay tumakbo sa lahat ng iba't ibang mga platform. 1318 00:59:19,438 --> 00:59:20,313 David J. MALAN: Oo. 1319 00:59:20,313 --> 00:59:21,188 Madla: [hindi marinig] 1320 00:59:21,188 --> 00:59:23,200 1321 00:59:23,200 --> 00:59:24,200 David J. MALAN: Perfect. 1322 00:59:24,200 --> 00:59:26,930 Kung ang oras ay masikip at kung ikaw ay walang ganoong karaming developers-- 1323 00:59:26,930 --> 00:59:28,900 marahil ikaw ay may isang developer at siya ay tiyak na 1324 00:59:28,900 --> 00:59:31,050 ay hindi alam ang lahat ng mga environments-- tiyak na hindi na rin, 1325 00:59:31,050 --> 00:59:33,341 at tiyak ay hindi maaaring program sa lahat ng tatlong nang sabay-sabay 1326 00:59:33,341 --> 00:59:35,970 at ipapadala ang tatlong mga produkto sa ang oras na pinahihintulutan para sa isa, 1327 00:59:35,970 --> 00:59:40,360 maaari kang magkaroon ng kanya bumuo ng lahat sa HTML at JavaScript at CSS, 1328 00:59:40,360 --> 00:59:43,260 at pagkatapos malaman ng isang maliit na maliit maliit kaunti tungkol native na apps, 1329 00:59:43,260 --> 00:59:45,930 sapat lamang upang i-download isang framework na tulad nito, 1330 00:59:45,930 --> 00:59:48,750 upang pagkatapos ay i-upload ang iyong produkto sa ang lahat ng mga iba't-ibang mga tindahan ng app 1331 00:59:48,750 --> 00:59:51,700 kaya na ikaw ay may ngayon isang katutubong application. 1332 00:59:51,700 --> 00:59:54,090 >> Kaya na tila tulad ng isang manalo-manalo, ngunit muli, upang maging malinaw, 1333 00:59:54,090 --> 00:59:56,540 ano ang mga potensyal na gastos o ang gotchas? 1334 00:59:56,540 --> 01:00:00,292 1335 01:00:00,292 --> 01:00:01,209 >> Madla: Performance? 1336 01:00:01,209 --> 01:00:02,083 David J. MALAN: Oo. 1337 01:00:02,083 --> 01:00:02,959 Pagganap. 1338 01:00:02,959 --> 01:00:04,250 Ito ay mahirap upang ilarawan sa salita. 1339 01:00:04,250 --> 01:00:07,590 Kaya't kung ikaw lang ang dadalhin sa pananampalataya ng isang mobile application, 1340 01:00:07,590 --> 01:00:11,430 isang web application ay karaniwang gumanap ng mas mabagal. 1341 01:00:11,430 --> 01:00:16,500 Maaaring hindi ito tumingin masyadong tama, dahil sa iPhone, at sa mga teleponong Android, 1342 01:00:16,500 --> 01:00:19,210 at Windows device, mayroong palaging isang uri ng default na hitsura 1343 01:00:19,210 --> 01:00:21,780 at pakiramdam sa lahat ng mga mga pindutan at mga menu. 1344 01:00:21,780 --> 01:00:25,160 >> At mga kumpanya sa web, maaaring subukan sa humigit-kumulang mga aesthetics 1345 01:00:25,160 --> 01:00:28,329 sa mga aklatan tulad ng Bootstrap, ngunit ang user-- isang astute user-- 1346 01:00:28,329 --> 01:00:30,620 ay pagpunta upang malaman na isang bagay ay hindi masyadong tama dito. 1347 01:00:30,620 --> 01:00:32,510 At iyan ay pagmultahin, marahil iyan ay hindi isang malaking pakikitungo. 1348 01:00:32,510 --> 01:00:35,500 Ngunit ang isyu pagganap absolutely ay isang malaking pakikitungo. 1349 01:00:35,500 --> 01:00:39,400 Native aplikasyon ay madalas na lamang maging mas tumutugon at samakatuwid 1350 01:00:39,400 --> 01:00:39,946 mas mabuti. 1351 01:00:39,946 --> 01:00:42,070 At kaya, kung ano ang pagkatapos ay maaaring maging ang pinakamahusay na ng parehong mundo? 1352 01:00:42,070 --> 01:00:44,584 Kung ikaw ay lalo na ng isang maliit na kumpanya o ng isang maliit na grupo, 1353 01:00:44,584 --> 01:00:47,000 hindi mo na kailangang ang mga mapagkukunan upang bumuo ng isang app sa parallel 1354 01:00:47,000 --> 01:00:50,480 sa lahat ng tatlong mga platform, at lantaran, nararamdaman tulad na ang isang masamang ideya anyway 1355 01:00:50,480 --> 01:00:53,526 dahil kung roll mo ito at sa lahat ng tatlong sabay-sabay na mapagtanto, 1356 01:00:53,526 --> 01:00:56,400 namin dapat ay nagdagdag ng ilang mga tampok o ginawa ng isang bagay na naiiba, ngayon 1357 01:00:56,400 --> 01:00:59,530 ikaw ay may upang ayusin ito sa tatlong mga lugar, wala kahit isa. 1358 01:00:59,530 --> 01:01:02,390 Ano ang marahil ang pinakamainam na diskarte dito sa pangkalahatan, 1359 01:01:02,390 --> 01:01:04,130 kung resources at oras ay masikip? 1360 01:01:04,130 --> 01:01:06,420 >> Madla: Just gawin ito sa iOS. 1361 01:01:06,420 --> 01:01:08,390 >> David J. MALAN: Iyan ay hindi makatwiran. 1362 01:01:08,390 --> 01:01:10,670 iPhone, doon man lamang sa US, ito ay sukdulang popular. 1363 01:01:10,670 --> 01:01:13,820 Android pa rin tila sa may nangingibabaw market share, globally, sa pangkalahatan. 1364 01:01:13,820 --> 01:01:16,740 Kaya ikaw ay hindi kinakailangang kinatawan 1365 01:01:16,740 --> 01:01:19,210 ng kabuuan ng mundo sa linggong ito. 1366 01:01:19,210 --> 01:01:21,180 Ngunit iyon lamang ang ganap na isa desisyon. 1367 01:01:21,180 --> 01:01:23,620 Ibig kong sabihin, sa campus dito ako tingin ng ilang atrocious number 1368 01:01:23,620 --> 01:01:26,600 o porsyento ng mga undergraduates may mga iPhone at hindi Android phone. 1369 01:01:26,600 --> 01:01:28,490 Ngunit sa ibang bansa, ito ay uri ng ang kabaligtaran. 1370 01:01:28,490 --> 01:01:30,040 Kaya mo magpasya batay sa iyong madla. 1371 01:01:30,040 --> 01:01:31,990 Paano ko malalaman mo kung ano ang iyong madla ay may? 1372 01:01:31,990 --> 01:01:34,080 >> Well, natutunan namin ang isang kahanga-hangang gawa kahapon. 1373 01:01:34,080 --> 01:01:35,060 Maaari mong hilingin sa kanila. 1374 01:01:35,060 --> 01:01:37,910 Kung mayroon kang isang bilanggo madla maaari mong ipadala ang mga ito ng isang survey form. 1375 01:01:37,910 --> 01:01:39,172 O maaari mo lamang gawin kung ano? 1376 01:01:39,172 --> 01:01:40,076 >> Madla: Google Analytics? 1377 01:01:40,076 --> 01:01:40,680 >> David J. MALAN: Ano iyon? 1378 01:01:40,680 --> 01:01:41,876 >> Madla: Google Analytics. 1379 01:01:41,876 --> 01:01:43,250 David J. MALAN: Google Analytics. 1380 01:01:43,250 --> 01:01:43,750 Yeah. 1381 01:01:43,750 --> 01:01:46,970 O kahit na mas uri ng technically, lamang tumingin sa iyong sariling server logs web. 1382 01:01:46,970 --> 01:01:49,100 Dahil kung ano ang mangyayari sa tuwing may browser, 1383 01:01:49,100 --> 01:01:51,880 kung laptop, desktop o phone bisitahin ang iyong website? 1384 01:01:51,880 --> 01:01:56,847 Sila ay magpadala na HTTP header na palabas iyo kung ano ang browser at OS ang ginagamit nila. 1385 01:01:56,847 --> 01:02:00,180 Kaya maaari mong magpakilala, na may mataas na posibilidad, kung ano ang iyong demographic ay gumagamit na paraan 1386 01:02:00,180 --> 01:02:01,410 at pagkatapos ay ayusin. 1387 01:02:01,410 --> 01:02:03,030 >> Kaya ipagpalagay na hindi katanggap-tanggap. 1388 01:02:03,030 --> 01:02:07,760 Iyon ay uri ng masamang para sa negosyo kung Android mga gumagamit ay hindi maaaring bumili ng aming mga widgets. 1389 01:02:07,760 --> 01:02:10,942 >> Madla: Kung ikaw man ay gonna singilin o hindi? 1390 01:02:10,942 --> 01:02:12,900 David J. MALAN: Kung ikaw ay pagpunta upang singilin? 1391 01:02:12,900 --> 01:02:14,900 Kaya OK, makakakuha ka ng kung ano ang babayaran mo para sa. 1392 01:02:14,900 --> 01:02:18,400 >> Madla: Kung ang iyong app ay gonna maging malaya o kung ito ay gonna-- 1393 01:02:18,400 --> 01:02:19,530 >> David J. MALAN: OK. 1394 01:02:19,530 --> 01:02:21,920 Kaya marahil maaari mong mabawi gastos na paraan, or--? 1395 01:02:21,920 --> 01:02:26,195 >> Madla: Nabasa ko ang isang pag-aaral-sabay na sinabi mas maraming mga user Apple magbayad para sa apps versus-- 1396 01:02:26,195 --> 01:02:28,320 David J. MALAN: Iyan ay totoo dahil ang mga ito na 1397 01:02:28,320 --> 01:02:29,640 pagbabayad ng higit pa para sa kanilang mga aparato. 1398 01:02:29,640 --> 01:02:31,295 Kaya hindi wala sa katwiran ng isang palagay. 1399 01:02:31,295 --> 01:02:32,170 >> Madla: [hindi marinig] 1400 01:02:32,170 --> 01:02:34,439 1401 01:02:34,439 --> 01:02:35,230 David J. MALAN: OK. 1402 01:02:35,230 --> 01:02:38,667 Kaya kung ang mga ito ay mas gustong bayaran, pagkatapos ay sa impiyerno na may gumagamit ng Android. 1403 01:02:38,667 --> 01:02:40,500 Hindi sila ay pagpunta sa magbayad sa amin ng anumang bagay pa rin. 1404 01:02:40,500 --> 01:02:43,499 Maaari naming pati na ituon ang aming mga prayoridad, hindi bababa sa para sa unang ilang buwan 1405 01:02:43,499 --> 01:02:44,810 o isang taon, sa iOS. 1406 01:02:44,810 --> 01:02:46,240 Totally makatwirang. 1407 01:02:46,240 --> 01:02:48,558 Ano ang isang mas napapabilang diskarte kaysa sa na? 1408 01:02:48,558 --> 01:02:53,740 1409 01:02:53,740 --> 01:02:54,960 Maybe-- kung ano ang na? 1410 01:02:54,960 --> 01:02:57,040 >> Madla: [hindi marinig] 1411 01:02:57,040 --> 01:03:00,142 >> David J. MALAN: Ang isang mas expensive-- kaya siguro mamuhunan nang higit pa in-- sige. 1412 01:03:00,142 --> 01:03:00,767 Madla: Oo. 1413 01:03:00,767 --> 01:03:02,050 Lamang ng isang mobile website. 1414 01:03:02,050 --> 01:03:03,966 >> David J. MALAN: Kaya gawin ang isang mobile website at hindi 1415 01:03:03,966 --> 01:03:05,440 kahit mag-alala tungkol sa mga ito kumplikado. 1416 01:03:05,440 --> 01:03:07,970 O siguro isang makatwirang diskarte, kung saan kinuha kahit Facebook, 1417 01:03:07,970 --> 01:03:10,890 ay magsimula sa isang hybrid application dahil ito ay hindi 1418 01:03:10,890 --> 01:03:13,582 na mas mahirap upang gawin ito kaysa sa ito. 1419 01:03:13,582 --> 01:03:16,040 Ikaw na lang ay basahin ang ilang mga dokumentasyon at malaman kung paano 1420 01:03:16,040 --> 01:03:17,480 upang mag-upload ng mga bagay sa App Store. 1421 01:03:17,480 --> 01:03:19,670 Kaya siguro kang magsimula sa ito, sa gayon ay sa araw ng isa, 1422 01:03:19,670 --> 01:03:21,112 maaari mong suportahan ang lahat ng iyong mga gumagamit. 1423 01:03:21,112 --> 01:03:23,570 At pagkatapos, tulad lamang Facebook at iba pang mga kumpanya ay may tapos na, 1424 01:03:23,570 --> 01:03:25,330 kapag ikaw ay may mga mapagkukunan, ikaw ay may mga tao, 1425 01:03:25,330 --> 01:03:27,660 bakit hindi mo muling ipatupad lamang ang iOS application. 1426 01:03:27,660 --> 01:03:31,460 Mayroon ka pa ring isang bagay para sa lahat, kahit na ito ay isang bulok na karanasan 1427 01:03:31,460 --> 01:03:33,330 marahil, sa mga hybrid application. 1428 01:03:33,330 --> 01:03:36,770 Ngunit maaari mong dahan-dahan igulong at palitan ang iyong short term 1429 01:03:36,770 --> 01:03:40,280 panukala ng hybrid apps na may iyong mas native application. 1430 01:03:40,280 --> 01:03:44,090 >> Madla: Ngunit sa isang hybrid app mo magkakaroon ng access sa mobile na mga tampok? 1431 01:03:44,090 --> 01:03:45,440 >> David J. MALAN: Hindi kinakailangan. 1432 01:03:45,440 --> 01:03:47,810 Kaya siguro kang gumawa ng isang nakakamalay desisyon maaga, 1433 01:03:47,810 --> 01:03:51,930 maaari ka lamang mag-upload ng mga larawan sa native na application iPhone para sa Facebook, 1434 01:03:51,930 --> 01:03:56,060 ngunit hindi sa Android application, una, halimbawa. 1435 01:03:56,060 --> 01:04:00,600 At iyan ay isang bit ng isang maliit na kasinungalingan dahil web mga aplikasyon ay may higit pang mga paghihigpit 1436 01:04:00,600 --> 01:04:03,620 kaysa hybrid aplikasyon ito ay lumiliko out, at kung mababasa natin ang mga babasahin 1437 01:04:03,620 --> 01:04:07,260 para PhoneGap at mga bagay na tulad nito, mga tao ay may magkaroon ng mga paraan 1438 01:04:07,260 --> 01:04:11,110 upang magbigay ng web based na mga aplikasyon access sa camera, 1439 01:04:11,110 --> 01:04:13,310 kaya hangga't ikaw ay gumagamit ng isang hybrid application. 1440 01:04:13,310 --> 01:04:14,214 >> Paano gumagana ang na gumagana? 1441 01:04:14,214 --> 01:04:16,130 Dahil ang hybrid application, sa pamamagitan ng kahulugan, 1442 01:04:16,130 --> 01:04:19,600 ay may isang piraso ng code sa Layunin-C, at Swift, at Java, o sa C #, 1443 01:04:19,600 --> 01:04:20,920 maaari itong ma-access ang hardware. 1444 01:04:20,920 --> 01:04:24,590 Hindi kinakailangan ang lahat, ngunit ito maaaring tunay mabuti 1445 01:04:24,590 --> 01:04:27,310 ay ang kaso na mayroon kang sapat access upang makuha ang camera, 1446 01:04:27,310 --> 01:04:32,960 kahit na para sa Android platform, para sa Halimbawa, sa na contrived halimbawa. 1447 01:04:32,960 --> 01:04:35,515 >> Anumang iba pang mga katanungan? 1448 01:04:35,515 --> 01:04:36,279 Lahat tama. 1449 01:04:36,279 --> 01:04:38,070 Bakit hindi namin kunin ang aming 15 minutong break na dito. 1450 01:04:38,070 --> 01:04:44,060 Susubukan naming ipagpatuloy sa tatlong may isang pangwakas na tumingin sa web programming, database, 1451 01:04:44,060 --> 01:04:45,910 at Javascript. 1452 01:04:45,910 --> 01:04:48,877