1 00:00:00,000 --> 00:00:02,500 [Powered by Google Translate] [Seminario] [Web Development: El Ideo por Efektivigo] 2 00:00:02,500 --> 00:00:04,200 [Ben Kuhn] [Billy Janitsch] [Universitato Harvard] 3 00:00:04,200 --> 00:00:07,250 [Ĉi tiu estas CS50] [CS50.TV] 4 00:00:07,250 --> 00:00:10,840 [Billy] Saluton, mi estas Billy kaj ĉi tiu estas Ben. >> [Ben] Saluton. 5 00:00:10,840 --> 00:00:12,840 Ni iras por paroli pri ttt evoluo hodiaŭ. 6 00:00:12,840 --> 00:00:14,840 [Webdev] [Billy Janitsch kaj Ben Kuhn] 7 00:00:14,840 --> 00:00:16,840 Iom pri ni unue. 8 00:00:16,840 --> 00:00:19,590 Ben estas speco de la dorso-fino ulo. Li faras tion labori. 9 00:00:19,590 --> 00:00:21,870 Kaj poste mi iros kaj faros ilin belaj. 10 00:00:21,870 --> 00:00:26,610 Mi estas grandparte implikita kun pli front-end aranĝo dezajno speco de ŝtofo, 11 00:00:26,610 --> 00:00:31,260 Kaj Ben, aliflanke, ĝi scias kion faras tia li laboras sur dorso-fino vazaro. 12 00:00:31,260 --> 00:00:34,050 Kune ni faris kelkajn aferojn. 13 00:00:34,050 --> 00:00:38,710 Ekzemple, pasintjare ni laboris sur Gimblium kiu estas interreta ludo evoluo studio. 14 00:00:38,710 --> 00:00:40,400 Tio estis nia lasta projekto por la klaso, 15 00:00:40,400 --> 00:00:42,780 kaj ekde tiam ni jam faris Harvard Klaso 16 00:00:42,780 --> 00:00:47,860 kio estas reta kadro por foliumi kaj aĉeti kursoj ĉe Harvard. 17 00:00:47,860 --> 00:00:53,180 >> Ni tuj komenci kun tiu ideo por nia retejo. 18 00:00:53,180 --> 00:00:57,480 Ni tuj faros Facebook, sed por katoj. 19 00:00:57,480 --> 00:00:59,520 Antaŭ vi reale fari ĉi tiu retejo, 20 00:00:59,520 --> 00:01:02,520 ne faras ĉi tiun retejon ĉar ĝi ne estas bona, sed ni uzos ĝin kiel kadro 21 00:01:02,520 --> 00:01:05,349 kaj trairu la procezo de kiel ni prenu tiun ideon 22 00:01:05,349 --> 00:01:07,450 kaj igi ĝin vera retejon ni povas uzi. 23 00:01:07,450 --> 00:01:11,940 Ni komencu per rompanta la retejo malsupren. 24 00:01:11,940 --> 00:01:13,190 Kiel vi estis faranta en CS50, 25 00:01:13,190 --> 00:01:17,360 vi volas pensi pri kio estas la efektiva komponantoj kiuj iros al tiu retejo. 26 00:01:17,360 --> 00:01:21,290 Esence turnante gxin de ideo, kiu estas ĝuste ia abstrakta koncepto 27 00:01:21,290 --> 00:01:23,590 en la reala, palpebla, kion vi povis fari. 28 00:01:23,590 --> 00:01:25,910 Ni komencu per demandante iujn demandojn. 29 00:01:25,910 --> 00:01:28,070 Kio estas ĉi paĝo? Kial ni faras ĝin? 30 00:01:28,070 --> 00:01:30,670 Kio estas ĝi tuj estu uzata por? Ke tia afero. 31 00:01:30,670 --> 00:01:33,660 En la kazo de Facebook Kato, 32 00:01:33,660 --> 00:01:37,730 ni esence volas retejo kiu ebligas katoj socia reto kun ĉiu alia. 33 00:01:37,730 --> 00:01:41,260 La ideo estas ke oni povas sendi en alies muroj, 34 00:01:41,260 --> 00:01:43,510 Ili povas fari komentojn, ke tiaj aferoj. 35 00:01:43,510 --> 00:01:46,720 Kaj tio estas kie ni venos en la funkciaj komponantoj. 36 00:01:46,720 --> 00:01:51,270 Ni nun havas tian kadro de - ni havas uzanto profiloj, 37 00:01:51,270 --> 00:01:53,990 ni havos komentojn, kaj ni povos sendi. 38 00:01:53,990 --> 00:01:57,390 Eble iam ni influa homo kaj tiajn aferojn. 39 00:01:57,390 --> 00:02:00,410 Kaj ni ia volas primar tiujn trajtojn irante in 40 00:02:00,410 --> 00:02:03,340 Ni volas diri kiel, bone, tio estas vere grava, ke ĉiuj havas profilon 41 00:02:03,340 --> 00:02:06,440 kaj ke ĉiu povas afiŝi en alies muroj. 42 00:02:06,440 --> 00:02:08,509 Malĉefa al tiu, komentojn estus agrabla. 43 00:02:08,509 --> 00:02:10,180 Eble poste ni influa homo. 44 00:02:10,180 --> 00:02:13,700 Do, vi volas havi ideon pri kio estas nepre necesa por via projekto 45 00:02:13,700 --> 00:02:17,260 kaj kio estas speco de pli ĝenerala trajto kiu povus esti aplikata poste. 46 00:02:17,260 --> 00:02:20,870 Vi volas ian havas specifan listo en menso, 47 00:02:20,870 --> 00:02:24,090 sed la projekto ke vi komencu per ne tuj estos la projekton ke vi finas kun. 48 00:02:24,090 --> 00:02:27,100 En aliaj vortoj, tion tuj ŝanĝos dum vi evoluantaj la lokon, 49 00:02:27,100 --> 00:02:30,090 kaj vi volas lasi spacon por tio. 50 00:02:30,090 --> 00:02:34,470 Mi igos ĝin al Ben, kiuj tuj paroli iomete pri la strukturo. 51 00:02:34,470 --> 00:02:39,610 >> [Ben] Mi iras por paroli pri la pli teknika flanko de ttt evoluo. 52 00:02:39,610 --> 00:02:42,370 Ni simple iru super iu basics unue. 53 00:02:42,370 --> 00:02:45,730 Kiam vi faras retejo app, 54 00:02:45,730 --> 00:02:50,470 la ĉefa divido ke vi tuj devas havi estas 55 00:02:50,470 --> 00:02:52,700 Vi tuj havos kelkajn necesajxojn okazanta en kliento flanko - 56 00:02:52,700 --> 00:02:56,700 tio estas, la kodo kiun vi estas retumilo prenas de la retejo 57 00:02:56,700 --> 00:03:01,910 kaj la Javascript, HTML, CSS vazaro. 58 00:03:01,910 --> 00:03:04,490 Jen ĉio pri la kliento flanko. 59 00:03:04,490 --> 00:03:08,680 Vi tuj havos aliajn kodon kiu funkcias sur la servilo 60 00:03:08,680 --> 00:03:10,770 kiuj subtenas spuro de ĉiuj datumoj, ke homoj sendu al vi, 61 00:03:10,770 --> 00:03:15,060 decidu kiu donos kio, da tio. 62 00:03:15,060 --> 00:03:20,380 Ĉi tio estas nur iuj terminaro por ke vi uloj estas ĉiuj familiara kun kio ni parolas. 63 00:03:20,380 --> 00:03:28,600 Preter tio divido estas bone pensi pri via ttt app en terminoj de 64 00:03:28,600 --> 00:03:32,500 paro de klaraj komponantoj. 65 00:03:32,500 --> 00:03:35,270 Kiam vi faras ttt evoluo 66 00:03:35,270 --> 00:03:41,710 unu el la aferoj, kiujn vi devus ĉiam provi fari estas redukti kompleksecon. 67 00:03:41,710 --> 00:03:45,710 Ju pli kompleksa via kodo estas la pli ŝancon tie estas fari cimojn, 68 00:03:45,710 --> 00:03:47,710 la malfacila ĝi estas ŝanĝi poste. 69 00:03:47,710 --> 00:03:50,140 Do, se vi povas disrompi vian app en kelkaj distingaj funkcia areoj 70 00:03:50,140 --> 00:03:57,640 kiuj volas - kaj vi povas malpliigi la varon de kvanto de kruco-spaco komunikado - 71 00:03:57,640 --> 00:04:03,530 kiuj helpos vin tre longtempe en terminoj de reduktanta cimojn. 72 00:04:03,530 --> 00:04:07,950 >> Por esti konkreta, kutime homoj disdividi retejo app en - 73 00:04:07,950 --> 00:04:13,190 jen estas ia zumado vortoj nun, sed ili estas ankoraŭ utila. 74 00:04:13,190 --> 00:04:17,940 Vi eble aŭdis homojn paroli pri modeloj, vidoj, kaj regiloj. 75 00:04:17,940 --> 00:04:23,210 Modeloj estas la realaj datumoj ke via app tuj pritrakti. 76 00:04:23,210 --> 00:04:28,260 Por ekzemplo, en viaj Kato Facebook, viaj modeloj estus - 77 00:04:28,260 --> 00:04:35,340 Vi ŝatus havi modelon por kiel afiŝojn, kaj modelo por uzanto profiloj, da tio. 78 00:04:35,340 --> 00:04:41,090 Viaj opinioj estas kiel vi prezentu tiu datumo por viaj uzantoj. 79 00:04:41,090 --> 00:04:46,660 Vi eble havas 1 vidon por rigardi sola fosto kaj cxiuj komentoj 80 00:04:46,660 --> 00:04:51,720 kaj malsaman vidpunkton pri via muro kiu havas liston de ĉiuj afiŝoj 81 00:04:51,720 --> 00:04:57,170 ke estas direktitaj al vi, kaj malsama vido por via novaĵo-servo - necesajxojn kiel tio. 82 00:04:57,170 --> 00:05:00,610 Fine, vi havos la regiloj kiuj estas esence kiam homoj sendas vin afiŝojn 83 00:05:00,610 --> 00:05:03,310 kaj vi faros ĝisdatigoj por via dorso-fino sistemo, 84 00:05:03,310 --> 00:05:06,400 vi pliigo faskon da vendotabloj, kaj kio ajn. 85 00:05:06,400 --> 00:05:07,860 Tiuj estas viaj regiloj. 86 00:05:07,860 --> 00:05:11,030 >> Mi iras por paroli plejparte pri modeloj. 87 00:05:11,030 --> 00:05:14,030 Vidoj estas teknike ne tiu malfacila kaj la temo estas pli kun desegni ilin 88 00:05:14,030 --> 00:05:22,040 Regiloj tuj estu specifaj al kiom vi desegnante. 89 00:05:22,040 --> 00:05:25,220 Sed estas iu bela ĝeneralaj teknikoj oni povas uzi 90 00:05:25,220 --> 00:05:30,220 fari viajn modelojn pli agrabla kaj pli facile labori kun tiu mi pensas estas tre helpema. 91 00:05:30,220 --> 00:05:35,860 Tio estas plejparte tuj estos pri kiel trakti kun via retejo apps datumoj en bela vojo. 92 00:05:35,860 --> 00:05:40,420 La ĉefaj temoj kun modeloj 93 00:05:40,420 --> 00:05:44,540 estas ke ili vivas sur la kliento kaj la servilo kaj vi devas diveni 94 00:05:44,540 --> 00:05:51,170 a) kiel akiri ilin - ĉiuj gravaj aĵoj - de la servilo al la kliento, 95 00:05:51,170 --> 00:05:53,440 kaj b) kiel gardi ilin en sync. 96 00:05:53,440 --> 00:05:58,700 Viaj uzantoj tuj volas fari iujn ĝisdatigoj. 97 00:05:58,700 --> 00:06:00,470 Ili tuj volas fari novajn afiŝojn. 98 00:06:00,470 --> 00:06:04,800 Ili tuj volas ŝatas tion kaj Okaze se vi havas gustojn. 99 00:06:04,800 --> 00:06:11,490 Tiuj estas la ĉefaj teknikaj defioj de kontraktanta kun modeloj. 100 00:06:11,490 --> 00:06:15,680 La unua afero, kiun vi tuj volas demandi vin mem estas 101 00:06:15,680 --> 00:06:18,420 kia datumoj iras en tiun modelon kaj kia pridemandojn ni tuj volas fari - 102 00:06:18,420 --> 00:06:24,290 tio estas, kiel ni tuj rigardi la modeloj? 103 00:06:24,290 --> 00:06:26,940 Por viaj Kato Facebook ekzemplo, 104 00:06:26,940 --> 00:06:31,520 via afisxo tuj havos aŭtoro asociita kun ĝi, 105 00:06:31,520 --> 00:06:35,660 iu muro tekston, kaj ricevanto de la muro post. 106 00:06:35,660 --> 00:06:38,470 Kaj tiam vi eble volas demandi ke en faskon de malsamaj manieroj. 107 00:06:38,470 --> 00:06:42,220 Vi volus rigardi ĝin per kiu verkis kion post, 108 00:06:42,220 --> 00:06:46,620 per kiu ricevis kiu sendi, eble laŭ la dato ili estis eldonita. 109 00:06:46,620 --> 00:06:50,340 Sed se vi faros tion laŭ dato, tiam vi devas aldoni alian kampon por via afisxo 110 00:06:50,340 --> 00:06:52,490 de kiam ĝi estis reale afiŝis. 111 00:06:52,490 --> 00:07:00,220 Tiuj 2 faktoroj - kion datumoj vi volas uzi kaj kiom vi volas rigardi ĝin - 112 00:07:00,220 --> 00:07:04,200 vi devus pensi pri ili unue ĉar ili dependas de ĉiu alia, 113 00:07:04,200 --> 00:07:08,030 kaj gxi tuj estos pli malfacila por aldoni ilin poste. 114 00:07:08,030 --> 00:07:12,750 >> Ekzistas kelkaj aliaj konsideroj. 115 00:07:12,750 --> 00:07:17,540 Kiam vi pensas pri tio, kiel vi agas kun modeloj en la servilo 116 00:07:17,540 --> 00:07:20,540 kion vi volas rigardi estas - 117 00:07:20,540 --> 00:07:27,440 vi esence volas fari la servilon tiel simpla kiel ebla. 118 00:07:29,440 --> 00:07:35,500 Farante necesajxojn sur la kliento flanko estas ĝenerale multe pli rapide, se vi povas fari ĝin pure en la kliento 119 00:07:35,500 --> 00:07:38,230 sen fari ian reton peton. 120 00:07:38,230 --> 00:07:47,860 La ideo estas fari kiel multaj el la pridemandojn kiel vi povas sur la kliento. 121 00:07:47,860 --> 00:07:51,560 La sola problemo pri tio 122 00:07:51,560 --> 00:07:54,160 estas ke, se vi petos ĉiuj viajn datumojn al la komenco 123 00:07:54,160 --> 00:07:57,160 tiam, ke tuj prenas longan tempon ŝarĝi. 124 00:07:57,160 --> 00:08:02,290 Do, la ideo estas bati feliĉa mezaj inter havi sufiĉe da datumoj en la kliento 125 00:08:02,290 --> 00:08:07,640 ke vi povas fari plimulton de via laboro tie sed ne nur ricevado ĉio samtempe 126 00:08:07,640 --> 00:08:09,710 tiel ke vi ricevas vere malrapida ŝarĝo fojojn en la komenco. 127 00:08:09,710 --> 00:08:12,610 Ekzemple, por via kato datumoj 128 00:08:12,610 --> 00:08:20,340 vi verŝajne volas venigi faskon da freŝaj muro afiŝoj. 129 00:08:20,340 --> 00:08:23,790 Vi ne volas venigi ĉiuj el ili ĉar tio povus reiri paro da jaroj. 130 00:08:23,790 --> 00:08:25,470 Sed vi ne volas venigi ilin unuope 131 00:08:25,470 --> 00:08:28,740 ĉar tio estus enkonduki multajn reto superkape. 132 00:08:28,740 --> 00:08:33,620 >> Ĝi estas ofte tre malfacile - kiam vi havas datumbazon kurado - 133 00:08:33,620 --> 00:08:37,210 ĝi estas ofte sufiĉe malfacile ŝanĝi kion datumoj vi havas en ĝi - 134 00:08:37,210 --> 00:08:40,510 te aldoni novan datumbazon kolumno aŭ io - 135 00:08:40,510 --> 00:08:43,510 tial unu bona strategio estas fakte ĝuste teni multajn viajn datumojn en teksto blob - 136 00:08:43,510 --> 00:08:53,880 a JSON blob - JSON esti JavaScript Objekto Skribmaniero - 137 00:08:53,880 --> 00:08:58,330 La kialo, ke estas utile estas ĉar tiam vi povas aldoni novajn propraĵoj 138 00:08:58,330 --> 00:09:01,920 al ĉiu el tiuj JSON _blobs_ sen ŝanĝi vian datumbazon. 139 00:09:01,920 --> 00:09:06,860 La sola malavantaĝo al tio estas ke, se vi havas faskon da kampoj 140 00:09:06,860 --> 00:09:09,890 ke vi aldonis poste - kiel kaŝita en tiu JSON blob - 141 00:09:09,890 --> 00:09:12,850 tiam ĝi estas pli malfacila por konsulti ilin ene de la datumbazo. 142 00:09:12,850 --> 00:09:17,690 Ekzemple, se vi poste - se vi havis vian postenon modelo kiun ni diskutis pli frua 143 00:09:17,690 --> 00:09:25,380 kun nur la aŭtoro, la ricevanto kaj de la teksto - 144 00:09:25,380 --> 00:09:29,000 vi povus havi ankaŭ JSON blob kaj poste, se vi poste volas aldoni iun daton kampo 145 00:09:29,000 --> 00:09:31,000 vi ne devus ŝanĝi vian datumbazon. 146 00:09:31,000 --> 00:09:36,140 Vi povus simple aldoni datojn al ĉiuj de la teksto kampoj. 147 00:09:36,140 --> 00:09:39,640 Kaj tiam vi povos rigardi tiujn sur la kliento flanko 148 00:09:39,640 --> 00:09:42,430 sed vi ne povos konsulti ilin sur la servilo 149 00:09:42,430 --> 00:09:44,430 ĉar ĝi estas kaŝita en tiu teksto. 150 00:09:44,430 --> 00:09:49,920 >> La alia afero ke vi volas pensi pri 151 00:09:49,920 --> 00:09:52,400 estas kiel via kliento kaj la servilo tuj komuniki. 152 00:09:52,400 --> 00:09:56,040 Vi kutime deziras teni ĉi tiel simpla kiel ebla. 153 00:09:56,040 --> 00:10:02,230 Vi povas nur devas kiel get-min-ĉi datumoj peton, 154 00:10:02,230 --> 00:10:09,140 oni kreos-a-nova-objekto ion kaj ĝisdatigon-an-malnova-objekto peton. 155 00:10:09,140 --> 00:10:12,930 Kaj ĉi tiuj ĉiuj estas malsamaj URLoj en servanto, ke vi - 156 00:10:12,930 --> 00:10:20,030 ke la retumilo havus - vi povas uzi AJAX petoj por ĉiuj el tiuj 157 00:10:20,030 --> 00:10:24,000 kaj ĉu ricevi aŭ post datumojn. 158 00:10:24,000 --> 00:10:26,600 Denove, por nia kato Facebook ekzemplo, 159 00:10:26,600 --> 00:10:32,350 vi povus havi tiun URL por akiri individuan post, 160 00:10:32,350 --> 00:10:39,750 kaj vi havus la URL por kreado de nova muro post 161 00:10:39,750 --> 00:10:45,670 kaj eble la URL por alŝuti vian profilon bildo, da tio. 162 00:10:45,670 --> 00:10:51,730 Sed denove, tio estas al la antaŭ-fetch plejparto de viaj datumoj por ke vi ne devas teni 163 00:10:51,730 --> 00:10:53,360 farante reto petojn. 164 00:10:53,360 --> 00:10:59,030 Por tiu kialo, eble vi ne volas havi tiun individuon get peto por unu posteno, 165 00:10:59,030 --> 00:11:03,210 kaj anstataŭ vi volas nur 1 get peto por la tuta muro. 166 00:11:03,210 --> 00:11:06,110 Kaj tiam se vi provas trovi ekvilibron ĉar - 167 00:11:06,110 --> 00:11:10,970 tio estas ankaŭ tuj dependos en via kandidatiĝo. 168 00:11:10,970 --> 00:11:13,430 Ĉar se vi esperas, ke homoj nur havas 10 aŭ 20 muro afiŝojn 169 00:11:13,430 --> 00:11:15,430 ke estos bone. 170 00:11:15,430 --> 00:11:17,390 Sed se vi atendis ili devos miloj tiam tiu peto prenus tro longa, 171 00:11:17,390 --> 00:11:23,580 kaj tiel vi eble volas aldoni get-tuta-afiŝojn-ekde parametro. 172 00:11:23,580 --> 00:11:26,580 >> Por ĉiu el tiuj vi probable tuj volas sinkronigi viajn datumojn en JSON - 173 00:11:26,580 --> 00:11:29,260 Javascript Objekto Skribmaniero. 174 00:11:29,260 --> 00:11:34,600 Sufiĉe da ĉiu lingvo traktas JSON tre bone. 175 00:11:34,600 --> 00:11:40,880 JQuery havas ĉi belan getJSON funkcio kiu faros ĉion de la laboremo por vi. 176 00:11:40,880 --> 00:11:47,390 Kaj en PHP-tie estas ankaŭ tre belaj JSON komunikado funkcioj. 177 00:11:47,390 --> 00:11:52,660 Do, tio estas probable la plej bona formato por sendi viajn modelojn tien kaj reen. 178 00:11:52,660 --> 00:11:56,570 >> Kiel ekzemplon de tio, kion ni parolis ĝis nun, 179 00:11:56,570 --> 00:12:00,520 jen ekzemplo fluo por via kato Facebook apliko. 180 00:12:00,520 --> 00:12:07,760 Ĝi startas for kun via retumilo petante la bazo retejo URL. 181 00:12:07,760 --> 00:12:15,470 La servilo eble sendus super statika HTML kaj iuj JavaScript kaj CSS. 182 00:12:15,470 --> 00:12:19,170 Ĝi estas kutime pli bone ne fari ajnan bildigo sur la servilo. 183 00:12:19,170 --> 00:12:23,370 Vi probable ne volas - 184 00:12:23,370 --> 00:12:28,360 kion la servilo ne faras tie iras malsupren en la listo de muro afiŝojn 185 00:12:28,360 --> 00:12:31,120 kaj generante iuj HTML por ĉiu kaj sendante ke super. 186 00:12:31,120 --> 00:12:34,960 Ĝi estas kutime bona por fari tion en la kliento flanko ĉar alie 187 00:12:34,960 --> 00:12:38,580 ĉiufoje kiam vi volas re-cxerpi ion, vi devas fari servilo peton. 188 00:12:38,580 --> 00:12:42,450 Kaj tio tre rapide donas al vi multan superkape. 189 00:12:42,450 --> 00:12:47,430 Ĝi estas kutime bona nur por ŝipon sendas malsupren statika HTML 190 00:12:47,430 --> 00:12:50,660 kaj tiam JavaScript kaj CSS kiuj faros la desegnadon en la kliento flanko. 191 00:12:50,660 --> 00:12:56,750 Apenaŭ Okaze venos, 192 00:12:56,750 --> 00:13:03,500 tiam vi povas havi - en JavaScript - vi povas fari petojn por la murego datumoj 193 00:13:03,500 --> 00:13:08,740 kaj da tio, kaj post ke la servilo estas esence nur faras datumbazo pridemandojn 194 00:13:08,740 --> 00:13:10,740 kaj kontrolinte permesojn. 195 00:13:10,740 --> 00:13:16,690 La sola grava afero estas, ke gxi ne povas sendi pli ol kelkaj aliaj uzantoj muro afiŝojn 196 00:13:16,690 --> 00:13:19,220 ke vi ne permesis vidi. 197 00:13:19,220 --> 00:13:28,050 Ĝi povas esence esti tre maldika tavolo aliro al via datumbazo, 198 00:13:28,050 --> 00:13:32,820 kaj tiam ĉiuj el la montrante la datumoj - ĉiuj el la vidpunktoj kaj aĵoj - 199 00:13:32,820 --> 00:13:37,280 tiuj povas okazi en via retumilo, kaj tiam, kiam vi volas fari fosto aŭ io 200 00:13:37,280 --> 00:13:40,000 vi simple sendu alian peton. 201 00:13:40,000 --> 00:13:45,350 >> Ekzistas ankaux iom da fantazio stuff vi povas fari sur supro de ĉi. 202 00:13:45,350 --> 00:13:49,550 En terminoj de pli specifaj teknikaj informoj, 203 00:13:49,550 --> 00:13:53,360 evoluantaj en ebenaĵo JavaScript povas esti iomete dolora, 204 00:13:53,360 --> 00:13:56,220 tial estas kelkaj bibliotekoj kaj iloj, kiuj helpos al vi multon kun tio. 205 00:13:56,220 --> 00:14:03,690 Mi kredas ke vi jam ĉiuj probable aŭdis pri jQuery kion faras faras HTML desegnadon 206 00:14:03,690 --> 00:14:08,890 kaj manipulado multe pli facile - ili havas multajn fantazio funkcioj por malapero kaj eliros, 207 00:14:08,890 --> 00:14:12,020 kaj farante Zippy kuraĝigoj. 208 00:14:12,020 --> 00:14:13,720 Ekzistas ankaŭ tiun bibliotekon nomitan Underscore.js. 209 00:14:13,720 --> 00:14:20,760 Ĝi havas multe da utilaj utileco funkcioj, stuff, ke vi devus atendi JavaScript por havi 210 00:14:20,760 --> 00:14:24,740 ke tio vere doesn't - aĵoj kiel barajar tabelo, 211 00:14:24,740 --> 00:14:28,900 forigo duobligitaj el listo, aŭ ebenigo listo de listoj. 212 00:14:28,900 --> 00:14:30,900 Ĉi tio estas nur malgranda kodo specimeno. 213 00:14:30,900 --> 00:14:36,520 Substreko havas ton de tiuj agrablaj funkciojn kiuj vi deziras, ke vi havus la tutan tempon. 214 00:14:36,520 --> 00:14:38,840 >> Kaj tiam tie estas ankoraŭ 1 biblioteko kiu mi ŝatus pasigi iomete da tempo sur 215 00:14:38,840 --> 00:14:44,800 vokis Backbone.js ĉar Backbone vere helpas vin trakti kun modeloj en la kliento flanko 216 00:14:44,800 --> 00:14:47,210 kaj multajn el la konfuzo ke ĝi povas kaŭzi. 217 00:14:47,210 --> 00:14:53,550 Backbone donas al vi tiun koncepton de modeloj kaj kolektoj 218 00:14:53,550 --> 00:14:58,300 en JavaScript kiuj estas esence tute same kiel JavaScript objektoj 219 00:14:58,300 --> 00:15:04,900 en JavaScript arrays sed ili havas eventojn kiam vi ŝanĝos iliajn ecojn. 220 00:15:04,900 --> 00:15:09,090 Same kiel en JavaScript, vi povas havi okazaĵon kiam butono gets klakis aŭ io 221 00:15:09,090 --> 00:15:14,800 tiuj Backbone modeloj kaj Backbone kolektojn elsendos aĵojn kiel 222 00:15:14,800 --> 00:15:17,510 ke kiam ili ŝanĝiĝos. 223 00:15:17,510 --> 00:15:22,270 Tio signifas ke vi povas nur skribi ion kiel tiu cxi de kodo tie - 224 00:15:22,270 --> 00:15:27,530 tio diras, kiam vi aldonas ion al la afiŝojn tabelo vi redesegni la tuta muro. 225 00:15:27,530 --> 00:15:34,270 Kaj tion dirus kiam post la numero de homo ŝanĝas, 226 00:15:34,270 --> 00:15:38,970 vi informas la uzanton ke iu ŝatis sian postenon. 227 00:15:38,970 --> 00:15:45,210 Aŭ kiam ajn iu propraĵo de fosto ŝanĝas vi redesegni la fosto. 228 00:15:45,210 --> 00:15:51,050 Stuff kiel kiu savos vin tunojn da komplekseco ĉar alie 229 00:15:51,050 --> 00:15:55,440 se vi ne havas iun kadron kiel ĉi tiam ĉiufoje en via kodo, ke vi ŝanĝu 230 00:15:55,440 --> 00:16:04,280 ion pri fosto, vi devus memori mem nomi cxiujn redonu funkcioj 231 00:16:04,280 --> 00:16:07,680 kaj da tio, kaj se vi volis aldoni ion novan, ke okazis 232 00:16:07,680 --> 00:16:10,680 ĉiufoje kiam vi modifita post vi devus iri tra cxiu loko en via 233 00:16:10,680 --> 00:16:14,610 kodo kiun vi modifita fosto kaj aldonu ke ion novan. 234 00:16:14,610 --> 00:16:21,450 Ablono ŝatas ĉi forigos multon de tiu inter-tavolo komunikado 235 00:16:21,450 --> 00:16:28,280 kiu faras via kodo kompleksa kaj malfacile subteni. 236 00:16:28,280 --> 00:16:31,170 >> Estas iomete pri opinioj same. 237 00:16:31,170 --> 00:16:35,960 Mi tuj forlasi plejparto de ĉi Billy ĉar ili estas teknike ne tre malfacila. 238 00:16:35,960 --> 00:16:43,540 Uzu jQuery pro viaj opinioj. Ĝi estas preskaŭ kiel neceso je ĉi tiu punkto. 239 00:16:43,540 --> 00:16:46,290 Ĝi simple faras ĉiun tiom pli facile. 240 00:16:46,290 --> 00:16:48,290 Ekzistas multe da bibliotekoj. 241 00:16:48,290 --> 00:16:49,970 Se vi estus komplika uzanto-interfacon elementoj, 242 00:16:49,970 --> 00:16:57,250 se vi volas automobil-pleneco aĵo aŭ egala al iu el tiuj fantazio mult-selectores - 243 00:16:57,250 --> 00:17:04,790 se vi volas ion kiel tion, vi devus probable simple serĉu ĉirkaŭe 244 00:17:04,790 --> 00:17:08,130 kaj vi povas trovi bonan bibliotekon kiu faros kion vi volas. 245 00:17:08,130 --> 00:17:11,579 Billy klarigos pli pri la reale malfacilaj partoj de opinioj. 246 00:17:11,579 --> 00:17:17,530 Ankaŭ, kiel flanka noto, Backbone havas iujn funcionalidad por fari vidpunktoj komuniki 247 00:17:17,530 --> 00:17:22,800 bele kun modeloj - rigardas la dokumentadon por ĉiuj el tiuj bibliotekoj, fakte. 248 00:17:22,800 --> 00:17:28,270 Nur rigardu la dokumentojn. Ili estas tre bone skribita kaj facila por sekvi. 249 00:17:28,270 --> 00:17:33,890 Ĝenerale, oni povas sufiĉe tre simple Google, se vi havos problemojn. 250 00:17:33,890 --> 00:17:36,370 Ekzistas multe da homoj uzas ilin. 251 00:17:36,370 --> 00:17:42,020 Mi pensas ĉi tiu estas kiel fina noto. 252 00:17:42,020 --> 00:17:48,770 >> Ekzistas ankaux iom pli progresinta, kiu vi povas fari 253 00:17:48,770 --> 00:17:53,400 se vi serĉas por fari vian ttt app ekstra timinda. 254 00:17:53,400 --> 00:17:59,760 Vi povas fari - la nova HTML5 specifo havas multan imago tion vi povas fari. 255 00:17:59,760 --> 00:18:05,780 Loka stokado - kiu estas vi povas stoki datumoj en la foliumilo - 256 00:18:05,780 --> 00:18:09,470 prefere ol devi reiri kaj peruse la servilo pro ĉio, 257 00:18:09,470 --> 00:18:12,470 vi povas konservi iom da ĝi sur la kliento kaj ke eĉ permesas homojn - 258 00:18:12,470 --> 00:18:20,850 en kelkaj kazoj tio povas eĉ lasos vin uzi la retpaĝon senkonekta. 259 00:18:20,850 --> 00:18:26,980 Tie estas tiu afero nomata websockets kiu estas malsama speco de reto komunikado 260 00:18:26,980 --> 00:18:30,930 kie anstataŭ ĝuste vin fari unu peto, vi ricevas respondon kaj vi faris, 261 00:18:30,930 --> 00:18:35,240 vi gardos malfermi konektiĝi al la servilo kaj tiel vi povas fari tion kiel 262 00:18:35,240 --> 00:18:37,240 reala tempo ĝisdatigoj. 263 00:18:37,240 --> 00:18:42,020 Do, se vi provis fari babilejon app, vi povus uzi websockets 264 00:18:42,020 --> 00:18:43,790 komuniki tien kaj reen por ke vi ne devus konservi petante, 265 00:18:43,790 --> 00:18:48,410 "Ho, servilo, cxu iu sendis al mi babilejo?" ĉiu 10 sekundoj aux io. 266 00:18:48,410 --> 00:18:55,620 Estas ankaŭ interesa HTML5 trajto, kie vi povas fari gxin rigardi kiel 267 00:18:55,620 --> 00:18:58,340 la adreso de la paĝo ŝanĝas sen iam devi reale reŝargi ĝin. 268 00:18:58,340 --> 00:19:03,230 Vi povas uzi reen kaj plusendu butonoj sen fari faskon de reto petojn. 269 00:19:03,230 --> 00:19:14,660 Stuff kiel tio estas vere utila en terminoj de farante ĝi speedy sed ankaŭ funkcias kiel ttt app devus. 270 00:19:14,660 --> 00:19:17,680 >> Ekzistas ankaŭ jenon nomata CoffeeScript. 271 00:19:17,680 --> 00:19:24,450 CoffeeScript estas malsama lingvo, efektive, kiu kompilas malsupren al JavaScript. 272 00:19:24,450 --> 00:19:30,080 Vi skribus vian tutan kodon en CoffeeScript, kaj tiam vi kuros ĉi-tradukilo, 273 00:19:30,080 --> 00:19:33,300 kaj ĝi sputas el JavaScript-dosiero, kiun vi povas inkludi en vian retpaĝon. 274 00:19:33,300 --> 00:19:38,860 La kialo ke CoffeeScript estas bela estas ĉar ĝi liveras de multa el la 275 00:19:38,860 --> 00:19:44,760 weird kazoj tiu JavaScript havas kie egalas egaluloj, 276 00:19:44,760 --> 00:19:51,130 kaj egalas egaluloj fari malsamajn aĵojn, aŭ ŝatus - 277 00:19:51,130 --> 00:19:55,740 ĝi havas pli agrablan sintakson por kontraktanta kun arrays kaj funkcioj. 278 00:19:55,740 --> 00:20:00,460 Tiu estas iom fragmento de CoffeeScript kiu produktas liston de ĉiuj kvadratoj 279 00:20:00,460 --> 00:20:04,900 el 10 ^ 2 al 1 ^ 2 en inversa ordo. 280 00:20:04,900 --> 00:20:08,410 Kiel vi povas vidi, CoffeeScript ofte ebligas esprimi en 1 linio 281 00:20:08,410 --> 00:20:10,890 kio prenus 5 linioj de JavaScript. 282 00:20:10,890 --> 00:20:13,230 Ĝi povas fari aferojn multe pli facila. 283 00:20:13,230 --> 00:20:15,390 Estas iom da nova sintakso por lerni unue, 284 00:20:15,390 --> 00:20:18,010 sed certe faros vin pli produktivaj en la longa. 285 00:20:18,010 --> 00:20:22,050 >> Vi povas ankaŭ uzi aliajn lingvojn en la servilo ol PHP - 286 00:20:22,050 --> 00:20:27,570 lingvoj kiel Ruby, Python, aŭ tie estas eĉ projekton nomitan node.js 287 00:20:27,570 --> 00:20:31,450 ke lasos vin uzi Ĝavaskripton en la servilo. 288 00:20:31,450 --> 00:20:34,700 Persone, mi vere, vere malamas PHP. 289 00:20:34,700 --> 00:20:38,310 Mi simple ne ĝuas laboris kun ĝi. 290 00:20:38,310 --> 00:20:43,450 Se vi ankaŭ opinias, ke ĝi estas terura cluge de lingvo, 291 00:20:43,450 --> 00:20:46,160 tiam vi povas uzi unu el tiuj anstataŭe. 292 00:20:46,160 --> 00:20:54,780 Ĝenerale, se vi volas fari ion, kaj vi ne vere scias kiel vi farus tion, 293 00:20:54,780 --> 00:20:56,780 nur pristudi la interreto. 294 00:20:56,780 --> 00:20:59,990 Esas tunoj kaj tunoj da rimedoj speciale je - 295 00:20:59,990 --> 00:21:03,260 StackOverflow estas granda. 296 00:21:03,260 --> 00:21:06,400 Ĝi estas paĝaro, kie programistoj petas reciproke demandoj. 297 00:21:06,400 --> 00:21:09,690 Vi povus kuri en ĝin, se vi havas problemojn je CS50 problemo aroj. 298 00:21:09,690 --> 00:21:16,820 Kaj ekzistas tunoj da bibliotekoj por fari preskaŭ ĉion, kion vi volus. 299 00:21:16,820 --> 00:21:21,710 Se vi volas fari ion, kaj vi ne scias kiel fari ĝin, 300 00:21:21,710 --> 00:21:23,710 se vi ne supozas ke ĝi estas neebla. 301 00:21:23,710 --> 00:21:26,160 Nur rigardu ĉirkaŭe kaj vi eble trovos kelkajn bonajn rimedojn. 302 00:21:26,160 --> 00:21:29,280 >> Kiel ĝenerala wrap supren, 303 00:21:29,280 --> 00:21:33,650 la ĉefa takeaways estas konservi aferojn simplajn. 304 00:21:33,650 --> 00:21:36,010 Ju pli kompleksa via kodo estas je la komenco 305 00:21:36,010 --> 00:21:40,370 kaj ju pli vi provu kaj faru fantazio stuff, 306 00:21:40,370 --> 00:21:43,300 la jam ne prenos por akiri ion vere funkcian 307 00:21:43,300 --> 00:21:46,480 kaj la pli malfacila estos ŝanĝi poste. 308 00:21:46,480 --> 00:21:49,580 Do, faru tion, la mutaj, facila vojo antauxe. 309 00:21:49,580 --> 00:21:51,720 Iri kune kun tio, 310 00:21:51,720 --> 00:21:59,070 ne havi timon de forjxetis malnova kodo aŭ purigi ĝin multe. 311 00:21:59,070 --> 00:22:05,320 Ĝenerale, kiam oni fakte havas ion laborista, 312 00:22:05,320 --> 00:22:09,640 ĝi estas multe pli facile pensi, ol kiam vi estas ankoraŭ en la komenco etapoj 313 00:22:09,640 --> 00:22:12,610 de Kiel do mi metis ĉi ĉiuj kune. 314 00:22:12,610 --> 00:22:17,500 Ĝi estas bona por fari la dumbest eblaj dezajno kiu funkcias 315 00:22:17,500 --> 00:22:22,270 kaj tiam plibonigi ĝin ripete ol provi akiri ĉion dekstre la unua fojo. 316 00:22:22,270 --> 00:22:28,330 En terminoj de kliento-servilo dividon, provu kaj gardu vian servanton tre simpla - 317 00:22:28,330 --> 00:22:33,030 nur datumbazon kaj kelkaj aŭtentokontrolo, kaj ne faru iujn malfacila laboro tie. 318 00:22:33,030 --> 00:22:37,540 Ĉu ĉiuj viaj altnivelaj informoj pri la kliento flanko en la foliumilo 319 00:22:37,540 --> 00:22:40,650 en JavaScript tiom kiom vi povas. 320 00:22:40,650 --> 00:22:43,420 Rigardu ĉirkaŭe por bibliotekoj kiuj faras vian vivon pli bona. 321 00:22:43,420 --> 00:22:46,850 Ĉiam pli bone uzi kodon, kiun iu alia skribis 322 00:22:46,850 --> 00:22:49,850 se vi - kaj ne skribi ĝin vi mem. 323 00:22:49,850 --> 00:22:57,560 Tie estas multe da taskoj sur la Interreto. Google estas via plej bona amiko. 324 00:22:57,560 --> 00:22:59,560 Google estas la programisto la plej bona amiko. 325 00:22:59,560 --> 00:23:07,620 Jes, definitive ne timu rigardi ĉirkaŭe por aĵoj. 326 00:23:07,620 --> 00:23:11,860 Ĉiuj pravas. Kaj super Billy. 327 00:23:11,860 --> 00:23:14,600 >> [Billy] Fakte, antaŭ mi komencu per kelkaj dezajno stuff, 328 00:23:14,600 --> 00:23:17,250 ĉu iu havas demandojn por Ben pri io ajn, kion li parolis? 329 00:23:17,250 --> 00:23:20,290 Konsentite, bona. 330 00:23:20,290 --> 00:23:22,220 Denove, lasu nin scii se io ne estas klara 331 00:23:22,220 --> 00:23:25,420 aux se vi ŝatus ni transiru io iom pli. 332 00:23:25,420 --> 00:23:30,330 Mi iras al retropaŝi iom kaj paroli pri la pli fundamentaj partoj de dezajno. 333 00:23:30,330 --> 00:23:34,840 Ben menciis la modelo nomata - bedaŭras, la modelo regilo view sistemo 334 00:23:34,840 --> 00:23:38,520 kio estas speco de la teknika aspekto, do mi iras rigardi vidpunktoj specife, 335 00:23:38,520 --> 00:23:42,930 kaj mi tuj komencu per kiom vi deziras desegni vidpunkto ke aspektas bela. 336 00:23:42,930 --> 00:23:50,540 Jen speco de vere baza ŝablono por nia kato Facebook. 337 00:23:50,540 --> 00:23:54,190 Mi pensas ke estas iuj fundamentoj en moderna UI dezajno 338 00:23:54,190 --> 00:23:56,190 kiuj valoras repreni. 339 00:23:56,190 --> 00:23:58,210 Vi povas rimarki ke estas multe da blanka spaco ĉie en la paĝo, 340 00:23:58,210 --> 00:24:00,790 multo de spaco por aĵoj. 341 00:24:00,790 --> 00:24:02,580 Ne sentas kiel vi havas premplatigi aĵojn enen paĝo. 342 00:24:02,580 --> 00:24:06,700 Vi volas lasi multajn ĉambro malfermita, kaj se vi iros al preskaŭ ajna moderna retejo 343 00:24:06,700 --> 00:24:08,380 vi vidos ke estas blanka ĉie. 344 00:24:08,380 --> 00:24:10,380 Tie estas blankaj en lokoj vi ne atendas. 345 00:24:10,380 --> 00:24:14,570 Vi havas ĉi paletro, kaj ĝi estas saĝa al la komenco 346 00:24:14,570 --> 00:24:17,880 elekti paletro, ke vi iras labori kun kaj disvolvi. 347 00:24:17,880 --> 00:24:22,250 Vi ankaŭ - ĝi helpas por elekti tipografía, kaj aliflanken vi speco de laboro kun 348 00:24:22,250 --> 00:24:24,450 tiuj konkretaj fundamentojn de dezajno. 349 00:24:24,450 --> 00:24:26,910 Vi havas viajn tipo, vi havas viajn kolorojn, kaj tiam vi povos ia 350 00:24:26,910 --> 00:24:29,380 adapti ĉion alian en tiom bezonataj. 351 00:24:29,380 --> 00:24:37,710 Do, kiel mi diris, kun via kolorskemon vi volas uzi la revenante pli aŭdacaj koloroj de via kolorskemon 352 00:24:37,710 --> 00:24:40,320 ŝpareme. Headers estas bela. Butonoj estas agrable havi vere grandaj, okulfrapaj koloroj. 353 00:24:40,320 --> 00:24:43,710 Sed ĝenerale, se vi havas retejon, kiu havas kolorojn ĉie 354 00:24:43,710 --> 00:24:47,250 ĉiuj gapante al vi en la vizaĝon, li nur aspektas cluttered, kaj gxi estas ne bona. 355 00:24:47,250 --> 00:24:50,430 Vi volas ĝenerale uzas lumon koloroj. 356 00:24:50,430 --> 00:24:52,890 Provu denove, pluki belan kohera kolorskemon. 357 00:24:52,890 --> 00:24:56,640 Vi povas havi tiujn iom salpicaduras de partoj de la koloro - 358 00:24:56,640 --> 00:25:00,240 kiu povas aspekti bela agrabla, sed oni volas uzi ilin belaj ŝpareme. 359 00:25:00,240 --> 00:25:04,270 >> Kiel mi diris, ke vi volas esti minimuma. Malpli estas preskaŭ ĉiam pli. 360 00:25:04,270 --> 00:25:07,430 Se vi povas montri iun aŭ ne montras ion, 361 00:25:07,430 --> 00:25:10,230 kaj vi estas speco de necertaj ĉu ĝi devus esti tie defaŭlte - 362 00:25:10,230 --> 00:25:13,400 probable vi estas bona ekstere lasante ĝin. Vi ĉiam povas aldoni ĝin en postaj. 363 00:25:13,400 --> 00:25:16,620 Jes, gardu tion, simpla. 364 00:25:16,620 --> 00:25:19,510 Sed plej grave, ke vi volas konsideri plurajn dezajnoj. 365 00:25:19,510 --> 00:25:23,520 Ne pensu, ke kiam vi faros lokon, vi havas gxin en via kapo ke vi iras al 366 00:25:23,520 --> 00:25:26,310 ke la paĝaro en certa vojo, kaj gxi tuj aspektas ekzakte kiel ĉi tio. 367 00:25:26,310 --> 00:25:29,830 Ĝi tuj havi la bluajn kaplinio ĉe la supro kaj la blua flanko trinkejo 368 00:25:29,830 --> 00:25:32,670 kaj tiam la flava sub-header afero. 369 00:25:32,670 --> 00:25:34,670 Vi volas fari plurajn ŝablonojn. 370 00:25:34,670 --> 00:25:37,350 Vi povas ĉu - se vi estas bona kun Foto Butiko, vi povas malfermi, ke supre kaj ia 371 00:25:37,350 --> 00:25:39,600 desegni retejo kiel vi ŝatas ĝin rigardi. 372 00:25:39,600 --> 00:25:41,680 Se ne, vi povas simple uzi plumon kaj paperon, 373 00:25:41,680 --> 00:25:44,000 sed scratch up multnombraj dezajnoj. 374 00:25:44,000 --> 00:25:47,000 Vi volas esence havas starigis kie vi havas multajn malsamajn dezajnoj, 375 00:25:47,000 --> 00:25:50,810 kaj se oni finas labori, tiam tio estas granda. 376 00:25:50,810 --> 00:25:53,370 Se oni finas maltrafante, tiam vi ĉiam havas alian turni al. 377 00:25:53,370 --> 00:25:57,960 En ĝenerala, ne sentas kiel vi devus esti devigata 378 00:25:57,960 --> 00:26:00,830 al kiom dezajno vi komence decidi. 379 00:26:00,830 --> 00:26:04,420 Dezajnoj estas tre varia, kaj parto de la graveco de la modelo 380 00:26:04,420 --> 00:26:09,480 regilo view sistemo estas ke vi povas interŝanĝi en kaj ekster malsamajn vidpunktojn vi deziras. 381 00:26:09,480 --> 00:26:13,510 Vi povas svingiĝi datumoj unu vojo, kaj tiam decidi, ho, vere, tio ne funkcias bone. 382 00:26:13,510 --> 00:26:19,190 Mi pensas, ke estas speco de tro komplika aŭ ekzistas parton tie ĉi kio ne vere funkcias, 383 00:26:19,190 --> 00:26:22,150 do mi simple tuj tute forlasi tiun vidpunkton kaj interŝanĝan en tute nova. 384 00:26:22,150 --> 00:26:24,790 Ni povas ankoraŭ uzi la malnovajn modelojn kaj la maljuna regiloj. 385 00:26:24,790 --> 00:26:27,490 Ni povas fari ĉion sur la servilo kaj kliento kiel ni farus antaŭe. 386 00:26:27,490 --> 00:26:32,850 Sed la efektiva ondo de la datumoj, kiel montrita tuj estos iomete malsamaj. 387 00:26:32,850 --> 00:26:35,840 >> Koncerne reale realiganta la dezajno vi volas, 388 00:26:35,840 --> 00:26:39,330 iam vi havas malmultajn dezajnoj skizis sur papero aŭ sur Foto Butiko aŭ kio ajn, 389 00:26:39,330 --> 00:26:42,120 ekzistas pluraj iloj kiuj disponigis al vi. 390 00:26:42,120 --> 00:26:45,700 La unua vi estas tre familiara kun kio estas via HTML, PHP, aŭ kion ajn 391 00:26:45,700 --> 00:26:48,990 lingvo vi uzas nur kodigi la statika paĝojn en via retejo. 392 00:26:48,990 --> 00:26:51,990 Vi laboris multe kun HTML, kiun specon de donas al vi tiujn etikedoj 393 00:26:51,990 --> 00:26:57,820 ke vi povas meti tion en, kaj esence estas maniero de organizi vian enhavon. 394 00:26:57,820 --> 00:27:00,990 Ekzemple, vi havos la kaplinion tie supre, do vi tuj havos kaplinio etikedo, 395 00:27:00,990 --> 00:27:05,770 kaj gxi tuj devos tekston interne de ĝi, kiu estas probable tuj estos en alia etikedo. 396 00:27:05,770 --> 00:27:08,380 Tiam vi havas sidebar eble kun kelkaj malsamaj ĉeneroj, 397 00:27:08,380 --> 00:27:10,160 kaj tiuj, kiuj iras al ĉiuj esti en apartaj etikedojn. 398 00:27:10,160 --> 00:27:13,870 Do, esence HTML cxe lia koro estas maniero de dividanta la paĝon kiel 399 00:27:13,870 --> 00:27:16,980 vi eventuale volas formati ĝin. 400 00:27:16,980 --> 00:27:18,980 Do denove, vi jam vidis tiun antaŭe. 401 00:27:18,980 --> 00:27:20,540 Vi estas belaj komfortaj kun labori kun ĝi nun 402 00:27:20,540 --> 00:27:23,120 komisiite, ke vi jam faris la lastan pset espereble, 403 00:27:23,120 --> 00:27:26,150 tiel, ke devus esti neniu problemo. 404 00:27:26,150 --> 00:27:31,280 >> Tiam vi havos CSS kiu esence pritraktas ĉiujn el la dezajno statika aspektoj. 405 00:27:31,280 --> 00:27:35,320 Estus manipuli ĉiuj koloroj, ĉiuj la investon de diversaj elementoj, 406 00:27:35,320 --> 00:27:36,840 kie ili iros kun respekto al unu la alian, 407 00:27:36,840 --> 00:27:41,530 kiom grandaj ili estas, la malsamaj specoj de posicionamientos ke vi havus - 408 00:27:41,530 --> 00:27:46,030 en aliaj vortoj, oni povas esti aferoj fiksita por ke kiam vi rulumu malsupren ili restu! 409 00:27:46,030 --> 00:27:48,700 aux vi povas havi tion relativa al aliaj elementoj. 410 00:27:48,700 --> 00:27:50,730 Ĉiuj tiaj aĵoj estas en CSS. 411 00:27:50,730 --> 00:27:54,630 Plue, vi povas fari malsamaj dekoracioj, vi povas havi tekston koloroj, 412 00:27:54,630 --> 00:27:56,630 teksto efektojn, ĉiuj de tiu speco de ŝtofo. 413 00:27:56,630 --> 00:28:00,360 Ben donis vere bona seminario pri ĉi lasta semajnfino, 414 00:28:00,360 --> 00:28:04,450 kaj tiel Mi certe kontroli, ke ĉu vi planas esti farante iun fantazio aferojn kun CSS. 415 00:28:04,450 --> 00:28:09,850 CSS3 estas fakte la plej nova versio de la CSS, kaj oni povas fari cxiajn vere bela aferojn. 416 00:28:09,850 --> 00:28:14,750 Ĝi povas fari gradientes; vi povas havi bela, rondoformaj anguloj; vi povas fari ĉiajn aĵojn 417 00:28:14,750 --> 00:28:17,940 fari retpagxon aspektas pli moderna kaj fantazio. 418 00:28:17,940 --> 00:28:22,150 >> La sekva ilo estas JavaScript kaj jQuery kiu Ben parolis iomete pri, 419 00:28:22,150 --> 00:28:24,150 sed mi prenos iom pli internen. 420 00:28:24,150 --> 00:28:28,100 Javascript, kiel vi jam laboris per ĝi iomete, aŭ almenaŭ vidis ĝin en prelego, 421 00:28:28,100 --> 00:28:31,870 estas ia formo de dinamike fari aĵoj en HTML. 422 00:28:31,870 --> 00:28:35,950 HTML, kiel vi scias, estas statika, do iam vi havos la HTML vi ne povas redakti ĝin. 423 00:28:35,950 --> 00:28:40,050 Sed JavaScript, en kelkaj manieroj, estas maniero por povi modifi la HTML. 424 00:28:40,050 --> 00:28:44,520 Do vi povas fari tion, kaj tio estas granda, sed JavaScript vere estas doloro por labori kun. 425 00:28:44,520 --> 00:28:49,050 Ĝi estas tiel longa kaj obtuzaj kaj fari ecx la plej simplaj aferoj 426 00:28:49,050 --> 00:28:51,630 postulas amason da linioj de JavaScript. 427 00:28:51,630 --> 00:28:55,410 Do, jQuery estas esence biblioteko por JavaScript kiuj simpligas la tuta de tiu. 428 00:28:55,410 --> 00:28:59,880 Ĝi diras, bone, se vi volas havi kvadrata skatolo venas de maldekstre 429 00:28:59,880 --> 00:29:03,980 kaj fadas en la pagxo por ke ĝi estas en la mezo, en JavaScript kiu prenus - 430 00:29:03,980 --> 00:29:06,340 Mi ne scias, cent linioj fari, kaj ke estus doloro, 431 00:29:06,340 --> 00:29:10,540 kaj vi alvenis el ĝi malamante cxion pri ttt programado. 432 00:29:10,540 --> 00:29:15,380 JQuery vi esence havas la elemento-dot-fade-en, aux iel simile. 433 00:29:15,380 --> 00:29:18,580 Do, tre, tre simplaj funkcioj kiuj lasos vin fari ĉiajn cool kuraĝigoj 434 00:29:18,580 --> 00:29:20,580 kaj tian aferon. 435 00:29:20,580 --> 00:29:23,300 La alia afero ke tiuj 2 estas vere bona por ĝi simple fari dinamikajn aferojn 436 00:29:23,300 --> 00:29:25,300 per la retpaĝaro. 437 00:29:25,300 --> 00:29:28,370 Do, prefere ol nur havi vian HTML-paĝo - kiu vidigas iujn datumojn sed ne reale 438 00:29:28,370 --> 00:29:32,130 fari ion - JavaScript kaj jQuery lasos vin havas butonojn kiuj vi povas alklaki, 439 00:29:32,130 --> 00:29:37,960 kaj vi povas treni elementoj kaj re-ordon ili kaj ordigi ilin, kaj havi novajn elementojn 440 00:29:37,960 --> 00:29:40,500 aldonita aŭ forigita. Vi povas aldoni-delete, ke tiaj aferoj. 441 00:29:40,500 --> 00:29:44,570 Do, jQuery faras tunoj de cool aferojn. 442 00:29:44,570 --> 00:29:48,840 Kaj Vipul estas reale donanta seminario pri gxi hodiaux, mi kredas, en la 5-unua horo, 443 00:29:48,840 --> 00:29:51,220 do se vi povas meti ĉirkaŭ pro tiu longa, kiuj volas - 5 aŭ 4? 444 00:29:51,220 --> 00:29:54,930 Kvar. Pardonon. Ĝi estas vere tuj post tio, do mi rekomendus 445 00:29:54,930 --> 00:29:56,680 bati ĉirkaŭ ĝin, se vi povas. 446 00:29:56,680 --> 00:30:00,180 JQuery is super, super utila, kaj vi povos fari multajn vere bela aferojn kun ĝi 447 00:30:00,180 --> 00:30:03,460 cxar preskaux neniu ttt evoluo projekto. 448 00:30:03,460 --> 00:30:06,200 >> Nun mi iros al enir ia distingo. 449 00:30:06,200 --> 00:30:08,210 Mi jam parolis esence pri uzantinterfaco. 450 00:30:08,210 --> 00:30:11,510 Uzanto interfaco estas nur la dezajno de la retejo. 451 00:30:11,510 --> 00:30:13,780 Sed estas ia alia koncepto kiu estas uzanto sperto. 452 00:30:13,780 --> 00:30:15,900 La du estas tre malsama. 453 00:30:15,900 --> 00:30:19,440 Interfaco estas definitive parto de la sperto. 454 00:30:19,440 --> 00:30:21,340 En aliaj vortoj, kiam vi iros al loko, vi rigardas la interfaco. 455 00:30:21,340 --> 00:30:22,960 Tio estas parto de kiel vi spertas la retejo. 456 00:30:22,960 --> 00:30:24,960 Sed uzanto sperto estas pli ol tio. 457 00:30:24,960 --> 00:30:29,910 Uzanto sperto estas pri tio, kion la impreson, ke la uzanto ricevas el via loko estas. 458 00:30:29,910 --> 00:30:31,910 Do, evidente, interfacon estas parto de tiu. 459 00:30:31,910 --> 00:30:35,340 Kaj ĝi estas definitive necesa parto, sed ĝi ne estas sufiĉa. 460 00:30:35,340 --> 00:30:38,790 En aliaj vortoj, se vi havas belan interfacon, kaj ĝi estas bela kaj bunta kaj ĉiuj el tiu, 461 00:30:38,790 --> 00:30:43,650 tio estas granda, sed se la uzanto iras al via retejo, ekvidas belan aranĝon kaj ĝin konfuzita per 462 00:30:43,650 --> 00:30:47,060 ĉio, havas nenian ideon kiel fari ion, do evidente vi jam faris vere 463 00:30:47,060 --> 00:30:48,930 malriĉa retejo. 464 00:30:48,930 --> 00:30:50,930 Tio estas speco de kie uzanto sperto venas in 465 00:30:50,930 --> 00:30:54,570 Mi iras por paroli iomete pri UX dezajno - UX estas mallonga por uzanto sperto - 466 00:30:54,570 --> 00:30:58,050 kaj tipon de kiel vi povas certigi ke vi havas bonan sperton de uzanto. 467 00:30:58,050 --> 00:31:04,330 La unua punkto estas ke vi povas desegni retejo kie uzanto povas fari ion, 468 00:31:04,330 --> 00:31:06,820 ke uzanto eble volu. 469 00:31:06,820 --> 00:31:08,940 Sed se la uzanto ne povas diveni kiel fari tion - 470 00:31:08,940 --> 00:31:12,850 en aliaj vortoj, se la uzanto ne havas bonan ideon, kiam ili iras al via retejo de, 471 00:31:12,850 --> 00:31:17,660 "Ho, se mi volas aktualigi mian profilon, tiam mi klaki tiun butonon, aŭ se mi volas sendi al 472 00:31:17,660 --> 00:31:20,850 ies muro, tiam mi iros al sia muro kaj klaku sur malgranda skatolo. " 473 00:31:20,850 --> 00:31:24,410 Se la uzanto ne scias, ke tiam vi efektive havas ne reale 474 00:31:24,410 --> 00:31:27,080 implementado ke funcionalidad korekte. 475 00:31:27,080 --> 00:31:30,900 Parto de efektivigo funcionalidad estas ke la uzantoj estas vere povi uzi ĝin. 476 00:31:30,900 --> 00:31:34,810 Kaj gxi estu frustra - vi povus fari retejon, kaj ĝi povas fari ĉiajn 477 00:31:34,810 --> 00:31:37,810 mirindaĵojn, sed tiam vi devos homoj testi ĝin kaj diras, "Tio ne povas fari ĉi tion. 478 00:31:37,810 --> 00:31:39,770 Kial ne povas gxin fari tion? "Kaj vi diros reen al ili, 479 00:31:39,770 --> 00:31:44,420 "Nu, ĝi povas. Vi nur devas iri en la 7a falmenuo en tiu obskura 480 00:31:44,420 --> 00:31:48,470 paĝo ke nur oni trovas por la ligilo malsupre-dekstre-mana angulo "aŭ io. 481 00:31:48,470 --> 00:31:50,430 Evidente, vi ne volas tion. 482 00:31:50,430 --> 00:31:53,420 Vi volas ke ĝi estu klara al viaj uzantoj, kion ili supozis fari, 483 00:31:53,420 --> 00:31:56,240 kaj ĝi estu simpla kaj intuitiva por ili. 484 00:31:56,240 --> 00:32:01,180 >> Alia afero, kiun vi volas provi fari estas, se iu tuj iros al via ejo 485 00:32:01,180 --> 00:32:05,520 kaj 9 el 10 fojojn fari agon A, kaj 1 el 10 fojojn fari agon B, 486 00:32:05,520 --> 00:32:08,950 vi verŝajne volas enfokusigi sian sperton pri agado A. 487 00:32:08,950 --> 00:32:12,240 En aliaj vortoj, vi volas fari ĝin tre, tre klara kiel fari A. 488 00:32:12,240 --> 00:32:15,980 A estu antaux-kaj-centro - iru al la loko, vidu; oh, tio estas prava. 489 00:32:15,980 --> 00:32:20,850 Dum B evidente vi volas esti klara, sed vi povas lasi gxin iom pli 490 00:32:20,850 --> 00:32:22,850 en la fono. 491 00:32:22,850 --> 00:32:24,640 David donas bonan ekzemplon de tio en prelego, 492 00:32:24,640 --> 00:32:26,640 kiu estas la Boston T sistemo. 493 00:32:26,640 --> 00:32:29,440 Kiam vi iras al la Boston T kaj vi volas acxeti bileton, 494 00:32:29,440 --> 00:32:32,700 vi devos eniri en la 5 menuoj antaŭ ol vi povos efektive aĉeti bileton 495 00:32:32,700 --> 00:32:37,130 por $ 2, $ 2.50 valoro, kiu estas kiel multe ĝi prenas por rajdi la metroo 496 00:32:37,130 --> 00:32:39,130 en unu direkto. 497 00:32:39,130 --> 00:32:41,600 Tio estas problemo, ĉar la plej multaj homoj, kiuj sidas la metroo 498 00:32:41,600 --> 00:32:44,880 probable nur volas iri al unu loko, ili aĉetas ilian bileton, get sur tuj. 499 00:32:44,880 --> 00:32:47,550 Ĝi ne havas sencon, ke ili devos iri tra multaj malsamaj menuojn 500 00:32:47,550 --> 00:32:49,550 alveni. 501 00:32:49,550 --> 00:32:51,760 Al bona uzanto sperto estus rapida butonon sur la unua paĝo 502 00:32:51,760 --> 00:32:54,760 ke nur diras, 'aĉeti unudirektan bileton', kaj tio metus en ĉiu de la normo 503 00:32:54,760 --> 00:32:58,550 defaŭlta valorojn, kaj tiam, se iu volas aĉeti alian bileton ol tio, 504 00:32:58,550 --> 00:33:01,690 Ili ankoraŭ, kompreneble, ili havas la eblon, sed vi jam optimumigita por 505 00:33:01,690 --> 00:33:04,080 la komuna uzo kazo kiu estas vere grava. 506 00:33:04,080 --> 00:33:06,830 Vi povas vidi ekzemplojn de tiu en Facebook, right? 507 00:33:06,830 --> 00:33:09,410 Se vi iras por Facebook kaj vi volas sendi statuso, 508 00:33:09,410 --> 00:33:11,710 ĝi estas ĝuste ĉe la supro, kiu estas kion vi ofte volas fari. 509 00:33:11,710 --> 00:33:14,730 Tuj kiam vi eniras la paĝon, vi povas fari la plej komunaj aferoj 510 00:33:14,730 --> 00:33:16,730 vi volas fari. 511 00:33:16,730 --> 00:33:17,550 Se vi volas fari iomete pli komplika aferoj kiel, 512 00:33:17,550 --> 00:33:21,070 diru mi volas iri al mia amiko la muro kaj sendi foton pri ĝi - 513 00:33:21,070 --> 00:33:24,810 kiun mi volas fari ofte, sed ne tiel ofte kiel posting statuso ĝisdatigoj - 514 00:33:24,810 --> 00:33:28,200 tial en tiu kazo, mi tajpas ilia nomo en la skatolo en la supro, klaku sur siaj profilon, 515 00:33:28,200 --> 00:33:31,680 kaj tiam, ankoraŭ, ĝi estas rajto je la supro tie iam mi alvenis al sia profilo. 516 00:33:31,680 --> 00:33:38,240 Denove, mi jam optimumigita en prioritato por la plej komuna uzo de la kazoj. 517 00:33:38,240 --> 00:33:41,800 >> Alia grava afero estas, ke ofte homoj ian provos preni ĉirkaŭ ĉi 518 00:33:41,800 --> 00:33:44,890 dirante, bone, do mi faris la retejon kaj personoj estas trovi ĝin malklara, 519 00:33:44,890 --> 00:33:46,110 kaj tio estas problemo, ĉu ne? 520 00:33:46,110 --> 00:33:49,210 Evidente, mi ne volas popolon esti konfuzitaj de la enhavo de mia retejo. 521 00:33:49,210 --> 00:33:53,210 Sed la maniero solvi tiun ne estas havi ion pop up dirante: 522 00:33:53,210 --> 00:33:55,290 bona, mi iros instrui al vi kiel uzi la retejon. 523 00:33:55,290 --> 00:33:58,130 Paŝo 1 - klaku ĉi-butonon. Paŝo 2 - iru tien. 524 00:33:58,130 --> 00:34:03,080 Certe, tio estas vojo ĉirkaŭ ĝi - ĝi estas formo kiun vi povas diri al homoj tion, kion fari, sed estas 525 00:34:03,080 --> 00:34:05,080 vere ne la optimuma vojo. 526 00:34:05,080 --> 00:34:07,420 Se mi iras al retejo, kaj subite mi bombardita kun ĉi lernilo ke'S telling me 527 00:34:07,420 --> 00:34:11,739 kion fari kaj kien iri, kaj ĉiuj el tiu, tio ne estas amuza por mi. 528 00:34:11,739 --> 00:34:13,739 Ĝi ne estas bona sperto por mi. 529 00:34:13,739 --> 00:34:17,130 Ĝi estas speco de doloro. Mi volas nur komenci fari aferojn. 530 00:34:17,130 --> 00:34:19,449 Homoj tuj fermos el iliaj dialogujo, 531 00:34:19,449 --> 00:34:23,580 aŭ eliri la lernilo, ne scias kion fari, kaj tiam plendas pro 532 00:34:23,580 --> 00:34:25,580 Vi ne sciigis al ili, kion fari. 533 00:34:25,580 --> 00:34:29,530 La vojo al solvi ĉi tiu estas ne donante al ajna speco de lernilo aŭ direktoj - 534 00:34:29,530 --> 00:34:31,530 io kiel tio. 535 00:34:31,530 --> 00:34:33,719 Kiom ajn vi povas eviti gxin, vi vere volas montri al la uzanto kion fari 536 00:34:33,719 --> 00:34:36,429 nur per la naturo de kiel la retejo estas elspezata. 537 00:34:36,429 --> 00:34:39,090 En aliaj vortoj, se mi iras al Facebook sen ensalutante, 538 00:34:39,090 --> 00:34:40,920 la unua afero, kiun mi vidas sur la ĉefa paĝo - 539 00:34:40,920 --> 00:34:44,480 ĝi estas iom ensaluto skatolo. Do, duh. Mi devas ensaluti Ĝi pravas tie. 540 00:34:44,480 --> 00:34:48,030 Dum, se mi iris al Facebook kaj mi devis klaku iom ligilon ĉe la malsupro 541 00:34:48,030 --> 00:34:51,920 kiu diris 'saluti' kaj la resto de la paĝo estis nur ia bildo aŭ io, 542 00:34:51,920 --> 00:34:54,820 Mi ne vere scias kion fari, ĉu ne? Mi devus esti konfuzita. 543 00:34:54,820 --> 00:34:58,590 Do, gxi povus diri al mi iri tien kaj alklaku la butonon por ensaluti, 544 00:34:58,590 --> 00:35:01,080 aŭ la loglibro en butono eblis dekstren ĉe la supro, kie mi estas vidonta lin. 545 00:35:01,080 --> 00:35:04,780 Vi volas ĉiam esti indiko al la uzanto, kion fari, 546 00:35:04,780 --> 00:35:06,750 kaj tio devus esti imanenta en la paĝo mem. 547 00:35:06,750 --> 00:35:09,880 >> Kiam vi pensas pri dezajnoj kaj moka malsamajn manierojn de 548 00:35:09,880 --> 00:35:13,810 esprimi vian lokon, vi vere deziras pensi pri tio, kion la uzantoj estas tuj 549 00:35:13,810 --> 00:35:19,380 esti faranta kaj kiel vi povas montri al ili, kion fari. 550 00:35:19,380 --> 00:35:23,530 Unu lasta afero estas provoj estas vere, vere grava. 551 00:35:23,530 --> 00:35:27,400 Ĝi estas granda por akiri iun - get amiko, get iu vi ne scias eĉ - 552 00:35:27,400 --> 00:35:30,420 kiu neniam vidis la lokon antaŭ uzi la retejon. 553 00:35:30,420 --> 00:35:33,650 Ĉar vi jam estis laborante en la retejo dum horoj, vi estis gapante lin, 554 00:35:33,650 --> 00:35:36,670 kaj vi scias ekzakte kion fari do evidente vi tuj povas provi la 555 00:35:36,670 --> 00:35:39,520 aferoj kiujn vi jam estis laborante en kaj por ke vi sciu laboro. 556 00:35:39,520 --> 00:35:42,680 Sed se iu alia venas kune kaj uzas la retejon kiu neniam uzis ĝin antaŭe, 557 00:35:42,680 --> 00:35:46,880 tio estas unika sperto ĉar vi havas iun kiu havas neniun antaŭan konon 558 00:35:46,880 --> 00:35:51,530 de la loko iras en ĝin, do ili tuj devos efektive nenian ideon kion fari 559 00:35:51,530 --> 00:35:54,890 aux kian uzon kazoj estas donacon por ili. 560 00:35:54,890 --> 00:36:00,930 Tio estas granda. Tio estas unika, ĉar ili estas esence persono kun vakua por menso. 561 00:36:00,930 --> 00:36:03,750 Ili povas diri al vi, se io estas konfuza aŭ malklara. 562 00:36:03,750 --> 00:36:07,580 Ili povas doni al vi ideon pri precize kio la uzanto sperto de via retejo estas. 563 00:36:07,580 --> 00:36:10,630 Ĝi povas esti tre malfacile diri, ke vi mem, do certe mi kuraĝigas vin 564 00:36:10,630 --> 00:36:13,640 kiel vi evoluantaj viaj projektoj -, se vi faras ttt-bazitaj projektoj - 565 00:36:13,640 --> 00:36:18,290 akiri homoj uzanta la lokon kiel frua kiel vi havas ia funkcia demo. 566 00:36:18,290 --> 00:36:25,330 >> Nun mi iros por paroli iomete pri kiel mastrumi ttt evoluo projekto. 567 00:36:25,330 --> 00:36:28,900 Ni iris super vi kiel fari la teknikan back-end flanko 568 00:36:28,900 --> 00:36:31,050 kiel vi povas desegni vere bona retejo, 569 00:36:31,050 --> 00:36:34,150 kaj tio estas tre bone, se vi laboras per vi mem, sed - 570 00:36:34,150 --> 00:36:37,300 eĉ se vi laboras per vi mem kaj speciale se vi laboras en teamo, 571 00:36:37,300 --> 00:36:39,580 projektmastrumado iĝas granda demando. 572 00:36:39,580 --> 00:36:42,340 Vi havas ian aŭdis pri projektmastrumado en malsamajn formojn ekde 573 00:36:42,340 --> 00:36:45,410 elementa lernejo, kiam vi rakontis grupo laboro. 574 00:36:45,410 --> 00:36:46,820 Vi devas kunlabori, komuniki, ĉio de tio. 575 00:36:46,820 --> 00:36:49,620 Ke ĉiuj ankoraŭ validas ĉi tie, sed ekzistas kelkaj solaj cirkonstancoj kun 576 00:36:49,620 --> 00:36:54,910 komputiko, ke vi volas esti konscia de, kaj vi volas certigi vin manipuli bone. 577 00:36:54,910 --> 00:36:58,050 Mi parolos unue iom pri la teamo, ke vi estos in 578 00:36:58,050 --> 00:37:03,280 Ĝi estas tre gravaj por kapti la dekstra grandeco de teamo por labori plu, 579 00:37:03,280 --> 00:37:05,890 kaj en via fina projekto mi pensas ke vi havas la eblon elekti 580 00:37:05,890 --> 00:37:08,610 inter 1 kaj 4 homoj, se mi estas korekta. 581 00:37:08,610 --> 00:37:12,050 Vi volas certigi ke vi estas ne nur elekti la nombron de homoj 582 00:37:12,050 --> 00:37:14,950 ke vi deziras labori per ĉar ili estas viaj amikoj. 583 00:37:14,950 --> 00:37:18,170 Vi volas elekti teamo, tio estas bona grandeco kaj kiu ricevos la laboron farita. 584 00:37:18,170 --> 00:37:22,700 Tie estas komerco off en havante pli da homoj kontre malpli homoj. 585 00:37:22,700 --> 00:37:25,320 Se vi havas pli da homoj, evidente pli da laboro povas esti farita 586 00:37:25,320 --> 00:37:28,450 ĉar vi havas multajn homojn, multajn kodo, multajn ideojn, 587 00:37:28,450 --> 00:37:29,870 kaj jen ĉio granda. 588 00:37:29,870 --> 00:37:32,590 Sed ĝi ankaŭ postulas multe pli da uzado kaj multe pli komunikadon. 589 00:37:32,590 --> 00:37:34,720 En aliaj vortoj, se vi havas 4 homojn laborante en la sama projekto 590 00:37:34,720 --> 00:37:39,200 kaj ili ĉiuj estas redaktado de la sama kodo, pli aŭ malpli ĉiuj speco de bezono scii 591 00:37:39,200 --> 00:37:40,920 kio okazas tiel postulas vi - 592 00:37:40,920 --> 00:37:44,580 se vi aldonas iom da novaj funkcioj vi ian havas por diri al la homo - I'm adicianta ĉi, 593 00:37:44,580 --> 00:37:48,510 Mi ŝanĝi ĉi tion en tiu maniero - speciale se vi enir la vere profunda stuff 594 00:37:48,510 --> 00:37:52,730 kiel la modeloj kaj la regiloj kiuj efektive tuj influos kiamaniere la retejo funkcias. 595 00:37:52,730 --> 00:37:54,500 La tuta teamo bezonu konscii pri tio, 596 00:37:54,500 --> 00:37:58,140 do vi devas certigi ke vi ne elekti tro granda teamo kiu tuj estos malfacila 597 00:37:58,140 --> 00:37:59,970 fari, ke komunikado. 598 00:37:59,970 --> 00:38:02,930 Vi ankaŭ ne volas elekti sufiĉe malgranda teamo, ke vi ne tuj 599 00:38:02,930 --> 00:38:06,250 povos komuniki ĉar ĝi estas nur vi. 600 00:38:06,250 --> 00:38:11,270 >> Alia afero konsideri estas la pesilo de kie popola kapabloj estas. 601 00:38:11,270 --> 00:38:14,350 Estas bonege, se vi ĉiuj vere bonaj programistoj. 602 00:38:14,350 --> 00:38:17,050 Sed se vi estas tuta dorso-fino popolo, tiam via retejo ne tuj aspektas tre bona 603 00:38:17,050 --> 00:38:20,860 ĉar vi havas tiun grandan datumbazon, kaj ĝi faras la super-rapida serĉo pridemandojn - 604 00:38:20,860 --> 00:38:26,130 kio estas grandaj - sed kiam vi iras al ĝi, ĝi estas kiel 1990-ejo kun ruĝaj kaj bluaj 605 00:38:26,130 --> 00:38:30,370 ĉie, kaj tio ne estas bona ĉu. 606 00:38:30,370 --> 00:38:34,210 Rimarku, ke Ben kaj mi laboras kiel teamo estas tre bela ĉar mi estas ia pli 607 00:38:34,210 --> 00:38:38,030 en la antaŭa fino, ni ambaŭ interagas en la mezo-finon, kaj Ben vere bona kun dorso-fino stuff, 608 00:38:38,030 --> 00:38:43,550 por ke funkciu vere bone ĉar ni povas desegni ajnan lokon kaj esence la truoj 609 00:38:43,550 --> 00:38:47,580 en tiu ejo kiuj bezonas esti plenigita povas plenigi per ĉu unu el ni, aux eble ambaux. 610 00:38:47,580 --> 00:38:50,210 Vi volas certigi, ke ne estas truoj en via teamo. 611 00:38:50,210 --> 00:38:51,180 Ĝi estas bone, se estas iom de koincido. 612 00:38:51,180 --> 00:38:53,670 En aliaj vortoj, se vi havas 2 personoj, kiuj estas ambaŭ bonaj kun dorso fino, 613 00:38:53,670 --> 00:38:57,250 ke povas esti bona tiel, ĉar ili povas helpi unu la alian kun problemoj 614 00:38:57,250 --> 00:38:58,820 ke ili havas. 615 00:38:58,820 --> 00:39:02,590 Ĝi povas esti problemo, se vi nur havas 1 persono, kiu estas respondeca pri certa afero 616 00:39:02,590 --> 00:39:06,650 kaj ili kolizias problemo, do vi ne volas havi iom de koincido 617 00:39:06,650 --> 00:39:10,760 sed vi plej grave volas certigi, ke ĉiuj el la eblaj truoj estas satigebla. 618 00:39:10,760 --> 00:39:17,550 >> La lasta afero - kaj tio devus esti evidenta, sed ĝi estas ofte ne. 619 00:39:17,550 --> 00:39:19,550 Vi vere volas esti amuze. 620 00:39:19,550 --> 00:39:23,360 La punkto de tiu fina projekto en CS50 kaj ofte la punkto de ttt evoluo ĝenerale 621 00:39:23,360 --> 00:39:26,360 estas ne nur faru laboron ĉar ĝi bezonas fari. 622 00:39:26,360 --> 00:39:29,140 Vi vere volas esti amuziĝas, kaj vi volas esti farante ion 623 00:39:29,140 --> 00:39:31,180 tio estas la motivi vi labori sur ĝi. 624 00:39:31,180 --> 00:39:33,650 Se kion ajn vi faras estas doloro sidigxi kaj laboros plu, 625 00:39:33,650 --> 00:39:35,650 tiam vi ne estas elekti la rajton projekto. 626 00:39:35,650 --> 00:39:37,730 Vi volas elekti iun kiu vi trovas interesa, 627 00:39:37,730 --> 00:39:41,150 vere vi volas vidi la rezulton, vi estas ekscitita, kiam vi acxetas novan ideon pri 628 00:39:41,150 --> 00:39:44,700 io, kion vi povus fari - do tie estas ĉiaj projektoj tie ke mi estas certa 629 00:39:44,700 --> 00:39:47,290 vi povas trovi - ĉiuj havas iun kiu havus vere intrigi ilin 630 00:39:47,290 --> 00:39:49,290 se ili faras ttt-bazita projekto. 631 00:39:49,290 --> 00:39:52,210 Mi tion diri ĝin denove nun. 632 00:39:52,210 --> 00:39:54,520 Se via projekto ŝajnas kiel doloro kaj vi ne volas labori pri tio, 633 00:39:54,520 --> 00:39:57,260 elekti alian projekton. Elektu iun kiu vere inspiras vin. 634 00:39:57,260 --> 00:40:00,260 >> Ben menciis tiun koncepton de ripeta iom, kaj mi volas iri super gxi iom. 635 00:40:00,260 --> 00:40:08,250 Ĝi estas vere gravaj por labori bobelkrevoj kie vi akiri ion funkcia. 636 00:40:08,250 --> 00:40:13,420 Ĝi povas esti tre bone, se vi havas tiun planon paĝaro, kiu tuj fari A, B, kaj C, 637 00:40:13,420 --> 00:40:16,000 kaj finfine ĝi alvenos tie. 638 00:40:16,000 --> 00:40:18,600 Sed vi estas enfiksita en ĉi tiu fazo kie vi laboras en gxi kaj laborante sur ĝi, 639 00:40:18,600 --> 00:40:23,330 sed nenio iĝas farita. Vi ne havas ion por vidi kaj palpebla, funkcia afero. 640 00:40:23,330 --> 00:40:27,940 Kion vi vere volas fari tiel, kiel tio ŝajnas ia doloro foje al 641 00:40:27,940 --> 00:40:32,300 labori sur io kaj tiam ia ĉapo ĝin tiel ke ĝi estas almenaŭ ĉe stabila, kurante 642 00:40:32,300 --> 00:40:34,910 Versio eĉ se ĝi ne havas ĉiujn trajtojn vi deziras. 643 00:40:34,910 --> 00:40:37,690 Kaj eble estas kelkaj trajtoj kiujn vi vere volas aldoni, sed vi nur ne povas 644 00:40:37,690 --> 00:40:41,830 ĉar vi volas ricevi tiun retejon al funkciaj punkto. 645 00:40:41,830 --> 00:40:44,400 Kaj tial vi volas specon de havi la tutan disvolviĝ-procezon aspektas tiel. 646 00:40:44,400 --> 00:40:47,810 Vi volas komenci ie funkcia - aŭ esenco komencu per nenio - 647 00:40:47,810 --> 00:40:49,890 sed vi volas ricevi ie tre baza kaj funkcia. 648 00:40:49,890 --> 00:40:54,940 Kaj cetere, faras ian salto kaj ricevi ie funkcia denove. 649 00:40:54,940 --> 00:40:59,190 Vi devos malrapide edifi kaj ĝi povus iri iom pli malrapida ol ĝi farus alie, 650 00:40:59,190 --> 00:41:03,000 sed en la longa, se vi senĉese estas enfiksita en ĉi mezo teron fazo, kie vi 651 00:41:03,000 --> 00:41:06,380 ne vere havas nenion laboras, povas esti vere granda frustriĝo 652 00:41:06,380 --> 00:41:09,970 labori pri via projekto, ĉar vi estas ĉiam tiel proksimaj al ricevas ĝin laborante, 653 00:41:09,970 --> 00:41:12,130 kaj gxi neniam vere funkciis. 654 00:41:12,130 --> 00:41:14,810 Vi volas labori en tiuj funkciaj bobelkrevoj, 655 00:41:14,810 --> 00:41:17,950 kaj vi ankaux volas fari iu reflekto post cxiu. 656 00:41:17,950 --> 00:41:21,260 En aliaj vortoj, kiam vi estas en punkto kie la paĝaro estas nun laboras - 657 00:41:21,260 --> 00:41:24,790 ĝi ne havas ĉion kion vi ŝatas sed ĝi faras iuj aĵoj - 658 00:41:24,790 --> 00:41:28,870 vi volas pensi, estas bone, estas ĉi lokon plenumi la celon, ke mi ekiris por fari? 659 00:41:28,870 --> 00:41:33,410 En aliaj vortoj, se la loko estas tuj fari X, estas kion mi laboras en la direkto de X? 660 00:41:33,410 --> 00:41:36,450 Ĉu ĉiuj el la funcionalidades ke mi volis tie? 661 00:41:36,450 --> 00:41:39,340 Kaj cetere, estas tio servas la entuta celo, kiun mi volas? 662 00:41:39,340 --> 00:41:43,200 Se vi trovante ke via retejo komencas Veer en malsama direkto 663 00:41:43,200 --> 00:41:47,330 aŭ eble aĵojn nur speco de ne laboras ekstere, povas esti la tempo por ŝanĝi dentaĵoj iomete. 664 00:41:47,330 --> 00:41:51,700 En aliaj vortoj, indas konsideri - ĝi valoras eljxetante ideojn, se necese 665 00:41:51,700 --> 00:41:57,950 kaj konsiderante mi vere laboras al kio mi deziras esti. 666 00:41:57,950 --> 00:42:00,760 >> Mi kredas, ke estas mia sekva punkto. Ne timu forlasi ideojn. 667 00:42:00,760 --> 00:42:03,750 Nur ĉar vi pasigis multajn horojn laboras pri esprimilo 668 00:42:03,750 --> 00:42:07,890 kaj fine akiris ĝin laborante sed vere ne iras tiel bone - 669 00:42:07,890 --> 00:42:12,690 kiel ĝi ne estas tiom utila aŭ uzantoj havas problemojn uzante ĝin - tiaj aferoj - 670 00:42:12,690 --> 00:42:15,300 ne timu ĵeti ĝin for. 671 00:42:15,300 --> 00:42:17,650 Mamo ke vi jam elspezis multan tempon laborante en ĝi, 672 00:42:17,650 --> 00:42:21,870 sed finfine vi ne volas loko kiu estas speco de kunmetita per tiuj pecoj, ke 673 00:42:21,870 --> 00:42:25,380 speco de laboro, sed ne estas tiu puto utilis. 674 00:42:25,380 --> 00:42:27,990 Ankaŭ, ne timu brakumi novajn ideojn. 675 00:42:27,990 --> 00:42:30,050 Se iu venas kune kaj diras, bona, ke retejo aspektas vere malvarmeta sed 676 00:42:30,050 --> 00:42:32,290 ne volis ŝin ankoraŭ tre bone, se ĝi ankaŭ faris tion? 677 00:42:32,290 --> 00:42:36,220 Nur ĉar tio estas io kion vi ne intencis, kaj iu kiu ne estas en via 678 00:42:36,220 --> 00:42:37,900 specs, io, kion vi ne ekiris fari, 679 00:42:37,900 --> 00:42:40,860 ne timu preni ĝin kaj tiam labori kun ŝi. 680 00:42:40,860 --> 00:42:43,680 Ĉar ofte la ideoj kiujn vi kuras kun la tuta paso de evoluo 681 00:42:43,680 --> 00:42:47,630 finu estante la vere malvarmeta trajtojn de la retejo. 682 00:42:47,630 --> 00:42:49,630 >> Mi jam diris tion antaŭe. Mi tion diri ĝin denove. 683 00:42:49,630 --> 00:42:51,630 Testers estas super, super utila. 684 00:42:51,630 --> 00:42:56,350 Provu instigi personojn kiuj neniam vidis la retejo antaŭ ol ensaluti en kaj vidu kio okazas 685 00:42:56,350 --> 00:42:59,080 ĉar ili povas ne nur testi la utilecon de la ejo kaj la uzanto sperto, 686 00:42:59,080 --> 00:43:02,070 sed ili povas ankaŭ testi la funcionalidad en manieroj kiuj vi ne povas. 687 00:43:02,070 --> 00:43:06,430 Se vi faras iuj karakterizaĵo kiu faras iun aĵon 688 00:43:06,430 --> 00:43:11,620 kaj vi scias tion tuj fari tion saman aferon korekte ĉiun solan fojon, ke estas granda. 689 00:43:11,620 --> 00:43:16,610 Sed ĝi povas ofte esti malfacile klarigebla angulo kazoj kie uzanto forteco 690 00:43:16,610 --> 00:43:19,500 tajpi ion ke vi ne atendis - ĝuste ĉar vi difinis 691 00:43:19,500 --> 00:43:21,500 La trajtoj mem. 692 00:43:21,500 --> 00:43:23,730 Do, havi iun eniri en kiu ne havas ideon kiel uzi la ejo 693 00:43:23,730 --> 00:43:26,840 kaj al la ĵus rompi ĝin en ajn manieroj oni povas fari estas vere utila, ĉar vi 694 00:43:26,840 --> 00:43:30,340 ideon de plene malsamaj perspektivoj de kio en via retejo laboras 695 00:43:30,340 --> 00:43:33,300 kaj kion bezonas riparon. 696 00:43:33,300 --> 00:43:37,070 >> Lasta, mi iras por paroli pri iu ĝenerala bono praktikoj, 697 00:43:37,070 --> 00:43:42,470 kaj vi vidis multon de tiuj en CS50, sed ili ankaŭ vere, vere apliki en projekto opcio. 698 00:43:42,470 --> 00:43:47,600 Unu estas komentoj. Ĉiam komenti vian kodon speciale se vi laboras en granda teamo. 699 00:43:47,600 --> 00:43:51,230 Ĝi povas esti tiel ĝenaj al nur devas giganta bloko de kodo ke iu estas skribita 700 00:43:51,230 --> 00:43:54,230 kaj eble gxi funkcias, eble ne, sed vi havas nenian ideon, kion ĝi faras, 701 00:43:54,230 --> 00:43:58,010 do vi tute ne scias ĉu ĝi estas utila aŭ ne, aŭ ĉu ĝi devus esti tie aŭ ne, 702 00:43:58,010 --> 00:44:00,200 kaj se vi laboras en alia aĵo ĝi estas eĉ ebla ke vi laboras en 703 00:44:00,200 --> 00:44:06,590 La sama afero, do nur tre, tre zorga esti atenti la bezonojn de viaj kolegoj 704 00:44:06,590 --> 00:44:09,710 kaj registran kodon kiu estas bone dokumentita. 705 00:44:09,710 --> 00:44:13,580 Vi ne devas iri tiel for kiel fari la tuta afero kie ŝatus, se vi pliigo 706 00:44:13,580 --> 00:44:16,620 nombrilo havas komenton kiu diras, mi aldonas 1 al ĉi vendotablo. 707 00:44:16,620 --> 00:44:20,450 Ĝi ne devas esti, ke detala, sed pro ajna funkcio kiu vi iam skribis 708 00:44:20,450 --> 00:44:23,160 vi devus havi iom da dokumentado de kio tiu funkcio akurate faras, 709 00:44:23,160 --> 00:44:25,140 kion lia enigoj estas, kaj kion ĝi devas reveni. 710 00:44:25,140 --> 00:44:27,800 Tiel vi povas uzi fremdajn komponantoj de la retejo 711 00:44:27,800 --> 00:44:31,990 kaj vi povas labori por konstrui ion grandan. 712 00:44:31,990 --> 00:44:34,100 >> Alia grava afero estas ke vi volas fari regulajn purigoj. 713 00:44:34,100 --> 00:44:40,490 Kodo gets senorda. Ne sentas malbone se via kodo estas nur tute nelegebla kaj giganta salaton. 714 00:44:40,490 --> 00:44:42,770 Tio okazas en ttt evoluo ĉiam. 715 00:44:42,770 --> 00:44:46,530 Vi aldonas novajn funkciojn, demetante malnovaj. Stuff tuj estos tie, ke ne devus esti. 716 00:44:46,530 --> 00:44:49,330 Tio estas bone, sed vi volas certigi pritrakti kiu regule. 717 00:44:49,330 --> 00:44:53,430 Vi ne volas lasi konstrui ĝis la punkto kie vi simple ne povas trovi ion 718 00:44:53,430 --> 00:44:56,430 en via kodo, kaj vi ne havas ideon kion ion faras. 719 00:44:56,430 --> 00:44:58,430 Tio estas la kazo kun HTML. 720 00:44:58,430 --> 00:44:59,490 Kelkfoje vi finos kun objektoj kiuj ne enhavas ion, 721 00:44:59,490 --> 00:45:01,320 kaj vi volas forigi el tiuj. 722 00:45:01,320 --> 00:45:04,610 En CSS, vi povas raporti al elementoj kiuj ne estas tie plu, 723 00:45:04,610 --> 00:45:06,340 tiel vi volas liveri de tiu kodo. 724 00:45:06,340 --> 00:45:09,900 En JavaScript, vi povus esti forigitaj ion de la HTML. 725 00:45:09,900 --> 00:45:13,150 Do, vi volas certigi ke vi estas ĉiam purigi, farante aferojn bela 726 00:45:13,150 --> 00:45:17,450 tiom kiom vi povas sur regula bazo. 727 00:45:17,450 --> 00:45:21,060 >> Alia vere utila afero, kiun mi ne pensas ke estas konturita tre multe en CS50 728 00:45:21,060 --> 00:45:23,430 sed ĝi valoras por eniri estas versio kontrolon. 729 00:45:23,430 --> 00:45:27,180 La ideo de versio kontrolo estas kiam vi esence konservanta trako de la tuta progreso 730 00:45:27,180 --> 00:45:30,820 vi faris al via retejo kaj se, je iu ajn punkto vi rimarkos, aj, ĉi tio estis laborante 731 00:45:30,820 --> 00:45:35,220 faras momenton sed ĝi ne funkcias plu, vi povas iri reen al antaŭaj versioj 732 00:45:35,220 --> 00:45:37,720 kaj vidi, kio ŝanĝiĝis de tiam kaj tiaj aferoj. 733 00:45:37,720 --> 00:45:41,670 La ĉefa maniero por fari tion estas kun Git kaj Git estas ĉi tuta speco de sistemo kiu 734 00:45:41,670 --> 00:45:46,390 Mi kredas, Tommy MacWilliam donis seminarion pri la pasinta jaro. 735 00:45:46,390 --> 00:45:51,520 Se vi iras en la CS50 seminarioj por 2011, vi povas vidi lian seminarion pri tio. 736 00:45:51,520 --> 00:45:57,070 La ideo de Git estas esence, ke je regulaj intervaloj vi farante tiujn devontigojn 737 00:45:57,070 --> 00:46:01,430 kio estas vojoj dirante la retejo estas en bela stalo versio nun tiom 738 00:46:01,430 --> 00:46:05,910 Mi ujoj gxi supren kaj sendante ĝin al servilo, kaj tiam vi povas iri al tiu servilo 739 00:46:05,910 --> 00:46:07,910 kaj rigardi ĉiujn antaŭajn versiojn de via kodo kaj vidi kiel ĝi estas progresinta 740 00:46:07,910 --> 00:46:12,210 kaj ĉiujn kiuj speco de bona aĵo. 741 00:46:12,210 --> 00:46:14,210 Do, tio estas esence ĝin. 742 00:46:14,210 --> 00:46:17,870 Koncerne ttt evoluo, ni estas feliĉaj pusxi ĉirkaŭe kaj respondos ajnan 743 00:46:17,870 --> 00:46:20,570 demandojn, kiel malproksime kiel nia prezento. 744 00:46:20,570 --> 00:46:22,900 Estas tio. Dankon. >> [Ben] Dankon. 745 00:46:22,900 --> 00:46:28,480 [Aplaŭdo] 746 00:46:28,480 --> 00:46:30,950 >> [Billy] Personaro, ĉu iu havas demandojn pri aferoj, kiujn ni kovris 747 00:46:30,950 --> 00:46:33,950 aŭ aĵoj, kiujn ni ne kovris, ke ili estis kun la espero ni volus kovri? 748 00:46:33,950 --> 00:46:35,950 Ni ŝatus respondi al tiuj. Iu? 749 00:46:35,950 --> 00:46:50,360 [Spektantaro membro] Kiuj estas la avantaĝoj kaj malavantaĝoj de uzante Ruby aŭ uzante Pitono? 750 00:46:50,360 --> 00:46:58,660 [Ben] La demando estas, kio estas la avantaĝoj kaj malavantaĝoj de uzante Ruby aŭ Python 751 00:46:58,660 --> 00:46:59,900 anstataŭ kiel PHP. 752 00:46:59,900 --> 00:47:11,340 La avantaĝoj estas, ke Ruby kaj Python estas multe pli bona lingvoj ol PHP. 753 00:47:11,340 --> 00:47:14,920 Almenaŭ en mia opinio, kaj mi pensas en amaso de aliaj homoj opiniojn tiel. 754 00:47:14,920 --> 00:47:20,990 Ili estis desegnitaj pli por fari kompleksajn aferojn, 755 00:47:20,990 --> 00:47:25,380 kaj malpli por whacking kune retpaĝojn vere rapide kun 756 00:47:25,380 --> 00:47:28,400 iomete da dinamika enhavo. 757 00:47:28,400 --> 00:47:35,180 La malavantaĝoj estas ke estas iomete da - estas pli de lernado kurbo 758 00:47:35,180 --> 00:47:37,220 por akiri ilin starigis. 759 00:47:37,220 --> 00:47:41,010 Tio estas, kiel en PHP, vi povas simple havi la HTML-dosieron kaj vi skribos malpli-ol, 760 00:47:41,010 --> 00:47:43,060 demandosigno, kaj tiam vi skribos iom da kodo, kaj tiam vi skribos demandosigno, 761 00:47:43,060 --> 00:47:45,700 granda-ol, kaj tiam vi finos. 762 00:47:45,700 --> 00:47:50,300 En aliaj lingvoj kiel Ruby aŭ Python, 763 00:47:50,300 --> 00:47:56,810 Vi devas iri tra iom pli da laboro por alveni la komenca ejo kurado. 764 00:47:56,810 --> 00:48:02,730 Tie estas ankaŭ - almenaŭ ĝi kutimis esti la kazo - ke ekzistas pli dokumentado 765 00:48:02,730 --> 00:48:05,480 disponebla por PHP nur ĉar tie estas pli da homoj uzas ĝin. 766 00:48:05,480 --> 00:48:09,370 Mi pensas ke ne estas tiom granda demando plu. 767 00:48:09,370 --> 00:48:12,520 Tie estas certe tre bona dokumentado por aĵoj kiel Ruby on Rails 768 00:48:12,520 --> 00:48:16,080 aŭ Django por Pitono estas la ekvivalento. 769 00:48:16,080 --> 00:48:25,910 PHP estas kiu ĉies estis uzante dum jaroj, kaj vi scias kiel ĝi funkcias. 770 00:48:25,910 --> 00:48:28,460 Ruby kaj Python estas iomete malpli matura. 771 00:48:28,460 --> 00:48:33,130 >> [Spektantaro membro] Se vi estus elekti inter unu el ili por lerni aŭ repreni, 772 00:48:33,130 --> 00:48:36,130 kiun vi preferas? 773 00:48:36,130 --> 00:48:38,870 Honeste, mi opinias, ke dependas de la persono. 774 00:48:38,870 --> 00:48:45,450 Mi bedaŭras. La demando estis kiu vi elektu iun por lerni? 775 00:48:45,450 --> 00:48:50,230 Mi trovos Pitono la plej bela persone. 776 00:48:50,230 --> 00:48:55,360 Ekzistas multe da homoj, kiuj - mi faris mian unuan ttt dev projekto en Python kaj Django. 777 00:48:55,360 --> 00:49:00,300 Ekzistas multe da homoj kiuj ŝatas Ruby on Rails ankaŭ. 778 00:49:00,300 --> 00:49:02,650 Probable pli da homoj kiuj scias Ruby on Rails. 779 00:49:02,650 --> 00:49:05,270 Honeste, mi simple iru kun kiom la homoj ĉirkaŭ vi scias 780 00:49:05,270 --> 00:49:09,680 tiel, ke vi havas homojn por demandi demandojn. 781 00:49:19,640 --> 00:49:24,170 >> La demando estis - on dividis serviloj estas speco de forte labori sur Pitono? 782 00:49:24,170 --> 00:49:26,170 Tio dependas de via gastigo. 783 00:49:26,170 --> 00:49:29,400 Estas nombro de ttt gastigantoj kiuj afiŝos Pitono vazaro. 784 00:49:29,400 --> 00:49:31,400 WebFaction faras tion, ĉu ne? 785 00:49:31,400 --> 00:49:34,400 WebFaction estas tiu kiu Billy kaj mi uzis por iuj projektoj. 786 00:49:34,400 --> 00:49:37,750 Ili estas vere granda. Ili apogas plej lingvoj. 787 00:49:37,750 --> 00:49:40,020 Sed estas vera ke PHP estas multe pli vaste subtenata. 788 00:49:40,020 --> 00:49:45,210 Do, se vi estas hokita sur ttt militistaron, kiu nur faras PHP, tio estas bona kialo por uzi PHP. 789 00:49:45,210 --> 00:49:56,010 >> [Spektantaro membro] Mi ĵus eniris lerni kiel demandi iun datumbazojn, 790 00:49:56,010 --> 00:50:00,680 kaj Mi konas miajn SQL estas ĉie en la loko, sed mi ĵus atingis elmontrita al - 791 00:50:00,680 --> 00:50:04,470 kaj vi indikis ĝin. Komprenu JSON kaj ampliable datumbazoj. 792 00:50:04,470 --> 00:50:14,580 Mia SQL estas ankoraŭ ĉie en la loko. Kiel vi vidas, ke okazas? 793 00:50:14,580 --> 00:50:21,330 Estas tie tuj estos kreskanta tendenco por pli ampliable (inaudibles)? 794 00:50:21,330 --> 00:50:30,100 La demando estis - ja mi pensas, ke okazas al esti emo al ne-SQL-datumbazoj. 795 00:50:30,100 --> 00:50:33,850 Ekzemple, kiel MongoDB. Mi pensas ke estas sendube vera. 796 00:50:33,850 --> 00:50:38,730 Mia konsilo estis plejparte mySQL-rilataj tie nur ĉar mySQL estas 797 00:50:38,730 --> 00:50:40,950 industrio normo. 798 00:50:40,950 --> 00:50:45,950 Persone, mi multe preferas datumbazoj kiuj ne havas schemos kiel MongoDB 799 00:50:45,950 --> 00:50:49,520 kie vi ne havas la temon de, ho, mi bezonas aldoni alian kolumnon. 800 00:50:49,520 --> 00:50:51,600 Ve al mi, kiel ajn mi faru? 801 00:50:51,600 --> 00:50:55,840 Estas tre malfacile fari tion sur mySQL, sed kiam vi havos ion kiel Mongo 802 00:50:55,840 --> 00:50:57,840 ĝi estas multe pli agrabla. 803 00:50:57,840 --> 00:51:03,780 La alia bela afero pri Mongo estas ke viaj raportoj estas vere JavaScript celoj. 804 00:51:03,780 --> 00:51:10,110 Tie estas neniu speco de konvertiĝo ŝtupo kie vi bezonas preni tiujn datumbazo vicoj 805 00:51:10,110 --> 00:51:13,140 kaj turni ilin enen JavaScript objekto kaj poste sendos ilin super la drato. 806 00:51:13,140 --> 00:51:20,290 Mi kredas necesajxojn kiel tiu tuj estos tre, tre utila por rapida ttt disvolviĝo en la estonteco. 807 00:51:20,290 --> 00:51:23,060 >> [Billy] Io mi aldonus kiu estas nur ĝenerala punkto estas ke 808 00:51:23,060 --> 00:51:26,580 ne sentas kiel vi devus esti lerninta ĉiuj lingvoj ni diskutis 809 00:51:26,580 --> 00:51:28,580 de nia seminario. 810 00:51:28,580 --> 00:51:30,560 Evidente la punkto estas por doni al vi ideon pri kio estas tie ekstere, 811 00:51:30,560 --> 00:51:33,450 kaj se vi estas interesita pri iu ajn el la aferojn ni jam menciis vi povas Guglas ilin 812 00:51:33,450 --> 00:51:35,830 kaj legis sur ili. 813 00:51:35,830 --> 00:51:38,750 Kaj kiel mi menciis, ekzistas kelkaj seminarioj kiuj traktas kun precize tion. 814 00:51:38,750 --> 00:51:41,660 Tie estas eĉ pli seminarioj, kiujn mi ne menciis, ke probable enir 815 00:51:41,660 --> 00:51:43,660 tiun materialon kiel bone. 816 00:51:43,660 --> 00:51:46,610 La ideo estas ke, se vi volas labori pri io, jen la iloj estas je via dispono. 817 00:51:46,610 --> 00:51:51,630 Ne sentas malgxojas, se vi ne estas vere certas kion tiuj iloj fari precize, 818 00:51:51,630 --> 00:51:54,830 sed sciu, ke ili estas tie ekstere kaj ke vi povas fari vastan uzon de ili 819 00:51:54,830 --> 00:51:56,830 de Google. 820 00:51:56,830 --> 00:51:59,960 >> [Spektantaro membro] Kiajn aferojn vi bezonas fari por certigi vian retejon 821 00:51:59,960 --> 00:52:02,530 aspektas bone en porteblaj aparatoj? 822 00:52:02,530 --> 00:52:05,590 [Billy] Mobile aparatoj estas iom malmola. 823 00:52:05,590 --> 00:52:07,590 Estas 2 manieroj vi povas alproksimigi ĝin. 824 00:52:07,590 --> 00:52:11,500 La unua maniero estas, ke vi efektive havas mobile retejo. 825 00:52:11,500 --> 00:52:14,660 En aliaj vortoj, vi plenumi iun specon de detekto komence 826 00:52:14,660 --> 00:52:18,830 kiam la retumilo estas farante la peton al via retejo, kiun ĉu diras 827 00:52:18,830 --> 00:52:25,240 revenu ĉi vidpunkto - kiu estos la vidon por labortabla aŭ tekkomputilo foliumiloj - 828 00:52:25,240 --> 00:52:27,710 kaj tiu alia vidpunkto por porteblaj aparatoj. 829 00:52:27,710 --> 00:52:33,090 Tio estas loko kie opinioj estas vere bela en kiuj vi povas sufiĉe tre swap la 830 00:52:33,090 --> 00:52:37,580 du ekstere kaj havas interfacon kiu funkcias vere bele en porteblaj aparatoj 831 00:52:37,580 --> 00:52:40,770 kaj havas tute malsamajn kiu funkcias bele sur retumilo aparatoj. 832 00:52:40,770 --> 00:52:43,770 La problemo kun tio estas prenas longan tempon, ĉar ĝi signifas kodigon 833 00:52:43,770 --> 00:52:47,060 plene malsama interfaco. 834 00:52:47,060 --> 00:52:49,720 La alia vojo, ke vi povas fari tion estas - 835 00:52:49,720 --> 00:52:55,250 multaj modernaj poŝtelefonoj montros retejoj kaj provu redonu ilin kiel retumilo volis, 836 00:52:55,250 --> 00:52:57,680 kaj ili faros sian plejeblon. 837 00:52:57,680 --> 00:53:04,340 Vi povas ia provos resti lumo de la kvanto de jQuery JavaScript vi uzas 838 00:53:04,340 --> 00:53:07,360 kio emas esti kie aĵoj povas iri malbone iom. 839 00:53:07,360 --> 00:53:13,430 Tio estas speco de la vojo, kiun vi devus uzi se vi ne havas tiom da tempo. 840 00:53:13,430 --> 00:53:18,540 Se vi ja havas la tempon por labori sur mobile interfacon, estas evidente via plej bona opcio. 841 00:53:18,540 --> 00:53:23,320 >> Mi kredas ĝenerale por CS50 projektoj, vi tuj volas elekti unu aŭ la alia. 842 00:53:23,320 --> 00:53:27,990 En aliaj vortoj, vi volas fari mobile app aŭ vi volas fari labortabla retejo. 843 00:53:27,990 --> 00:53:32,200 Kaj tiu speco de determinas kie vi iri kun tio. 844 00:53:32,200 --> 00:53:35,360 Sed se vi volas pligrandigi ĝin poste, probable vian plej bonan vetas estas 845 00:53:35,360 --> 00:53:37,360 por fari alian interfaco por la aliaj. 846 00:53:51,650 --> 00:53:56,340 Mi havas iom da sperto en evoluantaj WordPress-bazitaj ejoj. 847 00:53:56,340 --> 00:53:58,670 Mi gastigis personan retejon pri WordPress dum kelka tempo. 848 00:53:58,670 --> 00:54:02,310 Tiuj specoj de kadroj povas esti bela same tre bazajn aferojn. 849 00:54:02,310 --> 00:54:07,050 Ofte vi simple kolizii multajn customizability temoj kvankam. 850 00:54:07,050 --> 00:54:10,940 Vi volas havi ion rigardi iu maniero aŭ esti certa maniero 851 00:54:10,940 --> 00:54:14,510 kaj vi nur povas ne ĉar ĝi estas malfacila-telegramis al la sistemo, ke 852 00:54:14,510 --> 00:54:17,480 jen kiel vi devas fari tion, kion povas esti iom de problemo. 853 00:54:17,480 --> 00:54:22,020 Ekde tiam mi specon de estintaj pli emas labori kun lokoj de la tero supren. 854 00:54:22,020 --> 00:54:26,840 Por aĵoj kiel blog datumbazojn kaj ke tia afero estas vere ne estas tiel malfacila por konstrui kadro. 855 00:54:26,840 --> 00:54:29,970 Se vi vere tirita por momento, vi povas kompreneble uzi iun kiel WordPress 856 00:54:29,970 --> 00:54:33,120 aux ke tia afero por blogo. 857 00:54:33,120 --> 00:54:38,790 La specoj de aferoj kiujn blogoj vendejo kaj fari ne estas vere malfacila sufiĉas ke 858 00:54:38,790 --> 00:54:41,500 se vi uzas en iu el tiuj specoj de aferoj, vi estas probable pli ĝuste 859 00:54:41,500 --> 00:54:43,500 fari en-domo versio. 860 00:54:43,500 --> 00:54:48,350 >> Mi pensas ke temas pri tio, do dankon denove pro veni. 861 00:54:48,350 --> 00:54:51,960 Ni vere ĝuis paroli al vi uloj kaj esperas, ke vi lernis kelkajn aferojn. 862 00:54:51,960 --> 00:54:55,350 [Ben] Ni estas kontentaj paroli - ni devas iri, sed ni estas kontentaj paroli pli ekstere 863 00:54:55,350 --> 00:55:01,650 se vi havas alian demandon. Danke denove. [Aplaŭdo] 864 00:55:03,750 --> 00:55:06,000 [CS50.TV]