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]