1 00:00:00,000 --> 00:00:02,500 [Powered by Google Translate] [Семінар] [Вэб-распрацоўка: Ад ідэі да ўвасаблення] 2 00:00:02,500 --> 00:00:04,200 [Бэн Kuhn] [Білі Janitsch] [Гарвардскі універсітэт] 3 00:00:04,200 --> 00:00:07,250 [Гэта CS50] [CS50.TV] 4 00:00:07,250 --> 00:00:10,840 [Білі] Прывітанне, я Білі і гэта Бэн. >> [Бэн] Прывітанне. 5 00:00:10,840 --> 00:00:12,840 Мы збіраемся казаць аб вэб-распрацоўцы і сёння. 6 00:00:12,840 --> 00:00:14,840 [WebDev] [Білі Janitsch і Бэн Kuhn] 7 00:00:14,840 --> 00:00:16,840 Трохі пра нас у першую чаргу. 8 00:00:16,840 --> 00:00:19,590 Бэн з'яўляецца свайго роду фонавых хлопцам. Ён робіць усё гэта працуе. 9 00:00:19,590 --> 00:00:21,870 А потым я іду ў і зрабіць іх даволі. 10 00:00:21,870 --> 00:00:26,610 Я ў значнай меры ўдзельнічае з вялікім пярэдняга плана дызайну макета роду рэчы, 11 00:00:26,610 --> 00:00:31,260 і Бэн, з другога боку, ведае, што ён робіць, каб ён працуе на сервернай рэчы. 12 00:00:31,260 --> 00:00:34,050 Разам мы зрабілі некалькі рэчаў. 13 00:00:34,050 --> 00:00:38,710 Напрыклад, у мінулым годзе мы працавалі над Gimblium які ўяўляе сабой інтэрнэт-студыя распрацоўкі гульняў. 14 00:00:38,710 --> 00:00:40,400 Гэта была наша канчатковы праект для класа, 15 00:00:40,400 --> 00:00:42,780 і з тых часоў мы зрабілі Гарвардскага Class 16 00:00:42,780 --> 00:00:47,860 якая ўяўляе сабой інтэрнэт-база для прагляду і гандлёвых курсаў у Гарвардзе. 17 00:00:47,860 --> 00:00:53,180 >> Мы збіраемся пачаць з гэтай ідэяй для нашага сайта. 18 00:00:53,180 --> 00:00:57,480 Мы збіраемся зрабіць Facebook, але для котак. 19 00:00:57,480 --> 00:00:59,520 Перад тым, як на самой справе зрабіць гэты сайт, 20 00:00:59,520 --> 00:01:02,520 ня зрабіць гэты сайт, таму што гэта не вельмі добра, але мы будзем выкарыстоўваць яе ў якасці асновы 21 00:01:02,520 --> 00:01:05,349 і прайсці праз працэс, як мы бярэм гэтую ідэю 22 00:01:05,349 --> 00:01:07,450 і ператварыць яго ў сапраўдны вэб-сайт, мы можам выкарыстоўваць. 23 00:01:07,450 --> 00:01:11,940 Мы пачнем, парушаючы сайт ўніз. 24 00:01:11,940 --> 00:01:13,190 Як вы рабілі ў CS50, 25 00:01:13,190 --> 00:01:17,360 вы хочаце думаць пра тое, што фактычныя кампаненты, якія ўваходзяць у гэты вэб-сайт. 26 00:01:17,360 --> 00:01:21,290 У асноўным ператварыўшы яго з ідэі, якая з'яўляецца толькі выгляд абстрактнае паняцце 27 00:01:21,290 --> 00:01:23,590 ў рэальныя, адчувальныя рэчы, якія вы маглі б зрабіць. 28 00:01:23,590 --> 00:01:25,910 Пачнем з пытання некалькі пытанняў. 29 00:01:25,910 --> 00:01:28,070 Што гэта за сайт? Чаму мы робім гэта? 30 00:01:28,070 --> 00:01:30,670 Што ён збіраецца выкарыстоўваць для? Такога роду рэчы. 31 00:01:30,670 --> 00:01:33,660 У выпадку Facebook Cat, 32 00:01:33,660 --> 00:01:37,730 мы ў асноўным хочаце сайт, які дазваляе котак сацыяльнай сеткі адзін з адным. 33 00:01:37,730 --> 00:01:41,260 Ідэя ў тым, што яны могуць размясціць на сценах адзін аднаго, 34 00:01:41,260 --> 00:01:43,510 яны могуць зрабіць каментары, такія рэчы. 35 00:01:43,510 --> 00:01:46,720 І вось, калі мы прыйдзем у функцыянальных кампанентаў. 36 00:01:46,720 --> 00:01:51,270 Цяпер у нас ёсць гэты від рамках - у нас ёсць профілі карыстальнікаў, 37 00:01:51,270 --> 00:01:53,990 у нас ёсць каментары, і мы можам адправіць. 38 00:01:53,990 --> 00:01:57,390 Магчыма, калі-небудзь мы будзем уплывовых любіць і такую ​​рэч. 39 00:01:57,390 --> 00:02:00,410 І мы як бы хачу прыярытэты гэтым магчымасцям цалі 40 00:02:00,410 --> 00:02:03,340 Мы хочам сказаць, што, добра, гэта сапраўды важна, каб у кожнага ёсць профіль 41 00:02:03,340 --> 00:02:06,440 і што кожны можа размясціць на сценах адзін аднаго. 42 00:02:06,440 --> 00:02:08,509 Другасны да таго, што, каментары былі б добрыя. 43 00:02:08,509 --> 00:02:10,180 Можа быць, пазней мы уплывовых любіць. 44 00:02:10,180 --> 00:02:13,700 Такім чынам, вы хочаце, каб мець уяўленне аб тым, што гэта асноватворнае значэнне для вашага праекта 45 00:02:13,700 --> 00:02:17,260 а што гэта за больш агульнай функцыі, якія могуць быць ужытыя пазней. 46 00:02:17,260 --> 00:02:20,870 Вы хочаце, каб роду ёсць пэўны спіс на ўвазе, 47 00:02:20,870 --> 00:02:24,090 але праект, што вы пачынаеце з не будзе праект, які вы скончыце з. 48 00:02:24,090 --> 00:02:27,100 Іншымі словамі, усё будзе мяняцца, пакуль вы распрацоўваеце сайт, 49 00:02:27,100 --> 00:02:30,090 і вы хочаце, каб пакінуць месца для гэтага. 50 00:02:30,090 --> 00:02:34,470 Я вярну яго на Бэна, які збіраецца распавесці колькі словаў пра структуры. 51 00:02:34,470 --> 00:02:39,610 >> [Бэн] я збіраюся казаць пра больш тэхнічнай баку вэб-распрацоўкі. 52 00:02:39,610 --> 00:02:42,370 Давайце проста пайсці над некаторымі асновамі у першую чаргу. 53 00:02:42,370 --> 00:02:45,730 Калі вы робіце вэб-дадатак, 54 00:02:45,730 --> 00:02:50,470 Галоўнае ўпраўленне, што вы будзеце мець, каб есьці, 55 00:02:50,470 --> 00:02:52,700 Вы будзеце мець некаторыя рэчы адбываецца ў кліенцкім боку - 56 00:02:52,700 --> 00:02:56,700 гэта значыць, код, які вы браўзэру займае з сайта 57 00:02:56,700 --> 00:03:01,910 і JavaScript, HTML, CSS матэрыял. 58 00:03:01,910 --> 00:03:04,490 Вось і ўсё на баку кліента. 59 00:03:04,490 --> 00:03:08,680 Вы будзеце мець іншы код, які працуе на боку сервера 60 00:03:08,680 --> 00:03:10,770 якая адсочвае ўсе дадзеныя, якія людзі пасылаюць да вас, 61 00:03:10,770 --> 00:03:15,060 вырашае, хто даць тое, што, усё ў такім духу. 62 00:03:15,060 --> 00:03:20,380 Гэта толькі некаторыя тэрміны, каб вы, хлопцы, усе знаёмыя з тым, што мы гаворым пра. 63 00:03:20,380 --> 00:03:28,600 Акрамя гэтага падраздзялення, што гэта добра, каб думаць аб сваім вэб-дадатак з пункту гледжання 64 00:03:28,600 --> 00:03:32,500 пару розных кампанентаў. 65 00:03:32,500 --> 00:03:35,270 Калі вы робіце вэб-распрацоўкі 66 00:03:35,270 --> 00:03:41,710 адна з рэчаў, якія вы павінны заўсёды быць спрабуюць зрабіць, гэта паменшыць складанасць. 67 00:03:41,710 --> 00:03:45,710 Чым складаней код, тым больш шанцаў, каб зрабіць памылкі, 68 00:03:45,710 --> 00:03:47,710 тым цяжэй змяніць пазней. 69 00:03:47,710 --> 00:03:50,140 Так што, калі вы можаце разбіць ваша прыкладанне ў некаторых асобных функцыянальных абласцей 70 00:03:50,140 --> 00:03:57,640 што будзе - і вы можаце зменшыць роду памеры крос-вобласці сувязі - 71 00:03:57,640 --> 00:04:03,530 што дапаможа вам многае ў доўгатэрміновай перспектыве з пункту гледжання скарачэння памылак. 72 00:04:03,530 --> 00:04:07,950 >> Каб быць канкрэтным, як правіла, людзі дзеляць вэб-прыкладанне ў - 73 00:04:07,950 --> 00:04:13,190 гэта свайго роду модных слоў зараз, але яны ўсё яшчэ карысныя. 74 00:04:13,190 --> 00:04:17,940 Магчыма, вы чулі людзі кажуць пра мадэляў, уяўленняў і кантролераў. 75 00:04:17,940 --> 00:04:23,210 Мадэлі з'яўляюцца фактычныя дадзеныя, што ваша прыкладанне збіраецца мець справу. 76 00:04:23,210 --> 00:04:28,260 Напрыклад, у вашым Cat Facebook вашыя мадэлі будзе - 77 00:04:28,260 --> 00:04:35,340 Вы павінны былі б мадэль як паведамленняў, а таксама мадэль для профіляў карыстальнікаў, усё ў такім духу. 78 00:04:35,340 --> 00:04:41,090 Вашы погляды, як Вы ўяўляеце, што дадзеныя для карыстальнікаў. 79 00:04:41,090 --> 00:04:46,660 Магчыма, вам прыйдзецца 1 выгляд для гледзячы на ​​адной пасады і ўсе каментары 80 00:04:46,660 --> 00:04:51,720 і іншы погляд на вашай сцяне, што мае спіс ўсіх паведамленняў 81 00:04:51,720 --> 00:04:57,170 , Якія накіраваны на вас, і іншы выгляд для вашага навін - усё ў такім духу. 82 00:04:57,170 --> 00:05:00,610 Нарэшце, у вас ёсць кантралёры, якія ў асноўным, калі людзі пасылаюць вам паведамленні 83 00:05:00,610 --> 00:05:03,310 і вы робіце абнаўлення для вашага сервернай сістэме, 84 00:05:03,310 --> 00:05:06,400 Вы павялічыць кучу лічыльнікаў, і што заўгодна. 85 00:05:06,400 --> 00:05:07,860 Гэта вашы кантралёры. 86 00:05:07,860 --> 00:05:11,030 >> Я збіраюся казаць у асноўным аб мадэлях. 87 00:05:11,030 --> 00:05:14,030 Праглядаў тэхнічна не так складана, а гаворка ідзе больш з іх распрацоўцы 88 00:05:14,030 --> 00:05:22,040 Кантралёры будуць спецыфічнымі для таго, што Вы праектаванні. 89 00:05:22,040 --> 00:05:25,220 Але ёсць некаторыя даволі агульныя метады можна выкарыстоўваць 90 00:05:25,220 --> 00:05:30,220 каб зрабіць вашыя мадэлі прыемней і лягчэй працаваць з, што я думаю, што вельмі карысна. 91 00:05:30,220 --> 00:05:35,860 Гэта ў асноўным будзе пра тое, як мець справу з вашымі дадзенымі вэб-прыкладанняў у добры спосаб. 92 00:05:35,860 --> 00:05:40,420 Асноўныя пытанні, з мадэлямі 93 00:05:40,420 --> 00:05:44,540 у тым, што яны жывуць на кліента і на серверы, і вы павінны высветліць, 94 00:05:44,540 --> 00:05:51,170 а) як іх атрымаць - усе адпаведныя тыя - ад сервера да кліента, 95 00:05:51,170 --> 00:05:53,440 і б) як трымаць іх у сінхранізацыі. 96 00:05:53,440 --> 00:05:58,700 Вашы карыстальнікі будуць хацець, каб зрабіць некаторыя абнаўлення. 97 00:05:58,700 --> 00:06:00,470 Яны збіраюцца хочам зрабіць новыя паведамленні. 98 00:06:00,470 --> 00:06:04,800 Яны збіраюцца хачу любіць рэчы і рэчы, калі ў вас ёсць сімпатыі. 99 00:06:04,800 --> 00:06:11,490 Такія асноўныя тэхнічныя праблемы барацьбы з мадэлямі. 100 00:06:11,490 --> 00:06:15,680 Першае, што вы збіраецеся хочаце спытаць сябе, 101 00:06:15,680 --> 00:06:18,420 якія дадзеныя ідзе ў гэтай мадэлі і якія запыты мы збіраемся хочаце зрабіць - 102 00:06:18,420 --> 00:06:24,290 гэта значыць, як мы будзем глядзець на мадэлях? 103 00:06:24,290 --> 00:06:26,940 Для вашага Cat Facebook Напрыклад, 104 00:06:26,940 --> 00:06:31,520 ваш пост будзе мець аўтару, звязаныя з ім, 105 00:06:31,520 --> 00:06:35,660 некаторыя сцяне тэкст і атрымальнікам паведамленні сцяны. 106 00:06:35,660 --> 00:06:38,470 І тады вы, магчыма, захочаце запытаць, што ў кучу-рознаму. 107 00:06:38,470 --> 00:06:42,220 Вы хацелі б, каб глядзець на яго тым, хто пісаў, які пост, 108 00:06:42,220 --> 00:06:46,620 тым, хто атрымаў якую пасаду, можа быць, па даце іх былі размешчаны. 109 00:06:46,620 --> 00:06:50,340 Але калі вы збіраецеся зрабіць гэта па даце, то вы павінны дадаць яшчэ адно поле на сваю пасаду 110 00:06:50,340 --> 00:06:52,490 , Калі ён быў на самай справе адправіў. 111 00:06:52,490 --> 00:07:00,220 Гэтыя 2 фактары - тое, што дадзеныя, якія вы хочаце выкарыстоўваць і як вы хочаце, каб паглядзець яго - 112 00:07:00,220 --> 00:07:04,200 вы павінны думаць пра іх у першую чаргу таму, што яны залежаць адзін ад аднаго, 113 00:07:04,200 --> 00:07:08,030 і гэта будзе больш складана, каб дадаць іх у далейшым. 114 00:07:08,030 --> 00:07:12,750 >> Ёсць і іншыя меркаванні. 115 00:07:12,750 --> 00:07:17,540 Калі вы думаеце пра тое, як вы маеце справу з мадэлямі на сэрвэры 116 00:07:17,540 --> 00:07:20,540 тое, што вы хочаце паглядзець на гэта - 117 00:07:20,540 --> 00:07:27,440 вы ў асноўным хочуць, каб сервер так проста, як гэта магчыма. 118 00:07:29,440 --> 00:07:35,500 Робячы рэчы на ​​баку кліента, як правіла, значна хутчэй, калі вы можаце зрабіць гэта чыста на кліенце 119 00:07:35,500 --> 00:07:38,230 не робячы якіх-небудзь запыце сеткі. 120 00:07:38,230 --> 00:07:47,860 Ідэя складаецца ў тым, каб рабіць тое, што многія з гэтых запытаў як можна на кліенце. 121 00:07:47,860 --> 00:07:51,560 Адзіная праблема з гэтым 122 00:07:51,560 --> 00:07:54,160 з'яўляецца тое, што калі вы пытаецеся усе вашыя дадзеныя ў пачатку 123 00:07:54,160 --> 00:07:57,160 тое, што збіраецца заняць шмат часу для загрузкі. 124 00:07:57,160 --> 00:08:02,290 Такім чынам, ідэя заключаецца ў залатую сярэдзіну паміж наяўнасцю дастатковай колькасці дадзеных на баку кліента 125 00:08:02,290 --> 00:08:07,640 што вы можаце зрабіць вялікую частку працы там, але не толькі выманне ўсё адразу 126 00:08:07,640 --> 00:08:09,710 так што вы атрымаеце сапраўды павольныя час загрузкі ў пачатку. 127 00:08:09,710 --> 00:08:12,610 Напрыклад, для дадзеных кошкі 128 00:08:12,610 --> 00:08:20,340 Вы, напэўна, хацелі, каб прынесці кучу апошніх паведамленняў сцяны. 129 00:08:20,340 --> 00:08:23,790 Вы не хацелі б, каб прынесці ўсе з іх, таму што гэта можа вярнуцца праз пару гадоў. 130 00:08:23,790 --> 00:08:25,470 Але вы не хочаце, каб прынесці ім па адным 131 00:08:25,470 --> 00:08:28,740 таму што гэта ўвесці шмат сеткі наверсе. 132 00:08:28,740 --> 00:08:33,620 >> Гэта часта даволі цяжка - як толькі ў Вас працуе з базай дадзеных - 133 00:08:33,620 --> 00:08:37,210 часта даволі цяжка змяніць, якія дадзеныя ў вас ёсць у ім - 134 00:08:37,210 --> 00:08:40,510 гэта значыць, дадаць новы слупок базы дадзеных або нешта - 135 00:08:40,510 --> 00:08:43,510 так што добрая стратэгія на самай справе проста трымаць шмат вашых дадзеных у тэкставым кропля - 136 00:08:43,510 --> 00:08:53,880 кропля JSON - JSON быць JavaScript Object Notation - 137 00:08:53,880 --> 00:08:58,330 Прычына, па якой гэта карысна, таму што тады вы можаце дадаць новыя ўласцівасці 138 00:08:58,330 --> 00:09:01,920 на ўсе гэтыя JSON кроплі не змяняючы сваю базу дадзеных. 139 00:09:01,920 --> 00:09:06,860 Адзіны недахоп, што ў тым, што калі ў вас ёсць куча палёў 140 00:09:06,860 --> 00:09:09,890 што вы дададзеныя пазней - як схаваныя ў гэтай JSON кропля - 141 00:09:09,890 --> 00:09:12,850 то гэта складаней запытаць іх у базе дадзеных. 142 00:09:12,850 --> 00:09:17,690 Напрыклад, калі вы пазней - калі ў вас быў свой пост мадэль, што мы абмяркоўвалі раней 143 00:09:17,690 --> 00:09:25,380 толькі з аўтарам, атрымальніка і тэкст - 144 00:09:25,380 --> 00:09:29,000 Вы маглі таксама ёсць JSON кроплю, а затым, калі вы пазней хацеў дадаць поле даты 145 00:09:29,000 --> 00:09:31,000 Вы не павінны былі б змяніць вашыя базы. 146 00:09:31,000 --> 00:09:36,140 Вы можаце проста дадаць даты, каб усе тэкставыя палі. 147 00:09:36,140 --> 00:09:39,640 І тады вы былі б у стане глядзець на тых, хто на баку кліента, 148 00:09:39,640 --> 00:09:42,430 але вы не былі б у стане запытаць іх на боку сервера 149 00:09:42,430 --> 00:09:44,430 таму што гэта ўтоена ўнутры гэтага тэксту. 150 00:09:44,430 --> 00:09:49,920 >> Іншае пытанне, што вы хочаце, каб думаць пра 151 00:09:49,920 --> 00:09:52,400 як ваш кліент, і сервер збіраецеся мець зносіны. 152 00:09:52,400 --> 00:09:56,040 Вы, як правіла, хочуць, каб гэтая як мага больш простым. 153 00:09:56,040 --> 00:10:02,230 Вы можаце проста як кароткатэрміновага мяне-гэтага запыту дадзеных, 154 00:10:02,230 --> 00:10:09,140 Create-A-New-Object рэч, і запыт на абнаўленне-стары-аб'ект. 155 00:10:09,140 --> 00:10:12,930 І гэта ўсё былі б розныя URL-адрасы на сэрвэры, вы - 156 00:10:12,930 --> 00:10:20,030 , Што браўзэр будзе - вы можаце выкарыстоўваць AJAX запыты для ўсіх з іх 157 00:10:20,030 --> 00:10:24,000 і альбо прымаць, альбо размясціць дадзеныя. 158 00:10:24,000 --> 00:10:26,600 Зноў жа, для нашай кошкі Facebook Напрыклад, 159 00:10:26,600 --> 00:10:32,350 вы маглі б мець, што URL, каб атрымаць індывідуальны пост, 160 00:10:32,350 --> 00:10:39,750 і ў вас быў бы URL для стварэння новага запісу сцены 161 00:10:39,750 --> 00:10:45,670 і, магчыма, URL для загрузкі сваёй фатаграфіяй ў профілі, такія рэчы, як гэта. 162 00:10:45,670 --> 00:10:51,730 Але зноў жа, гэта загадзя атрымаць большасць вашых дадзеных, так што вам не прыйдзецца трымаць 163 00:10:51,730 --> 00:10:53,360 стварэнне сеткавых запытаў. 164 00:10:53,360 --> 00:10:59,030 Па гэтай прычыне, вы не можаце мець, што індывідуальны запыт атрымаць за адно паведамленне, 165 00:10:59,030 --> 00:11:03,210 і замест гэтага вы проста хочаце 1 запыт атрымаеце за ўсю сцяну. 166 00:11:03,210 --> 00:11:06,110 А потым, калі вы спрабуеце знайсці баланс, таму што - 167 00:11:06,110 --> 00:11:10,970 гэта таксама будзе залежаць ад вашага прыкладання. 168 00:11:10,970 --> 00:11:13,430 Таму што калі вы чакаеце, што людзі маюць толькі 10 ці 20 паведамленняў на сцяне 169 00:11:13,430 --> 00:11:15,430 што ўсё будзе добра. 170 00:11:15,430 --> 00:11:17,390 Але калі вы чакаеце яны маюць тысячы тады, што запыт зойме занадта шмат часу, 171 00:11:17,390 --> 00:11:23,580 і так што вы можаце дадаць Get-ўсё-паведамленні-так параметр. 172 00:11:23,580 --> 00:11:26,580 >> Для ўсіх з іх вы, верагодна, будзеце жадаць, каб сінхранізаваць дадзеныя ў JSON - 173 00:11:26,580 --> 00:11:29,260 JavaScript Object Notation. 174 00:11:29,260 --> 00:11:34,600 Практычна кожны мова мае справу з JSON вельмі добра. 175 00:11:34,600 --> 00:11:40,880 JQuery мае гэтую добрую функцыю getJSON, які будзе рабіць ўсю цяжкую працу за вас. 176 00:11:40,880 --> 00:11:47,390 І на PHP ёсць таксама вельмі добрыя функцыі JSON сувязі. 177 00:11:47,390 --> 00:11:52,660 Так, што, мабыць, лепшы фармат для адпраўкі мадэлі ўзад і наперад. 178 00:11:52,660 --> 00:11:56,570 >> У якасці прыкладу таго, што мы казалі пра да гэтага часу, 179 00:11:56,570 --> 00:12:00,520 вось прыклад патоку для вашай коткі Facebook прыкладання. 180 00:12:00,520 --> 00:12:07,760 Яна пачынаецца з вашага браўзэра, якая запрошвае база адрас вэб-сайта. 181 00:12:07,760 --> 00:12:15,470 Сервер, верагодна, пашле за статычны HTML і трохі JavaScript і CSS. 182 00:12:15,470 --> 00:12:19,170 Як правіла, лепш не рабіць ніякіх рэндэрынг на серверы. 183 00:12:19,170 --> 00:12:23,370 Вы, напэўна, не хочаце - 184 00:12:23,370 --> 00:12:28,360 што сервер ня робіць там ідзе ўніз спіс паведамленняў сцены 185 00:12:28,360 --> 00:12:31,120 і стварыць некаторы HTML для кожнага з іх і адпраўкі, што за. 186 00:12:31,120 --> 00:12:34,960 Як правіла, лепш рабіць гэта на баку кліента, так як у адваротным выпадку 187 00:12:34,960 --> 00:12:38,580 кожны раз, калі вы хочаце, каб паўторна намаляваць нешта, вы павінны зрабіць запыт на сервер. 188 00:12:38,580 --> 00:12:42,450 І, што вельмі хутка дае шмат накладных выдаткаў. 189 00:12:42,450 --> 00:12:47,430 Як правіла, лепш за ўсё, каб карабель пасылае статычны HTML 190 00:12:47,430 --> 00:12:50,660 а затым JavaScript і CSS, якія будуць выконваць рэндэрынг на баку кліента. 191 00:12:50,660 --> 00:12:56,750 Як толькі той матэрыял прыходзіць, 192 00:12:56,750 --> 00:13:03,500 то вы можаце мець - у JavaScript - вы можаце зрабіць запыты для дадзеных сцяне 193 00:13:03,500 --> 00:13:08,740 і ўсё ў такім духу, і пасля, што сервер у асноўным толькі рабіць запыты да базы дадзеных 194 00:13:08,740 --> 00:13:10,740 і праверкі правоў доступу. 195 00:13:10,740 --> 00:13:16,690 Важна толькі тое, што ён не можа адправіць па некаторых іншымі карыстальнікамі паведамленняў на сцяне 196 00:13:16,690 --> 00:13:19,220 што вы не можаце бачыць. 197 00:13:19,220 --> 00:13:28,050 Ён можа быць у асноўным вельмі тонкі пласт доступу да базы дадзеных, 198 00:13:28,050 --> 00:13:32,820 а затым усё, які паказвае дадзеныя - ўсе ўяўленні і іншае - 199 00:13:32,820 --> 00:13:37,280 тыя, можа адбыцца ў вашым браўзэры, а затым, калі вы хочаце зрабіць пост ці нешта 200 00:13:37,280 --> 00:13:40,000 Вы проста адправіць яшчэ адзін запыт. 201 00:13:40,000 --> 00:13:45,350 >> Там таксама некаторыя модныя рэчы вы можаце зрабіць зверху гэтага. 202 00:13:45,350 --> 00:13:49,550 З пункту гледжання атрымання больш падрабязнай тэхнічнай інфармацыі, 203 00:13:49,550 --> 00:13:53,360 развіваецца ў звычайнай JavaScript можа быць трохі хваравітым, 204 00:13:53,360 --> 00:13:56,220 таму, ёсць некаторыя бібліятэкі і інструменты, якія дапамогуць вам шмат з гэтым. 205 00:13:56,220 --> 00:14:03,690 Я думаю, што вы ўсе, напэўна, чулі пра JQuery што робіць робіць HTML рэндэрынг 206 00:14:03,690 --> 00:14:08,890 і маніпуляцыі нашмат прасцей - ёсць шмат фантазіі функцый для вяне, і выйдзе, 207 00:14:08,890 --> 00:14:12,020 і рабіць як дызельныя анімацыі. 208 00:14:12,020 --> 00:14:13,720 Там таксама гэтая бібліятэка называецца Underscore.js. 209 00:14:13,720 --> 00:14:20,760 Яна мае шмат карысных функцый карыснасці, рэчы, якія вы чакалі б JavaScript, каб мець 210 00:14:20,760 --> 00:14:24,740 што гэта сапраўды аленевая скура - такія рэчы, як ператасоўкі масіў, 211 00:14:24,740 --> 00:14:28,900 выдаленне дублікатаў са спісу, або сплошчаны спіс спісаў. 212 00:14:28,900 --> 00:14:30,900 Гэта толькі невялікі прыклад кода. 213 00:14:30,900 --> 00:14:36,520 Падкрэсліванне мае масу гэтых добрых функцый, якія вы хочаце вам прыйдзецца ўвесь час. 214 00:14:36,520 --> 00:14:38,840 >> А тут яшчэ больш за 1 бібліятэка, што я хацеў бы правесці трохі часу на 215 00:14:38,840 --> 00:14:44,800 называецца Backbone.js таму Магістральная сапраўды дапамагае вам справіцца з мадэлямі на баку кліента 216 00:14:44,800 --> 00:14:47,210 і шмат блытаніны, што гэта можа выклікаць. 217 00:14:47,210 --> 00:14:53,550 Магістральная дае гэтую канцэпцыю мадэляў і калекцый 218 00:14:53,550 --> 00:14:58,300 у JavaScript, якія ў асноўным так жа, як аб'ектаў JavaScript 219 00:14:58,300 --> 00:15:04,900 у масівах JavaScript, але ў іх ёсць падзеі, калі вы змяніць свае ўласцівасці. 220 00:15:04,900 --> 00:15:09,090 Гэтак жа, як у JavaScript, вы можаце мець падзея, калі кнопка атрымлівае націснуў ці нешта 221 00:15:09,090 --> 00:15:14,800 гэтыя мадэлі Магістральныя і калекцыі Магістральныя будзе трансляваць рэчы, як 222 00:15:14,800 --> 00:15:17,510 , Што, калі яны змяняюцца. 223 00:15:17,510 --> 00:15:22,270 Гэта азначае, што вы можаце проста напісаць нешта накшталт гэтага фрагмент кода тут - 224 00:15:22,270 --> 00:15:27,530 гэта кажа, калі вы што-небудзь дадаць да запісаў масіва вы перакроіць ўсю сцяну. 225 00:15:27,530 --> 00:15:34,270 І гэта было б сказаць, кожны раз, калі лік паста з падобных змен, 226 00:15:34,270 --> 00:15:38,970 Вы паведаміць карыстальніка, што хтосьці любіў свой пост. 227 00:15:38,970 --> 00:15:45,210 Ці калі любую маёмасць пасады змены вы перакроіць пост. 228 00:15:45,210 --> 00:15:51,050 Рэчы, як, што зэканоміць вам кучу складанасці, таму што інакш 229 00:15:51,050 --> 00:15:55,440 калі ў вас няма Некаторыя рамачныя як гэта, то кожны раз, калі ў кодзе, што вы змяніць 230 00:15:55,440 --> 00:16:04,280 што-небудзь пра пасаду, вы павінны былі б памятаць сябе называць усё робяць функцыі 231 00:16:04,280 --> 00:16:07,680 і ўсё ў такім духу, і калі вы хацелі дадаць нешта новае, што адбылося 232 00:16:07,680 --> 00:16:10,680 кожны раз, калі вы змянілі пост вам давядзецца прайсці праз кожны месца ў вашым 233 00:16:10,680 --> 00:16:14,610 код, які вы змянілі пасаду і дадаць, што новую рэч. 234 00:16:14,610 --> 00:16:21,450 Рамкі, як гэта будзе выдаліць шмат, што паміж пластом сувязі 235 00:16:21,450 --> 00:16:28,280 што робіць ваш код складаным і цяжка падтрымліваць. 236 00:16:28,280 --> 00:16:31,170 >> Там у трохі аб поглядах таксама. 237 00:16:31,170 --> 00:16:35,960 Я збіраюся пакінуць вялікую частку гэтага Білі, таму што яны тэхнічна не вельмі складана. 238 00:16:35,960 --> 00:16:43,540 Выкарыстоўвайце JQuery за прагляд. Гэта практычна як неабходнасць у гэтай кропцы. 239 00:16:43,540 --> 00:16:46,290 Ён проста робіць усё нашмат прасцей. 240 00:16:46,290 --> 00:16:48,290 Ёсць шмат бібліятэк. 241 00:16:48,290 --> 00:16:49,970 Калі вы ўскладнілі элементы карыстацкага інтэрфейсу, 242 00:16:49,970 --> 00:16:57,250 калі вы хочаце аўтазапаўнення рэч ці, як адзін з тых мудрагелістых мульты-селектар - 243 00:16:57,250 --> 00:17:04,790 калі вы хочаце што-небудзь падобнае, вы павінны, верагодна, проста шукаць вакол 244 00:17:04,790 --> 00:17:08,130 і вы можаце знайсці добрую бібліятэку, якая будзе рабіць тое, што вы хочаце. 245 00:17:08,130 --> 00:17:11,579 Білі растлумачыць больш пра фактычна цяжкіх частак выглядам. 246 00:17:11,579 --> 00:17:17,530 Акрамя таго, як нататка боку, Магістральная мае некаторыя функцыянальныя магчымасці для прыняцця праглядаў мець зносіны 247 00:17:17,530 --> 00:17:22,800 прыемна з мадэлямі - паглядзіце дакументацыю для ўсіх гэтых бібліятэк, на самай справе. 248 00:17:22,800 --> 00:17:28,270 Дастаткова зірнуць на дакументы. Яны вельмі добра напісана і лёгка прытрымлівацца. 249 00:17:28,270 --> 00:17:33,890 Увогуле, вы можаце ў значнай ступені толькі Google, калі ў вас ёсць праблемы. 250 00:17:33,890 --> 00:17:36,370 Ёсць шмат людзей, якія выкарыстоўваюць іх. 251 00:17:36,370 --> 00:17:42,020 Я думаю, што гэта як апошняе заўвага. 252 00:17:42,020 --> 00:17:48,770 >> Ёсць таксама некаторыя больш прасунутыя рэчы, якія вы можаце зрабіць, 253 00:17:48,770 --> 00:17:53,400 калі вы шукаеце, каб зрабіць ваш вэб-дадатак дадатковыя дзіўным. 254 00:17:53,400 --> 00:17:59,760 Вы можаце зрабіць - новая спецыфікацыя HTML5 мае шмат мудрагелістых рэчаў, якія вы можаце зрабіць. 255 00:17:59,760 --> 00:18:05,780 Лакальнае захоўванне дадзеных - што вы можаце захоўваць дадзеныя ў браўзэры - 256 00:18:05,780 --> 00:18:09,470 замест таго, каб вярнуцца назад і праглядзець сервер за ўсё, 257 00:18:09,470 --> 00:18:12,470 Вы можаце трымаць некаторыя з іх на баку кліента і, што нават дазваляе людзям - 258 00:18:12,470 --> 00:18:20,850 у некаторых выпадках яна можа нават дазволіць вам выкарыстоўваць вэб-старонкі ў аўтаномным рэжыме. 259 00:18:20,850 --> 00:18:26,980 Там у тое, што называецца WebSockets якія з'яўляюцца рознага роду сеткавых камунікацый 260 00:18:26,980 --> 00:18:30,930 дзе замест проста вы робіце адну заяўку, вы атрымаеце адказ, і ўсё гатова, 261 00:18:30,930 --> 00:18:35,240 Вы трымаеце адкрыць злучэнне з серверам і таму вы можаце рабіць рэчы, як 262 00:18:35,240 --> 00:18:37,240 абнаўлення ў рэальным часе. 263 00:18:37,240 --> 00:18:42,020 Такім чынам, калі вы спрабавалі зрабіць чат дадатак, вы можаце выкарыстоўваць WebSockets 264 00:18:42,020 --> 00:18:43,790 мець зносіны назад і наперад так, каб вам не прыйдзецца трымаць з просьбай, 265 00:18:43,790 --> 00:18:48,410 «О, сервер, хто-небудзь даслаць мне пабалбатаць?» кожныя 10 секунд ці нешта. 266 00:18:48,410 --> 00:18:55,620 Там таксама цікавая HTML5 функцыя, дзе вы можаце зрабіць яго падобным на 267 00:18:55,620 --> 00:18:58,340 Адрас старонкі ў сеткі змяняецца, нават не маючы на ​​самай справе перазагрузіць яго. 268 00:18:58,340 --> 00:19:03,230 Вы можаце выкарыстоўваць кнопкі Назад і Наперад, не робячы кучу сеткавых запытаў. 269 00:19:03,230 --> 00:19:14,660 Рэчы, як, што сапраўды карысна з пункту гледжання, што робіць яго хуткім, але і працаваць як вэб-дадатак павінна. 270 00:19:14,660 --> 00:19:17,680 >> Там таксама тое, што называецца CoffeeScript. 271 00:19:17,680 --> 00:19:24,450 CoffeeScript гэта іншую мову, на самай справе, што складае да JavaScript. 272 00:19:24,450 --> 00:19:30,080 Вы павінны напісаць ўвесь код у CoffeeScript, а затым запусціць гэты кампілятар, 273 00:19:30,080 --> 00:19:33,300 і ён выплёўвае файл JavaScript, які можна ўключыць у вэб-старонкі. 274 00:19:33,300 --> 00:19:38,860 Прычына, па якой CoffeeScript добры таму, што ён пазбаўляецца ад многіх 275 00:19:38,860 --> 00:19:44,760 дзіўныя выпадкі, якія JavaScript мае, дзе роўная роўных, 276 00:19:44,760 --> 00:19:51,130 і складае роўна рабіць розныя рэчы, ці як - 277 00:19:51,130 --> 00:19:55,740 ён мае больш добрае сінтаксіс для працы з масівамі і функцыямі. 278 00:19:55,740 --> 00:20:00,460 Гэта невялікі ўрывак з CoffeeScript, якая выдае спіс усіх квадратаў 279 00:20:00,460 --> 00:20:04,900 ад 10 ^ 2 да 1 ^ 2 у зваротным парадку. 280 00:20:04,900 --> 00:20:08,410 Як вы можаце бачыць, CoffeeScript часта дазваляе выказаць у 1 лініі 281 00:20:08,410 --> 00:20:10,890 што б узяць 5 радкоў JavaScript. 282 00:20:10,890 --> 00:20:13,230 Гэта можа зрабіць рэчы нашмат прасцей. 283 00:20:13,230 --> 00:20:15,390 Гэта крыху новага сінтаксісу, каб даведацца спачатку, 284 00:20:15,390 --> 00:20:18,010 але ён вызначана зробіць вашу працу больш прадуктыўнай у доўгатэрміновай перспектыве. 285 00:20:18,010 --> 00:20:22,050 >> Вы таксама можаце выкарыстоўваць іншыя мовы, на сэрвэры, чым PHP - 286 00:20:22,050 --> 00:20:27,570 Мовы, як Ruby, Python, ці ёсць нават праект пад назвай node.js 287 00:20:27,570 --> 00:20:31,450 што дазволіць вам выкарыстоўваць наяўнасць на серверы. 288 00:20:31,450 --> 00:20:34,700 Асабіста я вельмі, вельмі не падабаецца PHP. 289 00:20:34,700 --> 00:20:38,310 Я проста не падабаецца працаваць з ім. 290 00:20:38,310 --> 00:20:43,450 Калі вы таксама думаеце, што гэта жудасна cluge мовы, 291 00:20:43,450 --> 00:20:46,160 то вы можаце выкарыстоўваць адзін з іх замест гэтага. 292 00:20:46,160 --> 00:20:54,780 Увогуле, калі вы хочаце зрабіць што-то, і вы сапраўды не ведаеце, як бы вы гэта зрабілі, 293 00:20:54,780 --> 00:20:56,780 проста пошук у Інтэрнэце. 294 00:20:56,780 --> 00:20:59,990 Ёсць тоны і тоны рэсурсаў асабліва на - 295 00:20:59,990 --> 00:21:03,260 StackOverflow з'яўляецца вялікім. 296 00:21:03,260 --> 00:21:06,400 Менавіта гэта сайт, дзе праграмісты задаваць адзін аднаму пытанні. 297 00:21:06,400 --> 00:21:09,690 Вы, магчыма, сутыкнецеся з ім, калі вы былі праблемы на праблемныя CS50 мностваў. 298 00:21:09,690 --> 00:21:16,820 І ёсць тоны бібліятэк для вядзення ў значнай ступені ўсё, што вы хацелі б. 299 00:21:16,820 --> 00:21:21,710 Калі вы хочаце зрабіць што-то і вы не ведаеце, як гэта зрабіць, 300 00:21:21,710 --> 00:21:23,710 не думайце, што гэта немагчыма. 301 00:21:23,710 --> 00:21:26,160 Паглядзіце вакол, і вы можаце знайсці некаторыя добрыя рэсурсы. 302 00:21:26,160 --> 00:21:29,280 >> Як наогул падводзіць вынікі, 303 00:21:29,280 --> 00:21:33,650 асноўныя вынас з'яўляюцца трымаць рэчы простымі. 304 00:21:33,650 --> 00:21:36,010 Чым складаней код знаходзіцца ў пачатку 305 00:21:36,010 --> 00:21:40,370 і чым больш вы паспрабаваць і зрабіць модныя рэчы, 306 00:21:40,370 --> 00:21:43,300 тым больш часу спатрэбіцца, каб атрымаць што-то сапраўды функцыянальнае 307 00:21:43,300 --> 00:21:46,480 і тым цяжэй будзе змяніць пазней. 308 00:21:46,480 --> 00:21:49,580 Так, рабіць рэчы нямым, просты спосаб першы. 309 00:21:49,580 --> 00:21:51,720 Каб пагадзіцца з гэтым, 310 00:21:51,720 --> 00:21:59,070 ня бойцеся таго, каб выкінуць стары код або ачысткі яго шмат. 311 00:21:59,070 --> 00:22:05,320 Увогуле, як толькі вы на самой справе ёсць нешта працуе, 312 00:22:05,320 --> 00:22:09,640 гэта значна прасцей думаць пра што тады, калі вы ўсё яшчэ ў пачатковай стадыі 313 00:22:09,640 --> 00:22:12,610 пра тое, як бы гэта сказаць усё разам. 314 00:22:12,610 --> 00:22:17,500 Лепш за ўсё, каб зрабіць тупы магчымае дызайн, які працуе 315 00:22:17,500 --> 00:22:22,270 а затым палепшыць яго шматкроць, чым спрабаваць атрымаць усё правільна з першага разу. 316 00:22:22,270 --> 00:22:28,330 З пункту гледжання падзелу кліент-сервер, паспрабаваць захаваць ваш сервер вельмі проста - 317 00:22:28,330 --> 00:22:33,030 проста база дадзеных, а некаторыя аўтэнтыфікацыі і не робяць ніякай цяжкай працы там. 318 00:22:33,030 --> 00:22:37,540 Ва ўсіх вашых складаныя рэчы на ​​баку кліента ў браўзэры 319 00:22:37,540 --> 00:22:40,650 у JavaScript столькі, колькі вы можаце. 320 00:22:40,650 --> 00:22:43,420 Паглядзіце вакол бібліятэк, якія робяць вашу жыццё лепш. 321 00:22:43,420 --> 00:22:46,850 Заўсёды лепш выкарыстоўваць код, які нехта напісаў 322 00:22:46,850 --> 00:22:49,850 калі вы - і не пісаць яго самастойна. 323 00:22:49,850 --> 00:22:57,560 Там вельмі шмат рэчаў у Інтэрнэце. Google гэта ваш лепшы сябар. 324 00:22:57,560 --> 00:22:59,560 Google з'яўляецца лепшым сябрам праграміста. 325 00:22:59,560 --> 00:23:07,620 Так, безумоўна, не бойцеся, каб агледзецца на рэчы. 326 00:23:07,620 --> 00:23:11,860 Добра. І да Білі. 327 00:23:11,860 --> 00:23:14,600 >> [Білі] На самай справе, перш чым пачаць з некаторай дызайну рэчы, 328 00:23:14,600 --> 00:23:17,250 Хто-небудзь ёсць якія-небудзь пытанні для Бэна ні пра што, што ён казаў пра? 329 00:23:17,250 --> 00:23:20,290 Добра, добра. 330 00:23:20,290 --> 00:23:22,220 Зноў жа, дайце нам ведаць, калі што-небудзь не ясна 331 00:23:22,220 --> 00:23:25,420 або калі вы хочаце, каб мы пайшлі на нешта крыху больш. 332 00:23:25,420 --> 00:23:30,330 Я збіраюся зрабіць крок назад трохі, і казаць пра больш фундаментальных частак канструкцыі. 333 00:23:30,330 --> 00:23:34,840 Бэн згадаў мадэль пад назвай - прабачце, Model View Controller сістэма 334 00:23:34,840 --> 00:23:38,520 які з'яўляецца свайго роду тэхнічнага боку, таму я збіраюся глядзець на выглядам прыватнасці, 335 00:23:38,520 --> 00:23:42,930 і я збіраюся пачаць з як бы вы распрацаваць меркаванне, што выглядае прыгожа. 336 00:23:42,930 --> 00:23:50,540 Вось выгляд сапраўды базавы шаблон для нашага ката Facebook. 337 00:23:50,540 --> 00:23:54,190 Я думаю, што ёсць некаторыя фундаментальныя ў сучасным дызайне карыстацкага інтэрфейсу 338 00:23:54,190 --> 00:23:56,190 , Якія варта набірае абароты. 339 00:23:56,190 --> 00:23:58,210 Вы можаце заўважыць, што ёсць шмат белага прасторы па ўсёй старонцы, 340 00:23:58,210 --> 00:24:00,790 шмат месца для рэчаў. 341 00:24:00,790 --> 00:24:02,580 Не хочацца вас ёсць, каб раздушыць рэчы ў старонку. 342 00:24:02,580 --> 00:24:06,700 Вы хочаце пакінуць шмат месца адкрыты, і калі вы ідзяце ў амаль любой сучаснай сайце 343 00:24:06,700 --> 00:24:08,380 вы ўбачыце, што менавіта белая ўсюды. 344 00:24:08,380 --> 00:24:10,380 Там у белы ў месцах вы не будзеце чакаць. 345 00:24:10,380 --> 00:24:14,570 У вас ёсць гэтая каляровую палітру, і гэта мудра ў пачатку 346 00:24:14,570 --> 00:24:17,880 выбраць каляровую палітру, што вы збіраецеся працаваць, і развівацца. 347 00:24:17,880 --> 00:24:22,250 Вы таксама - ён дапамагае выбраць шрыфт, і такім чынам вы роду працы з 348 00:24:22,250 --> 00:24:24,450 гэтыя канкрэтныя асновы дызайну. 349 00:24:24,450 --> 00:24:26,910 У вас ёсць свой тып, у вас ёсць свае колеру, а затым вы можаце роду 350 00:24:26,910 --> 00:24:29,380 адпавядаць ўсё астатняе ў па меры неабходнасці. 351 00:24:29,380 --> 00:24:37,710 Так што, як я ўжо сказаў, з вашай каляровай гаме вы хочаце выкарыстоўваць больш смелыя колеру вашага каляровай гаме 352 00:24:37,710 --> 00:24:40,320 эканомна. Загалоўкі добрыя. Кнопкі добра мець сапраўды вялікія, яркія колеру. 353 00:24:40,320 --> 00:24:43,710 Але ў цэлым, калі ў вас ёсць сайт, які мае колеру ўсюды, 354 00:24:43,710 --> 00:24:47,250 усё гледзячы вам у твар, ён проста выглядае застаўленай, і ён нікуды не падыходзіць. 355 00:24:47,250 --> 00:24:50,430 Вы хочаце, каб правіла, выкарыстоўваюць светлыя тоны. 356 00:24:50,430 --> 00:24:52,890 Паспрабуйце, зноў жа, выбраць даволі паслядоўную каляровую схему. 357 00:24:52,890 --> 00:24:56,640 Вы можаце мець гэтыя маленькія пырскі вялікай колькасцю кветак - 358 00:24:56,640 --> 00:25:00,240 якія могуць выглядаць даволі добра, але вы хочаце выкарыстоўваць іх даволі эканомна. 359 00:25:00,240 --> 00:25:04,270 >> Як я ўжо сказаў, вы хочаце быць мінімальным. Менш амаль заўсёды больш. 360 00:25:04,270 --> 00:25:07,430 Калі вы можаце паказаць нешта ці не адлюстроўваць нешта, 361 00:25:07,430 --> 00:25:10,230 і ты накшталт не ўпэўненыя, ці варта яму быць там па змаўчанні - 362 00:25:10,230 --> 00:25:13,400 верагодна, Вы лепш ад пакідаючы яго. Вы заўсёды можаце дадаць яго ў далейшым. 363 00:25:13,400 --> 00:25:16,620 Так, трымаць рэчы простымі. 364 00:25:16,620 --> 00:25:19,510 Але самае галоўнае, вы хочаце разгледзець некалькі праектаў. 365 00:25:19,510 --> 00:25:23,520 Не думайце, што, калі вы робіце сайт, у вас ёсць у вашай галаве, што вы збіраецеся 366 00:25:23,520 --> 00:25:26,310 зрабіць сайт у пэўным сэнсе, і гэта будзе выглядаць гэтак жа, як гэта. 367 00:25:26,310 --> 00:25:29,830 Гэта будзе мець сіні загаловак у верхняй і сіні бакавую панэль 368 00:25:29,830 --> 00:25:32,670 а затым жоўты рэч падзагаловак. 369 00:25:32,670 --> 00:25:34,670 Вы хочаце, каб некалькі шаблонаў. 370 00:25:34,670 --> 00:25:37,350 Вы можаце альбо - калі вы добра з Photo Shop, вы можаце адкрыць, што і роды 371 00:25:37,350 --> 00:25:39,600 дызайн сайта, як вам падабаецца, каб яна выглядала. 372 00:25:39,600 --> 00:25:41,680 Калі няма, то вы можаце проста выкарыстоўваць ручку і паперу, 373 00:25:41,680 --> 00:25:44,000 але падрапаць да некалькіх канструкцый. 374 00:25:44,000 --> 00:25:47,000 Вы хочаце, каб у асноўным маюць наладзіць дзе ў вас ёсць шмат розных канструкцый, 375 00:25:47,000 --> 00:25:50,810 і калі адзін сканчаецца працу, то гэта выдатна. 376 00:25:50,810 --> 00:25:53,370 Калі заканчваецца няўдачу, то ў вас заўсёды ёсць яшчэ адзін, каб звярнуцца. 377 00:25:53,370 --> 00:25:57,960 Увогуле, не адчуваю, што вы павінны быць абмежаваныя 378 00:25:57,960 --> 00:26:00,830 у якой бы там ні дызайн вы першапачаткова рашэнне аб. 379 00:26:00,830 --> 00:26:04,420 Канструкцыі вельмі зменлівыя, і частка важнасці мадэлі 380 00:26:04,420 --> 00:26:09,480 выгляд сістэмны кантролер з'яўляецца тое, што вы можаце памяняць у і розныя погляды, якія вы хочаце. 381 00:26:09,480 --> 00:26:13,510 Вы можаце паўплываць свае дадзеныя ў адзін бок, а затым вырашыць,, ой, на самай справе, гэта не працуе, што добра. 382 00:26:13,510 --> 00:26:19,190 Я думаю, што гэта свайго роду занадта складаным ці ёсць частка тут, што на самой справе не працуе, 383 00:26:19,190 --> 00:26:22,150 так што я проста хачу, каб цалкам адмовіцца ад гэтага віду і своп ў зусім новай. 384 00:26:22,150 --> 00:26:24,790 Мы ўсё яшчэ можам выкарыстоўваць старыя мадэлі і старыя кантролеры. 385 00:26:24,790 --> 00:26:27,490 Мы можам зрабіць усё на серверы і кліенце, як нам бы раней. 386 00:26:27,490 --> 00:26:32,850 Але фактычнае хваля даных на дысплеі будзе трохі адрознівацца. 387 00:26:32,850 --> 00:26:35,840 >> Наколькі на самай справе рэалізацыі дызайн вы хочаце, 388 00:26:35,840 --> 00:26:39,330 калі ў вас ёсць некалькі канструкцый накідаў на паперы ці на Photo Shop або любы іншы, 389 00:26:39,330 --> 00:26:42,120 Ёсць цэлы шэраг інструментаў, якія даступныя для вас. 390 00:26:42,120 --> 00:26:45,700 Першы вы вельмі добра знаёмыя з якой ваш HTML, PHP, або тое, 391 00:26:45,700 --> 00:26:48,990 мову вы выкарыстоўваеце толькі для кадавання статычных старонак на вашым сайце. 392 00:26:48,990 --> 00:26:51,990 Вы шмат працавалі з HTML, які выгляд дае вам гэтыя тэгі 393 00:26:51,990 --> 00:26:57,820 што вы можаце пакласці рэчы ў, і ў асноўным гэта спосаб арганізацыі змесціва. 394 00:26:57,820 --> 00:27:00,990 Напрыклад, у вас ёсць загаловак там, так што вы будзеце мець, тэг загалоўка, 395 00:27:00,990 --> 00:27:05,770 і гэта будзе мець некаторы тэкст усярэдзіне яго, якая, верагодна, будзе ў іншы тэг. 396 00:27:05,770 --> 00:27:08,380 Тады ў вас ёсць ўрэзку магчыма, з некаторымі розных звёнаў, 397 00:27:08,380 --> 00:27:10,160 і тыя збіраюцца ўсе быць у асобных тэгаў. 398 00:27:10,160 --> 00:27:13,870 Так, у асноўным HTML у яго сэрца гэта спосаб падзелу старонку, як 399 00:27:13,870 --> 00:27:16,980 вы ў канчатковым выніку хочаце адфарматаваць яго. 400 00:27:16,980 --> 00:27:18,980 Такім чынам, яшчэ раз, вы бачылі, што раней. 401 00:27:18,980 --> 00:27:20,540 Ты вельмі зручна працаваць з ім зараз 402 00:27:20,540 --> 00:27:23,120 улічваючы, што вы зрабілі ў апошні PSET спадзяюся, 403 00:27:23,120 --> 00:27:26,150 так што не павінна быць ніякіх праблем. 404 00:27:26,150 --> 00:27:31,280 >> Тады ў вас ёсць CSS, які ў асноўным апрацоўвае ўсе дызайну статычных аспектах. 405 00:27:31,280 --> 00:27:35,320 Было б апрацоўваць ўсе колеры, усе пазіцыянаванні розных элементаў, 406 00:27:35,320 --> 00:27:36,840 дзе яны ідуць з адносна адзін аднаго, 407 00:27:36,840 --> 00:27:41,530 якія яны вялікія, розныя віды пазіцыямі, якія вам прыйдзецца - 408 00:27:41,530 --> 00:27:46,030 іншымі словамі, вы можаце мець рэчы замацаваны так, каб, калі вы пракруціць ўніз яны застаюцца, 409 00:27:46,030 --> 00:27:48,700 ці вы можаце мець рэчы ў адносінах да іншых элементаў. 410 00:27:48,700 --> 00:27:50,730 Усе такога роду рэчы ў CSS. 411 00:27:50,730 --> 00:27:54,630 Акрамя таго, вы можаце зрабіць розныя ўпрыгажэнні, вы можаце мець колер тэксту, 412 00:27:54,630 --> 00:27:56,630 тэкставыя эфекты, усё ў такім жа родзе. 413 00:27:56,630 --> 00:28:00,360 Бэн даў сапраўды добры семінара на гэтую мінулыя выхадныя, 414 00:28:00,360 --> 00:28:04,450 і таму я абавязкова праверыць б, што, калі вы плануеце рабіць некаторыя модныя рэчы з CSS. 415 00:28:04,450 --> 00:28:09,850 CSS3 на самай справе новая версія CSS, і гэта можа зрабіць усё віды сапраўды добрых рэчаў. 416 00:28:09,850 --> 00:28:14,750 Ён можа рабіць градыенты, вы можаце мець добрыя, закругленыя куты, вы можаце зрабіць усё віды матэрыялу 417 00:28:14,750 --> 00:28:17,940 каб зрабіць ваш сайт выглядаць больш сучаснымі і фантазіі. 418 00:28:17,940 --> 00:28:22,150 >> Наступны інструмент JavaScript і JQuery, які Бэн крыху пагаварылі пра, 419 00:28:22,150 --> 00:28:24,150 але я атрымаю крыху далей у. 420 00:28:24,150 --> 00:28:28,100 JavaScript, як вы працавалі з ім трохі, або па крайняй меры бачылі гэта ў лекцыі, 421 00:28:28,100 --> 00:28:31,870 гэта свайго роду спосаб дынамічна рабіць рэчы ў HTML. 422 00:28:31,870 --> 00:28:35,950 HTML, як вы ведаеце, з'яўляецца статычным, таму, як толькі ў вас ёсць HTML вы не можаце змяніць яго. 423 00:28:35,950 --> 00:28:40,050 Але ў JavaScript, у пэўным сэнсе, гэта спосаб быць у стане змяніць HTML. 424 00:28:40,050 --> 00:28:44,520 Такім чынам, вы можаце зрабіць гэта, і гэта выдатна, але JavaScript сапраўды боль, каб працаваць з. 425 00:28:44,520 --> 00:28:49,050 Гэта так доўга і тупой і рабіць нават самыя простыя рэчы 426 00:28:49,050 --> 00:28:51,630 патрабуе шмат ліній JavaScript. 427 00:28:51,630 --> 00:28:55,410 Так, JQuery у асноўным гэта бібліятэка для JavaScript, які спрашчае ўсё гэта. 428 00:28:55,410 --> 00:28:59,880 Гэта кажа, добра, калі вы хочаце мець квадратную скрынку раздаецца з левага 429 00:28:59,880 --> 00:29:03,980 і адыходзяць на другой старонцы, так што гэта не знаходзіцца ў сярэдзіне, у JavaScript, які возьме - 430 00:29:03,980 --> 00:29:06,340 Я не ведаю, сто лініі, каб зрабіць, і гэта будзе боль, 431 00:29:06,340 --> 00:29:10,540 і вы выходзіце з яго ненавідзець усё пра вэб-праграмаванні. 432 00:29:10,540 --> 00:29:15,380 JQuery вы ў асноўным маюць элемент-кропка-выразная, ці нешта накшталт гэтага. 433 00:29:15,380 --> 00:29:18,580 Так, вельмі, вельмі простыя функцыі, якія дазволяць вам зрабіць усё віды анімацыю 434 00:29:18,580 --> 00:29:20,580 і такая рэч. 435 00:29:20,580 --> 00:29:23,300 Іншая справа, што гэтыя 2 вельмі добра для проста робіць дынамічныя рэчы 436 00:29:23,300 --> 00:29:25,300 з вэб-сайтам. 437 00:29:25,300 --> 00:29:28,370 Так, а не проста мець свой старонку HTML - які адлюстроўвае некаторыя дадзеныя, але на самой справе не 438 00:29:28,370 --> 00:29:32,130 нічога рабіць - JavaScript і JQuery дазволіць Вам мець кнопкі, вы можаце націснуць на, 439 00:29:32,130 --> 00:29:37,960 і вы можаце перацягваць элементы і переупорядочиваем іх і сартаваць іх, і маюць новыя элементы 440 00:29:37,960 --> 00:29:40,500 дададзеныя або выдаленыя. Вы можаце дадаць-выдалення, такога роду рэчы. 441 00:29:40,500 --> 00:29:44,570 Так, JQuery робіць тон прахалодных рэчах. 442 00:29:44,570 --> 00:29:48,840 І Випул фактычна даючы семінар па гэтым сёння, на мой погляд, у 5-гадзін, 443 00:29:48,840 --> 00:29:51,220 так што калі вы можаце застацца на так доўга, што б - 5 ці 4? 444 00:29:51,220 --> 00:29:54,930 Чатыры. Выбачайце. Гэта на самай справе адразу пасля гэтага, таму я б рэкамендаваў 445 00:29:54,930 --> 00:29:56,680 прыліпання вакол для яго, калі можна. 446 00:29:56,680 --> 00:30:00,180 JQuery супер, супер карысна, і вы будзеце ў стане зрабіць шмат сапраўды добрых рэчаў з ім 447 00:30:00,180 --> 00:30:03,460 для амаль любога праекта вэб-распрацоўкі. 448 00:30:03,460 --> 00:30:06,200 >> Цяпер я збіраюся трапіць у свайго роду адрозненні. 449 00:30:06,200 --> 00:30:08,210 Я казаў у асноўным аб карыстацкім інтэрфейсе. 450 00:30:08,210 --> 00:30:11,510 Карыстацкі інтэрфейс з'яўляецца толькі дызайн сайта. 451 00:30:11,510 --> 00:30:13,780 Але ёсць свайго роду яшчэ адна канцэпцыя, якая з'яўляецца карыстацкі досвед. 452 00:30:13,780 --> 00:30:15,900 Два вельмі розныя. 453 00:30:15,900 --> 00:30:19,440 Інтэрфейс, безумоўна, частка вопыту. 454 00:30:19,440 --> 00:30:21,340 Іншымі словамі, калі вы заходзіце на сайт, вы паглядзіце на інтэрфейс. 455 00:30:21,340 --> 00:30:22,960 Гэта частка таго, як вы адчуваеце на сайт. 456 00:30:22,960 --> 00:30:24,960 Але карыстацкі вопыт больш за тое. 457 00:30:24,960 --> 00:30:29,910 Вопыт Карыстальнік аб тым, што ствараецца ўражанне, што карыстальнік атрымлівае з вашага сайта ёсць. 458 00:30:29,910 --> 00:30:31,910 Такім чынам, відавочна, інтэрфейс з'яўляецца часткай гэтага. 459 00:30:31,910 --> 00:30:35,340 І гэта, безумоўна, неабходная частка, але гэта не дастаткова. 460 00:30:35,340 --> 00:30:38,790 Іншымі словамі, калі ў вас ёсць прыемны інтэрфейс, і гэта даволі і маляўнічы, і ўсё, што, 461 00:30:38,790 --> 00:30:43,650 гэта выдатна, але калі карыстальнік пераходзіць на ваш сайт, бачыць сімпатычную макет, і гэта бянтэжыць 462 00:30:43,650 --> 00:30:47,060 усё, паняцця не мае, як што-небудзь рабіць, то, відавочна, вы зрабілі сапраўды 463 00:30:47,060 --> 00:30:48,930 бедных сайт. 464 00:30:48,930 --> 00:30:50,930 Гэта свайго роду, дзе карыстацкі досвед прыходзіць цалі 465 00:30:50,930 --> 00:30:54,570 Я збіраюся распавесці колькі словаў пра UX дызайн - UX гэта скарачэнне ад карыстацкага досведу - 466 00:30:54,570 --> 00:30:58,050 і накшталт як вы можаце пераканацца, што ў вас ёсць добры вопыт карыстальніка. 467 00:30:58,050 --> 00:31:04,330 Першы заключаецца ў тым, што вы можаце распрацаваць сайт, дзе карыстальнік можа рабіць усё, што 468 00:31:04,330 --> 00:31:06,820 што карыстальнік, магчыма, хоча. 469 00:31:06,820 --> 00:31:08,940 Але калі карыстальнік не можа зразумець, як рабіць тыя рэчы - 470 00:31:08,940 --> 00:31:12,850 іншымі словамі, калі карыстальнік не ёсць добрая ідэя, калі яны ідуць на ваш сайт з, 471 00:31:12,850 --> 00:31:17,660 "О, калі я хачу абнавіць свой профіль, то я націскаю гэтую кнопку, або калі я хачу размясціць на 472 00:31:17,660 --> 00:31:20,850 чыйсьці сцяна, то я іду ў іх сцяны і націсніце на каробачку ". 473 00:31:20,850 --> 00:31:24,410 Калі карыстальнік не ведае, што, то вы эфектыўна маюць на самай справе не 474 00:31:24,410 --> 00:31:27,080 рэалізаваны гэтую функцыянальнасць правільна. 475 00:31:27,080 --> 00:31:30,900 Частка рэалізацыі функцыянальнасці з'яўляецца тое, што карыстальнікі на самай справе ў стане выкарыстоўваць яго. 476 00:31:30,900 --> 00:31:34,810 І гэта можа быць непрыемна - вы можаце зрабіць сайт, і ён можа зрабіць усё віды 477 00:31:34,810 --> 00:31:37,810 выдатныя рэчы, але тады вы будзеце мець людзей праверыць яго і сказаць: "Гэта не можа гэтага зрабіць. 478 00:31:37,810 --> 00:31:39,770 Чаму ён не можа гэта зрабіць? ", І вы будзеце казаць, вярнуцца да іх, 479 00:31:39,770 --> 00:31:44,420 "Ну, ён можа. Вы проста павінны пайсці ў меню сёмы выпадальнага на гэты нікому не вядомы 480 00:31:44,420 --> 00:31:48,470 старонкі, што толькі можна знайсці на спасылку ў правым ніжнім куце "ці нешта. 481 00:31:48,470 --> 00:31:50,430 Відавочна, вы не хочаце, што. 482 00:31:50,430 --> 00:31:53,420 Вы хочаце, каб гэта было зразумела для карыстальнікаў, што яны павінны зрабіць, 483 00:31:53,420 --> 00:31:56,240 і яна павінна быць простай і інтуітыўна зразумелы для іх. 484 00:31:56,240 --> 00:32:01,180 >> Іншая справа, што вы хочаце, каб паспрабаваць зрабіць, гэта, калі хто-то збіраецца ісці на ваш сайт 485 00:32:01,180 --> 00:32:05,520 і 9 з 10 разоў зрабіць дзеянне А, і 1 з 10 раз зрабіць дзеянняў B, 486 00:32:05,520 --> 00:32:08,950 вы, верагодна, хочаце, каб засяродзіцца сваім вопытам дзеянняў А. 487 00:32:08,950 --> 00:32:12,240 Іншымі словамі, вы хочаце зрабіць гэта вельмі, вельмі ясна, як гэта зрабіць A. 488 00:32:12,240 --> 00:32:15,980 Павінна быць пярэдняя-цэнтравы - зайсці на сайт, паглядзець яе; о, гэта тут жа. 489 00:32:15,980 --> 00:32:20,850 У той час як B, відавочна, вы хочаце быць зразумела, але вы можаце пакінуць яго крыху больш 490 00:32:20,850 --> 00:32:22,850 у фонавым рэжыме. 491 00:32:22,850 --> 00:32:24,640 Дэвід дае добры прыклад гэтага ў лекцыі, 492 00:32:24,640 --> 00:32:26,640 якая з'яўляецца сістэмай Boston T. 493 00:32:26,640 --> 00:32:29,440 Калі вы ідзяце ў Бостан T, і вы хочаце, каб купіць білет, 494 00:32:29,440 --> 00:32:32,700 Вы павінны ўвайсці ў 5 меню, перш чым вы сапраўды зможаце набыць квіток 495 00:32:32,700 --> 00:32:37,130 для значэння ў $ 2, $ 2.50, што з'яўляецца, колькі трэба, каб ездзіць у метро 496 00:32:37,130 --> 00:32:39,130 ў адным кірунку. 497 00:32:39,130 --> 00:32:41,600 Гэта праблема, таму што большасць людзей, якія язда ў метро 498 00:32:41,600 --> 00:32:44,880 верагодна, проста хачу, каб пайсці ў адным месцы, купіць свой білет, патрапіць на адразу. 499 00:32:44,880 --> 00:32:47,550 Гэта не мае сэнсу, што яны павінны прайсці праз мноства розных меню 500 00:32:47,550 --> 00:32:49,550 туды патрапіць. 501 00:32:49,550 --> 00:32:51,760 Лепшы карыстацкі досвед будзе хуткая кнопка на першай старонцы 502 00:32:51,760 --> 00:32:54,760 што проста кажа: "купіць квіток у адзін канец на", і, што б паставіць ва ўсіх стандарту 503 00:32:54,760 --> 00:32:58,550 значэнні па змаўчанні, а затым, калі хтосьці захоча купіць іншую білет, чым, 504 00:32:58,550 --> 00:33:01,690 яны ўсё яшчэ, вядома, ёсць магчымасць, але вы аптымізавалі для 505 00:33:01,690 --> 00:33:04,080 агульнае выкарыстанне выпадак, які з'яўляецца сапраўды важным. 506 00:33:04,080 --> 00:33:06,830 Вы можаце бачыць прыклады гэтага на Facebook, ці не так? 507 00:33:06,830 --> 00:33:09,410 Калі вы ідзяце ў Facebook, і вы жадаеце апублікаваць статус, 508 00:33:09,410 --> 00:33:11,710 гэта правільна наверсе, які з'яўляецца тое, што вы часта хочуць зрабіць. 509 00:33:11,710 --> 00:33:14,730 Як толькі вы ўвойдзеце ў старонку, вы можаце зрабіць самыя агульныя рэчы, якія 510 00:33:14,730 --> 00:33:16,730 што вы хочаце зрабіць. 511 00:33:16,730 --> 00:33:17,550 Калі вы хочаце зрабіць трохі больш складаныя рэчы, як, 512 00:33:17,550 --> 00:33:21,070 сказаць, што я хачу пайсці ў сцяну майго сябра і адправіць фатаграфію па ім - 513 00:33:21,070 --> 00:33:24,810 які я хачу зрабіць часта, але не так часта, як размяшчэнне абнаўлення статусу - 514 00:33:24,810 --> 00:33:28,200 так што ў гэтым выпадку, я друкую яго імя ў поле ў верхняй, націсніце на іх профілі, 515 00:33:28,200 --> 00:33:31,680 а затым, усё ж, гэта на самым версе там аднойчы я атрымаў у свой профіль. 516 00:33:31,680 --> 00:33:38,240 Зноў жа, я аптымізаваныя ў прыярытэце за выключэннем выпадкаў, найбольш агульнага карыстання. 517 00:33:38,240 --> 00:33:41,800 >> Яшчэ адна важная рэч у тым, што часта людзі будуць свайго роду паспрабаваць абысці гэта 518 00:33:41,800 --> 00:33:44,890 , Кажучы, добра, так што я зрабіў сайт, і людзі знаходзяць, што гэта памылковае меркаванне, 519 00:33:44,890 --> 00:33:46,110 і гэта праблема, ці не так? 520 00:33:46,110 --> 00:33:49,210 Відавочна, я не хачу, каб людзі блытаць зместам майго сайта. 521 00:33:49,210 --> 00:33:53,210 Але шлях да вырашэння, што не мець нешта выскачыць кажучы, 522 00:33:53,210 --> 00:33:55,290 эй, я збіраюся навучыць вас, як выкарыстоўваць гэты сайт. 523 00:33:55,290 --> 00:33:58,130 Крок 1 - націсніце на гэтую кнопку. Крок 2 - ідуць сюды. 524 00:33:58,130 --> 00:34:03,080 Вядома, гэта спосаб абыйсці гэта - гэта спосаб, што вы можаце сказаць людзям, што рабіць, але гэта 525 00:34:03,080 --> 00:34:05,080 сапраўды не аптымальнай выявай. 526 00:34:05,080 --> 00:34:07,420 Калі я іду на сайт і раптам я абстралялі з гэтага падручніка, што кажа мне 527 00:34:07,420 --> 00:34:11,739 што рабіць і куды ісці, і ўсё, што, гэта не забаўка для мяне. 528 00:34:11,739 --> 00:34:13,739 Гэта не добры вопыт для мяне. 529 00:34:13,739 --> 00:34:17,130 Гэта выгляд болю. Я хачу проста пачаць рабіць рэчы. 530 00:34:17,130 --> 00:34:19,449 Людзі збіраюцца, каб закрыць іх дыялогавым акне, 531 00:34:19,449 --> 00:34:23,580 ці выйсці з падручніка, не ведаю, што рабіць, а потым скардзіцца, таму што 532 00:34:23,580 --> 00:34:25,580 вы не сказалі ім, што рабіць. 533 00:34:25,580 --> 00:34:29,530 Шлях да вырашэння гэта не даючы якой-небудзь падручнік ці кірунках - 534 00:34:29,530 --> 00:34:31,530 нешта ў гэтым родзе. 535 00:34:31,530 --> 00:34:33,719 Столькі, колькі вы можаце пазбегнуць гэтага, вы сапраўды хочаце, каб паказаць карыстальніку, што рабіць 536 00:34:33,719 --> 00:34:36,429 проста па характары, як вэб-сайт выкладваецца. 537 00:34:36,429 --> 00:34:39,090 Іншымі словамі, калі я пайду ў Facebook без ўваходу ў сістэму, 538 00:34:39,090 --> 00:34:40,920 першае, што я бачу на галоўнай старонцы - 539 00:34:40,920 --> 00:34:44,480 гэта крыху Увайсці скрынка. Так, дух. Я павінен увайдзіце Гэта прама там. 540 00:34:44,480 --> 00:34:48,030 Прымаючы пад увагу, калі б я пайшоў у Facebook, і мне прыйшлося націсніце трохі спасылку ўнізе 541 00:34:48,030 --> 00:34:51,920 што сказаў 'увайсці' і астатняя частка старонкі была проста нейкая карцінка ці нешта, 542 00:34:51,920 --> 00:34:54,820 Я б не ведаю, што рабіць, ці не так? Я б блытаць. 543 00:34:54,820 --> 00:34:58,590 Так, ён можа сказаць мне, каб пайсці туды і націсніце кнопку, каб увайсці, 544 00:34:58,590 --> 00:35:01,080 або ўвайсці ў сістэму кнопку можа быць на самым версе, куды я іду, каб убачыць яго. 545 00:35:01,080 --> 00:35:04,780 Вы хочаце, каб заўсёды паказваць карыстачу, што рабіць, 546 00:35:04,780 --> 00:35:06,750 і што павінна быць уласціва самой старонкі. 547 00:35:06,750 --> 00:35:09,880 >> Калі вы думаеце аб канструкцыі і насмешлівы да розных спосабаў 548 00:35:09,880 --> 00:35:13,810 выказваючы свой сайт, вы сапраўды хочаце, каб думаць пра тое, што карыстальнікі будуць 549 00:35:13,810 --> 00:35:19,380 рабіць і як вы можаце паказаць ім, што рабіць. 550 00:35:19,380 --> 00:35:23,530 Апошняе, што такое тэставанне, сапраўды, вельмі важна. 551 00:35:23,530 --> 00:35:27,400 Гэта выдатна, каб прымусіць кагосьці - атрымаць аднаго, прымусіць каго-то вы не ведаеце нават - 552 00:35:27,400 --> 00:35:30,420 хто ніколі не бачыў сайт, перш чым выкарыстоўваць сайт. 553 00:35:30,420 --> 00:35:33,650 Таму што вы працавалі на месцы на працягу некалькіх гадзін, вы былі гледзячы на ​​яго, 554 00:35:33,650 --> 00:35:36,670 і вы сапраўды ведаеце, што рабіць, таму відавочна, што вы збіраецеся тэставаць 555 00:35:36,670 --> 00:35:39,520 рэчы, якія вы працавалі, і што вы ведаеце, працу. 556 00:35:39,520 --> 00:35:42,680 Але калі хтосьці прыходзіць і выкарыстоўвае сайт, які ніколі не выкарыстоўваў яго раней, 557 00:35:42,680 --> 00:35:46,880 што гэта ўнікальны вопыт, таму што ў вас ёсць хтосьці, хто не мае ніякіх папярэдніх ведаў 558 00:35:46,880 --> 00:35:51,530 з сайта ўваход у яго, так што яны не прыйдзецца эфектыўна ні найменшага падання, што рабіць 559 00:35:51,530 --> 00:35:54,890 або якую прэцэдэнтаў прысутнічаюць для іх. 560 00:35:54,890 --> 00:36:00,930 Гэта выдатна. Гэта ўнікальная, таму што яны па сутнасці чалавек з пустым для розуму. 561 00:36:00,930 --> 00:36:03,750 Яны могуць расказаць вам, калі нешта бянтэжыць ці незразумела. 562 00:36:03,750 --> 00:36:07,580 Яны могуць даць вам прадстаўленне аб тым, што менавіта карыстальнік вопыт вашага сайта. 563 00:36:07,580 --> 00:36:10,630 Гэта можа быць вельмі цяжка сказаць, што сябе, так вызначана я хацеў бы заклікаць вас 564 00:36:10,630 --> 00:36:13,640 як вы распрацоўваеце вашыя праекты - калі вы робіце вэб-праектаў - 565 00:36:13,640 --> 00:36:18,290 каб людзі выкарыстоўваюць сайт ужо ў вас ёсць нейкі функцыянальнай дэма. 566 00:36:18,290 --> 00:36:25,330 >> Цяпер я збіраюся пагаварыць трохі аб тым, як кіраваць праектам вэб-распрацоўкі. 567 00:36:25,330 --> 00:36:28,900 Мы пайшлі па тым, як вы можаце зрабіць тэхнічную серверную бок, 568 00:36:28,900 --> 00:36:31,050 як вы можаце стварыць сапраўды добры сайт, 569 00:36:31,050 --> 00:36:34,150 і гэта выдатна, калі вы працуеце на сябе, але - 570 00:36:34,150 --> 00:36:37,300 нават калі вы працуеце на сябе, і асабліва, калі вы працуеце ў камандзе, 571 00:36:37,300 --> 00:36:39,580 кіраванне праектамі становіцца вялікай праблемай. 572 00:36:39,580 --> 00:36:42,340 Вы, здаецца, чуў аб кіраванні праектамі ў розных формах з 573 00:36:42,340 --> 00:36:45,410 пачатковая школа, калі вы сказалі, групавую працу. 574 00:36:45,410 --> 00:36:46,820 Вы павінны супрацоўнічаць, мець зносіны, усё гэта. 575 00:36:46,820 --> 00:36:49,620 Гэта ўсё яшчэ ўжываецца тут, але ёсць некаторыя унікальныя абставіны з 576 00:36:49,620 --> 00:36:54,910 інфарматыка, што вы хочаце быць у курсе, і вы хочаце, каб пераканацца, што вы звяртацца добра. 577 00:36:54,910 --> 00:36:58,050 Я пагавару спачатку трохі аб камандзе, што вы будзеце цалі 578 00:36:58,050 --> 00:37:03,280 Гэта вельмі важна, каб выбраць правільны памер каманды, каб быць працуеце, 579 00:37:03,280 --> 00:37:05,890 і ў вашым канчатковым праекце я думаю ў вас ёсць магчымасць выбраць 580 00:37:05,890 --> 00:37:08,610 ад 1 да 4 чалавек, калі я правільна. 581 00:37:08,610 --> 00:37:12,050 Вы хочаце, каб пераканацца, што вы не проста выбар колькасць людзей 582 00:37:12,050 --> 00:37:14,950 што вы хочаце працаваць, таму што яны вашы сябры. 583 00:37:14,950 --> 00:37:18,170 Вы хочаце, каб выбраць каманду, што гэта добры памер, і што будзе атрымаць працу. 584 00:37:18,170 --> 00:37:22,700 Там у кампраміс з наяўнасцю большай колькасці людзей супраць меншай колькасці людзей. 585 00:37:22,700 --> 00:37:25,320 Калі ў вас ёсць больш людзей, відавочна, больш працы можна зрабіць 586 00:37:25,320 --> 00:37:28,450 таму што ў вас шмат людзей, шмат кода, шмат ідэй, 587 00:37:28,450 --> 00:37:29,870 і гэта ўсё выдатна. 588 00:37:29,870 --> 00:37:32,590 Аднак ён таксама патрабуе значна больш кіравання і шмат больш зносін. 589 00:37:32,590 --> 00:37:34,720 Іншымі словамі, калі ў вас ёсць 4 людзей, якія працуюць над адным праектам 590 00:37:34,720 --> 00:37:39,200 і яны ўсе рэдагавання і той жа код, больш ці менш усе яны, здаецца, мусяць ведаць 591 00:37:39,200 --> 00:37:40,920 што адбываецца, так што патрабуе ад вас - 592 00:37:40,920 --> 00:37:44,580 калі дадаць некаторыя новыя функцыі вы як бы павінны сказаць людзям, - я дадаючы, што гэта, 593 00:37:44,580 --> 00:37:48,510 Я мяняю гэта такім чынам - асабліва калі вы атрымліваеце ў сапраўды глыбокай рэчы 594 00:37:48,510 --> 00:37:52,730 як мадэляў і кантролераў, якія на самай справе збіраюцца ўплываць, як працуе сайт. 595 00:37:52,730 --> 00:37:54,500 Уся каманда павінна ведаць аб гэтым, 596 00:37:54,500 --> 00:37:58,140 так што вы павінны пераканацца, што вы не выбіраючы занадта вялікай каманды, якая збіраецца быць цяжка 597 00:37:58,140 --> 00:37:59,970 каб зрабіць гэтую сувязь. 598 00:37:59,970 --> 00:38:02,930 Вы таксама не хочаце, каб выбраць досыць невялікую каманду, што вы не збіраецеся, каб 599 00:38:02,930 --> 00:38:06,250 быць у стане мець зносіны, таму што гэта толькі вы. 600 00:38:06,250 --> 00:38:11,270 >> Іншым важным момантам з'яўляецца баланс, дзе навыкі народныя. 601 00:38:11,270 --> 00:38:14,350 Гэта выдатна, калі вы ўсё сапраўды добрыя праграмісты. 602 00:38:14,350 --> 00:38:17,050 Але калі вы ўсё фонавыя людзей, то ваш сайт не будзе выглядаць вельмі добра 603 00:38:17,050 --> 00:38:20,860 таму што вы павінны гэтую вялікую базу дадзеных, і гэта робіць супер-хуткія запыты пошуку - 604 00:38:20,860 --> 00:38:26,130 і гэта выдатна - але калі вы ідзяце да яго, гэта як сайт 1990-з чырвоным і сінім 605 00:38:26,130 --> 00:38:30,370 ўсюды, і гэта не добра таксама. 606 00:38:30,370 --> 00:38:34,210 Звярніце ўвагу, што Бэн і я, працуючы ў камандзе вельмі прыемна, таму што я накшталт больш 607 00:38:34,210 --> 00:38:38,030 на пярэднім канцы, мы абодва ўзаемадзейнічаюць у сярэдзіне-канцы, і Бэн сапраўды добра з сервернай рэчы, 608 00:38:38,030 --> 00:38:43,550 так што працуе вельмі добра, таму што мы можам канструяваць любы сайт, і ў асноўным адтуліны 609 00:38:43,550 --> 00:38:47,580 на гэтым сайце, якія павінны быць запоўненыя могуць быць запоўненыя альбо з нас, ці, магчыма, і іншае. 610 00:38:47,580 --> 00:38:50,210 Вы хочаце, каб пераканацца, што няма ніякіх адтулін у вашай камандзе. 611 00:38:50,210 --> 00:38:51,180 Гэта добра, калі ёсць трохі перакрыцця. 612 00:38:51,180 --> 00:38:53,670 Іншымі словамі, калі ў вас ёсць 2 чалавекі, якія з'яўляюцца і добра з задняй часткі, 613 00:38:53,670 --> 00:38:57,250 што можа быць добра, а таму, што яны могуць дапамагчы адзін аднаму з праблемамі 614 00:38:57,250 --> 00:38:58,820 , Што яны маюць. 615 00:38:58,820 --> 00:39:02,590 Гэта можа быць праблемай, калі ў вас ёсць толькі адзін чалавек, які адказвае за пэўную рэч 616 00:39:02,590 --> 00:39:06,650 і яны сутыкнуцца з праблемай, так што вы хочаце, каб мець крыху перакрыцця 617 00:39:06,650 --> 00:39:10,760 але вы галоўнае хочаце, каб пераканацца, што ўсе магчымыя дзірачкі запоўненыя. 618 00:39:10,760 --> 00:39:17,550 >> Апошняе, што - і гэта павінна быць відавочна, але гэта часта не так. 619 00:39:17,550 --> 00:39:19,550 Вы сапраўды хочаце, весела. 620 00:39:19,550 --> 00:39:23,360 Сэнс гэтага канчатковага праекта ў CS50 і часта кропка вэб-распрацоўкі ў цэлым 621 00:39:23,360 --> 00:39:26,360 не проста зрабіць працу, таму што гэта неабходна зрабіць. 622 00:39:26,360 --> 00:39:29,140 Вы сапраўды хочаце, весела, і вы хочаце рабіць нешта 623 00:39:29,140 --> 00:39:31,180 што матывуе вас працаваць на ім. 624 00:39:31,180 --> 00:39:33,650 Калі ўсё, што вы робіце гэта боль, каб сесці і працаваць, 625 00:39:33,650 --> 00:39:35,650 то вы не выбіраючы правільны праект. 626 00:39:35,650 --> 00:39:37,730 Вы хочаце, каб выбраць тое, што вы знойдзеце цікавыя, 627 00:39:37,730 --> 00:39:41,150 Вы сапраўды хочаце, каб убачыць вынік, вы рады, калі вы атрымліваеце новую ідэю аб 628 00:39:41,150 --> 00:39:44,700 тое, што вы маглі б зрабіць - так што ўсе віды праектаў там, што я ўпэўнены, што 629 00:39:44,700 --> 00:39:47,290 вы можаце знайсці - у кожнага ёсць нешта, што сапраўды заінтрыгаваць іх 630 00:39:47,290 --> 00:39:49,290 калі яны робяць праект вэб-. 631 00:39:49,290 --> 00:39:52,210 Я скажу гэта зноў прама цяпер. 632 00:39:52,210 --> 00:39:54,520 Калі ваш праект здаецца болю, і вы не хочаце, каб працаваць на ім, 633 00:39:54,520 --> 00:39:57,260 выбраць іншы праект. Выберыце тое, што сапраўды натхняе вас. 634 00:39:57,260 --> 00:40:00,260 >> Бэн згадаў гэтую канцэпцыю ітэрацыі трохі, і я хачу пайсці па ім няшмат. 635 00:40:00,260 --> 00:40:08,250 Гэта сапраўды важна для працы рыўкамі, дзе вы атрымаць нешта функцыянальнае. 636 00:40:08,250 --> 00:40:13,420 Гэта можа быць добра, калі ў вас ёсць гэты план для вэб-сайта, што будзе рабіць A, B, і C, 637 00:40:13,420 --> 00:40:16,000 і ў канчатковым выніку гэта будзе патрапіць. 638 00:40:16,000 --> 00:40:18,600 Але вы затрымаліся ў гэтай фазе, дзе вы працуеце на ім і працуе на ім, 639 00:40:18,600 --> 00:40:23,330 але нічога не становіцца зробленым. Вы не павінны нічога бачыць і якое адчуваецца, функцыянальную рэч. 640 00:40:23,330 --> 00:40:27,940 Тое, што вы сапраўды хочаце зрабіць, як шмат, як здаецца роду болю часам 641 00:40:27,940 --> 00:40:32,300 працаваць над чымсьці, а затым роду давяршэнне так, каб гэта, па меншай меры стабільным, бег 642 00:40:32,300 --> 00:40:34,910 версія нават калі ён не мае ўсе неабходныя функцыі. 643 00:40:34,910 --> 00:40:37,690 І можа быць, ёсць некаторыя асаблівасці, якія вы сапраўды хочаце, каб дадаць, але вы проста не можаце 644 00:40:37,690 --> 00:40:41,830 таму што вы хочаце, каб атрымаць гэты сайт у функцыянальнай кропкі. 645 00:40:41,830 --> 00:40:44,400 І таму вы хочаце часткова ёсць увесь працэс развіцця выглядаць. 646 00:40:44,400 --> 00:40:47,810 Вы хочаце, каб з чагосьці пачаць функцыянальна - ці, па сутнасці пачаць ні з чым - 647 00:40:47,810 --> 00:40:49,890 але вы хочаце атрымаць дзесьці вельмі асноўным і функцыянальным. 648 00:40:49,890 --> 00:40:54,940 І зноў жа, зрабіць свайго роду скачок і атрымаць дзесьці функцыянальная зноў. 649 00:40:54,940 --> 00:40:59,190 Вы будзеце паступова нарошчваць, і гэта магло б пайсці крыху больш павольна, чым гэта было б у адваротным выпадку, 650 00:40:59,190 --> 00:41:03,000 але ў доўгатэрміновай перспектыве, калі вы ўвесь час затрымаўся ў гэтай фазе першым, дзе вы 651 00:41:03,000 --> 00:41:06,380 на самай справе не мае нічога працоўны, гэта можа быць сапраўды вялікі расчараванне 652 00:41:06,380 --> 00:41:09,970 працаваць над вашым праектам, таму што ты заўсёды так блізка да таго, каб ён працаваў, 653 00:41:09,970 --> 00:41:12,130 і гэта ніколі не на самай справе працуе. 654 00:41:12,130 --> 00:41:14,810 Вы хочаце працаваць у гэтых функцыянальных рыўкамі, 655 00:41:14,810 --> 00:41:17,950 і вы таксама хочаце зрабіць некаторыя разважанні пасля кожнай з іх. 656 00:41:17,950 --> 00:41:21,260 Іншымі словамі, як толькі вы ў пункце, дзе сайт зараз працуе - 657 00:41:21,260 --> 00:41:24,790 гэта не ёсць усё, што падабаецца, але ён робіць некаторыя рэчы - 658 00:41:24,790 --> 00:41:28,870 вы хочаце думаць, добра, гэты сайт дасягненні мэты, што я меў намер зрабіць? 659 00:41:28,870 --> 00:41:33,410 Іншымі словамі, калі сайт будзе рабіць X, тое, што я працаваў у кірунку X? 660 00:41:33,410 --> 00:41:36,450 Ці ўсе функцыі, якія я хацеў там? 661 00:41:36,450 --> 00:41:39,340 І больш за тое, гэта служыць агульную мэту, што я хачу? 662 00:41:39,340 --> 00:41:43,200 Калі вы лічыце, што ваш сайт пачынае цкаваць ў іншым кірунку 663 00:41:43,200 --> 00:41:47,330 або можа быць, усё як раз накшталт не працуюць, гэта можа быць час, каб пераключаць перадачы няшмат. 664 00:41:47,330 --> 00:41:51,700 Іншымі словамі, гэта варта разглядаць - гэта варта выкідаць ідэі ў выпадку неабходнасці 665 00:41:51,700 --> 00:41:57,950 і ўлічваючы я сапраўды працуюць да таго, што я хачу быць. 666 00:41:57,950 --> 00:42:00,760 >> Я лічу, што мой наступны пункт. Не бойцеся адмовіцца ад ідэі. 667 00:42:00,760 --> 00:42:03,750 Проста таму, што вы патрацілі шмат гадзін працуе над функцыяй 668 00:42:03,750 --> 00:42:07,890 і, нарэшце, атрымаў гэта працуе, але гэта сапраўды не так добра - 669 00:42:07,890 --> 00:42:12,690 як быццам гэта не так ужо карысна ці карыстальнікі паўсталі праблемы з выкарыстаннем яго - такога роду рэчы - 670 00:42:12,690 --> 00:42:15,300 ня бойцеся яго выкінуць. 671 00:42:15,300 --> 00:42:17,650 Яна смокча, што вы патрацілі шмат часу, працуючы на ​​ім, 672 00:42:17,650 --> 00:42:21,870 але ў канчатковым рахунку вы не хочаце сайт, які быццам разам узятыя гэтымі частак, якія 673 00:42:21,870 --> 00:42:25,380 выгляд працы, але не тое, што добра служыў. 674 00:42:25,380 --> 00:42:27,990 Акрамя таго, не бойцеся выкарыстоўваць новыя ідэі. 675 00:42:27,990 --> 00:42:30,050 Калі хто-то прыходзіць і кажа, эй, што сайт выглядае сапраўды выдатна, але 676 00:42:30,050 --> 00:42:32,290 ці не будзе нават выдатна, калі б ён таксама зрабіў гэта? 677 00:42:32,290 --> 00:42:36,220 Проста таму, што гэта тое, што вы ня будуць, а тое, што не ў вашай 678 00:42:36,220 --> 00:42:37,900 характарыстыкі, тое, што вы не мелі намер рабіць, 679 00:42:37,900 --> 00:42:40,860 ня бойся прыняць яго, а затым працаваць з ім. 680 00:42:40,860 --> 00:42:43,680 Таму што часта ідэі, якія вы запускаеце з на працягу ўсяго развіцця 681 00:42:43,680 --> 00:42:47,630 ў канчатковым выніку па-сапраўднаму цікавыя функцыі сайта. 682 00:42:47,630 --> 00:42:49,630 >> Я казаў гэта раней. Я скажу гэта зноў. 683 00:42:49,630 --> 00:42:51,630 Тэстары супер, супер карысна. 684 00:42:51,630 --> 00:42:56,350 Паспрабуйце, каб атрымаць людзей, якія ніколі не бачылі сайт, перш чым увайсці ў сістэму і паглядзець, што адбываецца на 685 00:42:56,350 --> 00:42:59,080 таму што яны могуць не толькі праверыць карыснасць сайта і карыстацкага досведу, 686 00:42:59,080 --> 00:43:02,070 але яны таксама могуць праверыць функцыянальнасць такім чынам, што вы не можаце. 687 00:43:02,070 --> 00:43:06,430 Калі вы робіце некаторыя функцыі, што робіць пэўную рэч 688 00:43:06,430 --> 00:43:11,620 і вы ведаеце, што збіраецеся рабіць, што ж самую рэч правільна кожны раз, гэта выдатна. 689 00:43:11,620 --> 00:43:16,610 Але гэта часта можа быць цяжка растлумачыць кутніх тых выпадках, калі карыстальнік можа 690 00:43:16,610 --> 00:43:19,500 увядзіце тое, што вы не чакалі - менавіта таму, што вы вызначылі 691 00:43:19,500 --> 00:43:21,500 асаблівасці сябе. 692 00:43:21,500 --> 00:43:23,730 Такім чынам, каб нехта прыехаў, хто паняцця не мае, як выкарыстоўваць сайт 693 00:43:23,730 --> 00:43:26,840 і проста разбіць яго любымі спосабамі яны могуць зрабіць, гэта сапраўды карысна, таму што вам 694 00:43:26,840 --> 00:43:30,340 атрымаць уяўленне з цалкам іншага пункту гледжання таго, што на вашым сайце працуе 695 00:43:30,340 --> 00:43:33,300 і тое, што мае патрэбу ў рамонце. 696 00:43:33,300 --> 00:43:37,070 >> Апошняе, я буду казаць аб некаторых агульных перадавой практыкі, 697 00:43:37,070 --> 00:43:42,470 і вы бачылі шмат такіх у CS50, але яны таксама вельмі, вельмі ўжываць ва ўмовах праекта. 698 00:43:42,470 --> 00:43:47,600 Адным з іх з'яўляецца каментароў. Заўсёды каментаваць свой код, асабліва калі вы працуеце на вялікай каманды. 699 00:43:47,600 --> 00:43:51,230 Гэта можа быць так раздражняе проста гіганцкі блок кода, які нехта напісаў 700 00:43:51,230 --> 00:43:54,230 і, магчыма, ён працуе, можа быць, гэта не так, але вы паняцця не маеце, што ён робіць, 701 00:43:54,230 --> 00:43:58,010 так што вы паняцця не маю, ці з'яўляецца гэта карысна ці няма, ці павінна яна быць там ці не, 702 00:43:58,010 --> 00:44:00,200 і калі вы працуеце над чымсьці іншым, што гэта нават магчыма, што вы працуеце на 703 00:44:00,200 --> 00:44:06,590 тое ж самае, так што проста быць вельмі, вельмі асцярожныя, каб быць уважлівым вашых калегаў 704 00:44:06,590 --> 00:44:09,710 і напісаць код, які добра дакументаваны. 705 00:44:09,710 --> 00:44:13,580 Вы не павінны пайсці так далёка, каб рабіць усё гэта, дзе заўгодна, калі вы павялічыць 706 00:44:13,580 --> 00:44:16,620 Лічыльнік ёсць каментар, які кажа, я дадаю 1 да гэтага лічыльніка. 707 00:44:16,620 --> 00:44:20,450 Гэта не абавязкова павінна быць падрабязным, але для любой функцыі, што вы калі-небудзь пісаў 708 00:44:20,450 --> 00:44:23,160 вы павінны мець дакументацыю аб тым, што гэтая функцыя дакладна робіць, 709 00:44:23,160 --> 00:44:25,140 што яго ўваходы, і тое, што ён павінен вярнуць. 710 00:44:25,140 --> 00:44:27,800 Такім чынам, вы можаце выкарыстоўваць іншыя кампаненты людзей аб сайце 711 00:44:27,800 --> 00:44:31,990 і вы можаце працаваць у напрамку стварэння нешта вялікае. 712 00:44:31,990 --> 00:44:34,100 >> Яшчэ адна важная рэч вы хочаце зрабіць рэгулярныя чыстыя акна. 713 00:44:34,100 --> 00:44:40,490 Код становіцца брудным. Не хвалюйцеся, калі ваш код проста цалкам нечытэльным, і гіганцкі беспарадак. 714 00:44:40,490 --> 00:44:42,770 Гэта адбываецца ў вэб-распрацоўцы заўсёды. 715 00:44:42,770 --> 00:44:46,530 Ты дадаючы новыя функцыі, выдаляючы старыя. Матэрыял будзе там, што не павінна быць. 716 00:44:46,530 --> 00:44:49,330 Гэта выдатна, але вы хочаце, каб пераканацца, каб мець справу з гэтым на рэгулярнай аснове. 717 00:44:49,330 --> 00:44:53,430 Вы не хочаце, каб гэта пабудаваць да таго моманту, калі вы проста не можаце знайсці нічога 718 00:44:53,430 --> 00:44:56,430 у кодзе, і вы паняцця не маеце, што ні ў чым сабе. 719 00:44:56,430 --> 00:44:58,430 Вось і ў выпадку з HTML. 720 00:44:58,430 --> 00:44:59,490 Часам вы будзеце ў канчатковым выніку з аб'ектамі, якія не ўтрымліваюць нічога, 721 00:44:59,490 --> 00:45:01,320 і вы хочаце, каб пазбавіцца ад іх. 722 00:45:01,320 --> 00:45:04,610 У CSS, вы можаце быць якія адносяцца да элементаў, якія не там больш, 723 00:45:04,610 --> 00:45:06,340 так што вы хочаце, каб пазбавіцца ад гэтага кода. 724 00:45:06,340 --> 00:45:09,900 У JavaScript, вы можаце выдалілі нешта з HTML. 725 00:45:09,900 --> 00:45:13,150 Такім чынам, вы хочаце, каб пераканацца, што вы заўсёды ачысткі, што робіць рэчы даволі 726 00:45:13,150 --> 00:45:17,450 столькі, колькі вы можаце на рэгулярнай аснове. 727 00:45:17,450 --> 00:45:21,060 >> Яшчэ адзін вельмі карысная рэч, што я не думаю, што выкладзена вельмі шмат у CS50 728 00:45:21,060 --> 00:45:23,430 але гэта варта таго, каб у гэта кіраванне версіямі. 729 00:45:23,430 --> 00:45:27,180 Ідэя кантролю версій, калі вы ў асноўным адсочвання ўвесь прагрэс 730 00:45:27,180 --> 00:45:30,820 Вы зрабілі на ваш сайт, і калі ў нейкі момант вы разумееце, пра, гэта працуе 731 00:45:30,820 --> 00:45:35,220 некаторы час таму, але гэта не працуе больш, вы можаце вярнуцца да папярэдніх версіях 732 00:45:35,220 --> 00:45:37,720 і паглядзець, што змянілася з тых часоў і да таго падобнае. 733 00:45:37,720 --> 00:45:41,670 Асноўны спосаб зрабіць гэта з Git і Git з'яўляецца ўся такая сістэма, што 734 00:45:41,670 --> 00:45:46,390 Я лічу, Томі MacWilliam правяла семінар аб ў мінулым годзе. 735 00:45:46,390 --> 00:45:51,520 Калі вы ідзяце ў CS50 семінараў на 2011 год, можна ўбачыць яго семінар па гэтым пытанні. 736 00:45:51,520 --> 00:45:57,070 Ідэя Git у асноўным, што на рэгулярнай аснове вы робіце гэтыя абавязацельствы 737 00:45:57,070 --> 00:46:01,430 якія з'яўляюцца спосабы сказаць сайт знаходзіцца ў даволі стабільнай версіі прама цяпер, так 738 00:46:01,430 --> 00:46:05,910 Я ўпакоўцы яго і адправіць яго прэч да сервера, а затым вы можаце пайсці на гэты сервер 739 00:46:05,910 --> 00:46:07,910 і глядзець на ўсе папярэднія версіі кода і паглядзець, як ён прагрэсаваў 740 00:46:07,910 --> 00:46:12,210 і ўсё такое добры матэрыял. 741 00:46:12,210 --> 00:46:14,210 Так, што ў асноўным гэта. 742 00:46:14,210 --> 00:46:17,870 Наколькі вэб-распрацоўкі, мы рады застацца і адказаць на любыя 743 00:46:17,870 --> 00:46:20,570 пытанні, наколькі нашай прэзентацыі. 744 00:46:20,570 --> 00:46:22,900 Вось і ўсё. Дзякуючы. >> [Бэн] Дзякуй. 745 00:46:22,900 --> 00:46:28,480 [Апладысменты] 746 00:46:28,480 --> 00:46:30,950 >> [Білі] Персанал, хто-небудзь ёсць якія-небудзь пытанні пра рэчы, якія мы разгледзелі 747 00:46:30,950 --> 00:46:33,950 або рэчы, якія мы не ахопленыя, што яны спадзяваліся, што мы б пакрыць? 748 00:46:33,950 --> 00:46:35,950 Мы былі б рады адказаць на іх. Любы? 749 00:46:35,950 --> 00:46:50,360 [Член аўдыторыі] Якія плюсы і мінусы выкарыстання Рубі або з дапамогай Python? 750 00:46:50,360 --> 00:46:58,660 [Бэн] Пытанне было, якія плюсы і мінусы выкарыстання Рубі або Python 751 00:46:58,660 --> 00:46:59,900 замест як PHP. 752 00:46:59,900 --> 00:47:11,340 Плюсы ў тым, што Сячы і Python нашмат лепшыя мовы, чым PHP. 753 00:47:11,340 --> 00:47:14,920 Па крайняй меры, на мой погляд, і я думаю, у многіх чужога меркавання, а таксама. 754 00:47:14,920 --> 00:47:20,990 Яны былі распрацаваны больш для рабіць складаныя рэчы, 755 00:47:20,990 --> 00:47:25,380 і менш для біць разам вэб-старонак вельмі хутка з 756 00:47:25,380 --> 00:47:28,400 трохі дынамічнага кантэнту. 757 00:47:28,400 --> 00:47:35,180 Мінусы ў тым, што ёсць трохі - ёсць больш часу на засваенне 758 00:47:35,180 --> 00:47:37,220 каб атрымаць іх наладзіць. 759 00:47:37,220 --> 00:47:41,010 Гэта значыць, як і ў PHP, вы можаце проста ёсць HTML файл, і вы напісаць менш, чым, 760 00:47:41,010 --> 00:47:43,060 пытальнік, а затым вы напісаць код, а затым вы пішаце знак пытання, 761 00:47:43,060 --> 00:47:45,700 больш, чым, а затым вы скончыце. 762 00:47:45,700 --> 00:47:50,300 У іншых мовах, напрыклад Рубі або Python, 763 00:47:50,300 --> 00:47:56,810 Вы павінны прайсці крыху больш працы, каб атрымаць першапачатковы сайт працуе. 764 00:47:56,810 --> 00:48:02,730 Там таксама - па крайняй меры гэта было так - што ёсць больш дакументацыі 765 00:48:02,730 --> 00:48:05,480 даступныя для PHP толькі таму, што ёсць больш людзей, якія выкарыстоўваюць яго. 766 00:48:05,480 --> 00:48:09,370 Я думаю, што гэта не столькі пытанне больш. 767 00:48:09,370 --> 00:48:12,520 Там, безумоўна, вельмі добрая дакументацыя для рэчы, як Рубін на рэйкі 768 00:48:12,520 --> 00:48:16,080 або Django на Python з'яўляецца эквівалентам. 769 00:48:16,080 --> 00:48:25,910 PHP з'яўляецца той, які выкарыстоўвае кожны на працягу многіх гадоў, і вы ведаеце, як гэта працуе. 770 00:48:25,910 --> 00:48:28,460 Сячы і Python з'яўляюцца крыху менш сталыя. 771 00:48:28,460 --> 00:48:33,130 >> [Член аўдыторыі] Калі б давялося выбіраць паміж адным з іх, каб даведацца або забраць, 772 00:48:33,130 --> 00:48:36,130 што б вы аддалі перавагу? 773 00:48:36,130 --> 00:48:38,870 Шчыра кажучы, я думаю, што залежыць ад чалавека. 774 00:48:38,870 --> 00:48:45,450 Мне вельмі шкада. Пытанне было, які б вы абралі для кагосьці вучыцца? 775 00:48:45,450 --> 00:48:50,230 Я лічу, Python самы добры асабіста. 776 00:48:50,230 --> 00:48:55,360 Ёсць шмат людзей, якія - я зрабіў мой першы вэб-Dev праект у Python і Django. 777 00:48:55,360 --> 00:49:00,300 Ёсць шмат людзей, якія любяць Рубін на рэйкі таксама. 778 00:49:00,300 --> 00:49:02,650 Напэўна больш людзей, якія ведаюць, Рубін на рэйкі. 779 00:49:02,650 --> 00:49:05,270 Шчыра кажучы, я б проста пайсці з тым, што людзі вакол вас ведаю 780 00:49:05,270 --> 00:49:09,680 так што ў вас ёсць людзі, каб задаць пытанні. 781 00:49:19,640 --> 00:49:24,170 >> Пытанне было - на агульных серверах гэта збольшага цяжка працаваць на Python? 782 00:49:24,170 --> 00:49:26,170 Гэта залежыць ад вашага хостынгу. 783 00:49:26,170 --> 00:49:29,400 Ёсць цэлы шэраг вэб-вузлоў, якія размесцім Python рэчаў. 784 00:49:29,400 --> 00:49:31,400 WebFaction робіць гэта, ці не так? 785 00:49:31,400 --> 00:49:34,400 WebFaction з'яўляецца адным, што Білі, і я выкарыстаў для некаторых праектаў. 786 00:49:34,400 --> 00:49:37,750 Яны сапраўды выдатна. Яны падтрымліваюць большасць моў. 787 00:49:37,750 --> 00:49:40,020 Але гэта праўда, што PHP з'яўляецца значна больш шырокую падтрымку. 788 00:49:40,020 --> 00:49:45,210 Так што, калі вы затрымаліся на вэб-хостынгу, што толькі робіць PHP, гэта добрая нагода, каб выкарыстоўваць PHP. 789 00:49:45,210 --> 00:49:56,010 >> [Аўдыторыя член] Я толькі што атрымаў у вывучэнне, як запыт да пэўных баз дадзеных, 790 00:49:56,010 --> 00:50:00,680 і я ведаю, што мая SQL з'яўляецца паўсюдна, але я нядаўна атрымаў ўздзеяння - 791 00:50:00,680 --> 00:50:04,470 і вы паказалі на яго. Вы бачыце JSON і пашыраюцца баз дадзеных. 792 00:50:04,470 --> 00:50:14,580 My SQL па-ранейшаму паўсюдна. Як вы бачыце, што адбываецца? 793 00:50:14,580 --> 00:50:21,330 Ці ёсць будзе расце тэндэнцыя для больш пашыраецца (неразборліва)? 794 00:50:21,330 --> 00:50:30,100 Пытанне было - я думаю, што гэта будзе тэндэнцыя да баз даных не-SQL. 795 00:50:30,100 --> 00:50:33,850 Напрыклад, як MongoDB. Я думаю, што, безумоўна, дакладна. 796 00:50:33,850 --> 00:50:38,730 Мая парада быў у асноўным MySQL, звязаных тут толькі таму, што MySQL з'яўляецца 797 00:50:38,730 --> 00:50:40,950 галіновым стандартам. 798 00:50:40,950 --> 00:50:45,950 Асабіста я аддаю перавагу баз дадзеных, якія не маюць schemos як MongoDB 799 00:50:45,950 --> 00:50:49,520 дзе ў вас няма праблемы, о, мне трэба дадаць яшчэ адзін слупок. 800 00:50:49,520 --> 00:50:51,600 Гора мне, як бы там ні было мне рабіць? 801 00:50:51,600 --> 00:50:55,840 Гэта вельмі цяжка зрабіць гэта на MySQL, але калі ў вас ёсць што-то накшталт Монго 802 00:50:55,840 --> 00:50:57,840 гэта нашмат больш добра. 803 00:50:57,840 --> 00:51:03,780 Іншая добрая рэч аб Монго у тым, што вашыя запісы на самай справе аб'екты JavaScript. 804 00:51:03,780 --> 00:51:10,110 Там няма роду стадыі ператварэння дзе вы павінны прыняць гэтыя радкі базы дадзеных 805 00:51:10,110 --> 00:51:13,140 і ператварыць іх у аб'ект JavaScript, а затым адправіць іх па сетцы. 806 00:51:13,140 --> 00:51:20,290 Я думаю, што такія рэчы, як, што будзе вельмі, вельмі карысна для хуткага вэб-распрацоўкі ў будучыні. 807 00:51:20,290 --> 00:51:23,060 >> [Білі] Нешта я хацеў бы дадаць, што ўсяго толькі агульныя Справа ў тым, што 808 00:51:23,060 --> 00:51:26,580 не адчуваеце, як вы павінны былі даведацца ўсе мовы, якія мы абмяркоўвалі 809 00:51:26,580 --> 00:51:28,580 ад нашага семінара. 810 00:51:28,580 --> 00:51:30,560 Відавочна, справа ў тым, каб даць вам прадстаўленне аб тым, што там, 811 00:51:30,560 --> 00:51:33,450 і калі вы заінтрыгаваныя любы з рэчаў, якія мы згадалі, што вы можаце Google іх 812 00:51:33,450 --> 00:51:35,830 і прачытаць пра іх. 813 00:51:35,830 --> 00:51:38,750 І як я ўжо казаў, ёсць некалькі семінараў, якія маюць справу менавіта з гэтымі рэчамі. 814 00:51:38,750 --> 00:51:41,660 Ёсць нават больш семінараў, якія я не згадаў, што, верагодна, патрапіць у 815 00:51:41,660 --> 00:51:43,660 гэты матэрыял таксама. 816 00:51:43,660 --> 00:51:46,610 Ідэя складаецца ў тым, што, калі вы хочаце працаваць над чымсьці, вось інструменты ў вашым распараджэнні. 817 00:51:46,610 --> 00:51:51,630 Не адчуваюць сябе падушанымі, калі вы не зусім ўпэўнены, што гэтыя інструменты робяць дакладна, 818 00:51:51,630 --> 00:51:54,830 але ведаю, што яны там і што вы можаце зрабіць шырокае прымяненне з іх 819 00:51:54,830 --> 00:51:56,830 на Google. 820 00:51:56,830 --> 00:51:59,960 >> [Член аўдыторыі] Якія рэчы вы павінны зрабіць, каб пераканацца, што ваш сайт 821 00:51:59,960 --> 00:52:02,530 добра выглядае на мабільных прыладах? 822 00:52:02,530 --> 00:52:05,590 [Білі] Мабільныя прылады трохі цяжка. 823 00:52:05,590 --> 00:52:07,590 Там у 2 спосабу вы можаце падысці да яго. 824 00:52:07,590 --> 00:52:11,500 Першы спосаб з'яўляецца тое, што ў вас сапраўды ёсць мабільны вэб-сайт. 825 00:52:11,500 --> 00:52:14,660 Іншымі словамі, неабходна выканаць нейкую выяўлення ў пачатку 826 00:52:14,660 --> 00:52:18,830 калі браўзэр робіць запыт на ваш сайт, якія альбо кажа 827 00:52:18,830 --> 00:52:25,240 вярнуць гэты выгляд - які стане прадстаўленне для настольных або партатыўных браўзэраў - 828 00:52:25,240 --> 00:52:27,710 і гэты іншы выгляд для мабільных прылад. 829 00:52:27,710 --> 00:52:33,090 Гэта месца, дзе погляды сапраўды добрыя тым, што вы можаце вельмі шмат што падпампоўкі 830 00:52:33,090 --> 00:52:37,580 два і мець інтэрфейс, які працуе вельмі добра на мабільных прыладах 831 00:52:37,580 --> 00:52:40,770 і мець зусім іншы, які працуе добра на прыладах браўзэра. 832 00:52:40,770 --> 00:52:43,770 Праблема ў тым, што займае шмат часу, таму што гэта азначае кадаваньне 833 00:52:43,770 --> 00:52:47,060 зусім іншы інтэрфейс. 834 00:52:47,060 --> 00:52:49,720 Іншы спосаб, што вы можаце зрабіць гэта з'яўляецца - 835 00:52:49,720 --> 00:52:55,250 шмат сучасных тэлефонаў будзе адлюстроўваць сайты і паспрабаваць зрабіць іх як браўзэр будзе, 836 00:52:55,250 --> 00:52:57,680 і яны робяць усё магчымае. 837 00:52:57,680 --> 00:53:04,340 Вы можаце роду паспрабаваць застацца святло ад колькасці JQuery JavaScript вы карыстаецеся 838 00:53:04,340 --> 00:53:07,360 які мае тэндэнцыю быць, дзе рэчы могуць пайсці не так няшмат. 839 00:53:07,360 --> 00:53:13,430 Гэта свайго роду такім чынам, што вы павінны выкарыстоўваць, калі вы не так ужо шмат часу. 840 00:53:13,430 --> 00:53:18,540 Калі ў вас ёсць час для працы на мабільным інтэрфейсе, гэта, відавочна, лепшы выбар. 841 00:53:18,540 --> 00:53:23,320 >> Я думаю, што ў цэлым для CS50 праектаў, вы збіраецеся хочаце, каб выбраць адзін ці іншай. 842 00:53:23,320 --> 00:53:27,990 Іншымі словамі, вы хочаце, каб зрабіць мабільнае прыкладанне або вы хочаце зрабіць сайт на працоўным стале. 843 00:53:27,990 --> 00:53:32,200 І такога роду вызначае, дзе вы ідзяце з гэтым. 844 00:53:32,200 --> 00:53:35,360 Але калі вы хочаце, каб разгарнуць яго пазней, верагодна, вам лепш за ўсё 845 00:53:35,360 --> 00:53:37,360 зрабіць яшчэ адзін інтэрфейс для іншага. 846 00:53:51,650 --> 00:53:56,340 У мяне ёсць трохі вопыту ў распрацоўцы сайтаў WordPress-прыкладанняў. 847 00:53:56,340 --> 00:53:58,670 Я прайшоў асабісты сайт на WordPress на некаторы час. 848 00:53:58,670 --> 00:54:02,310 Тыя віды рамак можа быць добрыя як вельмі простыя рэчы. 849 00:54:02,310 --> 00:54:07,050 Часта вы будзеце проста сутыкнуцца з вялікай колькасцю праблем Customizability ж. 850 00:54:07,050 --> 00:54:10,940 Вы хочаце, каб мець нешта выглядаць пэўным чынам ці быць пэўным чынам 851 00:54:10,940 --> 00:54:14,510 і вы проста не можаце, таму што гэта зашытымі ў сістэму, якая 852 00:54:14,510 --> 00:54:17,480 гэта, як вы павінны рабіць рэчы, якія могуць быць чымсьці накшталт праблемы. 853 00:54:17,480 --> 00:54:22,020 З тых часоў я збольшага было больш схільныя працаваць з сайтаў з нуля. 854 00:54:22,020 --> 00:54:26,840 Для такіх рэчаў, як блог баз дадзеных і такога роду рэчы гэта сапраўды не так ужо цяжка пабудаваць аснову. 855 00:54:26,840 --> 00:54:29,970 Калі вы сапраўды расцягваецца на час, вы можаце, вядома, выкарыстоўваць нешта накшталт WordPress 856 00:54:29,970 --> 00:54:33,120 ці таму падобнае для блога. 857 00:54:33,120 --> 00:54:38,790 Тыя рэчы, што блогі краму і рабіць на самай справе не дастаткова моцна, што 858 00:54:38,790 --> 00:54:41,500 калі вы працуеце ў любы з гэтых відаў рэчаў, вы, верагодна, лепш проста 859 00:54:41,500 --> 00:54:43,500 зрабіць версію ў доме. 860 00:54:43,500 --> 00:54:48,350 >> Я думаю, што гэта пра яго, таму яшчэ раз дзякуй, што прыйшлі. 861 00:54:48,350 --> 00:54:51,960 Мы сапраўды любілі гаварыць з вамі, хлопцы і спадзяемся, што вы даведаліся некаторыя рэчы. 862 00:54:51,960 --> 00:54:55,350 [Бэн] Мы рады пагаварыць - мы павінны ісці, але мы рады гаварыць больш за межамі 863 00:54:55,350 --> 00:55:01,650 калі ў вас ёсць яшчэ адно пытанне. Яшчэ раз дзякуй. [Апладысменты] 864 00:55:03,750 --> 00:55:06,000 [CS50.TV]