[Музике може чути] РОГЕР ЗУРАВИЦКИ: Здраво, моје име је Роџер Зуравицки, и ја ћу бити покрива ЦС50 Метеор Семинар. Метеор је нови оквир посвећена новој врсти веб, Не ПХП да подноси молбе напред-назад љубазан од веб смо видели у ПХПП сету, али динамичнији ЈаваСцрипт делови вебу. Ствари Метеор може да уради укључује Ливе Упдатинг и одмах ступи између корисника истог сајту. За овог семинара, имамо Код хостед ат ми ГитХуб. Можете да одете на овај УРЛ и преузмите. Ако знате како да користите Гит, можете клонирати спремиште. Ако не знате како се користи Гит или нису користили ГитХуб, то је потпуно у реду. Ја ћу вам показати стварно брзо како можемо ићи на ГитХуб, а ту је опција да Преузмите ЗИП тамо. Када преузмете овај директоријум, могу да се почео да свира са нашим кодом. Више информација о Метеор може се наћи на метеор.цом. У фасцикли семинара, ја стварно Имам неке пројекте Метеор можемо користити. Један од фолдера које имамо у нашој Семинар пројекта је тодос апликација. Дакле, ако одем у њу сам, имају инсталиран Метеор. Тако да га воде, само морам да куцате Метеор, а Метеор ће инсталирати. Као што видите, морамо уверите смо инсталирали Метеор. Тако да сам само ћу рун то још једном да се уверите Метеор правилно инсталиран. Док имам Метеор инсталирање, ја могу да вам покажем Неки живе демонстрације оф Метеор сајтовима иде уживо сада на интернету. Имам демонстрацију наше апликације. Можете му приступити на следећој адреси. Ово је апликација за то смо имају у нашем семинар директоријуму. УРЛ адреса за то је розу-раббит.метеор.цом. Видећете да ће заправо Метеор држите ваше Метеор пројекте за бесплатно. И на крају семинара, моћи ћете да ово урадите добро. Ово је то до лист апп. И можете да се пријавите у, створити рачуни, и додати задатке. Можете креирати налог овако. И сада, када имате налог, можете да додате задатке. На пример, један од задатака И Можда ћете морати да покупим веш. А ако сте на овом сајт онлајн, ви ћете заправо види овај задатак рачунар у реалном времену. Могу да вам покажем брзи демо ово отварањем Розу-зеца у другу картицу са истим УРЛ. И видимо да се исти подаци искрсне. Такође, можете покренути у другачији претраживач. Реци да је покренете у Сафари. На тај начин нећемо пријављени. Тако имамо исти Метеор апп, а некада се учитава, видећемо исте податке смо радили у првом. Као што видите, ја не пријављени овде. А када се подаци цхецкс публике, ажурира на свим бровсерима истовремено. Ово је један од заиста цоол карактеристике о Метеор. Скоро без посла, ви имају живу ажурирања апликацију да промене на свим ваши уређаји одједном. Ако сам чекирајте овде у мојој То до лист, имаћемо, у мојој другој Цхроме, ставка цхецкед искључен. И ово се дешава тренутно. У реду. Тако то изгледа Метеор Инсталација је спремна сада. Тако да сада идемо назад у тодос апликација и покрените ово локално. Ако имате Метеор пројекат, можете Само га воде са командном Метеор. Када то урадите, Метеор ће учинити неке припреме да се уверите све Ваш код је под контролом. И онда ћу вам рећи да Пројекат је спреман да се служи. Можда ћете морати да омогући ваш фиревалл, ако ваша вас компјутерских блокова. Па шта Метеор ми говори сада је то у овом сајту Локална да мом компјутеру, видим шта је ово Метеор пројекат. Имајте на уму да сада, мој апликација је није доступна на интернет. Ми ћемо покрити како да понесете Метеор Апликација на вебу мало касније. Тако да сам само ћу да копирате ово УРЛ адреса сад и иди у Гоогле Цхроме. А ово је да уради список од примера. Можете видети да спроводе неколико више функција овде. Имамо различите језичке, ми имају исте карактеристике налога, а можемо додати нове листе. Сада, један од заиста Цоол опција о Метеор је да не само да ово раде на својој веб бровсер, али такође можете креирати Нативе иПхоне и Андроид апликације кроз инструмент који се зове ПхонеГап. Тако неки пројекти ће доћи преконфигурисан за трчање на иОС, овако тодос апп. Тако да све што треба да урадите да га покренете у иОС се укуцајте Метеор, покренете, а затим иОС. А када то урадим, Метеор ће припремити поново пакет. А онда, када је спреман, то ће учитати иОС симулатор на моју команду. Напомена можете покренути само иОС апликације Ако имате Мац рачунар. Можете да покренете апликације на Андроид на свим платформама. Тако да сада можете видети да је мој иПхоне Симулатор је искрсло на екрану. И за тренутак, то ће учитати са апликацијом. Ако успијемо да само мало мањи да стане на екрану, видимо имамо иПхоне апликација. И само да ми не радимо збунити, хајде да Сигуран смо на исти сајт, локални домаћин 3000. Дакле овде је пример у Метеор апликације које имам, тодос апликација, ради и на телефон и на веб бровсер. И када сам променити ствари у веб бровсер, она одмах иде на телефон. И ја могу брисати нешто на телефону, и она мења у веб бровсер. Сада, нормално да створи мајчин телефон апликација за иОС или Андроид, морате да знате или Јава или Циљ Ц. технологија Метеор користи да дозволи ЈаваСцрипт да би као ваша апликација буде позван ПхонеГап. Шта је апликација у суштини је је веб претраживач. И Метеор ручке све Незгодна делови укључени за довођење тог веб претраживач на ваш иПхоне или Андроид уређај. Можете видети да кориснички интерфејс је глатка, и њен изглед и осећај веома слично као матерњи апп. Приметити да ако одем у дом Сада екран, ја такође добити икону. Ово није сајт као да ћеш наћи у Сафари. Ово је за себе цца. Можете инсталирати и делете ит ако желите. Ми можемо укратко да вам покажем шта код за ову врсту тодос цца изгледа. Ако погледате у фолдеру тодос, видећете има много фолдери. Али током семинара, ми ћемо разумеју шта свака именик се користи за. Идемо у терминал па смо можете видети фајлове мало боље. Идем да притиснете Цонтрол Ц да зауставе сервер, а сад сам се вратио у апликацији тодос. Имам различите фолдере овде, као фасцикла клијент, фасцикла сервера. А ови фолдери једноставно значи да све у фолдеру клијента бива погубљен на својој веб бровсер. Све у фолдеру сервер бива погубљен на серверу. Оно што желим да истакнем оут је да је оно што смо имали када смо имали наш телефонски упаљен и наш веб претраживач, то су били клијенти. Али оно што се ради у терминала, то је сервер. Имамо друге фасцикле, као либ, која је библиотека код, као твоја помагач функције, којима можете користити на клијента и сервера. И онда имате јавна папка и ресурси фасцикла неопходно за добијање ваше слике и друге ЦСС лоадед. Ако имате инсталиран Метеор, хоћемо наставити са туторијала за Метеор. Можете ићи на ову УРЛ, метеор.цом/инсталл, да се командна линија коју сам Показали сте да инсталира Метеор. Ми ћемо проћи кроз први Неколико корака да се боље мислите о томе како да инсталирате Метеор. Али прво, мислим да је важно да смо прегледали мало ЈаваСцрипт. Да вам покажем неке примере како наша Ц знање може превести да ЈаваСцрипт, имам створено неколико примера. Они су у јс директоријуму. Дакле, ако у фолдеру семинари вас види, тамо је фасцикла зове јс. И овде, имамо неколико примера. Хајде да отворимо први Пример и види веома брзо. Оно што видимо је стандардна Хелло Ворлд команду. Ти приметити у Ц да вас имају прилично неколико редова. И као ЦС50 студенти знају, треба нам основну функцију, и морамо укључити стандард И / О библиотека како би позвали принтф. Хајде да погледамо како ЈаваСкрипт да пореди. Идем да отворим ек1.јс. Декоментиране је шта је Ц код би изгледати, и линија испод је све морате да покренете у чвором. Не треба основну функцију, те не морају да укључују све датотеке, и не треба да се врате. Само позовите цонсоле.лог. Ово је еквивалентно вашег принтф. И то траје исто аргументи принтф би. И како да га воде, уместо да ради да ЕКС1, само ви назвали Чвор ек1.јс. Пишеш Ноде и онда фајл, и она ће бити покренути. То не се саставио. ЈаваСцрипт је тумачи језик. Тако да не треба да буде састављен пре него што се ради. Да сам хтео да тече ек1.ц, Морам да га направи прво, и онда ја могу покренути извршни да се исти излаз. Хајде да брзо покривају неке други концепти. ЈаваСцрипт Погледајмо пример два. У ек2.јс, у ек2.ц, можемо видим да имамо неку шифру. Пусти ме брзо доћи до боље текст едитор да ће показати ово нове линије мало боље. У реду. Овде имамо пример 2.ц. Овде имамо различите типове да смо одштампа. И као што знамо, иф узима различити одсто аргументи за приступ различите делове података. Ако желимо да одштампате стринг, зовемо% с. Ако желимо да зовемо плутајући Тачка број, позвали смо% ф. И ту постоји једноставан начин да позовете Боолеан његовим правим или лажним вредности. Али ако користите% д, можете добити 0 или 1 за лажне и истина. ЈаваСцрипт је љубазнији за нас. У ЈаваСцрипт, хајде да погледамо мало разлике имамо у овом фајлу. Прво, приметите да смо у Ц треба да инитиализе сваку променљиву са типом. С је Чар звезда. То је стринг, и то не може бити друга врста. Н је флоат. Б је Боол. Али у ЈаваСцрипт, постоје динамичне врсте. То значи да ви не урадите треба да кажем ЈаваСцрипт које врсте ће ваши променљиве бити. Само реци вар за променљиву, име варијабле, а затим вредност. Дакле вар може бити стварно било шта. То може бити ниска. То може бити флоатинг поинт број. То може бити знак. То може бити Боолеан. И конзола дневник функционише мало другачије. Ако желите да одштампате број, зовете% д. Али већина вредности могу бити штампана као жица само фине. Хајде да покренете ово у чвором да видимо шта ће се десити. Ја могу назвати Чвор ек2.јс, а ми принтф добити са вредностима ЦС50, Н као флоатинг поинт број, а потом Б као Боолеан претвара у стринг тачно. Шта би било да смо направили пример 2.Ц? Па, још увек имамо неке више анноианцес са принтф. Обратите пажњу на то флоатинг поинт број мора бити правилно форматиран, и да не могу просто Булова бити приказано као тачно или нетачно. У реду. Сада погледајмо пример три. У примеру три, ми показујемо како би користили за петљу. У ствари, то је врло једноставно. Једна од лепих ствари о ЈаваСцрипт је да се заснива Ц. То значи да је много ваш Код ће изгледати врло слично и осећају веома слична. У фор петљи, једина ствар а што је заиста овде променило је уместо инт и, имамо вар и. Ми још увек га можете доделити ценимо нула, проверите да је мање од пет, и повећавати га по један са оператером ++. Ми позивамо цонсоле.лог на и, и то ће нам одштампати низ свакој линији. Хајде да пробамо стварно брзо да видим о чему се излази. Добијамо нови број у свакој линији. Још једна ствар коју желим те приметити са цонсоле.лог је ниси морао да пишем косих н за нову линију. Цонсоле.лог ће одштампати све у сопственој линији. То је лепо карактеристика да нас ЈаваСцрипт даје. Сада ћемо отворити пример четири. У примеру четири, први у Ц, позивамо неколико функција. Обратите пажњу да морамо да прогласи Функције пре него што их користимо у главни. Ако смо имали основни прво и затим додати и онда висока, да, цланг, или ГЦЦ би дај нам грешку рекавши да не зна шта је висока. Он не зна шта је додатак. Дакле, у Ц, мораш бити избирљив о поредак у коме зовете функције. Хајде да погледамо како можете ово у ЈаваСцрипт. Имамо различите фајлове, јер тамо неколико различитих начина да то урадите. Један од начина је прилично директан превод. Јер функција у Ц ретурн типови, и ЈаваСцрипт не знам или нега о ком типу се вратите, не написати тип. Уместо тога, само треба написати функцију, и све је прилично углавном исти као и пре. Када имате променљиву, као у адд, само треба да напише к и и. Ми не треба да кажем је к инт. Ми не треба да кажем је и инт. Враћамо са истим синтаксе. За висока, ми га прогласити са функционишу уместо неважеће. Приметите да ли то је празнина или не воид, ипак је све иста функција. И ми једноставно не стави ништа у загради, и то веома личи на Ц код. А испод, можемо га назвати испод. Ако погледамо пример 4б, примећујемо да сам променио неколико ствари. Једино што сам променио стварно иако је наредба. Имамо исти функције, али сада су проглашен након они користе у цонсоле.лог и високо на линијама 18, 19. Ако ово урадите у Ц, да би бацити грешку. Ево, ово ради сасвим добро. И ја могу да покажем ово вам је цаллинг Ноде на пример 4б. Други начин можемо назвати функције је снимањем функције као променљиве. Као што сам рекао, променљива могу имати било који тип. Један од типова варијабла може имати је функција. Дакле, ако се осврнемо на пример 4ц, оно што сам променио Овде је вар додати уместо функције додатка. А сада додајте једнака функцију. Ова функција овде је анонимна. Она нема име, па то је само функцију, а потом су заграде. Синтакса после тога не мења, али ти мораш имати на уму да имате променљиву да сте складиштење функцију у додатку, и променљива да си чување у Високо. Јер адд а висока су сада варијабле а не функције, нешто мења. Ово је уобичајена грешка видим у много Јавасцриптс људи, и нешто треба имати на уму. Када сам покренути ово, хајде да видимо шта ће се десити. Добијам грешку. То говори недефинисан у овом тренутку. Тако да то говори не знам шта додати је. Јер сада додате није функција, додајте је променљива. И нисте стварно дао додати вредност ипак кад га користили. То нас доводи до Пример 4д, где ако желите да користите променљиве као функција, само треба да се уверите да добили вредност пре него што сте навикли. Хајде да пређемо на пример пет онда. Овде говоримо о Структуре у Ц. У Ц, Структуре Имам ову фиксну структуру на њих јер морате да их прогласи пре него што га користите, и кажете Имам студента, и сваки студент има тачно једно име, годину дана, један род. Она мора да има све њих. Не може имати никакве друге вредности, и морају бити специфичне врсте. Онда смо могу да иницирају и струцт у овом лепом синтакси јер зна редослед. Тако да зна да је Роџер име. То зна да је 2016 године и М је родна јер ми је рекао да ово Листа је структура ученик. А онда можете да одштампате она, приступа с.наме. Да видимо како ћемо цонверт то ЈаваСцрипт. Приметимо да је сада с променљива, а нема тип. То је опет само вар. Зато што нема везе ако врста ове променљиве је показивач, то је струцт, или било шта друго. Имамо мало другачији синтаксу. Ово је синтакса објекат синтакса. Можда сте га видели у ЈСОН. ЈСОН заправо означава ЈаваСцрипт Објецт Нотатион. Овако се дефинисати објекти у ЈаваСцрипт. Имамо кључ, који је вредност, као име. И дајемо то вредности на Друга страна дебелог црева. И једна ствар коју треба имати на уму те је не треба да има име, а годину и пол за објекат. Објекат може имати никакве вредности. То може имати колико желите. Можемо користити ове објекте у само Исто тако бисмо користили градитеља, с.наме. Можемо га покренете стварно брзо радећи чвора пример 5.ц. Ми не можемо заправо покренути датотеку у Ц чвором. Он не зна шта је Ц. То само зна ЈаваСцрипт. Када смо покрените ек5.јс, добијамо вредност, коју смо очекивали. Хајде да пређемо на примеру шест. Ево ја само желим мало да разговарамо нешто више о ЈаваСцрипт низова јер су помало разликује од онога што си некада у Ц низови су означени, Не са заградама као у Ц, са заграда, али заградама. Можете имати празан низ, као арр у складу четири. Можете имати матрице са више вредности. А ти им приступите Само на исти начин у Ц. До линија седам, свему Изгледа прилично јасно. Једна мала разлика је овде на линији 10. Начин на који добијете дужину низ је само позивом .ленгтх. Низ заправо може бити третирају као објекат, а овај објекат има дужину имовину да позовете да добијете дужину њега. Обратите пажњу да је ово другачије у Ц, јер у Ц сте морају да знају дужину Ваш циљ пре времена. Дакле још једна лепа ствар у вези низова је да можете имати различите врсте. Ако имате низ у Ц, тамо су низови специфичног вредности, или струцт показивач или лебди или [неразумљиво]. Овде, можете имати различите вредности. Први пут сам имао флоатинг поинт број, онда Булова, па још један цео број. И заиста, они могу променити превише врсте. Погледајте линији 16. Арраи две мења од тога да број, цео број, у стринг. Још једна лепа ствар у вези низова је овде на линији 19, они имају бескрајну величину. Само могу да кажем да желим стоти елеменат да буде ниска легално. И ово не изгледа да се направи Осећај јер низ једини има простор за три елемента, тако би требало да буде крај два. Али када то урадите, хајде види шта низ три постаје. Ми би покренути ово брзо са пример чвор сик.јс. Ми ово заиста дуго арраи, и шта се дешава је имамо првих неколико елемената а онда гомила празних док не добијемо наш низ. ЈаваСцрипт попуњава Арраи како је потребно. Хајде да коначно иде у нашем последњем примеру. Овде имамо списак од различитих ученика. Желим мало да разговарамо мало о неким лепим аспектима од петље за ЈаваСцрипт у. У Ц, за петљи су некако ограничен. Они имају фиксну структуру, где ти имају променљиву, имате стање, а онда радите нешто на крају петље. И наравно то ради у ЈаваСцрипт, као што смо видели у претходним примерима. Али имамо и лепше начине да се то уради у ЈаваСцрипт. Ово се зове фореацх петље. Извини, хајде да се вратимо примеру седам овде. Такође можемо рећи секција је листа. Зато ми дај свако и или свака индекс у тој листи. Онда можемо добити студента од само позивом одељка и. Дакле, све кодекса подешавање И једнака нули и да осигурам да је мање од дужине и додавање једног до И сваки пут, то је брине о теби, а лепо са овом фореацх петље. Не само да фореацх петље раде у листама или низове, они такође раде у објектима, који је такође лепо. Можете добити име свака имовина од само узимање рјечник или објекат, као студент, и онда само кажем да ми сваки кључ. Кључни би ово својства, име или кућа. Па шта ће се десити овде је то штампамо прво име а затим кућа сваког студента. Ја могу покренути ово у чвором стварно брзо да вам покажем. Прво смо добили Ц стил за петље, где добијамо сваки објекат који се штампају. И онда имамо ЈаваСцрипт стил, где можеш само одштампати сваки тастер и вреднују појединачно. У реду. Сада када смо покривени Ноде.јс, мислим ми смо спремни да почнемо са Метеор. Као што сам рекао, Метеор је урадио одличан посао писања неких готова примере за вас који можете да истражујете кроз ово туторијал или у фолдеру семинар. Али овде желим да старт више од нуле. Хајде да направите једноставан да уради апликацију. Ово је врста базе шта да радим апликацију сам ти показао раније је. У овом упутству, ви видећете да постоји команда Метеор стварају се креирали нови пројекат Метеор. Морате да зовем ово како покренути Метеор пројекте јер је ће покренути команде да створи Метеор филес потребно за ваш пројекат. Ако одете у терминал, можемо иди у фолдер који се зове први корак. И корак један ће одговарати Први корак у упутству. Обавештење постоје фолдери, корак један, други корак, све до пет. И сваки од њих је одговарајући на корак у овом упутству. Идем да га отворим Овде мом текст едитору тако да можемо видети мало шта је направљен. Примећујемо да постоји су четири главна дела. Постоји Метеор директоријум, .метеор. И то ти обично не треба дирати. Метеор брине о да папка, и то само чини се да ваше Пројекат ће исправно радити. Такође имамо три фајла, ХТМЛ датотека, ЈаваСцрипт фајл, и ЦСС фајл. Хајде да прво почети са ХТМЛ датотеку. На први поглед, ово изгледа као нормална ХТМЛ документа. Али приметите да постоје неколико разлика. Један, ово није заправо комплетан ХТМЛ документ. Недостају нам ХТМЛ тагове. То је нормално. У Метеор, ви не очекује да створи ове ХТМЛ ознаке. То је урадио за тебе. Желиш да бегин-- ако вас желите да направите сајт, само треба да почне са главе таг, дефинишу, а онда дефинишу тело ознаку. Али ако приметите у ово ХТМЛ фајл, имамо нову ознаку. Имамо темплате ознаку. Ово није нормално ХТМЛ. Ово је посебна верзија ХТМЛ да Метеор чини вам доступне. То се зове свемирске барове. Можете дефинисати шаблоне као мало модули, врста попут помоћних функција, у вашем Ц или ЈаваСцрипт кода. Овај шаблон би имам име по имену задатак. И можете видети овде на линији 13 да можете позвати те шаблоне. А шта ће урадити Метеор је само попуните ове задатке за вас. Још једна ствар коју можете приметити је мало другачије је ово свака функција. Сваки ће променљиву задаци и некако проћи кроз њега у том фореацх петље ве видела у примеру седам. Ово свака може да речник или листа, објекат или листа, и само ће проћи кроз све Вредности лике а фореацх петље би. Дакле, ако имамо гомилу задатака, ово ће позвати шаблон на сваки задатак. Хајде да руководим пројектом Метеор Само да видим да се то догоди. Ја водим Метеор пројекат са Само Метеор или Метеор покренути. А сада Метеор само ће требати да брзо припремити пројекат, старт базе података по потреби, а затим поставите апликацију локално. Можемо отићи на нашу веб бровсер сада. Па ћемо видети да смо имају врло једноставан апликацију. Па шта смо видели појавили заправо корак један, корак један фајл. Хајде да пређемо на два само зато корак Мислим да ће служити истој сврси. Само ћу да се промени на корак два директоријум и покрените Метеор поново да видимо шаблон смо управо радили са. Да, питање? ПУБЛИКА: Ако добијамо дозволе демантовао, је то-- шта је то позвао на то? РОГЕР ЗУРАВИЦКИ: Ако да сте покренули Метеор рун, и имате дозволу демантовао, неки од ваших фајлова можда имате праву дозволу сет. Дакле, морате да проверите где дозволе су искључени. Они могу бити искључен у Ваш пројекат Метеор, или су могли да буду офф у Метеор себе филес. ПУБЛИКА: Ако га преузети управо сада из вашег ГитХуб, онда шта да радим [Неразумљиво]? РОГЕР ЗУРАВИЦКИ: Ако желите да будете сигурни да могу да јој приступе, постоји команда можете покренути. Пусти ме брзо пишу ит оут тако други људи могу да виде. Идем да отворите нову картицу овде и иди у мој семинар фолдер. Цхмод је команда да промените дозволе, а ви можете рећи р за то рекурсивно за сваки фајл. И дозволе, можете пробати 0755 да проверите да ли имате пун приступ, и сви остали могу прочитати. И ако само покренути ова команда, то ће бити Сигуран дозволе су у проверите за целу директоријум. Руннинг лс-Могу вам показати Дозволе детаљније. Ово изгледа ОК. Шта је најважније је да ли има све три рвк за све датотеке у Семинар директоријум. Да ли је то решити проблем? ПУБЛИКА: Каже недостаје оперант [неразумљиво]. [Неразумљиво] РОГЕР ЗУРАВИЦКИ: Ти морају да се уверим да имају тачку на крају вашом командом. ПУБЛИКА: [неразумљиво]. РОГЕР ЗУРАВИЦКИ: У реду. Хајде да брзо вратимо на локална домаћин, апликација имамо. И видећете да имамо Неколико задаци овде, како се очекивало. Имамо гомилу ЦСС, који не морате да бринете о. Метеор туториал само даје ово за вас Да бисте своје да уради попис изгледати љубазнији него обичан ХТМЛ. И имамо ЈаваСцрипт фајл који Идем у детаље касније, али само пружа ове задатке. Ово је задатак један. Ово је задатак два. Ово је задатак три. Дакле, ово је податке Метеор постаје. Једна од цоол ствари о Метеор је да промене могу десити аутоматски. Да сам хтео да се промени назив првог задатка, тако да бих рекао да ово није Задатак један, а ја га спасити, онда кад одем на вебу прегледач, можете га освежити, и аутоматски пише то није задатак један. Можете урадити исту ствар у било којој од ових фајлова. Направите промену, уместо да радим Листа, ја ћу морати то да уради мој списак. И једна ствар коју сам приметио, да нисам ни да освежите. Идеја је добра освежење од решен за вас са Метеор. Кад год открије промене датотека, то ће учитати промене за тебе. Ово ради на свим фајловима, без обзира да ли то је ХТМЛ, ЦСС, ЈаваСцрипт или. Да вам покажем шта ова апликација ће изгледати као без ЦСС, ја могу све уклонити. А када се то релоадед, сада имате не као згодан то до лист. Ставимо тај садржај натраг. И сигурно довољно, то освежава, а наша је ЦСС вратио. Велики. Ми сада можемо наставити даље са туторијала. Хајде да причамо о кораку два, шаблоне. То је оно што смо управо видели са различитим задацима. Метеор ће објаснити шта шаблони и како ова логика функционише. Али хајде да погледамо код на видимо можемо ли смисла од тога. У веома једноставне апликације, Као што имамо у једноставна да уради, корак један, корак два, корак три, четири корака, корак пет, немамо никакве фолдере. Ми немамо сервер фасцикла сам поменуо. Немамо клијента фасцикла која се помиње. Тако Метеор ће покренути све фајлове. То ће га како ради на клијент, како на серверу. А ако желите делове вашег ЈаваСцрипт Код покренути само на клијенту, они треба да се уверите да имате ако изјави, нешто као што имамо у нашој ЈаваСцрипт фајлу овде. Дакле Метеор, само ако то је клијент, онда сам Желим да се дефинише шаблон помоћне називају задаци. Шта ово код стварно Да ли је то казе да објекат под називом шаблон да Метеор пружа. И ми ћемо додати помоћника. Помагачи су ови задаци, ове ствари попут задатака. Видећете да ако се вратимо на ХТМЛ фајл, позвали смо сваки на задацима. Задаци није дефинисан у ХТМЛ. То је дефинисано у ЈаваСцрипт. И Метеор мора да зна шта је задаци кад одемо у ЈаваСцрипт овде. Задаци је ово помоћник. Помагач, можете мислити о то као шаблону променљиву. И шта задаци радим? Па, она враћа листу вредности. Зато што је листа, можемо назвати сваки на њему. Зато позивамо једни на задацима. И сада имамо задатак. Шта задатак уради? Па, има ту стрелу Овде после великих заграда. То значи задатак је шаблон. Није помагач, Као што смо управо видели. То је шаблон смо дефинисан. И где су ми то дефинисано? Ми смо га у наставку дефинисано овде. Све ово темплате доес ис рендер ставка листе, а то зове текст. Сада, текст изгледа помагач, али ја ћу вам показати да се заправо увек члан података задатака. Када позовете сваки, иде у Структура података мало. Као и фореацх петље, сада само изгледа на првог елемента у нашој објекту. Видимо да је текст дефинисано овде у нашем објекту. Дакле Метеор је паметан да зна да говоримо о овом тексту, Не помагач звао текст. Постаје све вредности овог Текст овде и приказује га као ХТМЛ, и тако података иде од ЈаваСкрипт да бисте је ХТМЛ. Мовинг он мада, у овом примеру ми фиксирана те вредности. Метеор не два стварно лепе ствари за нас. Поред живог освежење које смо показала, такође управља нашу базу података. Ако сте морали да радите са ПХП, морали сте да конфигуришете пхпМиАдмин. Морали сте да се уверите ваш столови су сви под контролом. Морао си да уради много посла да би Сигуран ваши подаци су правилно форматиран, и ПХП могао да комуницира са њим. Сада, Метеор користи нову парадигму. Ово је још модеран начин од руковања базу података. То је технологија зове МонгоДБ. Баш као у ЈаваСцрипт, видели смо да њега није важно шта врсте подаци имали. Све је било вар. То није био цхарстар. То није био инт. То није био Струцт. То је био само вар ово, вар то. МонгоДБ радови врсту исти начин. Не морате да дефинишете табеле. Не морате да кажем сто има име, што има инт. Има, ја не знам, долар, који је децимала. То су само ови објекти ЈаваСцрипт, сви ови Варс, у суштини. А ово је заиста моћан начин да прототип апликацију. И зато Метеор користи предности ове. Ако одемо на корак три, хајде да видимо шта се променило. Ако погледамо тодос ХТМЛ, не много. ЦСС није променио уопште. Али мала промена видимо у ХТМЛ је што смо променили начин се задаци дефинисан. Задаци је сада функција. То значи да је сваки Време желимо да се задатака, ћемо покренути ову функцију. То не врати функционишу као вредност. Метеор је паметан да заправо ради Функција да видимо шта ћемо изаћи. И то враћа ову ствар се зове задаци. Ми смо дефинисани задаци на линији један, и то је Монго колекција. Монго се односи на база података Метеор користи, и овај нови само значи хајде да нова колекција, користио термин задатке. У МиСКЛ, то би било еквивалентно потрази за задатке стола под називом. Монго има колекције, а не столови. Дакле, ово само тражи задатке. Сада, шаблон у нашој помагач у шаблону, све морамо да урадимо да би све задаци се ова функција, финд и ово празна браће. Ово је још посебно да Монго синтакси. Има довољно документација онлајн колико можете направити ефикасан и стварно корисно Монго упита. Али нешто овако је добро Довољно за само проналажење све податке. Сада, једно од питања можете видети је да ми никада заправо додати податке. Шта се дешава када смо стварно извршили три корака? Хајде да брзо ићи у трећи корак и покрените Метеор. Обратите пажњу да сам имао још једну Метеор Пројекат покренут негде другде, тако Метеор не допада. Само ћу да брзо близу друга Метеор са Цонтрол Ц, иди у три корака, и покрените Метеор поново. Обратите пажњу да почиње МонгоДБ јер МонгоДБ је део сваког Метеор пројекта. Тако пише моја пријава има грешака. То је лепа могућност Метеор има. То осигурава да ХТМЛ је добро потврђена. Хајде да брзо погледамо зашто је то. Изгледа сам случајно имам копирао погрешан ХТМЛ код. Ако сам га спасити сада, Метеор аутоматски рестартује сервер, а сада апликација ради како је очекивано. Обратите пажњу да поправим ово, можете само да покренете Исти ХТМЛ фајл из корака два, да га копирате у три корака. Можемо се вратити у нашој локалној домаћина. И сада видимо имамо наш то до лист. Велики, али је празна. Ми у ствари не имати било задаци у нашој бази података. Монго Па хајде да причамо о Неколико начина можемо да урадимо то. Ако се вратимо на терминал, ми може га затворити и покренути Метеор Монго. Ако сте упознати развојем ситуације Метеор функционише, ово заправо вам омогућава приступ до пуног МонгоДБ за Метеор. Обратите пажњу да морате да се ради Метеор први за то да раде. Дакле, ако сам покренути ово у новој картици, ја може вратити у исти директоријум. И сада Метеор ради сасвим добро. Ово је брз. Дозволите ми да се мало већи тако да можемо да видимо. Ово изгледа мало другачије него оно што би се могло користити за тебе стварно не треба да користе Монго. Поента мене овде је тако да можете користити ЈаваСцрипт. Али ако сте радознали, Монго АПИ не користите СКЛ, на Струцтуред Куери Лангуаге. Он користи свој језик који личи на ЈаваСцрипт. Врло брзо, можемо наћи вожње путем дб.таскс. И то ми говори Испада ако останемо нађемо, некако слично ономе што смо имали са Метеор, можемо учитати све елементе. Проблем је, ми не радимо заправо имају било какве послове утврђене. Тако да не могу да их добити. Ми можемо инсерт, ипак. Тако можемо покренути уметак са командном улошком. А ми само дају објекат, а ми само уверите формату је оно што ми очекујемо. Ако смо гледали други корак, видели смо да сваки задатак био објекат са текстом као кључ и како год Ваш треба урадити ставка је као променљива. Тако можемо да урадимо нешто овде. Можемо имати га убаците задатак Звао сам дошао из Монго. А ми притисните Ентер, и то ради. Можемо покренути наћи поново, и ми види да постоји објекат овде. Монго му додељује личну карту, која вас стварно не треба да бринете. Оно што је важно за вас је података који улажете, је податке изађеш. Вратимо се нашем сајту, и хеј, наш задатак лоадед. И можете да видите да јер Метеор је веома паметан и увек освежава за вас, ја није морао да додирује страницу. То аутоматски лоадед. Хајде да покренете неку шифру у ЈаваСцрипт иако за то. Као да имамо Ноде у леђа енд да изврши ван ЈаваСцрипт, можемо покренути ЈаваСцрипт директно у нашим претраживачима. То можете урадити по неком функцијом Проверите зове Елемент. Ако сам десни клик на одељку странице, постоји опција Проверите зове Елемент. Ако користите прегледник попут Сафари, иоу Можда ћете морати да омогућите свој девелопер алати пре него што добијете ову функцију. Оно што ме интересује је конзола. Тако да само иде у Конзола на дну. Сада можемо да покренете неку ЈаваСцрипт Овде, као и ЈаваСцрипт датотеке сам показао у јс примеру. Али сада хајде да погледамо задатке. Можемо покренути нашу команду. И надам се да ћу бити у стању да то мало већи, тако да сви можемо видети. Ако налетимо таскс.финд, и ви ћете види да је ово потпуно исти број да ЈаваСцрипт употреба фајлова у три корака, ово таск.финд. Можемо покренути исту ствар, и Сада смо мало чудне ствари. Како смо заправо добили податке? Па, морамо покренути ово команда под именом фетцх. Ово је веома корисно за отклањање грешака. Шта добијате овде је курсор, а то је леп начин Метеор има оптимизована привлачан подаци. Ово курсор има све карактеристике за уживо ажурирање и освежите страницу када се нешто променило. Али неће нам донети податке. Можемо добити податке преко донеси. И видите имамо објекат, и то је баш као што смо имали у Монго, са личном картом и текста смо у пут. Па како да укључивање објеката у Метеор? Па, ми имамо само задатке. А онда можемо покренути Исто уметак команда, давање речник или објекат са истом формату, текста а онда сам дошао из конзоле. Погледајте изнад јер кад сам ово, оно се појављује на сајту аутоматски. Обратите пажњу да можете да ставите било шта желите у овим предметима. Не мора да имају фиксну структуру. Могао сам једнак број три и б једнака лажна. И то сви радови. Ја чак могу одлучити да не укључују текст уопште. Ово је једноставно није препоручљиво мада јер тада Метеор неће знати шта ће се приказивати. Али у сваком случају, ми ли идентитет, и то је ИД објекта можете користити. Као што смо наставили са Четврти корак и корак пет, туторијал ће вам показати начине да можете креирати УИ елементе користећи ХТМЛ знате да стварају различите задатке. Погледајмо четири корака стварно брзо. Видећемо да смо додао секција о догађајима. Шаблони могу имати помагачи, који нам пренос података. Али, то може назвати догађаје. И ту ствар постаје корисна, јер догађаје се шта деси када кликнете на различите ствари на твом сајту. Ево, наш код је говорио да додате овај догађај. Додајте га када сте послали нешто са новим задатком класе. Оно што овде имамо јесте селектор ЦСС. Дакле, ово само тражи ХТМЛ елемент који има нови задатак класе. И изгледа за догађај, као поднесе. Остали догађаји укључују клик, ховер, дупли клик, слично ономе што сте добили у нормалној ХТМЛ. Шта ти је дати овде је сада функција. И можете имати ваш код у тој функцији. Ова функција је оно завршава геттинг звала када проследите овај нови задатак. Хајде да погледамо ХТМЛ управо тако смо разумем шта овај нови задатак је. Додали смо форму овде са класе нови задатак. И то има улаз који узима текст. И ово је место где смо ће додати наше нове задатке. Хајде да покренете четири корак у сајт да видим како изгледа. Ми можемо одустати први кревет у МонгоДБ смо имали Из досадашњег Пример са Цонтрол Ц. И хајде да га промените у корак четири директоријум. Ми ћемо поново покренути Метеор за почетак сервер. И нажалост, имао сам Метеор трчање у другом терминалу. Тако да сам само ћу уверите ово затворено. Хајде да отказ ово и промену да део четири, четири корак. У реду. Сада наша Метеор код ради. И можете да видите да је ажуриран, без нас чак и да освежите страницу. Оно се није променило је сада да немамо никакве задатке, али имамо форму овде, ово оквир за текст, да додате наше нове задатке. И можемо уписати наш задатак овде. Долазим из ХТМЛ странице. Када притиснем Ентер, мене је поднела. Можемо да видимо шта се догодило као дефинисан ЈаваСцрипт кода. Шта ова функција урадио је узети текст из форме, а онда је управо звао таскс.инсерт, као што смо урадили у конзоли. Они такође одлучио да додате датум цреатедАт. Овако ти би одредите тренутно време. Након тога, она брише форму тако што Сигуран вредност је празан стринг. А онда се позива ретурн фалсе да уверите ништа друго деси. Када сте ретурн фалсе из облик догађај, који зауставља извршење. Саи форма има акцију, као подвргне ПХП страницу. Ако не се вратили лажно, ти би се вратили истина. То би завршити израду тај захтев. Лажни ИТ пресреће и зауставља га тамо. То је био један мали демо о како Метеор ради, и имамо пратио туторијала за неко време. И можете будите слободно да наставе то уради. Има доста ресурса, и туторијал је заправо само Веома добро о објашњавајући шта се дешава. Ја желим да вам покажем сада, у су неколико минута нам је остало, шта су неки од цоолер карактеристике Метеор, и шта су неки од више корисних пакети. Једна од великих ствари код Метеор је да имате систем пакета. Можете лако да уграде код да хиљаде програмере су широм света написао у ваш пројекат Метеор. Један пример за то је оно што би могао урадити у кораку девет од туторијала, где Ви покушавате да додате налоге на ваш пројекат Метеор. Ако имамо ЦС50 ПХП Пројекат, имали бисмо да се ослони на оквиру или наш код да сигуран да безбедно руковање лозинке и корисничка имена и складиштења базе података и све то. Испада Метеор има неке пакети да то уради за вас, и да то уради веома лако. Оно што можемо да урадимо је додати неколико пакета. Па хајде да урадимо то право Сада у нашој конзоли. Идем да напусти пројекат и одмах иду у једноставном-тодос. Сада, једноставно-тодос је пројекат који вас ће имати након што је урађено са степ 11 или 12 корака, на крају овог упутства. И хајде да погледамо то брзо видјети која различита карактеристике које имамо. Хајде да проверите да ли је покренут. Понекад је потребно мало времена да освежите, али овде је то. Ми имамо опцију да кријем комплетни задаци, а ми да се пријавите. И то је учињено са Метеор пакет. То је сјајно. Сада смо усернаме и лозинку знак у. Али шта ако смо хтели да додамо Друга врста механизма за пријављивање? Рецимо ја хтео да се пријавите у са мојим Метеор налогу. Идем да тече метеора додатак, и то је синтакса за додавање пакете. Могу да кажем рачуне и аццоунтс.метеор. То ће сада наћи пакет и да га утовари. Можете видети да нисам нашли право име пакета. Па како сте сазнали за пакете? Па постоји велика сајт, маде доступно од метеора људи, звао атмоспхерејс.цом. Атмоспхерејс, једна реч, тачка цом, је велика спремишта за проналажење сав Метеор пакети у спремиште. Ја могу потражити рачуне, а затим то ће ми показати све релевантне ствари, све пакете са именом налога. Док то учитава, можемо покушати додајући неке друге пакете. Можда Метеор пакет не ради сада, али ја могу додати Фацебоок. Ја могу додати налог, а затим руководим пројектом Метеор поново. Када се то почне, хајде да видимо шта се променило на сајту. Као што видиш ја могао да га освежите овде. Имам дугме на конфигуришете Фацебоок пријаву. И овде, имам све инструкције Метеор је за вас припремио за постављање Фацебоок апликацију. А можете користити да информације да додате своје личне карте. Када то урадимо, имаћеш Фацебоок пријављивање ради у апликацију. Само ћу добити апликација ИД и тајна, Само да вам покажем како то може радити. Мораћете Фацебоок налог користити Фацебоок опције програмера. Дозволите ми да брзо пронађете Метеор тастере који су неопходни. Имам још један пројекат Метеор да ћу користити, и само ћу узети кључеви из тог фајла. И једном сам га наћи, само ћу моћи да копирате ове тастере у мој Фацебоок. Дакле овде је кључна. А ово је тајна. Не би требало да буде дељење ово са људима. И онда му дати своју тајну апп. А ово је тако на Фацебоок зна ли си ти. А ти сачувате конфигурацију. Мислим да у том процесу престали мој Метеор апликацију. Тако да сам само желите да се сигуран да је још увек тамо. ОК, хајде да проверите да ли наш Метеор сервер ради тако веб страница ради. Обратите пажњу ако зауставимо Метеор сервера, страница је још увек тамо. То се једноставно неће више ажурирати. Метеор сервер је потребно за пазећи страница је уживо. Ок, ја сам то поднела, и сада Могу да се пријавите с Фацебоок. Сада је само питање има Фацебоок поп уп и стављање у вашем рачуну информације и сјеча у. Када то урадите, Фацебоок мигхт наг сте још неко безбедност. Тако да ћу престати тамо. Поента је да када завршите са тим, имаћете Фацебоок пријаву. Метеор има гомилу други пакети такође. Можете се улоговати са Гоогле+. Можете се улоговати са ГитХуб. Можете се улоговати са Твиттер. Или ако тражите, ви ћете пронаћи доста других ствари као Меетуп, ЛинкедИн, и Метеор програмер. Дакле Метеор програмер био пакет Тражио сам. Метеор адд рачуна-метеора-девелопер. У међувремену, ја Такође желим да препоручите неки други пакети за ваше пројекте. Могло би бити од користи да укључују јКуери пакет. Ово вам омогућава коришћење јКуери у вашим клијентима. Само то могу са једном линијом, и Метеор ће се уверим да си до данас на јКуери. Исто тако, препоручујем хоустон: админ. Ово је нешто као пхпМиАдмин врста алата за ваш МонгоДБ. То вам омогућава да измените Ваши подаци прилично лако без потребе да иду у Монго љуске, као што сам учинио раније на семинару. Тако сада да то трчи, покренимо Метеор опет и видимо шта можемо да урадимо. Приметите да додавање неке пакете можда има их представити неке упозорења. Нећете морати да бринете о томе са Хјустону. Тако да сада могу да имају опцију за конфигурацију Метеор админ. И они ти дају упутства ако желите да подесите да се. Такође можемо сада да / админ. Ово је довео до вас по хоустон пакету. А ово је Метеор админ интерфејс. Само направите админ налог, овако. А ако освежите страницу, да би могао Имам неке колекције појављују. То је веома корисно средство, и ја снажно га препоручујем. Можете видети да због хоустон је давао неке грешке, немамо никакве колекције појављује одмах. Начин на који ће користити Хјустон је пазећи ова функција добија позвао у вашим симпле-тодос. Дакле хоустон не Знам шта моји задаци су. Поставили смо Монго цоллецтион називају задаци. Идемо у једноставном-тодос и само уверите се да у ЈаваСцрипт, додали смо задатке нашим колекцијама. Ми сада смо спасили, а то је зграда апликација, освежавајуће. И да видимо. Сада имамо неке задатке. И можемо додати неке нове задатке. Али ако желимо да додате задатке, хајде да то урадимо са самим апп. Сада можемо додати неке податке. Здраво, ово је задатак. Изгледа као да је чудно да не видимо никакве задатке. Ми можда желите да проверите да ли смо добили било грешке овде, или можда негде другде. Ако одемо у админ, то изгледа чудно. Ако повучете за спремиште после овог семинара, Ја ћу бити сигурни да једноставна-тодос ради са Хјустону. Нажалост, не изгледа да бе воркинг у овом тренутку. Има ли каквих питања? Хјустон нормално је алат који ради веома добро. Хјустон посебно је мало буггиер од осталих, али ја препоручујем га када то ради. Да. ПУБЛИКА: Шта можете да урадите са Фацебоок пакет Једном је корисник пријављен у својим Фацебоок? РОГЕР ЗУРАВИЦКИ: Једном корисник је пријављен, можете позивати на Фацебоок АПИ. Много тога лежи више у како Фацебоок отвара свој АПИ. Метеор, обавезно имају везу. Али све после тога је ствар учења како да користе Фацебоок АПИ. ПУБЛИКА: [неразумљиво]. РОГЕР ЗУРАВИЦКИ: У реду. Хвала вам пуно на ово ЦС50 семинар у Метеор. Ако имате било каквих питања, можете ме емаил на моју емаил адресу Доле семинара. И ја ћу бити срећан да одговорити на ваша питања. Такође ћу да имате ЦС50 Хацкатхон треба Потребан вам помоћи са својим пројектима Метеор. Тханк иоу фор ватцхинг.