1 00:00:00,000 --> 00:00:00,500 2 00:00:00,500 --> 00:00:10,960 [Играет музыка] 3 00:00:10,960 --> 00:00:12,960 Роджер ZURAWICKI: Привет, мой Название Роджер Zurawicki, 4 00:00:12,960 --> 00:00:16,410 и я буду покрывать Семинар CS50 Метеор. 5 00:00:16,410 --> 00:00:21,520 Метеор новая структура посвящена нового типа сети, 6 00:00:21,520 --> 00:00:25,220 не PHP делать запросы туда и обратно вид 7 00:00:25,220 --> 00:00:29,070 веб-мы видели в наборе PHPP, но более динамичным JavaScript 8 00:00:29,070 --> 00:00:31,370 части полотна. 9 00:00:31,370 --> 00:00:36,260 Вещи Метеор можете сделать включает в себя Живая Обновление 10 00:00:36,260 --> 00:00:42,380 и немедленно сообщая между пользователями одного и того же сайта. 11 00:00:42,380 --> 00:00:46,420 >> Для этого семинара, мы имеем код размещен на моем GitHub. 12 00:00:46,420 --> 00:00:49,690 Вы можете перейти по этому адресу и загрузите его. 13 00:00:49,690 --> 00:00:53,085 Если вы знаете, как использовать Git, Вы можете клонировать репозиторий. 14 00:00:53,085 --> 00:00:55,460 Если вы не знаете, как использовать Git или не используется GitHub, 15 00:00:55,460 --> 00:00:57,030 что совершенно нормально. 16 00:00:57,030 --> 00:01:00,480 Я покажу вам, очень быстро как мы можем перейти к GitHub, 17 00:01:00,480 --> 00:01:03,604 и есть возможность скачать ZIP тут. 18 00:01:03,604 --> 00:01:06,770 После загрузки этого каталога, вы может начать играть с нашим кодом. 19 00:01:06,770 --> 00:01:10,200 20 00:01:10,200 --> 00:01:13,190 >> Более подробная информация о Метеор можно найти на meteor.com. 21 00:01:13,190 --> 00:01:16,580 В папке семинар, я на самом деле есть несколько проектов Метеор мы можем использовать. 22 00:01:16,580 --> 00:01:20,380 23 00:01:20,380 --> 00:01:26,400 Один из папок мы имеем в нашем Семинар Проект Todos приложение. 24 00:01:26,400 --> 00:01:28,780 Так что, если я иду в ней я, установлен Метеор. 25 00:01:28,780 --> 00:01:35,690 Таким образом, чтобы запустить его, мне просто нужно ввести Метеор, и Метеор будет установить. 26 00:01:35,690 --> 00:01:38,310 Как вы можете видеть, мы должны убедитесь, что мы установили Метеор. 27 00:01:38,310 --> 00:01:40,562 Так что я просто хочу, чтобы Запустите его еще один раз 28 00:01:40,562 --> 00:01:42,520 чтобы убедиться, что Meteor установлен правильно. 29 00:01:42,520 --> 00:01:46,370 30 00:01:46,370 --> 00:01:48,450 >> Хотя у меня есть Метеор установка, я могу показать вам, 31 00:01:48,450 --> 00:01:53,760 Некоторые из них живут демо-Метеор сайтов будет жить прямо сейчас в Интернете. 32 00:01:53,760 --> 00:01:57,990 У меня есть демо наше приложение. 33 00:01:57,990 --> 00:02:00,740 Вы можете получить к нему доступ по адресу. 34 00:02:00,740 --> 00:02:06,350 Это сделать приложение, которое мы есть в нашем каталоге семинара. 35 00:02:06,350 --> 00:02:09,940 URL для этого является rozu-rabbit.meteor.com. 36 00:02:09,940 --> 00:02:14,782 Вы увидите, что Meteor будет на самом деле провести метеора проекты бесплатно. 37 00:02:14,782 --> 00:02:17,490 И в конце семинара, Вы будете в состоянии сделать это, а также. 38 00:02:17,490 --> 00:02:20,550 39 00:02:20,550 --> 00:02:22,160 >> Это сделать список приложение. 40 00:02:22,160 --> 00:02:27,740 И вы можете войти в систему создать счета и добавлять задачи. 41 00:02:27,740 --> 00:02:30,020 Вы можете зарегистрироваться как так. 42 00:02:30,020 --> 00:02:33,050 43 00:02:33,050 --> 00:02:35,850 И теперь, когда у вас есть счет, вы можете добавлять задачи. 44 00:02:35,850 --> 00:02:42,780 Например, одна из задач я возможно, потребуется пойти забрать свою прачечную. 45 00:02:42,780 --> 00:02:45,160 И если вы об этом сайт в Интернете, вам 46 00:02:45,160 --> 00:02:49,790 фактически видеть эту задачу Ваш компьютер в режиме реального времени. 47 00:02:49,790 --> 00:02:53,760 >> Я могу показать вам быстрый демо это, открыв Rožu кролика 48 00:02:53,760 --> 00:02:56,700 В другой вкладке с тем же URL. 49 00:02:56,700 --> 00:03:00,360 И мы видим, что те же самые данные идет вверх. 50 00:03:00,360 --> 00:03:02,240 Мы также можем запустить его в другой браузер. 51 00:03:02,240 --> 00:03:03,420 Скажите, что я запустить его в Safari. 52 00:03:03,420 --> 00:03:04,720 Таким образом, мы не вошли в систему. 53 00:03:04,720 --> 00:03:07,750 54 00:03:07,750 --> 00:03:11,060 Итак, мы имеем ту же Метеор приложения, и как только он загружает, 55 00:03:11,060 --> 00:03:13,910 мы увидим те же данные, мы делали в первой. 56 00:03:13,910 --> 00:03:16,710 Как вы можете видеть, я не вошли в здесь. 57 00:03:16,710 --> 00:03:20,000 И когда данные аудитория чеки, он обновляет на всех браузерах 58 00:03:20,000 --> 00:03:20,910 одновременно. 59 00:03:20,910 --> 00:03:23,740 Это один из очень Классные возможности около Метеор. 60 00:03:23,740 --> 00:03:27,700 Почти без работы, вы есть живой обновления приложение 61 00:03:27,700 --> 00:03:31,240 что изменения на всех Ваши устройств одновременно. 62 00:03:31,240 --> 00:03:36,690 >> Если я установите флажок здесь в моем сделать список, у нас будет, 63 00:03:36,690 --> 00:03:41,230 в моей другой браузер Chrome, Пункт галочка. 64 00:03:41,230 --> 00:03:42,605 И это происходит мгновенно. 65 00:03:42,605 --> 00:03:46,340 66 00:03:46,340 --> 00:03:47,280 Хорошо. 67 00:03:47,280 --> 00:03:52,730 Так что, похоже Метеор Установка готова сейчас. 68 00:03:52,730 --> 00:03:57,000 Итак, теперь давайте вернемся к Todos приложение и запустить это на местном уровне. 69 00:03:57,000 --> 00:04:01,599 >> Если у вас есть проект Метеор, вы можете просто запустите его с помощью команды Meteor. 70 00:04:01,599 --> 00:04:03,640 После того, как вы сделаете это, Метеор будет выполнить некоторые подготовительные 71 00:04:03,640 --> 00:04:06,120 чтобы убедиться, что все ваш код в узде. 72 00:04:06,120 --> 00:04:12,440 А потом скажу вам, что Проект уже готов, чтобы Ему служили. 73 00:04:12,440 --> 00:04:17,750 Вы, возможно, потребуется, чтобы ваши Брандмауэр, если ваш компьютер блоки, которые Вы. 74 00:04:17,750 --> 00:04:22,440 >> Так что Метеор говорил мне, Прямо сейчас, что на этом сайте 75 00:04:22,440 --> 00:04:26,100 местный с моим компьютером, я вижу, что это Метеор проект. 76 00:04:26,100 --> 00:04:29,290 Обратите внимание, что прямо сейчас, мое приложение не доступны в Интернет. 77 00:04:29,290 --> 00:04:35,170 Мы расскажем, как привести свой Meteor Приложение к живой сайте немного позже. 78 00:04:35,170 --> 00:04:40,510 Так что я просто хочу, чтобы скопировать этот URL теперь и идите в Google Chrome. 79 00:04:40,510 --> 00:04:42,600 >> И это сделать список из примера. 80 00:04:42,600 --> 00:04:46,080 Вы можете видеть, что они реализованы несколько больше возможностей здесь. 81 00:04:46,080 --> 00:04:49,210 У нас есть различные вкладки, мы имеют те же параметры учетных записей, 82 00:04:49,210 --> 00:04:52,141 и мы можем добавить новые списки. 83 00:04:52,141 --> 00:04:54,140 Теперь один из действительно полезная функция о Метеор 84 00:04:54,140 --> 00:04:57,450 является то, что не только это может работать на вашем веб-браузере, 85 00:04:57,450 --> 00:05:00,030 но вы также можете создать родной iPhone и Android 86 00:05:00,030 --> 00:05:02,990 приложения через инструмент под названием PhoneGap. 87 00:05:02,990 --> 00:05:06,740 >> Таким образом, некоторые проекты придет предварительно настроен для работы 88 00:05:06,740 --> 00:05:08,700 КСН, как этот ToDos приложения. 89 00:05:08,700 --> 00:05:14,780 Таким образом, все, что нужно сделать, чтобы запустить его в ИО это ввести Метеор, Выполнить, а затем IOS. 90 00:05:14,780 --> 00:05:17,540 И когда я это сделаю, Метеор подготовит пакет снова. 91 00:05:17,540 --> 00:05:21,670 А потом, когда он будет готов, он будет загрузить симулятор IOS по моей команде. 92 00:05:21,670 --> 00:05:24,745 Примечание Вы можете запустить IOS приложения Если у вас есть компьютер Mac. 93 00:05:24,745 --> 00:05:27,650 94 00:05:27,650 --> 00:05:30,730 Вы можете запускать приложения на Android на всех платформах. 95 00:05:30,730 --> 00:05:34,070 96 00:05:34,070 --> 00:05:38,290 >> Итак, теперь вы можете видеть, что мой iPhone симулятор придумал на моем экране. 97 00:05:38,290 --> 00:05:40,370 И через минуту, это будет загрузить с приложением. 98 00:05:40,370 --> 00:05:46,070 99 00:05:46,070 --> 00:05:48,490 Если мы сделаем это, Просто немного меньше, чтобы поместиться на экране, 100 00:05:48,490 --> 00:05:50,780 мы видим, у нас есть iPhone приложение. 101 00:05:50,780 --> 00:05:53,220 И только так мы не запутаться, давайте сделаем 102 00:05:53,220 --> 00:05:59,790 что мы находимся на такой же сайт, локальный хост 3000. 103 00:05:59,790 --> 00:06:03,490 >> Так прямо здесь пример метеорного приложение, которое я, 104 00:06:03,490 --> 00:06:08,770 Todos приложение, работает как на телефон и веб-браузер. 105 00:06:08,770 --> 00:06:10,770 И когда я изменить материал в веб-браузере, 106 00:06:10,770 --> 00:06:12,675 он сразу же идет к телефону. 107 00:06:12,675 --> 00:06:16,500 И я могу удалить что-нибудь по телефону, и изменения в веб-браузере. 108 00:06:16,500 --> 00:06:21,050 >> Теперь, как правило, для создания собственных телефон приложение для прошивкой или Android, 109 00:06:21,050 --> 00:06:26,090 Вы должны знать, либо Java или Objective C. технология использует Метеор 110 00:06:26,090 --> 00:06:29,240 чтобы JavaScript для работы в качестве ваше приложение называется PhoneGap. 111 00:06:29,240 --> 00:06:31,320 Что ваше приложение по существу это является веб-браузер. 112 00:06:31,320 --> 00:06:34,500 И Метеор обрабатывает все Хитрость участвующие 113 00:06:34,500 --> 00:06:39,820 для чего, что веб-браузер Ваш iPhone или ваш Android устройство. 114 00:06:39,820 --> 00:06:42,210 Вы можете видеть, что Пользовательский интерфейс является гладким, 115 00:06:42,210 --> 00:06:45,290 и это выглядит и чувствует себя очень так же, как родное приложение. 116 00:06:45,290 --> 00:06:48,620 Обратите внимание, что если я иду к дому Экран теперь, я также получаю значок. 117 00:06:48,620 --> 00:06:50,880 Это не сайт, как вы найдете в Safari. 118 00:06:50,880 --> 00:06:51,860 Это его собственное приложение. 119 00:06:51,860 --> 00:06:54,130 Вы можете установить и удалить его, если вы хотите. 120 00:06:54,130 --> 00:06:59,500 121 00:06:59,500 --> 00:07:04,436 >> Мы можем кратко показать вам, что код для этого вида несделанного приложение выглядит. 122 00:07:04,436 --> 00:07:08,260 Если вы посмотрите в папке ToDos, Вы увидите много папок. 123 00:07:08,260 --> 00:07:11,440 Но в течение семинара, мы будем 124 00:07:11,440 --> 00:07:14,780 понять, что каждая папка используется. 125 00:07:14,780 --> 00:07:17,830 Давайте в терминал, чтобы мы можете видеть файлы немного лучше. 126 00:07:17,830 --> 00:07:20,410 >> Я собираюсь нажать Control C для остановки сервера, 127 00:07:20,410 --> 00:07:22,770 и теперь я вернулся в ToDos приложения. 128 00:07:22,770 --> 00:07:26,660 У меня есть разные папки здесь, как Папка клиента, папка сервера. 129 00:07:26,660 --> 00:07:30,500 И эти папки просто означает, что все в папку клиента 130 00:07:30,500 --> 00:07:32,630 исполняются на вашем веб-браузере. 131 00:07:32,630 --> 00:07:35,530 Все в папку на сервере исполняются на сервере. 132 00:07:35,530 --> 00:07:38,100 >> То, что я хочу отметить из это то, что мы имели 133 00:07:38,100 --> 00:07:42,140 когда у нас был телефонный работает и Наш веб-браузер, это были клиенты. 134 00:07:42,140 --> 00:07:45,730 Но то, что работает в терминал, это сервер. 135 00:07:45,730 --> 00:07:48,710 У нас есть другие папки, как Lib, который является код библиотеки, 136 00:07:48,710 --> 00:07:51,050 как ваш помощник функции, которые вы можете 137 00:07:51,050 --> 00:07:53,710 использовать на клиенте и на сервере. 138 00:07:53,710 --> 00:07:55,820 И тогда у вас есть общественный папки и ресурсы 139 00:07:55,820 --> 00:07:59,310 Папка необходимо для получения Ваши изображения и другие CSS загружен. 140 00:07:59,310 --> 00:08:02,630 141 00:08:02,630 --> 00:08:09,360 >> Если у вас установлен Метеор, мы будем продолжить учебник для Meteor. 142 00:08:09,360 --> 00:08:12,790 Вы можете перейти по этому адресу, meteor.com/install, 143 00:08:12,790 --> 00:08:17,990 чтобы получить командную строку, что я показали, что устанавливает Метеор. 144 00:08:17,990 --> 00:08:20,240 Мы пройдем через первый несколько шагов, чтобы получить лучше 145 00:08:20,240 --> 00:08:22,760 думают о том, как установить Метеор. 146 00:08:22,760 --> 00:08:28,000 >> Но сначала, я думаю, что это важно, что мы рассмотрим немного JavaScript. 147 00:08:28,000 --> 00:08:32,360 Чтобы показать вам некоторые примеры того, как наша C знания могут быть переведены 148 00:08:32,360 --> 00:08:34,950 в JavaScript, у меня создано несколько примеров. 149 00:08:34,950 --> 00:08:36,940 Они находятся в каталоге JS. 150 00:08:36,940 --> 00:08:41,750 Так что, если в семинарах папку, которую вы Смотри, там папка под названием JS. 151 00:08:41,750 --> 00:08:44,540 И здесь, у нас есть несколько примеров. 152 00:08:44,540 --> 00:08:50,120 >> Давайте открыть первый Пример увидеть очень быстро. 153 00:08:50,120 --> 00:08:53,980 То, что мы видим ваш стандартный привет мир команды. 154 00:08:53,980 --> 00:08:56,520 Вы заметили, в C, что вы имеют достаточно несколько строк. 155 00:08:56,520 --> 00:09:00,490 И как CS50 студенты знают, мы должны основную функцию, 156 00:09:00,490 --> 00:09:05,730 и мы должны включать в себя стандарт I / O библиотеку с тем, чтобы вызвать Printf. 157 00:09:05,730 --> 00:09:09,320 >> Давайте посмотрим на то, как JavaScript сравнивает. 158 00:09:09,320 --> 00:09:11,560 Я собираюсь открыть ex1.js. 159 00:09:11,560 --> 00:09:14,650 Комментарии из то, что C код будет выглядеть, 160 00:09:14,650 --> 00:09:17,550 и ниже линии все Вы должны работать в узел. 161 00:09:17,550 --> 00:09:20,452 Вам не нужно главной функции, вам не нужно включать любые файлы, 162 00:09:20,452 --> 00:09:21,660 и вам не нужно, чтобы вернуться. 163 00:09:21,660 --> 00:09:23,810 Вы просто позвоните console.log. 164 00:09:23,810 --> 00:09:26,370 Это эквивалент вашей Printf. 165 00:09:26,370 --> 00:09:29,310 >> И он принимает то же самое Аргументы PRINTF бы. 166 00:09:29,310 --> 00:09:33,870 И для того, чтобы запустить его, вместо того, чтобы сделать EX1, 167 00:09:33,870 --> 00:09:38,930 вы бы просто позвоните Узел ex1.js. 168 00:09:38,930 --> 00:09:41,830 Вы пишете узел, а затем файла и он будет запущен. 169 00:09:41,830 --> 00:09:43,580 Это не компилируются. 170 00:09:43,580 --> 00:09:45,970 JavaScript является интерпретируемым языком. 171 00:09:45,970 --> 00:09:49,150 Таким образом, не нужно будет составлен, прежде чем он бежать. 172 00:09:49,150 --> 00:09:53,450 Если бы я хотел, чтобы запустить ex1.c, Я должен сделать это первым, 173 00:09:53,450 --> 00:09:59,160 и тогда я могу запустить исполняемый чтобы получить тот же результат. 174 00:09:59,160 --> 00:10:02,460 >> Давайте быстро рассмотрим некоторые другие понятия JavaScript. 175 00:10:02,460 --> 00:10:04,490 Давайте посмотрим на примере двух. 176 00:10:04,490 --> 00:10:14,690 В ex2.js, в ex2.c, мы можем видеть, что у нас есть некоторый код. 177 00:10:14,690 --> 00:10:16,550 Позвольте мне быстро перейти к лучше текстовый редактор 178 00:10:16,550 --> 00:10:18,400 который покажет них новые линии немного лучше. 179 00:10:18,400 --> 00:10:21,760 180 00:10:21,760 --> 00:10:22,380 Хорошо. 181 00:10:22,380 --> 00:10:24,190 Здесь мы имеем пример 2.c. 182 00:10:24,190 --> 00:10:27,360 Здесь мы имеем различные типы что мы распечатки. 183 00:10:27,360 --> 00:10:30,880 И как мы знаем, Printf принимает различные аргументы процентов 184 00:10:30,880 --> 00:10:34,050 для доступа к различным куски данных. 185 00:10:34,050 --> 00:10:36,840 Если мы хотим, чтобы распечатать Строка, мы называем% S. 186 00:10:36,840 --> 00:10:40,390 Если мы хотим вызвать в операциях с плавающей Номер точки, мы позвонили% F. 187 00:10:40,390 --> 00:10:45,810 И нет никакого простого способа называть Boolean его истинное или ложное значение. 188 00:10:45,810 --> 00:10:50,760 Но если вы используете% D, вы можете получить 0 или 1 для правды и лжи. 189 00:10:50,760 --> 00:10:53,270 >> JavaScript является немного лучше для нас. 190 00:10:53,270 --> 00:10:57,740 В JavaScript, давайте посмотрим на некоторые различия у нас есть в этом файле. 191 00:10:57,740 --> 00:11:05,790 Во-первых, вы заметите, что в C мы должны инициализировать каждую переменную с типом. 192 00:11:05,790 --> 00:11:06,940 S является символ звезды. 193 00:11:06,940 --> 00:11:08,930 Это строка, и не может быть другого типа. 194 00:11:08,930 --> 00:11:10,450 N является плавающей точкой. 195 00:11:10,450 --> 00:11:11,780 B является Bool. 196 00:11:11,780 --> 00:11:14,220 >> Но в JavaScript, есть динамические типы. 197 00:11:14,220 --> 00:11:16,400 Это означает, что вы не нужно сказать наличие 198 00:11:16,400 --> 00:11:17,860 какие типы ваши переменные будут. 199 00:11:17,860 --> 00:11:22,730 Вы просто говорите склонение для переменной, имя переменной, а затем его стоимости. 200 00:11:22,730 --> 00:11:24,690 Так Var может быть что угодно на самом деле. 201 00:11:24,690 --> 00:11:25,640 Это может быть строка. 202 00:11:25,640 --> 00:11:27,300 Это может быть число с плавающей точкой. 203 00:11:27,300 --> 00:11:28,560 Это может быть символ. 204 00:11:28,560 --> 00:11:31,250 Это может быть Boolean. 205 00:11:31,250 --> 00:11:34,380 И журнал консоль работает немного по-другому. 206 00:11:34,380 --> 00:11:37,340 Если вы хотите напечатать Количество, вы вызываете% D. 207 00:11:37,340 --> 00:11:41,740 Но большинство значений может быть печатается в виде строк просто отлично. 208 00:11:41,740 --> 00:11:46,220 >> Давайте запустим это в узел чтобы посмотреть, что произойдет. 209 00:11:46,220 --> 00:11:51,880 Я могу назвать Узел ex2.js, и мы получаем Printf 210 00:11:51,880 --> 00:11:56,870 со значениями CS50, N как число с плавающей точкой, 211 00:11:56,870 --> 00:12:00,620 а затем B как логическое преобразуется в строку правда. 212 00:12:00,620 --> 00:12:03,830 Что, если мы сделали пример 2.C? 213 00:12:03,830 --> 00:12:09,630 Ну, у нас еще есть некоторые больше неприятностей с Printf. 214 00:12:09,630 --> 00:12:13,110 Обратите внимание, что с плавающей точкой Количество должен быть отформатирован неправильно, 215 00:12:13,110 --> 00:12:18,120 и что Boolean просто не может будет отображаться как истинное или ложное. 216 00:12:18,120 --> 00:12:18,620 Хорошо. 217 00:12:18,620 --> 00:12:22,680 Теперь давайте посмотрим на примере трех. 218 00:12:22,680 --> 00:12:26,470 В примере три, мы показываем как вы будете использовать для петли. 219 00:12:26,470 --> 00:12:27,630 На самом деле, это очень просто. 220 00:12:27,630 --> 00:12:31,430 Одна из приятных вещей о JavaScript является то, что она основана C. 221 00:12:31,430 --> 00:12:33,920 Это означает, что многие из ваших код будет выглядеть очень похоже 222 00:12:33,920 --> 00:12:36,490 и чувствую себя очень много же. 223 00:12:36,490 --> 00:12:39,220 В течение цикла, единственное, что что действительно изменилось здесь 224 00:12:39,220 --> 00:12:41,840 есть вместо INT I, у нас есть вар я. 225 00:12:41,840 --> 00:12:45,470 Мы все еще можем назначить его ценить нулю, убедитесь, что это меньше, чем пять, 226 00:12:45,470 --> 00:12:49,390 и увеличиваем его на единицу с оператором ++. 227 00:12:49,390 --> 00:12:56,286 Мы называем console.log на I, и что будет печатать нам ряд с каждой линии. 228 00:12:56,286 --> 00:12:58,410 Давайте запустим его очень быстро чтобы увидеть, что он выводит. 229 00:12:58,410 --> 00:13:02,320 230 00:13:02,320 --> 00:13:03,880 Мы получаем новый номер в каждой строке. 231 00:13:03,880 --> 00:13:06,920 Еще одна вещь, я хочу, чтобы ты отметить с console.log 232 00:13:06,920 --> 00:13:09,960 это вы не должны написать Обратная косая черта п, для новой линии. 233 00:13:09,960 --> 00:13:12,480 Console.log будет печатать все на своей собственной линии. 234 00:13:12,480 --> 00:13:14,585 Это хорошая возможность что JavaScript дает нам. 235 00:13:14,585 --> 00:13:18,440 236 00:13:18,440 --> 00:13:22,600 >> Теперь давайте откроем пример четыре. 237 00:13:22,600 --> 00:13:28,710 В примере четырех, сначала в C, мы призываем несколько функций. 238 00:13:28,710 --> 00:13:33,290 Обратите внимание, что мы должны объявить функции, прежде чем мы используем их в меню. 239 00:13:33,290 --> 00:13:37,250 Если бы мы имели главный первой и затем добавить, а затем высокий, сделать, 240 00:13:37,250 --> 00:13:39,540 лязг, или GCC будет дать нам ошибку о том, 241 00:13:39,540 --> 00:13:41,060 что он не знает, что высока. 242 00:13:41,060 --> 00:13:42,780 Он не знает, что надстройка есть. 243 00:13:42,780 --> 00:13:46,480 Таким образом, в C, вы должны быть разборчивы о Порядок, в котором вы звоните своим функциям. 244 00:13:46,480 --> 00:13:49,220 245 00:13:49,220 --> 00:13:51,310 >> Давайте посмотрим на то, как вы можете сделать это в JavaScript. 246 00:13:51,310 --> 00:13:56,060 У нас есть различные файлы, потому что несколько различных способов сделать это. 247 00:13:56,060 --> 00:13:58,950 Одним из способов является в значительной степени прямая трансляция. 248 00:13:58,950 --> 00:14:02,180 Потому что функций в C возвращаемые типы, и JavaScript 249 00:14:02,180 --> 00:14:05,210 не знаю, или уход о том, какой вы вернетесь, 250 00:14:05,210 --> 00:14:06,300 Вы не пишете тип. 251 00:14:06,300 --> 00:14:08,100 Вместо этого, вам просто нужно написать функцию, 252 00:14:08,100 --> 00:14:11,180 и все довольно так же, как раньше. 253 00:14:11,180 --> 00:14:14,630 >> Когда у вас есть переменная, как и в Добавим, нам просто нужно написать х и у. 254 00:14:14,630 --> 00:14:16,060 Нам не нужно, чтобы сказать х Int. 255 00:14:16,060 --> 00:14:18,940 Нам не нужно, чтобы сказать у является Int. 256 00:14:18,940 --> 00:14:21,030 Вернемся с тем же синтаксисом. 257 00:14:21,030 --> 00:14:24,230 Для высока, мы объявим его с функцию вместо недействительными. 258 00:14:24,230 --> 00:14:26,110 Обратите внимание, что ли это, недействительным или не-пустота, 259 00:14:26,110 --> 00:14:28,380 она по-прежнему все те же функции. 260 00:14:28,380 --> 00:14:32,440 И мы просто не поставить что-нибудь в скобках, 261 00:14:32,440 --> 00:14:34,690 и это выглядит очень похоже на код C. 262 00:14:34,690 --> 00:14:37,460 А внизу, мы можем назвать его ниже. 263 00:14:37,460 --> 00:14:42,730 >> Если мы посмотрим на примере 4b, мы замечаем, что я изменил некоторые вещи. 264 00:14:42,730 --> 00:14:45,340 Единственное, что я изменил действительно, хотя это порядок. 265 00:14:45,340 --> 00:14:47,340 У нас есть то же самое функции, но теперь они 266 00:14:47,340 --> 00:14:52,200 заявил после они используются в console.log и высоко на линии 18, 19. 267 00:14:52,200 --> 00:14:54,740 Если вы сделали это в C, сделать бы бросить ошибку. 268 00:14:54,740 --> 00:14:56,070 Вот, это работает просто отлично. 269 00:14:56,070 --> 00:15:01,935 И я могу показать это вам называя узлов на 4b например. 270 00:15:01,935 --> 00:15:05,350 271 00:15:05,350 --> 00:15:10,130 >> Другой способ, которым мы можем вызывать функции это сохранение функции в качестве переменных. 272 00:15:10,130 --> 00:15:13,790 Как я уже сказал, переменная может иметь любой тип. 273 00:15:13,790 --> 00:15:16,720 Один из типов переменной может иметь это функция. 274 00:15:16,720 --> 00:15:19,800 Так что, если вы посмотрите на примере 4с, то, что я изменил 275 00:15:19,800 --> 00:15:24,320 здесь переменная добавить вместо функции доп. 276 00:15:24,320 --> 00:15:26,807 А теперь добавьте равна функции. 277 00:15:26,807 --> 00:15:28,140 Эта функция здесь является анонимным. 278 00:15:28,140 --> 00:15:33,346 Это не имеет никакого названия, так что это просто функцию, а затем в скобках. 279 00:15:33,346 --> 00:15:35,220 Синтаксис после этого не изменяется, но вы 280 00:15:35,220 --> 00:15:38,300 действительно должны иметь в виду, что у вас есть переменная, что вы 281 00:15:38,300 --> 00:15:42,940 хранения функции в Добавить и переменная, которую вы храните в высокой. 282 00:15:42,940 --> 00:15:47,620 >> Потому что добавлять и высокого теперь переменные а не функции, что-то меняется. 283 00:15:47,620 --> 00:15:50,190 Это общая ошибка я вижу в много сценариев JavaScript людей, 284 00:15:50,190 --> 00:15:52,410 и что-то держать в уме. 285 00:15:52,410 --> 00:15:54,365 Когда я запускаю это, давайте посмотрим, что произойдет. 286 00:15:54,365 --> 00:15:57,410 287 00:15:57,410 --> 00:15:58,230 Я получаю сообщение об ошибке. 288 00:15:58,230 --> 00:16:01,000 Это говорит не определено в этой точке. 289 00:16:01,000 --> 00:16:03,520 Так что это говорит это не знаю, что добавить,. 290 00:16:03,520 --> 00:16:06,010 >> Потому что теперь добавить, не Функция, добавить, переменная. 291 00:16:06,010 --> 00:16:10,100 И вы на самом деле не дано добавить значение все же, когда вы использовали его. 292 00:16:10,100 --> 00:16:14,460 Это подводит нас к примеру 4D, где, если Вы хотите использовать переменные и функции, 293 00:16:14,460 --> 00:16:17,210 вам просто нужно убедиться, что они получить значение, прежде чем они привыкли. 294 00:16:17,210 --> 00:16:20,200 295 00:16:20,200 --> 00:16:23,420 >> Давайте перейдем к примеру пяти тогда. 296 00:16:23,420 --> 00:16:27,390 Здесь мы говорим о Структуры в С в С, структуры 297 00:16:27,390 --> 00:16:30,320 есть этот фиксированную структуру для них потому что вы должны объявить их 298 00:16:30,320 --> 00:16:33,050 прежде чем использовать его, и Вы сказать, что я студент, 299 00:16:33,050 --> 00:16:36,645 и каждый студент имеет ровно одно имя, на один год, один пол. 300 00:16:36,645 --> 00:16:37,770 Он должен иметь все из них. 301 00:16:37,770 --> 00:16:42,280 Она не может есть какие-либо другие значения, и они должны быть конкретные виды. 302 00:16:42,280 --> 00:16:47,540 >> Тогда мы можем инициализировать структура в этом красивом синтаксиса 303 00:16:47,540 --> 00:16:49,470 потому что он знает, заказ. 304 00:16:49,470 --> 00:16:51,460 Так он знает, что Роджер имя. 305 00:16:51,460 --> 00:16:54,060 Она знает, что 2016 год и М Пол 306 00:16:54,060 --> 00:16:58,200 потому что мы сказали, что это это Список структура студент. 307 00:16:58,200 --> 00:17:01,607 И тогда вы можете распечатать это, доступ к s.name. 308 00:17:01,607 --> 00:17:03,690 Давайте посмотрим, как мы бы конвертировать, что JavaScript. 309 00:17:03,690 --> 00:17:06,400 310 00:17:06,400 --> 00:17:09,790 Обратите внимание, что ˘S сейчас Переменная, и нет никакого типа. 311 00:17:09,790 --> 00:17:10,920 Это просто переменная снова. 312 00:17:10,920 --> 00:17:14,480 Потому что это не имеет значения, если тип этой переменной указатель, 313 00:17:14,480 --> 00:17:17,440 это структура, или что-нибудь еще. 314 00:17:17,440 --> 00:17:19,650 У нас есть немного другой синтаксис. 315 00:17:19,650 --> 00:17:21,890 Этот синтаксис синтаксис объект. 316 00:17:21,890 --> 00:17:24,400 >> Вы, возможно, видели его в JSON. 317 00:17:24,400 --> 00:17:27,780 JSON на самом деле обозначает JavaScript Object Notation. 318 00:17:27,780 --> 00:17:31,240 Это, как вы определяете объекты в JavaScript. 319 00:17:31,240 --> 00:17:34,500 У нас есть ключ, который является значение, например, имя. 320 00:17:34,500 --> 00:17:37,680 И мы даем это ценности, на с другой стороны толстой кишки. 321 00:17:37,680 --> 00:17:41,850 И еще одна вещь, чтобы иметь в виду, вас не нужно иметь имя и год 322 00:17:41,850 --> 00:17:42,980 и пол для объекта. 323 00:17:42,980 --> 00:17:44,570 Объект не может иметь никаких значений. 324 00:17:44,570 --> 00:17:46,920 Он может иметь столько, сколько вы хотите. 325 00:17:46,920 --> 00:17:50,375 >> Мы можем использовать эти объекты в просто Точно так же мы будем использовать на структуру, s.name. 326 00:17:50,375 --> 00:17:53,810 327 00:17:53,810 --> 00:17:57,080 Мы можем запустить его очень быстро делая узел пример 5.c. 328 00:17:57,080 --> 00:18:00,320 329 00:18:00,320 --> 00:18:02,520 Мы не можем на самом деле запустить файл C в узле. 330 00:18:02,520 --> 00:18:03,654 Он не знает, что C есть. 331 00:18:03,654 --> 00:18:04,695 Это знает только наличие. 332 00:18:04,695 --> 00:18:09,865 Когда мы запустим ex5.js, мы получаем значение, которое мы ожидали. 333 00:18:09,865 --> 00:18:13,490 334 00:18:13,490 --> 00:18:15,980 >> Давайте перейдем к примеру шесть. 335 00:18:15,980 --> 00:18:18,930 Здесь я просто хочу поговорить немного немного больше о массивах JavaScript 336 00:18:18,930 --> 00:18:20,930 потому что они немного иначе, чем вы 337 00:18:20,930 --> 00:18:26,940 используется в С. Массивы Комбинации, Не со скобками, как в С, 338 00:18:26,940 --> 00:18:28,640 с фигурными скобками, но скобки. 339 00:18:28,640 --> 00:18:32,150 Вы можете иметь пустой массив, как обр в четвертой строке. 340 00:18:32,150 --> 00:18:34,680 Вы можете иметь массивы с несколькими значениями. 341 00:18:34,680 --> 00:18:39,790 И доступ к ним точно так же, в С. 342 00:18:39,790 --> 00:18:42,990 >> До линии семь, все кажется довольно простым. 343 00:18:42,990 --> 00:18:45,390 Одна небольшая разница здесь в строке 10. 344 00:18:45,390 --> 00:18:48,620 Образом, вы получите длину массив, просто позвонив .Length. 345 00:18:48,620 --> 00:18:50,620 Массив может быть на самом деле рассматриваться как объект, 346 00:18:50,620 --> 00:18:54,960 и этот объект имеет свойство длины что вы называете, чтобы получить длину его. 347 00:18:54,960 --> 00:18:57,350 Обратите внимание, что это отличается в С, так как в C вы 348 00:18:57,350 --> 00:19:01,600 должны знать длину ваш объект раньше времени. 349 00:19:01,600 --> 00:19:04,700 >> Так Еще одна приятная вещь о массивах является то, что вы можете иметь различные типы. 350 00:19:04,700 --> 00:19:07,470 Если у вас есть массив в С, то массивы определенного значения, 351 00:19:07,470 --> 00:19:11,900 либо указатель структура или плавает или [неразборчиво]. 352 00:19:11,900 --> 00:19:13,700 Здесь вы можете иметь различные значения. 353 00:19:13,700 --> 00:19:17,560 Сначала я была число с плавающей точкой, то Boolean, потом еще целое число. 354 00:19:17,560 --> 00:19:19,670 А на самом деле, они могут изменять типы тоже. 355 00:19:19,670 --> 00:19:21,220 Посмотрите на линии 16. 356 00:19:21,220 --> 00:19:26,760 Массив двух меняется от того, Количество, целое число, в строку. 357 00:19:26,760 --> 00:19:30,920 >> Еще одна приятная вещь о массивах здесь в строке 19, они имеют бесконечную размер. 358 00:19:30,920 --> 00:19:35,900 Вы можете просто сказать, что я хочу сотые элемент будет строка нормально. 359 00:19:35,900 --> 00:19:38,510 И это, кажется, не делают смысл, потому что массив только 360 00:19:38,510 --> 00:19:41,080 есть место для трех элементов, так конец должен быть два. 361 00:19:41,080 --> 00:19:44,800 Но когда вы делаете это, давайте видеть, что массив три становится. 362 00:19:44,800 --> 00:19:47,460 Мы проводим бы это быстро с примерами узел six.js. 363 00:19:47,460 --> 00:19:49,990 364 00:19:49,990 --> 00:19:52,180 Мы получаем это очень долго массив, и то, что происходит 365 00:19:52,180 --> 00:19:55,100 что мы имеем первые несколько элементов а затем куча заготовок 366 00:19:55,100 --> 00:19:56,580 пока мы не получим нашу строку. 367 00:19:56,580 --> 00:19:58,580 JavaScript заполняет Массив, как это необходимо. 368 00:19:58,580 --> 00:20:01,790 369 00:20:01,790 --> 00:20:05,420 >> Давайте, наконец, вернуться к нашему последнему примеру. 370 00:20:05,420 --> 00:20:08,180 Здесь мы имеем список различных студентов. 371 00:20:08,180 --> 00:20:11,350 Я хочу поговорить немного Немного о некоторых хороших аспектов 372 00:20:11,350 --> 00:20:14,240 не для петель в JavaScript. 373 00:20:14,240 --> 00:20:17,500 В C, для петель вид ограничен. 374 00:20:17,500 --> 00:20:21,490 Они имеют фиксированную структуру, где вы есть переменная, у вас есть условие, 375 00:20:21,490 --> 00:20:23,850 и тогда вы что-то сделать В конце цикла. 376 00:20:23,850 --> 00:20:27,560 И, конечно, это работает в JavaScript, как мы видели в предыдущих примерах. 377 00:20:27,560 --> 00:20:31,030 Но у нас есть более хорошие способы делать это в JavaScript. 378 00:20:31,030 --> 00:20:33,870 Это называется цикл по каждому элементу. 379 00:20:33,870 --> 00:20:36,580 >> К сожалению, давайте вернемся примеру семь здесь. 380 00:20:36,580 --> 00:20:39,320 Мы можем также сказать, раздел список. 381 00:20:39,320 --> 00:20:43,250 Так дайте мне каждый I или каждый индекс в этом списке. 382 00:20:43,250 --> 00:20:46,255 Тогда мы можем получить студент просто вызывая раздел I. 383 00:20:46,255 --> 00:20:50,690 Так что все кода, устанавливающего I равна нулю, и убедившись, что я 384 00:20:50,690 --> 00:20:54,420 меньше, чем длина и добавления от одного до Я каждый раз, что это 385 00:20:54,420 --> 00:21:00,220 заботиться о вас, а красиво с этой цикл по каждому элементу. 386 00:21:00,220 --> 00:21:02,830 >> Мало того, что каждому элементу петли работать в списках или массивов, 387 00:21:02,830 --> 00:21:06,130 они также работают на объектах, что тоже приятно. 388 00:21:06,130 --> 00:21:10,240 Вы можете получить имя каждое свойство, просто принимая 389 00:21:10,240 --> 00:21:15,030 словарь или объект, как студента, а затем просто говорю, дайте мне каждый ключ. 390 00:21:15,030 --> 00:21:18,920 Ключ будет они свойства, имя или дом. 391 00:21:18,920 --> 00:21:22,870 Так что же произойдет в том, что мы печатаем в первую очередь имени, а затем 392 00:21:22,870 --> 00:21:24,920 дом каждого студента. 393 00:21:24,920 --> 00:21:29,170 >> Я могу запустить это в узел очень быстро, чтобы показать вам. 394 00:21:29,170 --> 00:21:35,510 Мы получаем первый стиль C цикл, где мы получаем каждый объект его распечатки. 395 00:21:35,510 --> 00:21:38,910 И тогда у нас есть наличие стиль, где вы можете просто 396 00:21:38,910 --> 00:21:41,510 распечатать каждый ключ и ценим индивидуально. 397 00:21:41,510 --> 00:21:45,560 398 00:21:45,560 --> 00:21:47,050 >> Хорошо. 399 00:21:47,050 --> 00:21:52,850 Теперь, когда мы рассмотрели Node.js, я думаю, мы готовы начать работу с Meteor. 400 00:21:52,850 --> 00:21:56,070 Как я уже сказал, Метеор сделал большую работу написать несколько готовых примеров 401 00:21:56,070 --> 00:22:00,600 для вас, что вы можете исследовать через Этот учебник или в папке семинаров. 402 00:22:00,600 --> 00:22:03,750 Но здесь я хочу начать более с нуля. 403 00:22:03,750 --> 00:22:06,810 >> Давайте создадим просто сделать заявку. 404 00:22:06,810 --> 00:22:14,140 Это своего рода базе, что в сделать приложение, которое я показал вам ранее,. 405 00:22:14,140 --> 00:22:16,990 В этом уроке, вы увидите, что есть 406 00:22:16,990 --> 00:22:20,180 Команда Meteor создать для создать новый проект Метеор. 407 00:22:20,180 --> 00:22:24,510 Вы должны вызвать это для того, запуск проектов Метеор, потому что это 408 00:22:24,510 --> 00:22:27,470 будут работать команды создать Метеор 409 00:22:27,470 --> 00:22:31,100 файлы, необходимые для вашего проекта. 410 00:22:31,100 --> 00:22:35,920 >> Если вы идете в терминал, мы можем зайти в папку под названием первый шаг. 411 00:22:35,920 --> 00:22:41,240 И ШАГ ПЕРВЫЙ будет соответствовать Первый шаг в этом уроке. 412 00:22:41,240 --> 00:22:44,020 Указание папки, шаг один шаг два, вплоть до пяти лет. 413 00:22:44,020 --> 00:22:47,835 И каждый из них соответствующие в качестве шага в этом уроке. 414 00:22:47,835 --> 00:22:50,960 415 00:22:50,960 --> 00:22:52,780 Я собираюсь открыть его в моем текстовом редакторе здесь 416 00:22:52,780 --> 00:22:56,280 так что мы можем увидеть немного, что было создано. 417 00:22:56,280 --> 00:22:58,530 Заметим, что четыре основные части. 418 00:22:58,530 --> 00:23:01,170 Там это каталог Метеор .meteor. 419 00:23:01,170 --> 00:23:03,180 И что вы, как правило, не нужно трогать. 420 00:23:03,180 --> 00:23:05,070 Метеор заботится о что папка, и он просто 421 00:23:05,070 --> 00:23:08,640 гарантирует, что ваш Проект будет работать правильно. 422 00:23:08,640 --> 00:23:14,580 >> У нас также есть три файла, HTML файлов, Файл JavaScript, и файл CSS. 423 00:23:14,580 --> 00:23:18,670 Давайте сначала начнем с HTML-файл. 424 00:23:18,670 --> 00:23:21,310 На первый взгляд, это выглядит как обычный HTML документ. 425 00:23:21,310 --> 00:23:23,490 Но обратите внимание, что есть несколько различий. 426 00:23:23,490 --> 00:23:26,520 Один из них, это не на самом деле полный HTML документ. 427 00:23:26,520 --> 00:23:28,640 Мы пропуская HTML-теги. 428 00:23:28,640 --> 00:23:29,700 Это нормально. 429 00:23:29,700 --> 00:23:33,560 В Метеор, вы не ожидается чтобы создать эти HTML теги. 430 00:23:33,560 --> 00:23:35,260 Это делается для вас. 431 00:23:35,260 --> 00:23:38,380 Вы хотите, чтобы begin-- если вы хотите создать сайт, 432 00:23:38,380 --> 00:23:40,430 вам просто нужно, чтобы начать с головной метке, 433 00:23:40,430 --> 00:23:43,510 определяют, что, а затем определить тег тела. 434 00:23:43,510 --> 00:23:48,940 >> Но если вы заметили, в этом HTML-файл, мы имеем новый тег. 435 00:23:48,940 --> 00:23:50,350 У нас есть шаблон тег. 436 00:23:50,350 --> 00:23:52,050 Это не нормально HTML. 437 00:23:52,050 --> 00:23:55,300 Это специальная версия HTML что Метеор делает доступными для вас. 438 00:23:55,300 --> 00:23:57,660 Это называется пространство бара. 439 00:23:57,660 --> 00:24:00,980 Вы можете определить шаблоны, как мало модули, вроде как вспомогательные функции, 440 00:24:00,980 --> 00:24:03,660 в С или код JavaScript. 441 00:24:03,660 --> 00:24:06,020 Этот шаблон будет есть имя называется задачей. 442 00:24:06,020 --> 00:24:10,520 И вы можете увидеть прямо здесь, на линии 13, что вы можете назвать эти шаблоны. 443 00:24:10,520 --> 00:24:14,380 И то, что Meteor будет сделать, это просто заполнить этих задач для вас. 444 00:24:14,380 --> 00:24:17,540 445 00:24:17,540 --> 00:24:22,580 >> Еще одна вещь, вы, возможно, заметите, немного отличается это каждая функция. 446 00:24:22,580 --> 00:24:26,130 Каждый из них будет принимать переменную задачи и вид пройти через это 447 00:24:26,130 --> 00:24:28,810 в этом цикл по каждому элементу мы увидел в примере семи лет. 448 00:24:28,810 --> 00:24:34,200 Это каждый может взять словарь или список, объект или список, 449 00:24:34,200 --> 00:24:38,820 и это будет просто пройти через все такие ценности, как в цикл по каждому элементу будет. 450 00:24:38,820 --> 00:24:44,110 Так что, если у нас есть куча задач, это будем называть шаблон по каждому заданию. 451 00:24:44,110 --> 00:24:49,590 >> Давайте запустим проект Метеор просто чтобы посмотреть, что это происходит. 452 00:24:49,590 --> 00:24:53,260 Я запустить проект Метеор с просто Метеор или Метеор запуска. 453 00:24:53,260 --> 00:24:56,690 А теперь Метеор просто нужно быстро подготовить проект, 454 00:24:56,690 --> 00:25:03,320 запустить базу данных по мере необходимости, а затем опубликовать приложение локально. 455 00:25:03,320 --> 00:25:07,200 Мы можем пойти на наш веб-браузере теперь. 456 00:25:07,200 --> 00:25:10,215 И мы увидим, что мы есть очень простое приложение. 457 00:25:10,215 --> 00:25:22,190 458 00:25:22,190 --> 00:25:29,130 Итак, что мы видели появился было на самом деле первый шаг, шаг один файл. 459 00:25:29,130 --> 00:25:33,260 >> Давайте перейдем ко второму шагу только потому, что Я думаю, что он будет служить той же цели. 460 00:25:33,260 --> 00:25:36,500 Я просто хочу, чтобы изменить в шаге два каталог 461 00:25:36,500 --> 00:25:39,550 и запустить Метеор снова так мы можем видеть шаблон мы просто работал. 462 00:25:39,550 --> 00:25:43,560 463 00:25:43,560 --> 00:25:45,730 Да, вопрос? 464 00:25:45,730 --> 00:25:49,724 >> АУДИТОРИЯ: Если мы получаем разрешение отказано, является that-- что его 465 00:25:49,724 --> 00:25:50,390 называется для этого? 466 00:25:50,390 --> 00:25:52,154 467 00:25:52,154 --> 00:25:54,070 Роджер ZURAWICKI: Если вы работаете Метеор бежать, 468 00:25:54,070 --> 00:25:57,280 и у вас есть разрешение отказано, некоторые из ваших файлов 469 00:25:57,280 --> 00:25:59,070 не могут иметь правильный набор разрешений. 470 00:25:59,070 --> 00:26:03,970 Таким образом, вы должны проверить, где разрешений выключены. 471 00:26:03,970 --> 00:26:06,030 Они могут быть с в Ваш проект Метеор, 472 00:26:06,030 --> 00:26:08,550 или они могут быть выключены в Себя Метеор файлы. 473 00:26:08,550 --> 00:26:13,742 >> АУДИТОРИЯ: Если я скачал его сейчас от вашего GitHub, то что я должен делать 474 00:26:13,742 --> 00:26:16,110 [Неразборчиво]? 475 00:26:16,110 --> 00:26:20,110 >> Роджер ZURAWICKI: Если вы хотите чтобы убедиться, что вы можете получить к нему доступ, 476 00:26:20,110 --> 00:26:21,450 есть команда, которую вы можете запустить. 477 00:26:21,450 --> 00:26:26,590 Позвольте мне быстро записать его так что другие люди могут видеть его. 478 00:26:26,590 --> 00:26:30,670 Я собираюсь открыть новую вкладку здесь и пойди в моей папке семинаров. 479 00:26:30,670 --> 00:26:33,500 480 00:26:33,500 --> 00:26:36,490 Chmod является команда изменить разрешения, 481 00:26:36,490 --> 00:26:40,060 и вы можете сказать г, для сделать это рекурсивно для каждого файла. 482 00:26:40,060 --> 00:26:46,040 И разрешения, вы можете попробовать 0755 чтобы убедиться, что у вас есть полный доступ, 483 00:26:46,040 --> 00:26:47,820 и все еще может читать. 484 00:26:47,820 --> 00:26:50,100 И если вы просто запустите Эта команда, это сделает 485 00:26:50,100 --> 00:26:55,800 что разрешения в проверить весь каталог. 486 00:26:55,800 --> 00:26:59,160 Запуск LS-л может показать вам Разрешения более подробно. 487 00:26:59,160 --> 00:27:01,290 Это выглядит нормально. 488 00:27:01,290 --> 00:27:03,900 >> Что самое главное, что у вас есть все три 489 00:27:03,900 --> 00:27:06,610 RWX для всех файлов в Каталог семинар. 490 00:27:06,610 --> 00:27:09,415 491 00:27:09,415 --> 00:27:11,330 Разве что решить эту проблему? 492 00:27:11,330 --> 00:27:13,735 >> АУДИТОРИЯ: Он говорит отсутствует оперантного [неразборчиво]. 493 00:27:13,735 --> 00:27:17,980 494 00:27:17,980 --> 00:27:18,740 [Неразборчиво] 495 00:27:18,740 --> 00:27:20,490 Роджер ZURAWICKI: Вы должны убедиться, что вы 496 00:27:20,490 --> 00:27:23,022 есть точку в конце команды. 497 00:27:23,022 --> 00:27:23,938 АУДИТОРИЯ: [неразборчиво]. 498 00:27:23,938 --> 00:27:36,395 499 00:27:36,395 --> 00:27:37,520 Роджер ZURAWICKI: Хорошо. 500 00:27:37,520 --> 00:27:42,220 Давайте быстро вернуться к локальный хост, приложение у нас есть. 501 00:27:42,220 --> 00:27:46,640 И вы увидите, что у нас есть несколько задач здесь, как и ожидалось. 502 00:27:46,640 --> 00:27:49,330 503 00:27:49,330 --> 00:27:51,990 У нас есть куча CSS, который Вам не нужно беспокоиться. 504 00:27:51,990 --> 00:27:53,740 Метеор учебник просто дает вам это 505 00:27:53,740 --> 00:27:58,010 Чтобы сделать ваш, чтобы сделать список смотреть немного лучше, чем простой HTML. 506 00:27:58,010 --> 00:28:02,290 И у нас есть файл JavaScript, который Я пойду в более подробно чуть позже, 507 00:28:02,290 --> 00:28:04,272 но это только предоставляет эти задачи. 508 00:28:04,272 --> 00:28:04,980 Это задача одна. 509 00:28:04,980 --> 00:28:05,740 Это задача двух. 510 00:28:05,740 --> 00:28:06,590 Это задача три. 511 00:28:06,590 --> 00:28:09,720 Так что это данные Метеор становится. 512 00:28:09,720 --> 00:28:15,590 >> Одна из замечательных вещей о Метеор что изменения могут произойти автоматически. 513 00:28:15,590 --> 00:28:18,990 Если бы я хотел изменить Название первой задачи, 514 00:28:18,990 --> 00:28:22,490 так что было бы сказать, что это не Задача одна, и я его сохранить, 515 00:28:22,490 --> 00:28:26,370 Затем, когда я иду в Интернете браузер, вы можете обновить его, 516 00:28:26,370 --> 00:28:30,861 и он автоматически говорит это не ответу один. 517 00:28:30,861 --> 00:28:32,860 Вы можете сделать то же самое в любой из этих файлов. 518 00:28:32,860 --> 00:28:37,940 Внести изменения, вместо того, чтобы делать Список, я буду иметь это мой, чтобы сделать список. 519 00:28:37,940 --> 00:28:40,980 >> И единственное, что вы только что заметил, что я даже не придется обновить. 520 00:28:40,980 --> 00:28:43,960 Идея освежает вид решаемых для вас Метеор. 521 00:28:43,960 --> 00:28:48,970 Всякий раз, когда он обнаруживает изменения файлов, он будет загрузить изменения для вас. 522 00:28:48,970 --> 00:28:53,110 Это работает для всех файлов, будь то это HTML, CSS, или JavaScript. 523 00:28:53,110 --> 00:28:57,990 Чтобы показать вам, что это приложение будет выглядеть как без CSS, я могу удалить все это. 524 00:28:57,990 --> 00:29:04,720 И когда он перезагружается, теперь у вас есть не так симпатичная, чтобы сделать список. 525 00:29:04,720 --> 00:29:06,370 Скажем, что содержание назад. 526 00:29:06,370 --> 00:29:11,343 И достаточно верно, это освежает, и наш CSS вернулся. 527 00:29:11,343 --> 00:29:11,843 Отлично. 528 00:29:11,843 --> 00:29:15,700 529 00:29:15,700 --> 00:29:20,010 >> Теперь мы можем двигаться дальше с учебника. 530 00:29:20,010 --> 00:29:23,360 Давайте поговорим о втором этапе, шаблоны. 531 00:29:23,360 --> 00:29:27,140 Это то, что мы только что видели с различными задачами. 532 00:29:27,140 --> 00:29:31,550 Метеор объяснит вам, что шаблоны и как эта логика работает. 533 00:29:31,550 --> 00:29:34,760 Но давайте посмотрим на код в увидеть, если мы можем разобраться в нем. 534 00:29:34,760 --> 00:29:38,030 535 00:29:38,030 --> 00:29:41,460 >> В очень простых приложений, как то, что мы имеем в простой 536 00:29:41,460 --> 00:29:44,550 делать, первый шаг, второй шаг, шаг три, четвертый этап, этап пять, 537 00:29:44,550 --> 00:29:45,700 мы не имеем никаких папок. 538 00:29:45,700 --> 00:29:47,533 Мы не имеем сервер Папка я уже упоминал. 539 00:29:47,533 --> 00:29:50,510 Мы не имеем клиента папка, в которой было сказано. 540 00:29:50,510 --> 00:29:52,290 Так Метеор будет работать все файлы. 541 00:29:52,290 --> 00:29:55,210 Это будет запустить его как на Клиент, как на сервере. 542 00:29:55,210 --> 00:29:58,840 >> И если вы хотите части вашего JavaScript Код для запуска только на клиенте, 543 00:29:58,840 --> 00:30:02,350 они должны убедиться, что у вас есть если заявление, вроде как, что 544 00:30:02,350 --> 00:30:04,890 мы имеем в нашем JavaScript файла здесь. 545 00:30:04,890 --> 00:30:08,010 Так Метеор, только если это клиент, то я 546 00:30:08,010 --> 00:30:12,355 хочу, чтобы определить шаблон вспомогательные называемые задачи. 547 00:30:12,355 --> 00:30:15,050 548 00:30:15,050 --> 00:30:19,260 Этот код на самом деле делает это говорит, что есть 549 00:30:19,260 --> 00:30:21,800 Шаблон объект, называемый что Метеор обеспечивает. 550 00:30:21,800 --> 00:30:23,270 И мы собираемся добавить помощника. 551 00:30:23,270 --> 00:30:27,680 Помощники эти задачи, эти вещи, как задач. 552 00:30:27,680 --> 00:30:33,890 >> Вы увидите, что, если мы вернемся к HTML-файл, мы называли друг на задачи. 553 00:30:33,890 --> 00:30:35,750 Задачи не определен в HTML. 554 00:30:35,750 --> 00:30:37,770 Это определено в JavaScript. 555 00:30:37,770 --> 00:30:42,610 И Метеор нужно знать, какие задачи является когда мы идем в JavaScript здесь. 556 00:30:42,610 --> 00:30:45,550 Задачи это помощник. 557 00:30:45,550 --> 00:30:49,830 Помощник, вы можете думать о его в качестве переменной шаблона. 558 00:30:49,830 --> 00:30:51,000 И что задачи делать? 559 00:30:51,000 --> 00:30:53,580 Ну, это возвращает список значений. 560 00:30:53,580 --> 00:30:56,750 Потому что это список, мы можем называть друг в ней. 561 00:30:56,750 --> 00:30:58,590 Так вот почему мы называем друг на задачи. 562 00:30:58,590 --> 00:30:59,730 И теперь у нас есть задание. 563 00:30:59,730 --> 00:31:02,850 564 00:31:02,850 --> 00:31:03,990 >> Что задачей сделать? 565 00:31:03,990 --> 00:31:07,740 Ну, это имеет эту стрелку здесь после фигурные скобки. 566 00:31:07,740 --> 00:31:09,130 Это означает, что задача шаблон. 567 00:31:09,130 --> 00:31:11,100 Это не помощник, как то, что мы только что видели. 568 00:31:11,100 --> 00:31:12,872 Это шаблон мы определили. 569 00:31:12,872 --> 00:31:14,080 А где мы определили это? 570 00:31:14,080 --> 00:31:16,950 Мы уже определили его ниже прямо здесь. 571 00:31:16,950 --> 00:31:21,160 >> Все это шаблон делает, это сделать Элемент списка, и это вызывает текст. 572 00:31:21,160 --> 00:31:24,160 Теперь, текст, кажется, помощник, но я покажу вам, 573 00:31:24,160 --> 00:31:26,610 что это на самом деле еще Член данных задач. 574 00:31:26,610 --> 00:31:29,230 575 00:31:29,230 --> 00:31:33,670 Когда вы вызываете друг, он переходит в Структура данных немного. 576 00:31:33,670 --> 00:31:39,130 Как цикл по каждому элементу, теперь он выглядит просто на первый элемент в нашем объекте. 577 00:31:39,130 --> 00:31:41,850 Мы видим, что текст определяется здесь, в нашем объекте. 578 00:31:41,850 --> 00:31:45,350 Так Метеор умен, чтобы знать, что мы говорим о тексте, 579 00:31:45,350 --> 00:31:47,630 не помощник называется текст. 580 00:31:47,630 --> 00:31:52,120 Он просто берет значение этого Текст здесь и отображает его в виде HTML, 581 00:31:52,120 --> 00:31:55,475 и вот как идет данные от JavaScript в HTML. 582 00:31:55,475 --> 00:32:03,320 583 00:32:03,320 --> 00:32:07,030 >> Переходя менее, в этом примере мы жестко эти значения. 584 00:32:07,030 --> 00:32:10,440 Метеор делает два очень приятные вещи для нас. 585 00:32:10,440 --> 00:32:15,050 Кроме того, живой обновления, что мы показали, он также управляет нашей базы данных. 586 00:32:15,050 --> 00:32:18,750 Если бы вам пришлось работать с PHP, Вы должны были настроить PHPMYADMIN. 587 00:32:18,750 --> 00:32:21,320 Нужно было убедиться, что ваш Столы были все под контролем. 588 00:32:21,320 --> 00:32:24,760 Вы должны были сделать много работы, чтобы сделать что ваши данные отформатирован некорректно, 589 00:32:24,760 --> 00:32:27,880 и PHP может общаться с ним. 590 00:32:27,880 --> 00:32:30,170 >> Теперь, Метеор использует новую парадигму. 591 00:32:30,170 --> 00:32:32,310 Это более современный способ обработки базы данных. 592 00:32:32,310 --> 00:32:34,580 Это технология, называемая MongoDB. 593 00:32:34,580 --> 00:32:38,740 Так же, как в JavaScript, мы увидели, что это не имеет значения, какие типы были данные. 594 00:32:38,740 --> 00:32:39,640 Все было вар. 595 00:32:39,640 --> 00:32:40,570 Это не было charstar. 596 00:32:40,570 --> 00:32:40,930 Это не было Int. 597 00:32:40,930 --> 00:32:41,970 Это не было структурой. 598 00:32:41,970 --> 00:32:44,210 Это было просто Var это, вар это. 599 00:32:44,210 --> 00:32:46,320 >> MongoDB вид работает таким же образом. 600 00:32:46,320 --> 00:32:48,160 Вы не должны определять свои таблицы. 601 00:32:48,160 --> 00:32:50,860 Вы не должны говорить таблицу имеет имя, которое имеет Int. 602 00:32:50,860 --> 00:32:54,710 Он имеет, я не знаю доллар, который является десятичной. 603 00:32:54,710 --> 00:32:58,360 Это как раз эти JavaScript объекты, все эти переменные, по существу. 604 00:32:58,360 --> 00:33:02,780 И это действительно мощный способ прототип вашего приложения. 605 00:33:02,780 --> 00:33:06,190 И вот почему Метеор пользуется этим. 606 00:33:06,190 --> 00:33:11,080 >> Если мы идем к третьему шагу, давайте посмотрим, что изменилось. 607 00:33:11,080 --> 00:33:15,480 Если мы посмотрим на ToDos HTML, не так много. 608 00:33:15,480 --> 00:33:17,170 CSS не изменилась вообще. 609 00:33:17,170 --> 00:33:22,420 Но небольшое изменение мы видим в HTML это мы изменились, как задачи определяется. 610 00:33:22,420 --> 00:33:23,800 Задачи теперь функция. 611 00:33:23,800 --> 00:33:25,800 Это означает, что каждый раз мы хотим получить задачи, 612 00:33:25,800 --> 00:33:27,480 мы собираемся запустить эту функцию. 613 00:33:27,480 --> 00:33:29,230 Он не возвращается Функция в качестве значения. 614 00:33:29,230 --> 00:33:33,710 >> Метеор умны, чтобы реально работать Функция, чтобы увидеть то, что мы выйти. 615 00:33:33,710 --> 00:33:36,650 И это возвращает эту вещь, называемую задачи. 616 00:33:36,650 --> 00:33:40,650 Мы уже определили задачи на первой линии, и это коллекция Монго. 617 00:33:40,650 --> 00:33:43,170 Монго имеет в виду база данных Метеор использует, 618 00:33:43,170 --> 00:33:48,420 и эта новая просто означает, давайте сделаем Новая коллекция, назовем его задач. 619 00:33:48,420 --> 00:33:53,540 В MySQL, то это будет эквивалентно ищет таблицу с именем задач. 620 00:33:53,540 --> 00:33:56,350 Монго имеет коллекции, а не таблицы. 621 00:33:56,350 --> 00:34:00,100 Так что это просто выглядит для решения задач. 622 00:34:00,100 --> 00:34:04,820 >> Теперь, шаблон в нашем помощник в шаблоне, все 623 00:34:04,820 --> 00:34:08,380 мы должны сделать, чтобы получить все Задачи эта функция, найти 624 00:34:08,380 --> 00:34:11,710 и это пустое скобки. 625 00:34:11,710 --> 00:34:14,150 Это больше, особенно с синтаксисом Монго. 626 00:34:14,150 --> 00:34:16,159 Там есть много Интерактивная документация о том, как 627 00:34:16,159 --> 00:34:19,360 Вы можете сделать эффективным и очень полезно Монго запросов. 628 00:34:19,360 --> 00:34:25,560 Но что-то, как это хорошо достаточно для просто найти все данные. 629 00:34:25,560 --> 00:34:30,100 >> Теперь один из вопросов, которые вы можете увидеть является то, что мы никогда не добавлять данные. 630 00:34:30,100 --> 00:34:35,020 Так что же происходит, когда мы реально работать три шага? 631 00:34:35,020 --> 00:34:37,550 Давайте быстро перейти в третьему шагу и запустить Метеор. 632 00:34:37,550 --> 00:34:42,870 633 00:34:42,870 --> 00:34:45,650 Обратите внимание, что у меня был другой Метеор Проект работает в другом месте, 634 00:34:45,650 --> 00:34:49,110 так Метеор не нравится. 635 00:34:49,110 --> 00:34:52,810 Я просто хочу, чтобы быстро близко к Другое Метеор с управления C, 636 00:34:52,810 --> 00:34:55,780 перейти в три шага, и запустить Метеор снова. 637 00:34:55,780 --> 00:35:01,070 638 00:35:01,070 --> 00:35:03,180 Обратите внимание, что это начинает MongoDB, потому что MongoDB 639 00:35:03,180 --> 00:35:06,370 является частью каждого проекта Метеор. 640 00:35:06,370 --> 00:35:09,190 >> Так он говорит моя заявка содержит ошибки. 641 00:35:09,190 --> 00:35:10,590 Это хорошая возможность Метеор имеет. 642 00:35:10,590 --> 00:35:13,700 Это гарантирует, что ваши HTML хорошо проверены. 643 00:35:13,700 --> 00:35:17,710 Давайте быстро посмотрим, почему это может быть. 644 00:35:17,710 --> 00:35:26,110 Кажется, я случайно скопированы неправильно HTML-код. 645 00:35:26,110 --> 00:35:30,610 Если бы я сохранить его сейчас, Метеор автоматический перезапуск сервера, 646 00:35:30,610 --> 00:35:34,650 и теперь приложение работает, как ожидалось. 647 00:35:34,650 --> 00:35:39,220 Обратите внимание, чтобы исправить это, вы можете просто запустить же HTML-файл с шага два, 648 00:35:39,220 --> 00:35:40,380 скопируйте его в три шага. 649 00:35:40,380 --> 00:35:43,290 650 00:35:43,290 --> 00:35:45,917 >> Мы можем вернуться к нашему локальному узлу. 651 00:35:45,917 --> 00:35:47,500 И теперь мы видим, у нас есть наш, чтобы сделать список. 652 00:35:47,500 --> 00:35:50,070 Отлично, но он пуст. 653 00:35:50,070 --> 00:35:54,210 Мы на самом деле не есть какие-либо задачи в нашей базе данных Монго. 654 00:35:54,210 --> 00:35:57,930 Итак, давайте поговорим о Несколько способов, которыми мы можем сделать это. 655 00:35:57,930 --> 00:36:03,240 Если мы вернемся к терминалу, мы можно закрыть его и запустить Метеор Монго. 656 00:36:03,240 --> 00:36:05,320 >> Если вы знакомы с тем, как Метеор работает, 657 00:36:05,320 --> 00:36:14,100 это на самом деле дает вам доступ в полной MongoDB для Meteor. 658 00:36:14,100 --> 00:36:17,570 Обратите внимание, что вы должны быть запущены Метеор сначала для этого, чтобы работать. 659 00:36:17,570 --> 00:36:23,840 Так что, если я запускаю это в новой вкладке, я может вернуться в тот же каталог. 660 00:36:23,840 --> 00:36:29,040 661 00:36:29,040 --> 00:36:32,570 А теперь Метеор работает просто отлично. 662 00:36:32,570 --> 00:36:33,600 Это быстрое. 663 00:36:33,600 --> 00:36:36,350 664 00:36:36,350 --> 00:36:38,790 Позвольте мне немного больше, поэтому мы можем видеть. 665 00:36:38,790 --> 00:36:41,550 Это выглядит немного по-другому, чем то, что вы могли бы быть использованы для вас 666 00:36:41,550 --> 00:36:42,869 на самом деле не нужно использовать Монго. 667 00:36:42,869 --> 00:36:45,410 Весь смысл мне здесь так что вы можете использовать JavaScript. 668 00:36:45,410 --> 00:36:48,250 Но если вам интересно, API Монго не 669 00:36:48,250 --> 00:36:50,730 Использование SQL структурированный язык запросов. 670 00:36:50,730 --> 00:36:55,570 Он использует свой собственный язык, который выглядит как JavaScript. 671 00:36:55,570 --> 00:37:00,520 Очень быстро, мы можем найти Таблица помощью db.tasks. 672 00:37:00,520 --> 00:37:08,940 И это говорит мне, Оказывается, что если мы запустим найти, 673 00:37:08,940 --> 00:37:13,450 вид похож на то, что мы имели с Метеор, мы можем загрузить все элементы. 674 00:37:13,450 --> 00:37:17,330 Проблема в том, что мы делаем не на самом деле есть какие-то задачи, определенные. 675 00:37:17,330 --> 00:37:20,600 Поэтому он не может получить их. 676 00:37:20,600 --> 00:37:22,130 >> Мы можем вставить, хотя. 677 00:37:22,130 --> 00:37:25,170 Итак, мы можем запустить вставку с командной вставки. 678 00:37:25,170 --> 00:37:29,140 И мы просто дать ему объект, и мы просто 679 00:37:29,140 --> 00:37:31,840 убедитесь, что формат, что мы ожидаем. 680 00:37:31,840 --> 00:37:35,030 Если мы смотрели на два шага, мы видели, что каждой задачи 681 00:37:35,030 --> 00:37:39,590 был объект с текстом в качестве ключа и все 682 00:37:39,590 --> 00:37:41,640 Ваш делать пункт был в качестве переменной. 683 00:37:41,640 --> 00:37:44,680 Таким образом, мы можем сделать что-то здесь. 684 00:37:44,680 --> 00:37:50,160 >> Мы можем иметь это вставить задачу называется Я родом из Монго. 685 00:37:50,160 --> 00:37:52,570 И мы нажимаем Enter, и он работает. 686 00:37:52,570 --> 00:37:56,900 Мы можем запустить снова найти, и мы видеть, что есть объект здесь. 687 00:37:56,900 --> 00:38:01,810 Монго присваивает ему идентификатор, который вам на самом деле не нужно беспокоиться. 688 00:38:01,810 --> 00:38:06,690 Что важно для вас данные вы кладете в, это данные, вы выходите. 689 00:38:06,690 --> 00:38:10,500 >> Давайте вернемся на нашем сайте, и эй, наша задача загружен. 690 00:38:10,500 --> 00:38:13,987 И вы можете видеть, что потому Метеор очень умный 691 00:38:13,987 --> 00:38:16,570 и всегда освежает для вас, я не должны коснуться страницу. 692 00:38:16,570 --> 00:38:19,160 Он автоматически загружен. 693 00:38:19,160 --> 00:38:23,520 >> Давайте запустить код в JavaScript, хотя сделать это. 694 00:38:23,520 --> 00:38:26,120 Как мы узел в спине конца, чтобы выполнить из наличие, 695 00:38:26,120 --> 00:38:29,280 мы также можем запустить наличие непосредственно в наших браузерах. 696 00:38:29,280 --> 00:38:31,970 Вы можете сделать это с помощью функции называется Проверьте элемент. 697 00:38:31,970 --> 00:38:34,210 Если я щелкните правой кнопкой мыши на раздел страницы, 698 00:38:34,210 --> 00:38:36,730 есть вариант называется Проверьте элемент. 699 00:38:36,730 --> 00:38:38,840 Если вы работаете браузер, как Safari, вы 700 00:38:38,840 --> 00:38:45,430 возможно, потребуется включить свой разработчика Инструменты прежде чем вы получите эту функцию. 701 00:38:45,430 --> 00:38:46,930 >> То, что мы заботимся о том, консоль. 702 00:38:46,930 --> 00:38:48,930 Таким образом, мы просто пойти Консоль внизу. 703 00:38:48,930 --> 00:38:52,110 704 00:38:52,110 --> 00:38:55,970 Теперь мы можем запустить любую наличие Здесь, как и в JavaScript 705 00:38:55,970 --> 00:38:58,860 файлы я показал в JS, например. 706 00:38:58,860 --> 00:39:02,040 Но теперь давайте посмотрим на задачи. 707 00:39:02,040 --> 00:39:04,955 Мы можем работать наша команда. 708 00:39:04,955 --> 00:39:07,830 И, надеюсь, я буду в состоянии сделать это немного больше, так что мы все можем видеть. 709 00:39:07,830 --> 00:39:14,390 710 00:39:14,390 --> 00:39:18,450 >> Если мы запустим tasks.find, и вы будете видеть, что это тот же самый код 711 00:39:18,450 --> 00:39:24,840 То, что использует стандартный файл JavaScript На третьем этапе, это task.find. 712 00:39:24,840 --> 00:39:29,100 Мы можем запустить то же самое, и теперь мы получаем некоторые странные вещи. 713 00:39:29,100 --> 00:39:31,050 Как мы на самом деле получить эти данные? 714 00:39:31,050 --> 00:39:34,860 Ну, мы должны запустить этот Команда называется выборка. 715 00:39:34,860 --> 00:39:37,150 >> Это очень полезно для отладки. 716 00:39:37,150 --> 00:39:41,000 Что вы получаете здесь курсора, и это 717 00:39:41,000 --> 00:39:44,890 хороший способ Метеор имеет оптимизированные выборки данных. 718 00:39:44,890 --> 00:39:48,270 Этот курсор имеет все возможности для в прямом эфире обновление и обновить страницу 719 00:39:48,270 --> 00:39:49,650 когда что-то изменилось. 720 00:39:49,650 --> 00:39:51,280 Но он не будет получать нам данные. 721 00:39:51,280 --> 00:39:52,720 Мы можем получить данные через выборки. 722 00:39:52,720 --> 00:39:56,880 И вы видите, у нас есть объект, и это просто нравится то, что мы имели в Монго, 723 00:39:56,880 --> 00:40:00,040 с ID и текстом мы вкладываем в. 724 00:40:00,040 --> 00:40:04,200 >> Так как же мы вставляем элемент в Метеор? 725 00:40:04,200 --> 00:40:07,250 Ну, мы просто должны задач. 726 00:40:07,250 --> 00:40:09,990 И тогда мы можем запустить Та же команда вставки, 727 00:40:09,990 --> 00:40:17,520 давая словарь или объект в том же формате, текст 728 00:40:17,520 --> 00:40:22,340 и тогда я пришел с консоли. 729 00:40:22,340 --> 00:40:27,240 Взгляните выше, потому что, когда я сделать это, он показывает на веб-сайте 730 00:40:27,240 --> 00:40:29,660 автоматически. 731 00:40:29,660 --> 00:40:33,291 >> Обратите внимание, что вы можете положить все Вы хотите в этих пунктов. 732 00:40:33,291 --> 00:40:35,040 Это не должно имеют фиксированную структуру. 733 00:40:35,040 --> 00:40:39,790 Я мог бы равна номер три и б равно ложь. 734 00:40:39,790 --> 00:40:41,600 И все это работает. 735 00:40:41,600 --> 00:40:46,000 Я могу даже выбрать, чтобы не включают в себя текст вообще. 736 00:40:46,000 --> 00:40:48,320 Это просто не рекомендуется хотя, потому что тогда Метеор 737 00:40:48,320 --> 00:40:50,920 не знаю, что для отображения. 738 00:40:50,920 --> 00:40:53,110 Но в каждом случае, мы получить ID, и это 739 00:40:53,110 --> 00:40:54,785 ID объекта вы можете использовать. 740 00:40:54,785 --> 00:41:01,120 741 00:41:01,120 --> 00:41:03,280 >> Поскольку мы продолжаем с четвертому шагу и пятом шаге, 742 00:41:03,280 --> 00:41:06,870 учебник покажет вам пути, что Вы можете создать элементы пользовательского интерфейса с помощью 743 00:41:06,870 --> 00:41:13,130 HTML вы знаете, создавать различные задачи. 744 00:41:13,130 --> 00:41:15,440 Давайте посмотрим на четвертом этапе очень быстро. 745 00:41:15,440 --> 00:41:18,290 Мы увидим, что мы добавили раздел о событиях. 746 00:41:18,290 --> 00:41:20,874 Шаблоны могут иметь помощники, которые получают нам данные. 747 00:41:20,874 --> 00:41:22,040 Но она также может вызвать события. 748 00:41:22,040 --> 00:41:25,300 И это где вещи становится полезным, потому что события 749 00:41:25,300 --> 00:41:28,590 это то, что произойдет, когда вы нажимаете на разные вещи на своем сайте. 750 00:41:28,590 --> 00:41:33,790 >> Здесь наш код говорю нам добавить это событие. 751 00:41:33,790 --> 00:41:38,860 Добавьте его, когда вы отправили что-то с класса новой задачи. 752 00:41:38,860 --> 00:41:41,910 Что у вас тут селектор CSS. 753 00:41:41,910 --> 00:41:45,870 Так что это просто выглядит для HTML элемент, который имеет класс новую задачу. 754 00:41:45,870 --> 00:41:47,940 И, похоже, к этому событию, как представить. 755 00:41:47,940 --> 00:41:51,050 Другие мероприятия включают Нажмите, наведите, дважды щелкните, 756 00:41:51,050 --> 00:41:54,450 похоже на то, что вы получаете в нормальном формате HTML. 757 00:41:54,450 --> 00:41:56,770 >> Что вы даете его здесь теперь функция. 758 00:41:56,770 --> 00:42:01,210 И вы можете иметь свой Код в этой функции. 759 00:42:01,210 --> 00:42:06,360 Эта функция, что заканчивает тем, что вызывается, когда вы представить эту новую задачу. 760 00:42:06,360 --> 00:42:12,170 Давайте посмотрим на HTML, чтобы убедиться, понять, что это новая задача. 761 00:42:12,170 --> 00:42:15,570 Мы добавили форму здесь с классом новой задачи. 762 00:42:15,570 --> 00:42:19,880 И это имеет вход, который принимает текст. 763 00:42:19,880 --> 00:42:22,605 И это то, где мы будет добавить наши новые задачи. 764 00:42:22,605 --> 00:42:25,520 765 00:42:25,520 --> 00:42:29,780 >> Давайте запустим Шаг четвертый в сайт, чтобы увидеть, как он выглядит. 766 00:42:29,780 --> 00:42:32,710 Мы можем бросить First Out в MongoDB мы имели 767 00:42:32,710 --> 00:42:35,300 Из наших предыдущих Пример с управления С. 768 00:42:35,300 --> 00:42:37,690 И давайте изменим его в Четвертый шаг каталог. 769 00:42:37,690 --> 00:42:41,000 770 00:42:41,000 --> 00:42:42,920 Мы будем запускать Метеор снова чтобы запустить сервер. 771 00:42:42,920 --> 00:42:46,850 772 00:42:46,850 --> 00:42:50,510 И, к сожалению, мне пришлось Метеор работает в другом терминале. 773 00:42:50,510 --> 00:42:53,080 Так что я просто хочу, чтобы убедиться, что это закрыто. 774 00:42:53,080 --> 00:43:01,805 Давайте бросить это и изменение части четвертой, четвертый этап. 775 00:43:01,805 --> 00:43:02,305 ОК. 776 00:43:02,305 --> 00:43:11,220 777 00:43:11,220 --> 00:43:13,250 >> Теперь наш код Метеор работает. 778 00:43:13,250 --> 00:43:19,480 И вы можете видеть, что это обновление, без нам даже не нужно обновлять страницу. 779 00:43:19,480 --> 00:43:24,410 Что изменилось здесь сейчас что мы не имеем ни одной задачи, 780 00:43:24,410 --> 00:43:29,530 но у нас есть форма здесь, это текстовое поле, чтобы добавить наши новые задачи. 781 00:43:29,530 --> 00:43:31,550 И мы можем ввести нашу задачу здесь. 782 00:43:31,550 --> 00:43:34,564 Я родом из страницы HTML. 783 00:43:34,564 --> 00:43:36,105 Когда я нажимаю Enter, он получил представлено. 784 00:43:36,105 --> 00:43:39,180 785 00:43:39,180 --> 00:43:44,540 >> Мы можем посмотреть, что случилось, как соответствии с кодом JavaScript. 786 00:43:44,540 --> 00:43:49,930 Что эта функция сделал взять текст из формы, 787 00:43:49,930 --> 00:43:53,680 а потом просто называется tasks.insert, как мы это делали в консоли. 788 00:43:53,680 --> 00:43:56,410 Они также решили добавить дату createdAt. 789 00:43:56,410 --> 00:43:59,840 Это, как бы вы указать текущее время. 790 00:43:59,840 --> 00:44:03,220 После этого, она очищает форму путем Убедитесь значение пустая строка. 791 00:44:03,220 --> 00:44:06,550 >> И тогда он призывает вернуться ложно убедитесь, что ничего не происходит. 792 00:44:06,550 --> 00:44:10,350 Когда вы вернетесь от ложного Форма событие, которое останавливает выполнение. 793 00:44:10,350 --> 00:44:14,520 Скажем, форма имеет действие, как представить на страницу PHP. 794 00:44:14,520 --> 00:44:16,980 Если вы еще не вернулся ложь, вы вернуться правда. 795 00:44:16,980 --> 00:44:18,500 Было бы в конечном итоге сделать эту просьбу. 796 00:44:18,500 --> 00:44:20,590 Ложные перехватывает его и останавливает его прямо там. 797 00:44:20,590 --> 00:44:23,510 798 00:44:23,510 --> 00:44:28,610 >> Так что было немного демо о как Метеор работает, и мы 799 00:44:28,610 --> 00:44:30,980 следил за учебник для некоторое время. 800 00:44:30,980 --> 00:44:33,560 И вы можете пожалуйста свободно продолжать это делать. 801 00:44:33,560 --> 00:44:37,760 Есть много ресурсов, и учебник на самом деле просто 802 00:44:37,760 --> 00:44:40,400 очень хорошо о объясняя что происходит. 803 00:44:40,400 --> 00:44:44,362 Я хочу показать вам сейчас, в Несколько минут мы оставили, 804 00:44:44,362 --> 00:44:46,320 что некоторые из кулер особенности Метеор, 805 00:44:46,320 --> 00:44:48,772 и то, что некоторые из более полезные пакеты. 806 00:44:48,772 --> 00:44:51,730 Один из больших вещей о Метеор является то, что у вас есть система пакетов. 807 00:44:51,730 --> 00:44:55,620 Вы можете легко включить код что многие тысячи разработчиков 808 00:44:55,620 --> 00:44:58,840 написал по всему миру в вашем Метеор проекта. 809 00:44:58,840 --> 00:45:02,410 Одним из примеров этого является то, что вы могли бы сделать на этапе девять урока, где 810 00:45:02,410 --> 00:45:07,435 Вы пытаетесь добавить учетные записи на ваш Метеор проекта. 811 00:45:07,435 --> 00:45:10,010 812 00:45:10,010 --> 00:45:13,690 Если у нас есть CS50 PHP Проект, мы бы 813 00:45:13,690 --> 00:45:17,810 полагаться на рамках или наш собственный код, чтобы сделать 814 00:45:17,810 --> 00:45:20,820 что мы надежно обрабатывать пароли и имена пользователей 815 00:45:20,820 --> 00:45:23,120 и хранение в базе данных и все это. 816 00:45:23,120 --> 00:45:25,670 >> Оказывается Метеор имеет некоторые пакеты сделать это за вас, 817 00:45:25,670 --> 00:45:29,160 и сделать это очень легко. 818 00:45:29,160 --> 00:45:31,950 Что мы можем сделать, это добавить несколько пакетов. 819 00:45:31,950 --> 00:45:37,450 Так давайте сделаем это право сейчас в нашей консоли. 820 00:45:37,450 --> 00:45:42,460 Я собираюсь выйти из проекта и Прямо сейчас вдаваться в простой-несделанного. 821 00:45:42,460 --> 00:45:47,450 822 00:45:47,450 --> 00:45:50,050 Теперь, простой Todos является проект, который вы 823 00:45:50,050 --> 00:45:53,500 будет иметь после того, как сделано с шагом 11 или шага 12, 824 00:45:53,500 --> 00:45:55,250 в конце этого руководства. 825 00:45:55,250 --> 00:45:58,642 И давайте быстро смотреть на это, чтобы видеть каковы различные возможности у нас есть. 826 00:45:58,642 --> 00:46:01,610 Давайте просто убедитесь, что он работает. 827 00:46:01,610 --> 00:46:04,400 Иногда это занимает некоторое время, для обновления, но здесь это. 828 00:46:04,400 --> 00:46:09,710 >> У нас есть возможность скрыть полные задачи, и мы можем войдите на сайт. 829 00:46:09,710 --> 00:46:11,770 И это было сделано с Пакет Метеор. 830 00:46:11,770 --> 00:46:12,270 Здорово. 831 00:46:12,270 --> 00:46:14,910 Мы уже имя пользователя и пароль войдите в систему. 832 00:46:14,910 --> 00:46:19,170 Но что, если мы хотим добавить другой вид авторизации механизма? 833 00:46:19,170 --> 00:46:22,560 Скажем, я хотел, чтобы войти с моей Метеор счет. 834 00:46:22,560 --> 00:46:27,270 Я собираюсь работать метеорный добавить, и это это синтаксис для добавления пакетов. 835 00:46:27,270 --> 00:46:32,160 Я могу сказать, счета и accounts.meteor. 836 00:46:32,160 --> 00:46:35,720 Это будет теперь найти упаковка и загрузить его. 837 00:46:35,720 --> 00:46:40,480 Вы можете видеть, что я не имею нашел правильное название пакета. 838 00:46:40,480 --> 00:46:42,820 >> Итак, как вы узнали о пакетах? 839 00:46:42,820 --> 00:46:46,380 Ну есть большой сайт, сделал доступны по метеора людей, 840 00:46:46,380 --> 00:46:47,780 называется atmospherejs.com. 841 00:46:47,780 --> 00:46:52,520 Atmospherejs, одним словом, точка ком, это отличный хранилище 842 00:46:52,520 --> 00:46:57,660 для нахождения всех Метеор пакеты в репозитории. 843 00:46:57,660 --> 00:47:05,140 Я могу искать записи, а затем он покажет мне всю необходимую материал, 844 00:47:05,140 --> 00:47:07,320 все пакеты с именем учетной записи. 845 00:47:07,320 --> 00:47:10,180 846 00:47:10,180 --> 00:47:13,270 >> Хотя это загружает, мы можем попытаться добавив некоторые другие пакеты. 847 00:47:13,270 --> 00:47:19,380 Может быть, пакет Метеор не работает прямо сейчас, но я могу добавить Facebook. 848 00:47:19,380 --> 00:47:22,860 849 00:47:22,860 --> 00:47:27,190 Я могу добавить учетную запись, а затем запустить проект Метеор снова. 850 00:47:27,190 --> 00:47:33,260 851 00:47:33,260 --> 00:47:36,900 После этого начинается, давайте посмотрим, что изменилось на сайте. 852 00:47:36,900 --> 00:47:40,010 853 00:47:40,010 --> 00:47:44,580 Вы можете see-- я мог бы должны обновить его здесь. 854 00:47:44,580 --> 00:47:47,320 >> У меня есть кнопка для настроить Facebook логин. 855 00:47:47,320 --> 00:47:49,765 И вот, у меня есть все инструкции Метеор 856 00:47:49,765 --> 00:47:52,960 подготовил для вас создание приложения Facebook. 857 00:47:52,960 --> 00:47:58,990 И вы можете использовать это Информация добавлять свои удостоверения. 858 00:47:58,990 --> 00:48:04,130 Как только это будет сделано, вы будете иметь Facebook Войти работы в вашем приложении. 859 00:48:04,130 --> 00:48:08,559 >> Я просто хочу, чтобы получить идентификатор приложения и секрет, 860 00:48:08,559 --> 00:48:10,100 чтобы показать вам, как это может работать. 861 00:48:10,100 --> 00:48:16,000 862 00:48:16,000 --> 00:48:20,360 Вы должны иметь учетную запись Facebook использовать Facebook варианты разработки. 863 00:48:20,360 --> 00:48:31,160 864 00:48:31,160 --> 00:48:35,290 Позвольте мне быстро найти Ключи Метеор, которые необходимы. 865 00:48:35,290 --> 00:48:46,994 866 00:48:46,994 --> 00:48:49,160 У меня есть еще один проект Метеор что я собираюсь использовать, 867 00:48:49,160 --> 00:48:55,590 и я просто хочу, чтобы взять ключи из этого файла. 868 00:48:55,590 --> 00:49:14,410 869 00:49:14,410 --> 00:49:20,930 >> И как только я найти его, я буду просто быть в состоянии скопировать эти ключи в моей Facebook. 870 00:49:20,930 --> 00:49:23,489 Так вот ключ. 871 00:49:23,489 --> 00:49:24,280 И это в тайне. 872 00:49:24,280 --> 00:49:26,071 Вы не должны быть этот обмен с людьми. 873 00:49:26,071 --> 00:49:28,870 874 00:49:28,870 --> 00:49:30,910 А потом вы даете ему ваше приложение в секрете. 875 00:49:30,910 --> 00:49:33,560 И это так Facebook знает, что вы это вы. 876 00:49:33,560 --> 00:49:37,630 877 00:49:37,630 --> 00:49:39,080 И вы сохраните конфигурацию. 878 00:49:39,080 --> 00:49:45,160 879 00:49:45,160 --> 00:49:48,640 >> Я думаю, что в процессе я прекратили свою Метеор приложение. 880 00:49:48,640 --> 00:49:52,290 Так что я просто хочу, чтобы что он все еще там. 881 00:49:52,290 --> 00:49:54,962 882 00:49:54,962 --> 00:49:58,610 Хорошо, давайте удостоверимся, что наше Метеор сервер работает так, веб-страница работает. 883 00:49:58,610 --> 00:50:02,440 Обратите внимание, если мы перестанем Метеор сервер, страница все еще там. 884 00:50:02,440 --> 00:50:04,700 Она просто не будет обновлять больше. 885 00:50:04,700 --> 00:50:10,290 Сервер Метеор необходимо за то, чтобы страница в прямом эфире. 886 00:50:10,290 --> 00:50:14,050 >> ОК, я представил его, и теперь Я могу войти в систему с Facebook. 887 00:50:14,050 --> 00:50:17,400 Сейчас это просто вопрос имея поп Facebook до 888 00:50:17,400 --> 00:50:21,710 и положить в вашем аккаунте Информация и регистрация в. 889 00:50:21,710 --> 00:50:24,520 890 00:50:24,520 --> 00:50:27,930 После того, как вы сделаете это, Facebook может пилить вы еще какое-то безопасности. 891 00:50:27,930 --> 00:50:29,810 Таким образом, мы просто останавливаться на достигнутом. 892 00:50:29,810 --> 00:50:34,110 Дело в том, что, когда вы закончите с тем, вы будете иметь Facebook.com Войти. 893 00:50:34,110 --> 00:50:37,850 >> Метеор имеет кучу Другие пакеты, а также. 894 00:50:37,850 --> 00:50:39,200 Вы можете войти с Google+. 895 00:50:39,200 --> 00:50:40,500 Вы можете войти с GitHub. 896 00:50:40,500 --> 00:50:42,170 Вы можете войти с Twitter. 897 00:50:42,170 --> 00:50:44,870 Или, если вы ищете, вы найти множество других вещей, 898 00:50:44,870 --> 00:50:49,170 как Meetup, LinkedIn, и Метеор Разработчик. 899 00:50:49,170 --> 00:50:53,100 Так Метеор Разработчик было Пакет я искал. 900 00:50:53,100 --> 00:50:56,170 метеор добавить учетные записи-Метеор-разработчика. 901 00:50:56,170 --> 00:51:06,192 902 00:51:06,192 --> 00:51:07,900 В то же время, я Также хочу порекомендовать 903 00:51:07,900 --> 00:51:11,340 некоторые другие пакеты для ваших проектов. 904 00:51:11,340 --> 00:51:14,670 Это может оказаться полезным включают в себя пакет JQuery. 905 00:51:14,670 --> 00:51:17,909 Это позволяет использовать JQuery в Ваших клиентов. 906 00:51:17,909 --> 00:51:21,200 Вы можете просто сделать это с одной линии, и Метеор будет убедиться, что вы в курсе 907 00:51:21,200 --> 00:51:21,825 на JQuery. 908 00:51:21,825 --> 00:51:24,330 909 00:51:24,330 --> 00:51:27,450 Я также рекомендую Хьюстон: Admin. 910 00:51:27,450 --> 00:51:31,550 >> Это вроде как PhpMyAdmin вид инструмента для вашего MongoDB. 911 00:51:31,550 --> 00:51:33,890 Это позволяет редактировать Ваши данные довольно легко 912 00:51:33,890 --> 00:51:37,950 без того, чтобы идти к оболочке Монго, как я сделал в начале семинара. 913 00:51:37,950 --> 00:51:43,160 914 00:51:43,160 --> 00:51:47,101 Так что теперь, что это работает, давайте запустим Метеор еще раз и посмотреть, что мы можем сделать. 915 00:51:47,101 --> 00:51:56,240 916 00:51:56,240 --> 00:52:00,720 >> Вы заметили, что добавление некоторых пакетов может иметь их представить некоторые предупреждения. 917 00:52:00,720 --> 00:52:02,720 Вам не нужно будет беспокоиться о том, что с Хьюстоном. 918 00:52:02,720 --> 00:52:06,040 919 00:52:06,040 --> 00:52:10,810 Так что теперь мы можем иметь возможность настроить Метеор администратора. 920 00:52:10,810 --> 00:52:15,080 И они дают вам направления Если вы хотите, чтобы установить, что. 921 00:52:15,080 --> 00:52:17,750 922 00:52:17,750 --> 00:52:20,440 >> Мы также можем теперь перейти к / Admin. 923 00:52:20,440 --> 00:52:23,280 Это приходит к вам по Хьюстон пакета. 924 00:52:23,280 --> 00:52:27,470 И это Метеор интерфейс администратора. 925 00:52:27,470 --> 00:52:30,660 Вы просто создать учетная запись администратора, как это. 926 00:52:30,660 --> 00:52:38,150 И если вы обновите страницу, вы могли бы есть некоторые коллекции появляется. 927 00:52:38,150 --> 00:52:40,980 928 00:52:40,980 --> 00:52:43,460 >> Это очень полезный инструмент, и я настоятельно рекомендую его. 929 00:52:43,460 --> 00:52:46,717 930 00:52:46,717 --> 00:52:49,050 Вы можете видеть, что из-за Хьюстон давал некоторые ошибки, 931 00:52:49,050 --> 00:52:52,330 мы не имеем каких-либо коллекции показ прямо сейчас. 932 00:52:52,330 --> 00:52:56,800 Как вы будет использовать Хьюстон убедившись, что эта функция получает 933 00:52:56,800 --> 00:52:58,860 называется в ваших простых-несделанного. 934 00:52:58,860 --> 00:53:01,370 Так Хьюстон не знаю, что мои задачи. 935 00:53:01,370 --> 00:53:04,490 >> Мы создали Монго коллекция под названием задачи. 936 00:53:04,490 --> 00:53:11,390 Пойдем в простой-несделанного и просто убедитесь, что в JavaScript, 937 00:53:11,390 --> 00:53:16,295 мы добавили задачи наших коллекций. 938 00:53:16,295 --> 00:53:19,340 939 00:53:19,340 --> 00:53:25,670 Теперь мы спасены, и они строят Приложение, освежает. 940 00:53:25,670 --> 00:53:26,750 И давайте посмотрим. 941 00:53:26,750 --> 00:53:29,090 Теперь у нас есть некоторые задачи. 942 00:53:29,090 --> 00:53:32,630 И мы можем добавить некоторые новые задачи. 943 00:53:32,630 --> 00:53:35,840 Но если мы хотим, чтобы добавлять задачи, давайте делать это с самого приложения. 944 00:53:35,840 --> 00:53:39,660 945 00:53:39,660 --> 00:53:41,050 >> Теперь мы можем добавить некоторые данные. 946 00:53:41,050 --> 00:53:53,410 Привет, это задача. 947 00:53:53,410 --> 00:53:57,080 Кажется странным, что мы не видим каких-либо задач. 948 00:53:57,080 --> 00:54:00,290 949 00:54:00,290 --> 00:54:05,260 Мы, возможно, захотите проверить, если мы получили любой Ошибки здесь, или, может быть, где-то в другом месте. 950 00:54:05,260 --> 00:54:08,810 951 00:54:08,810 --> 00:54:20,260 Если мы идем в Admin, что кажется странным. 952 00:54:20,260 --> 00:54:24,080 Если вы тянете хранилище после этого семинара, 953 00:54:24,080 --> 00:54:27,580 Я убедитесь, что простой Todos работает с Хьюстоном. 954 00:54:27,580 --> 00:54:30,370 К сожалению, это, кажется, не работать в этот самый момент. 955 00:54:30,370 --> 00:54:34,810 956 00:54:34,810 --> 00:54:37,640 >> Есть ли другие вопросы? 957 00:54:37,640 --> 00:54:41,800 Хьюстон обычно является инструмент, который работает очень хорошо. 958 00:54:41,800 --> 00:54:44,510 Хьюстон специально немного buggier, чем другие, 959 00:54:44,510 --> 00:54:49,470 но я рекомендую его, когда он работает. 960 00:54:49,470 --> 00:54:50,080 Да. 961 00:54:50,080 --> 00:54:52,395 >> АУДИТОРИЯ: Что вы можете сделать с пакетом Facebook 962 00:54:52,395 --> 00:54:54,270 когда пользователь регистрируется в их Facebook? 963 00:54:54,270 --> 00:54:55,978 >> Роджер ZURAWICKI: После того, как пользователя войти в систему, 964 00:54:55,978 --> 00:54:59,540 Вы можете делать звонки в API Facebook. 965 00:54:59,540 --> 00:55:02,890 Многое из этого лежит, скорее, в как Facebook открывает свой API. 966 00:55:02,890 --> 00:55:05,120 Метеор, убедитесь, что вы имеют соединение. 967 00:55:05,120 --> 00:55:09,300 Но все, что после того, как идет обучения, как использовать API Facebook. 968 00:55:09,300 --> 00:55:10,216 АУДИТОРИЯ: [неразборчиво]. 969 00:55:10,216 --> 00:55:17,756 970 00:55:17,756 --> 00:55:18,880 Роджер ZURAWICKI: Хорошо. 971 00:55:18,880 --> 00:55:21,670 Спасибо вам большое за это CS50 семинар в Meteor. 972 00:55:21,670 --> 00:55:24,060 Если у вас есть какие-либо вопросы, Вы можете написать мне 973 00:55:24,060 --> 00:55:28,319 на мой адрес электронной почты Ниже перечислены семинара. 974 00:55:28,319 --> 00:55:30,110 И я буду рад ответить на ваши вопросы. 975 00:55:30,110 --> 00:55:33,020 Я также буду в CS50 Hackathon должны 976 00:55:33,020 --> 00:55:35,550 Вам нужна помощь с вашими Метеор проектов. 977 00:55:35,550 --> 00:55:37,650 Спасибо за просмотр. 978 00:55:37,650 --> 00:55:38,816