1 00:00:00,000 --> 00:00:02,700 [Powered by Google Translate] [Həftə 9, davamı] 2 00:00:02,700 --> 00:00:05,160 [David J. Malan - Harvard Universiteti] 3 00:00:05,160 --> 00:00:07,020 [Bu CS50 edir. - CS50.TV] 4 00:00:07,940 --> 00:00:13,340 >> Bu CS50 edir. Bu həftə 9 sonu. Çox təşəkkür edirik. 5 00:00:13,340 --> 00:00:15,310 Nəhayət. Həftə 9. Mən var. 6 00:00:15,310 --> 00:00:18,590 Bu gün biz web proqramlaşdırma haqqında söhbət davam 7 00:00:18,590 --> 00:00:21,660 yekun layihə doğru bir göz ilə, siz web-based bir şey yoxdur, çünki 8 00:00:21,660 --> 00:00:25,610 yekun layihələrin lakin son layihələr üçün ya CS50 sonra 9 00:00:25,610 --> 00:00:29,000 Bu, əlbəttə, müasir proqram gedir olan istiqamətidir. 10 00:00:29,000 --> 00:00:31,770 Və hələ o həqiqətən asan bir şey deyil. 11 00:00:31,770 --> 00:00:35,040 Əslində, bunu ən ağır şeyi bir dizayn aspektidir. 12 00:00:35,040 --> 00:00:38,600 >> Məsələn, dizayn biz, həqiqətən, istifadəçi interfeysi almaq deməkdir 13 00:00:38,600 --> 00:00:40,420 və ya istifadəçi experience hüququ. 14 00:00:40,420 --> 00:00:43,200 Daresay I - və biz son bir problem set bilirik 15 00:00:43,200 --> 00:00:45,960 siz bir neçə proqram bir parça haqqında sancı yayımlanan zaman 16 00:00:45,960 --> 00:00:49,000 və ya hardware kampus və ya off olub, siz infuriates ki - 17 00:00:49,000 --> 00:00:51,930 orada sites bir çox var, hardware bir çox orada var 18 00:00:51,930 --> 00:00:53,900 bu cür gücünü zaptetti. 19 00:00:53,900 --> 00:00:58,730 Lakin reallıq hələ istifadə etmək üçün asan olan şeylər edərək yenə güclü olmasıdır 20 00:00:58,730 --> 00:01:00,550 çox çətin bir problemdir. 21 00:01:00,550 --> 00:01:03,680 Belə ki, bu gün mən Yusifin və Tommy burada mənə qoşulmaq istədi 22 00:01:03,680 --> 00:01:06,680 biz bir söhbət ola bilər, belə ki, həm haqqında dizayn 23 00:01:06,680 --> 00:01:09,090 və nə düşünmə proseslərinin cür başını keçir başlamaq lazımdır 24 00:01:09,090 --> 00:01:12,040 Siz yekun layihələrin hazırlanması zaman, gələcək səylər. 25 00:01:12,040 --> 00:01:15,040 Və sonra Tommy köməyi ilə biz həyata detalların bəzi baxmaq lazımdır. 26 00:01:15,040 --> 00:01:18,440 Necə kağız və ya fikrinizi bir görmə ola bilər 27 00:01:18,440 --> 00:01:20,760 Əgər proqram icra edə bilər ki, 28 00:01:20,760 --> 00:01:24,030 texnologiyaları və texnika bəzi istifadə edərək, biz yalnız söhbət açılmış sonra 29 00:01:24,030 --> 00:01:29,080 yəni JavaScript və AJAX, asynchronous JavaScript məhz belə yeni bir şey. 30 00:01:29,080 --> 00:01:32,950 Bu bir istifadəçi interfeysi bütün daha dinamik yaratmaq imkan verir 31 00:01:32,950 --> 00:01:35,780 bir server tədricən daha çox veri alma ilə. 32 00:01:35,780 --> 00:01:38,560 Beləliklə, biz bu gün o parçaları bəzi görəcəksiniz. 33 00:01:38,560 --> 00:01:41,800 Bir kənara kimi, kompüter konsentrə maraqlıdır əgər 34 00:01:41,800 --> 00:01:45,010 və ya kompüter minoring, bilirəm ki, günorta saatlarında bu cümə 35 00:01:45,010 --> 00:01:48,750 Maxwell Dworkin 221 bir pizza hadisə olacaq 36 00:01:48,750 --> 00:01:50,780 harada kompüter haqqında bir az daha çox məlumat bilərsiniz. 37 00:01:50,780 --> 00:01:54,860 Qapı həyata sizin yol, bu gün siz Harvard CS üçün qeyri-rəsmi guide ala bilərsiniz. 38 00:01:54,860 --> 00:01:57,290 Biz bel boyu kənarda zibil qutuları qoyun lazımdır 39 00:01:57,290 --> 00:01:59,750 belə ki, bu işğalçı və CS haqqında bir az daha ətraflı məlumat istəyirsinizsə, 40 00:01:59,750 --> 00:02:02,480 bu həftə 0 idi ki, sizin üçün olacaq. 41 00:02:02,480 --> 00:02:06,500 Siz 1:15 pmsaat bu cümə CS50 nahar üçün bizə qoşulmaq istərdim Həmçinin, əgər 42 00:02:06,500 --> 00:02:09,800 cs50.net/lunch giderim. 43 00:02:09,800 --> 00:02:13,260 Daha ADO olmadan, sizə tədris işçisi Cozef Ong verir. 44 00:02:13,260 --> 00:02:19,190 Salam. [Alqış] 45 00:02:19,190 --> 00:02:20,770 Thanks. 46 00:02:20,770 --> 00:02:24,780 Mən layihə haqqında öyrəndim ilk CS179 adlı burada bir sinif idi. 47 00:02:24,780 --> 00:02:28,040 >> Zamanı professor bizə bir professor haqqında hekayə bildirib 48 00:02:28,040 --> 00:02:31,640 bir otel getdi və faucets istifadə etmişdi. 49 00:02:31,640 --> 00:02:35,630 Hər kəs sol nə 2 kulplar mənə və sağ edə bilərəmmi? 50 00:02:35,630 --> 00:02:39,080 [Tələbə] Seksual və soyuq. >> Isti və soyuq. Yaxşı. 51 00:02:39,080 --> 00:02:41,430 Normal gözləmək nə, sağ? 52 00:02:41,430 --> 00:02:46,960 Bu kran istifadə sonra professor bir duş almaq istəyir və o, bu istifadə etmək gəlir. 53 00:02:46,960 --> 00:02:51,310 O, sol düşünür və sağ tərəfdən sağ, isti və soyuq var? 54 00:02:51,310 --> 00:02:55,470 Amma hər kəs mənə bu həqiqətən nə deyə bilərsiniz? 55 00:02:55,470 --> 00:02:58,060 Hər əlləri? 56 00:02:58,060 --> 00:03:01,740 [Işitilemez tələbə cavab] >> biri təklif edir? 57 00:03:01,740 --> 00:03:05,860 [Işitilemez tələbə cavab] >> Temperatur? 58 00:03:05,860 --> 00:03:10,460 Belə ki, onlardan biri temperatur və digər nəzarət nəzarət? >> [Tələbə] Su təzyiqi. 59 00:03:10,460 --> 00:03:12,350 Su təzyiqi. Yaxşı. 60 00:03:12,350 --> 00:03:15,100 Bu professor, bu daxil dolaşır və onlar isti və soyuq nəzarət düşünür 61 00:03:15,100 --> 00:03:21,470 o isti, bütün yol qədər hesab edən sağ biri çevrilir 62 00:03:21,470 --> 00:03:23,560 o bir isti duş qəbul etmək istəyir. 63 00:03:23,560 --> 00:03:28,100 Yaxşı, bu, həqiqətən, uyğun deyil, belə ki, o, bu çox fun deyil təcrübə alır 64 00:03:28,100 --> 00:03:31,110 bir soyuq duş olan və biz bütün bu kimi hiss bilirik. 65 00:03:31,110 --> 00:03:33,620 Bu bir dizayn qüsur nümunəsidir. 66 00:03:33,620 --> 00:03:37,040 Ki, kran onun gözləməsinin ilə nə demək 67 00:03:37,040 --> 00:03:39,420 duş çıxdı nə uyğun gəlmədi, 68 00:03:39,420 --> 00:03:41,780 Onun üçün uğursuz növü olan. 69 00:03:41,780 --> 00:03:44,990 Belə ki, bu real həyatda olur ki, bir dizayn qüsur nümunəsidir. 70 00:03:44,990 --> 00:03:48,020 Lakin biz həmçinin digər isə hər cür görürük. 71 00:03:48,020 --> 00:03:50,390 Biz yəqin ki, MBTA sisteminin azarkeşləri deyilik. 72 00:03:50,390 --> 00:03:55,560 Bu, deyir ki, London həqiqətən bir metro sistemi, "Bu düyməni istifadə deyil." 73 00:03:55,560 --> 00:04:00,220 Nə var belə edir? Niyə biz belə qayğı yoxdur? 74 00:04:00,220 --> 00:04:02,810 Mən bir uşaq, ev texnologiya fərasət biri olan zaman 75 00:04:02,810 --> 00:04:05,050 kompüter avariya ki, zaman mənim ana, mənə gələcək 76 00:04:05,050 --> 00:04:07,060 Bu ekran göstərən və mənə xahiş nə baş verib. 77 00:04:07,060 --> 00:04:09,210 >> Hətta mən bu nə deməkdir bilmirəm. 78 00:04:11,890 --> 00:04:14,700 [Gülüş] nədir? 79 00:04:16,950 --> 00:04:18,019 [Gülüş] 80 00:04:18,720 --> 00:04:23,050 Bəzən biz proqram developers kimi hiss yalnız trolling Bookmark var. 81 00:04:23,050 --> 00:04:28,460 Istifadəçilər biz kimi etdiyiniz kimi, "nə gedir? Biri bizə." 82 00:04:28,460 --> 00:04:32,140 Bu, bütün dizayn bir məsələ aşağı düşür. 83 00:04:32,140 --> 00:04:34,650 Design, biz göründüyü kimi, estetik sırf deyil 84 00:04:34,650 --> 00:04:37,230 o şeyi baxmaq haqqında deyil. 85 00:04:37,230 --> 00:04:41,720 Biz bu pop-up burada çox az həqiqətən olduqca gözəl görünür ki, burada baxın. 86 00:04:41,720 --> 00:04:45,290 Bu fonda bir damla kölgəsi, bu davam sərhəd radiuses var. 87 00:04:45,290 --> 00:04:47,550 Bu olduqca növü var. 88 00:04:47,550 --> 00:04:51,480 Çox istifadəçi dostu deyil, çünki, həqiqətən, yaxşı dizayn deyil. 89 00:04:51,480 --> 00:04:54,920 Gəlir ki, pop-up Bu az həqiqətən mənə heç bir məlumat vermir 90 00:04:54,920 --> 00:04:58,450 neler haqqında, bu istifadəçi kimi mənə bir şey demək deyil 91 00:04:58,450 --> 00:05:01,400 ki, səhv bərpa haqqında. 92 00:05:01,400 --> 00:05:05,190 Biz dizayn deyil şeylər haqqında düşünmək istəyirəm. 93 00:05:05,190 --> 00:05:06,670 Birincisi, estetik deyil. 94 00:05:06,670 --> 00:05:10,800 O, həmçinin, gərəksiz funksionallığı ton app içlik deyil. 95 00:05:10,800 --> 00:05:14,890 Bir Tay restoran edirsinizsə, siz yəqin ki, eyni zamanda bir diş həkimi olmaq istəmirəm. 96 00:05:14,890 --> 00:05:17,720 Və Facebook suallar ilə, bir çox insanlar istifadə edir ki, 97 00:05:17,720 --> 00:05:21,130 və onların tikinti nə əsas da həqiqətən deyil. 98 00:05:21,130 --> 00:05:24,200 Və bu qədər şeyi miqdarı deyil düşünmək gözəl 99 00:05:24,200 --> 00:05:26,390 Siz ərizə lakin keyfiyyəti qoyulması olduğunuz 100 00:05:26,390 --> 00:05:28,910 və necə daha yaxşı user experience edirik 101 00:05:28,910 --> 00:05:32,540 tərəfindən həqiqətən artıq nə ilə təkmilləşdirilməsi. 102 00:05:32,540 --> 00:05:37,040 >> Özetle, dizayn biz qurmaq nə bizə deyir. 103 00:05:37,040 --> 00:05:41,950 Məsələn, biz şeyi axtarmaq edək ki, bir şey bina edirsinizsə, 104 00:05:41,950 --> 00:05:45,970 Google kimi, misal üçün, biz bir şəkildə şeylər olmalıdır 105 00:05:45,970 --> 00:05:48,950 ki, istifadəçi istədiklərini almaq üçün klik çox etmək tələb 106 00:05:48,950 --> 00:05:52,580 və ya Google Instant və ya AutoComplete ilə, misal üçün, bir şəkildə bunu etməlidir 107 00:05:52,580 --> 00:05:54,970 ki, bizim nəticələr daha sürətli almaq imkan verir? 108 00:05:54,970 --> 00:05:58,740 Tommy həqiqətən, tikinti gösterir kimi Engineering, daxildir. 109 00:05:58,740 --> 00:06:01,890 Dizayn növlərinin çox var. 110 00:06:01,890 --> 00:06:06,070 Məsələn, bir şey bina əgər bir şey yerləşdirmək 111 00:06:06,070 --> 00:06:09,770 çox elektrik və ya çox texnologiya olmadığı bir Üçüncü Dünya ölkədə 112 00:06:09,770 --> 00:06:11,440 Əgər tikinti ne dizayn var 113 00:06:11,440 --> 00:06:14,210 asanlıqla orada insanların imkanı verir bir şəkildə. 114 00:06:14,210 --> 00:06:18,290 Amma digər dizayn qərarları növ ola bilər nə 115 00:06:18,290 --> 00:06:21,850 və ya bu kimi bir şey cəlb ola bilər? 116 00:06:23,690 --> 00:06:25,660 Bəli. Mən bir tərəfdən baxın. 117 00:06:25,660 --> 00:06:37,200 [Işitilemez tələbə cavab] >> hüququ. Exactly. Erişilebilirlik bir şeydir. 118 00:06:37,200 --> 00:06:40,870 Bir çox insan "Nə mənim istifadəçi?" Haqqında düşünmürəm 119 00:06:40,870 --> 00:06:43,160 ya spektrinin ifrata kimi. 120 00:06:43,160 --> 00:06:47,770 Mən düşünmədən deyiləm ki, əlil ola bilər olan istifadəçilər var 121 00:06:47,770 --> 00:06:50,590 və yalnız ümumi istifadəçi üçün dizayn haqqında düşünür alıram. 122 00:06:50,590 --> 00:06:52,630 İnternet, hazırda hər kəs tərəfindən əldə 123 00:06:52,630 --> 00:06:54,870 və mən də o insanlar üçün dizayn edilməlidir. 124 00:06:54,870 --> 00:06:58,620 Nə digər dizayn qərarları növ edə bilər? 125 00:06:58,620 --> 00:07:00,690 Bəli. >> [Tələbə] dəyər. 126 00:07:00,690 --> 00:07:02,680 Başa gəlir. Çox yaxşı. 127 00:07:02,680 --> 00:07:08,060 Biz dizayn qərarları əsaslandırmaq bilər başqa bir şey dəyəri var. 128 00:07:08,060 --> 00:07:13,130 Biz bir iş edirsinizsə, siz istehsal çox dəyəri almaq deyil ki, bir şey yaratmaq istəyirsinizsə, 129 00:07:13,130 --> 00:07:17,720 amma xüsusilə yüksək dəyəri ilə sata bilər və ya bizə mənfəət əldə edə bilər. 130 00:07:17,720 --> 00:07:21,540 >> Bu layihə bütün müxtəlif növləri var, lakin biz İnternet bir şey bina etdiyiniz zaman 131 00:07:21,540 --> 00:07:25,120 və ya biz yəqin ki, indi yaratmaq çox dəyəri olmayan bir şey bina etdiyiniz zaman, 132 00:07:25,120 --> 00:07:28,630 Internet applications kimi - siz onu çox kapital atmaq yoxdur 133 00:07:28,630 --> 00:07:30,900 həqiqətən çalışır ki, bir şey etmək üçün - 134 00:07:30,900 --> 00:07:33,490 nə haqqında daha çox narahat olduğunuz istifadəçi experience edir. 135 00:07:33,490 --> 00:07:36,390 Biz bu istifadəçi mərkəzli dizayn çağırırıq. 136 00:07:36,390 --> 00:07:41,550 Əsasən hansı istifadəçi mərkəzli dizayn daxildir kullanıcılarınızın ayaqqabı özünüzü qoyulması edir. 137 00:07:41,550 --> 00:07:44,870 Mən tikinti alıram nə üçün kimsə əlamətləri qədər varsa, 138 00:07:44,870 --> 00:07:48,250 onlar açıq-aydın nəzərə qolu ilə mənim xüsusi ərizə gəldiniz 139 00:07:48,250 --> 00:07:50,280 bir vəzifə ilə onlar başa istəyirəm. 140 00:07:50,280 --> 00:07:53,650 Və iş onlara tapşırıq tam kömək etmək üçün deyil 141 00:07:53,650 --> 00:07:57,930 lakin onların intuitiv, səmərəli bir şəkildə ki, məsələ tam kömək etmək, 142 00:07:57,930 --> 00:08:01,900 və bəzi adam orada dediyi kimi, əlçatan. 143 00:08:01,900 --> 00:08:03,750 Səmərəlilik nə deməkdir? 144 00:08:03,750 --> 00:08:08,050 Səmərəliliyi necə tez mənim istifadəçi mənim interface verilmiş tapşırıq başa deməkdir. 145 00:08:08,050 --> 00:08:11,650 Onlara bir yerdən digər almaq üçün klik çox almaq mı? 146 00:08:11,650 --> 00:08:14,630 O yorucu deyilmi? Onlar təkrar vəzifələri çox yerinə yetirmək üçün var? 147 00:08:14,630 --> 00:08:17,140 Biz mümkün qədər səmərəli kimi proses etmək 148 00:08:17,140 --> 00:08:20,070 onlar şeyi bu cür etmək yoxdur. 149 00:08:20,070 --> 00:08:24,230 Bir istifadəçi interfeysi mənim qədər görünür əgər intuitiveness görə ki, məsələn, edir, 150 00:08:24,230 --> 00:08:27,240 onlara yer yer almaq üçün asandır? 151 00:08:27,240 --> 00:08:30,390 Onlar mənim interface basın nə anlamaq üçün asan 152 00:08:30,390 --> 00:08:33,770 məqsədilə onlar üçün onlar nail olmaq istəyirik ki, məqsəd və ya vəzifə nail olmaq üçün? 153 00:08:33,770 --> 00:08:37,520 >> Bir nəfər orada bildirib və nəhayət, accessibility çox vacibdir. 154 00:08:37,520 --> 00:08:39,640 [Kişi natiq] Bu görmə kimi şeylər üçün accessibility gəlir 155 00:08:39,640 --> 00:08:42,740 Mən, həqiqətən, kor olan kimsə üçün bir şey dizayn nə istəyirsiniz? 156 00:08:42,740 --> 00:08:46,460 Oh. Bütün görmək bilməyən insanlar üçün, biz ekran oxucu deyilən bir şey var. 157 00:08:46,460 --> 00:08:49,070 Nə lazımdır bir şəkildə veb qurmaq lazımdır 158 00:08:49,070 --> 00:08:52,020 ki, məsələn, biz dediyimiz xüsusi texnologiyaları - 159 00:08:52,020 --> 00:08:53,590 İndi şeyi çox var. 160 00:08:53,590 --> 00:08:55,660 Mən Jaws adlı ekran oxucuları var. 161 00:08:55,660 --> 00:08:58,410 Bunlar çox biz sahəsi qaydaları zəng nə etibar 162 00:08:58,410 --> 00:09:02,010 səhifə dair nə istifadəçi həyata oxumaq üçün. 163 00:09:02,010 --> 00:09:05,480 Göremiyorum edənlər üçün, siz əmin etmək lazımdır ki, bu ekran oxucuların 164 00:09:05,480 --> 00:09:09,130 əslində səhifə içerik ala bilər və həqiqətən, sizin users göstərə bilər, 165 00:09:09,130 --> 00:09:13,630 Gördüyünüz halda, ən azı hələ səhifə içerik anlayarlar. 166 00:09:13,630 --> 00:09:16,190 Bəli. Okay. 167 00:09:16,190 --> 00:09:23,410 Kifayət qədər yaxşı dizayn söhbət. Pis dizayn haqqında danışmaq edək. 168 00:09:23,410 --> 00:09:25,220 Bu nə ki şeylər. 169 00:09:25,220 --> 00:09:27,890 Hər kəs Craigslist ilə təcrübə haqqında misiniz 170 00:09:27,890 --> 00:09:32,190 və nə düşündüklərini bu layihə barədə belə böyük deyil? 171 00:09:33,690 --> 00:09:36,430 Bəli. >> [Tələbə] Mən çox sözlə bir sahədə var edirəm. 172 00:09:36,430 --> 00:09:39,350 Çox çox sözlə, sağ? Tamamilə böyük. 173 00:09:39,350 --> 00:09:42,400 Bu səhifə gəlmək və burada şeyi bütün dəstə ilə qarşılandı edirik 174 00:09:42,400 --> 00:09:43,860 hətta sizin üçün əhəmiyyətli ola bilər. 175 00:09:43,860 --> 00:09:47,010 Məsələn, bu məktubu ilə başlayır ki, bir dövlət yaşayır. 176 00:09:47,010 --> 00:09:48,690 Gəlin siz Texas və ya bir şey yaşamaq demək. 177 00:09:48,690 --> 00:09:53,790 >> Siz var yeri almaq üçün səhifə aşağı bütün yol hərəkət etmək var. 178 00:09:53,790 --> 00:10:00,320 I Boston dən edirəm, mənə Massaçusets baxaq. Massachusetts haradadır? 179 00:10:00,320 --> 00:10:03,270 Oh, burada var. Oh, Boston var. Okay. 180 00:10:03,270 --> 00:10:09,070 In Boston baxaq. [Gülüş] 181 00:10:09,070 --> 00:10:12,250 Pretty böyük, sağ? 182 00:10:12,250 --> 00:10:16,400 Orada yöndəmsiz şeylər. [Gülüş] 183 00:10:17,320 --> 00:10:19,470 Gəlin Mən yaşamaq üçün haradasa arıyorum deyirlər. 184 00:10:19,470 --> 00:10:24,130 Necə bir çox insanlar həqiqətən Craigslist istifadə? Siz ton. 185 00:10:24,130 --> 00:10:30,960 Bu baxmaq, lakin bu baxaq olduqca pis yolları var. 186 00:10:35,130 --> 00:10:38,970 Img və pic arasında fərq nədir? Hər kəs mənə deyə bilərsiniz? 187 00:10:41,350 --> 00:10:42,830 Əslində heç bir fərq yoxdur. 188 00:10:42,830 --> 00:10:47,710 Onlar eyni şey demək, onlar nədənsə onlar üçün müxtəlif yazıları var. 189 00:10:48,980 --> 00:10:53,560 I var tıklarsanız Image, heç bir səhifə olur. 190 00:10:53,560 --> 00:10:57,490 Mən, həqiqətən, nə bir şey daha Axtar basın. 191 00:10:57,490 --> 00:11:02,430 Nə var edilə bilər ki, bir yaxşı dizayn qərar ola bilər? 192 00:11:03,820 --> 00:11:08,030 Hesab edirəm ki, filter tıklayarak alıram, mən yəqin ki, xüsusi fəaliyyət Süzme etmək istəyirəm 193 00:11:08,030 --> 00:11:09,970 və ya xüsusi kateqoriya. 194 00:11:09,970 --> 00:11:14,450 Əvəzinə yenidən Axtar basın malik Belə ki, yalnız avtomatik filtreleme edə 195 00:11:14,450 --> 00:11:17,060 onlar dərhal bunu Google stil növ. 196 00:11:17,060 --> 00:11:20,440 [Malan] Amma biz onlara bu günə qədər fiziki təqdim olunmalıdır gördüm kimi təşkil etmir 197 00:11:20,440 --> 00:11:23,170 vuraraq ən azı və ya bir düyməsinə tıklayarak daxil edin? 198 00:11:23,170 --> 00:11:26,830 Siz onları gördüm ki, siz həqiqətən o şeyə təqdim basın. 199 00:11:26,830 --> 00:11:30,090 >> Lakin Tommy ikinci gösterir kimi, həqiqətən, sizin üçün yol var 200 00:11:30,090 --> 00:11:33,010 ki şey basın avtomatik olaraq göndərə bilərsiniz, belə ki, 201 00:11:33,010 --> 00:11:38,840 biz bir AJAX tələb zəng və geri məlumat almaq və dərhal nəticələri filtrelemek nə. 202 00:11:38,840 --> 00:11:41,340 Bu interfeys ilə səhv şeylər ton var. 203 00:11:41,340 --> 00:11:43,530 [Malan] Siz Cambridge üçün axtarış edə bilərəmmi? 204 00:11:43,530 --> 00:11:47,030 Siz Cambridge qayğı yerləşir yüngül anomal bir şey burada var 205 00:11:47,030 --> 00:11:54,790 və hələ WESTFORD, Bahar Hill, West Newton və kimi əldə edirik. 206 00:11:54,790 --> 00:11:57,930 Yəqin ki, heç ideal. >> Yəqin ki, ideal deyil. 207 00:11:57,930 --> 00:12:03,900 Mən bu səhifə, istifadəçi experience daha yaxşı etmək üçün edə bilər? 208 00:12:03,900 --> 00:12:07,340 Bəli. >> [Tələbə] Təlimatlar. 209 00:12:07,340 --> 00:12:09,500 Okay. Mənada nə cür təlimat? 210 00:12:09,500 --> 00:12:14,630 Məsələn [tələbə], hətta Craigslist nə bilməyən ilk dəfə istifadəçilər üçün bir şey 211 00:12:14,630 --> 00:12:17,320 və ya siz nə etməli olduğunuz bilmirəm. 212 00:12:17,320 --> 00:12:20,150 Sağ. Belə ki Craigslist Bu səhifə nə izah vacibdir. 213 00:12:20,150 --> 00:12:23,490 Biz, həqiqətən, bu səhifə üçün əslində nə istifadəçilər deyə bilərsiniz. 214 00:12:23,490 --> 00:12:27,090 Mən yalnız bu səfər edirəm, mən locations bütün dəstə görürük. Mən hətta onlar demək nə bilmirəm. 215 00:12:27,090 --> 00:12:29,730 Amma daha əhəmiyyətlisi, yalnız bu interface baxaraq 216 00:12:29,730 --> 00:12:35,530 Mən xüsusi icma tapmaq şeyi bir ton aşağı diyirləyin idi unutmayın 217 00:12:35,530 --> 00:12:37,560 Mən, həqiqətən, bu barədə qayğı ki. 218 00:12:37,560 --> 00:12:39,820 Hesab edirəm ki, ola bilər bir sürətli yolu nədir? Bəli. 219 00:12:39,820 --> 00:12:43,290 [Tələbə] onlara şərq, qərb rayonlarında qədər bölün. Okay. >> 220 00:12:43,290 --> 00:12:47,460 Mən daha sürətli müəyyən kömək edə bilər ki, kateqoriyalar onları bölmək bilər 221 00:12:47,460 --> 00:12:49,820 xüsusi yeri almaq üçün necə. 222 00:12:49,820 --> 00:12:54,510 [Tələbə] açılan siyahısı qoyun. >> Hüququ. Okay. 223 00:12:54,510 --> 00:12:58,240 Biz şeyi sabit dəsti var, çünki mən bir açılan menyu istifadə edə bilər 224 00:12:58,240 --> 00:13:00,100 və biz bir açılan menyu onları göstərmək bilər. 225 00:13:00,100 --> 00:13:02,240 Bu yolla o, ekranda çox yer tutur deyil. 226 00:13:02,240 --> 00:13:05,630 Lakin daha yaxşı, biz nə edə bilər? 227 00:13:05,630 --> 00:13:09,220 Bəli. Siz daha >> [işitilemez tələbə cavab] >> demək olarmı? >> [Tələbə] Axtar qutusu. 228 00:13:09,220 --> 00:13:11,260 Bəli, bir axtarış qutusu. Bu harika. 229 00:13:11,260 --> 00:13:16,430 Biz slaydlar, axtarış qutusuna geri baxmaq əgər biz həqiqətən nə bilər. 230 00:13:16,430 --> 00:13:21,520 Autocomplete. Bilirsiniz ki, nəticələri ilə axtarmaq üçün çox asan bir sıra var. 231 00:13:21,520 --> 00:13:25,980 I BO yazaraq başlamaq istəyirsinizsə, yalnız mənə onların BO daxilində olan bütün nəticələri göstərir. 232 00:13:25,980 --> 00:13:29,030 Bu yolla çox asanlıqla Mən getmək istəyirəm xüsusi bir tapa bilərsiniz 233 00:13:29,030 --> 00:13:32,390 əvəzinə bu, həqiqətən böyük siyahısını diyirləyin üçün olan. 234 00:13:32,390 --> 00:13:37,450 >> Bu, həqiqətən, aşağı asma meyvə bütün növ ki Craigslist həyata kimsə 235 00:13:37,450 --> 00:13:42,500 həqiqətən onların xüsusi istifadəçi üçün bir çox yaxşı web təcrübə etmək üçün nə edə bilər. 236 00:13:42,500 --> 00:13:46,370 Okay. Yetər pis saytları haqqında söhbət. 237 00:13:46,370 --> 00:13:49,410 Facebook haqqında danışmaq edək. 238 00:13:50,880 --> 00:13:54,390 Facebook çıxdı, xüsusilə Facebook photos zaman, 239 00:13:54,390 --> 00:13:57,870 eyni şeyi edə biləcək zamanda digər xidmətləri çox olmuşdur. 240 00:13:57,870 --> 00:14:00,740 Onlar albom daxil photos təşkil edə bilər. 241 00:14:00,740 --> 00:14:03,360 Nə edə bilər, həmçinin dəstləri onları təşkil bilər. 242 00:14:03,360 --> 00:14:06,070 Siz tarixi ilə onları təşkil edə bilər. Siz bütün bu xüsusi şeyi bilər. 243 00:14:06,070 --> 00:14:11,710 Amma hər kəs Facebook photos onu azad edilib və zaman partlayışa edib nə bilir? 244 00:14:11,710 --> 00:14:15,080 Bəli. >> [Tələbə] Tags. >> Tags. Exactly. 245 00:14:15,080 --> 00:14:21,300 Biz CS50 bandana ilə it maskot olan burada Milo var. 246 00:14:21,300 --> 00:14:24,810 Siz biz ortada bu etiketleme xüsusiyyət var ki, görə bilərsiniz. 247 00:14:24,810 --> 00:14:28,240 Və nə bir Kullanışlılık baxımdan Facebook photos qədər maraqlı edib 248 00:14:28,240 --> 00:14:34,130 əslində bu vasitəsilə insanların photos onların dostları cəlb icazə edir. 249 00:14:34,130 --> 00:14:37,680 Facebook üçün, onların veb xüsusən sosial, çünki 250 00:14:37,680 --> 00:14:40,750 sosial mühit bu cür tikinti haqqında. 251 00:14:40,750 --> 00:14:42,620 Bu daha çox photos təcrübəsi təkmilləşdirilir 252 00:14:42,620 --> 00:14:46,390 onlar həqiqətən deyərək başlamaq bilər, çünki "Bu, insanlar arasındakı əlaqələri var 253 00:14:46,390 --> 00:14:49,220 və bu, həqiqətən, qayğı insanların photos var. " 254 00:14:49,220 --> 00:14:52,200 Bir hissəsi də sort narcissism edir. 255 00:14:52,200 --> 00:14:54,980 İnsanlar kimi foto və şeyləri tagged etmək istəyirəm. 256 00:14:54,980 --> 00:14:58,510 Yaxşı bir insan xislət mütləq deyil baxmayaraq, 257 00:14:58,510 --> 00:15:01,910 eyni zamanda yaxşı dizayn qərarları əsasında 258 00:15:01,910 --> 00:15:04,860 insanlar həqiqətən bu kimi şeylər haqqında qayğı, çünki. 259 00:15:04,860 --> 00:15:07,190 Belə ki, Facebook photos var. 260 00:15:07,190 --> 00:15:09,800 >> Lakin daha çox, ümumiyyətlə Facebook danışaq. 261 00:15:09,800 --> 00:15:13,400 Mən burada insanların çox Facebook haqqında fikirlər var əminəm 262 00:15:13,400 --> 00:15:16,430 yaxşı dizayn qərarları və pis dizayn qərarları həm də. 263 00:15:16,430 --> 00:15:20,270 Belə nin çıxış və ya xoşbəxt olsun. 264 00:15:23,480 --> 00:15:26,450 Hadi. Mən sizin bütün Facebook istifadə bilirik. 265 00:15:26,450 --> 00:15:30,970 Bəziləri deyə pis bir şey və ya bu barədə demək yaxşı bir şey var. Bəli. 266 00:15:30,970 --> 00:15:35,060 Xəbər feed ildə [tələbə] Mən, həqiqətən, haqqında qayğı yoxdur çox şey var. 267 00:15:35,060 --> 00:15:37,740 Bu news feed haqqında qayğı bilər çox şey göstərmək deyil. 268 00:15:37,740 --> 00:15:41,660 Siz 2 və ya 3 il görüşüb olmayan Facebook dostları var 269 00:15:41,660 --> 00:15:43,860 və onların xəbər nəticələri news feed qədər yaratma bax 270 00:15:43,860 --> 00:15:45,870 və həqiqətən bu barədə qayğı yoxdur. 271 00:15:45,870 --> 00:15:48,700 Facebook həqiqətən, bu daha yaxşı etmək üçün cəhd etdi 272 00:15:48,700 --> 00:15:53,150 və onlar, həqiqətən, mərhumun kimi news feed üst müvafiq nəticələr çıxarmaq denedim 273 00:15:53,150 --> 00:15:58,300 belə ki, həqiqətən siz və ya yaxın dostları üçün müvafiq olan dostları şeyi görürük. 274 00:15:58,300 --> 00:16:01,110 Başqa bir şey? Bəli. 275 00:16:01,110 --> 00:16:06,400 Daha ki, [işitilemez tələbə cavab] >> demək olarmı? 276 00:16:06,400 --> 00:16:10,140 [Tələbə] reklam nisbətən sadə olur. Nə mənada >>? 277 00:16:10,140 --> 00:16:16,370 [Işitilemez tələbə cavab] Onlar plakatlar kimi, ekranda işıq yoxdur. 278 00:16:16,370 --> 00:16:17,760 Okay. Bu yaxşı. 279 00:16:17,760 --> 00:16:25,030 Siz 90-cı Internet xatırlayıram varsa - >> [Malan] Mən var idi. >> O, var idi. [Gülüş] 280 00:16:25,030 --> 00:16:29,210 Siz sparkly flashing gifs fonları şeyi xatırlayıram bilər 281 00:16:29,210 --> 00:16:31,570 Şeyi GeoCities stil sort. 282 00:16:31,570 --> 00:16:34,080 Bu, həqiqətən bir yaxşı dizayn nümunəsi deyil 283 00:16:34,080 --> 00:16:36,690 həqiqətən content dağıtan, çünki. 284 00:16:36,690 --> 00:16:39,590 Onların fon kimi animasiya gifs üçün istifadə Yale incəsənət veb 285 00:16:39,590 --> 00:16:41,800 və siz səhifə heç bir şey oxumaq bilmədi 286 00:16:41,800 --> 00:16:44,870 amma kimsə həqiqətən, onlara danışdım və indi bir az fərqli danışarlar. 287 00:16:44,870 --> 00:16:48,940 [Malan] indi çox yaxşıdır. Gördüyünüz kimi, indi çox yaxşı >>. >> [Malan] Bəli Oh. 288 00:16:48,940 --> 00:16:56,020 Yalnız böyük, yalnız - Bəli. Okay. 289 00:16:56,020 --> 00:17:00,560 >> Bir hissəsi də səhifə bəlkə çox minimalist və çox aydın edir 290 00:17:00,560 --> 00:17:05,690 çox məntiqi bir şəkildə səhifə axını şeyi belə və hər bir digər yolu yoxdur. 291 00:17:05,690 --> 00:17:11,849 Başqa şeylər nə növ Facebook haqqında yaxşı və ya Facebook haqqında pis? 292 00:17:11,849 --> 00:17:15,730 Nin yalnız burada bir dizayn söhbət edək. 293 00:17:19,470 --> 00:17:21,339 Oh. Harada? Bəli. 294 00:17:21,339 --> 00:17:25,640 [Tələbə] Yeni Timeline sistemi onların keçmiş haqqında şəxsin profili axtarış imkan verir. 295 00:17:25,640 --> 00:17:28,119 , Timeline Ooh. 296 00:17:28,119 --> 00:17:30,280 Bu sapı dostlara imkan verir, çünki Timeline bir böyük şey 297 00:17:30,280 --> 00:17:33,300 geri onlar orta məktəbdə olanda. 298 00:17:35,160 --> 00:17:38,060 Bir çox sürətli content vasitəsilə filtrelemek imkan verir, çünki Timeline, yaxşı 299 00:17:38,060 --> 00:17:41,500 bu başqa tapmaq üçün həqiqətən uzun müddət qəbul ki şeyi tapmaq imkan verir 300 00:17:41,500 --> 00:17:45,840 yalnız zaman geri gedir kimi, up, up, up, up, up, kaydırarak və aşağı. 301 00:17:45,840 --> 00:17:48,910 Amma sonra bir İşin mənfi tərəfi odur növ istifadəçi təcrübəsi baxımından o da var. 302 00:17:48,910 --> 00:17:51,190 Nə ola bilər? 303 00:17:51,190 --> 00:17:56,780 P-R ilə başlayır ki, böyük söz. >> [Tələbə] Privacy. >> Privacy, sağ? 304 00:17:56,780 --> 00:17:59,970 Privacy böyük bir user experience məsələdir. 305 00:17:59,970 --> 00:18:07,190 Bu indi Facebook haqqında ən nifrət şeyi biridir. [Gülüş] 306 00:18:07,190 --> 00:18:09,000 [Malan] kimi indi. 307 00:18:09,000 --> 00:18:11,380 David bu həqiqətən dünən qədər baş dərk etməyib. 308 00:18:11,380 --> 00:18:14,560 Belə ki, indi o, mən ona söhbət hər dəfə o, mənə məhəl edilmişdir var bilirsiniz ki, bilir. 309 00:18:14,560 --> 00:18:16,880 [Malan] Mən, həqiqətən, ona olan yöndəmsiz hissəsi məhəl edilmişdir 310 00:18:16,880 --> 00:18:21,040 və mən o mən ona məhəl bilirdi bilmirdim. [Gülüş] 311 00:18:21,040 --> 00:18:24,030 Privacy böyük bir məsələdir. 312 00:18:24,030 --> 00:18:28,670 Burada hər kəs Facebook gizlilik haqqında pis ola bilər nə mənə deyə bilərsiniz 313 00:18:28,670 --> 00:18:32,270 bu kimi şeylər ki başqa? 314 00:18:32,270 --> 00:18:37,240 O Facebook gizlilik hörmət etmək xüsusilə ağır nədir? 315 00:18:37,240 --> 00:18:40,340 Ki, sort aparıcı sual. 316 00:18:41,680 --> 00:18:43,930 Bəli. >> [Tələbə] müəyyən insanların şəkilləri gizlət. 317 00:18:43,930 --> 00:18:46,170 Sağ. Məhz, müəyyən insanların şəkilləri gizlətmək. 318 00:18:46,170 --> 00:18:51,290 Onlar bir şəkil gizlilik keçid imkan verir ki, yuxarı sağ bu kiçik, az düyməsini var. 319 00:18:51,290 --> 00:18:56,360 Onların gizlilik variantları çox menyular müxtəlif növ arasında müxtəlif olunur. 320 00:18:56,360 --> 00:18:59,510 >> Onlar son vaxtlar bu barədə çox yaxşı kazanılmış sonra, lakin bu halda olmaq üçün istifadə 321 00:18:59,510 --> 00:19:04,870 Gördüğünüz photos arkadaşlarınızla qarşısını almaq istəyirdi zaman ki, 322 00:19:04,870 --> 00:19:08,280 siz kimi olan bir çox mürəkkəb 5-addım prosesi keçmək lazımdır 323 00:19:08,280 --> 00:19:11,150 Mənə bu linki vurun, qoy indi mənə yenidən basın, qoy, məni yenidən basın bildirin 324 00:19:11,150 --> 00:19:13,420 Mənə insanlar mənim photos bax bilməyən müəyyən edək. 325 00:19:13,420 --> 00:19:17,250 Bu Facebook hissəsi xüsusilə yaxşı deyil 326 00:19:17,250 --> 00:19:20,530 istifadəçi təcrübəsi haqqında çox həqiqətən, onlara azadlıq verir, çünki 327 00:19:20,530 --> 00:19:22,460 nəfər görmək nə nəzarət etmək. 328 00:19:22,460 --> 00:19:25,550 Biz bu istifadəçi nəzarət və azadlıq zəng. 329 00:19:25,550 --> 00:19:31,090 Siz imkan değilseniz users ki, səmərəli və asan bir şəkildə, 330 00:19:31,090 --> 00:19:34,570 sonra istifadəçi experience bütün həqiqətən böyük deyil. 331 00:19:34,570 --> 00:19:38,200  Uşaqlar Facebook haqqında bir şey demək istəyirsinizmi? 332 00:19:38,700 --> 00:19:41,420 Mən bu kapatabilirim? 333 00:19:41,420 --> 00:19:46,290 [Ong] Bu söndürmək bilməz və Facebook hissəsi böyük Kullanışlılık qüsur deyil. 334 00:19:46,290 --> 00:19:49,410 Bu xüsusiyyət - Mən, həqiqətən, dünən onu baxdı - 335 00:19:49,410 --> 00:19:53,940 siz bunu edə bilər ki, ya var və ya bir yerdə, çox dərin dəfn edir 336 00:19:53,940 --> 00:19:58,050 Facebook recesses Mən bütün bu işlevselliği aradan necə anlamaq bilməz. 337 00:19:58,050 --> 00:20:00,400 [Malan] Lakin bəzən bu qərarların aşkar deyil 338 00:20:00,400 --> 00:20:03,890 uşaqlar müxtəlif CS50 applications bizə faydalı rəy çox verilən çünki 339 00:20:03,890 --> 00:20:05,710 və kurs istifadə edən saytları. 340 00:20:05,710 --> 00:20:10,260 Biz bu istək və təklifləri bütün həyata deyil. 341 00:20:10,260 --> 00:20:14,550 >> Ki, Part, bu zaman bir funksiyası var ki, bir çox sorğu almaq üçün 342 00:20:14,550 --> 00:20:17,070 amma bəzən biz kimi şüurlu bir qərar, 343 00:20:17,070 --> 00:20:19,830 "Təklifi üçün təşəkkür edirik, ancaq biz razı deyilik." 344 00:20:19,830 --> 00:20:24,350 Users bir şey etmək lazımdır Əgər siz həqiqətən, sizin nə karar verirsiniz 345 00:20:24,350 --> 00:20:28,110 siz mütləq deyil? hətta 346 00:20:28,110 --> 00:20:32,360 Bu, həqiqətən, sizin users nə dinləmək arasında gözəl balans var 347 00:20:32,360 --> 00:20:35,840 deyə yerləşir və həqiqətən, xətti bir növ olan 348 00:20:35,840 --> 00:20:37,750 "Biz bu istifadəçi nə etmək fikrində deyilik". 349 00:20:37,750 --> 00:20:42,520 Və xüsusilə də, mən olduqca yaxşı yekunlaşdırır ki Henry Ford tərəfindən quote var idi. 350 00:20:42,520 --> 00:20:47,130 "Mən nə istədiyini insanlar xahiş olsaydı, onlar daha sürətli atlar istədiyini söylədi olardı." 351 00:20:47,130 --> 00:20:51,840 Hər kəs o quote həqiqətən nə deməkdir ayrı sataşmaq və sort edə bilərəmmi? 352 00:20:51,840 --> 00:20:56,060 Bu, istifadəçilər istədikləri nə yalnız deyil 353 00:20:56,060 --> 00:20:59,180 lakin bu çox var - 354 00:20:59,180 --> 00:21:02,720 [Tələbə] Onlar mümkün nə bilmirəm. 355 00:21:02,720 --> 00:21:06,140 Hissəsində onlar mümkün olduğunu bilmirəm. 356 00:21:07,880 --> 00:21:11,440 Ki, ayrı bir az daha Tease. Siz nə deməkdir? 357 00:21:11,440 --> 00:21:21,340 [Işitilemez tələbə cavab] 358 00:21:21,340 --> 00:21:25,770 Bu yaxşı. Mən burada demək çalışdığınız hesab insanlar istədiyiniz nə deyil. 359 00:21:25,770 --> 00:21:28,050 Onlar daha sürətli atlar istəyirəm. 360 00:21:28,050 --> 00:21:29,840 Ne həqiqətən istəyirsinizsə, sürətli hərəkət etmək qabiliyyəti 361 00:21:29,840 --> 00:21:32,310 lakin onlar həqiqətən nail olan orta bilmirəm. 362 00:21:32,310 --> 00:21:36,330 Siz istifadəçi gəlmək və istifadəçilər bir şey demək zaman 363 00:21:36,330 --> 00:21:39,700 və onlar, "Biz bu xüsusiyyətləri və bu xüsusiyyətləri və bu funksiyalar istəyirəm", siz demək 364 00:21:39,700 --> 00:21:42,650 siz mütləq düşünmək istəmirəm "Mənə davam edək 365 00:21:42,650 --> 00:21:44,720 "Və onlar aşkar nə həyata" 366 00:21:44,720 --> 00:21:48,610 amma nə barədə düşünmək istəyirəm "ideyaları sort edirəm ki, əldə edə bilər?" edir 367 00:21:48,610 --> 00:21:50,450 Əslində nə istəyirsiniz? 368 00:21:50,450 --> 00:21:55,560 >> Və sizə nə bu sorğu cavab verən bir şey dizayn edir 369 00:21:55,560 --> 00:22:00,340 lakin mütləq istifadəçi razı gözləyir ki, yolu. 370 00:22:00,340 --> 00:22:03,830 Belə ki, çox real baxımından son layihələr kimi bir şey üçün, 371 00:22:03,830 --> 00:22:07,900 daha yaxşı bir şey edilməsi gəldiyi zaman faydalı Heuristic, nə 372 00:22:07,900 --> 00:22:10,630 bu dizayner onun haqqında bu təkəbbür var, xüsusilə də əgər 373 00:22:10,630 --> 00:22:14,360 siz növ ən yaxşı nə vasitəsi, siz, istifadəçilər daxil ola bilər 374 00:22:14,360 --> 00:22:16,580 amma həqiqətən ki, rəy alınması haqqında necə getmək yoxdur? 375 00:22:16,580 --> 00:22:21,610 Son layihələri, çox konkret, nə burada optimal nəticələr istehsal? 376 00:22:21,610 --> 00:22:25,030 Nə optimal nəticələr istehsal - və mən ikinci bu artıq gedəcək - 377 00:22:25,030 --> 00:22:29,190 inkişaf və sonra test və sonra iterating bu prosesdir. 378 00:22:29,190 --> 00:22:32,020 Əgər bir şey dizayn zaman Mən test demək adətən 379 00:22:32,020 --> 00:22:36,970 siz kimi, olduqca yaxşı hesab edirəm "Mən belə bir böyük dizayner deyiləm. Hər kəs bu sevgi gedir." 380 00:22:36,970 --> 00:22:41,600 Və sonra orada söndürmək və insanlar nədənsə həqiqətən kimi deyil. 381 00:22:41,600 --> 00:22:46,820 Nə üçün siz insanlar kimi ki şeyə hissələri almaq lazımdır 382 00:22:46,820 --> 00:22:49,180 və insanlar kimi deyil ki, hər şeyi Revamp. 383 00:22:49,180 --> 00:22:53,080 Bu, çox aydın proses kimi səslənir, lakin bu proses daim iterating 384 00:22:53,080 --> 00:22:55,980 Əgər siz artıq inşa etdik nə üst sizə kömək edən bir prosesdir 385 00:22:55,980 --> 00:22:59,730 Öz dizayn bacarıqları saflaşdırmaq həm də dizayn saflaşdırmaq kömək edir yalnız 386 00:22:59,730 --> 00:23:03,790 insanlar həqiqətən daha əvvəl idi artıq məhsul üçün təşəkkür edirik ki,. 387 00:23:03,790 --> 00:23:07,390 >> Mən sizə həqiqətən edə bilər nə daha konkret nümunələr üzərində getmək lazımdır. 388 00:23:07,390 --> 00:23:11,390 Məhsulun son Məsələn növ kimi, KANO baxaq. 389 00:23:11,390 --> 00:23:14,970 Həyata gələndə KANO çox məşhur idi. 390 00:23:14,970 --> 00:23:18,760 Niyə hər kəs təxmin edə bilər? 391 00:23:18,760 --> 00:23:20,950 Siz onu istifadə Əgər bu kimi şeylər növ hansılardır 392 00:23:20,950 --> 00:23:23,990 və ya nə kimi deyil şeyi növləri var? 393 00:23:23,990 --> 00:23:31,590 Bəli. >> [Işitilemez tələbə cavab] >> OK. 394 00:23:31,590 --> 00:23:34,730 Bir hissəsi ki, istifadəçi daha geniş bir sorğu var imkan olunur 395 00:23:34,730 --> 00:23:38,150 kimi bir çox məhdudlaşdırıcı bir daha "Siz başlanğıc tarixi seçin var 396 00:23:38,150 --> 00:23:39,810 "Və sizin son tarix seçin var." 397 00:23:39,810 --> 00:23:44,910 Əslində, bu barədə çevik imkan verir və siz intervalında uçuşlar bütün verir. 398 00:23:44,910 --> 00:23:46,730 Başqa bir şey? 399 00:23:46,730 --> 00:23:50,530 [Tələbə] Onlar qiyməti haqları daxildir. 400 00:23:50,530 --> 00:23:53,330 Onlar qiymət haqları daxil edin. 401 00:23:53,330 --> 00:23:56,720 Vergilər və hər şeyi həqiqətən yuxarı sol ki, qiymətində düz getmək 402 00:23:56,720 --> 00:24:00,710 belə ki, siz həqiqətən bir $ 240 uçuş üçün payment etdiyiniz düşünən aldattýn deyilik 403 00:24:00,710 --> 00:24:03,280 həqiqətən $ 330 zaman. 404 00:24:03,280 --> 00:24:06,200 Başqa bir şey? Bəli. 405 00:24:06,200 --> 00:24:10,140 [Işitilemez tələbə cavab] 406 00:24:10,140 --> 00:24:14,610 Onlar həqiqətən ki, bunu bildirin əgər mən əmin deyiləm. 407 00:24:14,610 --> 00:24:18,310 Səhv ola bilər. 408 00:24:18,310 --> 00:24:23,360 Siz xüsusi filtreler daha çox çəki qoymaq istəyirsinizsə maraqlı bir şey ola bilər 409 00:24:23,360 --> 00:24:27,000 onlar üst ki, filter bağlı nəticələri təkan verir. 410 00:24:27,000 --> 00:24:31,920 Lakin hər kəs bu sol qədər xüsusi nə mənə deyə bilərsiniz? 411 00:24:31,920 --> 00:24:39,540 Necə ənənəvi əvvəl İnternet xidməti üzrə uçuş axtarmaq idi? 412 00:24:41,600 --> 00:24:44,650 >> Bəli. Əgər >> [işitilemez tələbə cavab] >> demək olarmı - 413 00:24:44,650 --> 00:24:47,530 [Tələbə] Hər bir hava. >> Bəli. Hər bir hava öz veb var. 414 00:24:47,530 --> 00:24:50,110 Bu şeyləri birləşdirir. Və? 415 00:24:50,110 --> 00:24:52,190 [Tələbə] Siz tərk etdiyiniz dəqiq nə vaxt bilirik. 416 00:24:52,190 --> 00:24:54,460 Siz tərk etdiyiniz dəqiq nə vaxt bilmirəm 417 00:24:54,460 --> 00:24:59,380 amma xüsusilə filtreler bağlı. 418 00:25:00,710 --> 00:25:03,540 Mənə KANO qoparmaq edək. 419 00:25:11,490 --> 00:25:14,020 Allah Oh, pop-up. Bad istifadəçi təcrübəsi. 420 00:25:14,020 --> 00:25:17,230 Mən bu kaydırıcıyı hərəkət ne olur? 421 00:25:17,230 --> 00:25:21,010 [Tələbə] Avtomatik yenilikləri. >> [Ong] Avtomatik yenilikləri. 422 00:25:21,010 --> 00:25:23,440 Çox vacib olan bir şey var. 423 00:25:23,440 --> 00:25:25,380 Bu əvvəl, bir uçuş yuxarı baxmaq istəyirdi zaman, 424 00:25:25,380 --> 00:25:28,410 Siz daxil yeri, sizin çıxış yeri, mətbuat Axtarış qoymaq idi 425 00:25:28,410 --> 00:25:31,190 ki, emal və nəticələri göstərmək olar. 426 00:25:31,190 --> 00:25:34,120 Əgər sorğu dəyişmək istəyirsə, siz iki dəfə geri düyməsini basın olacaq 427 00:25:34,120 --> 00:25:39,770 sıfırdan yeni bir sorğu daxil edin və daha artıq yoxdur və. 428 00:25:39,770 --> 00:25:43,910 Bu kimi bir şey haqqında gözəl şey ortada bir çox [anlaşılmaz] şey istifadə edir. 429 00:25:43,910 --> 00:25:46,230 Bu kimi bir şey olduqda, bu tələb off tumurcuqları 430 00:25:46,230 --> 00:25:48,420 və dərhal bütün nəticələri qaytarır. 431 00:25:48,420 --> 00:25:51,680 Dərhal rəy Bu cür KANO wildly məşhur etmişdir ki, bir şey 432 00:25:51,680 --> 00:25:55,910 mənə yalnız mənim sorğu dəyişdirmək üçün həqiqətən asandır çünki 433 00:25:55,910 --> 00:25:58,890 və müəyyən bir sıra ətrafında olan şeyləri anlamağa 434 00:25:58,890 --> 00:26:01,950 geri və irəli, geri və irəli, geri və irəli getmək üçün olmadan. 435 00:26:01,950 --> 00:26:05,200 Belə ki, bu sizin veb dizayn etdiyiniz zaman düşünmək istəyirəm şeyi bütün növ var. 436 00:26:05,200 --> 00:26:08,930 Mənim users çalışırıq hansı yolu ilə getmək üçün nasıl çox səmərəli edə bilər 437 00:26:08,930 --> 00:26:13,010 və mümkün qədər tez onların son məqsədi əldə etmək olar? 438 00:26:13,010 --> 00:26:16,430 [Malan] Və əvvəllər mütləq istədiklərini bilməyən istifadəçilər haqqında Yusifin nöqtəsi, 439 00:26:16,430 --> 00:26:18,640 uşaqlar indi HTML haqqında nə əsaslanır 440 00:26:18,640 --> 00:26:22,780 və onay, radio düymələri seçin menyular, giriş sahələri və bənzəri var 441 00:26:22,780 --> 00:26:26,140 necə bir uçuş üçün start zaman aldığınız anlayışı həyata olardı? 442 00:26:26,140 --> 00:26:30,030 >> Bu müxtəlif UI mexanizmlərinin hansı istifadə edir? 443 00:26:30,030 --> 00:26:34,100 Yalnız əvvəl tədris ki, HTML məbləği bilirsinizsə 444 00:26:34,100 --> 00:26:39,070 və siz giriş radio düymələr, onay, açılan verilməsi və giriş qutusuna bilirik 445 00:26:39,070 --> 00:26:43,320 təbii seçim tarixləri seçmək üçün nə olardı? 446 00:26:43,320 --> 00:26:48,670 [Tələbə] Input. >> Input. Və ya bəlkə hətta bir açılan tarixləri bütün, sağ? 447 00:26:48,670 --> 00:26:53,170 Belə ki, həyata keçirə bilər ki, sol tərəfdə bu kimi daha mürəkkəb UI mexanizmləri ilə 448 00:26:53,170 --> 00:26:55,500 bir kaydırıcıyı ilə bu proses daha asan edə bilər 449 00:26:55,500 --> 00:27:01,020 vaxt davamlı, çünki, insanlar adətən diskret chunks baxımından bu düşünmürəm. 450 00:27:01,020 --> 00:27:04,950 Bütün hüquqlar. Son şey. 451 00:27:04,950 --> 00:27:07,370 On Kullanışlılık heuristics. 452 00:27:07,370 --> 00:27:10,820 Biz danışıb hər şeyi yəqin ki, bu kateqoriyalar biri altında düşür. 453 00:27:10,820 --> 00:27:14,420 Siz sites online dərc olunacaq bu link, getmək edin 454 00:27:14,420 --> 00:27:18,900 sizin sayt dizayn kimi, həqiqətən, bilərsiniz, ağıl bu heuristics saxlamaq 455 00:27:18,900 --> 00:27:21,330 thumb və bu qaydaları. 456 00:27:21,330 --> 00:27:26,610 Layihələr, mən app daha yaxşı dizayn üçün nə təklif 457 00:27:26,610 --> 00:27:28,850 ilk kağız prototip etmək. 458 00:27:28,850 --> 00:27:32,150 Siz ərizə haqqında düşünür istəyirsinizsə zaman, çox tez bu kimi baxmaq istəyirəm nə eskiz 459 00:27:32,150 --> 00:27:36,230 və əmin olun bütün qutuları istifadəçi istifadə etmək üçün çox asan bir şəkildə təşkil olunur 460 00:27:36,230 --> 00:27:39,820 və hətta dostlara bu kağız prototipləri göstərir və fokus qrup başlamaq. 461 00:27:39,820 --> 00:27:44,230 Sadəcə, birlikdə 2 və ya 3 nəfər almaq və yalnız bu kağız prototipləri haqqında kran isteyin 462 00:27:44,230 --> 00:27:47,650 və onlar, həqiqətən, neler anlamaq görmek üçün onlara yeni ekranları göstərir. 463 00:27:47,650 --> 00:27:50,680 >> Nə istəyirəm ki, tapşırıq həvəsləndirmək, onlara bir tapşırıq verir ki, 464 00:27:50,680 --> 00:27:53,270 və yalnız onlara app vermək və onlardan istifadə edək. 465 00:27:53,270 --> 00:27:56,530 Onlara kənarda təlimat vermir. 466 00:27:56,530 --> 00:28:00,920 Siz, həqiqətən, onlara bax imkan verir ki, bir şekilde app ilə qarşılıqlı imkan istəyirəm 467 00:28:00,920 --> 00:28:03,870 Əgər siz onları yanında daimi deyil, əgər onlar necə istifadə edərdi. 468 00:28:03,870 --> 00:28:05,250 Və bu çox vacibdir. 469 00:28:05,250 --> 00:28:08,780 Xüsusi şeyi ətrafında almaq insanlar üçün ki, anlayışların çox verəcək 470 00:28:08,780 --> 00:28:10,560 Mən onlara niyyətində olmadığını bir şəkildə? 471 00:28:10,560 --> 00:28:14,680 Onlar ekranda xüsusi UI mexanizmlərindən istifadə edirsiniz 472 00:28:14,680 --> 00:28:17,490 bir şəkildə hacky növü? 473 00:28:17,490 --> 00:28:22,020 Onlara bu yol nə üçün mən niyyətində deyil idi. 474 00:28:22,020 --> 00:28:23,940 Və bir dəfə ilə tamamlayın, siz nə istəyirsiniz? 475 00:28:23,940 --> 00:28:26,010 Sizin dizayn qayalar, sağ? 476 00:28:26,010 --> 00:28:29,600 Nə istəyirəm siz daha nə sonra bu proses inkişaf və istəyirəm. 477 00:28:29,600 --> 00:28:32,110 Belə ki, bu inkişaf sonra dostlara göstərmək, bu test 478 00:28:32,110 --> 00:28:36,630 inkişaf test inkişaf, test, təkrarlamaq, və və irəli. 479 00:28:36,630 --> 00:28:39,720 Design bir çox bu mənada prosesi iterativ edir. 480 00:28:39,720 --> 00:28:43,280 Siz, həqiqətən, bu barədə hər şeyi həyata sonra bir şey qurmaq və var 481 00:28:43,280 --> 00:28:46,520 əvvəl həyata və geri ki yaxşılaşdırılması etməyib. 482 00:28:46,520 --> 00:28:50,890 İndi kimi inkişaf hissəsi ki, Tommy fasilədən sonra sizə göstərmək üçün gedir nə 483 00:28:50,890 --> 00:28:53,220 və necə AutoComplete kimi bir şey həyata edə bilər 484 00:28:53,220 --> 00:28:56,610 olduqca sadə bir şəkildə. 485 00:28:57,440 --> 00:28:59,550 [Malan] kimi Tommy bir sual sonra, burada edir. 486 00:28:59,550 --> 00:29:03,780 A erkən saytları çox - zaman Yusif, 1990-cı stil veb bildirib 487 00:29:03,780 --> 00:29:07,640 o, bir başlanğıc seçin istəyirdi yerləşir həyata və son dəfə idi 488 00:29:07,640 --> 00:29:10,380 səmimi, bu gün geri gün və hətta bəzi saytlarda, 489 00:29:10,380 --> 00:29:13,220 Bunu yolu, bir açılan bir saat seçin edir 490 00:29:13,220 --> 00:29:15,910 siz, PM, açılan, bəlkə AM seçmək dəqiqədə seçin 491 00:29:15,910 --> 00:29:17,440 sonra 3 dəfə edin. 492 00:29:17,440 --> 00:29:19,920 Və 6 klik və bəlkə bəzi scrolling ilə 493 00:29:19,920 --> 00:29:24,000 istifadəçi həqiqətən bu mənada tarix və / və ya vaxt intervalında bir növ təmin edə bilər. 494 00:29:24,000 --> 00:29:27,920 >> Belə ki, mütləq suboptimal və hələ bu günə qədər biz heç bir ifadəli imkanlarını gördük 495 00:29:27,920 --> 00:29:30,330 dillərinin hər hansı biz bir şey sexier etmək baxdı sonra 496 00:29:30,330 --> 00:29:32,620 başlanğıc və son dəfə bu kaydırıcıyı kimi. 497 00:29:32,620 --> 00:29:36,290 Amma biz Not danışıb zaman həftə 0 geri düşünüyorsanız, 498 00:29:36,290 --> 00:29:39,080 çox yalnız müəyyən şeylər ki widgets var idi. 499 00:29:39,080 --> 00:29:42,700 Siz, həqiqətən, yalnız loops və şərtləri və kimi kimi bu əsasları var idi. 500 00:29:42,700 --> 00:29:46,910 Belə ki, yalnız HTML özəllikləri müstəqil, indi çox abstractly düşüncə cür 501 00:29:46,910 --> 00:29:51,260 həqiqətən bu başlanğıc və son zaman kaydırıcıyı kimi bir şey ilə nə gedir? 502 00:29:51,260 --> 00:29:54,960 Mən siçan hərəkət və mən sol ki, az kök rəmzi basın 503 00:29:54,960 --> 00:29:59,220 və sürükleyerek başlamaq, program, bu həyata etmək istəyirəm nə 504 00:29:59,220 --> 00:30:01,000 ki, baş etmək olar? 505 00:30:01,000 --> 00:30:04,920 Hansı sual, xahiş etmək nə Boolean ifadələr istəyirsiniz? 506 00:30:04,920 --> 00:30:06,930 Ne həqiqətən olub? Sammy? 507 00:30:06,930 --> 00:30:10,080 [Tələbə] kursor mövqeyi harada? >> Yaxşı. Kursor mövqeyi haradadır? 508 00:30:10,080 --> 00:30:11,970 Bu, biz Not geri ifadə etmək üçün lazım bir şey idi 509 00:30:11,970 --> 00:30:14,690 o yeri və ya hətta rəng və ya kimi əsaslanır olub. 510 00:30:14,690 --> 00:30:18,410 Siz bazar ertəsi belə qısa heç geri bilər bunlar bütün hadisələr adlanır var idi 511 00:30:18,410 --> 00:30:22,370 Web dünya və s onclick və onkeypress kimi şeylər var 512 00:30:22,370 --> 00:30:25,960 və onkeyup və onmouseover və onmouseout. 513 00:30:25,960 --> 00:30:29,130 Belə ki, biz qəbul etdik, hətta bunlar Web verilir ki, həyata 514 00:30:29,130 --> 00:30:32,190 siz heç bir fikrim yoxdur, hətta Facebook və Gmail kimi saytlar ilə 515 00:30:32,190 --> 00:30:34,890 mühazirə, hətta bu kimi bir şey yoxdur çünki bəlkə ki, həyata necə 516 00:30:34,890 --> 00:30:38,570 və ya Problem, bu eyni əsasları ilə həyata, 7 göstərilməyib 517 00:30:38,570 --> 00:30:41,090 HTTP və parametrləri ilə GET və POST, 518 00:30:41,090 --> 00:30:44,010 biz bu günə qədər baxdı etdiyiniz əsas HTML giriş ilə 519 00:30:44,010 --> 00:30:47,690 və proqram mexanizmləri ilə bir anda Tommy nin haqqında tətbiq ki, 520 00:30:47,690 --> 00:30:51,300 Siz həftə 0 etdiyi kimi özünüzü ifadə edə bilərsiniz 521 00:30:51,300 --> 00:30:53,800 çox daxilən sürükleyerek və bırakarak. 522 00:30:53,800 --> 00:30:58,950 >> Belə ki, Tommy MacWilliam və Web üçün bizə yeni puzzle ədəd bildirib ki. 523 00:30:58,950 --> 00:31:03,450 Bütün hüquqlar. My name Tommy və mən JavaScript söhbət etmək gedirəm. 524 00:31:03,450 --> 00:31:07,150 Bir disclaimer: Mən JavaScript yaxşı proqramlaşdırma dili deyil ki, fikir am 525 00:31:07,150 --> 00:31:09,010 bütün bütün dünyada. 526 00:31:09,010 --> 00:31:11,940 Mənə razı insanlar çox, lakin bu yalnız gözəl. 527 00:31:11,940 --> 00:31:16,330 Başqa bir sinif və ya digər dillər üçün C yazmaq varsa, sonra, C geri, 528 00:31:16,330 --> 00:31:19,780 bu da aşağı bataqlıqlaşmışdır almaq üçün siz bütün aşağı səviyyədə ətraflı həqiqətən sinir bozucu deyil 529 00:31:19,780 --> 00:31:23,050 Əgər C yazmaq üçün necə annoying haqqında kədərli hiss etdiyiniz əgər, 530 00:31:23,050 --> 00:31:25,130 yalnız geri bəzi JavaScript yazın. Bu nirvana var. 531 00:31:25,130 --> 00:31:27,980 Siz pis gün daha yaxşı hiss edəcəyik. 532 00:31:27,980 --> 00:31:31,900 JavaScript sehrli bir çox şeyi manipulyasiya etmək qabiliyyəti gəlir 533 00:31:31,900 --> 00:31:33,730 ki, səhifə artıq mövcuddur. 534 00:31:33,730 --> 00:31:38,520 Biz PHP scripts yazdığı zaman, onlar, server edam edildi 535 00:31:38,520 --> 00:31:42,270 və nəticədə PHP script yəqin ki, bəzi HTML çıxış edir. 536 00:31:42,270 --> 00:31:45,860 Bu HTML müştəriyə göndərilir və o idi. 537 00:31:45,860 --> 00:31:50,180 PHP bir səhifə bir düğme əlavə etmək istəyirsinizsə, misal üçün, həqiqətən bunu edə bilərsiniz. 538 00:31:50,180 --> 00:31:54,350 Bu yeni bir HTML faylı göstərmək və brauzerinizin ki göndərmək lazımdır. 539 00:31:54,350 --> 00:31:57,840 JavaScript ilə biz onlar səhifədə artıq bile biz şeyi təkmilləşdirə bilər bilirik ki, 540 00:31:57,840 --> 00:32:00,840 və bu, çünki biz daha çox ani geribildirim bilər 541 00:32:00,840 --> 00:32:06,150 hansı həqiqətən bizim saytda istifadəçi experience artırır. 542 00:32:06,150 --> 00:32:09,330 JavaScript seçiciler bir sürətli recap. 543 00:32:09,330 --> 00:32:11,590 Biz bir HTML səhifə download Biz bilirik ki, 544 00:32:11,590 --> 00:32:13,890 ki, DOM təmsil edəcək. 545 00:32:13,890 --> 00:32:19,340 >> DOM unutmayın elementləri bu böyük iyerarxiyasının bağlı yalnız burada bu böyük ağac. 546 00:32:19,340 --> 00:32:21,810 Biz pset 7 bazaları ilə işləyib zaman, 547 00:32:21,810 --> 00:32:26,280 biz necə lazım olan ilk şey biri bazası sorğu idi. 548 00:32:26,280 --> 00:32:29,060 Biz bu böyük istifadəçi masa var və bəzən biz yalnız demək istəyirəm 549 00:32:29,060 --> 00:32:33,260 "Mən yalnız bir şərt uyğun ki, bu istifadəçilərin bəzi istəyirik." 550 00:32:33,260 --> 00:32:36,020 Eynilə, biz DOM zaman biz bu querying bəzi yol lazımdır. 551 00:32:36,020 --> 00:32:39,490 Deyə bəzi yol lazımdır, "Mən bu kimi baxmaq ki, düymələr bütün istəyirəm 552 00:32:39,490 --> 00:32:41,860 "Və ya page bütün şəkilləri." 553 00:32:41,860 --> 00:32:44,330 Bu seçiciler buna imkan verir. 554 00:32:44,330 --> 00:32:45,690 Belə ki, yalnız bir sürətli recap. 555 00:32:45,690 --> 00:32:50,770 Burada Bu birinci, bu # təqdim seçin gedən nədir? Hər kəs xatırlayıram varmı? 556 00:32:50,770 --> 00:32:54,880 [Işitilemez tələbə cavab] >> Bəli, dəqiq. 557 00:32:54,880 --> 00:32:59,510 Bu təqdim bir ID ki, səhifə üzrə element seçin gedir. 558 00:32:59,510 --> 00:33:03,470 Və belə ki, hash tag bu selector kimlikleri ilə işləmək üçün gedir deyir. 559 00:33:03,470 --> 00:33:07,630 Necə ikinci haqqında, bu. Mərkəzli ki, nə seçin olacaq? 560 00:33:11,360 --> 00:33:15,180 Bəli. >> [Tələbə] Class. Məhz >>. İndi bu sinif seçin gedir. 561 00:33:15,180 --> 00:33:18,840 ID və burada sinif arasında fərq ID benzersiz olmalıdır adətən 562 00:33:18,840 --> 00:33:20,820 hansı məkanda siz artıq aradığınız. 563 00:33:20,820 --> 00:33:23,080 Siz bütün web səhifə üzərində axtarış edilmişdir əgər, 564 00:33:23,080 --> 00:33:27,740 həqiqətən, yalnız təqdim, bu halda belə ki, müəyyən ID 1 element olmalıdır. 565 00:33:27,740 --> 00:33:31,330 Dərsləri ilə, digər tərəfdən, biz eyni səhifə 1-dən artıq element ola bilər 566 00:33:31,330 --> 00:33:33,130 eyni sinifdə ilə. 567 00:33:33,130 --> 00:33:36,580 Bu səhifədə mərkəzi ki, hər şey seçmək istəyirəm deyərək üçün faydalı ola bilər 568 00:33:36,580 --> 00:33:38,450 daha çox yalnız 1 şey. 569 00:33:38,450 --> 00:33:40,310 >> Və, nəhayət, burada bu son bir, bir az daha mürəkkəbdir 570 00:33:40,310 --> 00:33:43,890 lakin nə bu DOM seçin gedir? 571 00:33:46,650 --> 00:33:48,810 [Işitilemez tələbə cavab] >> ki, nə var? 572 00:33:48,810 --> 00:33:53,250 [Tələbə] bir tag ki, bir şey. Biz burada 2 hissədən var >>. 573 00:33:53,250 --> 00:33:58,070 Ikinci hissəsi, mən daxil bir tag bu tags seçmək istəyirsiniz gedir 574 00:33:58,070 --> 00:34:00,730 giriş tag hər hansı bir element belə. 575 00:34:00,730 --> 00:34:03,080 Amma yalnız giriş bütün seçin istəmirəm 576 00:34:03,080 --> 00:34:05,170 bir submit 'düyməsinə kimi bir giriş ola bilər, çünki 577 00:34:05,170 --> 00:34:08,409 və bir metin qutusu kimi bir giriş ola bilər. 578 00:34:08,409 --> 00:34:11,909 Mən dedi alıram bu kvadratşəkilli mötərizələri mən yalnız elementləri seçin istəyirəm 579 00:34:11,909 --> 00:34:14,110 növü mətn var. 580 00:34:14,110 --> 00:34:17,400 Somewhere mənim HTML tag I növü adlı atributu var, 581 00:34:17,400 --> 00:34:19,750 və atribut dəyəri mətn olmalıdır. 582 00:34:19,750 --> 00:34:21,340 Belə ki, necə burada birinci hissəsi haqqında? 583 00:34:21,340 --> 00:34:25,489 Bu selector ilk söz sonra sonra bir yer və bu giriş hissəsi formasıdır. 584 00:34:25,489 --> 00:34:29,620 Ki, qarşısında forma qoyaraq, nə edir? 585 00:34:33,409 --> 00:34:35,860 Bu əsasən bizim sorğu məhdudlaşdırmaq niyyətindədir. 586 00:34:35,860 --> 00:34:38,510 Bu səhifə haqqında bir giriş olan halda ola bilər 587 00:34:38,510 --> 00:34:41,080 şəklində nəslindən olmayan. 588 00:34:41,080 --> 00:34:46,150 Bu edəcəyik Mən yalnız mənə bu demək olacaq haradasa onlara yuxarıda olan giriş tags 589 00:34:46,150 --> 00:34:49,030 şəklində bəzi valideyn element. 590 00:34:49,030 --> 00:34:52,100 Və bu yolla biz bu daha iyerarxik sorğu edə bilər 591 00:34:52,100 --> 00:34:55,000 biz yalnız bir selector uyğun hər şey seçmək üçün yoxdur. 592 00:34:55,000 --> 00:35:00,760 Biz başqa bir şey ki, sorğu limit çərçivəsində cür bilərsiniz. 593 00:35:00,760 --> 00:35:04,000 Belə ki, indi biz səhifə elementləri seçin necə ki, 594 00:35:04,000 --> 00:35:06,780 nin AJAX haqqında bir az danışmaq edək. 595 00:35:06,780 --> 00:35:12,270 AJAX asynchronous JavaScript və XML dayanır ki hələ çox moda kisaltmasidir. 596 00:35:12,270 --> 00:35:15,640 Bu, sadəcə belə XML data təmsil yalnız bir yol olduğunu olur. 597 00:35:15,640 --> 00:35:20,920 >> Son itirilmiş populyarlıq belə, belə ki, AJAX-ci ildə X bütün vaxt istifadə olunmur. 598 00:35:20,920 --> 00:35:26,220 Əsasən, AJAX, bizə imkan verir nə HTTP istekleri etmək olunur 599 00:35:26,220 --> 00:35:28,620 JavaScript kontekstindən. 600 00:35:28,620 --> 00:35:32,310 Bizim web browser etdiyiniz və biz pages ətrafında naviqasiya edirik və biz bir link basın zaman, 601 00:35:32,310 --> 00:35:37,790 nə bizim browser etmək niyyətindədir biz basın nə keçid HTTP tələb edir. 602 00:35:37,790 --> 00:35:41,670 Ki, işin varsa, sonra David, deyirdi kimi Lakin həmişə ideal deyil 603 00:35:41,670 --> 00:35:45,220 biz həmişə istifadəçilər Submit düyməsinə basın və ya bir link basın etmək 604 00:35:45,220 --> 00:35:50,380 bir şey bir HTTP sorğu cəlb etmək niyyətindədir ki, baş etmək üçün. 605 00:35:50,380 --> 00:35:54,160 Belə ki, AJAX ilə biz JavaScript adından bu sorğu edə bilər. 606 00:35:54,160 --> 00:35:57,020 Istifadəçi səhifə və ya bir şey baş qarşılıqlı zaman o deməkdir ki, 607 00:35:57,020 --> 00:36:01,780 biz, həqiqətən, bizim saytda bəzi digər PHP faylına bir programmatic tələb edə bilər 608 00:36:01,780 --> 00:36:06,280 və ya başqa bir şey və fayl spits ki, məlumat almaq. 609 00:36:06,280 --> 00:36:09,860 Nin AJAX nümunə nəzər salaq. 610 00:36:09,860 --> 00:36:16,140 Bu inşallah bizim bəzi tanış olan bizim CS50 Maliyyə səhifə. 611 00:36:16,140 --> 00:36:21,790 Biz bu səhifənin HTML baxsaq, biz, bir neçə şeyi əlavə etdik ki, burada 612 00:36:21,790 --> 00:36:23,820 Mən bu forması ID verilmiş etdiyiniz biri. 613 00:36:23,820 --> 00:36:26,480 I id = "şəklində quote" dedi etdik. 614 00:36:26,480 --> 00:36:31,910 Bu DOM seçin bu bir az daha asan olacaq yalnız çünki bu etdik 615 00:36:31,910 --> 00:36:35,090 Mən çox sadə sorğu edə bilər-ci ildən. 616 00:36:35,090 --> 00:36:38,960 Mən burada etmək istəyirəm CS50 Maliyyə bəzi problemi həll istəyirəm. 617 00:36:38,960 --> 00:36:41,550 Biz finance.cs50.net getmək əgər, 618 00:36:41,550 --> 00:36:45,700 Mən bir quote almaq üçün hər zaman, mən bu Al Sitat düyməsini basın 619 00:36:45,700 --> 00:36:48,960 və Quote düyməsini sonra başqa bütün səhifə üçün mənə edir alın. 620 00:36:48,960 --> 00:36:52,400 Mən başqa quote istəyirsinizsə, mən Geri 'düyməsinə edib və sonra bu yazın, 621 00:36:52,400 --> 00:36:54,480 Mən bir quote almaq və mən Geri 'düyməsinə basın. 622 00:36:54,480 --> 00:36:56,840 Bu, həqiqətən ən yaxşı user experience deyil. 623 00:36:56,840 --> 00:37:01,570 Bu fond qiymətləri almaq üçün yavaş əgər kim həqiqətən site istifadə edir? 624 00:37:01,570 --> 00:37:05,630 Belə ki, nə biz AJAX ilə etmək istəyirik ayrıca səhifə gedir ki, addım aradan qaldırılması deyil 625 00:37:05,630 --> 00:37:08,410 nəticələri keçirmək üçün. 626 00:37:08,410 --> 00:37:11,240 >> Biz, həqiqətən, yalnız xahiş edirik ki, həqiqətən kiçik qiyməti 627 00:37:11,240 --> 00:37:14,240 və yalnız bir veri həqiqətən kiçik bir məbləğ var. 628 00:37:14,240 --> 00:37:17,400 Belə ki, digər bütün HTML səhifə getmək mənim üçün heç bir ehtiyac yoxdur 629 00:37:17,400 --> 00:37:20,670 HTML bütün yeni batch download, bəlkə, bəzi daha images download 630 00:37:20,670 --> 00:37:24,410 bəzi digər CSS faylları yalnız mənə çox sadə suala cavab vermək üçün 631 00:37:24,410 --> 00:37:27,810 necə çox bu fond dəyəri yoxdur. 632 00:37:27,810 --> 00:37:31,000 AJAX ilə biz bu çox asan edə bilərsiniz. 633 00:37:31,000 --> 00:37:36,400 Biz quote.js adlı JavaScript faylı birləşdirən edirəm ki, burada aşağı baxın. 634 00:37:36,400 --> 00:37:40,140 Nin həqiqətən fayl açmaq edək. Yoxdur. 635 00:37:42,610 --> 00:37:45,860 Mənim JavaScript faylları bütün HTML yerləşir gedir 636 00:37:45,860 --> 00:37:47,630 ki, web browser gedə bilərsiniz. 637 00:37:47,630 --> 00:37:50,330 Sonra, JavaScript, burada ayrı bir kataloq var 638 00:37:50,330 --> 00:37:54,340 və indi burada quote.js edir. 639 00:37:54,340 --> 00:38:00,930 Bu faylı üst mən yüklənmək üçün bütün səhifə gözləyin istəyirəm ki, burada deyir 640 00:38:00,930 --> 00:38:04,830 bir şey etmək üçün cəhd əvvəl. Nə lazımdır? 641 00:38:04,830 --> 00:38:08,650 Mən burada gedirəm ki, növbəti şey start bir element axtarır ki, həyata çevirir 642 00:38:08,650 --> 00:38:10,810 bəzi selector gəlir. 643 00:38:10,810 --> 00:38:15,600 Bu element səhifədə yüklənən əvvəl bu JavaScript heç icra olunarsa, 644 00:38:15,600 --> 00:38:17,820 sonra etmək üçün cəhd hər şeyi işləmək niyyətində deyil 645 00:38:17,820 --> 00:38:20,580 Mən hələ yoxdur ki, bir şey seçmək üçün cəhd gedirəm, çünki. 646 00:38:20,580 --> 00:38:23,780 Belə ki, top bu xətt Mən hər şeyi dolu qədər gözləyin istəyirəm deyir 647 00:38:23,780 --> 00:38:28,030 belə biz arıyorum hansı elementləri səhifə həqiqətən ki, təmin edirik. 648 00:38:29,730 --> 00:38:34,310 Burada Bu dollar işarəsi I jQuery adlı kitabxana kullanıyorum deməkdir. 649 00:38:34,310 --> 00:38:38,570 Bu jQuery kitabxana bizə yalnız baxdım ki, bu seçiciler istifadə etməyə imkan verir. 650 00:38:38,570 --> 00:38:44,010 Bir arqument kimi bu # formu quote keçən sonra $ söyləyərək, 651 00:38:44,010 --> 00:38:47,910 İndi biz yalnız bir göz edirdilər ki, forma seçilməsi alıram. 652 00:38:47,910 --> 00:38:52,290 İndi elə yaddaş ki, forma nümayəndəliyi var. 653 00:38:52,290 --> 00:38:56,760 >> Indi bu obyekt, forma Bu, 654 00:38:56,760 --> 00:38:58,890 İndi çağırdı funksiyasından istifadə edirəm. 655 00:38:58,890 --> 00:39:02,710 Bu fəaliyyət göstərmir bir hadisə handler əlavə olacaq edir. 656 00:39:02,710 --> 00:39:06,310 Biz qulaq asmaq olacaq ki, tədbirdə submit hadisədir. 657 00:39:06,310 --> 00:39:08,890 Belə ki, 'düyməsinə və ya presleri təqdim edən istifadəçi klik edin zaman 658 00:39:08,890 --> 00:39:11,730 Bu hadisə yanğın davam edir. 659 00:39:11,730 --> 00:39:16,390 Bu daxil qoşulma, mən indi şəklində default davranış yalnış bilər. 660 00:39:16,390 --> 00:39:19,770 Bu JavaScript olmadan şəklində təqdim edəcəkdir nə PHP fayl 661 00:39:19,770 --> 00:39:22,110 ki, fəaliyyət atribut istifadə edilir. 662 00:39:22,110 --> 00:39:25,440 Ancaq əvəzinə, indi gözləmək, gözləmək, gözləmək, mən, həqiqətən, bunu istəmirəm deyən deyiləm. 663 00:39:25,440 --> 00:39:31,140 Mən sizə getmək və bəzi PHP fayl təqdim etməyə cəhd əvvəl bu baş istəyirəm. 664 00:39:31,140 --> 00:39:32,870 İndi mən nə istəyirəm nə? 665 00:39:32,870 --> 00:39:39,270 Bu nöqtədə fond qiyməti nə yüklemek üçün birtəhər AJAX istifadə etmək istəyirik. 666 00:39:39,270 --> 00:39:44,170 Bilmək lazımdır ilk şey istifadəçi axtarır nə fond edir. 667 00:39:44,170 --> 00:39:46,760 Başqa selector istifadə gedirəm ki etmək. 668 00:39:46,760 --> 00:39:49,020 Bu əvvəl baxdı üçüncü selector edir. 669 00:39:49,020 --> 00:39:54,460 Bu form-quote şəxsiyyət ilə bu formu element başlamaq istəyirəm ki, deyir. 670 00:39:54,460 --> 00:39:58,440 Sonra yerdə ki, forma daxilində giriş element olmalıdır var 671 00:39:58,440 --> 00:40:01,270 ki, simvolu bir adı var. 672 00:40:01,270 --> 00:40:05,460 Biz HTML geri baxsaq, biz bir daxil olduğunu gördüm [name = simvol]. 673 00:40:05,460 --> 00:40:12,380 Yəni bu istifadəçi daxil yazıyor ki, mətn qutusuna seçin gedir deməkdir. 674 00:40:12,380 --> 00:40:13,870 Bu gözəl deyil. Biz mətn qutusuna var. 675 00:40:13,870 --> 00:40:17,360 İndi biz bunun içərisində nə bilmək kifayətdir. 676 00:40:17,360 --> 00:40:20,290 , Biz burada bu metodu zəng edə bilərsiniz ki, bu. Val etmək üçün, 677 00:40:20,290 --> 00:40:23,240 və bu Sizə nə mətn qutusuna bilirik deyir. 678 00:40:23,240 --> 00:40:28,160 Mən sizə bu mətn qutusuna tipli istifadəçi nə mənə demək istəyirəm. 679 00:40:28,160 --> 00:40:34,440 İndi biz istifadəçi kimi daxil tipli nə bərabərdir rəmzi adlı simli var 680 00:40:34,440 --> 00:40:39,820 Bu gözəl deyil. Biz tələb etmək artıq string istifadə edə bilərsiniz. 681 00:40:39,820 --> 00:40:42,450 Bu burada yeni funksiya, bu $, 682 00:40:42,450 --> 00:40:44,900 istisna olmaqla, biz artıq elementləri seçilməsi üçün olacaq 683 00:40:44,900 --> 00:40:48,910 biz jQuery tərəfindən bizə təqdim etdiyi fərqli bir funksiyası zəng etmək olacaq. 684 00:40:48,910 --> 00:40:54,810 Bu AJAX funksiyası həqiqətən bu HTTP request üçün neler edir. 685 00:40:54,810 --> 00:40:57,000 Belə ki, bir neçə şeyi izah etmək lazımdır. 686 00:40:57,000 --> 00:41:01,410 Mən xahiş getmək istədiyiniz biz bu funksiya demək lazımdır ilk şey. 687 00:41:01,410 --> 00:41:08,910 Somewhere mənim layihə I quote.php adlı HTML kataloq daxilində bu fayl var. 688 00:41:08,910 --> 00:41:15,150 I localhost / quote.php getmək əgər mən bu faylı əldə edə bilərsiniz, biz yalnız bu kimi gördüm. 689 00:41:15,150 --> 00:41:20,450 >> Hesab edirəm ki, səhifə müraciət etmək mənim JavaScript istəyirəm. 690 00:41:20,450 --> 00:41:22,920 Ne tür sorğu indi? 691 00:41:22,920 --> 00:41:27,210 Şəklində olan üsulu = "post" atributu var ki, əvvəl, gördüm 692 00:41:27,210 --> 00:41:29,270 və o, POST sorğu etmək olacaq deməkdir 693 00:41:29,270 --> 00:41:32,630 belə deyil, bir GET tələbi daha URL bir şey qoymaq niyyətində deyil 694 00:41:32,630 --> 00:41:36,860 biz yalnız, məsələn, web browser ilə səhifə əldə əgər yalnız atəş olacaq. 695 00:41:36,860 --> 00:41:41,260 İndi mən bir HTTP POST sorğu etmək istəyirəm dedi sonra 696 00:41:41,260 --> 00:41:44,840 quote.php yerləşən səhifə. 697 00:41:44,840 --> 00:41:51,490 Biz şəklində təqdim zaman ki, forma daxilində giriş elementlər daxil ola bilər unutmayın 698 00:41:51,490 --> 00:41:54,430 ki $ _POST dəyişən ilə. 699 00:41:54,430 --> 00:41:58,710 Bu günə qədər hekayə, biz, həqiqətən, hələ heç bir məlumat yanaşı göndərməmişik. 700 00:41:58,710 --> 00:42:00,640 Biz yalnız bir AJAX xahiş edirik bildirib etdik 701 00:42:00,640 --> 00:42:03,200 və burada edirik sorğu növü var. 702 00:42:03,200 --> 00:42:07,090 İndi biz əslində səhifə bəzi data göndərmək lazımdır. 703 00:42:07,090 --> 00:42:10,930 Biz data adlanan bu əmlak istifadə edə bilərsiniz ki etmək. 704 00:42:10,930 --> 00:42:14,950 Bu əmlakın dəyəri həqiqətən assosiativ sıra edir. 705 00:42:14,950 --> 00:42:19,390 Bunun səbəbi bu bizə data yalnız 1 ədəd daha çox göndərmək imkan verir. 706 00:42:19,390 --> 00:42:24,750 Bu qıvrım aşırma burada digər buruq aşırma daxilində iç içə var görə. 707 00:42:24,750 --> 00:42:29,680 Bu assosiativ seriallarda olan düymələri eyni şey olacaq 708 00:42:29,680 --> 00:42:32,630 o ad forma elementləri atributları kimi. 709 00:42:32,630 --> 00:42:35,740 Ki, simvolu əsas boyunca göndərmək varsa, o deməkdir ki, 710 00:42:35,740 --> 00:42:41,870 mənim PHP səhifə $ _POST [simvolu] Bu data əldə edə bilərsiniz deməkdir ki, 711 00:42:41,870 --> 00:42:44,640 biz bir formada təqdim olunduğu əvvəl etdiyiniz kimi. 712 00:42:44,640 --> 00:42:47,090 İndi isə faktiki data biz göndərmək istədiyiniz 713 00:42:47,090 --> 00:42:50,790 bu assosiativ array dəyəri içərisində olacaq. 714 00:42:50,790 --> 00:42:54,070 >> Biz dəyişən adlı simvolu bu mətn saxlanılır 715 00:42:54,070 --> 00:42:57,380 və biz indi simvolu əsas boyunca gönderiyorsanız 716 00:42:57,380 --> 00:43:01,380 və istifadəçi daxil tipli hər hansı bir dəyəri 717 00:43:01,380 --> 00:43:06,270 İndi biz PHP fayl icra, bu HTTP tələb etdik 718 00:43:06,270 --> 00:43:11,480 və yalnız bu müraciət etdi ki, müştəri artıq geri bir məlumat göndərmək olacaq. 719 00:43:11,480 --> 00:43:15,220 İndi server bizə dediyi hər hansı cavab lazımdır. 720 00:43:15,220 --> 00:43:20,180 Biz uğur adlandırıb burada bu son mülkiyyət ki etmək. 721 00:43:20,180 --> 00:43:24,240 Bu müvəffəqiyyətin əsas dəyəri həqiqətən, funksiyanı olacaq 722 00:43:24,240 --> 00:43:26,910 və bu JavaScript ilə edə bilərsiniz həqiqətən sərin şeyi biridir. 723 00:43:26,910 --> 00:43:31,720 Yalnız siz, assosiativ array dəyəri daxilində kimi ints ya seriallarda ola bilər 724 00:43:31,720 --> 00:43:34,170 biz də bir funksiya ola bilər. 725 00:43:34,170 --> 00:43:36,380 Belə ki, uğur deyərək, bu mənim açarıdır. 726 00:43:36,380 --> 00:43:38,830 A kolon, dəyəri gəlir burada deyir 727 00:43:38,830 --> 00:43:41,810 və bu dəyəri həqiqətən bir funksiyası var. 728 00:43:41,810 --> 00:43:44,460 Beləliklə, biz bu funksiya özlüyündə bir ad vermək lazım deyil. 729 00:43:44,460 --> 00:43:48,820 Biz yalnız bu bir funksiyası olacaq deyə bilərik. Bu 1 mübahisə etmək olacaq. 730 00:43:48,820 --> 00:43:51,190 Bu funksiya üçün dəlil olacaq 731 00:43:51,190 --> 00:43:54,460 nə server tələbi bizə geri göndərdi. 732 00:43:54,460 --> 00:43:57,750 Bizim browser bir tələb edir zaman yalnız kimi, server geri bir şey göndərir 733 00:43:57,750 --> 00:43:59,060 və brauzerinizin, o 734 00:43:59,060 --> 00:44:03,030 biz yalnız bir sorğu AJAX kontekstində, server, geri bir şey göndərib 735 00:44:03,030 --> 00:44:07,110 və indi biz bir string kimi təmsil ediblər. 736 00:44:07,110 --> 00:44:11,280 Ki, simli ilə Mən yalnız sayfadaki göstərmək istəyirəm. 737 00:44:11,280 --> 00:44:14,040 Mən son bir selector üçün gedirəm ki etmək. 738 00:44:14,040 --> 00:44:17,570 Mən ID qiyməti element seçin istəyirəm. 739 00:44:17,570 --> 00:44:20,710 Bu, yalnız mən səhifə yaratdıq ki, boş bir div deyil 740 00:44:20,710 --> 00:44:26,640 Mən server bizə geri göndərdi nə olduğunu div məzmunu müəyyən etmək istəyirik. 741 00:44:26,640 --> 00:44:30,280 Mən, həqiqətən, quote.php bir az redaktə etdik. 742 00:44:30,280 --> 00:44:33,460 >> Əksinə render zəng və bəzi səhifə göstərilməsi çox, 743 00:44:33,460 --> 00:44:38,100 quote.php indi sadəcə bir string kimi fond dəyəri çap edir. 744 00:44:38,100 --> 00:44:41,880 Siz həqiqətən səhifə əgər Belə ki, yalnız kiçik simli görəcək 745 00:44:41,880 --> 00:44:45,030 fond qiyməti nə edir. 746 00:44:45,030 --> 00:44:50,170 Biz burada nə etmək lazımdır son bir şey yalnız bu funksiya yalan qaytarır əmin edir. 747 00:44:50,170 --> 00:44:53,560 Bu deyir ki, mən bir hadisə handler daxilində Ben əgər 748 00:44:53,560 --> 00:44:57,300 və hadisə handler əvəzinə doğru qaytarılması yalan qaytarır 749 00:44:57,300 --> 00:45:01,510 ki, yanğın orijinal hadisə istəmirəm deməkdir. 750 00:45:01,510 --> 00:45:05,270 Bu halda, heç bir JavaScript və olmasaydı biz bir formada təqdim 751 00:45:05,270 --> 00:45:08,280 bizim web browser "Mən yanaşı data göndərmək gedirəm" deyə davam edir 752 00:45:08,280 --> 00:45:10,130 və onlar başqa bir sayfaya göndərmək olacaq. 753 00:45:10,130 --> 00:45:14,360 İndi AJAX istifadə etdiyiniz Çünki, başqa səhifə üçün istifadəçi göndərmək üçün ehtiyac yoxdur. 754 00:45:14,360 --> 00:45:17,920 Biz yalnız bu səhifə dinamik results olacaq. 755 00:45:17,920 --> 00:45:21,460 Biz, həqiqətən, onlara hər yerdə getmək istəmirəm, mən eyni page qalmaq istəyirəm. 756 00:45:21,460 --> 00:45:27,060 Belə ki, yalan qaytarılması, biz şəklində bizim üçün bunu deyil ki, təmin edir. 757 00:45:27,060 --> 00:45:31,170 Bu həqiqətən kimi görünür nə nəzər salaq. 758 00:45:31,170 --> 00:45:34,180 Bizim quote səhifə eyni görünür. 759 00:45:34,180 --> 00:45:37,240 Biz nə görə bilərsiniz məni yerə burada inspektor qoparmaq edək. 760 00:45:37,240 --> 00:45:40,270 Bir az böyük olun. 761 00:45:40,270 --> 00:45:44,590 Biz HTTP istekleri bütün görə bilərsiniz ki, biz Network nişanı açmaq əgər saxla, bu 762 00:45:44,590 --> 00:45:47,570 sayfada olur. 763 00:45:47,570 --> 00:45:52,890 >> Simvolu mənə AAPL yazın və sitat al basın bildirin. 764 00:45:52,890 --> 00:45:56,720 İndi Apple payı dollar bir sıra xərcləri gördüm ki, 765 00:45:56,720 --> 00:46:00,410 yalnız səhifə çıxdı, lakin URL bütün dəyişmədi. 766 00:46:00,410 --> 00:46:04,570 Əslində, burada yalnız etdiyiniz HTTP tələb edir. 767 00:46:04,570 --> 00:46:09,980 Biz quote.php bir POST müraciət etdi. Bu mənada edir. 768 00:46:09,980 --> 00:46:12,800 Bu server bizə geri göndərdi edir. 769 00:46:12,800 --> 00:46:16,320 Bu, artıq images və bu kimi şeylər bu nəhəng HTML sənəd var 770 00:46:16,320 --> 00:46:20,920 yalnız mətn xətti, və biz yalnız mətn xətti göstərilir. 771 00:46:20,920 --> 00:46:26,290 Biz başlıqlarını geri və biz, həqiqətən, bu HTTP request daxilində göndərilən nə varsa, 772 00:46:26,290 --> 00:46:33,950 biz simvolu və AAPL dəyəri əsas boyunca göndərdi burada görə bilərsiniz 773 00:46:33,950 --> 00:46:36,430 olan istifadəçi kimi daxil tipli nə 774 00:46:36,430 --> 00:46:39,230 Bu gözəl, ancaq hələ bir az annoying var. 775 00:46:39,230 --> 00:46:42,490 Mən hələ fond quote almaq üçün bu düyməni basın. 776 00:46:42,490 --> 00:46:45,880 Biz məşğul insanlar istəyirik və biz düymələri basın zaman yoxdur. 777 00:46:45,880 --> 00:46:49,910 Google Instant həyata Google müddət əvvəl bu bir az həyata keçirilir. 778 00:46:49,910 --> 00:46:53,590 Siz yazaraq etdiyiniz kimi Google Instant edir ki, bu, yalnız sizin üçün nəticələri tapılanlar başlayır 779 00:46:53,590 --> 00:46:56,520 belə ki Axtarış tıklayarak narahat yoxdur. 780 00:46:56,520 --> 00:46:58,730 Əslində, bir əyləncə hekayə ilə bağlıdır. 781 00:46:58,730 --> 00:47:01,100 Google Instant çıxdı sonra, insanlar kimi idi "Whoa, bu super gözəl deyil." 782 00:47:01,100 --> 00:47:02,540 "Bu sərin edir." 783 00:47:02,540 --> 00:47:05,950 Və Stanford bir tələbə aşağı zamanı 19 olan 784 00:47:05,950 --> 00:47:09,000 YouTube Ani adlanan bu site etdi. 785 00:47:09,000 --> 00:47:13,170 Bütün YouTube Instant səmərəli dərhal YouTube axtarış edir deyil. 786 00:47:13,170 --> 00:47:17,020 Belə ki, daha Axtar YouTube.com və hit üçün getmək üçün olan çox, 787 00:47:17,020 --> 00:47:21,650 Mən CS50 kimi YouTube Ani bir şey yazmağa başlayın zaman, 788 00:47:21,650 --> 00:47:25,320 biz bunu yavaş internet bağlantısı üçün cəhd ki, burada oldu 789 00:47:25,320 --> 00:47:28,500 Bu nəticələr yaşamaq yaşayır. 790 00:47:28,500 --> 00:47:35,590 Biz, həqiqətən, bizim quote.js fayl çox sadə dəyişiklik edə bilər ki etmək. 791 00:47:35,590 --> 00:47:40,900 Şəklində təqdim edildiyi anda biz bu hadisəni əlavə edirik. 792 00:47:40,900 --> 00:47:43,760 Biz, həqiqətən, istifadəçi artıq ki, formasını təqdim etmək istəmirəm 793 00:47:43,760 --> 00:47:48,570 belə-in əvəzinə bu hadisə istifadəçi presleri əsas hər zaman yanğın bildirin. 794 00:47:48,570 --> 00:47:53,200 Edək ilk keyup təqdim gələn hadisə dəyişdirmək üçün. 795 00:47:53,200 --> 00:47:55,740 Çox formasını təqdim etmək üçün, gözləmə artıq o deməkdir ki, 796 00:47:55,740 --> 00:47:58,490 hər zaman əsas bərk, bir şey baş verəcək. 797 00:47:58,490 --> 00:48:02,030 Bu artıq bütün forma bu keyup hadisə əlavə etmək üçün əhəmiyyət kəsb edir. 798 00:48:02,030 --> 00:48:05,080 Biz, həqiqətən, yalnız axtarış qutusu qayğı. 799 00:48:05,080 --> 00:48:09,320 >> Indi ki, biz çox form-quote çox, bu olmaq dəyişə bilərsiniz seçmək üçün 800 00:48:09,320 --> 00:48:14,220 şəklində quote və biz daxil olacaq (= mətn yazın) və ya (= simvol adı) deyə bilər - 801 00:48:14,220 --> 00:48:16,420 biz istədiyiniz hər hansı. 802 00:48:16,420 --> 00:48:18,650 İndi biz nə üçün son bir şey var. 803 00:48:18,650 --> 00:48:21,190 Biz geri yalan deyəndə burada saxla 804 00:48:21,190 --> 00:48:24,370 biz ki default hadisə yanğın istəmirəm bildirib. 805 00:48:24,370 --> 00:48:26,390 Biz indi aradan Amma əgər yalnız belə ki, baş 806 00:48:26,390 --> 00:48:29,660 biz yazın nə artıq browser göstərilir niyyətində deyil 807 00:48:29,660 --> 00:48:33,000 bir mətn qutusuna yazaraq default davranış olardı, çünki. 808 00:48:33,000 --> 00:48:38,660 Biz artıq, belə ki, bu qayıdışı yalan məhv edək ki, yalnış istəyirəm. 809 00:48:38,660 --> 00:48:44,800 Mən AAPL yazaraq start zaman ki, saxlamaq və indi səhifə yeniden edin 810 00:48:44,800 --> 00:48:50,160 burada alt hissesi avtomatik doldurulması ki, görürsünüz. 811 00:48:50,160 --> 00:48:53,150 Belə ki, burada CS50 Maliyyə Instant edir. 812 00:48:53,150 --> 00:48:55,860 YouTube Instant haqqında həqiqətən fun hekayə 813 00:48:55,860 --> 00:48:59,420 ki, tələbə yalnız növ, bir 1-gecə layihə kimi yazmışdır 814 00:48:59,420 --> 00:49:03,800 və növbəti gün o, YouTube CEO tərəfindən iş təklif edilib. 815 00:49:03,800 --> 00:49:10,610 Kimi belə sadə, siz CS50 tələbələr, son layihələr YouTube bir iş əldə edə bilərsiniz. 816 00:49:10,610 --> 00:49:14,720 Kimi bir şey doğru, son layihə üçün həqiqətən sərin fikir var? 817 00:49:14,720 --> 00:49:18,170 Biz inteqrasiya etmək istəyirdi ki, bəzi mövcud funksionallıq idi. 818 00:49:18,170 --> 00:49:20,330 Biz istifadəçi təcrübəsi bir az təkmilləşdirmək 819 00:49:20,330 --> 00:49:24,340 və birdən YouTube Ani bir şey axtarış bir çox daha asan ola bilər 820 00:49:24,340 --> 00:49:27,290 müntəzəm YouTube-da axtarış edir. 821 00:49:27,290 --> 00:49:30,790 Belə ki özetle AJAX var. 822 00:49:30,790 --> 00:49:34,860 >> Joseph göstərirdi ki, nümunələr, biz, autocompletes bir çox gördüm 823 00:49:34,860 --> 00:49:39,250 biz xatırlamaq yoxdur, çünki o autocompletes həqiqətən, həqiqətən, lazımlı var - 824 00:49:39,250 --> 00:49:41,770 Məsələn, əgər Apple üçün fond qiymət xatırlamıram 825 00:49:41,770 --> 00:49:45,110 və biz yalnız o deyil, yalnız mənə dedi daha aa bir şey bilmek 826 00:49:45,110 --> 00:49:48,740 "Bu şey bir payı, bu qədər pul edir" 827 00:49:48,740 --> 00:49:52,540 I növ səhmlərinin aa ilə başlamaq bilmək istərdim. 828 00:49:52,540 --> 00:49:58,340 Biz artıq daxil olan Bootstrap kitabxana ilə həqiqətən gözəl ki, edə bilərsiniz 829 00:49:58,340 --> 00:50:01,380 CS50 Maliyyə içərisində. 830 00:50:01,380 --> 00:50:09,390 Siz JavaScript tag üçün buraya gəlmək və Typeahead aşağı diyirləyin varsa, 831 00:50:09,390 --> 00:50:13,730 Bu, yalnız kimsə artıq bizim üçün yazdığı gözəl bir plugin edir 832 00:50:13,730 --> 00:50:16,980 və biz asanlıqla bu kimi işlevselliği istifadə edə bilərsiniz. 833 00:50:16,980 --> 00:50:21,410 Mən A tipli və burada A. ilə başlamaq ki, bəzi dövlətlərin siyahısı 834 00:50:21,410 --> 00:50:25,360 Gəlin mən bu həqiqətən sərin hesab edirəm ki, demək və bu, məni mənim səhifə Bu daxil etmək üçün vaxt var. 835 00:50:25,360 --> 00:50:28,300 Bu, həqiqətən, həqiqətən sadə ki, həyata çevirir. 836 00:50:28,300 --> 00:50:32,810 Nin quote3.js burada üzərində jump edək. 837 00:50:34,890 --> 00:50:37,380 Mənim fayl bir az fərqli görünür. 838 00:50:37,380 --> 00:50:39,700 Down burada AJAX məhsullarının bütün eyni. 839 00:50:39,700 --> 00:50:43,170 Mən başqa bir sayfaya getmək olmadan fond data yüklemek üçün istəyirəm. 840 00:50:43,170 --> 00:50:46,220 Ancaq indi bu plugin istifadə etmək istəyirik. 841 00:50:46,220 --> 00:50:51,020 Bu Bootstrap sənədlərin edirəm ki, necə dəqiq böyük nümunələr var. 842 00:50:51,020 --> 00:50:54,350 Mən demək istəyirəm ki, "Burada mən AutoComplete istədiyiniz giriş var" 843 00:50:54,350 --> 00:50:56,640 və mən typeahead adlanan bu funksiya zəng gedirəm 844 00:50:56,640 --> 00:50:59,730 və bizim üçün Typeahead məhsullarının bütün idarə edəcək. 845 00:50:59,730 --> 00:51:02,090 Bu siyahı başlamaq, bu bizim filtreleme bütün edəcəyik. 846 00:51:02,090 --> 00:51:06,680 O bilməlidir yalnız biz autocompleting ne data deyil. 847 00:51:06,680 --> 00:51:10,480 Mən yalnız sənədlərin oxu və nümunələri baxaraq bu əsas aşkar. 848 00:51:10,480 --> 00:51:14,150 Mən bu mənbə əsas, bu açar dəyəri versələr 849 00:51:14,150 --> 00:51:17,770 Mən AutoComplete istədiyiniz şeyi yalnız bir sıra edir. 850 00:51:17,770 --> 00:51:20,180 Bu dəyişən bu başqa fayl gəldi. 851 00:51:20,180 --> 00:51:23,400 Mən symbols.js açmaq. 852 00:51:23,400 --> 00:51:27,980 >> Bu symbols.js strings olan yalnız bu, həqiqətən, həqiqətən, böyük array edir 853 00:51:27,980 --> 00:51:32,080 NASDAQ bu fond simvol bütün. 854 00:51:32,080 --> 00:51:42,190 Mən HTML, belə jharvard, vhosts, globalhost, html, şablonlar, geri tullanmaq istəyirsinizsə 855 00:51:42,190 --> 00:51:45,820 quote_form. 856 00:51:45,820 --> 00:51:50,910 Indi quote3.js deyirlər ki, ildən, mənə burada o cümlədən alıram JavaScript fayl dəyişdirmək imkan verir. 857 00:51:50,910 --> 00:51:55,110 İndi quote3.js var, mən ki, ayrı-ayrı JavaScript faylı yüklemek üçün gedirəm 858 00:51:55,110 --> 00:51:57,910 ki, Bootstrap AutoComplete ki biridir. 859 00:51:57,910 --> 00:52:04,430 İndi brauzerinizin geri jump zaman, səhifə yeniden və mən aa yazmağa başlayın 860 00:52:04,430 --> 00:52:06,880 mənim AutoComplete var. Və həqiqətən kimi sadə idi. 861 00:52:06,880 --> 00:52:11,400 Mən "Burada mən AutoComplete istədiyiniz şey" yalnız bildirib ki kodu 1 xətti var idi, 862 00:52:11,400 --> 00:52:16,590 və birdən-birə mən bütün səy deyil, bütün çox bu, həqiqətən, həqiqətən, gözəl funksionallıq var. 863 00:52:16,590 --> 00:52:19,810 Web sites və şeyi xüsusilə ön tərəfdə inkişaf edirik ki, 864 00:52:19,810 --> 00:52:21,840 Bu halda bir çox tapmaq olacaq. 865 00:52:21,840 --> 00:52:25,700 Orada həqiqətən sərin pulsuz kitabxana bir çox çox var 866 00:52:25,700 --> 00:52:30,190 ki, bu kimi şeylər etmək asan super edir. 867 00:52:30,190 --> 00:52:37,230 Hər kəs sadəcə simvol bu böyük siyahısında autocompleting hər hansı çatışmazlıqlar hesab edə bilərəmmi? 868 00:52:37,230 --> 00:52:41,580 Bu yanaşma ilə yaxşı deyil ki, bir şey ola bilər? 869 00:52:42,790 --> 00:52:45,960 Bəli. >> [Tələbə] Saat, siz [işitilemez] bir çox halda 870 00:52:45,960 --> 00:52:50,420 Bəli. Hal-hazırda biz bu böyük JavaScript fayl indirirken edirik və simvol bir çox var. 871 00:52:50,420 --> 00:52:54,360 Biz məhsullarının bir ton varsa belə, bu cür ola bilər yalnız axtarış olmayan gizlilik artırmaq 872 00:52:54,360 --> 00:52:56,600 həm də faktiki fayl indirirken. 873 00:52:56,600 --> 00:52:58,670 Böyük. Başqa bir şey? 874 00:53:01,950 --> 00:53:05,280 Hal-hazırda bağlı heç bir real mənada var. 875 00:53:05,280 --> 00:53:08,190 Burada göstərilir ki, A, şirkətlər yazın edin 876 00:53:08,190 --> 00:53:11,220 A. ilə başlamaq ən məşhur şirkətlər ola bilər 877 00:53:11,220 --> 00:53:17,130 >> Mən Apple almaq əvvəl, mən arıyorum tapmaq üçün bir neçə simvol bilər. 878 00:53:17,130 --> 00:53:20,420 Bu AutoComplete bağlı bu mənada mövcut deyil. 879 00:53:20,420 --> 00:53:24,400 Bu, sadəcə, demək olacaq "Mən göstərmək gidiyorum eşleşen bir şey." 880 00:53:24,400 --> 00:53:30,510 Bunun əvəzinə o, mən elə-belə mənim axtarış bəzi aidiyyəti inteqrasiya etmək istərdim. 881 00:53:30,510 --> 00:53:36,440 , Finance.yahoo.com, Yahoo! Maliyyə buraya getmək Əgər 882 00:53:36,440 --> 00:53:42,100 Yahoo! Maliyyə səhifə simvolu daxil etmək üçün cəhd edin 883 00:53:42,100 --> 00:53:52,310 və mən GOOG yazmağa başlayın, mən şey bu gözəl siyahısı var. 884 00:53:52,310 --> 00:53:57,100 Yahoo! Maliyyə daha ağıllı burada bir şey edir kimi aydın görünür. 885 00:53:57,100 --> 00:53:59,790 Onlar bir aidiyyəti yoxdur və onlar da əlavə məlumat 886 00:53:59,790 --> 00:54:01,430 fond adı kimi. 887 00:54:01,430 --> 00:54:05,850 Mən, həqiqətən, rəmzləri yalnız fond siyahısını əldə edə bilər ki, bir şey var. 888 00:54:05,850 --> 00:54:09,520 Mən bunu istəyirik və mən onu gedirəm. 889 00:54:09,520 --> 00:54:11,790 Edək, bir neçə şeyi ki etmək. 890 00:54:11,790 --> 00:54:15,580 Gəlin ilk bu səhifədə inspektor açmaq 891 00:54:15,580 --> 00:54:18,100 biz bu səhifə bütün yeniden deyil ki, gördüm, çünki 892 00:54:18,100 --> 00:54:21,960 belə ki, yəqin ki, onun data yüklənməsi üçün elə AJAX istifadə edir. 893 00:54:21,960 --> 00:54:23,920 Biz loading nə data tapa bilərsiniz. 894 00:54:23,920 --> 00:54:28,390 Mən bu Network sekmesini basın, bu işdən başlamaq ki, sorğu bütün olacaq. 895 00:54:28,390 --> 00:54:34,020 Mən Goo yazın əgər İndi biz yeni bir HTTP sorğu var ki, görə bilərsiniz. 896 00:54:34,020 --> 00:54:37,490 Məlumatlar gələn yerləşir Ü Bu yəqin edir. 897 00:54:37,490 --> 00:54:41,990 Kifayət qədər Əlbəttə, mən qəribə adlı bir bit olan bu URL baxsaq, 898 00:54:41,990 --> 00:54:46,930 biz Yahoo öz data off göndərir bu dəqiq olduğunu görə bilərsiniz. 899 00:54:46,930 --> 00:54:53,400 >> Mən ruhunda axtarış funksiyası çox bənzər ki suggest.php adlı ayrı-ayrı fayl yaratdıq. 900 00:54:53,400 --> 00:54:57,730 Bu əsasən Yahoo URL üçün bir sorğu etmək olacaq, bəzi data geri almaq 901 00:54:57,730 --> 00:54:59,750 və mənə geri göndərin. 902 00:54:59,750 --> 00:55:02,570 İndi daha çox rəmzləri bu böyük, nəhəng siyahısını istifadə edərək, daha çox, 903 00:55:02,570 --> 00:55:05,280 Mən, Yahoo-nun gözəl aidiyyəti şeyi istifadə edə bilərsiniz 904 00:55:05,280 --> 00:55:08,150 və mən kütləvi JavaScript faylı yoxdur. 905 00:55:08,150 --> 00:55:12,040 Mən yalnız faktiki müvafiq fond simvol aşağı çəkmək üçün gedirəm. 906 00:55:12,040 --> 00:55:13,960 Ki, daxil jump edək. 907 00:55:13,960 --> 00:55:17,360 Belə ki, html, js. Biz quote4 indi istəyirik. 908 00:55:17,360 --> 00:55:22,120 İndi biz artıq JavaScript faylları böyük siyahısını istifadə edərək, edirik. 909 00:55:22,120 --> 00:55:24,430 Amma dizayn problem kiçik bir cür burada var. 910 00:55:24,430 --> 00:55:28,200 Biz AJAX-ci ildə A asynchronous olduğunu bildirib etdik. 911 00:55:28,200 --> 00:55:31,000 Nə o deməkdir ki, mən bir AJAX müraciət etmək zaman ki, 912 00:55:31,000 --> 00:55:36,490 mənim AJAX tələb həqiqətən atəş yerləşir Ü belə burada line 8, bu. 913 00:55:36,490 --> 00:55:40,370 Gəlin indi bir şeylər edəcəksən ki, aşağı burada kodu demək 914 00:55:40,370 --> 00:55:43,930 səhifə, istifadəçi və ya dəyişiklik bir şey xəbərdarlıq istəyirəm. 915 00:55:43,930 --> 00:55:49,830 Deyil baş verəcək deyil hansı brauzer davam etmək üçün bu sorğu üçün gözləmək niyyətində deyil 916 00:55:49,830 --> 00:55:53,480 əvvəl endiyini və bu istiqamətdə vuruş. 917 00:55:53,480 --> 00:55:55,900 Bu asynchronous hissəsi. 918 00:55:55,900 --> 00:55:58,400 O, bu tələb etmək və bitirmək zaman "demək olacaq 919 00:55:58,400 --> 00:56:03,080 "Qayıtmaq və mən uğur daxilində zəng etmək üçün sizə dedim ki, funksiyası zəng". 920 00:56:03,080 --> 00:56:07,300 Biz əvvəlcədən bütün səhmlər yalnız download bilməz deməkdir. 921 00:56:07,300 --> 00:56:10,300 Biz tələb etmək və geri qayıtmaq bir şey gözləmək lazımdır. 922 00:56:10,300 --> 00:56:13,330 Əvvəl o deməkdir ki, biz sadəcə, Bootstrap deyə bilərsiniz 923 00:56:13,330 --> 00:56:15,580 "Burada mən AutoComplete istədiyiniz şeyi siyahısı." 924 00:56:15,580 --> 00:56:18,950 Biz bilirik, çünki biz artıq artıq bunu edə bilər 925 00:56:18,950 --> 00:56:21,780 biz həqiqətən AutoComplete istəyirəm nə. 926 00:56:21,780 --> 00:56:25,190 O orada ağıllı uşaqlar, çünki Neyse, Bootstrap, bu fikir 927 00:56:25,190 --> 00:56:30,160 və onlar, həqiqətən, bizə bu Typeahead plugin yüklemek üçün başqa yol verdi. 928 00:56:30,160 --> 00:56:35,630 Əvvəl, bu mənbə əmlakın dəyəri AutoComplete şeyi yalnız bu böyük array idi. 929 00:56:35,630 --> 00:56:39,580 >> İndi mənbə əmlak, əslində bir funksiyası 930 00:56:39,580 --> 00:56:44,580 və bu funksiya məqsədi ilə AutoComplete üçün şeylər nə anlamaq üçün. 931 00:56:44,580 --> 00:56:48,730 Bu rəqəm olacaq yolu bu Yahoo! Maliyyə soruşmaq olacaq ki, 932 00:56:48,730 --> 00:56:51,750 AutoComplete ən yaxşı şeylər edir. 933 00:56:51,750 --> 00:56:54,500 Mən bir çox oxşar AJAX müraciət etmək gidiyorum ki etmək. 934 00:56:54,500 --> 00:56:59,010 Mən suggest.php Bu səhifə tələb gedirəm. 935 00:56:59,010 --> 00:57:01,360 Mən hələ də simvol boyunca göndərmək istəyirəm. 936 00:57:01,360 --> 00:57:05,570 İndi mənim uğur, bu Bootstrap sənədləri mənə 937 00:57:05,570 --> 00:57:09,130 ki, bəlkə, şeyi ki, siyahı yaşayır 938 00:57:09,130 --> 00:57:14,370 Mən lazım olan bütün zəng funksiyası bu array qəbul edilir. 939 00:57:14,370 --> 00:57:15,660 Amma bir dəqiqə gözləyin. 940 00:57:15,660 --> 00:57:20,240 Bu bir sıra olması ehtimal edilir və AJAX, geri mətn mənə göndərir edin 941 00:57:20,240 --> 00:57:22,720 necə mümkündür? 942 00:57:22,720 --> 00:57:27,910 Bu JSON adlı data mübadiləsi yeni bir yol təqdim edir. 943 00:57:27,910 --> 00:57:33,000 Bu halda biz yalnız mətn sadə bir string geri göndərilməsi deyilik. 944 00:57:33,000 --> 00:57:37,670 İndi biz fond simvol bu daha mürəkkəb siyahısı ilə məşğul olursunuz. 945 00:57:37,670 --> 00:57:41,730 Bu fond simvol da şirkətin adı və ya cari qiymətlərlə kimi şeylər daxildir. 946 00:57:41,730 --> 00:57:47,550 Hər hansı əvvəlcədən şəkildə biçimlendirilmelidir deyil ki, böyük bir uzun string istifadə 947 00:57:47,550 --> 00:57:51,970 Mənə Yahoo server bu məlumat almaq üçün ən yaxşı yolu olacaq deyil 948 00:57:51,970 --> 00:57:54,540 Mən asanlıqla anlamaq olar ki, bir yol. 949 00:57:54,540 --> 00:58:01,280 JSON biz JavaScript assosiativ serialların yaratmaq necə istifadə edir ki, bir texnologiyadır. 950 00:58:01,280 --> 00:58:04,510 Bu, bir JavaScript assosiativ sıra kimi bir çox görünür 951 00:58:04,510 --> 00:58:06,600 çünki və əslində bu. 952 00:58:06,600 --> 00:58:09,710 JSON JavaScript Obyekt Notation qısaltmasıdır. 953 00:58:09,710 --> 00:58:15,020 Bu əsasən bir geri və irəli data ötürülməsi üçün format razılaşdırılmış edir. 954 00:58:15,020 --> 00:58:18,280 Bu JSON obyekt və ya bu JSON assosiativ array Burada 955 00:58:18,280 --> 00:58:21,010 Mənə bir kurs haqqında bəzi məlumatlar göndərir. 956 00:58:21,010 --> 00:58:25,110 >> Bu serialın düymələri cs50 dəyəri var ki, kurs kimi şeylər 957 00:58:25,110 --> 00:58:29,140 və aşağı burada mən bir sıra bir dəyər ola bilər ki, görürük. 958 00:58:29,140 --> 00:58:32,730 Mən strings həyata parse kimi şeylər var və vergülləri axtarmaq deyil 959 00:58:32,730 --> 00:58:35,330 və belə crazy şeyi. 960 00:58:35,330 --> 00:58:38,820 Bu JSON formatda elan Çünki, 961 00:58:38,820 --> 00:58:43,510 JavaScript və jQuery artıq bir string çevirmək funksiyaları 962 00:58:43,510 --> 00:58:48,140 faktiki JavaScript assosiativ array bu JSON kimi görünür ki, 963 00:58:48,140 --> 00:58:50,440 biz işləmək bilər. 964 00:58:50,440 --> 00:58:56,660 Bunu, artıq bu fayl, suggest.php olduğunu söyləyən kimi sadə deyil 965 00:58:56,660 --> 00:58:59,040 geri sadəcə mətn string mənə göndərilməsi 966 00:58:59,040 --> 00:59:01,950 ancaq geri JSON mənə göndər olacaq bilirik. 967 00:59:01,950 --> 00:59:06,760 Yəni JSON bir JavaScript assosiativ array çevrilə bilər deməkdir. 968 00:59:06,760 --> 00:59:10,830 Və belə jQuery, mən sizə, mənim üçün bunu istəyirəm. 969 00:59:10,830 --> 00:59:13,990 Bu o deməkdir ki, burada bu cavab parametr, 970 00:59:13,990 --> 00:59:16,070 bu artıq yalnız simli deyil. 971 00:59:16,070 --> 00:59:19,860 Biz jQuery bildirib etdik ki, burada bəzi JSON gəlir 972 00:59:19,860 --> 00:59:22,950 jQuery demək kifayət qədər ağıllı olacaq, "Siz JSON istəyirdi?" 973 00:59:22,950 --> 00:59:26,890 "Mən sizin üçün assosiativ array o çevirmək üçün gedirəm." 974 00:59:26,890 --> 00:59:32,100 Biz quote4.js var bir dəfə-nin faktiki Network nişanı nəzər salaq. 975 00:59:32,100 --> 00:59:35,400 Biz bu dəyişdirmək və səhifə yeniden olacaq. 976 00:59:37,150 --> 00:59:41,250 İndi yenidən bir-bir yazın gedirəm. 977 00:59:41,250 --> 00:59:45,600 Mən suggest.php üçün bir neçə müraciətləri qəbul, lakin indi bu cavab sonra 978 00:59:45,600 --> 00:59:48,670 deyil, yalnız simli deyil, bu, JSON var. 979 00:59:48,670 --> 00:59:52,580 Mən açıq buruq brace deyərək var "Burada assosiativ sıra gəlir." 980 00:59:52,580 --> 00:59:56,830 >> Bu assosiativ serialın ilk və yeganə əsas, simvollar adlanır 981 00:59:56,830 --> 01:00:00,240 və sonra burada müvafiq rəmzləri bütün bir sıra edir 982 01:00:00,240 --> 01:00:04,820 ki, nəhəng siyahısı, Yahoo! Maliyyə indi gəlir. 983 01:00:06,110 --> 01:00:10,630 Mən sadəcə bu AutoComplete plugin yaşayır necə ki, 984 01:00:10,630 --> 01:00:14,280 artıq müəyyən olan bir yerli fayl gələn deyil ki, bəzi məlumatları ilə 985 01:00:14,280 --> 01:00:17,490 amma başqa bir şey. 986 01:00:17,490 --> 01:00:21,160 Bu, biz, həqiqətən, JSONP adlı texnologiya istifadə edə bilər çıxır ki, 987 01:00:21,160 --> 01:00:27,420 və ya padding ilə JSON ki, bu suggest.php komisyoncu aradan qaldıracaq. 988 01:00:27,420 --> 01:00:34,010 Lakin əvəzinə ki, bunu isə əvəzinə mən bu daha inkişaf edə bilər necə nəzər salaq. 989 01:00:34,010 --> 01:00:36,040 Mən Bootstrap nin Typeahead həqiqətən istəyirəm. Bu, həqiqətən gözəl. 990 01:00:36,040 --> 01:00:39,570 Amma JavaScript yaxşı əldə edirik və biz növ bu özümüzü etmək istəyirəm 991 01:00:39,570 --> 01:00:43,870 bəlkə bu plugin edir ola bilər nə bir göz atın. 992 01:00:43,870 --> 01:00:46,500 Ki Typeahead şey istifadə edir artıq etsin, 993 01:00:46,500 --> 01:00:50,550 və-nin təklif səhmlərinin bu siyahı özümüzü etmək edək. 994 01:00:50,550 --> 01:00:53,790 Burada quote6.php biz eyni şəkildə başlamaq olacaq. 995 01:00:53,790 --> 01:00:58,050 Hər dəfə kimsə növləri bir şey, bir AJAX müraciət etmək istəyirəm. 996 01:00:58,050 --> 01:01:01,590 Bu, bizim orijinal CS50 Maliyyə Instant kimi. 997 01:01:01,590 --> 01:01:05,020 Əksinə quote.php müraciət edilməsi daha 998 01:01:05,020 --> 01:01:08,530 indi əvvəlki kimi eyni fayl xahiş edirik, bu suggest.php, 999 01:01:08,530 --> 01:01:12,460 olan yalnız Yahoo! Maliyyə data çəkmək niyyətindədir. 1000 01:01:12,460 --> 01:01:19,480 >> Yenə, biz hələ də JSON bekliyorsanız, lakin Typeahead bizim üçün bunu deyil indi bəri 1001 01:01:19,480 --> 01:01:24,850 biz də cari mətn qutusuna daxilində olduğunu dəyəri boyunca göndərmək lazımdır. 1002 01:01:24,850 --> 01:01:28,120 İndi biz, Yahoo! Maliyyə soruşmaq üçün nə 1003 01:01:28,120 --> 01:01:34,160 və indi burada biz sorğu başa bir dəfə icra etmək istəyirəm ki, funksiyası var. 1004 01:01:34,160 --> 01:01:36,520 Biz, bizim üçün siyahısı etmək üçün plugin yoxdur 1005 01:01:36,520 --> 01:01:40,630 biz, həqiqətən, təkliflər bir siyahısını yaratmaq niyyətində olduğunuz belə burada. 1006 01:01:40,630 --> 01:01:44,850 Bunu etmək üçün, çox PHP kimi biz HTML bu böyük strings concatenated 1007 01:01:44,850 --> 01:01:48,170 sonra biz onları çap biz JavaScript eyni dəqiq şey edə bilərsiniz. 1008 01:01:48,170 --> 01:01:51,850 Birinci biz, təklif adlanan bu simli başlamaq olacaq 1009 01:01:51,850 --> 01:01:54,590 və bu simli yalnız bir HTML ehtiva edir. 1010 01:01:54,590 --> 01:01:58,320 , Biz hər şeyi bir siyahısı olsun, biz bu siyahı tag ilə başlamaq olacaq 1011 01:01:58,320 --> 01:02:03,340 və indi biz geri ki, rəmzləri bütün təkrarlamaq olacaq. 1012 01:02:03,340 --> 01:02:06,500 Biz Veri bildirib etdik, çünki saxla: "json, bu simli deyil. 1013 01:02:06,500 --> 01:02:09,500 Bu, artıq bizim üçün bir sıra edir. Bu, həqiqətən, sərin var. 1014 01:02:09,500 --> 01:02:13,790 Biz sadəcə "Mən sizə bir siyahısını element əlavə etmək istəyirəm.", Deyə bilərsiniz 1015 01:02:13,790 --> 01:02:16,000 Biz ki, yan bir bir element daxili qoymaq lazımdır 1016 01:02:16,000 --> 01:02:19,030 biz nə bilirik ki, biz, bu təkliflər bir sinif verəcəyik 1017 01:02:19,030 --> 01:02:23,880 və indi burada Yahoo! Maliyyə geri var ki rəmzidir. 1018 01:02:23,880 --> 01:02:27,230 >> Sonra biz geri kazanılmış etdik simvol hər bir element yaratdıq 1019 01:02:27,230 --> 01:02:30,100 biz yalnız siyahısı off bağlamaq istəyirik. 1020 01:02:30,100 --> 01:02:33,040 Belə ki, indi təklif bu kiçik HTML parçası təmsil 1021 01:02:33,040 --> 01:02:37,860 bir səhifə qoymaq zaman aradığınız şeyi siyahı olacaq. 1022 01:02:37,860 --> 01:02:41,070 İndi həqiqətən səhifə haqqında qoymaq bildirin. 1023 01:02:41,070 --> 01:02:46,390 Mən, həqiqətən, bir boş div yaratdıq və mən bu təklifləri bir ID verilmiş etdiyiniz etmək. 1024 01:02:46,390 --> 01:02:52,520 Biz fond data qiyməti göstərilmir ki div məzmunu müəyyən Çox kimi 1025 01:02:52,520 --> 01:02:58,600 biz yalnız bu simli nə üçün bu div məzmunu müəyyən etmək istəyirəm 1026 01:02:58,600 --> 01:03:00,290 bu simvol olan var. 1027 01:03:00,290 --> 01:03:07,650 Bu HTML metodu istifadə edərək, bu təkliflər dəyişən, bu simli, HTML bir simli edir. 1028 01:03:07,650 --> 01:03:13,490 Mən sizə HTML almaq və təkliflər adlanan div daxilində qoymaq istəyirik. 1029 01:03:13,490 --> 01:03:15,680 Biz yalnız indi DOM üçün bir şey əlavə etdik. 1030 01:03:15,680 --> 01:03:20,360 Biz indi page bilərsiniz ki, DOM bəzi yeni elementlər əlavə etdik. 1031 01:03:20,360 --> 01:03:22,540 Bu kimi görünür nə edək. 1032 01:03:22,540 --> 01:03:29,110 Biz quote6 ilə yük və indi biz qayıtmaq edin 1033 01:03:29,110 --> 01:03:34,480 İndi AAPL yazaraq start zaman, biz artıq Bootstrap AutoComplete var 1034 01:03:34,480 --> 01:03:38,470 lakin indi biz özümüz ki, bu siyahıda var. 1035 01:03:38,470 --> 01:03:43,230 Bu, misal üçün, Bootstrap Typeahead daha az uglier edir 1036 01:03:43,230 --> 01:03:45,580 lakin bu, bizim başqa bir şey imkan vermir. 1037 01:03:45,580 --> 01:03:48,660 Biz Bootstrap plugin baxaraq zaman, 1038 01:03:48,660 --> 01:03:52,590 biz autocompleted zaman, AutoComplete dəyərlərdən biri AAPL olduğunu gördüm. 1039 01:03:52,590 --> 01:03:54,820 Ki, faydalı ola bilər. 1040 01:03:54,820 --> 01:03:59,100 Bir istifadəçi kimi, dərhal fond rəmzləri bütün tanımaq bilər. 1041 01:03:59,100 --> 01:04:02,370 Şirkətin faktiki adları Mən yəqin ki, tanımaq üçün daha çox Ben var. 1042 01:04:02,370 --> 01:04:05,310 Belə ki, həqiqətən faydalı ola əgər daha çox AAPL deyərək deyil 1043 01:04:05,310 --> 01:04:07,970 bu Apple kimi bir şey dedi 1044 01:04:07,970 --> 01:04:12,240 Biz bu özümüzü yayılmış etdik, çünki biz həqiqətən asanlıqla bunu edə bilər. 1045 01:04:12,240 --> 01:04:17,630 Nin burada bizim son quote fayl açmaq edək quote7 belə. 1046 01:04:17,630 --> 01:04:23,200 >> Eyni şey. Mən yalnız simvollar daha bizə qayıtmaq edəcək başqa PHP fayl yaratdıq. 1047 01:04:23,200 --> 01:04:25,550 Bu da bizim şirkətin adları geri verəcək. 1048 01:04:25,550 --> 01:04:28,150 Və biz eyni şeyi edirik. Biz AJAX xahiş edirik. 1049 01:04:28,150 --> 01:04:32,370 Sorğu başa sonra, biz burada bu funksiyanı yerinə olacaq 1050 01:04:32,370 --> 01:04:36,520 və bu funksiya elementlərin böyük simli qurmaq niyyətindədir. 1051 01:04:36,520 --> 01:04:39,520 Amma burada fərq bu siyahıları dəyəri, artıq yalnız rəmzi olduğunu 1052 01:04:39,520 --> 01:04:45,370 İndi adı var. 1053 01:04:45,370 --> 01:04:47,070 Beləliklə, biz kiçik bir problemi var. 1054 01:04:47,070 --> 01:04:51,590 Biz axtarış istifadə edərək, biz elə bu simvolu qəbul etmək lazımdır. 1055 01:04:51,590 --> 01:04:54,950 Biz Microsoft Corporation kimi axtarış bir şey keçə bilər. 1056 01:04:54,950 --> 01:04:57,900 Biz MSFT keçmək lazımdır. 1057 01:04:57,900 --> 01:05:01,640 Biz HTML yazılı olduğunuzda, biz gözəl daxili atributları çox var. 1058 01:05:01,640 --> 01:05:05,440 A bir href və ya bir növü ilə bağlı ola bilər. 1059 01:05:05,440 --> 01:05:08,230 Amma nə biz, həqiqətən, indi ehtiyac bu əlaqələrin hər üçün 1060 01:05:08,230 --> 01:05:11,120 Bugün bir fond rəmzi var. 1061 01:05:11,120 --> 01:05:14,240 Heç bir daxili HTML atribut stock rəmzi üçün var 1062 01:05:14,240 --> 01:05:21,010 lakin xoşbəxtlikdən, HTML5 bizə istədiyiniz hər hansı olmaq üçün öz atributları yaratmaq imkan verir. 1063 01:05:21,010 --> 01:05:24,620 Data-simvolu deyərək, yeni bir atributu təqdim etdik 1064 01:05:24,620 --> 01:05:29,350 onun adı yalnız təşkil edib və bu data ilə prefaced çünki bu tamam. 1065 01:05:29,350 --> 01:05:34,270 Biz artıq fond oradan rəmzi daxilində saxlamaq olacaq. 1066 01:05:34,270 --> 01:05:39,590 Nə deməkdir ki, biz şirkətin adı dəyəri gösterdiğinizi baxmayaraq ki, 1067 01:05:39,590 --> 01:05:43,380 bizim AutoComplete daxilində, biz hələ rəmzi xatırlayaraq edirik 1068 01:05:43,380 --> 01:05:47,110 ki, hər bir şirkət ilə bağlıdır. 1069 01:05:47,110 --> 01:05:50,350 Biz bunu edirik yolu bu element özü daxilində deyil. 1070 01:05:50,350 --> 01:05:52,930 Belə ki, biz bir daha dəyişiklik etmək lazımdır deməkdir. 1071 01:05:52,930 --> 01:05:57,090 İndi basın zaman, biz, həqiqətən, rəmzi atributu istifadə etmək lazımdır 1072 01:05:57,090 --> 01:06:00,220 yalnız onun dəyəri daha çox. 1073 01:06:00,220 --> 01:06:05,010 Biz geri varsa, biz təkliflər üçün hadisə handler veririk. 1074 01:06:05,010 --> 01:06:09,280 Bu təkliflər bir indi tıklandığında zaman, mən bir şey etmək istəyirəm. 1075 01:06:09,280 --> 01:06:13,160 Mən istəyirəm ki, giriş qutusuna dəyəri dəyişmək edir. 1076 01:06:13,160 --> 01:06:16,100 İndi bu val funksiyasını təyin etmək istəyirik. 1077 01:06:16,100 --> 01:06:21,060 >> Belə ki, hər hansı arqumentlər bu val funksiyası mətn qutusuna artıq nə sizə qaytarır, 1078 01:06:21,060 --> 01:06:27,070 siz bir string vermək ancaq o string almaq və mətn qutusuna qoymaq olacaq. 1079 01:06:27,070 --> 01:06:28,980 Eyni şəkildə mətn qutusuna seçilməsi alıram. 1080 01:06:28,980 --> 01:06:31,230 Bu adı form-quote rəmzi daxilində deyil. 1081 01:06:31,230 --> 01:06:37,540 İndi bu xüsusiyyətini data-simvolu dəyəri göndərilməsi alıram. 1082 01:06:37,540 --> 01:06:41,560 Burada Bu şey, bu $ (bu) yeni. 1083 01:06:41,560 --> 01:06:46,850 Bu istinad tıklayan ki elementidir. 1084 01:06:46,850 --> 01:06:50,880 Biz bir klik hadisə əlavə deyilik ki, burada görə bilərsiniz 1085 01:06:50,880 --> 01:06:54,690 fərdi təklif sinfinin hər element üçün. 1086 01:06:54,690 --> 01:06:57,140 Əksinə, biz fərqli bu bir az yaxınlaşan edirik. 1087 01:06:57,140 --> 01:07:01,700 Əvəzində biz zaman bu təkliflər div bir şey daxilində deyərək edirik 1088 01:07:01,700 --> 01:07:04,080 hansı unutmayın ki, siyahı üçün yalnız konteyner edir 1089 01:07:04,080 --> 01:07:10,150 bu div daxilində bir şey tıklayan və təklif bir sinif var, əgər 1090 01:07:10,150 --> 01:07:13,000 Mən bu hadisə yanğın istəyirəm. 1091 01:07:13,000 --> 01:07:17,490 Əsasən bu biz nə edə bilər nə deməkdir biz bu eyni hadisə handler yenidən istifadə edə bilərsiniz ki, 1092 01:07:17,490 --> 01:07:20,000 siyahıda olan hər şeyi edir. 1093 01:07:20,000 --> 01:07:22,080 Beləliklə, biz ilk element üçün hadisə handler var yoxdur 1094 01:07:22,080 --> 01:07:24,550 İkinci element üçün və müxtəlif hadisə handler. 1095 01:07:24,550 --> 01:07:29,880 Biz yerinə "Mən eyni hadisə handler mənim siyahısı hər şeyi müraciət etmək istəyirəm.", Deyə bilərsiniz 1096 01:07:29,880 --> 01:07:34,420 Amma biz elə tıklayan olan element bilmək lazımdır. 1097 01:07:34,420 --> 01:07:38,450 Bu, "bu" söz yalnız təmsil edir. 1098 01:07:38,450 --> 01:07:42,360 Bu istifadəçi tərəfindən tıklayan ki, obyekt. 1099 01:07:42,360 --> 01:07:47,680 Mən yalnız 3-cü link tıklayan, bu ki, 3-cü link element təmsil 1100 01:07:47,680 --> 01:07:51,670 I onun atributu, data-simvolu almaq o deməkdir ki, 1101 01:07:51,670 --> 01:07:57,760 biz bilirik ki, mən yalnız tıkladığınız şirkəti ilə bağlı olan simvol ehtiva edir. 1102 01:07:57,760 --> 01:08:04,550 Bizim maliyyə səhifə geri tullanmaq, əgər 1103 01:08:04,550 --> 01:08:08,580 Biz artıq bir dəfə mən MSFT kimi bir şey yazmağa başlayın görə bilərsiniz 1104 01:08:08,580 --> 01:08:11,220 biz yalnız fond rəmzləri əldə etdiyiniz artıq 1105 01:08:11,220 --> 01:08:13,720 indi faktiki şirkətlər əldə edirik. 1106 01:08:13,720 --> 01:08:20,410 Amma bu şirkətlərin birini basın zaman, 1107 01:08:20,410 --> 01:08:25,180 biz şirkətin adı ilə biz, həqiqətən, mətn qutusuna deyil populating etdiyiniz görə bilərsiniz 1108 01:08:25,180 --> 01:08:29,850 lakin həmin data atributları daxilində saxlanılır edilmişdir nə ilə. 1109 01:08:29,850 --> 01:08:32,880 Və mən, həqiqətən, doğru tıklayarak bu elementlərin bir yoxlayın, əgər 1110 01:08:32,880 --> 01:08:36,200 və Element Inspect tıklayarak, biz, həqiqətən, bu kimi görünür nə görə bilərsiniz. 1111 01:08:36,200 --> 01:08:40,290 >> Bu biz loop üçün daxilində yaradılmış bir şey saxla 1112 01:08:40,290 --> 01:08:42,649 biz HTML ki, simli yaradılmasına zaman. 1113 01:08:42,649 --> 01:08:47,870 Biz bu data-simvolu böyük olan MSFT, dəyəri var ki, burada görə bilərsiniz. 1114 01:08:47,870 --> 01:08:49,189 Biz gözləyirdik budur. 1115 01:08:49,189 --> 01:08:53,170 Bu simvol var ki, biz istifadə üçün lazım olan dəyəri var necə 1116 01:08:53,170 --> 01:08:56,140 bu mətn qutusuna daxilində. 1117 01:08:56,140 --> 01:08:58,850 Ki, qazma növü var, çünki kifayət qədər quote forma üçün. 1118 01:08:58,850 --> 01:09:02,990 Nin yalnız bizim portfelinin səhifə bəzi sürətli aksesuarların etmək edək. 1119 01:09:02,990 --> 01:09:08,109 Bir müddət CS50 Maliyyə istifadə varsa, siz səhmlərinin bir çox alış-satış başlamaq 1120 01:09:08,109 --> 01:09:11,300 nəticədə bu cədvəl, olduqca böyük almaq niyyətindədir 1121 01:09:11,300 --> 01:09:13,850 və əlbəttə fond ticker, istədiyiniz olacaq. 1122 01:09:13,850 --> 01:09:20,350 Masa, həqiqətən, həqiqətən, böyük bir dəfə, o, artıq axtarış üçün cəhd istifadəçi üçün faydalı ola bilər. 1123 01:09:20,350 --> 01:09:23,290 Mən Disney kimi bir şey yazmağa başlayın əgər axtarış qutusu Inside 1124 01:09:23,290 --> 01:09:26,359 və Mickey Mouse fond axtarır, biz masa indi filtreleme ki bilərsiniz 1125 01:09:26,359 --> 01:09:28,189 Mən daxil tipli dayalı 1126 01:09:28,189 --> 01:09:31,640 Bu işlevsellik super çətin görünür, lakin bu, həqiqətən, həqiqətən, asan 1127 01:09:31,640 --> 01:09:33,859 jQuery və JavaScript ilə. 1128 01:09:33,859 --> 01:09:39,189 Bu portfolio.php fayl portfolio.js adlı JavaScript fayl daxildir. 1129 01:09:39,189 --> 01:09:41,130 In ki, nəzər salaq. 1130 01:09:41,130 --> 01:09:44,890 Belə ki, html, js, portfel. 1131 01:09:44,890 --> 01:09:49,210 Biz masa axtarış bunu edirik burada. 1132 01:09:49,210 --> 01:09:52,750 Mən nə etmək lazımdır ilk şey ki, mətn qutusuna bir hadisə handler əlavə edir 1133 01:09:52,750 --> 01:09:55,760 biz filtreleme funksiyası yanğın istəyirəm bilirik ki, çünki 1134 01:09:55,760 --> 01:09:59,800 hər dəfə istifadəçi presleri bir şey biz Axtar düymələri üçün vaxt yoxdur, çünki. 1135 01:09:59,800 --> 01:10:03,000 Biz nə etmək lazımdır ilk şey, istifadəçi üçün axtarış nə həyata rəqəm edir 1136 01:10:03,000 --> 01:10:04,780 kimi biz əvvəl etdi. 1137 01:10:04,780 --> 01:10:11,320 Bu söz, istifadəçi ilə əlaqə ki, cari element aiddir. 1138 01:10:11,320 --> 01:10:14,070 >> Istifadəçi axtarış qutusu ilə əlaqə Çünki, 1139 01:10:14,070 --> 01:10:17,020 Bu axtarış qutusu təmsil $, 1140 01:10:17,020 --> 01:10:21,820 belə this.val istifadəçi hazırda yazıyor axtarış qutusuna daxilində nə bizə verir. 1141 01:10:22,810 --> 01:10:27,320 Belə ki, indi biz nə etmək istədiklərini biz satır bütün təkrarlamaq istəyirik 1142 01:10:27,320 --> 01:10:29,240 bizim masa daxilində. 1143 01:10:29,240 --> 01:10:35,630 Bizim cədvəldə bütün satırları seçin, mən ki, masa masa portfelinin bir ID verdi 1144 01:10:35,630 --> 01:10:39,060 və hər satır, bir TR element təmsil olunur 1145 01:10:39,060 --> 01:10:42,080 Bu selector mənə böyük array qayıtmaq üçün gedir 1146 01:10:42,080 --> 01:10:44,370 mənim masa bütün satır. 1147 01:10:44,370 --> 01:10:47,010 İndi ki, array üzərində təkrarlamaq istəyirəm. 1148 01:10:47,010 --> 01:10:52,390 Mən loop üçün bir ola bilər, lakin jQuery həqiqətən bizə adlı gözəl funksiyasını təmin "hər". 1149 01:10:52,390 --> 01:10:55,220 Nə hər deyil, hər bir mübahisə edir ki, 1150 01:10:55,220 --> 01:10:57,090 və mübahisə bir funksiyası var. 1151 01:10:57,090 --> 01:11:02,760 Nə etmək olur ki, bu siyahı daxilində hər element üçün funksiyası tətbiq olacaq edir. 1152 01:11:02,760 --> 01:11:05,550 Bu funksiya, e ki, bir arqument edir 1153 01:11:05,550 --> 01:11:10,090 və bu funksiyanı yerinə zaman, bu e, ilk sıraya ilə əvəz edir 1154 01:11:10,090 --> 01:11:12,070 sonra ikinci sırada, sonra üçüncü sırada. 1155 01:11:12,070 --> 01:11:15,150 Bu yolla, bu loop üçün çalışan eyni şey 1156 01:11:15,150 --> 01:11:21,360 və sonra loop üçün göstəricisi daxilində əsasında cari element figuring. 1157 01:11:21,360 --> 01:11:24,750 Hər iteration hazırda masa bu elementlərin hər biri üçün, 1158 01:11:24,750 --> 01:11:30,560 Sıra daxilində hüceyrə mətn - Mən element mətnini yoxlamaq istəyirəm - 1159 01:11:30,560 --> 01:11:33,130 Mən üçün axtarış alıram nə uyğun gəlir. 1160 01:11:33,130 --> 01:11:36,390 Əmrləri Bu böyük uzun string mən bunu necə edir. 1161 01:11:36,390 --> 01:11:40,900 Birincisi, yenidən, bu indi aiddir - bir yeni funksiya daxilində çünki - 1162 01:11:40,900 --> 01:11:45,020 bu artıq masa cari sıra edir. 1163 01:11:45,020 --> 01:11:47,340 Mən masa mövcud sıra almaq istəyirəm 1164 01:11:47,340 --> 01:11:49,950 və mən onun uşaqlar bütün almaq istəyirəm. 1165 01:11:49,950 --> 01:11:51,940 Unutmayın, DOM, bir hiyerarşik ağac 1166 01:11:51,940 --> 01:11:54,200 elementləri uşaqlar bir sıra deməkdir. 1167 01:11:54,200 --> 01:12:00,180 >> Bu. Uşaqlar funksiya mənə bütün öğeleri bir sıra qayıtmaq üçün gedir 1168 01:12:00,180 --> 01:12:03,240 Bu halda, cədvəldə bir sıra, uşaqları var. 1169 01:12:03,240 --> 01:12:07,150 Bu sadəcə sıra daxilində hüceyrələri edir. 1170 01:12:07,150 --> 01:12:09,230 Mən ilk hüceyrə üzərində axtarış etmək istəyirəm. 1171 01:12:09,230 --> 01:12:13,090 Bu. Ilk funksiyası mənə array ilk element vermək deyir. 1172 01:12:13,090 --> 01:12:17,070 Sonra mətn funksiyası ki, hüceyrə daxilində var mənə dəqiq nə deyir 1173 01:12:17,070 --> 01:12:19,530 Hesab edirəm ki, mətn üzərində axtarmaq istəyirsinizsə ildən. 1174 01:12:19,530 --> 01:12:21,040 Nəhayət, nin bu kiçik çevirmək bildirin 1175 01:12:21,040 --> 01:12:23,940 biz mətn halda hissiz sorğu edə bilər. 1176 01:12:23,940 --> 01:12:29,990 Nəhayət, bir masa daxilində ki, simli biz aradığınız string varsa görmək istəyirik. 1177 01:12:29,990 --> 01:12:32,980 JavaScript ildə indexOf funksiyası yalnız edir. 1178 01:12:32,980 --> 01:12:37,060 Bu simli bir string şey və ya bizə deyir. 1179 01:12:37,060 --> 01:12:40,150 Bu mobil mən üçün axtarış alıram nə olan doğru varsa, 1180 01:12:40,150 --> 01:12:42,140 sonra mən bu göstərilir ki, əmin etmək istəyirəm. 1181 01:12:42,140 --> 01:12:45,330 Bu şou metodu "element göstər." Deyəcəklər 1182 01:12:45,330 --> 01:12:50,350 Bu belə deyil, onda ki, mən olan deyil üçün axtarış alıram nə deməkdir 1183 01:12:50,350 --> 01:12:53,550 ki, sıra ərzində, və gizlətmək istəyirsinizsə belə istifadəçi edir. 1184 01:12:53,550 --> 01:12:59,240 Artıq biz bütün cədvələ bax yerləşir ki, gözəl filtreleme effekti verir. 1185 01:12:59,240 --> 01:13:01,480 Yaxşı kimi, bu ticker etmək istəyirsinizsə 1186 01:13:01,480 --> 01:13:04,180 biz online mənbə göndərmək lazımdır. Amma həqiqətən sadə. 1187 01:13:04,180 --> 01:13:09,860 JQuery bu animasiyalar və manipulyasiya CSS xassələri zəhmli metodları var. 1188 01:13:09,860 --> 01:13:11,020 Belə ki, mənə bu. 1189 01:13:11,020 --> 01:13:15,560 >> Hansı sonra irəlidə yalan? Bir neçə gün görəcəksiniz ki, son layihələr təklif bağlıdır. 1190 01:13:15,560 --> 01:13:17,730 Son layihələr təklif, bir neçə sual olacaq 1191 01:13:17,730 --> 01:13:19,420 lakin onların arasında üç mərhələləri olacaq - 1192 01:13:19,420 --> 01:13:22,840 bir "yaxşı" mərhələ, bir yaxşı mərhələ və bir yaxşı. 1193 01:13:22,840 --> 01:13:25,870 Uşaqlar kömək həqiqətən olan fikir sizin gözləntiləri müəyyən 1194 01:13:25,870 --> 01:13:29,160 belə minimal sizin yekun layihə çıxışı ilə xoşbəxt olacaq 1195 01:13:29,160 --> 01:13:32,060 və bu qədər narahat edir kimi "yaxşı" olacaq. 1196 01:13:32,060 --> 01:13:34,540 Amma sonra bir şey üçün bir az olmaq üçün əldə faiz daha yaxşı 1197 01:13:34,540 --> 01:13:37,680 və ya yaxşı bir şey, biz də yaxşı qarşı siz təkan və düzmək lazımdır. 1198 01:13:37,680 --> 01:13:40,660 Bu CS50 Hack-a-Thon, eyni zamanda, bir neçə həftə edir. 1199 01:13:40,660 --> 01:13:44,340 Adətən, çünki maraq lotereya əsasında əsasında bunu, 1200 01:13:44,340 --> 01:13:47,680 lakin odds biz Harvard meydanında olan Otobüs bizə bir neçə yüz almaq lazımdır olunur 1201 01:13:47,680 --> 01:13:51,540 aşağı Microsoft tutarlı "NERD" adlı gözəl harada olduğu Kendall Meydanı - 1202 01:13:51,540 --> 01:13:53,830 Yeni İngiltərə Tədqiqat və İnkişaf Mərkəzi. 1203 01:13:53,830 --> 01:13:56,380 Biz 8 radələrində Biz bəzi ərzaq lazımdır orada almaq lazımdır. 1204 01:13:56,380 --> 01:13:58,160 1 günortaya qədər ətrafında biz bəzi qida lazımdır. 1205 01:13:58,160 --> 01:14:02,150 Around 5 hələ oyaq əgər biz kampus geri IHOP və ya almaq üzərində rəhbərlik lazımdır edirəm. 1206 01:14:02,150 --> 01:14:04,380 Orada məqsədi son layihələrinə dalış etmək 1207 01:14:04,380 --> 01:14:06,190 sinif yoldaşları və personal yanaşı. 1208 01:14:06,190 --> 01:14:08,280 Sonra bir neçə gün sonra CS50 Ədalətli edir 1209 01:14:08,280 --> 01:14:10,990 uşaqlar iş sergilemek üçün olan həqiqətən imkan deməkdir 1210 01:14:10,990 --> 01:14:12,700 dövr və nailiyyətlər 1211 01:14:12,700 --> 01:14:15,610 bir-biri ilə omuz silinən və hər kəs nə hissi əldə edir. 1212 01:14:15,610 --> 01:14:17,850 Bildirib ki, Tommy və Cozef çox thanks, 1213 01:14:17,850 --> 01:14:19,960 və biz Bazar ertəsi görəcəksiniz. 1214 01:14:19,960 --> 01:14:24,070  [Alqış]