1 00:00:00,000 --> 00:00:03,920 >> [Mūzikas atskaņošanai] 2 00:00:03,920 --> 00:00:11,760 3 00:00:11,760 --> 00:00:13,800 >> DAVID J. Malan: Nu labi. 4 00:00:13,800 --> 00:00:15,640 Tas ir CS50. 5 00:00:15,640 --> 00:00:17,620 Tas ir sākums nedēļas astoņiem. 6 00:00:17,620 --> 00:00:22,440 Un jūs varat atcerēties, ka mēs left off Pēdējo reizi, kad meklē jaunu valodu 7 00:00:22,440 --> 00:00:23,240 vispār. 8 00:00:23,240 --> 00:00:25,905 Patiesībā, viens, kas ir diezgan viegls, un tas nav pat 9 00:00:25,905 --> 00:00:26,940 programmēšanas valoda. 10 00:00:26,940 --> 00:00:31,100 Tas ir iezīmēšanas valoda, kas ļauj mums faktiski strukturēt un padarīt interneta lapas. 11 00:00:31,100 --> 00:00:33,350 Un, ja jums kaut kas cits kopā ar this-- 12 00:00:33,350 --> 00:00:35,670 vai jūs drīz būs, ja jums vēl nav. 13 00:00:35,670 --> 00:00:38,530 Mēs ejam, lai izmantotu kaskādes Style Sheets vai CSS, kas 14 00:00:38,530 --> 00:00:40,971 ir cita veida valodas ar īpašībām un vērtībām 15 00:00:40,971 --> 00:00:43,220 kas notiek, lai darīsim lietas patīk mainīt krāsu 16 00:00:43,220 --> 00:00:46,010 un mainīt nostāju un šie tweaks veidus. 17 00:00:46,010 --> 00:00:49,940 Bet šodien, un tālāk, mēs sākam jākoncentrējas uz jaudīgāku valodām, 18 00:00:49,940 --> 00:00:52,810 faktiskie programmēšanas valodas, piemēram, PHP. 19 00:00:52,810 --> 00:00:54,880 >> Tāpēc PHP ir bijis apmēram kādu laiku. 20 00:00:54,880 --> 00:00:56,810 Un, kā jūs redzēsiet, tas galvenokārt bija paredzēta 21 00:00:56,810 --> 00:01:00,280 agri par faktisko izmantot web izstrāde 22 00:01:00,280 --> 00:01:02,360 un faktiski radot interneta lapas. 23 00:01:02,360 --> 00:01:04,849 Tātad, ko veidu funkcijas nav valodu 24 00:01:04,849 --> 00:01:10,040 ir nepieciešams, lai padarītu tīmekli lapas dinamiski ar to? 25 00:01:10,040 --> 00:01:14,760 >> Citiem vārdiem sakot, ja jūs vēlaties, lai radītu saturs dynamically-- patīk Facebook s 26 00:01:14,760 --> 00:01:19,480 Newsfeed, kas pastāvīgi mainās, vai tērzēšanas ziņas, ka pop up no laika 27 00:01:19,480 --> 00:01:21,872 lai LAIKU_ patīk tas, ko ir galvenais gabals funkcionalitāti 28 00:01:21,872 --> 00:01:24,580 jums ir nepieciešams programmēšanas valodu kas varētu ļaut jums dinamiski 29 00:01:24,580 --> 00:01:28,070 izdrukāt jaunu informāciju uz ekrāna? 30 00:01:28,070 --> 00:01:28,685 >> STUDENTU: Code. 31 00:01:28,685 --> 00:01:29,560 DAVID J. Malan: Code. 32 00:01:29,560 --> 00:01:30,440 OK. 33 00:01:30,440 --> 00:01:31,995 Mēs ņemšu to. 34 00:01:31,995 --> 00:01:35,310 Mazliet precīzāks. 35 00:01:35,310 --> 00:01:37,639 Es domāju, mēs varētu darīt to ar C, atklāti sakot. 36 00:01:37,639 --> 00:01:38,930 Tas būtu sāpes kaklā. 37 00:01:38,930 --> 00:01:41,045 But-- ir šo apņemšanos? 38 00:01:41,045 --> 00:01:41,895 >> STUDENTU: Jā. 39 00:01:41,895 --> 00:01:42,677 Mainīgie, varbūt? 40 00:01:42,677 --> 00:01:43,760 DAVID J. Malan: Mainīgie. 41 00:01:43,760 --> 00:01:44,160 Labi, protams. 42 00:01:44,160 --> 00:01:45,740 Mainīgie noteikti var palīdzēt mums out. 43 00:01:45,740 --> 00:01:47,020 Un pat kaut ko vienkāršāku. 44 00:01:47,020 --> 00:01:50,640 Mēs izmantojām to pašu pirmo programma jau pirmajā dienā 45 00:01:50,640 --> 00:01:55,686 kad mēs faktiski teica: "Hello World". 46 00:01:55,686 --> 00:01:56,570 >> STUDENTU: Print. 47 00:01:56,570 --> 00:01:57,778 >> DAVID J. Malan: Print, vai ne? 48 00:01:57,778 --> 00:02:01,050 Print, vai printf in pasaule C. Tātad visu šo laiku, 49 00:02:01,050 --> 00:02:03,362 mēs esam bija mūsu apglabāšanas language-- C, 50 00:02:03,362 --> 00:02:05,570 in particular-- un pat Scratch par šo jautājumu, kas 51 00:02:05,570 --> 00:02:07,400 var radīt teksta virknes. 52 00:02:07,400 --> 00:02:11,090 >> Nu, ja HTML, kā mēs redzējām pagājušajā nedēļā, ir tikai visu ķekars virknes teksta 53 00:02:11,090 --> 00:02:14,692 lai gan ar atvērtām iekavām un slēgta kronšteini un sava veida atskaņa 54 00:02:14,692 --> 00:02:16,650 un iemesls, aiz tā, labi, tad mēs varētu patiešām 55 00:02:16,650 --> 00:02:20,440 sākt radīt interneta lapas, vai nu manuāli, ierakstot tos ar gedit 56 00:02:20,440 --> 00:02:23,870 vai Microsoft Word, ka matter-- mēs vienkārši nepieciešams teksta redaktoru. 57 00:02:23,870 --> 00:02:26,830 >> Vai mēs varētu rakstīt kodu, Jūsu ierosinājumu 58 00:02:26,830 --> 00:02:30,435 agrāk, kas varētu mūs dinamiski ģenerēt HTML, 59 00:02:30,435 --> 00:02:32,560 un tas, ko mēs ejam sākt darīt ar PHP 60 00:02:32,560 --> 00:02:34,900 un galu galā pat ar valodā sauc JavaScript, 61 00:02:34,900 --> 00:02:37,910 ir izmantot vienu valodu, lai radītu citu. 62 00:02:37,910 --> 00:02:40,720 Un tiešām, tas ir tas, ko Facebook un daudzi, daudzi citi objekti 63 00:02:40,720 --> 00:02:44,530 darīt, lai faktiski dinamiski parādīt jaunu informāciju, lai jums. 64 00:02:44,530 --> 00:02:47,117 >> Tātad, sāksim ar this-- a mistisks meklē līnija, bet viens 65 00:02:47,117 --> 00:02:48,450 tas ir faktiski diezgan spēcīgs. 66 00:02:48,450 --> 00:02:51,210 Līdz šim mēs esam bijuši, izmantojot C, kas ir apkopota valoda. 67 00:02:51,210 --> 00:02:55,050 Un tikai ātri recap-- apkopota valodai ir kāda īpašība? 68 00:02:55,050 --> 00:02:59,050 Jūs, protams, ir nepieciešams, lai apkopotu tas, bet ko tas nozīmē? 69 00:02:59,050 --> 00:03:00,505 Yeah? 70 00:03:00,505 --> 00:03:02,940 >> STUDENTU: Tai ir jābūt samontēt mašīnu kodu. 71 00:03:02,940 --> 00:03:03,060 >> DAVID J. Malan: Labi. 72 00:03:03,060 --> 00:03:04,530 Tai samontēt mašīnu kodu. 73 00:03:04,530 --> 00:03:07,340 Tātad jūs veikt jūsu avota kodu, kas ir sava veida angļu-patīk. 74 00:03:07,340 --> 00:03:09,270 Jums pārvērst, ka uz kaut kas zemāks līmenis, 75 00:03:09,270 --> 00:03:11,590 ko galu galā sauc objekta code-- 0 s un 1 s. 76 00:03:11,590 --> 00:03:14,830 Un tas ir šīs 0 s un 1 s, ka CPU, piemēram, tiem, ko Intel, 77 00:03:14,830 --> 00:03:16,110 faktiski saprast. 78 00:03:16,110 --> 00:03:19,690 >> Tagad, PHP un Python un Ruby un JavaScript un ķekarus citi 79 00:03:19,690 --> 00:03:23,190 valodas netiek apkopoti valodas, bet interpretē valodas, 80 00:03:23,190 --> 00:03:26,630 kas nozīmē, ka jūs vienkārši tos rakstīt un tad jums nav pārvērst tos 0 s un 1 s. 81 00:03:26,630 --> 00:03:30,790 Tu nevis tikai sniegt tad, kā ieeja uz kādu citu programmu, 82 00:03:30,790 --> 00:03:32,080 sauc tulks. 83 00:03:32,080 --> 00:03:34,460 Un ka personas Programma ir izstrādāta, 84 00:03:34,460 --> 00:03:38,280 lai saprastu, ko katrs un katrs simbols Python vai PHP 85 00:03:38,280 --> 00:03:42,650 vai Ruby vai kādu skaits citas valodas nozīmē. 86 00:03:42,650 --> 00:03:44,760 >> Un tāpēc viss, kas mums vajadzīgs, ir kaut kas līdzīgs šim. 87 00:03:44,760 --> 00:03:46,350 Tātad faktiski, es esmu gatavojas iet pa pie ierīces 88 00:03:46,350 --> 00:03:48,100 šeit, tikai nevienā veco logu, un mēs esam 89 00:03:48,100 --> 00:03:52,580 gatavojas iet uz priekšu un atvērta failu sauc, saka, sveiki. 90 00:03:52,580 --> 00:03:55,780 Tagad jau iepriekš, es varētu būt saglabāti tas pat ar faila paplašinājumu, 91 00:03:55,780 --> 00:03:57,910 bet es esmu gatavojas darīt kaut pat vienkāršāka šeit. 92 00:03:57,910 --> 00:04:02,450 Es esmu gatavojas iet uz priekšu un sākt šo failu ar šo mistisks sintaksi. 93 00:04:02,450 --> 00:04:06,310 Tātad "lietotājs, bin, ENV, videi, php. " 94 00:04:06,310 --> 00:04:10,670 >> Tas ir tikai viena līnija kodu, kas ir dodas, lai pastāstītu savu operētājsistēmu, 95 00:04:10,670 --> 00:04:13,730 iet atrast jūsu vietējā vide kāds tas ir, 96 00:04:13,730 --> 00:04:18,149 kur PHP is-- šo interpreter-- un iet uz priekšu un izmantot šo tulks 97 00:04:18,149 --> 00:04:20,589 interpretēt šādu kodu. 98 00:04:20,589 --> 00:04:22,760 Tagad, tas ir sava veida neglīts iezīme PHP. 99 00:04:22,760 --> 00:04:24,980 Bet šajā valodā, jebkāda reizi, kad jūs rakstīt PHP kodu, 100 00:04:24,980 --> 00:04:29,200 jums ir viens no šiem neglīts PHP tags norobežo sākumu 101 00:04:29,200 --> 00:04:32,220 Jūsu code-- 00:04:37,430 >> Bet tālāk šeit, es tagad varu darīt kaut ko diezgan vienkārši, tāpat kā printf sveiki komats 103 00:04:37,430 --> 00:04:40,922 pasaules slīpsvītru n tuvu quote, netālu iekavās. 104 00:04:40,922 --> 00:04:42,630 Un tad tikai par labu pasākums, es esmu gatavojas 105 00:04:42,630 --> 00:04:45,380 iet uz priekšu un aizvērt mans php tag nekā šeit 106 00:04:45,380 --> 00:04:47,390 Tā, ka viss izskatās labi diezgan izdrukāt. 107 00:04:47,390 --> 00:04:50,780 >> Un, tiklīdz es noklikšķiniet uz Saglabāt, gedit ir pietiekami reāli gudrs 108 00:04:50,780 --> 00:04:54,620 apskatīt šīs pašas pirmās līnijas un saproti, ak, jūs esat rakstiski PHP kodu. 109 00:04:54,620 --> 00:04:56,710 Ļaujiet man sintakses izcelt tas ar krāsām 110 00:04:56,710 --> 00:04:58,690 šeit tā, ka tā ir out nedaudz vairāk. 111 00:04:58,690 --> 00:05:01,300 Bet tagad es iešu leju, lai manu termināļa loga. 112 00:05:01,300 --> 00:05:02,340 Es tuvinātu. 113 00:05:02,340 --> 00:05:06,860 >> Šī programma tika saukta "sveiki" tāpēc es esmu gatavojas darīt dot slīpsvītra hello, 114 00:05:06,860 --> 00:05:07,990 bet atļauja liegta. 115 00:05:07,990 --> 00:05:08,490 Un bash. 116 00:05:08,490 --> 00:05:10,610 Mēs tiešām dzirdējis, ka Pirms lieta pāris nedēļas 117 00:05:10,610 --> 00:05:13,140 kontekstā Shellshock, viena no šīm kļūdām. 118 00:05:13,140 --> 00:05:16,240 >> Bet atļauja atteikta, mēs esam redzējuši pirms, varbūt citā kontekstā. 119 00:05:16,240 --> 00:05:19,060 Vai kāds atcerēties, cik jūs varētu noteikt kaut 120 00:05:19,060 --> 00:05:22,100 ja atļauja ir liegta, kā šis? 121 00:05:22,100 --> 00:05:23,490 Kas ir komanda, vismaz? 122 00:05:23,490 --> 00:05:24,159 >> STUDENTU: Chmod. 123 00:05:24,159 --> 00:05:26,700 DAVID J. Malan: Jā, chmod, maiņai veidu failu. 124 00:05:26,700 --> 00:05:30,171 Un jūs saņemsiet visu vairāk izmanto, lai tas nākamnedēļ ar sekojošu problēmu 125 00:05:30,171 --> 00:05:30,670 iestatīts. 126 00:05:30,670 --> 00:05:33,211 Bet tagad, es esmu gatavojas mainīt režīms nav lasāma, 127 00:05:33,211 --> 00:05:36,650 bet dot ikvienam executeability privilēģijas, spēja 128 00:05:36,650 --> 00:05:37,710 palaist šo failu. 129 00:05:37,710 --> 00:05:40,360 Un es esmu gatavojas, lai piešķirtu ka uz failu sveiki. 130 00:05:40,360 --> 00:05:45,150 >> Ja man tagad darīt dot slīpsvītra sveiki ieiet, jūs skat, patiesībā, mana programma, sveiki pasaule. 131 00:05:45,150 --> 00:05:48,760 Un ko solis darīja I skaidri izlaist pavisam? 132 00:05:48,760 --> 00:05:49,520 Apkopošanu. 133 00:05:49,520 --> 00:05:51,680 Tāpēc es vienkārši skrēja šo programmu vienkārši. 134 00:05:51,680 --> 00:05:55,690 >> Un izrādās, jūs varat darīt to ar daudz sintakses atgādina C. 135 00:05:55,690 --> 00:06:03,400 Ļaujiet man iet uz šodienas kodu, kas man manā vhost direktorijā 136 00:06:03,400 --> 00:06:05,250 šeit, lai patiesos iemeslus mēs atgriezties. 137 00:06:05,250 --> 00:06:09,350 Un es iešu uz, teiksim, nosacījumiem 1. 138 00:06:09,350 --> 00:06:12,450 >> Un jūs redzēsiet šeit, pirmais un kārtām, viss ķekars komentāriem. 139 00:06:12,450 --> 00:06:15,240 Bet tas ir faktiski atkārtotu izveidi PHP 140 00:06:15,240 --> 00:06:18,960 Programmas mēs darījām nedēļas viens sauc apstākļi 1.c 141 00:06:18,960 --> 00:06:20,690 kur nolūks dzīvi šo programmu 142 00:06:20,690 --> 00:06:22,950 acīmredzot uzdot lietotāju par skaitlim 143 00:06:22,950 --> 00:06:25,270 un pēc tam veikt dažas pūkains analīze par to, ar ko 144 00:06:25,270 --> 00:06:29,510 jūs teiktu, ja tas ir pozitīvs vai negatīvs vai vienāds ar nulli. 145 00:06:29,510 --> 00:06:34,220 Un es celt šo augšu tikai tāpēc, izņemot varbūt vienu sīkumiem, 146 00:06:34,220 --> 00:06:37,150 tas ir atšķirama tik tālu no C. 147 00:06:37,150 --> 00:06:39,930 >> Kas ir viena īpašība šeit, ka varbūt lec ārā 148 00:06:39,930 --> 00:06:41,410 pie jums kā nedaudz atšķiras? 149 00:06:41,410 --> 00:06:42,160 Varbūt divas lietas. 150 00:06:42,160 --> 00:06:42,660 Yeah? 151 00:06:42,660 --> 00:06:44,070 >> STUDENTU: Dollar zīme n? 152 00:06:44,070 --> 00:06:44,944 >> DAVID J. Malan: Jā. 153 00:06:44,944 --> 00:06:46,210 Tāpēc dolāra zīmi n ir klāt. 154 00:06:46,210 --> 00:06:48,120 Un dolāra zīmes, kā mēs redzēsim, gatavojas 155 00:06:48,120 --> 00:06:51,460 ir noteikt sākumā jebkura mainīgo PHP. 156 00:06:51,460 --> 00:06:54,250 Tas ir gan labi, gan bad-- labs ka tas ir sava veida skaidrs, kāda ir 157 00:06:54,250 --> 00:06:56,797 mainīgs, slikti, ka tā ir vēl viena lieta, ko rakstīt. 158 00:06:56,797 --> 00:06:58,630 Un tur ir viens cits lieta mums nav gluži 159 00:06:58,630 --> 00:07:00,876 redzams, vismaz ar šo pareizrakstību. yeah? 160 00:07:00,876 --> 00:07:01,630 >> STUDENTU: readline. 161 00:07:01,630 --> 00:07:02,671 >> DAVID J. Malan: readline. 162 00:07:02,671 --> 00:07:06,550 Readline mēs neredzējām, per se, jo C, lai gan pastāv kaut kas 163 00:07:06,550 --> 00:07:09,530 līdzīgi, bet mēs esam izmanto getstring, un tas ir tā ekvivalents. 164 00:07:09,530 --> 00:07:12,950 Tātad, ja es eju uz to direktoriju, kas notiek, ir, 165 00:07:12,950 --> 00:07:18,030 kā es paskaidrošu mazliet manā vhost direktoriju un mans avots katalogs, 166 00:07:18,030 --> 00:07:22,730 un es iet uz priekšu un darīt dot slīpsvītra conditions-- whoops-- dot slash 167 00:07:22,730 --> 00:07:26,710 apstākļi 1, jūs redzēsiet, atkal, pats issue-- atļauja liegta. 168 00:07:26,710 --> 00:07:33,610 >> Tāpēc ļaujiet man tuvinātu un darīt chmod plus x par nosacījumiem, dot slīpsvītra apstākļos. 169 00:07:33,610 --> 00:07:35,222 Es gribētu skaitlim, lūdzu, 50. 170 00:07:35,222 --> 00:07:36,930 Un mēs varētu spēlēt šo Spēle visas dienas garumā. 171 00:07:36,930 --> 00:07:39,140 Tas notiek, lai uzvedas tieši kā tas notika vienā nedēļā. 172 00:07:39,140 --> 00:07:42,860 >> Labi, tāpēc ne viss, kas atšķiras, izņemot ne tikai to, ka neliels mazliet sintaksi, 173 00:07:42,860 --> 00:07:45,490 bet augšdaļā, es atkal bija šo līniju, kas 174 00:07:45,490 --> 00:07:49,760 ļāva man, lai radītu kaut ko, kas izskatās C programmu, ko sauc sveiki, 175 00:07:49,760 --> 00:07:51,150 sauc nosacījumi 1. 176 00:07:51,150 --> 00:07:54,520 Bet tas nav 0 s, un tiem Es esmu izpildes tieši. 177 00:07:54,520 --> 00:07:57,620 Tas ir vietā darbojas šis tulks, kura vārds 178 00:07:57,620 --> 00:07:59,440 notiek, ir identisks valodu. 179 00:07:59,440 --> 00:08:04,970 Programma sauc PHP, un mans kods zem līnijas viens tiek nodots tajā. 180 00:08:04,970 --> 00:08:07,740 >> Mēs varam darīt citu diezgan vienkāršs piemērs atgādina kaut ko 181 00:08:07,740 --> 00:08:09,240 mēs darījām pirms nedēļas. 182 00:08:09,240 --> 00:08:12,020 Atkal, tas ir sava veida patvaļīga rieciens koda 183 00:08:12,020 --> 00:08:14,000 ka acīmredzot nav ko, ja jūs palaist to? 184 00:08:14,000 --> 00:08:15,625 Kas tas notiek, lai drukātu, iespējams? 185 00:08:15,625 --> 00:08:23,540 186 00:08:23,540 --> 00:08:28,250 >> Tātad sākotnēji uz 16 līniju, tas ir teiksiet x tagad ir 2, droši vien. 187 00:08:28,250 --> 00:08:30,920 % D ir tāds pats kā $ i par printf. 188 00:08:30,920 --> 00:08:33,460 Tātad tas ir cubing, dot, dot, dot, atbilstoši 17. 189 00:08:33,460 --> 00:08:36,299 Un tad līnija 18 parādās lai izsauktu funkciju kubā. 190 00:08:36,299 --> 00:08:37,600 Un kur ir kubā definēti? 191 00:08:37,600 --> 00:08:40,319 >> Nu, izskatās, ka atbilstoši 25., tā, ka tas nav viss, kas atšķiras. 192 00:08:40,319 --> 00:08:42,610 Man dažus komentārus augstāk tas, bet lielākā daļa, 193 00:08:42,610 --> 00:08:45,370 tas ir diezgan vienkārši pārnešanas vai pārveidošana 194 00:08:45,370 --> 00:08:48,470 no C programmas PHP versiju. 195 00:08:48,470 --> 00:08:52,670 Bet tagad ir pāris atšķirības, ka varbūt vajadzētu lēkt ārā. 196 00:08:52,670 --> 00:08:56,100 Kas vēl ir atšķirīgs par to, kā jūs varētu uzrakstīt šo pašu programmu C? 197 00:08:56,100 --> 00:08:57,900 >> STUDENTU: [dzirdams]. 198 00:08:57,900 --> 00:09:00,070 >> DAVID J. Malan: Ir Nav prototips up top. 199 00:09:00,070 --> 00:09:03,210 Tik PHP-- un atklāti, Mūsdienu languages-- daudz 200 00:09:03,210 --> 00:09:06,920 ir daudz gudrāki un vairāk noderīgs nekā C kompilatori, jo jums 201 00:09:06,920 --> 00:09:09,740 var likt funkciju šeit, Jūs varat ievietot funkciju šeit lejā, 202 00:09:09,740 --> 00:09:12,740 un tulks gatavojas darīt jums labu lasījumā 203 00:09:12,740 --> 00:09:16,010 visas lietas, pirms tā izlemj ka daži funkcija neeksistē. 204 00:09:16,010 --> 00:09:17,970 Tik jauki uzlabojumi gadus vēlāk. 205 00:09:17,970 --> 00:09:22,126 Bet tur ir arī kaut kas cits, atšķirīgs vai prombūtnē šeit. 206 00:09:22,126 --> 00:09:22,626 Yeah? 207 00:09:22,626 --> 00:09:25,084 >> STUDENTU: [dzirdams]. 208 00:09:25,084 --> 00:09:27,750 DAVID J. Malan: Mums nav deklarē veidus mainīgo, 209 00:09:27,750 --> 00:09:31,780 tāpēc mēs redzēsim pirms ilgi, ka ir dažādi veidi PHP, 210 00:09:31,780 --> 00:09:34,970 bet jums nav nepieciešams norādīt tos, kas arī ir gan labs un slikts. 211 00:09:34,970 --> 00:09:36,623 Un tur ir viena cita lieta, kas trūkst. 212 00:09:36,623 --> 00:09:37,430 >> STUDENTU: Nav bibliotēkās. 213 00:09:37,430 --> 00:09:38,630 >> DAVID J. Malan: Nav bibliotēkas. 214 00:09:38,630 --> 00:09:39,350 Labi, tā ka ir jauki. 215 00:09:39,350 --> 00:09:40,540 Mēs saņemam daudz vairāk no kastes. 216 00:09:40,540 --> 00:09:43,373 Tātad tur ir tiešām daudz vairāk lietas, nekā es domāju, bija atšķirīgi. 217 00:09:43,373 --> 00:09:44,350 Kā par veidā muguras? 218 00:09:44,350 --> 00:09:46,032 Kas tas ir? 219 00:09:46,032 --> 00:09:46,740 Saka, ka tas vēlreiz? 220 00:09:46,740 --> 00:09:47,960 >> STUDENTU: Pointer. 221 00:09:47,960 --> 00:09:49,270 >> DAVID J. Malan: Nav norādes. 222 00:09:49,270 --> 00:09:51,280 OK, vismaz šajā piemērā, nē. 223 00:09:51,280 --> 00:09:52,070 Tas ir godīgi. 224 00:09:52,070 --> 00:09:55,090 Tātad tur nav norādes PHP faktiski vispār. 225 00:09:55,090 --> 00:09:58,730 Ir kaut kas ko sauc norādes, bet mēs ne tērēt pārāk daudz laika tur. 226 00:09:58,730 --> 00:09:59,520 Un ko vēl? 227 00:09:59,520 --> 00:10:00,185 >> STUDENTU: Main. 228 00:10:00,185 --> 00:10:01,060 DAVID J. Malan: Main. 229 00:10:01,060 --> 00:10:02,768 Tātad tas bija Biggie Es biju domājis. 230 00:10:02,768 --> 00:10:04,660 Pamanīt tur nav galvenais ieejas punkts. 231 00:10:04,660 --> 00:10:06,525 Jūs vienkārši sākt rakstīt savu kodu. 232 00:10:06,525 --> 00:10:08,400 Un tas ir faktiski būs izdevīgi 233 00:10:08,400 --> 00:10:10,560 kad mēs pāreju momentāni faktiski izmantojot 234 00:10:10,560 --> 00:10:13,980 šī pati valoda web bāzes programmēšana, par kuru mēs 235 00:10:13,980 --> 00:10:16,580 nevēlos, lai ir tikai viena ieejas punktu. 236 00:10:16,580 --> 00:10:19,980 Mēs varētu vēlēties, lai būtu ķekars URL, ķekars dažādiem failiem 237 00:10:19,980 --> 00:10:22,930 viss ņemot lietotāja ievadi un ražo produkciju. 238 00:10:22,930 --> 00:10:27,130 >> Bet šeit ir ļoti neizcēlās Piemēram, ka es apsolīju pēdējo reizi, 239 00:10:27,130 --> 00:10:30,130 proti, šajā mapē šeit, pārrakstīšanās. 240 00:10:30,130 --> 00:10:33,680 Tātad šī faila Speller, ko mēs nebūs jātērē pārāk daudz laika, ir 241 00:10:33,680 --> 00:10:37,870 būtībā porting-- P-O-R-T. Tas ir tikai vārds dots, ja, teiksim, 242 00:10:37,870 --> 00:10:40,800 pārvērst no vienas valodas uz citu manuāli parasti. 243 00:10:40,800 --> 00:10:45,680 >> Tas ir pārnešanas PC versija Speller no PSET 5. 244 00:10:45,680 --> 00:10:48,856 Un es būtībā mēģināju konvertēt tas pozīcijai cik vien varu. 245 00:10:48,856 --> 00:10:51,730 Tātad, ja jums patīk šāda veida lieta, tas tiešām ir vērts kādā brīdī 246 00:10:51,730 --> 00:10:54,229 velkot tos gan uz augšu pusē ar sānu un redzēt to, kas ir pats 247 00:10:54,229 --> 00:10:55,230 un kas ir atšķirīgs. 248 00:10:55,230 --> 00:10:57,510 Bet viņi diezgan darn līdzīgi. 249 00:10:57,510 --> 00:11:00,110 Ja jūs atceraties, ko Speller pat izskatījās, 250 00:11:00,110 --> 00:11:02,110 pat ja jums nav ir mainīt šo failu, 251 00:11:02,110 --> 00:11:04,860 tas ir diezgan līdzīgs strukturāli tikai ar pāris 252 00:11:04,860 --> 00:11:06,200 Izmaiņu šeit un tur. 253 00:11:06,200 --> 00:11:10,140 >> Tātad tas ir tikai teikt, ka tas ir diezgan vienkārši pārvērst Speller 254 00:11:10,140 --> 00:11:12,000 no C uz PHP. 255 00:11:12,000 --> 00:11:15,390 Bet vārdnīcā, tur ir kaut kas vēl pārliecinoši. 256 00:11:15,390 --> 00:11:19,270 Ļaujiet man iet uz priekšu un izveidot mana dictionary.php failu. 257 00:11:19,270 --> 00:11:24,010 Tik nedaudz atšķiras ar to, ka mēs to saucam php nevis .c. 258 00:11:24,010 --> 00:11:26,980 Tā kā šis ir PHP failu, es do-- nedaudz annoyingly-- ir 259 00:11:26,980 --> 00:11:30,132 lai sāktu failu ar php tagu, piemēram, ka. 260 00:11:30,132 --> 00:11:32,340 Un es iešu uz priekšu un definēt dažas funkcijas. 261 00:11:32,340 --> 00:11:35,770 Funkcija sauc pārbaude, kas ir gatavojas uzņemt vārdu kā agrāk. 262 00:11:35,770 --> 00:11:37,520 Taču šis arguments s nāksies dolāru 263 00:11:37,520 --> 00:11:39,840 paraksta, jo mēs esam, atkal, izmantojot PHP. 264 00:11:39,840 --> 00:11:42,350 Vēl viens no funkciju dictionary.c bija slodze 265 00:11:42,350 --> 00:11:47,120 un tas aizņēma nosaukumu vārdnīcu, tāpēc es nopirkšu šo funkciju gatavi iet. 266 00:11:47,120 --> 00:11:50,920 >> Vēl viens dictionary.c bija tas, ko? 267 00:11:50,920 --> 00:11:54,580 Lielums bija viens no jaukākajiem tiem, at Vismaz, ja jūs tur kādu mainīgo apkārt. 268 00:11:54,580 --> 00:11:57,830 tāpēc izmērs vienkārši ir atgriezties mainīgo. 269 00:11:57,830 --> 00:11:59,090 Un tad tur bija izkraut. 270 00:11:59,090 --> 00:12:02,830 >> Tātad tur bija šie četri funkcijas problēmu noteikts 5 271 00:12:02,830 --> 00:12:06,770 kas jums nepieciešams, lai īstenotu ar daži datu struktūra vai struktūras. 272 00:12:06,770 --> 00:12:10,170 Tāpēc es apsolīju, ka PHP, mēs varam paziņot 273 00:12:10,170 --> 00:12:14,490 hash tabulu, piemēram, viss, kas vieglāk. 274 00:12:14,490 --> 00:12:17,377 Patiesībā, ja es gribu hash tabulu, Es esmu tikai gatavojas iet, piemēram, ka 275 00:12:17,377 --> 00:12:18,460 un tur ir mana hash tabulu. 276 00:12:18,460 --> 00:12:21,555 Un tas ir piezīme, neveiksminieks, ka mēs atstājām off pēdējo reizi. 277 00:12:21,555 --> 00:12:23,930 Un jūs zināt, ko, ja es gribēju mainīgais lielums, labi, 278 00:12:23,930 --> 00:12:25,867 šis vēl nav viss kas atšķiras no C, 279 00:12:25,867 --> 00:12:27,450 bet es esmu gatavojas iet uz priekšu un darīt to. 280 00:12:27,450 --> 00:12:28,630 Un paziņojums nav datu tipu. 281 00:12:28,630 --> 00:12:31,180 Un es iešu atpakaļ vēlāk, un faktiski pievienot dažus komentārus šeit. 282 00:12:31,180 --> 00:12:32,480 Bet kas par slodzi? 283 00:12:32,480 --> 00:12:35,780 >> Ja dolāra zīmi vārdnīca ir nosaukums mana faila 284 00:12:35,780 --> 00:12:39,600 un es tiešām gribu ielādēt vārdi uz šajā tabulā tagad, 285 00:12:39,600 --> 00:12:42,360 Es patiesībā var darīt kaut kas diezgan vienkāršs. 286 00:12:42,360 --> 00:12:44,880 One-- un tas ir minorly annoying-- PHP, 287 00:12:44,880 --> 00:12:47,710 jums ir jānorāda iekšā par funkciju, ja jūs 288 00:12:47,710 --> 00:12:51,060 vēlas, lai piekļūtu dažām pasaules mainīgais, kas ir definēts ārpuses. 289 00:12:51,060 --> 00:12:53,530 >> Bet tas nav īpaši interesanti tieši tagad. 290 00:12:53,530 --> 00:12:57,920 Kas vēl interesanti ir tas, lai katrs būvēt, ka es teicu pēdējo reizi. 291 00:12:57,920 --> 00:13:01,880 Un izrādās, ka PHP ir funkcija sauc failu kuras mērķis dzīvē 292 00:13:01,880 --> 00:13:05,550 ir atvērt failu un lasīt visi tās līnijas masīvs 293 00:13:05,550 --> 00:13:06,840 un nodod tos atpakaļ. 294 00:13:06,840 --> 00:13:12,170 >> Kas ir, es varu darīt vārdnīcu tik ka tagad ir efektīvi, kad es zvanu failu, 295 00:13:12,170 --> 00:13:15,472 tas gatavojas nodot mani atpakaļ masīvs vārdus no faila. 296 00:13:15,472 --> 00:13:16,430 Tas vēl nav viss, kas labs. 297 00:13:16,430 --> 00:13:20,130 Tas joprojām būs līnija no vārdiem, kaut lineāra. 298 00:13:20,130 --> 00:13:23,880 Bet es varu iet uz priekšu un atkārtot pār katru no šiem vārdiem, izmantojot 299 00:13:23,880 --> 00:13:25,710 ka sintakse mēs redzējām īsi pēdējo reizi. 300 00:13:25,710 --> 00:13:27,940 Un jūs redzēsiet to vairāk gaidāmajā PSET. 301 00:13:27,940 --> 00:13:32,070 >> Bet tagad man ir cilpa atkārtojot pār katru vārdu vārdnīcā. 302 00:13:32,070 --> 00:13:36,100 Un katrā atkārtojumā, atceros es esmu zvanot pašreizējo vārdu "vārdu." 303 00:13:36,100 --> 00:13:39,790 Un viss, kas notiek, lai to likts uz vārdu vārdnīca ir 304 00:13:39,790 --> 00:13:43,530 būs vārds minējums "taisnība." 305 00:13:43,530 --> 00:13:44,740 Tas ir mans ievietot funkciju. 306 00:13:44,740 --> 00:13:46,661 Tas ir mans slodze funkcija manu vārdnīcu. 307 00:13:46,661 --> 00:13:49,410 Tagad tas ir mazliet apkrāptu, jo, jūs zināt, tur ir patiesībā 308 00:13:49,410 --> 00:13:52,920 slīpsvītru n s beigās vārdiem ka man būtu iespējams atbrīvoties no, 309 00:13:52,920 --> 00:13:56,380 bet tas nav problēma, jo PHP ir funkcija, ko sauc karbonāde kas burtiski 310 00:13:56,380 --> 00:13:58,480 karbonāde off vienu rakstzīmi pašās beigās. 311 00:13:58,480 --> 00:13:59,400 Līdz ar to nav problēmu tur. 312 00:13:59,400 --> 00:14:02,199 Mēs esam aizgājuši uz priekšu un faktiski saīsināts, ka tikai tas. 313 00:14:02,199 --> 00:14:05,240 Un tagad es būtu iespējams izsekot no to lieluma, tāpēc pieņemsim vismaz darīt this-- 314 00:14:05,240 --> 00:14:05,835 izmērs ++. 315 00:14:05,835 --> 00:14:07,339 Es varu darīt, ka tāpat kā agrāk. 316 00:14:07,339 --> 00:14:10,380 Un tad tas ir iespējams, gatavojas strādā tikai naudas sodu, tā ka ir atgriezties taisnība. 317 00:14:10,380 --> 00:14:10,930 Darīts. 318 00:14:10,930 --> 00:14:11,797 PSET 5. 319 00:14:11,797 --> 00:14:13,545 >> [Smiekli] 320 00:14:13,545 --> 00:14:14,420 >> DAVID J. Malan: Labi. 321 00:14:14,420 --> 00:14:16,628 Mēs darīsim to vēlreiz ar nākamo PSET, too. 322 00:14:16,628 --> 00:14:18,730 Tātad, ko par izmēru? 323 00:14:18,730 --> 00:14:22,080 Nu, tas viens cerams ir par kā jūs varētu gaidīt pēdējo reizi, 324 00:14:22,080 --> 00:14:24,460 lai gan man ir jādara šī stulba globālo lieta. 325 00:14:24,460 --> 00:14:26,610 Tas ir tikai artefakts no The Language dizains. 326 00:14:26,610 --> 00:14:28,450 >> Bet pārbaude ir nedaudz vairāk interesants. 327 00:14:28,450 --> 00:14:31,420 Tātad, ja es pieņemts dolāru paraksta vārdu, es pirmo reizi 328 00:14:31,420 --> 00:14:34,060 vēlaties, lai būtu pieejami ka globālo mainīgo tabula. 329 00:14:34,060 --> 00:14:36,700 Un tagad, ja es gribu pārbaudiet, vai vārds ir tur, 330 00:14:36,700 --> 00:14:44,350 Es varu vienkārši pateikt, vai tā ir taisnība, ka šādi ir noteikts tabulā, 331 00:14:44,350 --> 00:14:49,957 tad iet uz priekšu un atgriešanās true; cits, atgriezties viltus. 332 00:14:49,957 --> 00:14:51,180 Darīts. 333 00:14:51,180 --> 00:14:52,440 Otra puse PSET 5. 334 00:14:52,440 --> 00:14:54,540 >> Visas tiesības, tāpēc atkal, es esmu griešana dažas stūriem. 335 00:14:54,540 --> 00:14:56,831 Taisnīgumu, es būtu iespējams pavadīt dažas sekundes 336 00:14:56,831 --> 00:14:58,300 par šo īstenošanu. 337 00:14:58,300 --> 00:15:01,860 Un es, iespējams, nevajadzētu izspēles visu stundas jūs likts uz PSET tik daudz. 338 00:15:01,860 --> 00:15:04,045 Tātad strtolower ir funkcija. 339 00:15:04,045 --> 00:15:06,670 Kaut kas līdzīgs eksistenciālais C, vismaz uz burtiem, 340 00:15:06,670 --> 00:15:08,560 bet PHP dabūja veselu virkni versiju. 341 00:15:08,560 --> 00:15:11,226 >> Kas notiek, lai piespiestu visu uz mazo, kuru daži no jums 342 00:15:11,226 --> 00:15:14,944 varētu būt darīts, lai canonicalize ko jūs liekot savā vārdnīcā. 343 00:15:14,944 --> 00:15:16,360 Un tagad jūs varat darīt C, too. 344 00:15:16,360 --> 00:15:17,780 Tam nav nekāda sakara ar PHP. 345 00:15:17,780 --> 00:15:20,260 >> Bet jebkurā laikā jums ir Būla stāvoklis, 346 00:15:20,260 --> 00:15:22,680 kā kaut tiešsaistē 10 tur, kas ir tikai 347 00:15:22,680 --> 00:15:27,145 gatavojas novērtēt to patiess vai nepatiesa, un jūsu ja cits skaidri 348 00:15:27,145 --> 00:15:33,620 atgriežas patiess vai nepatiess, es varētu vienkārši tiešām padara šo sexier 349 00:15:33,620 --> 00:15:38,360 un vienkārši darīt kaut kas līdzīgs šim. 350 00:15:38,360 --> 00:15:40,500 Tāpēc, ka tur ir mana pārbaudes funkcija. 351 00:15:40,500 --> 00:15:42,560 Labi, ja Bula atgriež patiess vai nepatiess, 352 00:15:42,560 --> 00:15:44,630 pieņemsim tikai atdot to uzreiz. 353 00:15:44,630 --> 00:15:47,340 >> Un tur ir daži citi tweaks Es varētu darīt šeit un tur. 354 00:15:47,340 --> 00:15:51,380 Load-- unload, starp citu, tas ir izdarīts. 355 00:15:51,380 --> 00:15:52,850 Neko darīt tur. 356 00:15:52,850 --> 00:15:55,840 Tā kā visas atmiņas PHP un daudzās citās valodās 357 00:15:55,840 --> 00:15:57,570 ir faktiski izdevās jums. 358 00:15:57,570 --> 00:16:00,330 Tādējādi, kaut arī C, kā jūs esat iemācījušies sāpīgi, 359 00:16:00,330 --> 00:16:04,700 kaut jūs malloc vai calloc vai realloc, jums ir, lai atbrīvotu sevi. 360 00:16:04,700 --> 00:16:08,770 Viss, ko jūs fopen, jums ir fclose, tā, ka resursi tiek galu galā atbrīvoja 361 00:16:08,770 --> 00:16:11,690 un instrumenti, piemēram, Valgrind nav pamanīt un nesūdzas, 362 00:16:11,690 --> 00:16:13,570 kas ir laba lieta, lai palaistu uz tiem. 363 00:16:13,570 --> 00:16:16,190 >> Bet, protams, ir jābūt būt daži nozvejas, vai ne? 364 00:16:16,190 --> 00:16:19,400 Pretējā gadījumā mēs veida izšķērdēta viss ķekars nedēļu. 365 00:16:19,400 --> 00:16:23,270 Tātad tur ir jebkura vairāku iemeslu dēļ kāpēc mēs veida šo trajektoriju, 366 00:16:23,270 --> 00:16:24,440 bet ir kompromiss. 367 00:16:24,440 --> 00:16:25,820 Labi, tas ir bijis tematiskā. 368 00:16:25,820 --> 00:16:29,690 >> Tātad, kādi varētu kompromiss šeit pārvietojas, no C uz PHP? 369 00:16:29,690 --> 00:16:33,250 Uzskata, tāpat kā visi uzvarēt līdz šim, izņemot mazliet neglītumu šeit vai tur. 370 00:16:33,250 --> 00:16:34,040 Yeah. 371 00:16:34,040 --> 00:16:34,700 Kas tas ir? 372 00:16:34,700 --> 00:16:36,064 >> STUDENTU: [dzirdams] atmiņas. 373 00:16:36,064 --> 00:16:36,980 DAVID J. Malan: Ātrums. 374 00:16:36,980 --> 00:16:37,479 OK. 375 00:16:37,479 --> 00:16:40,720 Nu, mans ātrums bija diezgan ātri. 376 00:16:40,720 --> 00:16:42,020 Taisnība? 377 00:16:42,020 --> 00:16:44,320 Bet ātrums programmas izpildi? 378 00:16:44,320 --> 00:16:45,580 Labi, tā ka ir godīgi punkts. 379 00:16:45,580 --> 00:16:50,930 >> Lai tas notiktu, es jau iepriekš cued up gan manu izmēģināt risinājumu, viens 380 00:16:50,930 --> 00:16:53,510 Man bija uz lielā kuģa bija izmēģināt balstītu risinājumu, 381 00:16:53,510 --> 00:16:55,510 un man ir, ka šajā direktorijā šeit. 382 00:16:55,510 --> 00:16:58,510 Tāpēc es kādā brīdī, es varu iet uz priekšu un palaist šo par King James Bible, 383 00:16:58,510 --> 00:16:59,657 hitting Enter. 384 00:16:59,657 --> 00:17:01,990 Un tas ir pareizi, cerams īstenošana beigās, 385 00:17:01,990 --> 00:17:05,109 dod man laiku kopā par 0,38 sekundēm, kas 386 00:17:05,109 --> 00:17:07,270 viens nedaudz patvaļīgs piemērs. 387 00:17:07,270 --> 00:17:09,270 >> Un, ja es tagad iedziļināties šajā Otrais termināla logu 388 00:17:09,270 --> 00:17:14,569 šeit, kur es pirmo reizi atklāja gedit, ļaujiet man iet uz šodienas code-- kas, atkal, 389 00:17:14,569 --> 00:17:19,650 Tieši šajā direktorijā here-- un ļaujiet man iet uz priekšu un palaist Speller. 390 00:17:19,650 --> 00:17:23,470 Tik vienkārši, lai būtu skaidrs, tas ir PHP versija. 391 00:17:23,470 --> 00:17:25,170 Es esmu tikai parāda top to šeit. 392 00:17:25,170 --> 00:17:32,020 >> Tātad, ja man Speller par Tilde CS50 PSET 5 teksti, King James, ievadiet. 393 00:17:32,020 --> 00:17:39,700 394 00:17:39,700 --> 00:17:43,050 Tas joprojām ir ātrāks nekā rakstiski tā C, bet kopējais laiks 395 00:17:43,050 --> 00:17:47,650 ir paziņojums, 0.93, bet mans C-balstīta īstenošana bija 0,38. 396 00:17:47,650 --> 00:17:49,110 Tātad, tas nav triviāls atšķirība. 397 00:17:49,110 --> 00:17:51,100 >> Un tas ir tikai vienā failā. 398 00:17:51,100 --> 00:17:53,480 Ja tu būtu, lai palaistu divas programmas, salīdzinot ar lielo kuģa 399 00:17:53,480 --> 00:17:56,510 un ir visu ķekars izejvielas pārbaudīts, tas protams saskaitīt. 400 00:17:56,510 --> 00:18:00,310 Un, ja mēs būtu vēl lielākas datu kopas, arī tas, varētu pievienot vēl vairāk. 401 00:18:00,310 --> 00:18:04,820 Tātad, jā, maksājot zināmu cenu ātruma patiešām gadījums. 402 00:18:04,820 --> 00:18:05,470 Kas vēl? 403 00:18:05,470 --> 00:18:08,000 404 00:18:08,000 --> 00:18:08,860 Yeah? 405 00:18:08,860 --> 00:18:10,340 >> STUDENTU: Summa RAM izmantošanu. 406 00:18:10,340 --> 00:18:11,756 >> DAVID J. Malan: Summa RAM izmantošana. 407 00:18:11,756 --> 00:18:15,380 Tāpēc man nedeva vienu sekundi domāju, kad rakstu šo PHP 408 00:18:15,380 --> 00:18:17,300 versija par to, cik daudz atmiņas man bija, izmantojot. 409 00:18:17,300 --> 00:18:22,080 Es esmu pilnīgi atlikt, ka PHP sevi un kurš rakstīja šo programmu. 410 00:18:22,080 --> 00:18:24,500 Un tas varētu būt OK, Bet, ja es tiešām ļoti 411 00:18:24,500 --> 00:18:28,420 rūp saspiežot tik daudz sniegumu no manas programmas vai no manas mājas lapā 412 00:18:28,420 --> 00:18:31,150 vai arī no kāda rīka Es esmu ēka, varbūt 413 00:18:31,150 --> 00:18:33,310 PHP, protams, nav taisnība valoda. 414 00:18:33,310 --> 00:18:36,330 >> Un patiesībā, tas ir iemesls, kāpēc, lai Piemēram, daudzi web servers-- 415 00:18:36,330 --> 00:18:38,980 faktiskais programmas, kas kalpot pat web content-- 416 00:18:38,980 --> 00:18:41,810 nav uzrakstīts PHP vai Python vai Ruby. 417 00:18:41,810 --> 00:18:44,630 Tie ir rakstīti, piemēram, jūs tagad darīt ar PSET 6, 418 00:18:44,630 --> 00:18:48,120 C tā, ka jūs varat saspiest gluži sniegums no tā 419 00:18:48,120 --> 00:18:50,780 un tiešām izmantot fine-graudu kontroli pār to, kas ir 420 00:18:50,780 --> 00:18:52,980 notiek zem pārsegs un ne tikai ņemt to 421 00:18:52,980 --> 00:18:54,890 par pašsaprotamu dažiem augstāka līmeņa datu struktūras. 422 00:18:54,890 --> 00:18:58,071 >> Apsveriet, galu galā, kurš PHP īstenoti 423 00:18:58,071 --> 00:19:00,070 ka jēdziens jaucējkoda table-- tas ir faktiski vairāk 424 00:19:00,070 --> 00:19:04,260 pareizi sauc par asociatīvo array-- Vai viņš vai viņa ir kāda ideja, kāda veida 425 00:19:04,260 --> 00:19:07,090 izejvielu jūs gatavojaties būt laišana struktūrā? 426 00:19:07,090 --> 00:19:08,260 Tātad acīmredzot nav, vai ne? 427 00:19:08,260 --> 00:19:10,340 Tas ir vispārējs instruments šajā rīkkopa, kas ir 428 00:19:10,340 --> 00:19:13,430 sniedz jebkuram, kurš vēlas to izmantot, un tā, protams, tas 429 00:19:13,430 --> 00:19:17,680 nevar tikt optimizēts galu galā tieši to, ko jūs vēlaties darīt. 430 00:19:17,680 --> 00:19:21,180 >> Tā tirdzniecību offs-- izstrādes laiku varētu atšķiras, darbības var atšķirties, 431 00:19:21,180 --> 00:19:23,120 sarežģītība vai atmiņas izmantošana var atšķirties. 432 00:19:23,120 --> 00:19:24,820 Un tā, ko jūs atradīsiet arvien vairāk ir tas, ka tur ir 433 00:19:24,820 --> 00:19:26,570 būs atšķirīgs instrumenti tirdzniecībā. 434 00:19:26,570 --> 00:19:31,160 Un patiesībā par super vairākumam cilvēku gala projekti šajā klasē, 435 00:19:31,160 --> 00:19:34,360 ticiet vai nē, C nav dodas būt tiesības valoda izmantot. 436 00:19:34,360 --> 00:19:37,880 >> Un faktiski, viens no takeaways galu galā jebkurai klasei, kā šis 437 00:19:37,880 --> 00:19:40,510 ir, lai saņemtu jums domāt par, labi, ko vajadzētu jūs pull off 438 00:19:40,510 --> 00:19:42,710 plauktu, kad vēlaties atrisināt kādu problēmu. 439 00:19:42,710 --> 00:19:46,720 Un tiešām, mēs šķērsot šo tiltu vēl vairāk, jo mēs skatāmies vairākās valodās 440 00:19:46,720 --> 00:19:47,920 pat ārpus šodien. 441 00:19:47,920 --> 00:19:50,530 >> Tātad, pieņemsim pāreju tagad varbūt vairāk pazīstams konteksts 442 00:19:50,530 --> 00:19:52,480 izmantojot valodu, piemēram, PHP. 443 00:19:52,480 --> 00:19:56,720 Tas ir nedaudz kopīgs izmantot pie komandrindas, rakstot skriptus 444 00:19:56,720 --> 00:19:59,050 kā es darīju, bet tas ir daudz, daudz biežāk. 445 00:19:59,050 --> 00:20:02,350 Un tas ir paredzēts, lai tiktu izmantoti forma failus, kas parasti beidzas 446 00:20:02,350 --> 00:20:05,060 jo .php-- bet tas ir nav prerequisite-- 447 00:20:05,060 --> 00:20:07,990 ka paši radītu interneta saturu. 448 00:20:07,990 --> 00:20:11,310 >> Tāpēc ļaujiet man iet uz priekšu un atvērt dažas piemēri Es sagatavots iepriekš. 449 00:20:11,310 --> 00:20:15,100 Un tie ir faktiski sava veida taisnība stāsti, ka viens no pirmajiem lietas 450 00:20:15,100 --> 00:20:18,200 Es kādreiz darīju pats pēc apdares CS50 un varbūt, es domāju, 451 00:20:18,200 --> 00:20:21,350 Pirms CS51 gadus ir mans kaimiņiem un man bija palīdzēt 452 00:20:21,350 --> 00:20:24,320 palaist pirmkursnieks klātienes sporta programma, kura laikā, 453 00:20:24,320 --> 00:20:28,610 bija pirmkursnieks reģistrējoties dažādiem sporta aizpildot papīra gabaliņu, 454 00:20:28,610 --> 00:20:31,800 kā to dēvēja, iešana pāri pagalmam uz Wigglesworth, 455 00:20:31,800 --> 00:20:34,030 un nometot dažās Proctor durvis kritums. 456 00:20:34,030 --> 00:20:37,210 Un tad viņš vai viņa varētu iet cauri viņiem un tad faktiski rakstiet mums manuāli 457 00:20:37,210 --> 00:20:39,140 ka mums bija reģistrēti kādu sportu. 458 00:20:39,140 --> 00:20:41,166 >> Tik skaidri, iespēja uzlabošanai. 459 00:20:41,166 --> 00:20:44,040 Šajās dienās, jūs varētu vērsties tikai Google Forms, bet atpakaļ dienā, 460 00:20:44,040 --> 00:20:46,914 mums bija faktiski sasniegtu for-- šis nebija pat, ka ilgi ago-- sasniegt 461 00:20:46,914 --> 00:20:49,410 par programmēšanu valoda, kas nav PHP. 462 00:20:49,410 --> 00:20:51,200 Tajā laikā tā bija kaut kas ko sauc Perl, 463 00:20:51,200 --> 00:20:52,890 kas kopš tā laika ir izgājušas no modē. 464 00:20:52,890 --> 00:20:54,160 Bet ideja ir tāda pati. 465 00:20:54,160 --> 00:20:58,940 >> Un es būtībā apsēdās, lai mēģinātu ostas iet Perl versijas PHP, 466 00:20:58,940 --> 00:21:03,710 bet pilnībā atruna, nedeva kāds domāja uz estētiku tikai yet. 467 00:21:03,710 --> 00:21:04,960 Tātad, šeit ir mājas lapa. 468 00:21:04,960 --> 00:21:05,670 Šis ir fails. 469 00:21:05,670 --> 00:21:09,470 Ja es tuvinātu, tā acīmredzot sauc froshim0.php 470 00:21:09,470 --> 00:21:12,060 tikai tāpēc, ka tas ir mūsu pirmais piemērs šajā sērijā. 471 00:21:12,060 --> 00:21:15,970 Un paziņo, ka tas ir tas, ko, šķiet būt ļoti neglīts HTML forma, 472 00:21:15,970 --> 00:21:18,680 bet forma ir interesanta jo tas ļauj 473 00:21:18,680 --> 00:21:21,910 man sniegt lietotāja ievadi uz pārlūku. 474 00:21:21,910 --> 00:21:27,730 >> Tagad, pēdējo reizi, kad mums bija forma, kas Kam mēs iesniegt mūsu vaicājuma parametru, 475 00:21:27,730 --> 00:21:30,450 rinda parametrs kā to sauca? 476 00:21:30,450 --> 00:21:31,330 Tātad, lai Google, vai ne? 477 00:21:31,330 --> 00:21:34,090 Mēs pilnībā punted par ideju darīt kaut ko ar šo ieguldījumu. 478 00:21:34,090 --> 00:21:36,160 >> Bet šodien, mēs sākam ražot produkciju. 479 00:21:36,160 --> 00:21:39,420 Un uzvedība es esmu gatavojas, lai redzētu šeit sākotnēji ir diezgan triviāla. 480 00:21:39,420 --> 00:21:42,980 David, es ņemšu pārbaudīt pie dzimumu šeit, teiksim Matthews šeit. 481 00:21:42,980 --> 00:21:43,800 Es nebūs kapteini. 482 00:21:43,800 --> 00:21:45,410 Es esmu gatavojas klikšķi reģistru. 483 00:21:45,410 --> 00:21:50,720 Un paziņojums, ka URL ir mainīts reģistrēt-0.php, 484 00:21:50,720 --> 00:21:52,310 un tad tur ir šis neglīts teksta šeit. 485 00:21:52,310 --> 00:21:54,460 Es nesniedza domāja formatējums to. 486 00:21:54,460 --> 00:21:59,900 >> Bet kas ir interesanti ir tas, ka trīs vērtības tika acīmredzot pieņemts. 487 00:21:59,900 --> 00:22:02,960 Tas ir PHP veida līdzvērtīgs printf-- 488 00:22:02,960 --> 00:22:06,330 mēs redzēsim, ko tas īsti sauc tādā bit-- ka tikai izdrukā 489 00:22:06,330 --> 00:22:08,300 ko jūs pagājis tajā. 490 00:22:08,300 --> 00:22:11,414 Tātad tas liecina, ka šādā formā bija vismaz trīs laukus, lai to, 491 00:22:11,414 --> 00:22:12,580 un jūs redzēja mani ierakstiet tos. 492 00:22:12,580 --> 00:22:15,739 Viens no tiem bija mans vārds, viens bija dzimums, viens bija kopmītne. 493 00:22:15,739 --> 00:22:18,780 Un kapteinis nav pat saņemt nosūtīts servera, jo man nav to pārbaudīt. 494 00:22:18,780 --> 00:22:22,150 >> Tātad tas ir teikt acīmredzot, kad jūs iesniegt lietas tīmeklī, 495 00:22:22,150 --> 00:22:26,830 ne tikai tas URL dažkārt change-- dažreiz tā nav. 496 00:22:26,830 --> 00:22:30,330 Patiesībā, faila nosaukums mainīts, bet to, kas ir prom no URL 497 00:22:30,330 --> 00:22:32,861 ka mums bija redzēt pēdējo reizi ar Google. 498 00:22:32,861 --> 00:22:33,360 Yeah? 499 00:22:33,360 --> 00:22:34,380 >> STUDENTU: Nav vaicājuma virknes 500 00:22:34,380 --> 00:22:35,220 >> DAVID J. Malan: Nav vaicājuma virknes. 501 00:22:35,220 --> 00:22:37,270 Nav jautājuma zīme kaut ko. 502 00:22:37,270 --> 00:22:40,050 Nav jautājuma zīme q vienāds kaķiem, kā mēs to darījām iepriekšējā reizē. 503 00:22:40,050 --> 00:22:42,170 Un tur, protams, nav jautājuma zīme nosaukums ir vienāds 504 00:22:42,170 --> 00:22:46,310 David vai kopmītnes vienāds Matthews Tātad, ja ir tā, ka viss notiek? 505 00:22:46,310 --> 00:22:51,290 >> Nu, ļaujiet man iet atpakaļ uz gedit šeit un atvērt pirmo no šiem failiem 506 00:22:51,290 --> 00:22:57,020 manā vhost, vietējā uzņēmēja, valsts direktoriju šeit un iedziļināties froshim0. 507 00:22:57,020 --> 00:23:02,060 Tātad izrādās, ka gandrīz visas šīs lapas ir tikai HTML. 508 00:23:02,060 --> 00:23:05,410 Un tas varētu būt svešs jums, bet tas drīz būs vairāk tāpēc ar PSET 6 509 00:23:05,410 --> 00:23:07,370 un PSET 7 un PSET 8. 510 00:23:07,370 --> 00:23:09,160 Bet tas ir tikai HTML lapas. 511 00:23:09,160 --> 00:23:12,400 >> Un interesanti sīkumi šķiet, ir vairāk nekā šeit. 512 00:23:12,400 --> 00:23:16,290 Forma tag kuras rīcība atribūts vērtība ir reģistra 0. 513 00:23:16,290 --> 00:23:18,890 Tieši tāpēc, kad es iesniegt tas, tā iet uz šo failu. 514 00:23:18,890 --> 00:23:20,620 Bet metode ir atšķirīga today-- post. 515 00:23:20,620 --> 00:23:23,120 Tātad izrādās, tur ir vismaz divas metodes tīmeklī izmantotās 516 00:23:23,120 --> 00:23:24,911 nosūtīt informāciju no pārlūka uz serveri. 517 00:23:24,911 --> 00:23:25,980 Get liek to URL. 518 00:23:25,980 --> 00:23:27,950 Post liek citur. 519 00:23:27,950 --> 00:23:30,570 Un, kad un kāpēc varētu jums tiešām vēlas mājas 520 00:23:30,570 --> 00:23:34,110 izmantot post tad tā vietā no get, tikai intuitīvi? 521 00:23:34,110 --> 00:23:37,080 Jebkurā mājas lapā. 522 00:23:37,080 --> 00:23:42,010 Kāda veida dati būtu jānodod tikai ar secinājumu tagad pa pastu, nevis 523 00:23:42,010 --> 00:23:45,184 saņemt, ja mēs esam redzējuši divi atšķirības? 524 00:23:45,184 --> 00:23:46,350 STUDENTU: [dzirdams] droša. 525 00:23:46,350 --> 00:23:47,790 DAVID J. Malan: Ja jūs vēlaties kaut kas ir droša. 526 00:23:47,790 --> 00:23:50,360 Lai jūs varētu ierakstīt paroli uz tīmekļa vietni, kredītkartes 527 00:23:50,360 --> 00:23:53,030 uz mājas lapā būtu veida šiem neoptimāla 528 00:23:53,030 --> 00:23:56,220 ja pārlūks nodot, ka vērtība iekšpusē URL. 529 00:23:56,220 --> 00:23:57,680 Kāpēc? 530 00:23:57,680 --> 00:24:00,059 Jūs redzat to, kas nav šķiet, ir tik liels galā, 531 00:24:00,059 --> 00:24:03,350 bet izredzes ir jūs diezgan bieži staigāt prom no datora vai izmantot datoru 532 00:24:03,350 --> 00:24:05,310 labs, un lai kāds cits vai pat kaimiņiem 533 00:24:05,310 --> 00:24:08,220 varētu viegli staigāt uz augšu un redzēt ka privāto informāciju. 534 00:24:08,220 --> 00:24:10,220 Kad jūs sūtīt e-pastu caur web, jūs, iespējams, 535 00:24:10,220 --> 00:24:12,350 negribu, ka datu beigas atbalstīts URL, kā arī. 536 00:24:12,350 --> 00:24:15,266 Un tā tur ir jebkura vairāku iemeslu dēļ kāpēc mēs varētu vēlēties, lai to šeit. 537 00:24:15,266 --> 00:24:18,610 Un photos-- labi, es nevaru pat gluži iedomāties, kā jūs varētu veikt grafiku, 538 00:24:18,610 --> 00:24:21,480 piemēram, JPEG, un nodot to URL. 539 00:24:21,480 --> 00:24:22,330 Jūs varētu darīt to. 540 00:24:22,330 --> 00:24:25,840 Ir veidi, kā kodēšanas to, bet tas ir tāpat nav vienkārši tāpat. 541 00:24:25,840 --> 00:24:29,030 >> Lai reģistrētos 0 faktiski ļoti underwhelming. 542 00:24:29,030 --> 00:24:31,610 Visi tā saka, burtiski tas ir. 543 00:24:31,610 --> 00:24:35,910 Tā izdrukā iekšpusē dažu HTML tagus sekojošo. 544 00:24:35,910 --> 00:24:38,640 Man PHP tagu šeit ligzdot iekšpusē iepriekš tag. 545 00:24:38,640 --> 00:24:42,300 "Pre" tikai nozīmē iepriekš formatētu tekstu, mono-izvietoti, piemēram, rakstāmmašīnu. 546 00:24:42,300 --> 00:24:44,836 >> Printr ir drukas rekursīvs funkciju. 547 00:24:44,836 --> 00:24:46,710 Un tad tur ir šis interesanta lieta šeit. 548 00:24:46,710 --> 00:24:48,835 Un mēs atgriezīsimies pie šī jo tur ir citi, 549 00:24:48,835 --> 00:24:51,140 bet dolāra zīmi pasvītrojums post šķiet 550 00:24:51,140 --> 00:24:56,110 mainīgais PHP, kurā kaut kas sūtāt no pārlūka uz serveri 551 00:24:56,110 --> 00:24:58,040 izpaužas uzglabā jums. 552 00:24:58,040 --> 00:25:00,930 Un mēs redzēsim, kā nokļūt pie šī informācija pirms ilgi. 553 00:25:00,930 --> 00:25:04,000 >> Bet vispirms, iesim atpakaļ uz Nedaudz atšķirīgs piemērs. 554 00:25:04,000 --> 00:25:09,050 Nonākšana register-- vai drīzāk, froshims1.php, 555 00:25:09,050 --> 00:25:10,470 kas izskatās nedaudz atšķiras. 556 00:25:10,470 --> 00:25:12,670 Paņēmu nedaudz vairāk pūles ar formatējumu, 557 00:25:12,670 --> 00:25:14,370 pat ja tas joprojām ir diezgan neglīts. 558 00:25:14,370 --> 00:25:16,990 Bet es esmu gatavojas iet uz priekšu un ierakstiet "David" tagad. 559 00:25:16,990 --> 00:25:17,850 Vīrietis. 560 00:25:17,850 --> 00:25:19,360 Mēs pārbaudīt "Captain" šoreiz. 561 00:25:19,360 --> 00:25:20,660 Mēs darīsim Matthews. 562 00:25:20,660 --> 00:25:22,430 Un reģistrēt. 563 00:25:22,430 --> 00:25:24,110 >> Un šoreiz tā saka, hm, nav īsti. 564 00:25:24,110 --> 00:25:26,180 Labi, lai to, ko reģistra 1? 565 00:25:26,180 --> 00:25:30,509 Ļaujiet man iet uz atklātos reģistros 1 and-- hm. 566 00:25:30,509 --> 00:25:32,300 Visas tiesības, tāpēc tas ir interesanti, un šī 567 00:25:32,300 --> 00:25:34,880 ir pakāpiens tagad virzienā vairāk interesantas programmas. 568 00:25:34,880 --> 00:25:38,970 >> Ievērojiet augšā šis fails ir PHP tagu kā arī daži komentāri. 569 00:25:38,970 --> 00:25:42,590 Un tie ir, tagad, novērst uzmanību tāpēc pieņemsim tikai atbrīvoties no šiem komentāriem 570 00:25:42,590 --> 00:25:47,070 tāpat kā viņi ir C. Un es apgalvot ar šo rieciens kodu ar piebildi 571 00:25:47,070 --> 00:25:49,280 ka šis kods ir iesniegumu apstiprināšanu. 572 00:25:49,280 --> 00:25:51,690 >> Nu, izrādās, ka mainīgie, piemēram, dolāra zīmi 573 00:25:51,690 --> 00:25:53,739 uzsvērtu amatu ir sauc par super Globālie. 574 00:25:53,739 --> 00:25:55,530 Viņi, piemēram, šo īpašas globālie mainīgie 575 00:25:55,530 --> 00:25:58,840 ka ir tikai Omni-pašlaik pieejami jūsu programmā. 576 00:25:58,840 --> 00:26:03,870 Un jūs varat izmantot kvadrātiekavas notācija indeksēt uz tiem nav, izmantojot skaitļus 577 00:26:03,870 --> 00:26:07,460 piemēram, 0, 1, 2, 3, bet faktiskie vārdi. 578 00:26:07,460 --> 00:26:12,100 >> Tātad jūs varat iedomāties dolāra zīmi uzsvērtu amatu veida hash tabulas 579 00:26:12,100 --> 00:26:15,920 ka jūs varētu iet atslēgu, lookup vārds, starp kvadrātiekavās, 580 00:26:15,920 --> 00:26:19,370 un tas notiek, lai dotu jums atpakaļ vērtība, lietotājs faktiski sniegti. 581 00:26:19,370 --> 00:26:21,210 PHP ir funkcija sauc tukšs, ka tikai 582 00:26:21,210 --> 00:26:23,720 saka, jā vai nē, šis mainīgais ir tukšs vai nav. 583 00:26:23,720 --> 00:26:27,250 Mums ir šie dubultā bāri, kas nozīmē tikai to, vai, tāpat kā C. 584 00:26:27,250 --> 00:26:31,740 >> Tātad faktiski, šī līnija 4 ir tikai sakot, ja lietotājs nav dot nosaukumu 585 00:26:31,740 --> 00:26:36,540 vai nedeva dzimums vai nebija dot kopmītnes, iet uz priekšu un novirzīt viņu 586 00:26:36,540 --> 00:26:38,184 vai viņas pa šo līniju šeit. 587 00:26:38,184 --> 00:26:40,600 Tātad tas ir mazliet noslēpumains, bet tas tikai nozīmē, burtiski 588 00:26:40,600 --> 00:26:43,330 doties atpakaļ uz šo vietu, tāpēc Punts lietotājam 589 00:26:43,330 --> 00:26:45,420 atpakaļ, lai kur viņš vai viņa nāca no. 590 00:26:45,420 --> 00:26:47,880 Bet tas ir mazliet neelegants jo es cītīgi kodē to. 591 00:26:47,880 --> 00:26:52,150 >> Bet ko tad, ja šis nosacījums nevērtē kā patiess? 592 00:26:52,150 --> 00:26:55,790 Ko darīt, ja lietotājs bija man viņa vai viņas vārds un kopmītnes un dzimums? 593 00:26:55,790 --> 00:26:58,540 Ka, ja nosacījums nav gatavojas novērtēt uz true, 594 00:26:58,540 --> 00:27:00,650 tāpēc man nav hit izeju rindā 7. 595 00:27:00,650 --> 00:27:01,680 Tātad, kas notiek? 596 00:27:01,680 --> 00:27:03,880 Un tas ir tas, kas ir interesanti par PHP. 597 00:27:03,880 --> 00:27:07,470 >> Jūs varat piliens uz un no PHP režīma, lai runāt. 598 00:27:07,470 --> 00:27:10,985 Ja jūs vēlaties kādu kodu izpildīt, Jūs varat atvērt un aizvērt PHP tagu 599 00:27:10,985 --> 00:27:13,010 un nodot kodu, tur, piemēram, es esmu darījusi šeit. 600 00:27:13,010 --> 00:27:16,810 Tiklīdz jūs aizvērt PHP tagu, serveris 601 00:27:16,810 --> 00:27:19,407 ir tikai gatavojas izspļaut ko jūs likts tur. 602 00:27:19,407 --> 00:27:21,740 Un tiešām, tas bija daļa no oriģināls dizains PHP, 603 00:27:21,740 --> 00:27:25,280 lai labāk sliktāk, bija šī sajaukšanos kodu un atzīmes 604 00:27:25,280 --> 00:27:25,920 valoda. 605 00:27:25,920 --> 00:27:28,670 Un mēs redzam, ka tas ir ļoti ātri devolves haosā. 606 00:27:28,670 --> 00:27:31,280 Un tā mēs darīsim labāk nekā Tas galu galā, bet tikai 607 00:27:31,280 --> 00:27:35,620 pamanīt vieglumu, ar kuru es esmu patiešām spēj izpildīt kādu loģiku. 608 00:27:35,620 --> 00:27:37,440 >> Bet tomēr mazliet underwhelming. 609 00:27:37,440 --> 00:27:41,210 Atvērsim up versiju divi Frosh IP, kas 610 00:27:41,210 --> 00:27:44,270 acīmredzot iesniedz register2.php. 611 00:27:44,270 --> 00:27:47,600 Tātad šis fails patiesībā notiek izskatās gandrīz vienādi. 612 00:27:47,600 --> 00:27:50,780 Es iešu uz Frosh IP 2. 613 00:27:50,780 --> 00:27:53,050 Bet Frosh IP 2, pieņemsim redzēt, kas notiek. 614 00:27:53,050 --> 00:27:58,110 >> David, noklikšķiniet uz pogas, kā tā sauc; Matthews, ne kapteini. 615 00:27:58,110 --> 00:27:59,230 Reģistrēties. 616 00:27:59,230 --> 00:28:00,130 Esat reģistrējies. 617 00:28:00,130 --> 00:28:00,700 Nav īsti. 618 00:28:00,700 --> 00:28:02,574 Oh wait, mēs tikko izdarījām šis piemērs, nebija ne mēs? 619 00:28:02,574 --> 00:28:04,520 Visas tiesības, stāvēt. 620 00:28:04,520 --> 00:28:06,602 Mēs darīsim to trīs. 621 00:28:06,602 --> 00:28:08,560 Skaidrs kaut ko ir par notikt ar Gmail. 622 00:28:08,560 --> 00:28:09,600 Mēs tur nokļūt. 623 00:28:09,600 --> 00:28:11,900 >> Tātad Frosh IP 3 izskatās šādi. 624 00:28:11,900 --> 00:28:13,050 Neatšķiras. 625 00:28:13,050 --> 00:28:19,850 Bet, kad man David, vīrietis, Matthews, un reģistru, šo trešo un galīgo versiju 626 00:28:19,850 --> 00:28:22,230 prasības, gluži vienkārši, jums tiek reģistrēti tiešām. 627 00:28:22,230 --> 00:28:23,560 Tas ir sava veida nebūtiska. 628 00:28:23,560 --> 00:28:25,600 Bet es varu pieprasīt ar šo Trešais un pēdējais variants 629 00:28:25,600 --> 00:28:30,610 Man tagad ir pārbūvēts tieši to my istabas biedrs un es būvētas Frosh IP 630 00:28:30,610 --> 00:28:31,731 programmas gadiem. 631 00:28:31,731 --> 00:28:32,480 Un tas bija vienkārši. 632 00:28:32,480 --> 00:28:34,330 Nebija datu bāzes, nē Excel izklājlapu. 633 00:28:34,330 --> 00:28:36,450 Bet vēl svarīgāk, vairs nebija papīra 634 00:28:36,450 --> 00:28:42,520 jo tas, ko mēs izdarījām ar šo programmu bija tiešām e-pastu Proctor, kurš 635 00:28:42,520 --> 00:28:44,530 bija iepriekš saņemot šīs lietas caur formām. 636 00:28:44,530 --> 00:28:48,890 >> Un acīmredzot mēs esam ieprogrammēts tas tādā veidā, ka tad, kad kāds reģistrē, 637 00:28:48,890 --> 00:28:52,470 John Harvard kontā e-pastus proctor-- vai pats šajā gadījumā, 638 00:28:52,470 --> 00:28:55,960 Jānis Harvard-- ar šādiem text-- "Šis cilvēks vienkārši reģistrēta." 639 00:28:55,960 --> 00:29:00,560 Vārds ir David, kapteinis ir tukšs; dzimums, vīrietis; un kopmītnes, Matthews. 640 00:29:00,560 --> 00:29:01,560 >> Tātad, kas tur notika? 641 00:29:01,560 --> 00:29:05,360 Nu, failu jautājumu šeit acīmredzot register3.php. 642 00:29:05,360 --> 00:29:09,080 Un, ja es atvērtu šo, jūs redzēsiet gan jauda kodu kā šis 643 00:29:09,080 --> 00:29:12,380 un arī, godīgi sakot, nedrošība ir, piemēram, e-pasta sistēmu. 644 00:29:12,380 --> 00:29:16,290 Es tikko efektīvi izlikās būt John Harvard šādā veidā. 645 00:29:16,290 --> 00:29:20,920 >> Man ir atvērta php tagu up top, kas vienkārši saka šeit nāk daži PHP kodu. 646 00:29:20,920 --> 00:29:23,155 Šeit lejā, izrādās tur ir bibliotēkas PHP. 647 00:29:23,155 --> 00:29:26,410 Jums vienkārši nav nepieciešams ietver header failus, kā daudz. 648 00:29:26,410 --> 00:29:28,900 Jūs saņemsiet vairāk ar virtuves izlietne, lai runāt. 649 00:29:28,900 --> 00:29:31,820 >> Bet šoreiz 4. līniju, man vēlas īpašu bibliotēku sauc 650 00:29:31,820 --> 00:29:36,087 PHP mailer, kas ir kaut kas jums var instalēt bez maksas daudzās sistēmās. 651 00:29:36,087 --> 00:29:37,920 Leju šeit es esmu apstiprināšanu iesniegšana tikko 652 00:29:37,920 --> 00:29:40,540 pārbaudot nebija lietotājs dot man vārds, dzimums, un kopmītnes. 653 00:29:40,540 --> 00:29:44,130 Un, ja tā, tad iet uz priekšu un instantiate mailer. 654 00:29:44,130 --> 00:29:47,020 >> Jūs varat domāt par to kā ir rindiņu kodu, kas vienkārši piešķir līdzekļus. 655 00:29:47,020 --> 00:29:48,950 Tas ir tāpat kā malloc, bet tas ir mazliet sexier 656 00:29:48,950 --> 00:29:51,790 ka jūs pieminēt ne tikai malloc un dažas vispārīgas numurs. 657 00:29:51,790 --> 00:29:55,030 Jūs sakāt, iedodiet man vienu no tiem, dod man jaunu vienu no šiem. 658 00:29:55,030 --> 00:29:57,950 >> Un, ja jūs esat programmē Java vai C ++, vai citas valodas, 659 00:29:57,950 --> 00:29:59,130 Jums varētu būt redzējis šo. 660 00:29:59,130 --> 00:30:01,840 Bet pietrūkst to, ja svešs, šī līnija 661 00:30:01,840 --> 00:30:05,410 laiž dolāra zīmi pastu īpašu struct sauc 662 00:30:05,410 --> 00:30:08,731 objekts, kas ir iebūvēts e-pasta funkcionalitāte. 663 00:30:08,731 --> 00:30:10,355 Un patiesībā, pamanīt un līdzīga sintakse. 664 00:30:10,355 --> 00:30:11,900 >> Tas nav rādītājs, per se. 665 00:30:11,900 --> 00:30:13,990 PHP vienkārši izmanto to pašu sintaksi. 666 00:30:13,990 --> 00:30:17,660 Šī līnija saka izmantošanu SMTP-- Simple Mail Transfer 667 00:30:17,660 --> 00:30:20,900 Protokols, kas ir tikai protokols, ko izmanto, lai nosūtītu pastu. 668 00:30:20,900 --> 00:30:24,240 Tas ir norādot izmantošanu Harvard SMTP serveris, kas 669 00:30:24,240 --> 00:30:25,830 ir kaut kur šeit pilsētiņā. 670 00:30:25,830 --> 00:30:28,480 >> To sakot, tas, ko TCP porta numuru runāt, 671 00:30:28,480 --> 00:30:31,650 un es tikko sapratu, ka veic googling vai uzdodot palīdzības dienestu. 672 00:30:31,650 --> 00:30:34,640 Un tad tāpēc Harvard izmanto dažus sistēmas drošību uz pasta server-- 673 00:30:34,640 --> 00:30:37,060 vismaz, lai šifrētu satiksme starp jums un to, 674 00:30:37,060 --> 00:30:41,380 kaut gan ikviens var nosūtīt it-- Es esmu gatavojas, lai ieslēgtu TLS protokolu 675 00:30:41,380 --> 00:30:42,710 saglabāt to droša. 676 00:30:42,710 --> 00:30:44,730 >> Bet tas ir, ja lietas get nedaudz biedējošu. 677 00:30:44,730 --> 00:30:47,970 Es varu tikai patvaļīgi teikt, ka es esmu jharvard, 678 00:30:47,970 --> 00:30:51,930 un es varu tikai patvaļīgi rakstiet sevi šeit. 679 00:30:51,930 --> 00:30:55,650 Un tad es varu norādīt priekšmets ar šo līniju šeit. 680 00:30:55,650 --> 00:30:58,460 >> Un tas tikai izskatās neglīts, bet tas ir tikai ķekars konkatenācija. 681 00:30:58,460 --> 00:31:04,480 Izrādās, PHP ir super noderīgu simbolu, piemēram, dažās valodās, dot operators, 682 00:31:04,480 --> 00:31:07,340 kas tikai burtiski concatenates stīgu pēc virknes pēc virknes, 683 00:31:07,340 --> 00:31:09,810 un jums nav malloc vai skaitlis ārā kopgarumā virkni. 684 00:31:09,810 --> 00:31:10,820 Jūs vienkārši darīt to. 685 00:31:10,820 --> 00:31:15,220 Un tiešām, jo ​​es esmu concatenating jo visas šīs lietas ar šiem punktiem, 686 00:31:15,220 --> 00:31:18,330 tas ir iemesls, kāpēc e-pastu man nosūtīts izskatījās kā tas notika. 687 00:31:18,330 --> 00:31:20,610 >> Un tad visbeidzot šeit, es esmu nosūtot pastu. 688 00:31:20,610 --> 00:31:22,580 Tātad, ja tas ir nepatiess, Es esmu tikai gatavojas mirt, 689 00:31:22,580 --> 00:31:25,680 kas ir funkcija, kas tikai izdrukas uz ekrāna dažas kļūdas ziņojumu. 690 00:31:25,680 --> 00:31:29,170 Bet tas ir, faktiski, zvanot sūtīšanas funkciju. 691 00:31:29,170 --> 00:31:31,780 Pretējā gadījumā, ja tas viss neizdodas, tas novirza mani atpakaļ šeit. 692 00:31:31,780 --> 00:31:34,050 >> Un kāpēc es redzu, ka Es esmu reģistrēts tiešām? 693 00:31:34,050 --> 00:31:36,110 Nu, tas notika tieši šeit. 694 00:31:36,110 --> 00:31:38,170 Tāpēc es celt šo up pāris iemeslu dēļ. 695 00:31:38,170 --> 00:31:41,542 >> Viens, tas ir tieši tā, kā tad, ja jūs veidot kādu mājas lapu par galīgo projektu 696 00:31:41,542 --> 00:31:44,000 vai reālajā pasaulē, tas ir kā nosūtīt e-pasta atgādinājumus 697 00:31:44,000 --> 00:31:45,924 lai jūsu klientiem vai jūsu abonentiem. 698 00:31:45,924 --> 00:31:47,590 Tas ir, kā jūs sūtīt paroli atgādinājumus. 699 00:31:47,590 --> 00:31:50,760 Tas ir, kā jūs sūtīt cilvēkus ziņas ka tie ir jauns Facebook 700 00:31:50,760 --> 00:31:52,990 ziņa gaidot vai kaut kas tamlīdzīgs. 701 00:31:52,990 --> 00:31:55,010 >> Bet tas arī runā Fakts, ka tas varētu 702 00:31:55,010 --> 00:31:58,160 ir bijuši ļoti labi no Davin vai kāds cits. 703 00:31:58,160 --> 00:32:00,567 Un es saku veida ar smaidu, jo es esmu 704 00:32:00,567 --> 00:32:03,400 pilnīgi pārliecināts par to, kas iet cauri vairākas no jūsu prātos šajā brīdī. 705 00:32:03,400 --> 00:32:11,910 Bet šis ir viens no tiem darīt, kā I saka, nevis kā man veida lietas, 706 00:32:11,910 --> 00:32:14,480 jo tas ir niecīgs, lai veidot e-pastus, kā šis. 707 00:32:14,480 --> 00:32:16,480 Bet kā jums var būt redzējis vai lasīt Crimson, 708 00:32:16,480 --> 00:32:18,271 par vēlu, tas ir arī diezgan triviāla cilvēkiem 709 00:32:18,271 --> 00:32:20,050 izsekot to atpakaļ uz kādu izcelsmi. 710 00:32:20,050 --> 00:32:23,790 Un uzdot man kādu laiku, varbūt pie CS50 pusdienām, kā es pirmo reizi 711 00:32:23,790 --> 00:32:27,080 iepazinās ļoti cieši gandrīz uz ed valdes daudzus gadus 712 00:32:27,080 --> 00:32:30,890 atpakaļ, kad es atklāju kā internets strādāja. 713 00:32:30,890 --> 00:32:36,940 Tātad jebkurš case-- nedaudz pēc ed kuģa izdarīja. 714 00:32:36,940 --> 00:32:42,300 >> Tātad, jebkurā gadījumā, ir viss ķekars super Globālie, 715 00:32:42,300 --> 00:32:45,960 kā viņi sauc šeit, no kuriem viens mēs saw-- dolāra zīmi pasvītrojuma amatu. 716 00:32:45,960 --> 00:32:49,530 Tur kolēģi sauc get, kas ir, ja sīkumi no URL 717 00:32:49,530 --> 00:32:50,690 nonāks iet. 718 00:32:50,690 --> 00:32:54,051 Un tur ir viss ķekars citiem, too-- sesija un servera un cookie. 719 00:32:54,051 --> 00:32:55,800 Mēs atgriezties cookie kādu citu laiku, 720 00:32:55,800 --> 00:33:01,340 bet sesija ir veida atdzist jo tieši now-- līdz now-- 721 00:33:01,340 --> 00:33:06,350 viss, ko mēs esam darījuši ar interneta pārlūku ir sava veida bezvalstnieks, lai runāt. 722 00:33:06,350 --> 00:33:10,060 Es varu noklikšķiniet uz apkārt, piekļuve failus uz servera, kaut 723 00:33:10,060 --> 00:33:13,500 notiek uz ekrāna, bet tad savienojums aizveras. 724 00:33:13,500 --> 00:33:17,450 Internet Explorer vai Firefox ikona apstājas vērpšana 725 00:33:17,450 --> 00:33:20,340 un jūs vienkārši redzēt, ko ka Web lapa satur. 726 00:33:20,340 --> 00:33:23,530 >> Tātad HTTP ir bezvalstnieks, jo tiklīdz tas padara savienojumu, 727 00:33:23,530 --> 00:33:25,050 izpaužas daži dati, tas arī viss. 728 00:33:25,050 --> 00:33:29,940 Ne vairāk pieslēgums, atšķirībā no Skype, atšķirībā FaceTime, atšķirībā GChat, kas 729 00:33:29,940 --> 00:33:32,180 uztur nemainīgu savienojums ar serveri. 730 00:33:32,180 --> 00:33:34,650 Web ir fundamentāli atvienots, lai gan mēs 731 00:33:34,650 --> 00:33:36,630 redzēt, pirms ilgi, cik mēs varam simulēt lietas 732 00:33:36,630 --> 00:33:39,300 piemēram, Facebook tērzēšana un GChat, kas uztur illusion-- 733 00:33:39,300 --> 00:33:41,680 vai faktiski darīt saglabāt konstante savienojums, izmantojot 734 00:33:41,680 --> 00:33:43,270 vairāk modernās tehnoloģijas. 735 00:33:43,270 --> 00:33:49,000 >> Bet, ja es eju uz, teiksim, counter.php, šis ir vēl viens vienkāršs piemērs, 736 00:33:49,000 --> 00:33:52,700 kā mēs redzēsim, ka patlaban domā Es apmeklēju vietnes nulles laiku. 737 00:33:52,700 --> 00:33:56,790 Bet, ja es vienkārši pārlādēt lapu, tas kaut kā zina, ka es biju šeit iepriekš. 738 00:33:56,790 --> 00:33:58,840 Ja es pārlādēt atkal, to zina, ka es biju šeit iepriekš. 739 00:33:58,840 --> 00:34:01,100 Un atkal un atkal un atkal un atkal. 740 00:34:01,100 --> 00:34:03,610 >> Tātad tur ir daži plus plussing notiek, bet paziņojums 741 00:34:03,610 --> 00:34:07,090 maz lieta griežas kādreiz tik īsi augšu augšu, un tad atvieno, 742 00:34:07,090 --> 00:34:11,179 tāpēc tas nav, piemēram, man ir konstants savienojums ar manu ierīci. 743 00:34:11,179 --> 00:34:16,929 Nu, ja es iedziļināties counter.php, pamanīt, cik vienkārši tas ir. 744 00:34:16,929 --> 00:34:19,080 Es pirmo reizi aicinu šo īpašo funkcija, ka mēs drīz 745 00:34:19,080 --> 00:34:21,513 sākt lietot par pašsaprotamu sauc sesija sākums. 746 00:34:21,513 --> 00:34:22,179 Sākt sesiju. 747 00:34:22,179 --> 00:34:25,095 >> Un sesija turpmāk ir tikai būs spainis, piemēram, iepirkšanās 748 00:34:25,095 --> 00:34:28,120 grozs, kurā jūs varat ievietot vērtības un veida uzticas kā programmētājs 749 00:34:28,120 --> 00:34:31,590 ka viņi būs šeit, kad lietotājs nāk back-- otru 750 00:34:31,590 --> 00:34:35,670 vēlāk, stundu vēlāk, pat gadu vēlāk, tik ilgi, kamēr viņš vai viņa nav skaidrs 751 00:34:35,670 --> 00:34:37,602 viņu cepumi, kā mēs galu galā redzēt. 752 00:34:37,602 --> 00:34:39,310 Un tagad man vienkārši ir ja stāvoklis šeit. 753 00:34:39,310 --> 00:34:44,679 Tātad, ja šādu atslēgu, sauc skaitītājs, ir kas iekšā 754 00:34:44,679 --> 00:34:49,210 Šī super global-- šo hash galds, ja jūs will-- sauc sesiju, 755 00:34:49,210 --> 00:34:53,350 tad iet uz priekšu un paķert vērtība no session-- domā 756 00:34:53,350 --> 00:34:55,250 par to kā iepirkšanās cart-- un uzglabāt to 757 00:34:55,250 --> 00:34:57,680 ar pagaidu mainīgo sauc skaitītājs. 758 00:34:57,680 --> 00:35:02,240 >> Pretējā gadījumā, ja šī vērtība skaitītājs bija nav noteikts tā saucamo iepirkumu grozā, 759 00:35:02,240 --> 00:35:04,430 vienkārši inicializēt to 0. 760 00:35:04,430 --> 00:35:09,830 Visbeidzot, uz leju šeit, iet un nodot atpakaļ vērā iepirkšanās ratiņi vai sesijas 761 00:35:09,830 --> 00:35:13,000 vērtība counter +1. 762 00:35:13,000 --> 00:35:16,730 Tātad izrādās, ka šis īpašs konteiners here-- 763 00:35:16,730 --> 00:35:20,355 kas, atkal, ir viens no tiem saistītie bloki, masīvs, ka jūs varat indekss 764 00:35:20,355 --> 00:35:25,010 vārdos, nevis numbers-- saglabājas arī pēc tam, kad lietotājs iet prom. 765 00:35:25,010 --> 00:35:26,510 Atkal, es iešu atpakaļ uz lapu tagad. 766 00:35:26,510 --> 00:35:28,400 Tas ir bijis minūti, vai arī tā. 767 00:35:28,400 --> 00:35:31,300 Bet tas atceras, ka es esmu šeit bijis 19 reizes pirms tam. 768 00:35:31,300 --> 00:35:32,740 Šis ir mans 20. vizīte. 769 00:35:32,740 --> 00:35:36,560 >> Un tā tas būs galvenais Īstenojot jebkuru mājas lapā, kas atceras 770 00:35:36,560 --> 00:35:40,640 ka jūs esat pieteicies, ka jūs likts kaut burtisks jūsu iepirkumu grozā 771 00:35:40,640 --> 00:35:43,902 pirkt vai ka jums ir dažas ziņojumu skaits gaidot. 772 00:35:43,902 --> 00:35:45,610 Anytime vēlaties atcerēties informāciju, 773 00:35:45,610 --> 00:35:48,130 mēs redzēsim, ka PHP, piemēram, vairākas citas valodas, 774 00:35:48,130 --> 00:35:53,640 nodrošina mūs ar šo ilūziju par valsts kaut gan, kā jūs redzēsiet PSET 6, 775 00:35:53,640 --> 00:35:57,642 kā jūs gūstat HTTP pieprasījumus no klienta uz serveri, tas arī viss. 776 00:35:57,642 --> 00:35:59,850 Tiklīdz jūs saņemsiet atpakaļ, ka reakcija, tur nekas vairāk 777 00:35:59,850 --> 00:36:01,790 atgriežoties no servera pēc noklusējuma. 778 00:36:01,790 --> 00:36:03,820 Bet mēs redzēsim, kā strādāt ap to. 779 00:36:03,820 --> 00:36:07,430 >> Nu tagad, pamēģināsim sakopt šo augšu mazliet. 780 00:36:07,430 --> 00:36:09,470 Mēs esam redzējuši dažus dažādi piemēri tur. 781 00:36:09,470 --> 00:36:12,250 Ak, un kā malā, lai tie pazīstami vai svešs, 782 00:36:12,250 --> 00:36:14,230 iemesla dēļ, ka Frosh IP piemērs gāja 783 00:36:14,230 --> 00:36:18,060 no meklē patiešām neglīts slightly-- labi, 784 00:36:18,060 --> 00:36:23,160 joprojām ugly-- nedaudz mazāk neglīts kaut arī joprojām neglīts 785 00:36:23,160 --> 00:36:25,230 ir tāpēc, ka, ja mēs skatāmies avota kodu šeit 786 00:36:25,230 --> 00:36:28,240 izrādās, ka man ir šī pašā augšā faila. 787 00:36:28,240 --> 00:36:32,570 >> Izrādās, ka sāknēšanas ir viens no daudziem brīvi pieejama bibliotēkās, kas tur 788 00:36:32,570 --> 00:36:37,140 ka pastāv ne programmēšanas valodām vienmēr, bet CSS vai JavaScript 789 00:36:37,140 --> 00:36:39,190 vai HTML vai kādu valodu skaits. 790 00:36:39,190 --> 00:36:42,160 >> Un šie ļaudis here-- sākotnēji iznāca 791 00:36:42,160 --> 00:36:44,730 no Twitter-- vienkārši ir viss ķekars stilu. 792 00:36:44,730 --> 00:36:47,360 Tas ir masveida failu šeit ka kāds rakstīja, 793 00:36:47,360 --> 00:36:51,020 vai kāds ir rakstījis, laika gaitā, ka precizēts, krāsas un formatējumu 794 00:36:51,020 --> 00:36:53,740 un plauktiņš tā, ka es varu veida aizņemties to sintakse 795 00:36:53,740 --> 00:36:56,157 un nav izdomāt Kā nolikt savu formu. 796 00:36:56,157 --> 00:36:57,990 Tas ir arī minified tā, ka dators var 797 00:36:57,990 --> 00:37:00,560 saprotu, bet ne vienmēr ir cilvēks. 798 00:37:00,560 --> 00:37:03,050 Tātad tas ir tikai tāpēc stilizācija tur mainījies. 799 00:37:03,050 --> 00:37:05,450 >> Bet pieņemsim tagad darīt labāk attiecībā uz dizainu, 800 00:37:05,450 --> 00:37:07,490 jo, ja mēs paliktu uz leju šis ceļš ir pārāk garš, 801 00:37:07,490 --> 00:37:11,290 Mūsu kods gatavojas iegūt netīrs un Mesjē. 802 00:37:11,290 --> 00:37:13,040 Tātad, pieņemsim koncentrēties uz šiem piemēriem šeit. 803 00:37:13,040 --> 00:37:15,090 Pēdējais šodien. 804 00:37:15,090 --> 00:37:18,720 >> Tātad, šeit ir super vienkāršs no CS50 tīmekļa versija 1.0. 805 00:37:18,720 --> 00:37:21,250 Tas ir tikai saites uz lekcijas un mācību programma, 806 00:37:21,250 --> 00:37:25,490 un tas ir, izmantojot šo nesakārtotu sarakstu tag-- LU tagu, ka mēs izmantojām pēdējo reizi. 807 00:37:25,490 --> 00:37:28,800 Un, ja patiesībā, ja es atvērt Skatīt lapas avotu, 808 00:37:28,800 --> 00:37:31,710 jūs redzēsiet, ka tas ir tiešām, tiešām vienkārši HTML. 809 00:37:31,710 --> 00:37:35,460 Un patiesībā, pat ja tas ir PHP failu zem motora pārsega, 810 00:37:35,460 --> 00:37:38,620 tas joprojām ir tikai spļaut veikt tikai HTML tagad. 811 00:37:38,620 --> 00:37:41,312 >> Tātad, ja es noklikšķiniet uz lekcijām, mēs redzam, tas notiek. 812 00:37:41,312 --> 00:37:43,020 Un, ja es noklikšķiniet uz nedēļu nulle, mēs redzam. 813 00:37:43,020 --> 00:37:44,920 Un, ja es noklikšķiniet uz Trešdiena, mēs redzam. 814 00:37:44,920 --> 00:37:47,900 Un tas acīmredzot bija PDF no slaidiem no šīs dienas. 815 00:37:47,900 --> 00:37:52,020 Viss, ko es esmu darījis, ir saikne ar enkurs tag uz šo URL šeit. 816 00:37:52,020 --> 00:37:55,400 >> Tātad tas ir tikai teikt, tas ir diezgan vienkāršs versija CS50 tīmekļa vietnē. 817 00:37:55,400 --> 00:37:56,790 Let 's redzēt, kā tas ir īstenots. 818 00:37:56,790 --> 00:38:01,240 Ja es iedziļināties mvc0 direktorijā, mēs redzēsim dažus failus. 819 00:38:01,240 --> 00:38:03,250 Viens no tiem ir README, tāpēc, ja daži no tā ir pārāk ātri, 820 00:38:03,250 --> 00:38:05,166 Jūs varat vienkārši kule apkārt vairāk nesteidzīgs vēlāk. 821 00:38:05,166 --> 00:38:07,930 Un paziņojums šeit ir index.php failu. 822 00:38:07,930 --> 00:38:09,960 Izrādās, ka tad, ja jūs, cilvēku, 823 00:38:09,960 --> 00:38:14,460 nenorādāt galīgo vārdu URL, web serveri parasti 824 00:38:14,460 --> 00:38:17,010 secina kādu noklusēto nosaukumu jums. 825 00:38:17,010 --> 00:38:20,060 Indekss dot kaut ko parasti noklusējuma. 826 00:38:20,060 --> 00:38:23,010 >> Tātad, tāpēc pirms brīža kad es apmeklēju šo URL šeit, 827 00:38:23,010 --> 00:38:26,750 nē faila nosaukumu, ne fails paplašināšanu, nekāds termiņš URL. 828 00:38:26,750 --> 00:38:29,710 Tā vienkārši zināja kaut maģiski meklēt index.php. 829 00:38:29,710 --> 00:38:30,870 Tas ir tikai konvencija. 830 00:38:30,870 --> 00:38:32,360 Varētu nosaukt neko. 831 00:38:32,360 --> 00:38:35,110 >> Tātad, ja es tagad iedziļināties index.php, jūs redzēsiet 832 00:38:35,110 --> 00:38:37,100 ka indeed-- pieņemsim atbrīvoties no komentāriem 833 00:38:37,100 --> 00:38:39,500 šeit, jo tur tiešām nekas interesants it-- 834 00:38:39,500 --> 00:38:41,579 tas ir tikai grūti kodē HTML. 835 00:38:41,579 --> 00:38:43,370 Tā ka ir konsekventa, lai gan, ar manu prasību 836 00:38:43,370 --> 00:38:45,230 ka jūs varat sajaukt HTML un PHP. 837 00:38:45,230 --> 00:38:48,060 Nav aktuālā programmēšanas loģiku šeit. 838 00:38:48,060 --> 00:38:51,030 >> Un citi faili ir diezgan daudz tikpat neinteresanti. 839 00:38:51,030 --> 00:38:56,240 Tas ir tikai iekodēts nedēļu viens šeit uz nedēļu vienu m un nedēļu viens w, 840 00:38:56,240 --> 00:38:57,510 pirmdien un trešdien. 841 00:38:57,510 --> 00:39:01,890 Un tad, ja es atvērt nedēļā nulle, pamanāt, ka tas ir gandrīz identiski. 842 00:39:01,890 --> 00:39:03,320 >> Un tas ir sava veida galveno takeaway. 843 00:39:03,320 --> 00:39:06,180 Ievērojiet, cik lieks tas ir. 844 00:39:06,180 --> 00:39:10,710 Šie faili tikko mainās, un tomēr es velk vienu no šiem copy / paste darbavietas 845 00:39:10,710 --> 00:39:13,420 kur es spēra vienu file-- domājams nedēļā zero-- kopēt to 846 00:39:13,420 --> 00:39:16,320 kad nedēļu viens ieradās apmēram, un tweaked dažas vērtības. 847 00:39:16,320 --> 00:39:18,590 Mums, iespējams, jābūt iespējai darīt labāk nekā šis. 848 00:39:18,590 --> 00:39:21,800 >> Tāpēc iesim atpakaļ līdz MVC un iedziļināties versiju vienā. 849 00:39:21,800 --> 00:39:24,810 Un paziņojums man dažus failus, jo tas, ko 850 00:39:24,810 --> 00:39:29,870 bija kopīgs visiem šiem failiem tikai brīdis ago-- ja es dodos atpakaļ uz versiju 0, 851 00:39:29,870 --> 00:39:32,600 iesim atpakaļ indeksā, un tikai postulate-- 852 00:39:32,600 --> 00:39:36,090 kad man atbrīvoties no comments-- kāda daļa no šīs lapas 853 00:39:36,090 --> 00:39:40,072 ir iespējams, katrā no maniem failiem? 854 00:39:40,072 --> 00:39:40,780 Tikai sauc to ārā. 855 00:39:40,780 --> 00:39:44,620 Kuras pozīcijas tiek dublēti iespējams, visās no šīm lapām? 856 00:39:44,620 --> 00:39:45,120 Yeah? 857 00:39:45,120 --> 00:39:46,110 >> STUDENTU: [dzirdams]. 858 00:39:46,110 --> 00:39:47,660 >> DAVID J. Malan: 1 līdz 9. 859 00:39:47,660 --> 00:39:48,720 Jā, pilnīgi noteikti. 860 00:39:48,720 --> 00:39:52,080 1 līdz 9, izņemot varbūt 8 maina mazliet arī tāpēc CS50 861 00:39:52,080 --> 00:39:54,650 kļūst lekcijas vai nedēļa nulle vai kaut ko. 862 00:39:54,650 --> 00:39:55,970 Bet gandrīz identiski. 863 00:39:55,970 --> 00:39:58,657 Tātad tas viss ir tikai veida nokopēt un ielīmēt. 864 00:39:58,657 --> 00:40:00,490 Un tur ir pāris citas līnijas Es domāju 865 00:40:00,490 --> 00:40:05,000 no tā, iespējams, ir identiski pāri visiem failiem. 866 00:40:05,000 --> 00:40:06,315 >> STUDENTU: 12 un 13. 867 00:40:06,315 --> 00:40:07,190 DAVID J. Malan: Jā. 868 00:40:07,190 --> 00:40:11,220 Protams, 12, 13, 14 un, iespējams, tikai tāpēc, ka interesanti sīkumi 869 00:40:11,220 --> 00:40:15,460 notiek uz līnijām 11 un 10, tāpēc tas varētu likties. 870 00:40:15,460 --> 00:40:18,350 Tātad, aplūkosim versija 1, kas cenšas, lai uzlabotu to. 871 00:40:18,350 --> 00:40:24,020 Šā MVC example-- 1 versiju mēs paskaidrot, kas MVC līdzekļi tādā moment-- 872 00:40:24,020 --> 00:40:27,420 ja es iedziļināties indeksā, tas veida izskatās nedaudz mulsinoši tagad. 873 00:40:27,420 --> 00:40:28,880 Tas nav tik vienkārši, kā agrāk. 874 00:40:28,880 --> 00:40:30,906 >> Bet tad, kad jūs sākat lasīt uzmanīgi, tas ir 875 00:40:30,906 --> 00:40:32,530 diezgan vienkārši, ko tas dara. 876 00:40:32,530 --> 00:40:34,397 Acīmredzot līnija 1 un line 8 ir aizstājis 877 00:40:34,397 --> 00:40:37,230 visi sīkumi jūs vienkārši identified-- lai gan tikai labu pasākumu, 878 00:40:37,230 --> 00:40:41,900 Es atstāja ULS tur tikai gadījumā kādā dienas nebija saraksts ar lietām. 879 00:40:41,900 --> 00:40:47,860 Un tā prasa ir veids kā mārciņu iekļaut C. Tas kopijas un pastas 880 00:40:47,860 --> 00:40:50,470 saturs efektīvi tepat uz šo failu. 881 00:40:50,470 --> 00:40:53,650 >> Tātad header.php, kā jūs var secināt, ka tās nosaukumu, 882 00:40:53,650 --> 00:40:55,330 būs galvenē lapā. 883 00:40:55,330 --> 00:40:57,110 Tas ir sava veida bāreņiem šeit. 884 00:40:57,110 --> 00:41:01,820 Tas ir tikai no augšas uz to, bet tur ir ne vairāk satura zemāk. 885 00:41:01,820 --> 00:41:05,070 >> Un, ja es paskatos uz kājeni tikmēr, kas bija citu failu mentioned-- 886 00:41:05,070 --> 00:41:08,830 tas viens ir pat mazāk interesants, bet atkal, tas ir kopīgs visu. 887 00:41:08,830 --> 00:41:10,250 Tātad šis ir kājenes. 888 00:41:10,250 --> 00:41:11,300 Tas ir iesākums. 889 00:41:11,300 --> 00:41:13,950 Šis ir fails, kas ir mainās, tad kāpēc ne 890 00:41:13,950 --> 00:41:18,140 mēģināt faktors out vienveidību ar šīm divām līnijām šeit? 891 00:41:18,140 --> 00:41:20,090 >> Bet mēs varam tīrīt šo up mazliet tālāk. 892 00:41:20,090 --> 00:41:23,260 Es esmu gatavojas iet uz priekšu un atvērt versija divas kur 893 00:41:23,260 --> 00:41:27,106 mēs redzam, ka tur ir jaunu failu, helpers.php. 894 00:41:27,106 --> 00:41:28,610 Redzēsim, kas tas ir brīdi. 895 00:41:28,610 --> 00:41:30,930 Iesim uz indeksu, jo sākumpunkts kā iepriekš. 896 00:41:30,930 --> 00:41:35,230 >> Un tagad paziņojums es esmu pieprasot helpers.php, nevis galveni vai kājeni. 897 00:41:35,230 --> 00:41:41,720 Bet palīgi ir veids kā helpers.c un helpers.h no PSET 2 898 00:41:41,720 --> 00:41:46,150 vai PSET 3 sen, kad jūs faktiski bija meklēt un atrast šim PSET, 899 00:41:46,150 --> 00:41:50,950 un jums bija visu savu kodu kārtošanas un meklējot atsevišķā failā. 900 00:41:50,950 --> 00:41:52,510 Tas, kas notiek šeit. 901 00:41:52,510 --> 00:41:54,390 >> Un tagad 3 līnija izskatās nedaudz atšķiras. 902 00:41:54,390 --> 00:41:55,920 Un tā ir tikai viena rinda. 903 00:41:55,920 --> 00:41:57,950 Lai padarītu šo vēl vairāk skaidrs, es varētu vienkārši 904 00:41:57,950 --> 00:42:01,820 to, ka tas ir stilistiski konsekventi ar visu pārējo mēs esam darījuši. 905 00:42:01,820 --> 00:42:04,130 Bet tas nav īsti mainot funkcionalitāti. 906 00:42:04,130 --> 00:42:05,880 Tā ir tikai viena līnija reālā kodu. 907 00:42:05,880 --> 00:42:09,010 >> Acīmredzot, tur ir funkcija kaut kur aicināja padarīt galveni, 908 00:42:09,010 --> 00:42:11,420 un tas ir, ja lietas iegūt diezgan spēcīgs. 909 00:42:11,420 --> 00:42:17,040 Ievērojiet, ka iekšpusē tā iekavās Ir ko citi gabals sintakse? 910 00:42:17,040 --> 00:42:19,780 911 00:42:19,780 --> 00:42:23,350 Tas ir iespējams, nedaudz grūti pateikt, bet pamanīt there's-- Es nolikšu dažas baltas 912 00:42:23,350 --> 00:42:24,300 telpu. 913 00:42:24,300 --> 00:42:25,530 Tur ir kvadrātiekavās. 914 00:42:25,530 --> 00:42:29,700 >> Un kvadrātiekavas mēs redzējām mazliet atpakaļ kontekstā asociatīvo masīvu, 915 00:42:29,700 --> 00:42:31,580 kas ir, atkal, tāpat kā hash tabulas. 916 00:42:31,580 --> 00:42:36,230 Un, ja jūs tagad domājat, C, rīkojums argumenti par funkciju 917 00:42:36,230 --> 00:42:37,570 ir vienmēr ir vienādi. 918 00:42:37,570 --> 00:42:41,146 Jums ir jāatceras, kāda pasūtījuma is-- X, Y, Z vai Z, Y, X- 919 00:42:41,146 --> 00:42:44,020 un jums ir vienmēr sniegt viņiem tādā pašā kārtībā, vai tos uzmeklēt 920 00:42:44,020 --> 00:42:45,100 ja esat aizmirsis. 921 00:42:45,100 --> 00:42:51,140 >> Bet tas, šķiet, ir gudrs veids izturēt patvaļīgu atslēgas vērtību 922 00:42:51,140 --> 00:42:55,840 pāru kuru nosaukums ir nosaukums par argumentu šajā lietā 923 00:42:55,840 --> 00:42:58,334 un CS50 ir tā vērtība. 924 00:42:58,334 --> 00:43:00,250 Un tas, ka man ir šie kvadrātiekavas 925 00:43:00,250 --> 00:43:02,560 šeit nozīmē to, ka es varētu arī iet kaut 926 00:43:02,560 --> 00:43:07,550 tāpat nedēļa ir 1 vai 0, vai 2, vai 3. 927 00:43:07,550 --> 00:43:10,550 Tātad, mēs esam parametros šī funkcija tādā veidā, 928 00:43:10,550 --> 00:43:15,180 ka tas var veikt vairākas ieejas, bet tagad tā ir tikai viena. 929 00:43:15,180 --> 00:43:20,060 >> Ja es tagad iedziļināties helpers.php, paziņojums, ko tas dara. 930 00:43:20,060 --> 00:43:22,030 Tas ir mazliet jaunu funkcionalitāti, 931 00:43:22,030 --> 00:43:24,190 bet tagad tikai ņemt uz ticību, ka tas ir 932 00:43:24,190 --> 00:43:26,570 sintakse ar kuru jūs definēt funkciju PHP. 933 00:43:26,570 --> 00:43:27,840 Tu burtiski saka funkciju. 934 00:43:27,840 --> 00:43:30,090 Jums nav jānorāda peļņu tipa, un tas ir konsekventi 935 00:43:30,090 --> 00:43:33,880 ar mainīgo detail agrāk ja jums nav īsti spēcīgi rakstīt. 936 00:43:33,880 --> 00:43:35,650 >> Tas tikai precizē ka, pēc noklusējuma, šis 937 00:43:35,650 --> 00:43:37,460 aizņem asociatīvā masīvs kā argumentu. 938 00:43:37,460 --> 00:43:38,210 Un jūs zināt, ko? 939 00:43:38,210 --> 00:43:41,450 Ja lietotājs neiztur vienu jo, pieņemu, noklusējuma vērtība. 940 00:43:41,450 --> 00:43:44,680 >> Šī ir funkcija, kas C nav mums, kas ir jauki, jo tagad 941 00:43:44,680 --> 00:43:46,430 dati, pat tad, ja jums nav arī tā neko, 942 00:43:46,430 --> 00:43:49,300 būs masīvs bet tukša vienu. 943 00:43:49,300 --> 00:43:51,860 Un kā malā, ekstraktu vienkārši dara kaut bailīgs 944 00:43:51,860 --> 00:43:56,380 kur tas nepieciešams, visas atslēgas no šī asociatīvā masīva, visas lietas 945 00:43:56,380 --> 00:43:59,950 jūs varētu likt kvadrātiekavās, un rada mainīgie no tām 946 00:43:59,950 --> 00:44:06,270 lai mēs galu galā var piekļūt uz tiem footet.php un header.php. 947 00:44:06,270 --> 00:44:08,950 Tas ir nedaudz abstrakts, tāpēc ļaujiet man norādīt šo out. 948 00:44:08,950 --> 00:44:12,990 >> In index.php, pamanīsiet, ka es esmu iet ar galveno vērtību pāri nosaukuma 949 00:44:12,990 --> 00:44:14,850 ar vērtību CS50. 950 00:44:14,850 --> 00:44:18,660 Ja es tagad paskatās helpers.php, pamanīt, ka RenderHeader 951 00:44:18,660 --> 00:44:23,870 ir ieguves, ka dati, kas es esmu, kas iet in, un pēc tam pieprasot header.php. 952 00:44:23,870 --> 00:44:27,970 Ko es esmu darījis, ir sava veida nabaga vīra īstenošana tagad no šīm darbībām. 953 00:44:27,970 --> 00:44:31,720 >> Ja es atvērt header.php, Paziņojums, ka es esmu vairs grūti 954 00:44:31,720 --> 00:44:34,890 kodēta vārdu CS50 šajā header failā. 955 00:44:34,890 --> 00:44:39,310 Esmu likts tas, protams atrociously nosaukts funkcija, HTML speciālie simboli, 956 00:44:39,310 --> 00:44:40,170 tur. 957 00:44:40,170 --> 00:44:41,640 Bet pamanīt to, ko es esmu darījusi. 958 00:44:41,640 --> 00:44:44,240 Man atvērtu HTML. 959 00:44:44,240 --> 00:44:47,420 Man tad ir atvērta galvu un atvērtu titulu. 960 00:44:47,420 --> 00:44:52,380 >> Un tad iekšpusē nosaukums ir atvērts un aizvēršanas tagi, man ir mazliet PHP kodu. 961 00:44:52,380 --> 00:44:56,670 Un tas ir jauki, bet par sintaksi, kas nozīmē tikai atbalss out. 962 00:44:56,670 --> 00:44:59,840 Tas burtiski nozīmē this-- atbalss following-- 963 00:44:59,840 --> 00:45:01,910 bet tas ir sexier rakstīt. 964 00:45:01,910 --> 00:45:05,000 Atbalss out titulu kas ir bijis pieņemts. 965 00:45:05,000 --> 00:45:07,560 >> Bet ko jūs domājat HTML īpaša char ir visu par, 966 00:45:07,560 --> 00:45:10,590 it īpaši, ja jums ir daži pirms HTML pieredze? 967 00:45:10,590 --> 00:45:14,050 Kādas zīmes varētu būt bīstami pāriet uz lapu 968 00:45:14,050 --> 00:45:17,980 kur jūs dinamiski radot mājas lapa ar kodu kā šis? 969 00:45:17,980 --> 00:45:21,370 970 00:45:21,370 --> 00:45:24,650 Ļaujiet man iet uz šo failu, versija divi, un redzēt, ja es nevaru izraisīt to. 971 00:45:24,650 --> 00:45:26,210 >> Versija divi tas ir. 972 00:45:26,210 --> 00:45:28,510 Un paziņojums, viss ir labi, darbojas labi. 973 00:45:28,510 --> 00:45:35,280 Bet domāju, ka es iedziļināties index.php un Es norādīts, ka nosaukums manā lapā 974 00:45:35,280 --> 00:45:36,630 nav CS50. 975 00:45:36,630 --> 00:45:44,930 Tā ir atvērta kronšteins skripts brīdinājumu Hello World, tuvu viena quote, 976 00:45:44,930 --> 00:45:49,740 aizvērt iekavas, semikols, atvērta kronšteinu, slīpsvītra skriptu. 977 00:45:49,740 --> 00:45:51,897 >> Script, kā mēs beidzot redzēt, ir tag 978 00:45:51,897 --> 00:45:54,480 ka jūs varat izmantot, lai izmantot citu programmēšanas valoda sauc 979 00:45:54,480 --> 00:45:56,330 JavaScript iekšpusē mājas lapā. 980 00:45:56,330 --> 00:45:57,960 Un tagad paziņojums loģiku šeit. 981 00:45:57,960 --> 00:45:59,840 Te ir galvenais sauc nosaukumu. 982 00:45:59,840 --> 00:46:02,690 Te ir tas ir traks garš vērtību tagad. 983 00:46:02,690 --> 00:46:07,840 >> Bet, ja es eju uz palīgiem page- vai drīzāk, header lapā, 984 00:46:07,840 --> 00:46:11,310 Es esmu aicinot šo funkciju par šo titulu pirmo. 985 00:46:11,310 --> 00:46:15,250 Tātad, ja es tagad pārlādē šo lapu, es redzēt to, kas izskatās smieklīgi, 986 00:46:15,250 --> 00:46:16,110 bet tas ir droši. 987 00:46:16,110 --> 00:46:17,310 Tā tikai izskatās muļķīgi. 988 00:46:17,310 --> 00:46:20,320 >> Bet pieņemsim, tā vietā Man bija aizmirsis to. 989 00:46:20,320 --> 00:46:24,660 Un pieminiet manus vārdus, nulle numurs no jums būs aizmirst to darīt 990 00:46:24,660 --> 00:46:27,790 un jūs saņemsiet kādu strādīgs students vai draugs nāk uz augšu 991 00:46:27,790 --> 00:46:31,540 uz jums tajā CS50 gadatirgū vai anonīmi naktī papētījis savā mājas lapā 992 00:46:31,540 --> 00:46:35,300 un būtībā injicēšanas kodu nezinot jūs savā portālā 993 00:46:35,300 --> 00:46:35,800 kaut kā. 994 00:46:35,800 --> 00:46:39,000 >> Jo, ja es vienkārši spļaut out nosaukumu šeit un nosaukums 995 00:46:39,000 --> 00:46:44,330 there-- labi, ja virsraksts burtiski izskatās šādi, un PHP 996 00:46:44,330 --> 00:46:47,660 kā valoda, kas var spļaut veic citas valodas tekstu, 997 00:46:47,660 --> 00:46:50,650 tas burtiski notiek aizstāt šo tagu ar, 998 00:46:50,650 --> 00:46:53,010 Protams, to, ko man citur. 999 00:46:53,010 --> 00:46:57,640 >> Tātad, ja es tagad iet šeit un pārlādēt pēc atsaukt šos drošības mehānismus, 1000 00:46:57,640 --> 00:46:59,982 tagad man ir sveiki pasauli šeit. 1001 00:46:59,982 --> 00:47:02,690 Tagad tas nav viss, kas liels galā, bet jūs varētu darīt kaut ko 1002 00:47:02,690 --> 00:47:05,119 nedaudz vairāk ļaunprātīgs Šeit, tāpat kā tur ir 1003 00:47:05,119 --> 00:47:08,410 cita tags-- kā mēs redzēsim, kad mēs tērēt vairāk laika JavaScript-- piemēram, atrašanās vietas 1004 00:47:08,410 --> 00:47:14,910 dot href izpaužas, citēju, likt pēdiņas beigās, HTTP business.com, bet pretējo, ka 1005 00:47:14,910 --> 00:47:15,950 no otras dienas. 1006 00:47:15,950 --> 00:47:20,120 Un tagad jūs varat izraisīt web lapa faktiski iet uzreiz 1007 00:47:20,120 --> 00:47:21,190 šajā mājas lapā šeit. 1008 00:47:21,190 --> 00:47:23,000 >> Un patiesībā, es nevēlos pat iet uz business.com 1009 00:47:23,000 --> 00:47:24,749 jo es nevēlos zināt, kas tas ir. 1010 00:47:24,749 --> 00:47:28,710 Bet tas arī aktivizēs kodu kas ievada šajā lapā. 1011 00:47:28,710 --> 00:47:32,680 Tātad tas ir tikai teikt, ka, lai gan mēs ieviest super agri dažiem 1012 00:47:32,680 --> 00:47:36,800 Šo vairāk sarežģītu struktūru, tas viss ir uz beigām par pārliecinoties 1013 00:47:36,800 --> 00:47:39,320 ka jūsu kods nav apgūstams. 1014 00:47:39,320 --> 00:47:40,960 >> Tāpēc tagad trešā versija šeit. 1015 00:47:40,960 --> 00:47:42,470 Tas kļūst mazliet mīļotājs. 1016 00:47:42,470 --> 00:47:44,875 Es īsti like-- anālais pusē mani 1017 00:47:44,875 --> 00:47:47,750 bija kļūst nedaudz kaitina Tas, ka man bija funkciju sauc 1018 00:47:47,750 --> 00:47:51,940 RenderHeader un RenderFooter kas bija gandrīz identiski. 1019 00:47:51,940 --> 00:47:55,400 Tātad, tas notika ar mani, kāpēc ne Es parameterize šīs funkcijas 1020 00:47:55,400 --> 00:47:59,180 uz tikai vienu sauc apmetuma, ir paies otru argumentu 1021 00:47:59,180 --> 00:48:04,420 tāpat nosaukumu veidnes, galīgo lai render-- nu galveni vai kājeni? 1022 00:48:04,420 --> 00:48:07,160 Un tad pēc izvēles, ja es gribu nodot vairākās būtiskās vērtību pārus 1023 00:48:07,160 --> 00:48:10,580 piemēram, man par titulu par header bet ne kājenē, 1024 00:48:10,580 --> 00:48:11,800 Es varētu darīt. 1025 00:48:11,800 --> 00:48:16,510 >> Un tāpēc tagad, ja man iedziļināties helpers.php, tas ir nedaudz sarežģītāka. 1026 00:48:16,510 --> 00:48:19,670 Un es ņemšu vilnis manu roku pie detaļas, bet tas ir tikai viena funkcija. 1027 00:48:19,670 --> 00:48:21,890 Tā ka ir solis ceļā uz labāku dizainu. 1028 00:48:21,890 --> 00:48:23,360 >> Mēs varam izmantot šo vienu soli tālāk. 1029 00:48:23,360 --> 00:48:28,890 Ja es iet manā ceturtdaļai versija par šo, paziņojums tagad 1030 00:48:28,890 --> 00:48:31,320 ka es daru kaut ko vēl vairāk veida mistisks. 1031 00:48:31,320 --> 00:48:33,230 Un es zinu, tas ir Daudz uzņemt uzreiz, 1032 00:48:33,230 --> 00:48:35,080 bet mēs esam tikai veida tīrīšanas lietas uz augšu. 1033 00:48:35,080 --> 00:48:38,550 Tagad es varēšu savus palīgus failu mapē ar nosaukumu 1034 00:48:38,550 --> 00:48:41,190 includes-- tikai patvaļīgs nosaukt, kur es gribu, lai sīkumi 1035 00:48:41,190 --> 00:48:44,300 ka es gribu include-- un tad pārējais tas ir tas pats. 1036 00:48:44,300 --> 00:48:47,140 >> Bet, ja es izskatos tagad gedit, Paziņojums, ka es esmu gotten atbrīvoties 1037 00:48:47,140 --> 00:48:51,940 no visiem šiem citiem failiem, un es esmu pārvieto tos, piemēram, uz šeit. 1038 00:48:51,940 --> 00:48:55,110 Un tad veidnes, Man tas arī šeit. 1039 00:48:55,110 --> 00:48:59,292 Un tā tas ir viss, tagad uz soļa izmantot daudz labāk projektēšanas modelis. 1040 00:48:59,292 --> 00:49:01,000 Un mēs esam ļoti ātri gatavojas doties prom 1041 00:49:01,000 --> 00:49:03,870 No PHP noklusējuma funkcionalitāti, ko mēs šeit sākām ar, 1042 00:49:03,870 --> 00:49:07,655 kur jūs vienkārši sajaukt PHP, un jūsu HTML, un jūsu CSS, 1043 00:49:07,655 --> 00:49:09,780 un jūs vienkārši spļaut to ārā un jūs iet par savu ceļu. 1044 00:49:09,780 --> 00:49:11,404 Tas nebūs ļoti uzturams. 1045 00:49:11,404 --> 00:49:14,481 Tāpat kā C, mēs sākām izmantot vairākus failus un vairākas funkcijas 1046 00:49:14,481 --> 00:49:15,730 un faktoringa lietas, ka out. 1047 00:49:15,730 --> 00:49:16,688 Mēs darīsim pats šeit. 1048 00:49:16,688 --> 00:49:19,970 Un faktiski, piektais un pēdējais versija šeit, man bija viena cita lieta. 1049 00:49:19,970 --> 00:49:23,710 Jūs pat varat izmantot dot dot, kas, atkal, ir tikai mātes direktorijā. 1050 00:49:23,710 --> 00:49:28,260 Lai būtu vēl vairāk drošības apzinās, jo, ja es paskatos klausīšanās 1051 00:49:28,260 --> 00:49:32,450 šeit piekto un galīgo versiju, brīdinājuma ka man ir viens direktoriju šeit sauc 1052 00:49:32,450 --> 00:49:35,180 valsts, un pēc tam uz vienādā līmenī, tā sakot, 1053 00:49:35,180 --> 00:49:38,490 Man ietver un veidnes un tad, ka teksta failu readme. 1054 00:49:38,490 --> 00:49:41,130 >> Un iemesls, kāpēc es esmu strukturēta tas patīk this-- un tik daudz web 1055 00:49:41,130 --> 00:49:44,330 saimniekiem, jo ​​īpaši tiem 5 $ mēnesis tiem vai $ 10 mēnešu tiem, 1056 00:49:44,330 --> 00:49:47,170 Ja jūs esat kādreiz bija viens no šiem services-- ko tik daudzi no viņiem 1057 00:49:47,170 --> 00:49:50,690 ir viņi tikai gaida, lai jūs dump visu Sava failus vienā direktorijā, 1058 00:49:50,690 --> 00:49:53,640 tāpat kā mēs to izdarījām jau ar tas pats pirmais piemērs. 1059 00:49:53,640 --> 00:49:56,740 >> Bet, tiklīdz jūs sākat būvēt vairāk sarežģītu vietnes, kas tikai uzglabā 1060 00:49:56,740 --> 00:50:00,480 Dati jums rūp un failus, jums rūp, faktiski organizējot lietas 1061 00:50:00,480 --> 00:50:05,060 pareizi un ar lielāku drošību apziņa prātā var 1062 00:50:05,060 --> 00:50:07,927 sākam aizstāvēt pret visiem draugiem 1063 00:50:07,927 --> 00:50:10,135 ka jums ir vai nu, vai ārpus šīs klases, kas, 1064 00:50:10,135 --> 00:50:12,510 tiklīdz jūs sāktu īstenot programmas sevi tīmeklī, 1065 00:50:12,510 --> 00:50:15,140 gatavojas sākt picking par jums un par tiem. 1066 00:50:15,140 --> 00:50:17,420 >> Un tāpēc mēs skatīsim galu galā par šo dizainu. 1067 00:50:17,420 --> 00:50:20,010 Tas ir tikai bilde kas attēlots šādi. 1068 00:50:20,010 --> 00:50:22,897 Mēs ejam, lai nodot visu mūsu programmēšanas veidošana ar vienu vai vairākiem failiem, 1069 00:50:22,897 --> 00:50:25,230 un mēs braucam, lai tikai sāktu aicinot tos kontrolieriem. 1070 00:50:25,230 --> 00:50:28,022 Tas ir, ja smadzenes Mūsu mājas lapas patiesībā ir. 1071 00:50:28,022 --> 00:50:29,730 Tad mēs ejam ir redzams, un viedokļi 1072 00:50:29,730 --> 00:50:32,480 ir tik vienkārši, kā tikai atsevišķu files-- sauc veidnes, bieži. 1073 00:50:32,480 --> 00:50:34,410 Viņi vienkārši ir estētika manu lapu, 1074 00:50:34,410 --> 00:50:37,020 ko es gribu lapu izskatīties like-- krāsas un izkārtojumu 1075 00:50:37,020 --> 00:50:38,870 un pozīcijas visi mainīgie lielumi. 1076 00:50:38,870 --> 00:50:41,120 >> Un tad vēl interesantāku ka mēs beidzot nokļūt 1077 00:50:41,120 --> 00:50:45,420 ir paraugs, kas būs tieši vārds mēs iepļaukāt citām tehnoloģijām 1078 00:50:45,420 --> 00:50:47,771 ka mēs stājas attēlu, piemēram, faktisko datu bāzēm, 1079 00:50:47,771 --> 00:50:49,520 tā, ka tad, kad jūs vēlaties lai saglabātu informāciju, 1080 00:50:49,520 --> 00:50:52,140 jūs ne tikai sūtīt e-pastu Jūsu Proctor vai sevi, 1081 00:50:52,140 --> 00:50:57,350 jūs faktiski uzglabāt to datubāzē izmantojot citu valodu sauc par SQL. 1082 00:50:57,350 --> 00:51:00,450 Un tāpēc mēs šodien ņemšu atvaļinājumu šeit un uzņemt ar šo trešdien 1083 00:51:00,450 --> 00:51:02,990 un ieviest datu bāzes pēc tam. 1084 00:51:02,990 --> 00:51:06,940 >> [Mūzikas atskaņošanai] 1085 00:51:06,940 --> 00:54:24,555