1 00:00:00,000 --> 00:00:02,916 2 00:00:02,916 --> 00:00:04,860 >> [MUSIC PLAYING] 3 00:00:04,860 --> 00:00:10,210 4 00:00:10,210 --> 00:00:13,350 >> DAVID Malan: Bu CS50, və Bu həftə səkkiz başlanğıc. 5 00:00:13,350 --> 00:00:17,510 Və biz salamlayıram mutluyuz geri, böyük sürpriz, CS50 öz Ramon 6 00:00:17,510 --> 00:00:22,160 Galvan olmuşdur yüksələn bir baş Son bir neçə ay sərf 7 00:00:22,160 --> 00:00:26,190 LA İyul ayından bu yana, Hollywood, sanki yeni TV iş 8 00:00:26,190 --> 00:00:31,930 Colony adlı şou yaradıcısı əslində bir Harvard zəy özü. 9 00:00:31,930 --> 00:00:36,610 Və belə ki, biz bu görmək mutluyuz Amerika Birləşmiş Ştatları şəbəkə bu Yanvar debüt. 10 00:00:36,610 --> 00:00:40,370 Belə ki, üçün bizi qalmaq üçün həftə daha Ramon gəlib. 11 00:00:40,370 --> 00:00:42,550 >> Sonuna yaxın olduğunu artıq bilirik. 12 00:00:42,550 --> 00:00:47,400 Və nə bu deməkdir yoxdur ki, bütün çox demək kədərli, CS50 ayrıldı. 13 00:00:47,400 --> 00:00:49,400 Biz yalnız üç problem var dəstləri var əgər sol 14 00:00:49,400 --> 00:00:52,510 problem var Altı müəyyən Sizin əlləri indi və ya tezliklə olacaq 15 00:00:52,510 --> 00:00:56,080 sonra nəzərdə tutulur week-- bu körpü görə command line, bizim aləmlərin 16 00:00:56,080 --> 00:00:59,450 Biz istifadə edərək çox vaxt sərf etdik C, və web proqramlaşdırma dünya. 17 00:00:59,450 --> 00:01:02,350 Yaxşı, siz fikir bir çox görəcəksiniz command line iş borc, 18 00:01:02,350 --> 00:01:04,560 lakin yeni də bir çox və maraqlı fikir 19 00:01:04,560 --> 00:01:07,929 də ilgili olacaq ki, mobil ərizə və texnologiya, 20 00:01:07,929 --> 00:01:10,470 ümumiyyətlə, olan siz uşaqlar bu gün bütün tanış 21 00:01:10,470 --> 00:01:12,090 noutbuk və telefonlar və kimi. 22 00:01:12,090 --> 00:01:15,220 >> Belə ki, deyil həyata olacaq bir web səhifə və ya bir web 23 00:01:15,220 --> 00:01:17,620 özlüyündə, lakin faktiki web server. 24 00:01:17,620 --> 00:01:21,590 Bir web server qalan yazacaq kimin məqsədi həyat C yazılmış 25 00:01:21,590 --> 00:01:25,410 HTTP istekleri, o qəbul edir biz söhbət saxlamaq virtual zərfləri 26 00:01:25,410 --> 00:01:29,780 haqqında, və həqiqətən ilə ya cavab bir dot HTML kimi statik content-- 27 00:01:29,780 --> 00:01:32,310 fayl, və ya dot JPEG və ya faylları hər hansı bir digər sayı, 28 00:01:32,310 --> 00:01:37,070 və ya hətta bir PHP fayl vasitəsi web server ki, PHP şərh gedir 29 00:01:37,070 --> 00:01:38,332 kodu və nəticələri tüpürmək. 30 00:01:38,332 --> 00:01:40,540 İndi biz ilə təmin etdik çərçivəsində kifayət qədər bir az 31 00:01:40,540 --> 00:01:43,100 Həqiqətən pseudocode üçün problem distribution kodu 32 00:01:43,100 --> 00:01:47,496 altı 1000-dən artıq xətləri uzun qurmaq, bir çox şərh, fair-- olmaq 33 00:01:47,496 --> 00:01:49,370 lakin bu, həqiqətən deməkdir bir fürsət olmaq 34 00:01:49,370 --> 00:01:52,570 çirkli dalğıc öz əlləri almaq üçün kifayət qədər böyük layihə 35 00:01:52,570 --> 00:01:55,570 biz çox xüsusi var ki, sizin üçün həyata həkk ədəd, 36 00:01:55,570 --> 00:01:59,046 ki, həqiqətən, sizin CS50 çıxmaq zaman və proqramlaşdırma real dünya daxil edin 37 00:01:59,046 --> 00:02:00,920 və dabble istəyirəm layihələrin hər hansı bir sayı, 38 00:02:00,920 --> 00:02:03,253 Siz daha çox lazımdır rahatlıq bəzi mənbə yüklənərkən 39 00:02:03,253 --> 00:02:05,020 indeksi, bəzi açıq mənbə web layihə, 40 00:02:05,020 --> 00:02:08,174 və dalğıc edilməsi Siz uyğun gördüyünüz dəyişikliklər. 41 00:02:08,174 --> 00:02:11,340 Problem yeddi haqqında olacaq müəyyən Öz web-based tətbiq edilməsi 42 00:02:11,340 --> 00:02:14,140 ki, dinamik daxil edir və şəklində dinamik məhsulun istehsal 43 00:02:14,140 --> 00:02:16,920 bir etrade.com kimi web. 44 00:02:16,920 --> 00:02:20,800 Və problem səkkiz hələ müzakirə olunacaq müəyyən JavaScript kimi tanınan bir dil. 45 00:02:20,800 --> 00:02:24,170 >> Eyni zamanda, son Layihə üfüqdə edir. 46 00:02:24,170 --> 00:02:26,800 qondarma pre-təklifi bu gün bir həftə bağlıdır. 47 00:02:26,800 --> 00:02:29,930 Dəqiqləşdirilməsi üzrə Pre-proposal--, CS50 website-- haqqında olan 48 00:02:29,930 --> 00:02:33,260 olduqca təsadüfi imkan üçün Siz olduqca yığcam e-poçt göndərmək 49 00:02:33,260 --> 00:02:35,170 Sizin tədris fellow yalnız onu bildirmək üçün 50 00:02:35,170 --> 00:02:38,250 və ya düşüncə etdiyiniz nə üçün onun bir Səslənən board kimi ona istifadə edin. 51 00:02:38,250 --> 00:02:40,980 Və ağlı başında olma var yoxlamaq Əgər düşüncə etdiyiniz olub 52 00:02:40,980 --> 00:02:43,210 Çox off yeme haqqında çox az çox və ya bəlkə, 53 00:02:43,210 --> 00:02:46,480 və ya bəlkə siz heç bir fikrim yoxdur və söhbət məşğul istəyirəm. 54 00:02:46,480 --> 00:02:48,480 >> Bundan sonra bir təklifdir və statusu hesabat, 55 00:02:48,480 --> 00:02:51,860 Burada deyilən CS50 Hackathon Harvard və Yale tələbələri üçün Cambridge 56 00:02:51,860 --> 00:02:52,362 eyni. 57 00:02:52,362 --> 00:02:54,320 final layihənin həyata keçirilməsi, sonra bağlıdır. 58 00:02:54,320 --> 00:02:59,290 Və sonra burada CS50 ədalətli, Cambridge, eləcə də New Haven başqa kimi. 59 00:02:59,290 --> 00:03:02,500 Təklifi Belə ki, nəzər bu özəllikləri üçün haqqinda. 60 00:03:02,500 --> 00:03:06,530 >> Amma daha excitingly, çox, bir imkan əlləri çirkli almaq üçün, 61 00:03:06,530 --> 00:03:09,350 və bütövlükdə açıq Ürəyinizdə mövzular və alətlər dəstə 62 00:03:09,350 --> 00:03:12,920 və texnika köməkçi var Kursun əsas tədris proqramı, 63 00:03:12,920 --> 00:03:14,810 lakin buna baxmayaraq bağlı. 64 00:03:14,810 --> 00:03:18,400 Həmçinin gözəl gücləndirməklə daş üçün həqiqətən, sərin final layihələr bunu ki, 65 00:03:18,400 --> 00:03:22,020 yaxşı material kənarda, biz əhatə etdik getmək formal problem dəstləri və ya mühazirə. 66 00:03:22,020 --> 00:03:24,446 Belə ki, CS50 veb səhifəsinə getmək seminarlar bütün siyahısı. 67 00:03:24,446 --> 00:03:26,070 Siz hələ qeydiyyatdan deyilsə, ki, gözəl. 68 00:03:26,070 --> 00:03:29,860 Durmayın, hələ qeydiyyatdan və biz canlı streaming link ilə təqib, 69 00:03:29,860 --> 00:03:31,844 gün və vaxt saytında edir. 70 00:03:31,844 --> 00:03:33,760 Və hər şey olacaq qeyd və online qoymaq 71 00:03:33,760 --> 00:03:35,800 Siz edə bilməz, əgər xüsusi gün və dəfə. 72 00:03:35,800 --> 00:03:39,380 >> Thereafter-- də irəlidə yalan nə kimi, əlbəttə, CS50 Hackathon var. 73 00:03:39,380 --> 00:03:43,560 Qəbul həftə sıfır Bu foto, geri, son illərdə axşam bir AM 4 ətrafında. 74 00:03:43,560 --> 00:03:46,900 CS50 ədalətli, yenə hər iki şəhərdə baş tutacaq. 75 00:03:46,900 --> 00:03:49,760 Və sonra, yalnız bitki toxum, hətta hələ də olsa 76 00:03:49,760 --> 00:03:54,080 bir ay plus varsa, dövr sol Siz CS50 öz tədris qoşulmaq istərdim 77 00:03:54,080 --> 00:03:56,770 heyəti, və siz başlamaq istəyirəm bir CA olma haqqında düşünür, 78 00:03:56,770 --> 00:03:59,550 və ya tədris fellow, bilirik ki, ki, haqqında daha çox söhbət başlamaq lazımdır 79 00:03:59,550 --> 00:04:00,630 bu dövr. 80 00:04:00,630 --> 00:04:03,470 Amma burada təsvir bu il komandanın ən. 81 00:04:03,470 --> 00:04:06,950 >> Belə ki, php və mən kədərli idi Keçən həftə [ki? Allyse?] Xahiş 82 00:04:06,950 --> 00:04:09,370 əldə səy getdi Bizə bu gözəl rekvizit 83 00:04:09,370 --> 00:04:11,720 Mən istifadə başa deyil ki, belə həqiqətən yalnız cür axmaq baxdı 84 00:04:11,720 --> 00:04:15,160 biz bütün burada oturan bir kürək var idi ki, gün keçən çərşənbə, və bir az qaşıq. 85 00:04:15,160 --> 00:04:17,709 Amma bu mənim məcazi idi boya çalışır yolu 86 00:04:17,709 --> 00:04:21,600 niyə biz keçid edirik şəkil C PHP kimi bir dil. 87 00:04:21,600 --> 00:04:25,480 Və eyni hər hansı bir ola biləcəyini söylədi dillərdə Java, Python, Ruby sayı 88 00:04:25,480 --> 00:04:31,270 others-- lakin isə ya dəstələri C, məsələn, C bir proqram yazmaq 89 00:04:31,270 --> 00:04:34,050 adətən kimi ola bilər oxşar qaşıq alaraq 90 00:04:34,050 --> 00:04:36,770 və bir deşik qazma torpaq, qum və ya kir. 91 00:04:36,770 --> 00:04:39,770 PHP çox etmək üçün imkan verir problemin böyük sokması, 92 00:04:39,770 --> 00:04:42,842 daha az kodu yazmaq bir qədər kiçik aracı istifadə edərək, 93 00:04:42,842 --> 00:04:45,050 daha çox belə var, çünki funksionallıq da parçalı. 94 00:04:45,050 --> 00:04:47,633 >> İndi, biz, həqiqətən dramatik olsaydı, biz kürək üçün bir şey var ediyorum 95 00:04:47,633 --> 00:04:48,760 Burada, lakin belə ola bilər. 96 00:04:48,760 --> 00:04:51,370 Eyni zamanda, digər məcaz biz ilə gəldi 97 00:04:51,370 --> 00:04:53,770 Əlbəttə ki, siz ola bilər, deyil bir açarı kimi bir şey istifadə 98 00:04:53,770 --> 00:04:56,610 bir dırnaq kimi bir şey çəkic. 99 00:04:56,610 --> 00:04:58,980 Amma əlbəttə, doğru istifadə alət gedir 100 00:04:58,980 --> 00:05:01,360 çox deyil olmaq dil adlı C- 101 00:05:01,360 --> 00:05:03,590 və indi yalnız rahatsız [? Sanders,?] Yəqin ki, 102 00:05:03,590 --> 00:05:07,890 biz belə ki later-- düzeltmek lazımdır doğru vasitədir tez-tez istifadə etmək 103 00:05:07,890 --> 00:05:09,640 olmaq niyyətində deyil Bu aşağı səviyyədə alət. 104 00:05:09,640 --> 00:05:13,720 Həqiqətən, C bir dil deyil ki, Sizin ən heç istifadə edir 105 00:05:13,720 --> 00:05:15,590 və ya mütləq yenidən istifadə etməlidir. 106 00:05:15,590 --> 00:05:18,350 >> Və əslində, bir az yalnız vaxt secret-- 107 00:05:18,350 --> 00:05:23,160 Mən C özümü arasında olduqca çox istifadə Hər payız sentyabr və dekabr 108 00:05:23,160 --> 00:05:23,870 semestr. 109 00:05:23,870 --> 00:05:25,790 Və biz, çünki bir fürsət kimi istifadə 110 00:05:25,790 --> 00:05:27,852 əsaslarını öyrətmək üçün proqramlaşdırması, 111 00:05:27,852 --> 00:05:29,810 və kompüter ilə elm əsasları, data 112 00:05:29,810 --> 00:05:32,435 strukturları, alqoritmlər və like-- lakin çox tez olacaq 113 00:05:32,435 --> 00:05:35,010 sintaksis ki, indi çox və ideyaları C əsas 114 00:05:35,010 --> 00:05:37,530 belə gözəl var daha müasir transfer 115 00:05:37,530 --> 00:05:41,130 yüksək səviyyədə languages ​​kimi PHP və Python və Perl və Java 116 00:05:41,130 --> 00:05:46,750 və Objective-C-, çox deyil, həqiqətən, Objective-C-lakin Swift, bu yeni 117 00:05:46,750 --> 00:05:50,010 languages ​​ki, sizin çox olacaq sonra final layihə ilə dabble. 118 00:05:50,010 --> 00:05:55,070 >> Daha ADO olmadan, belə ki, həqiqətən edək bəzi problemləri həll etmək üçün PHP istifadə edin. 119 00:05:55,070 --> 00:06:00,230 Son ki, erkən Xatırladaq həftə, biz yalnız istifadə CS50 IDE, 120 00:06:00,230 --> 00:06:02,990 bir dinky az proqram yazıb ki, yalnız "Salam dünya" dedi. 121 00:06:02,990 --> 00:06:05,680 Və sonra mən onu xilas bir fayl hello.php çağırıb. 122 00:06:05,680 --> 00:06:07,280 Və sonra mən bu komanda qaçdı. 123 00:06:07,280 --> 00:06:08,080 >> Və niyə? 124 00:06:08,080 --> 00:06:09,900 İngilis, burada nə olub? 125 00:06:09,900 --> 00:06:12,760 Mən nə etdiyimi Mən bu komanda qaçdı? 126 00:06:12,760 --> 00:06:13,405 >> Evet? 127 00:06:13,405 --> 00:06:16,572 >> Auditoriya: bir funksiyası PHP var ki in-- başa düşür ki, nə deyilir. 128 00:06:16,572 --> 00:06:19,696 DAVID Malan: Yaxşı, bir funksiyası var Php və mənə daha konkret olsun, 129 00:06:19,696 --> 00:06:21,810 PHP adlı proqram a.k.a. var 130 00:06:21,810 --> 00:06:25,872 Anlayır tərcüməçi, hello.php məzmunu, 131 00:06:25,872 --> 00:06:27,830 və top şərh alt, soldan sağa 132 00:06:27,830 --> 00:06:29,590 və həmin əmrləri demək nə. 133 00:06:29,590 --> 00:06:33,320 hello.php olan əmrləri, əlbəttə, yalnız kod funksiyaları mənbəyidir 134 00:06:33,320 --> 00:06:35,750 və dəyişənlərin və loops və kimi, biz özümüz ki, 135 00:06:35,750 --> 00:06:37,460 PHP yazılı başlayıb. 136 00:06:37,460 --> 00:06:40,240 >> Lakin C fərqli olaraq, olan bir tərtib dili, 137 00:06:40,240 --> 00:06:42,810 PHP yalnız yazmaq və axır. 138 00:06:42,810 --> 00:06:46,420 Siz ki komisyoncu addım keçmək adet sıfır və olanları üçün konvertasiya, 139 00:06:46,420 --> 00:06:47,790 və sonra çalışır. 140 00:06:47,790 --> 00:06:50,510 Və bu bir ayaq nədir? 141 00:06:50,510 --> 00:06:52,690 Niyə biz addım atlama olunur? 142 00:06:52,690 --> 00:06:55,238 Niyə daha çox müasir languages ​​etmək Bu addımı atlamak edirlər? 143 00:06:55,238 --> 00:06:58,880 144 00:06:58,880 --> 00:07:01,220 Fayda nə idi? 145 00:07:01,220 --> 00:07:02,080 >> Və ya yalnız daxilən? 146 00:07:02,080 --> 00:07:04,200 Biz etdik, hətta əvvəl çox PHP yazılı, 147 00:07:04,200 --> 00:07:07,210 nə haqqında faydalı deyil kodu tərtib sizcə? 148 00:07:07,210 --> 00:07:08,520 Yox? 149 00:07:08,520 --> 00:07:09,610 Törətməkdə deyil? 150 00:07:09,610 --> 00:07:11,350 Başını cızma? 151 00:07:11,350 --> 00:07:12,614 Bəli. 152 00:07:12,614 --> 00:07:13,600 >> Auditoriya: Daha dinamik. 153 00:07:13,600 --> 00:07:14,683 >> DAVID Malan: Daha dinamik? 154 00:07:14,683 --> 00:07:16,032 Siz nə deməkdir? 155 00:07:16,032 --> 00:07:17,000 >> Auditoriya: [işitilemez] 156 00:07:17,000 --> 00:07:20,349 157 00:07:20,349 --> 00:07:22,390 DAVID Malan: OK, yaxşı, belə ki, giriş asılı olaraq, 158 00:07:22,390 --> 00:07:23,470 Siz hər zaman tərtib etmək yoxdur. 159 00:07:23,470 --> 00:07:24,990 Və həqiqətən kimi that-- kimi sadə nə 160 00:07:24,990 --> 00:07:26,990 davam nöqtəsidir kodu tərtib etmək? 161 00:07:26,990 --> 00:07:29,480 Bu yalnız bir addımdır making-- bu tələb olunur 162 00:07:29,480 --> 00:07:31,900 Son bir neçə üçün həftə, iki dəfə çox addımlar 163 00:07:31,900 --> 00:07:33,820 kimi yalnız proqram çalışan. 164 00:07:33,820 --> 00:07:36,940 Bu sizin ki, görən faydalı oldu , s bəzi səhv mesajları və görmək 165 00:07:36,940 --> 00:07:38,720 lakin hələ yalnız bir annoying addım var. 166 00:07:38,720 --> 00:07:41,810 >> Və belə proqramçılar həyata zamanla, niyə biz deyil 167 00:07:41,810 --> 00:07:45,327 yoxdur languages ​​yazmağa başlayın ki, kifayət qədər mexaniki addım lazımdır 168 00:07:45,327 --> 00:07:47,160 belə ki, yalnız yaza bilərsiniz Sizin kodu və axır. 169 00:07:47,160 --> 00:07:48,920 Lakin qiymət nə idi biz ödədik gördüm ki, 170 00:07:48,920 --> 00:07:50,910 müəyyən bir misal ilə, həftə son? 171 00:07:50,910 --> 00:07:51,650 Bəli? 172 00:07:51,650 --> 00:07:52,370 >> Speed. 173 00:07:52,370 --> 00:07:54,690 Belə ki [? ?] tərcüməçi nə bir az yavaş, 174 00:07:54,690 --> 00:07:57,330 ki, adet sıfır və olanları gözəl və bir kompüter üçün sürətli 175 00:07:57,330 --> 00:08:00,070 anlamaq üçün, çünki Intel CPU, və ya nə, 176 00:08:00,070 --> 00:08:03,070 yalnız neler anlayır bit o nümunələri ilə. 177 00:08:03,070 --> 00:08:05,370 Tərcüməçi isə bir proqram ki, həqiqətən deyil 178 00:08:05,370 --> 00:08:07,980 Ascii qaynağından oxumaq üçün var Siz yazılı indeksi, 179 00:08:07,980 --> 00:08:12,700 və çevirmək, belə ki, danışmaq, və ya bu son nəticədə çevirir necə anlamaq 180 00:08:12,700 --> 00:08:13,525 adet sıfır və olanları. 181 00:08:13,525 --> 00:08:15,650 Belə ki, yalnız bir az edir bir performans hit bit. 182 00:08:15,650 --> 00:08:16,858 Belə ki, ticarət-off bir az var. 183 00:08:16,858 --> 00:08:21,570 Biz burada bunu İndi əgər, mənə imkan irəli getmək və aşağıdakı kimi bir nümunə yoxdur. 184 00:08:21,570 --> 00:08:26,610 Mən burada getmək varsa, yeni bir fayl, mən gedirəm yenə bu saxlamaq üçün hello.php edir. 185 00:08:26,610 --> 00:08:31,450 İndi irəli getmək üçün gedirəm və "print salam dünya", deyə - 186 00:08:31,450 --> 00:08:35,130 və mən çap istifadə edə bilərsiniz ki, xatırlayıram, mən deyil print-F istifadə etmək lazımdır. İndi burada, 187 00:08:35,130 --> 00:08:42,039 Mən hello.php PHP əgər, huh-- mən şərh üçün görünmür. 188 00:08:42,039 --> 00:08:43,412 Mən yanlış nə idi? 189 00:08:43,412 --> 00:08:44,710 >> Auditoriya: bucaqlı bilərziklər. 190 00:08:44,710 --> 00:08:47,015 >> DAVID Malan: Bəli, sizə lazım olan ki, bucaq bracket qədər top. 191 00:08:47,015 --> 00:08:49,390 Belə ki, annoying cür, lakin tez istifadə almaq. 192 00:08:49,390 --> 00:08:53,500 Mən PHP kodu yazmaq varsa, mən ümumiyyətlə proqram demək lazımdır, 193 00:08:53,500 --> 00:08:56,950 və ya hey, tərcüməçi demək PHP, burada bəzi PHP kodu gəlir. 194 00:08:56,950 --> 00:09:00,440 Və sonra yaxşı tədbir üçün, mən Bu bu yaxın, əksinə 195 00:09:00,440 --> 00:09:03,740 yalnız sual işarəsi bucağı ilə bracket, indi aşağı burada, belə ki, 196 00:09:03,740 --> 00:09:06,840 Mən bu run əgər indi Mən istədiyiniz nəticə əldə. 197 00:09:06,840 --> 00:09:09,820 >> İndi bir qədər optimallaşdırma edək, yalnız əvvəl gördüm ki. 198 00:09:09,820 --> 00:09:14,040 Bu cür annoying i ki, PHP kosmik hello.php run var, 199 00:09:14,040 --> 00:09:16,060 çünki keçmiş I yalnız dot çizgi yazmaq bilər 200 00:09:16,060 --> 00:09:17,560 cür gözəl proqram adı. 201 00:09:17,560 --> 00:09:19,420 Bu yaxşı bir istifadəçi experience növü var. 202 00:09:19,420 --> 00:09:24,160 >> Bu çıxır, belə ki, bunu edə bilərsiniz aşağıdakı kimidir I PHP 203 00:09:24,160 --> 00:09:28,780 Bu kifayət qədər sirli istifadə edə bilərsiniz Burada üst sehr, 204 00:09:28,780 --> 00:09:31,740 olan ümumiyyətlə shebang adlanır, Bu kəskin rəmzidir vasitəsi, 205 00:09:31,740 --> 00:09:34,270 belə danışmaq, bu bang edir və ya bir nida point. 206 00:09:34,270 --> 00:09:38,490 Bu artıq bir proqram yoldur tipik Linux sistemi ki, 207 00:09:38,490 --> 00:09:41,500 ətraf mühit, və ya ENV adlanır. 208 00:09:41,500 --> 00:09:43,920 Və bu uzun hekayə xətti short-- line bir yalnız 209 00:09:43,920 --> 00:09:48,710 kompüter hey, PHP tapmaq deyir ətraf mühit mənim üçün tərcüməçi, 210 00:09:48,710 --> 00:09:50,610 belə danışmaq, yaddaş tapa bilərsiniz. 211 00:09:50,610 --> 00:09:54,130 >> Və indi gözəl nə var ki, mən burada getmək əgər, 212 00:09:54,130 --> 00:09:57,750 Mən dot çizgi edə bilərsiniz salam dot php, or-- hmm. 213 00:09:57,750 --> 00:09:59,000 Giriş qadağandır. 214 00:09:59,000 --> 00:10:02,350 Bəli, bu daha görürsünüz Əgər problem ilə yeddi müəyyən 215 00:10:02,350 --> 00:10:04,060 artıq, icazələrin var. 216 00:10:04,060 --> 00:10:06,510 Mən lazımdır ki çıxır bu əmri icra etmək 217 00:10:06,510 --> 00:10:10,779 [adlanır? chamod?] dəyişiklik bir plus x hello.php mode--. 218 00:10:10,779 --> 00:10:13,820 I [işitilemez] əlavə bu ehtiyac mənim kompüter izah addım, 219 00:10:13,820 --> 00:10:16,400 hello.php yürütülebilir etmək. 220 00:10:16,400 --> 00:10:21,310 İndi dot baş verir nə nə izləmək hello.php doğramaq, yalnız çalışır. 221 00:10:21,310 --> 00:10:23,310 Mən müəyyən etmək üçün ehtiyac yoxdur Artıq tərcüməçi. 222 00:10:23,310 --> 00:10:26,680 Mən hətta gözəlləşir edə bilər, hələ mən bu şey adını dəyişmək. 223 00:10:26,680 --> 00:10:30,570 Mən yalnız hello.php hərəkət əgər Salam, belə ki, sol üst bildiriş 224 00:10:30,570 --> 00:10:32,860 Proqramın adı Həqiqətən İndi yalnız Hello. 225 00:10:32,860 --> 00:10:37,300 İndi bir C proqram kimi baxmaq edə bilər, Bu php yazılı baxmayaraq 226 00:10:37,300 --> 00:10:39,210 və ya səmimi hər hansı bir sayı digər dillərdə. 227 00:10:39,210 --> 00:10:41,480 >> Belə ki, marginal genişləndirilməsi, heç bir funksional fərq. 228 00:10:41,480 --> 00:10:44,460 Amma bu yalnız bir az maraq var İndi, siz proqramları yaza bilərsiniz, belə ki, 229 00:10:44,460 --> 00:10:48,989 hər hansı bir dildə və istifadəçi yoxdur bilmək və ya o nə qayğı var. 230 00:10:48,989 --> 00:10:51,030 Yaxşı, bir daha baxaq çekici Məsələn indi 231 00:10:51,030 --> 00:10:52,850 Mən əvvəlcədən çırpılmış ki. 232 00:10:52,850 --> 00:10:54,955 Bu quote.php adlanır. 233 00:10:54,955 --> 00:10:56,740 Və mövcud online var. 234 00:10:56,740 --> 00:11:00,299 Və bu, olduqca short-- var ki, qeyd lakin bu bir command line proqramı 235 00:11:00,299 --> 00:11:02,840 fond qiymətləri baxmaq üçün gedir Mənim üçün olan həqiqətən gedir 236 00:11:02,840 --> 00:11:04,230 problem yeddi qurmaq üçün ilgili olmalıdır. 237 00:11:04,230 --> 00:11:05,396 >> Belə ki, mən edirəm nə edək. 238 00:11:05,396 --> 00:11:08,640 Çox üst mən var açıq bracket sual işarəsi PHP. 239 00:11:08,640 --> 00:11:13,372 Mən vasitəsi Mən bu xətt var functions.php-- adlı bir fayl tələb 240 00:11:13,372 --> 00:11:15,080 biz görmək olacaq bir az bu daha çox, 241 00:11:15,080 --> 00:11:17,340 lakin bu C kimi kəskin versiyası daxildir 242 00:11:17,340 --> 00:11:19,090 Siz getmək istədiyiniz Başqa bir fayl daxildir. 243 00:11:19,090 --> 00:11:23,720 PHP baxmayaraq, bu tələb çağırır də funksiyası daxildir malikdir. 244 00:11:23,720 --> 00:11:26,861 Və bu function.php çıxır ki yalnız bir şey I sinif əvvəl yazdı. 245 00:11:26,861 --> 00:11:29,860 Çünki, eyni kataloq qoyun Mən bəzi kodunu amil istədi 246 00:11:29,860 --> 00:11:31,800 ki, biz başqa yerdə istifadə edə bilərsiniz. 247 00:11:31,800 --> 00:11:34,560 >> Bu arada, siz yəqin ki, edə bilərsiniz burada neler çıxarmaq. 248 00:11:34,560 --> 00:11:39,200 Bu, C lakin bir az fərqli Mən nə deməkdir düzgün istifadə təmin? 249 00:11:39,200 --> 00:11:41,180 Daha texniki bu tərcümə. 250 00:11:41,180 --> 00:11:45,950 Hansı hallarda am proqram çıxdıqda və ya mövcud? 251 00:11:45,950 --> 00:11:47,074 Evet? 252 00:11:47,074 --> 00:11:47,990 >> Auditoriya: Siz yoxdur iki command line dəlilləri. 253 00:11:47,990 --> 00:11:49,480 >> DAVID MALAN: Mən yox line dəlilləri əmr. 254 00:11:49,480 --> 00:11:52,396 Və o ki, bir xatırlayıram arqumentlər proqramın adı özü edir. 255 00:11:52,396 --> 00:11:55,340 Və ikinci olacaq başqa bir söz Mən tez sonra yazın. 256 00:11:55,340 --> 00:11:57,460 Belə ki, yalnız C kimi, bu yoxlanılması mənim yoludur, 257 00:11:57,460 --> 00:12:00,022 istifadəçi əməkdaşlıq etdi və Mən nəzərdə tutulmuş proqram run? 258 00:12:00,022 --> 00:12:01,730 İndi, bir şey var bir az fərqli 259 00:12:01,730 --> 00:12:04,020 bütün C-ilk biz Bu dollar işarəsi var, 260 00:12:04,020 --> 00:12:07,710 və bir dollar nə PHP adlanır imzalamaq? 261 00:12:07,710 --> 00:12:08,440 Yalnız bir dəyişən. 262 00:12:08,440 --> 00:12:11,731 Bu izlədi bütün və yalnız bir dəyişən var nə həqiqətən zəng etmək istəyirəm. 263 00:12:11,731 --> 00:12:14,000 Bir şey var edək Mənim PHP proqramı itkin, 264 00:12:14,000 --> 00:12:18,210 yalnız son itkin kimi həftə, C qarşı nə olan? 265 00:12:18,210 --> 00:12:21,620 >> A növləri, həm də başqa bir şey. 266 00:12:21,620 --> 00:12:26,409 Heç bir şey yoxdur əsas funksiyası funksiyası. 267 00:12:26,409 --> 00:12:27,450 Heç bir əsas funksiyası var. 268 00:12:27,450 --> 00:12:29,680 Siz yalnız yazmağa başlayın olmadan kodu 269 00:12:29,680 --> 00:12:32,790 kifayət qədər ixtiyari narahat bəzi default adlandırma konvensiya 270 00:12:32,790 --> 00:12:33,880 funksiyası əsas. 271 00:12:33,880 --> 00:12:36,720 Belə ki, Arg C, yalnız həqiqətən qlobal dəyişən 272 00:12:36,720 --> 00:12:39,049 tərcüməçi ki, Mənə imkan verir. 273 00:12:39,049 --> 00:12:40,090 İndi bu maraqlı deyil. 274 00:12:40,090 --> 00:12:41,140 Belə ki, məhsulları axtarmaq. 275 00:12:41,140 --> 00:12:43,370 Dollar işarəsi fond deyil sol, ki, mənim dəyişən var. 276 00:12:43,370 --> 00:12:45,120 Sağ tərəfində, yəqin var 277 00:12:45,120 --> 00:12:50,270 PHP bir funksiyası Sistemi adlı Mən son command line keçən alıram 278 00:12:50,270 --> 00:12:51,902 arqument nə to-- söz. 279 00:12:51,902 --> 00:12:53,610 Və biz bu necə görürsünüz bir anda çalışır. 280 00:12:53,610 --> 00:12:55,380 >> Və sonra nəhayət mən qiymət hesabat alıram. 281 00:12:55,380 --> 00:12:58,650 Mən bir çap alıram belə payı. 282 00:12:58,650 --> 00:13:02,082 Və bu, xatırlayıram da php php bir şəkildə yol 283 00:13:02,082 --> 00:13:04,290 Siz var olmayan Artıq dollar işarəsi S. 284 00:13:04,290 --> 00:13:06,782 Siz yalnız qıvrım aşırma istifadə edə bilərsiniz və bəzi dəyişən plug. 285 00:13:06,782 --> 00:13:09,240 Siz narahat yoxdur eyni şəkildə printf istifadə edərək. 286 00:13:09,240 --> 00:13:13,530 >> Və bir kənara kimi bir dəyişən qoymaq zaman oxşar ikiqat quotes daxilində, 287 00:13:13,530 --> 00:13:17,370 Bir xülya texnika istifadə olunur dəyişən interpolation çağırıb. 288 00:13:17,370 --> 00:13:20,380 Bu, sadəcə burada dəyişən plug deməkdir. 289 00:13:20,380 --> 00:13:23,760 Və bir kənara, bəzi siz gələn kimi digər proqramlaşdırma fonları, 290 00:13:23,760 --> 00:13:26,960 Siz tək quotes istifadə edə bilər ətrafında strings bunu. 291 00:13:26,960 --> 00:13:30,290 Siz ikiqat quotes istifadə etməlidir dəyişən interpolation iş. 292 00:13:30,290 --> 00:13:32,740 Əks halda siz sözün lazımdır bu qıvrım aşırma görürük. 293 00:13:32,740 --> 00:13:34,500 >> Belə ki, nəhayət, nin irəli getmək və bu run edək. 294 00:13:34,500 --> 00:13:36,690 Mənim terminal bir az böyük etmək edək. 295 00:13:36,690 --> 00:13:41,940 Mənə davam və run edək Mənim quote kataloq daxilində. 296 00:13:41,940 --> 00:13:46,950 [? CDsource?] [? AM?] [? quote?] PHP quote dot PHP, 297 00:13:46,950 --> 00:13:50,290 və mən bir şey axtarmaq üçün gedirəm onun ticker simvolu GOOG kimi, 298 00:13:50,290 --> 00:13:55,510 və yeni adı bir payı, Alphabet Inc, bu gün etibarilə $ 717 başa gəlir. 299 00:13:55,510 --> 00:13:58,680 Bütün hüquqlar, biz istəyirsinizsə yenə bu run, hər kəs 300 00:13:58,680 --> 00:14:02,600 başqa fond ticker var Onlar yuxarı baxmaq istəyirsiniz? 301 00:14:02,600 --> 00:14:06,770 >> Microsoft Mən hesab edirəm ki, bu bir MSFT-- $ 53. 302 00:14:06,770 --> 00:14:09,720 Mən Yahoo bəlkə hesab edirəm. 303 00:14:09,720 --> 00:14:12,130 Və Facebook edir. 304 00:14:12,130 --> 00:14:13,740 >> Bunu bu proqram nədir? 305 00:14:13,740 --> 00:14:16,306 sehrli əlaqədar görünür ki, axtarış funksiyası. 306 00:14:16,306 --> 00:14:17,430 Belə ki, tez nəzər salaq. 307 00:14:17,430 --> 00:14:21,815 >> Ki, gəlmir çıxır PHP ilə, functions.php var. 308 00:14:21,815 --> 00:14:23,690 Və biz vasitəsilə getmək olmaz böyük ətraflı bu, 309 00:14:23,690 --> 00:14:28,040 lakin burada operativ söz fark ki functions.php-- xətti altı haqqında 310 00:14:28,040 --> 00:14:29,440 Mən sözün funksiyası demək. 311 00:14:29,440 --> 00:14:31,050 Mən funksiyası adı daxil. 312 00:14:31,050 --> 00:14:34,330 Mən sonra hər hansı bir daxil dəlilləri və ya parametrləri, 313 00:14:34,330 --> 00:14:36,480 Hesab edirəm ki, funksiya növ take-- istəyirəm. 314 00:14:36,480 --> 00:14:37,580 Və sonra həyata keçiririk. 315 00:14:37,580 --> 00:14:39,240 >> Mən əl dalğa lazımdır həyata keçirilməsi, 316 00:14:39,240 --> 00:14:42,115 kifayət qədər inkişaf etmiş doğru-ci ildən İndi, lakin biz, həqiqətən, yenidən görmək lazımdır 317 00:14:42,115 --> 00:14:44,700 bir həftə problem yeddi seçin. 318 00:14:44,700 --> 00:14:47,490 Amma çox, bu qədər təmiz olar. 319 00:14:47,490 --> 00:14:49,590 Mən də daxil Bugünkü code versiyası 320 00:14:49,590 --> 00:14:52,340 heç bir dot PHP faylı quote, edir. 321 00:14:52,340 --> 00:14:57,270 Da ehtimalla nə çünki yalnız sitat adlı proqramın top? 322 00:14:57,270 --> 00:15:00,140 Ki shebang-- sözdə kifayət qədər sirli sehr 323 00:15:00,140 --> 00:15:04,590 ki, sonra PHP tapmaq və deyir burada kod axır. 324 00:15:04,590 --> 00:15:07,360 >> Bütün hüquqlar, belə ki, gətirir biz off sol harada us 325 00:15:07,360 --> 00:15:09,560 ilə də olsa son sýrada bir daha inkişaf etmiş nümunələri. 326 00:15:09,560 --> 00:15:13,980 Hər hansı bir sualınız indiyə qədər haqqında PHP və ya biz nə edirik? 327 00:15:13,980 --> 00:15:15,570 No-- bütün hüququ. 328 00:15:15,570 --> 00:15:16,180 Evet? 329 00:15:16,180 --> 00:15:19,610 >> Auditoriya: Inside HTML faylları, səni nə 330 00:15:19,610 --> 00:15:22,226 [? Siz nə?] [? yalnız zəng?] bir [Işitilemez] PHP fayl? 331 00:15:22,226 --> 00:15:23,350 DAVID Malan: Yaxşı sualdır. 332 00:15:23,350 --> 00:15:26,070 Biz istəyirik bir web kontekstində keçid sözün haqqında 333 00:15:26,070 --> 00:15:28,028 Siz qondarma istifadə etməyin üst shebang, 334 00:15:28,028 --> 00:15:31,980 web server tez-tez çünki proqram Apache və ya Microsoft adlı 335 00:15:31,980 --> 00:15:37,470 IIS, Internet Information Server, və ya digər web server proqram hər hansı bir sayı, 336 00:15:37,470 --> 00:15:40,636 Bu gördüyü zaman bilir ki, bir dot PHP fayl, bu ki, 337 00:15:40,636 --> 00:15:42,010 bu tərcüməçi run lazımdır. 338 00:15:42,010 --> 00:15:43,468 Bu ilk xətt baxmaq deyil. 339 00:15:43,468 --> 00:15:45,580 Bu ilk line oyun So Siz etdiyiniz yalnız zaman 340 00:15:45,580 --> 00:15:48,330 yazılı command line və proqramları biz super tez-tez olmayacaq, 341 00:15:48,330 --> 00:15:52,510 lakin bu körpü bizim yoldur İndi bizim PHP üçün C nümunələri. 342 00:15:52,510 --> 00:16:00,680 >> Belə ki, həqiqətən bu dünyada körpü imkan web command line dünya 343 00:16:00,680 --> 00:16:02,230 aşağıdakı etməklə. 344 00:16:02,230 --> 00:16:05,090 Mənə davam və cəlb edək Burada yalnız bir an üçün artıq. 345 00:16:05,090 --> 00:16:09,940 Biz daha bir web server, və ya əgər belə biz burada mənim laptop üzərində varsa, 346 00:16:09,940 --> 00:16:11,280 Mən bu kimi çəkmək lazımdır. 347 00:16:11,280 --> 00:16:14,250 Və burada biz var bəzi formada internet. 348 00:16:14,250 --> 00:16:18,210 Və sonra burada, biz bir bina bir server 349 00:16:18,210 --> 00:16:20,760 Bu necə internet deyil çalışır ki, burada da 350 00:16:20,760 --> 00:16:23,120 bəlkə bəzi işıqları ilə server edir. 351 00:16:23,120 --> 00:16:27,530 Həqiqətən nələr olur Bu iki əlaqələri arasında? 352 00:16:27,530 --> 00:16:29,240 >> Belə ki, bu binada web server edir. 353 00:16:29,240 --> 00:16:31,420 Bu yalnız bir kompüter var ki, bir əməliyyat çalışan 354 00:16:31,420 --> 00:16:34,561 system-- bəlkə pulsuz proqram adlı CS50 IDE çalışan Apache. 355 00:16:34,561 --> 00:16:36,310 Beləliklə, siz həqiqətən bilərsiniz Bu binanın hesab 356 00:16:36,310 --> 00:16:38,579 bina kimi olan CSt0 IDE saxlanılır. 357 00:16:38,579 --> 00:16:40,870 Siz bütün harada Siz hesabları, burada bütün 358 00:16:40,870 --> 00:16:43,130 öz web server , siz bütün çalışan 359 00:16:43,130 --> 00:16:45,730 , öz unikal URL biz müzakirə başladı, 360 00:16:45,730 --> 00:16:47,280 P. altı qurmaq və daha çox görürsünüz. 361 00:16:47,280 --> 00:16:49,450 >> Burada mənim laptop bir yerdə var internet başqa. 362 00:16:49,450 --> 00:16:54,550 Mən URL ziyarət zaman, belə ki, məxsusdur Mənə ki, internet trafik gedir 363 00:16:54,550 --> 00:16:58,360 server, server-nin üzərində qəbul edən HTTP request-- 364 00:16:58,360 --> 00:17:02,900 kimi index.html almaq və bu ki, web page cavab. 365 00:17:02,900 --> 00:17:04,280 Belə ki, ümumi paradiqma var. 366 00:17:04,280 --> 00:17:07,089 Up hər şey Halbuki İndi bu gün hər şey qədər 367 00:17:07,089 --> 00:17:09,660 yalnız olurdu Bu binanın sərhədləri. 368 00:17:09,660 --> 00:17:12,910 Mən laptop istifadə, lakin Mən CS50 IDE bağlı idi 369 00:17:12,910 --> 00:17:17,369 həmin proqramların bütün I çalışan server, özü içərisində idi. 370 00:17:17,369 --> 00:17:22,660 >> Amma indi, bu PHP yeniden başlamaq edək bəzi faktiki proqramları yazmaq üçün 371 00:17:22,660 --> 00:17:24,230 bir web server tərəfindən xidmət olunur. 372 00:17:24,230 --> 00:17:30,320 Və bunu, mən getmək üçün gedirəm nümunələri bütün dəstə daxil 373 00:17:30,320 --> 00:17:33,710 Burada bu fikir təqdim edir. 374 00:17:33,710 --> 00:17:38,500 Belə ki, bu bir xülya yolu növüdür proqramlaşdırma paradiqma izah. 375 00:17:38,500 --> 00:17:41,540 >> Və əslində, kimi CS50 çıxmaq və ya, final layihələr üzərində işləmək 376 00:17:41,540 --> 00:17:43,520 və ya təqib etmək sinif, siz başlamaq lazımdır 377 00:17:43,520 --> 00:17:45,740 vücuda görmək xüsusilə böyüyüb olan 378 00:17:45,740 --> 00:17:48,300 C kimi dil ilə super aşağı level-- var ki, 379 00:17:48,300 --> 00:17:51,290 yaxşı var ki, həyata yazı proqram yolları. 380 00:17:51,290 --> 00:17:53,290 Müəyyən var təqib edə bilərsiniz nümunələri, 381 00:17:53,290 --> 00:17:57,640 faylları təşkil müəyyən yolları və funksiyaları adlandırma yolları, 382 00:17:57,640 --> 00:18:00,300 belə ki, uzun hekayə qısa, dünya gəldi 383 00:18:00,300 --> 00:18:04,340 acronyms bütün dəstə ilə və proqramlaşdırma yollarını adları. 384 00:18:04,340 --> 00:18:06,260 Bunlar istifadə edə bilər yalnız üsulları var. 385 00:18:06,260 --> 00:18:09,660 >> Onlardan biri, MVC adlanır Model View Controller üçün. 386 00:18:09,660 --> 00:18:12,270 Və bu, yalnız indi hədsiz mürəkkəb 387 00:18:12,270 --> 00:18:18,960 Siz salınması necə deyərək yolu bir PHP-based web, bizim halda. 388 00:18:18,960 --> 00:18:22,140 Siz faylları təşkil necə, necə, məntiq təşkil edirsiniz 389 00:18:22,140 --> 00:18:26,220 daha asan edir ki, bir şəkildə daha mürəkkəb web yazmaq? 390 00:18:26,220 --> 00:18:28,550 Həqiqətən, biz tez lazımdır yeddi p-set ilə orada almaq. 391 00:18:28,550 --> 00:18:32,020 >> MVC dünyada Belə ki, olacaq görmək ki, bizim code ümumiyyətlə can 392 00:18:32,020 --> 00:18:38,290 ya model kodu kimi xarakterizə etmək, və ya nəzarətçi indeksi, və ya keçirmək kodu. 393 00:18:38,290 --> 00:18:40,200 Mən gedirəm Bu aşağıdakı kimi sadəyə 394 00:18:40,200 --> 00:18:42,074 nəzarətçi edir Proqram beyin, 395 00:18:42,074 --> 00:18:44,100 Bu olduğu bütün maraqlı məntiq olur. 396 00:18:44,100 --> 00:18:46,110 Belə ki, hər şey biz oldum indiyədək sinif yazılı, 397 00:18:46,110 --> 00:18:48,210 cür nəzarətçi kimi kod Bu nəzarət edir 398 00:18:48,210 --> 00:18:50,585 proqram, sizin loops, sizin şərait, sizin funksiyaları 399 00:18:50,585 --> 00:18:52,100 və dəyişənlərin və bütün. 400 00:18:52,100 --> 00:18:56,160 >> Views, indi bir az olacaq web dünyada daha aydın. 401 00:18:56,160 --> 00:18:59,360 A view estetik deyil Sizin veb. 402 00:18:59,360 --> 00:19:04,080 Bu istifadəçi şəkillər sees-- nə HTML masalar, HTML tags və bütün 403 00:19:04,080 --> 00:19:08,220 ki, tüklü estetik bütün yazmaq ki, çətin deyil stuff, 404 00:19:08,220 --> 00:19:11,380 ancaq yaradan etdiyiniz yalnız nə, Sözdə görünüşü estetik edir. 405 00:19:11,380 --> 00:19:13,880 Və model, nəticədə gedir Verilənlər bazası stuff-- olmaq üçün 406 00:19:13,880 --> 00:19:16,510 biz bütün dalğıc başlamaq lazımdır daha bu Çərşənbə. 407 00:19:16,510 --> 00:19:19,740 Belə ki, nəzarətçi məntiq, görünüşü, estetik stuff deyil 408 00:19:19,740 --> 00:19:23,500 və model harada olacaq Biz faktiki veri. 409 00:19:23,500 --> 00:19:26,410 >> Belə ki, daha konkret, bu baxaq Aşağıdakı misal ilə. 410 00:19:26,410 --> 00:19:34,700 Mən burada dizine getmək üçün gedirəm Bugünkü mənbəyi olan bütün kod 411 00:19:34,700 --> 00:19:35,770 mövcud online. 412 00:19:35,770 --> 00:19:37,800 Mən versiyası sıfır getmək üçün gedirəm. 413 00:19:37,800 --> 00:19:41,500 Və burada zəng edək is-- CS50 veb versiyası sıfır. 414 00:19:41,500 --> 00:19:43,010 Bütün çox burada deyil. 415 00:19:43,010 --> 00:19:46,810 Bu, çox sadə web page var yəqin ki, istifadə nə HTML tags-- yalnız 416 00:19:46,810 --> 00:19:48,970 Ötən nümunələri tahmin? 417 00:19:48,970 --> 00:19:49,890 >> Bu nədir? 418 00:19:49,890 --> 00:19:53,920 Yəqin ki, böyük və qalın üçün H1-- adı, üst qədər ki logo, CS50. 419 00:19:53,920 --> 00:19:55,080 Və başqa nə oyun edir? 420 00:19:55,080 --> 00:19:55,799 Evet? 421 00:19:55,799 --> 00:19:56,840 Auditoriya: unordered siyahısı. 422 00:19:56,840 --> 00:19:59,990 DAVID Malan: unordered list-- belə UL tag və LI tags bəlkə bir neçə. 423 00:19:59,990 --> 00:20:01,840 Və bu unutmayın yoxsa, Bu vicdanla məsələ deyil. 424 00:20:01,840 --> 00:20:04,170 Bu tüklü sort var HTML icra ətraflı 425 00:20:04,170 --> 00:20:06,378 Siz tez baxmaq və geri sizin yolda edirik. 426 00:20:06,378 --> 00:20:10,040 Biz proqramlaşdırma üzrə daha çox diqqət lazımdır juicier ədəd fikir. 427 00:20:10,040 --> 00:20:12,890 >> Belə ki, yalnız bir sürətli götürək dilidir HTML baxmaq və həqiqətən 428 00:20:12,890 --> 00:20:16,880 Mən Yup, burada view mənbə açmaq əgər, ki, məhz burada olacaq nə. 429 00:20:16,880 --> 00:20:18,440 Bir UL tag var. 430 00:20:18,440 --> 00:20:20,630 Ki, daxili iç içə LI tags edir. 431 00:20:20,630 --> 00:20:24,470 Və sonra mən URL borc Burada faktiki proqramı. 432 00:20:24,470 --> 00:20:27,570 >> Və sonra da lectures.php yəqin deyil 433 00:20:27,570 --> 00:20:31,640 başqa dinamik səhifə ki,-nin ah see-- imkan var olacaq 434 00:20:31,640 --> 00:20:33,170 mühazirə ilk iki həftə. 435 00:20:33,170 --> 00:20:36,600 Belə ki, həftə sıfır və həftədə bir, edək Mən səhifə mənbə keçirmək əgər şeylərdir baxmaq, 436 00:20:36,600 --> 00:20:38,120 də super sadə. 437 00:20:38,120 --> 00:20:42,430 Bu iki pages aparıcı adlı week0.php və week1.php. 438 00:20:42,430 --> 00:20:44,040 Belə ki, nə indi hesab edir. 439 00:20:44,040 --> 00:20:50,630 >> Mən week0.php basın, mənim laptop week0.php üçün sorğu edir. 440 00:20:50,630 --> 00:20:53,700 441 00:20:53,700 --> 00:20:58,110 web server, a.k.a., CS50 IDE, ki, virtual zərf alır. 442 00:20:58,110 --> 00:21:01,040 Bu mesaj görən oldu kimi week0.php almaq. 443 00:21:01,040 --> 00:21:05,060 O fayl tərcümə olunur, top alt fayl soldan sağa 444 00:21:05,060 --> 00:21:07,720 adlı week0.php-- və nəticələrini spitting. 445 00:21:07,720 --> 00:21:10,510 Belə ki, bu fayl daxilində, week0.php olmalıdır 446 00:21:10,510 --> 00:21:15,410 yaradan nəzarətçi məntiq Bu HTML, və biz tezliklə görəcəksiniz. 447 00:21:15,410 --> 00:21:19,340 >> Amma indi üçün, mənə həftə sıfır basın bildirin və indi biz, Çərşənbə və Cümə var 448 00:21:19,340 --> 00:21:25,260 və indi biz slaydlar yavaş-yavaş həftə sıfır. 449 00:21:25,260 --> 00:21:27,400 Və geri bilər bu geri yol. 450 00:21:27,400 --> 00:21:29,340 Belə ki, bu veb edir bütün var. 451 00:21:29,340 --> 00:21:31,120 >> Belə ki, bu bunu necə hesab edək. 452 00:21:31,120 --> 00:21:34,290 Mən geri getmək üçün gedirəm CS50 IDE burada mənbə kodu, 453 00:21:34,290 --> 00:21:36,660 Mən index.php açmaq üçün gedirəm. 454 00:21:36,660 --> 00:21:38,910 Bu fayl üst şərh bir dəstə edir. 455 00:21:38,910 --> 00:21:43,000 Və sonra bu fayl ortasında, onu çıxır heç bir PHP kodu. 456 00:21:43,000 --> 00:21:47,380 Siz heç bir yoxdur, çünki açıq bracket sual işarəsi PHP tags, 457 00:21:47,380 --> 00:21:49,180 Yalnız HTML qoymaq üçün pulsuz istəyirik. 458 00:21:49,180 --> 00:21:51,480 >> Çünki nə PHP tərcüməçi, etmək nəzərdə tutulur 459 00:21:51,480 --> 00:21:53,938 Bu faylı oxuyur zaman alt üst soldan sağa 460 00:21:53,938 --> 00:21:59,100 Bu yalnız arasında görür kodu şərh bu bucaq mötərizədə sual işarəsi. 461 00:21:59,100 --> 00:22:02,380 Və başqa bir şey deyil ki, PHP kimi tanımaq, yalnız həyata spits. 462 00:22:02,380 --> 00:22:05,080 Və HTML məhsulları sırasındadır yalnız tüpürmək edəcək. 463 00:22:05,080 --> 00:22:09,090 >> Belə ki, bu fayl ola bilər index.html adlanır, 464 00:22:09,090 --> 00:22:11,690 amma hər şeyi adlandırma alıram bir gücləndirməklə daş kimi dot PHP. 465 00:22:11,690 --> 00:22:15,960 Eyni Lectures.php-- underwhelming, yalnız bir HTML var. 466 00:22:15,960 --> 00:22:19,840 Week0.php, eyni yalnız bir HTML. 467 00:22:19,840 --> 00:22:22,300 >> Amma indi qoymaq bildirin atasözü mühəndis papaq, 468 00:22:22,300 --> 00:22:24,400 və biz bu inkişaf edə bilər necə hesab edir. 469 00:22:24,400 --> 00:22:28,541 Bu etmək çətin deyil, lakin mən növ surəti və pastası daxil keçir. 470 00:22:28,541 --> 00:22:31,540 Və əslində, mən həftə iki varsa, siz Mən yəqin ki, gedirəm nə bilirik? 471 00:22:31,540 --> 00:22:34,940 Mən deyiləm, week1.php getmək üçün gedirəm hər şey qeyd etmək gedir. 472 00:22:34,940 --> 00:22:39,110 Mən surəti gedirəm, yapışdırıb week2.php adlı yeni fayla, 473 00:22:39,110 --> 00:22:42,440 bəzi URL çimdik, və mənim yol ola bilər. 474 00:22:42,440 --> 00:22:45,240 >> Belə ki, biz nə əsasında Artıq C görüldü 475 00:22:45,240 --> 00:22:46,860 Bu inşallah, sağ hiss etmir. 476 00:22:46,860 --> 00:22:49,610 Surəti, pastası nadir hallarda doğru həll. 477 00:22:49,610 --> 00:22:51,429 Beləliklə, biz başlaya bilərsiniz nə Bu yaxşılaşdırılması üçün nə etmək? 478 00:22:51,429 --> 00:22:53,345 Harada imkanlar Daha yaxşı dizayn üçün? 479 00:22:53,345 --> 00:22:56,890 480 00:22:56,890 --> 00:22:58,760 >> Mən almaq zaman həftə səkkiz, gedir 481 00:22:58,760 --> 00:23:00,910 həqiqətən annoying olmaq Mən dəyişmək istəyirsinizsə 482 00:23:00,910 --> 00:23:03,930 hər bir font Mən istəyirəm, və ya əgər mənim pages 483 00:23:03,930 --> 00:23:06,522 layout strukturu dəyişdirmək üçün. 484 00:23:06,522 --> 00:23:08,396 Belə ki, burada imkan var Daha yaxşı dizayn üçün? 485 00:23:08,396 --> 00:23:11,990 486 00:23:11,990 --> 00:23:15,160 Yaxşı, nə hesab edək bu faylları bütün arasında paylaşdı. 487 00:23:15,160 --> 00:23:21,696 >> Burada həftə, həftə biri sıfır, burada lectures.php var, 488 00:23:21,696 --> 00:23:25,790 burada eyni nə index.php-- və müxtəlif, təxminən nə danışan, 489 00:23:25,790 --> 00:23:26,760 Bu fayllar hər? 490 00:23:26,760 --> 00:23:30,560 491 00:23:30,560 --> 00:23:32,060 Evet? 492 00:23:32,060 --> 00:23:34,560 >> Auditoriya: [işitilemez] 493 00:23:34,560 --> 00:23:41,244 494 00:23:41,244 --> 00:23:42,160 DAVID Malan: OK, yaxşı. 495 00:23:42,160 --> 00:23:46,115 Belə bir model, şübhəsiz ki, vasitəsi var hər dəfə mən mühazirə I seçin 496 00:23:46,115 --> 00:23:48,250 Mən yaradan olmalıdır çox oxşar axtarır səhifə. 497 00:23:48,250 --> 00:23:50,375 Və belə bəlkə mən leverage əslində, həqiqətən, 498 00:23:50,375 --> 00:23:53,060 qəsdən sayısal biz Bizim lectures-- dizine 499 00:23:53,060 --> 00:23:55,290 Mən daha çox qoymaq bilər Sizin cavab sözləri. 500 00:23:55,290 --> 00:23:59,984 Və həqiqətən, yalnız bir şey nə həftə arasında dəyişən one-- 501 00:23:59,984 --> 00:24:02,400 və belə mənə aşağı diyirləyin bildirin təxminən eyni place-- da 502 00:24:02,400 --> 00:24:05,480 belə ki, burada həftə sıfır, təxminən üst. 503 00:24:05,480 --> 00:24:12,370 Burada həftə bir həftə sıfır, həftə bir həftə sıfır. 504 00:24:12,370 --> 00:24:14,370 OK, sözün Əgər bilirsinizsə heç bir proqram, 505 00:24:14,370 --> 00:24:16,286 bu yalnız bir kimi indi model uyğunluğu oyun. 506 00:24:16,286 --> 00:24:17,200 Belə ki, müxtəlif var? 507 00:24:17,200 --> 00:24:18,765 Evet? 508 00:24:18,765 --> 00:24:19,777 >> Auditoriya: [işitilemez] 509 00:24:19,777 --> 00:24:22,360 DAVID Malan: Yaxşı, belə ki, adı heç belə yüngül, dəyişir. 510 00:24:22,360 --> 00:24:24,010 Zero bir, əlbəttə, gedir. 511 00:24:24,010 --> 00:24:25,570 Eyni şey H1 tag baş. 512 00:24:25,570 --> 00:24:28,790 Və biz olduqca kimi asanlıqla görmürəm URL bir az uzun, çünki. 513 00:24:28,790 --> 00:24:30,670 Lakin həmin URL'leri qədər dəyişir. 514 00:24:30,670 --> 00:24:34,490 >> Amma dəyişən deyil, nə mən cəsarət demək səhifə və məzmunu ən 515 00:24:34,490 --> 00:24:38,530 HTML tag eyni, rəhbəri eyni adı, demək olar ki, eynidir 516 00:24:38,530 --> 00:24:40,659 bədən eyni və başqa demək olar ki, hər şey 517 00:24:40,659 --> 00:24:42,450 istisna olmaqla, eyni deyil o kiçik tweaks. 518 00:24:42,450 --> 00:24:45,310 Belə ki, biz necə getmək olar Bu bəzi faktorinq? 519 00:24:45,310 --> 00:24:48,740 >> Yaxşı mənə dəqiq təklif edək növbəti versiyası ki. 520 00:24:48,740 --> 00:24:53,890 Belə ki, burada versiyası bir, mən dəqiq var Eyni faylları, plus digər bir neçə. 521 00:24:53,890 --> 00:24:59,730 Burada index.php-- və hətta var Siz əvvəl PHP görməmişəm 522 00:24:59,730 --> 00:25:05,511 Mən yəqin ki, bu həll etmək edirəm Burada görmək nə əsasında problem--? 523 00:25:05,511 --> 00:25:11,300 524 00:25:11,300 --> 00:25:12,760 Bəli, bir az öhdəlik ki? 525 00:25:12,760 --> 00:25:13,450 Yox? 526 00:25:13,450 --> 00:25:16,020 Bəli, getmək. 527 00:25:16,020 --> 00:25:17,380 >> Auditoriya: [işitilemez] 528 00:25:17,380 --> 00:25:18,380 >> DAVID Malan: Yep. 529 00:25:18,380 --> 00:25:20,380 >> Auditoriya: [işitilemez] 530 00:25:20,380 --> 00:25:26,090 531 00:25:26,090 --> 00:25:28,669 >> DAVID MALAN: Mən sizə lazımdır bir az Qaraçuxurlu danışmaq. 532 00:25:28,669 --> 00:25:31,084 >> Auditoriya: [işitilemez] 533 00:25:31,084 --> 00:25:35,744 534 00:25:35,744 --> 00:25:36,660 DAVID Malan: OK, yaxşı. 535 00:25:36,660 --> 00:25:38,620 Mən bu idi Sizcə səni amma eşitmək ağır 536 00:25:38,620 --> 00:25:42,690 nə də əldə etdiyiniz hesab edirəm üst qədər ümumi idi tags, 537 00:25:42,690 --> 00:25:47,710 üzrə ümumi idi və tags alt, indi həyata factored edilmişdir 538 00:25:47,710 --> 00:25:51,140 və ya faylları nə çoxluq? 539 00:25:51,140 --> 00:25:53,476 Header.php və footer.php-- və biz olacaq 540 00:25:53,476 --> 00:25:55,600 bəzi tweaks etmək narahatlıq siz müraciət yalnız 541 00:25:55,600 --> 00:25:59,370 üçün, ədəd dəyişdirilməsi haqqında qaldırılmış Məsələn, mən doğru eşitdim bilər. 542 00:25:59,370 --> 00:26:02,060 >> Lakin bu mahiyyət görünür. 543 00:26:02,060 --> 00:26:04,820 Böyük məbləği var idi səhifənin üst ixtisar, 544 00:26:04,820 --> 00:26:06,736 və miqdarı altındakı redundancy, 545 00:26:06,736 --> 00:26:09,280 nin sözün yalnız məqamı imkan ki, məzmun kəsilmiş, 546 00:26:09,280 --> 00:26:13,270 ayrı fayl kimi qoyun biz factored CSS, ideyası 547 00:26:13,270 --> 00:26:16,710 qoymaq çox oxşar estetik, ayrı dot PHP fayl ki, 548 00:26:16,710 --> 00:26:20,340 mexanizm tələb istifadə edən C kəskin Daxildir kimi olan 549 00:26:20,340 --> 00:26:23,570 mahiyyətcə getmək deyən kimi , header.php məzmunu qamarlamaq 550 00:26:23,570 --> 00:26:25,370 və surəti və yapışdırın. 551 00:26:25,370 --> 00:26:29,490 >> Amma nə bu o deməkdir ki, indi edir index.php, mən bu iki xətləri var. 552 00:26:29,490 --> 00:26:32,130 Lectures.php, mən də bu iki xətləri var. 553 00:26:32,130 --> 00:26:35,230 Week0.php, mən də bu iki xətləri var. 554 00:26:35,230 --> 00:26:38,380 >> Belə ki, indi mən dəyişdirmək istəyirsinizsə Mənim bütün pages adı, 555 00:26:38,380 --> 00:26:40,530 və ya dəyişdirmək istəyirsinizsə, fundamental quruluş, 556 00:26:40,530 --> 00:26:44,380 Mən yalnız bir yerdə indi dəyişə bilərsiniz və ya iki places-- mövzu və footer, 557 00:26:44,380 --> 00:26:45,429 olaraq təyin olundu. 558 00:26:45,429 --> 00:26:47,970 İndi kodu başlanğıc baxmaq bir az daha sirli, sağ? 559 00:26:47,970 --> 00:26:53,590 Amma barədə düşünmək nə səhifə Mən week0.php tələb alıram əməlindəndir ki, 560 00:26:53,590 --> 00:26:59,880 yalnız rəsm kimi burada week0.php tələb olunur, 561 00:26:59,880 --> 00:27:00,960 bunun mənası nədir? 562 00:27:00,960 --> 00:27:04,410 >> Sözün, bu fayl brauzer tərəfindən tələb. 563 00:27:04,410 --> 00:27:06,240 web server a.k.a. 564 00:27:06,240 --> 00:27:09,250 CS50 ID-- bu Polip fayl, week0.php və oxuyur 565 00:27:09,250 --> 00:27:10,780 Bu alt üst, soldan sağa. 566 00:27:10,780 --> 00:27:15,400 Line biri, dərhal görür açıq bracket sual işarəsi PHP tələb 567 00:27:15,400 --> 00:27:17,872 header dot PHP, və nə PHP tərcüməçi 568 00:27:17,872 --> 00:27:20,580 ki, web daxil inşa does-- server, biz önceden çünki 569 00:27:20,580 --> 00:27:24,580 Bu avtomatik olaraq gedir Səninlə üçün header.php daxil nüsxə məzmunu, 570 00:27:24,580 --> 00:27:25,640 burada pastalar. 571 00:27:25,640 --> 00:27:28,790 >> Amma sonra tərcüməçi qarşılaşmalar sual işarəsi yaxın bracket, 572 00:27:28,790 --> 00:27:30,320 belə ki, bütün düşüncə həyata. 573 00:27:30,320 --> 00:27:33,400 İndi yalnız kor-koranə spits xətləri həyata yeddi vasitəsilə iki, 574 00:27:33,400 --> 00:27:35,240 yalnız xam HTML çünki. 575 00:27:35,240 --> 00:27:38,470 Səkkiz xətt olur ki, yoxdur faylı açılması again-- eyni sehrli, 576 00:27:38,470 --> 00:27:41,460 məzmunu qənimətçilik və onları tələb və ya onları sovuşdurmaq 577 00:27:41,460 --> 00:27:42,480 sağ sonra və ya. 578 00:27:42,480 --> 00:27:44,210 >> Amma yalnız bir səhv alluded. 579 00:27:44,210 --> 00:27:48,610 Bu, geri qismən addımdır biz header.php baxmaq, çünki, 580 00:27:48,610 --> 00:27:50,850 I növ bir küncü kəsilmiş etdik. 581 00:27:50,850 --> 00:27:56,250 Mən üçün imtina hansı xüsusiyyət Bu mübahisəli yaxşı dizayn qazanmaq üçün? 582 00:27:56,250 --> 00:27:57,305 Evet? 583 00:27:57,305 --> 00:27:58,180 Auditoriya: [işitilemez] 584 00:27:58,180 --> 00:28:00,570 DAVID MALAN: Bəli, mən cür bir nontrivial küncü kəsilmiş. 585 00:28:00,570 --> 00:28:04,489 Siz nə dəyişir ki, diqqət çəkən adı idi, adı sayı, 586 00:28:04,489 --> 00:28:05,530 və H1 sayı. 587 00:28:05,530 --> 00:28:08,170 Belə ki, mənim həll OK idi yalnız səhifə adını dəyişmək bildirin 588 00:28:08,170 --> 00:28:10,080 və ilə məşğul deyil heç problem. 589 00:28:10,080 --> 00:28:12,130 Belə ki, qismən var əmin üçün geri addım. 590 00:28:12,130 --> 00:28:14,300 >> Amma burada diqqətəlayiq nə Mən görmüşük ki, nə 591 00:28:14,300 --> 00:28:17,200 başqa factored bütün ümumi heyəti həyata. 592 00:28:17,200 --> 00:28:21,520 Və footer.php, mən factored qeyd ki, bütün həyata, az da olsa, 593 00:28:21,520 --> 00:28:22,790 ümumi stuff. 594 00:28:22,790 --> 00:28:26,070 Belə ki, mən elə indi lazımdır irəli bir addım və fix 595 00:28:26,070 --> 00:28:27,160 ki, adı məsələləri. 596 00:28:27,160 --> 00:28:28,180 Belə ki, nə edək. 597 00:28:28,180 --> 00:28:35,060 >> Mənim ikinci versiyası daxil edək Burada olan, yenə eyni faylları var 598 00:28:35,060 --> 00:28:36,825 bir yeni əlavə istisna olmaqla. 599 00:28:36,825 --> 00:28:38,950 Və bir az daha var verbose, amma əgər görək biz 600 00:28:38,950 --> 00:28:40,550 burada neler ayrı sataşmaq bilər. 601 00:28:40,550 --> 00:28:45,370 Belə ki, əvəzinə tələb header.php və footer.php, 602 00:28:45,370 --> 00:28:50,180 Mən yalnız bir tələb görünür fayl helpers.php, əlbəttə, çağırıb. 603 00:28:50,180 --> 00:28:52,560 Və mənə indi müəyyən edək helpers.php daxilində nə var 604 00:28:52,560 --> 00:28:55,330 funksiyaları yalnız bir dəstə Mən yalnız əvvəl kimi yazdı. 605 00:28:55,330 --> 00:28:57,550 Amma mən bunu helpers.php çağırıb. 606 00:28:57,550 --> 00:29:00,370 >> İndi yəqin da line üç və 10, mən 607 00:29:00,370 --> 00:29:02,840 iki funksiyaları zəng mövzu göstərməyə, footer göstərir. 608 00:29:02,840 --> 00:29:05,040 Ilə gəlmək olmayan PHP, mən o özümü yazdı. 609 00:29:05,040 --> 00:29:07,880 Mən helpers.php qoydu. 610 00:29:07,880 --> 00:29:11,210 >> İndi biz yalnız bu sintaksis gördüm bir dəfə, və bu super qısa idi. 611 00:29:11,210 --> 00:29:15,330 Amma bu yəqin bir dəlildir header, funksiyası göstərməyə. 612 00:29:15,330 --> 00:29:16,450 Niyə bilirik? 613 00:29:16,450 --> 00:29:18,522 Burada yaxın paren var, Burada açıq paren var. 614 00:29:18,522 --> 00:29:21,230 Və əlbəttə, yalnız C kimi, o parantez arasında bir şey 615 00:29:21,230 --> 00:29:23,350 bir input-- və ya deyil funksiyası arqument. 616 00:29:23,350 --> 00:29:26,710 >> Bu arqumentin data type nədir, Mən qeyd etdik dayalı? 617 00:29:26,710 --> 00:29:30,820 O kvadrat mötərizədə nə Keçən həftə əsasında göstərir? 618 00:29:30,820 --> 00:29:33,390 Bəli, bu bir array var xüsusi assosiativ array. 619 00:29:33,390 --> 00:29:35,700 Bu syntax admittedly bir az funky, 620 00:29:35,700 --> 00:29:38,860 lakin bu, yalnız keçir bir əsas dəyəri cüt. 621 00:29:38,860 --> 00:29:43,530 əsas quote dırnağı bağlamaq edir adı və dəyəri CS50 edir. 622 00:29:43,530 --> 00:29:46,220 >> Biz etmiş bu C, əvəzinə bilər 623 00:29:46,220 --> 00:29:49,400 daha çox bu kimi baxmaq, yalnız quote dırnağı bağlamaq CS50 624 00:29:49,400 --> 00:29:52,460 və ya həqiqətən buruq olacaq aşırma, və ya C kimi bir şey, 625 00:29:52,460 --> 00:29:55,580 burada əsas sıfır, və dəyəri CS50 edir. 626 00:29:55,580 --> 00:29:59,840 Ancaq yenə də, PHP, baxmayaraq ki, syntax, yenə bir az qəribə deyil 627 00:29:59,840 --> 00:30:02,860 bu keçmək üçün imkan verir sözləri əvəzinə nömrələri 628 00:30:02,860 --> 00:30:05,120 dəyərləri ilə düymələri birləşmək. 629 00:30:05,120 --> 00:30:06,390 >> Belə ki, bu bütün nə deməkdir? 630 00:30:06,390 --> 00:30:09,750 Mən helpers.php getmək varsa, Bu funksiya baxaq. 631 00:30:09,750 --> 00:30:13,620 renderHeader.php deyil, renderHeader mənim funksiyası 632 00:30:13,620 --> 00:30:16,220 Mən görürəm, çünki bilirik ki, Burada funksiyası söz. 633 00:30:16,220 --> 00:30:19,450 Bu yəqin ki, ace yeni deyil fel adlı mübahisə edir 634 00:30:19,450 --> 00:30:22,400 amma bu deyilən bilərdi bir şey, amma data çağırıb 635 00:30:22,400 --> 00:30:25,090 bir az clean-- olmaq və yalnız xüsusilə bir tahmin almaq 636 00:30:25,090 --> 00:30:28,173 bəzi digər proqramlaşdırılmış, əgər əvvəl yüksək səviyyədə dil, bir şey 637 00:30:28,173 --> 00:30:29,820 C yuxarıda konseptual. 638 00:30:29,820 --> 00:30:33,820 >> Nə bərabər açıq bracket deyil yəqin ki, kvadrat mötərizə deməkdir? 639 00:30:33,820 --> 00:30:35,540 Yoxsa nə demək bilər? 640 00:30:35,540 --> 00:30:39,660 Biz Bəli C. bu görmədim etdik? 641 00:30:39,660 --> 00:30:40,480 >> Boş array. 642 00:30:40,480 --> 00:30:45,440 Xüsusilə, bu o deməkdir ki, əgər istifadəçi renderHeader zəng deyil 643 00:30:45,440 --> 00:30:49,340 bir arqumenti ilə, mən hələ gedirəm data adlı bir dəlil var, 644 00:30:49,340 --> 00:30:52,327 lakin onun default dəyəri boş array olacaq. 645 00:30:52,327 --> 00:30:53,660 Belə ki, yalnız bir gözəl rahatlığı var. 646 00:30:53,660 --> 00:30:56,493 Mən istifadəçi fəğan yoxdur ya mənim funksiyası yanlış istifadə deyirlər. 647 00:30:56,493 --> 00:30:59,849 Mən yalnız istifadəçi bir default verə bilər dəyəri, xüsusilə qayğı yoxdur. 648 00:30:59,849 --> 00:31:01,890 İndi bu funksiya, mən mənim əlləri dalğa gedir. 649 00:31:01,890 --> 00:31:07,620 Amma bu çıxarış funksiyası imkan verir Bizə data bu dəyişənlərin keçmək 650 00:31:07,620 --> 00:31:10,360 aşağıdakı şəkildə header.php daxil. 651 00:31:10,360 --> 00:31:13,100 Və bu son parça, Mən funky sintaksis, düşünürəm. 652 00:31:13,100 --> 00:31:15,860 Burada mənim yeni versiyası onu header.php-- 653 00:31:15,860 --> 00:31:20,140 sanki, dərdi, açıq bracket adı CS50, və bu idi. 654 00:31:20,140 --> 00:31:21,766 Və H1 üçün eyni şey. 655 00:31:21,766 --> 00:31:24,310 >> İndi yəqin deyir olduqca funky bir şey. 656 00:31:24,310 --> 00:31:28,030 Və mənə bu sadələşdirmək edək bir an üçün belə. 657 00:31:28,030 --> 00:31:31,020 Bu var nə olmaq mənim adı dəyişdi. 658 00:31:31,020 --> 00:31:35,140 Lakin, bir az çirkin əldə PHP ilə daim açıq Mötərizədə, 659 00:31:35,140 --> 00:31:36,610 və sonra çap funksiyası istifadə edin. 660 00:31:36,610 --> 00:31:40,810 Bu PHP bir stenoqrafiya ki çıxır yalnız bu notation, 661 00:31:40,810 --> 00:31:45,050 texniki bir bərabər işarəsi, adlı funksiyası yerinə çap echo 662 00:31:45,050 --> 00:31:46,800 lakin bu səmərəli, eyni şey. 663 00:31:46,800 --> 00:31:48,440 >> Bu yalnız daha yaxşı görünür. 664 00:31:48,440 --> 00:31:50,510 Bu, sadəcə bir sintaktik var şəkər, Siz, 665 00:31:50,510 --> 00:31:52,260 ki, mənim kodu bir az daha yaxşı baxmaq edir. 666 00:31:52,260 --> 00:31:54,010 Amma bu çıxır, və biz yenə bu görürsünüz 667 00:31:54,010 --> 00:31:57,420 uzun əvvəl, biz bu zəng etmək annoyingly uzun funksiyası adlanır 668 00:31:57,420 --> 00:32:00,582 HTML xüsusi chars ilə PHP, bu çıxır, çünki 669 00:32:00,582 --> 00:32:02,790 Müəyyən giriş var istifadəçi bizə bilər ki, 670 00:32:02,790 --> 00:32:05,160 və ya istifadəçilər bizə verə bilər ki, ki bizim saytda qırmaq üçün gedir. 671 00:32:05,160 --> 00:32:07,035 Amma biz növbəti görürsünüz JavaScript həftə. 672 00:32:07,035 --> 00:32:10,740 Amma indi üçün, yalnız bilirik ki, Bu fayl, headers.php, sadəcə 673 00:32:10,740 --> 00:32:13,040 adı edir ki, Mən keçdi, onu 674 00:32:13,040 --> 00:32:17,380 təhlükəsiz, əmin bir web enjekte ediləcək səhifə və mənim adı kimi spits 675 00:32:17,380 --> 00:32:18,640 və H1 kimi. 676 00:32:18,640 --> 00:32:24,440 Mən indi bu versiyası getmək əgər, mühazirələr onun adı geri var fark, 677 00:32:24,440 --> 00:32:28,630 həftə sıfır geri onun adı var, və Həqiqətən, HTML I yaradan alıram 678 00:32:28,630 --> 00:32:32,110 nə mənim ilk versiyası ilə eynidir Mənim ağ istisna olmaqla was--, 679 00:32:32,110 --> 00:32:35,150 Forma açılmış etdik, çünki fərqli mənim kodu bir az. 680 00:32:35,150 --> 00:32:38,082 Amma bütün yaradılan sonra Mən qayğı kodu. 681 00:32:38,082 --> 00:32:39,790 Belə ki, mənə fasilə imkan Yalnız bir an və görmək 682 00:32:39,790 --> 00:32:42,200 Hər hansı bir sualınız varsa və ya qarışıqlıq mən yaratdıq. 683 00:32:42,200 --> 00:32:44,970 684 00:32:44,970 --> 00:32:48,150 Bütün hüquqlar, belə ki, twist edək bir az daha burada 685 00:32:48,150 --> 00:32:51,500 bir var görmek üçün yaxşılaşdırılması üçün imkan. 686 00:32:51,500 --> 00:32:56,130 Helpers.php də bu idi funksiyası, renderFooter çağırıb. 687 00:32:56,130 --> 00:32:59,652 Və diqqətəlayiq nə renderHeader və renderFooter? 688 00:32:59,652 --> 00:33:02,610 Və yenə, bu gün məqsədlər üçün, bilmək çıxarış funksiyası yalnız ki, 689 00:33:02,610 --> 00:33:08,280 keçən dəlilləri mənim yol header.php və footer.php daxil. 690 00:33:08,280 --> 00:33:10,900 691 00:33:10,900 --> 00:33:11,780 >> Bağışlayın? 692 00:33:11,780 --> 00:33:13,056 >> Auditoriya: [işitilemez] 693 00:33:13,056 --> 00:33:15,180 DAVID MALAN: Bəli, mən yalnız The Line tələb dəyişdi. 694 00:33:15,180 --> 00:33:19,410 Belə ki, sanki mən günah etdik çıxarmaq və sovuşdurmaq, yenə. 695 00:33:19,410 --> 00:33:21,920 Bu bir çox deyil xətləri, lakin Us gəlib 696 00:33:21,920 --> 00:33:25,220 Mən çıxarmaq və hər şey sovuşdurmaq alıram Yalnız bir az söz dəyişdirmək üçün, 697 00:33:25,220 --> 00:33:28,610 və bir az söz Alan göstərir ki, həyata qarşı, burada footer burada header. 698 00:33:28,610 --> 00:33:30,670 Əks halda, hər şey eyni istisna olmaqla, 699 00:33:30,670 --> 00:33:32,180 əlbəttə, funksiyasının adları. 700 00:33:32,180 --> 00:33:33,690 Belə ki, biz daha yaxşı nə ola bilər? 701 00:33:33,690 --> 00:33:39,810 >> Yaxşı mənə bu versiyası açmaq bildirin Burada vasitəsi helpers.php da, 702 00:33:39,810 --> 00:33:42,300 niyə yalnız bir almaq deyil Bu barədə asan az? 703 00:33:42,300 --> 00:33:46,410 Bir az daha mürəkkəb yazmaq kodu, lakin göstərmək zəng? 704 00:33:46,410 --> 00:33:48,470 Belə ki, əsaslı nə dəyişib? 705 00:33:48,470 --> 00:33:51,770 >> Bu mübahisə edir, indi iki dəlilləri, hələ data. 706 00:33:51,770 --> 00:33:54,444 Və sonra ilk nə yəqin ki, istifadə olunur adı, 707 00:33:54,444 --> 00:33:55,860 Burada oxuyursunuz nə əsaslanır? 708 00:33:55,860 --> 00:33:58,452 Hətta əgər sintaksis bəzi hələ yeni. 709 00:33:58,452 --> 00:33:59,660 Dollar işarəsi Şablon nedir? 710 00:33:59,660 --> 00:34:02,400 711 00:34:02,400 --> 00:34:03,016 >> Bağışlayın? 712 00:34:03,016 --> 00:34:03,710 >> Auditoriya: Header və ya footer. 713 00:34:03,710 --> 00:34:04,510 >> DAVID Malan: Header və ya footer. 714 00:34:04,510 --> 00:34:07,134 Belə ki, yəqin ki, mən qərara gəldim ki, əgər dəyişən tək şey 715 00:34:07,134 --> 00:34:10,159 Mən istəyirəm nə şablon print-- və şablon ilə 716 00:34:10,159 --> 00:34:13,100 Mən bu planını demək Mən çıxış etmək istəyirəm indeksi, 717 00:34:13,100 --> 00:34:16,350 amma bəzi plug istəyirəm dəyərlər belə əgər yalnız header var 718 00:34:16,350 --> 00:34:20,440 və ya footer, niyə Parameterize deyil ki, dəlil dollar işarəsi zəng 719 00:34:20,440 --> 00:34:21,409 şablon? 720 00:34:21,409 --> 00:34:26,250 Və sonra bu funky sintaksis mənə imkan verir burada bir dəyişən bir yol yaratmaq üçün. 721 00:34:26,250 --> 00:34:28,030 >> Belə ki, dollar işarəsi yolu dəyişir. 722 00:34:28,030 --> 00:34:31,120 Bu sintaksis nə tanış değilseniz, nə? 723 00:34:31,120 --> 00:34:32,512 Evet? 724 00:34:32,512 --> 00:34:34,065 >> Auditoriya: [işitilemez] 725 00:34:34,065 --> 00:34:34,940 DAVID Malan: Məhz. 726 00:34:34,940 --> 00:34:37,600 Şablon deyil, dırnağı bağlamaq quote, header, və ya şablon əgər, 727 00:34:37,600 --> 00:34:41,170 dırnağı bağlamaq quote, footer, orada line Mən qeyd etdik ki, line səkkiz, 728 00:34:41,170 --> 00:34:46,330 sadəcə header kimi, adını alaraq, və dot PHP ilə concatenating. 729 00:34:46,330 --> 00:34:49,750 Beləliklə, biz bu operator yox idi C. Bu dot operator 730 00:34:49,750 --> 00:34:54,520 Siz əgər php bir gözəl şey JavaScript və ya Java ilə tanış, 731 00:34:54,520 --> 00:34:56,949 Siz plus istifadə edə bilərsiniz concatenation etmək olun. 732 00:34:56,949 --> 00:34:59,974 >> C, bu neck-- bir ağrı var altı p-set və mən çox təəssüf edirəm, 733 00:34:59,974 --> 00:35:02,390 Siz nə etmək olacaq şeylərdir ki, boyun bir ağrı deyil 734 00:35:02,390 --> 00:35:03,930 strings concatenate üçün. 735 00:35:03,930 --> 00:35:04,670 Niyə? 736 00:35:04,670 --> 00:35:06,580 Yaxşı, siz var, çünki uzun bu bir string, 737 00:35:06,580 --> 00:35:09,538 və uzun bu var bir string, Yalnız birlikdə onları yerləşdirin bilməz. 738 00:35:09,538 --> 00:35:11,070 Nə əvəzinə C nə etmək lazımdır? 739 00:35:11,070 --> 00:35:11,680 Evet? 740 00:35:11,680 --> 00:35:12,380 >> Auditoriya: [işitilemez] 741 00:35:12,380 --> 00:35:15,090 >> DAVID Malan: Siz malloc var yaddaş, və ya yığını bir sıra istifadə edin. 742 00:35:15,090 --> 00:35:17,214 Və həqiqətən var kifayət qədər array böyük etmək 743 00:35:17,214 --> 00:35:20,940 Bu plus bu uyğun, plus backslash sıfır. 744 00:35:20,940 --> 00:35:24,994 Sonra istifadə onlara birlikdə concatenate loop üçün ilə pişik və ya əl bulamaq, 745 00:35:24,994 --> 00:35:26,160 və ya texnika hər hansı bir sayı. 746 00:35:26,160 --> 00:35:27,760 Və biz bir neçə göstərmək p-set altı. 747 00:35:27,760 --> 00:35:29,080 >> Bu boyun bir ağrı var. 748 00:35:29,080 --> 00:35:34,190 Bu Mən demək nə həqiqətən PHP qarşı C kimi şeylərdir qarşı bu. 749 00:35:34,190 --> 00:35:36,870 Siz yalnız çox daha çox almaq Pulsuz üçün funksionallığı, 750 00:35:36,870 --> 00:35:39,030 Siz diqqət bilər ki, ideal, əyləncə 751 00:35:39,030 --> 00:35:41,190 kodlaşdırma hissəsi, Siz həll etmək istəyirik layihə, 752 00:35:41,190 --> 00:35:43,190 daha aşağı səviyyədə minutiae daha. 753 00:35:43,190 --> 00:35:49,840 >> Belə ki, bu, yalnız yaradır header.php və ya Mən zəng hansı biri əsasında footer.php. 754 00:35:49,840 --> 00:35:52,280 Və həqiqətən, Mən getmək əgər index.php daxil bildiriş 755 00:35:52,280 --> 00:35:56,230 bütün yerinə changed-- oldu mövzu göstərmək və ya footer göstərmək zəng, 756 00:35:56,230 --> 00:36:00,230 Mən izlədi göstərmək zəng edirəm Mən istəyirəm şablon adı. 757 00:36:00,230 --> 00:36:02,370 Və siz də, bu görürsünüz, problemi, yeddi müəyyən 758 00:36:02,370 --> 00:36:05,530 biz istifadə etməyə imkan verir vasitəsi eyni funksiyası dəstələri etmək 759 00:36:05,530 --> 00:36:07,550 və müxtəlif web pages dəstələri. 760 00:36:07,550 --> 00:36:10,570 >> Belə ki, daha çox dayanmaq çox bu Detayları haqqında daha çox 761 00:36:10,570 --> 00:36:13,210 Siz yenə görəcəksiniz ki, problem set nin baxaq seven-- 762 00:36:13,210 --> 00:36:16,850 bir həll indi başında daha maraqlı problem. 763 00:36:16,850 --> 00:36:19,310 Bu günə qədər, heç bir şey var həyata xilas məlumat var. 764 00:36:19,310 --> 00:36:22,920 Əslində, yalnız zaman biz heç xilas etdik bu sinif etdik şey 765 00:36:22,920 --> 00:36:31,030 biz biraz çox sadə demo idi zaman geri, vasitəsi biz C fayl IO istifadə 766 00:36:31,030 --> 00:36:34,520 və mən mənim ad tipli hesab edirəm ki, və Hannah adı, və Mariyanın adı, 767 00:36:34,520 --> 00:36:37,610 və ya bəlkə Andy adı, və sonra biz bir CSV faylı qeyd 768 00:36:37,610 --> 00:36:39,430 vergül dəyərlər fayl ayrılır. 769 00:36:39,430 --> 00:36:43,530 >> Və düşünürəm fopen istifadə Mən xatırlayıram kimi, fprintf istifadə 770 00:36:43,530 --> 00:36:44,910 və biz bir fayl saxlanılır. 771 00:36:44,910 --> 00:36:46,920 İndi ki, sadə bir verilənlər bazası forması. 772 00:36:46,920 --> 00:36:50,230 Siz bir web etmək istəyirsinizsə Frosh Ani proqramı vasitəsi freshmen 773 00:36:50,230 --> 00:36:53,390 ideal bir idman üçün qeydiyyatdan bilər ki, data ilə bir şey etmək istəyirəm. 774 00:36:53,390 --> 00:36:55,370 Ötən həftə biz heç bir şey etmədi veri biz yalnız bildirib, 775 00:36:55,370 --> 00:36:56,661 Siz, həqiqətən, qeydə alınır. 776 00:36:56,661 --> 00:36:58,950 Və ya bəlkə mən e-poçt proctor və bu idi. 777 00:36:58,950 --> 00:37:02,110 >> Mən əgər Amma gözəl olardı ki, Proctor bir CSV faylı vermək 778 00:37:02,110 --> 00:37:03,340 bir Excel fayl kimi. 779 00:37:03,340 --> 00:37:05,090 Və ya daha yaxşı hələ, olardı Mən əgər gözəl 780 00:37:05,090 --> 00:37:08,830 bu istifadəçilərin adları qoymaq və adları yurddakı və ki, bütün 781 00:37:08,830 --> 00:37:11,740 bir verilənlər bazası ki, yalnız əbədi yaşayır 782 00:37:11,740 --> 00:37:13,530 qədər məlumatları silmək üçün seçin. 783 00:37:13,530 --> 00:37:15,645 Imkan verir ki, verilənlər bazası Mənə məlumat sorğu. 784 00:37:15,645 --> 00:37:18,070 And olsun ki, bir verilənlər bazası nə var. 785 00:37:18,070 --> 00:37:20,470 >> Bu gün təqdim və Gələn həftə də bir texnologiya 786 00:37:20,470 --> 00:37:25,020 adlı SQL-- bir Yapılandırılmış Query Başqa dilidir Language. 787 00:37:25,020 --> 00:37:28,750 Bu əhəmiyyətli bir proqramlaşdırma var dil, lakin verilənlər bazası üçün. 788 00:37:28,750 --> 00:37:31,760 İndi üçün bir verilənlər bazası, yalnız super xülya versiyası hesab 789 00:37:31,760 --> 00:37:35,710 Microsoft Excel, və ya Google Spreadsheets, və ya Apple Nömrələr. 790 00:37:35,710 --> 00:37:39,950 Bu, ümumiyyətlə imkan verir bir proqram məlumatların bütün dəstə saxlamaq üçün 791 00:37:39,950 --> 00:37:43,960 satır ve sütun çox kimi Excel bilər. 792 00:37:43,960 --> 00:37:47,100 >> Amma nə, xüsusilə də əgər, gözəl biz Excel ilə super tanış deyilik 793 00:37:47,100 --> 00:37:52,040 nə SQL siz imkan verir sorğu bu kodu xətləri yazılı məlumat 794 00:37:52,040 --> 00:37:55,220 harada siz, hətta əgər sizin verilənlər bazası, bu bir milyon satır var 795 00:37:55,220 --> 00:37:57,190 Siz hər şeyi super sürətli tapa bilərsiniz. 796 00:37:57,190 --> 00:37:59,950 Əslində, Excel xüsusilə böyük data dəstləri pis. 797 00:37:59,950 --> 00:38:02,460 Və əslində, bir neçə qədər il əvvəl çıxdı 798 00:38:02,460 --> 00:38:08,890 Excel yalnız saxlamaq üçün imkan verir ki, fel qədər 65.535 satır 799 00:38:08,890 --> 00:38:12,020 lakin, bir çox kimi səslənir dəfə, bir grad tələbə idi 800 00:38:12,020 --> 00:38:14,920 Mən açma xatırlayıram bu mən yaradan çünki 801 00:38:14,920 --> 00:38:17,900 Mənim tədqiqat və I CSV faylları tez təhlil etmək istədi 802 00:38:17,900 --> 00:38:19,530 yalnız Excel açılması ilə. 803 00:38:19,530 --> 00:38:23,730 Əlbəttə ki, mənim kompüter yalnız qəzaya uğrayıb, Mən artıq 65,000 satır idi, çünki. 804 00:38:23,730 --> 00:38:27,210 >> Amma 65.535 haradan gəldi? 805 00:38:27,210 --> 00:38:29,670 Microsoft nə edirdi, ehtimalla? 806 00:38:29,670 --> 00:38:32,430 Siz iki sizin səlahiyyətləri ilə yaxşı edirsinizsə? 807 00:38:32,430 --> 00:38:37,160 Bəli, onlar bir 16-bit istifadə dəyəri sıra sayı təmsil edəcək. 808 00:38:37,160 --> 00:38:41,310 Və 16 iki 65,536-- minus bir, çünki əgər 809 00:38:41,310 --> 00:38:45,414 sıfır index idi deməkdir Mən ola bilər satır ən çox. 810 00:38:45,414 --> 00:38:46,830 Və yalnız bir dizayn qərar idi. 811 00:38:46,830 --> 00:38:52,760 16 bit qənaət, onlar mənə məhdud əvəzinə 4 milyard 16,000 satır, üçün, 812 00:38:52,760 --> 00:38:54,322 Mən ideal bilərdi. 813 00:38:54,322 --> 00:38:57,030 Amma indi, biz olacaq bir web kontekstində bu daha təqdim edir. 814 00:38:57,030 --> 00:39:00,390 Və nə SQL haqqında gözəl ki, belə deyil Bu olduqca güclü və olduqca baxmayaraq 815 00:39:00,390 --> 00:39:04,050 inkişaf etmiş, bu, həqiqətən boils aşağı dörd əsas əməliyyatları, dörd 816 00:39:04,050 --> 00:39:08,060 əsas funksiyaları, siz seçin will-- əgər, , məlumat alanda axtarış üçün 817 00:39:08,060 --> 00:39:12,510 məlumat üçün; silmək və ya məlumatların silinməsi; verilənlər bazası satır əlavə etmək üçün daxil; 818 00:39:12,510 --> 00:39:13,410 və yenilənməsi. 819 00:39:13,410 --> 00:39:17,010 Əgər Google istifadə əgər Belə ki, Spreadsheets, Apple Nömrələr, Microsoft 820 00:39:17,010 --> 00:39:19,310 Excel, siz yerinə, çox güman ki, bütün 821 00:39:19,310 --> 00:39:22,530 bir insan kimi bu əməliyyatların tərəfindən yalnız klaviatura və siçan istifadə edərək, 822 00:39:22,530 --> 00:39:26,050 Gözlərinizi, data daxil istifadə edərək, seçin və ya məlumat üçün axtarış, 823 00:39:26,050 --> 00:39:28,360 və ya yeniləmə data, və ya silmək data. 824 00:39:28,360 --> 00:39:29,870 >> Belə ki, bu nə deməkdir? 825 00:39:29,870 --> 00:39:34,300 Yaxşı, CS50 önceden götürmüş IDE MySQL adlı bir proqramdır. 826 00:39:34,300 --> 00:39:37,050 Bu pulsuz, açıq mənbə var super məşhur verilənlər bazası. 827 00:39:37,050 --> 00:39:40,590 Facebook, məsələn, bu üçün istifadə edir onlar istifadə digər alətlər arasında gün. 828 00:39:40,590 --> 00:39:44,300 Və çox məşhur web sites bir çox istifadə Bu böyük bir hissəsi bu, sürətli, çünki 829 00:39:44,300 --> 00:39:45,230 və pulsuz, çünki. 830 00:39:45,230 --> 00:39:46,820 Əlbəttə baxmayaraq alternativ mövcuddur. 831 00:39:46,820 --> 00:39:49,580 Və bəzi dabble bilər final layihələr üçün alternativ. 832 00:39:49,580 --> 00:39:55,330 >> Bu, eyni zamanda, bir ekran edir phpMyAdmin adlı web-based vasitədir. 833 00:39:55,330 --> 00:39:58,260 Bu təsadüfi deyil ki, Bu web-based də 834 00:39:58,260 --> 00:40:01,720 bir dillə yazılmış, PHP, lakin bunu nəzərdə nə 835 00:40:01,720 --> 00:40:04,620 Bizə verir bir web-based bir verilənlər bazası interface. 836 00:40:04,620 --> 00:40:07,180 MySQL adətən, çünki bir şey, tarixən, sizə 837 00:40:07,180 --> 00:40:08,770 yalnız qarşılıqlı olardı bir command line ilə. 838 00:40:08,770 --> 00:40:10,811 Və bu super olardı annoying və üçün gizli 839 00:40:10,811 --> 00:40:14,487 seçmək üçün mətn əmrləri yazın data, data daxil və məlumat silin. 840 00:40:14,487 --> 00:40:16,820 Internet Belə ki, bəzi insanlar bir web-based proqram yazıb 841 00:40:16,820 --> 00:40:18,900 yalnız bizə idarə edək ki, bizim məlumat bazasında data. 842 00:40:18,900 --> 00:40:23,040 Bu Excel cüt tıklayarak kimi, və onun bir web-based versiyasını. 843 00:40:23,040 --> 00:40:26,370 >> Və bu istifadə etmək olacaq nə nəticədə gələn həftə, deyil p-set altı, 844 00:40:26,370 --> 00:40:28,680 lakin bir şey qurmaq üçün CS50 Maliyyə, adlı 845 00:40:28,680 --> 00:40:32,630 bir verilənlər bazası var gedir istifadəçi adı və parol ilə istifadəçilər, 846 00:40:32,630 --> 00:40:34,860 dollar təşkil ki, onlar onların bank hesabları var. 847 00:40:34,860 --> 00:40:37,280 Bu olacaq Siz saxlamaq üçün istifadə bir şey 848 00:40:37,280 --> 00:40:39,910 rəmzləri və miqdarda Səhmlərin istifadəçilər 849 00:40:39,910 --> 00:40:42,567 virtual istifadə alıb Siz onlara verəcəyik dollar. 850 00:40:42,567 --> 00:40:44,900 Və istifadəçilər imkan olacaq Sizin sayt üçün qeydiyyatdan, 851 00:40:44,900 --> 00:40:47,190 belə ki, hətta dostları ki, Sizin veb üçün tune bilər 852 00:40:47,190 --> 00:40:49,360 və həqiqətən qeydiyyatdan daxil və ətrafında oynamaq 853 00:40:49,360 --> 00:40:52,807 və kodu günah tapmaq üçün cəhd edin, və web bugs tapmaq üçün cəhd edin. 854 00:40:52,807 --> 00:40:55,390 Onlar sadəcə qeydiyyatdan lazımdır səmərəli, özlərini ifadə edərək, 855 00:40:55,390 --> 00:40:58,120 kod vasitəsilə Siz bazasında yazın. 856 00:40:58,120 --> 00:41:02,470 >> Məsələn, bu tez ekran edir nə bir verilənlər bazası kimi ola bilər. 857 00:41:02,470 --> 00:41:05,190 Bu biri idi Ötən il solutions-- 858 00:41:05,190 --> 00:41:07,760 Bu mini Excel kimi bizim məlumat bazasında saxlanılır, fayl, 859 00:41:07,760 --> 00:41:09,950 MySQL adlanan bu proqram saxlanılır. 860 00:41:09,950 --> 00:41:13,260 Sol tərəfində, mən yəqin var hər istifadəçi bir unikal nömrəsini verilir. 861 00:41:13,260 --> 00:41:16,200 İkinci sütuna, mən təqdim etdik hər kəs bir istifadəçi öz konseptual mənada adı 862 00:41:16,200 --> 00:41:16,880 onların arasında. 863 00:41:16,880 --> 00:41:21,430 Və sağ tərəfində, Mən onlara bir hash təqdim etdik. 864 00:41:21,430 --> 00:41:26,760 >> İndi bu həqiqətən bir parol, ancaq bir düz mətn parol deyil. 865 00:41:26,760 --> 00:41:30,160 Bu, bir şifrelenmiş parol var Siz və ya hash parol. 866 00:41:30,160 --> 00:41:32,000 Hansı biz uzun əvvəl geri gəlmək lazımdır. 867 00:41:32,000 --> 00:41:34,340 >> Amma heç oxumaq etdik əgər haqqında məqalə 868 00:41:34,340 --> 00:41:37,950 bəzi bank və ya bəzi sizin parol veb güzəşt ola bilər 869 00:41:37,950 --> 00:41:39,630 ümumiyyətlə iki şeyi bir ola bilər. 870 00:41:39,630 --> 00:41:42,780 Belə ki, bu altı istifadəçilər yalnız bir pasaj edir. 871 00:41:42,780 --> 00:41:45,460 Siz indi anlamaq olar Hacking və ya krekinq vasitəsilə 872 00:41:45,460 --> 00:41:47,690 bizim altı xalq parol nə. 873 00:41:47,690 --> 00:41:49,720 Amma heç kazanılmış əgər bir uyarı və ya üzr 874 00:41:49,720 --> 00:41:52,803 bir şirkət və ya web deyərək, sorry, bir hacker, bizim məlumat bazasında boğuldu 875 00:41:52,803 --> 00:41:56,360 Siz yəqin ki, dəyişdirmək lazımdır sizin parol ki, nə demək bilər? 876 00:41:56,360 --> 00:41:59,670 >> Yaxşı, bir, demək bilər Şirkət, daha degenerativ olmuşdur 877 00:41:59,670 --> 00:42:03,630 və şifrənizi saxlanılması edilmişdir bu kimi bir sütun, unencrypted. 878 00:42:03,630 --> 00:42:05,840 Hansı rəqib deməkdir, olan verilənlər bazası çaldı 879 00:42:05,840 --> 00:42:07,440 sözün bilir istifadəçi adı və parol. 880 00:42:07,440 --> 00:42:08,960 Ki, ən pis mümkün ssenari var. 881 00:42:08,960 --> 00:42:11,710 Və p-set görəcəksiniz kimi yeddi qarşısını almaq üçün asandır. 882 00:42:11,710 --> 00:42:15,624 Heç bir bəhanə ki, var bu gün internet sərsəmlik forması. 883 00:42:15,624 --> 00:42:18,540 Two-- və biz bəzi yazılar tapa bilərsiniz Bu hələ ki, şahidlik etmək 884 00:42:18,540 --> 00:42:21,710 nonetheless-- olur iki, bəlkə rəqib 885 00:42:21,710 --> 00:42:23,840 verilənlər bazası bu versiyası çaldı. 886 00:42:23,840 --> 00:42:27,110 Hansı hələ cür pis indi onlar altı müştərilər var ki, bilirik, 887 00:42:27,110 --> 00:42:29,270 Mən istifadəçi adlarını bilirəm bu altı müştərilərin, 888 00:42:29,270 --> 00:42:32,910 və mən şifrelenmiş bilirəm versiyasını və ya hashed versiyasını, 889 00:42:32,910 --> 00:42:34,340 bu altı müştərilərin parol. 890 00:42:34,340 --> 00:42:37,010 Əgər hər hansı bir Lakin bilər [etdik? Hacker 2?] 891 00:42:37,010 --> 00:42:41,150 Siz parol cadar, və ya aldı bir problem versiyası baxmaq 892 00:42:41,150 --> 00:42:46,280 set, niyə hələ bir az worrisome onu edir düşmən sizin hash bilir 893 00:42:46,280 --> 00:42:47,435 parol? 894 00:42:47,435 --> 00:42:49,732 >> Auditoriya: onlar bilər, çünki bütün lüğət daxil 895 00:42:49,732 --> 00:42:50,690 hash funksiyası daxil. 896 00:42:50,690 --> 00:42:54,520 Və parol bir lüğətdir əgər söz, [? onlar yalnız matç edə bilər?] 897 00:42:54,520 --> 00:42:57,640 >> DAVID Malan: Məhz, düşmən yalnız sizin bəzi kimi, kod yaza bilərsiniz 898 00:42:57,640 --> 00:43:00,526 [etdi? Hacker?] 2, Siz artıq təkrarlamaq vasitəsi 899 00:43:00,526 --> 00:43:03,400 lüğət sözləri bütün, A və ya bütün mümkün birləşməsi 900 00:43:03,400 --> 00:43:06,610 Z vasitəsilə və nine-- vasitəsilə bir olan bir çox kimi səslənir, və bu. 901 00:43:06,610 --> 00:43:08,361 Amma bir kompüter üçün, bu, olduqca darn sürətli. 902 00:43:08,361 --> 00:43:10,610 Və əslində, idi ki, [baxımından? Hacker 2?] Idi 903 00:43:10,610 --> 00:43:12,540 ki, stuff etmək sanki bu kimi görünür 904 00:43:12,540 --> 00:43:14,900 və əks mühəndis nə həqiqətən idi. 905 00:43:14,900 --> 00:43:17,270 >> Necə biz belə ki, biz baxmaq lazımdır daha səmərəli bu saxlamayın. 906 00:43:17,270 --> 00:43:20,210 , Təşəkkürlə MySQL çıxır data növləri var gedir. 907 00:43:20,210 --> 00:43:22,800 Haqqında fun hissələrindən biridir verilənlər bazası dizayn, vicdanlı olmaq 908 00:43:22,800 --> 00:43:25,810 həqiqətən özünüz üçün qərar qəbul edilir necə data təmsil etməlidir? 909 00:43:25,810 --> 00:43:29,630 Siz kimi bir telefon nömrəsi təmsil etməlidir böyük sayı, və ya uzun kimi int? 910 00:43:29,630 --> 00:43:31,630 Yoxsa həqiqətən etməliyəm chars bir ardıcıllıqla kimi? 911 00:43:31,630 --> 00:43:33,780 Və çox ola bilər Bu qeyri-mənasız təsirlər. 912 00:43:33,780 --> 00:43:36,714 >> Əslində, bir erkən, fun ilgili hekayələr 913 00:43:36,714 --> 00:43:39,880 Mark Zuckerberg bina zaman deyil Facebook, bu, ilk yazılmış, 914 00:43:39,880 --> 00:43:42,300 və hələ də əsasən PHP yazılmışdır. 915 00:43:42,300 --> 00:43:45,400 Və ən böyük problemlərdən biri onlar erkən scaling edilib üzləşib. 916 00:43:45,400 --> 00:43:48,820 Onlar sonra məktəb əlavə saxlanılan zaman məktəb məktəb sonra, mənim bilik, 917 00:43:48,820 --> 00:43:51,639 orijinal həllər biridir surəti və yapışdırıb mahiyyətcə idi 918 00:43:51,639 --> 00:43:53,430 verilənlər bazası ki, bəzi və kodu bəzi, 919 00:43:53,430 --> 00:43:55,346 Harvard idi ki, öz server çalışan, 920 00:43:55,346 --> 00:43:56,995 və MİT öz server çalışan edilmişdir. 921 00:43:56,995 --> 00:43:59,120 Bu idi, bəzi Siz kim geri bilər, 922 00:43:59,120 --> 00:44:01,510 dost ola bilməz digər şəbəkələrdə. 923 00:44:01,510 --> 00:44:05,050 >> Siz yəqin ki, dost yoxdur 10 və ya belə il əvvəl MİT və ya Harvard, 924 00:44:05,050 --> 00:44:07,467 ancaq şəbəkələri span bilmədi qismən bu səbəbdən. 925 00:44:07,467 --> 00:44:10,550 Və ən böyük problemlərdən biri Mark və Facebook kimi şirkətlər üçün 926 00:44:10,550 --> 00:44:13,460 həqiqətən yüzlərlə idarə olunur və minlərlə və milyonlarla 927 00:44:13,460 --> 00:44:14,460 saniyədə sorğuların. 928 00:44:14,460 --> 00:44:16,501 Belə şeylər biz başlamaq lazımdır Bu həftə haqqında danışır 929 00:44:16,501 --> 00:44:19,860 həqiqətən ilgili olacaq yaxşı proqram yazılı və populyar 930 00:44:19,860 --> 00:44:23,040 uğurlu tools ki, istifadəçilər çox idarə edə bilərsiniz. 931 00:44:23,040 --> 00:44:25,460 >> Beləliklə, biz şey haqqında danışmaq lazımdır endeksleme və axtarış kimi, 932 00:44:25,460 --> 00:44:26,910 lakin bu gün üçün deyil. 933 00:44:26,910 --> 00:44:28,780 Biz Çərşənbə günü daha görəcəksiniz. 934 00:44:28,780 --> 00:44:31,780 935 00:44:31,780 --> 00:44:33,902 >> [MUSIC - "Seinfeld" MÖVZUSUNDA] 936 00:44:33,902 --> 00:44:35,943 DAVID Malan: Siz bilər Bu və ondan çıxmaq. 937 00:44:35,943 --> 00:44:38,859 Və qalmaq yoxdur yaddaş bəzi əvvəlcədən müəyyən edilmiş məbləğ. 938 00:44:38,859 --> 00:44:40,580 Yaxşı, nə adlandırmaq olacaq? 939 00:44:40,580 --> 00:44:42,369 >> HOPARLÖR 1: Bəli, nə olub? 940 00:44:42,369 --> 00:44:43,535 HOPARLÖR 2: Nə demək? 941 00:44:43,535 --> 00:44:44,451 O, mühazirə verilməsi oldu. 942 00:44:44,451 --> 00:44:47,650 DAVID Malan: Və biz bir istifadə edə bilərsiniz funksiyası, yaddaş malloc çağırıb 943 00:44:47,650 --> 00:44:50,050 >> HOPARLÖR 1: Niyə onun silah hərəkət deyil? 944 00:44:50,050 --> 00:44:52,450 >> HOPARLÖR 2: Well that Bilirsiniz ki, normal deyil. 945 00:44:52,450 --> 00:44:57,162 O, yalnız var kimi, yalnız var böyük kolbasa orada asma. 946 00:44:57,162 --> 00:44:59,040 >> HOPARLÖR 1: Bu normal deyil? 947 00:44:59,040 --> 00:45:03,096 >> HOPARLÖR 2: Bəli, mən düşünürəm yalnız təsadüfən o güman 948 00:45:03,096 --> 00:45:06,840 superglue ilə deodorant əvəz. 949 00:45:06,840 --> 00:45:07,608