[Muusika mängib] STEPHEN turban: Nii et ma olen Stephen Turban. Üle küljel siia, äkki me saan mõned inimesed sukelduda. Meil on Gabriel ja Zack. Nii lühikese tegevuskava, mis see hakkab välja nägema, Ma lähen tegema mõned väga kõrgetasemelise pilk MVC on. Gabe? GABRIEL GUIMARAES: Ma lähen rääkida Ruby ja natuke kuidas Rails toimib ja kuidas see võib aidata teil luua veebirakendusi. Zack CHAUVIN: Ja ma lähen näitan sulle konkreetse näite, kuidas kasutada Rails ehitada super awesome app. STEPHEN turban: Awesome. Sweet. Hea küll. Nii räägime MVC. Nii lähme järgmisele slaidile, mis Ma teen seda nuppu vajutada. Ja lähme next-- areng, Mulle meeldib mõelda, läheb CVS, sest CVS on säilitada ja Samuti on V keskel. Ja nii Oletame, et poest. Ja teeme seda poodi müüa ainult üks asi. Nii et me lähed on see Hoida müüa ainult need punased tassid. Ja kujutage ette, teil kõndida, ja lähete et ees poodi ja inimene. Ja tema nimi on Vince. Ja Vince lained hello sind, ütleb hi. Ja kui märkate ühte asi Vince. Nii et kui me mõtleme Vince, me pea mõtlema kaks peamist omadussõnu. Vince on ilus, aga ta on loll. OK. Nii et sa tead, süüta oma, kahjuks ta on ilus. Ta on meie arvates. Nii et meie esimene cast liige on olemas. Pea seda meeles. Nüüd te küsite Vince, sa lähed, hey Vince. Ma olen klient. Ta ütleb, hi. Ma tõesti tahan ühe oma punase tassi. Ja mida see Vince öelda? Kas kellelgi on aimugi, mida Vince ütleb? Ma lähen külma kõne. Mis sa arvad, Vince ütleb? Sihtrühm: Ta ütleb, ma näitan sulle kus see on, aga ma ei saa anda teile ühe. STEPHEN turban: Ta ütleb, ma näitan sulle kus see on, aga ma ei saa anda teile ühe. Isegi hullem. Keegi teine ​​on teine aimugi, mida Vince võiks öelda? Sihtrühm: Ta peab minema kontrolli kui neil on punane karikad. STEPHEN turban: Vince ei isegi tean, et ta peab kontrollima. Veel midagi? Nii et sa ütlesid, peab kontrollida, kas tal on punane karikad. Lase käia. Sihtrühm: Mis on punane cup? STEPHEN turban: Mis on punane cup? Mis on punane cup? Vince on segaduses. Nii Vince läheb rääkima meie järgmine cast liige, Carl. Ja kui me mõtleme Carl me pean mõtlema kaks suurt adjectives-- ta on kontrolliv, kuid ta on võimeline. Nii Vince goes-- ta läheb, milline on punane cup? Ma ei tea, mida punane cup on. Ta pöörab ringi ja küsib ta Carl. Ta ütleb, Carl keegi küsis punase tassi. Kas sa seda tegid? Ja mida Carl öelda? Olgem aru saada. Kas keegi on mis tahes aimugi, mida Carl ütleb? Ja ma lihtsalt kordan seda sulle tagasi. Ma nägin käeliigutusega. Sihtrühm: Ta ütleb keegi muidu saada punase tassi. STEPHEN turban: Ta ütleb kellegi teise, et saada punane cup. Täpselt. Ja meil on idee kes see inimene võiks olla? See on vihje. See saab alustada M. Mob? Sihtrühm: Model. STEPHEN turban: mudel, jah. Tema nimi ei ole mudel, kahjuks sest see on rumal nimi. Meil on Mitt. Ja kui me mõtleme Mitt-- ükski ei ole see pildi Zack. Me peame mõtlema kaks võti omadussõnu koos Mitt. Ta on võimeline, kuid ta on alandlik. Nii Mitt teab, mida ta peab tegema, aga ta tõesti ei saa midagi teha. Või ta tõesti ei suuda otsustada omal. Nii et meil on Carl. Carl karjub Mitt. Ja ta ütleb, hei Mitt, peame punase tassi. Ja Mitt läheb tema punane cup depositooriumi. Ta haarab tassi, ja ta annab selle tagasi. Kas keegi on mis tahes tea, mis juhtub siis? Annab tassi. Seni Mitt on läinud tema punane tass hoidla, välja võtmata, kontrollida selle maha, ütles, Võtsin ühe punase tassi. Ja ta ei anna seda Carl. Kas teil on aimu? Mis sa arvad, Carl teeb? Sihtrühm: Carl annab selle Vince. STEPHEN turban: Carl annab selle Vince. Vince. Sihtrühm: Ja Vince näitab see [kuuldamatu]. STEPHEN turban: Täpselt. Nii see on täpselt see. Nii Vince võtab karika isegi ei tea, mis see on, kuid ta näitab seda, et kasutaja. Nii proovime uuesti see on tõesti korraks. Ja me saame vaja kolm vaikne vabatahtlikele kui poisid ei hakka suutma rääkida. Nii ma saaksin haarata kolm? OK. Ja kes sa tahaksid olla? Sihtrühm: Ma tulen Vince. STEPHEN turban: Vince, OK. Ilus, kuid loll. Hea. Keegi teine? Me otsime suudab aga alistuvad. Keegi teine ​​tahad olla võimeline? Sihtrühm: ma võiks Carl. STEPHEN turban: Sweet. Meil on Carl. Sihtrühm: Mitt. STEPHEN turban: Mitt, OK. Ja me ei kavatse vaja a-- ma olla kliendile. Nii tule üles, tule üles. Ja on igaühe silmas pidades? Nii et ma küsin Vince, et seisavad ees, lihtsalt naeratav, lihtsalt naeratab nii heledaks kui võimalik. Ja me ei kavatse küsida Carl, õige, miks sa ei, nagu, seisad tema selja taga? Ja Mitt, miks sa ei minge välja taga, ja siis ma annan sulle grupp tassid Hengata. Nii et ma olen klient. Ma tulen. Ja ma [kuuldamatu] I öelda, hi, ma tahan tassi. Perfect. Nii Vince pole aimugi. Mis siis Vince edasi teha? Vince-- OK, nii et ma lähen olema jutustamise nüüd. Vince karjub Carl, karikas! Mis Carl teha? Carl karjub Mitt. Mitt haarab tassi. Mitt annab selle Carl. Carl tagastab selle Vince. Ja Vince näitab see kasutaja. Ja see on suur, suur, kõrge, nii kõrge pilk MVC. Me jagame seda omades arvates see, mis Kasutaja näeb, kontroller, keegi kes teeb kõike taustal aga tõesti ei saa uuendada midagi või ei saa midagi teha mis tahes tähtsus va helistades vaadata ja mudel. Ja siis on meil Mitt, mudel, kes uuendab iganes meie käsutuses olevad andmed. Nii tänan sind nii palju meie ilus, kontrolli ja suudab vabatahtlikke. Ja ma arvan, et see oli. [APPLAUSE] Ma arvan, et Gabe läheb praegu rääkida on loodetavasti vähem kõrgel tasemel. GABRIEL GUIMARAES: OK, poisid. Räägime nüüd natuke lähemalt kood ja Ruby on Rails ise ja kuidas see on seotud see kõik MVC lugu. Põhimõtteliselt Ruby on Rails on raamistik. Saage et teises. Aga ainult teile mõttes, kes on seda kasutada, nagu kõik need suured companies-- nii github, Groupon, Twitter-- nad kõik kasutavad Ruby on Rails, kuna nende peamine raamistik rakendama oma kodulehel. Ma olen kindel, et paljud inimesed on neid veebisaite siin. Ja see on kõik Ruby on Rails rakendada mudel, vaadata ja kontroller kõik need veebilehed ja palju muud. OK? Nii nagu ma ütlesin, Ruby on Rails on raamistik. Ja saab omamoodi mõelda raamistik selles mõttes, et maja ehitamine. Nii et kui sa lähed ehitada house-- ning alati on võimalik alustada nullist, eks? Võid proovida tulla koos viis nägin puit, ja tuua puidu koht ja saada kivid õige kuju, ja siis kõike seda. Aga see läheb võtma ilmselt palju aastaid kuni saad kõik materjalid, ja sa saad kõike koos, ja sa tegelikult alustada ehitada oma maja. Nii selgub, kui hakkate läbi raamistiku midagi, mis on juba selline paigas tahes tüüpi maja mida soovite build-- midagi see on väga üldised, kuid et saate siis modelleerida suunas oma goals-- siis saate kasutada Selle võimsus raamistike ehitada neile midagi palju, palju kiiremini. OK. Nii et see on sama mõte raamistik veebirakenduse või mis tahes tüüpi taotluse, et asi. Sa tegelikult hakata läbi kusjuures pooled taotluse juba seal koht sinu jaoks. Ja et ma mõtlen saad palju faile, mis on juba funktsioone, nagu raamatukogud, nagu funktsionaalsus, ja käsud, et saate käivitada selleks teha oma elu palju lihtsamaks ja. OK. Nii et kui me läheme rääkida Ruby on Rails. Seal on palju erinevaid raamid seal. Seal Django Pythoni. Seal on Zend raamistik või Laravel PHP. Seal on palju erinevaid ones. Ruby on Rails on päris kena uus. Paljud inimesed kasutavad, et alustavatel ja selline keskkond. Ja mõned neist väga suur ettevõtted, mis ma näitasin siin varem kasutate ka Ruby on Rails. Nii lihtsalt teile tunnet, mida Ruby on nagu, kuna kutid on rohkem kasutatud et, nagu, C ja natuke PHP nüüd, et Ruby saab olema samaväärne oma PHP selles mõttes. See ei ole Ruby. See on C. OK? Aga see on nagu DJBHash funktsiooni, et ma tea paljud inimesed, mida kasutatakse jaoks pset õigekirjavead. Ja Ruby, päris palju nagu PHP, siis võiks rakendada seda ainult paar rida koodi. Selle asemel, et muretseda umbes hash funktsiooni muretsema kopad, ja kõik see, mida saab lihtsalt öelda, sõnastik = Hash.net. Ja siis kasutage selline nagu sama mõte, et PHP olnud. Ja nii see on, et tõsi. Ja siis, kui soovite kontrollige, et kontrollida funktsiooni oleks, kui sõnastik "foo" võrdub võrdub tõsi, tagastab true. Ja see on kõik, OK? Nii märkate mõned erinevused. Puuduvad semikoolonite siin, sest seal olid C. Aga üldine idee on väga sarnased. OK? Ka Ruby on kalliskivid, mis on selline Ruby raamatukogudes. Ja Rails tegeleb nendega väga kena viis, kuidas saate. Nii et kui sa tahad panna Mõnes raamatukogu, mis teeb e-kirju, või et ei tekstisõnumit, või mis ei integratsioon Facebook või mõni selline asi niimoodi oma app, see on väga lihtne. Koefitsiendid on leiad midagi niimoodi internetis. Ja nad lihtsalt ei midagi panna, mis gem soovite kasutada gem faili. Ja siis Rails installib kõik. Sa ei pea muretsema mis tahes selle, et see on väga lahe. Ka seal on palju, palju abi võrgus. Nii leiad palju asju. Kui teil on viga, saab Google'ist, ja see saab olema väga lihtne saada abi. Ja see on palju fun-- exactly-- sest sa ei pea muretsema madala Üksikasju rakendamise räsitabeli ja võttes tulla kõik HTTP päised ja palju asju, ja isegi mõned kõrgema asju. Sa ei pea muretsema umbes, et Rails. Ta teeb seda väga kenasti teile. Ja me kavatseme näidata, et konkreetsemalt väga kiiresti. OK. Nii natuke Ruby uuesti. Nii et see on nagu C, nagu ma ütlesin. Selle asemel, et printf, ütleme "Paneb", mis on "panna string." See paneb string konsooli. Ja sel juhul, me oleme lihtsalt printimisel "Hello World". Me ei pea sulgudes aga see on päris palju sarnast. Ja siis, kui soovite midagi siin nagu printida kamp "smalls" ja kamp "bigs" on samas silmus, see on selline nagu C, eks? Sa ei pea parameetrid, aga see on üsna sama. Taandus siin loeb, nii et x võrdub 1. Ja seejärel Kuigi x on väiksem 50-- see Kui see on teine. See on päris palju sellist, mida sa nägid. Ja siis x + = 1, on lihtsalt suurendamist, selline nagu teevad ++, et saate teha C. Aga see on päris palju, mida sa nägid C. See ei tohiks olla liiga keeruline. Aga see on võimsam. Nii on mõned käsud here mis on kindlasti natuke uuem. Nii näiteks, "paneb." Võite kasutada seda hashtag märke siin lihtsalt printida midagi-- päris palju sellist, mida sa teeksid, kui % D või% C või mõnevõrra niimoodi. Ja tegelikult võimalik Kui kohe pärast avalduse. Nii et ma tahan ainult teha see-- Kui x on suurem kui 3. Miks peaks ma pean teha kogu Kui blokeerida? Ma ei tea. Ma lihtsalt printida seda ainult kui x võrdub suurem kui 3. Nii et see on üks rida viis teha seda Ruby. Nimekiri Ruby on midagi väga mitmekülgne. Nii et sa tõesti ei pea on ainult ühte tüüpi. Sul võib olla string ja seejärel mõned numbrid, ja mida iganes. Ja kui sa tahad lisada midagi loetelu, võid lihtsalt kasutada seda märke siin. Ja kui sa tahad itereerima. Päris palju 4each PHP, siin, siis on nimekirjas ja te teete "List.each teha." Ja see "elem," see on nagu nimi iga element et ma lähen on minu nimekirja. Ja siis ma lihtsalt "paneb elem." Ja "paneb" päris palju käepidemed paneb ta teile printimist. Ei ole oluline, kui see on string või int. See läheb tööle, et sinu eest. Õigus? Külm. Ja nii nagu PHP, Ruby ja HTML lisada ka väga kenasti. Ja siin, seal on mõned HTML Ruby ta. Nii et meil on body nagu HTML. Ja kui me tahame kontrollida et kasutaja on, näiteks, sisse logitud, saame öelda, algus Ruby, kui user.logged_in ?, lõpus Ruby. Trüki kogu asi, mis on mõned Ruby on see, mis on lihtsalt selline nagu, et süntaks PHP, mis prindib välja muutuja. Olgem printida user.name. Nii hea meel, Stephen, sees HTML div. Ja lõpus on meil "end" ja Ruby kood, mis tähendab, et see on minu Kui blokeerida. OK? Nii et see on nagu õmblusteta integratsiooni Ruby ja HTML. On ka palju ressursse. Aga enne kui me edasi minna, ei keegi on küsimusi Ruby, midagi? OK. Seal on palju ressursse Internetis et tryruby.org, Code Akadeemia ruby-lang.org, kus saab proovida seda välja brauseris, enne kui tegelikult öelda, oh, OK, ma lähen kasutada Ruby minu lõplik projekt. Ja nii kindlasti anda neile proovida. Kõik need slaidid saab olema kättesaadavad Internetis, nii et sa võid neid alla laadida. Ning jah? Sihtrühm: [kuuldamatu] mida sa just näitasid oli HTML ja kood haaratud see sellele mõistele Mudel View Controller? GABRIEL GUIMARAES: Jah. Teeme, et teises kui me näitame meie näiteks OK? Täname küsimuse. Nii et küsimus oli põhiliselt siis, kui me saab näidata integratsiooni Ruby HTML jooksul Mudel Vaata Controller raames. Nii idee Mudel Vaata Controller raamistik see on põhimõtteliselt filosoofia, nagu Stephen näitas siin. Ja see ei ole midagi et sa pead tegema, aga see on midagi, mis muudab oma elu nii palju lihtsamaks. Ja Ruby on Rails on ehitatud ümber selle filosoofia koodi. Nii et me kavatseme näidata Näiteks väga kiiresti. Nii Rails on armastus. Paljud inimesed kasutavad seda, nagu ma ütlesin. Ja see on tõesti lõbus. Kutid peaks kindlasti seda proovida. MVC teeb kõike lihtsam. Nii Mudel View Controller, eraldades asjad ja paneb ühe inimese kohta, se, või ühe osa oma taotluse teha iga erineva töökohti et sa taotlus teha. Ja vähem aega kulutada madala taseme probleeme. Ja väga populaarne just nüüd. Meil on Rails 4.0, mis on uus versioon. Ja see on kaasas palju lahedaid asju. Omaette küsimus. Sihtrühm: Teine küsimus. Ruby on Rails versus Ruby on Rails Grails. GABRIEL GUIMARAES: OK. Küsimus oli, Ruby Rails versus Ruby-- Sihtrühm: Grails. Ruby? GABRIEL GUIMARAES: Jah. Nii Ruby on keel. Sihtrühm: No. Ma palun teil võrrelda keel ja raamistik, Ruby on Rails, teise populaarse keel framework-- Grails-- koos Ruby Rails. GABRIEL GUIMARAES: OK. Vabandust. Küsimusele, võrrelda Ruby ja Ruby on Rails teise raamistiku ja another-- Sihtrühm: Ruby. See on OK. Kui sa ei tea, siis see on hea. GABRIEL GUIMARAES: Like, mida ma aru ei selle-- Sihtrühm: Seal on teine raames kutsutakse Grails. GABRIEL GUIMARAES: Oh, Grails. Ma pole kunagi kuulnud. Vabandust. Ma pole kunagi kuulnud Groovy on Rails. Vabandust. Sihtrühm: See on palju parem integreeritud Java. GABRIEL GUIMARAES: ma näen. Sihtrühm: Ma olen lihtsalt uudishimulik umbes mõned inimesed ma tean like-- GABRIEL GUIMARAES: Ei, ma ei ole kunagi kuulnud, et üks, kahjuks. Grails. Sihtrühm: Ja mõned inimesed ilmselt nagu Ruby on Rails. GABRIEL GUIMARAES: Olen Kasutatud Ruby on Rails palju. Olen kasutanud mõned Django Python, nagu ma ütlesin. Olen kasutanud mõned Laravel. Aga ma ei kasutanud Groovy on Rails. Vabandust. Ja see on väga populaarne nüüd Rails 4.0. Nagu mõned asjad, mis Rails ei teile, näiteks on teil on palju CSS failid ja palju JavaScript failid. Ja sa ei kohelda neid eraldi ja puha. Aga siis automatically-- kui saadate koodi tootmise, see koostab automaatselt need kõik ühte faili mis on minified ilma ruumid, et see kulub vähem ruumi oma taotluse, et et saab tõesti skaleerida asju palju. Sellepärast sellised suured firmad nagu Twitter ja github kasutate Rails, sest see kõik et teie jaoks, mis on väga lahe. Üks asi, mis on väga, väga heidutav inimesed, kaasa arvatud mina, kes üritavad töötada koos raamistik alguses, on et kui hakkate läbi taotluse, sa lähed, et näha hunnik faile. Like, kui loote Rails Uus, minu taotlus, sa lähed, et näha kõiki neid folders-- app, bin, config, db, lib, logi avalik. Like, palju, palju asju. Ja ma esimest korda nägin, et ma olin nagu, OK, ma ei tea, mis toimub. Ma tahan, et luua veebilehel "Hello, world" ja see annab mulle meeldib, 100 miljardit erinevat lehekülge. Ma ei tea, mis toimub. Nii et palun ärge liiga heidutanud seda. Mõte on selles, et see on tegelikult pool maja seal teid juba. See on kogu raamistik sa juba. See on põhjus, miks seal on nii palju faile. Aga hea asi on see, et eraldab neid kõiki väga kenasti. Koefitsiendid on te ei pea muretsema umbes enamik need kaustad. Kõige tähtsam, ma ütleksin, on app kausta kus teie app tegelikult elab. Nii config, sa lähed on configurate mõned asjad, nagu oma andmebaasi ja asjad millist andmebaasi te kasutate. Aga peale selle, nagu enamik teie töö läheb ära teha app. Nii app, teil on varad, kontrollerid abilised, saatjad, mudelid, seisukohtadega. Nii et siin, hakkate nägema, et kontrollereid, mudelite ja vaadete tulla mängu. Postitajaid on vaid, kui teil soovite saata e-kirju. Abilised kui soovite luua mõned funktsioonid et te kasutate palju vaadata. Nii et sa panid nad abilised. Ja vara on põhimõtteliselt kõik Piltide, kõik oma CSS, kõik Teie JavaScript, ja nagu seda tüüpi asju, mida saan saata kliendile. Ja kõik see on varas, et ma enne ütlesin, muutub minified. See on koostatud. Ja sa tõesti ei pea muretsema et kui ta läheb tootmise koodi. Külm. Nüüd Zack läheb tulla, ja ta on kavatse seda teha näiteks Twitter50. Sihtrühm: Woo-hoo! Zack CHAUVIN: Awesome. Nii oli mul võimalus töötada Ruby on Rails sel suvel. See on hämmastav raames. Ma olen väga osaline ta. Ja ma lihtsalt näitan sulle natuke näide sellest, mida see võiks välja näha. Jump üle Chrome. Nii on see näiteks väga lihtne Ruby on Rails application-- midagi nagu see on midagi et Ruby tajute selle-- just seal, kus Teie mudelid on väga täpselt määratletud. Selles näites näete kaks erinevat vormi, millest on, et meil on kasutajad ja meil on tweets. Nii et see on Twitter50, Harvard enda Twitter. Nagu näete, ma olen sisse loginudzack. Ja ma olen võimeline tegema uue tweets. Nii et ma think-- "See on" - sorry? Sihtrühm: [kuuldamatu]. Zack CHAUVIN: Oh, OK. On vaja seisata server. Suurepärane. Nii et siin me oleme. Nagu näete, oleme meie Twitter taotluse siin. Ja see on super lihtne alustada server. Me lihtsalt ei "rööpad server." Hea. OK. Tänu selle eest. Nüüd me töötab. Ja me ütleme: "See on vinge seminar. " Ja vaatame, mis juhtub. Nii me piiksuma midagi. Alla allosas näete nüüd on üle kolme tweets. Nii et meil on natuke kohta pagination toimub. Ja meil on see piiksuma. Ja ma ei saa ka otsida läbi minu tweets-- otsing sellele ja kaks need, mis on sõna "See" neid näha. Saame ka kustutada tweets poolt klõpsates vähe nuppu Kustuta. Ja muidugi, ma saan kustutada ainult post, mis kuulus mulle. Juba me peaaegu ei funktsionaalsust Twitter. Like, kui sa arvad, Twitter tõesti ei tee kõik, et palju. See on kasutajad, on tweets. Seal on mõned keerulisemad funktsioonid. Aga kui sa tõesti näha seda, see on üsna lihtne Ruby on Rails app. Ja midagi sellist, mille hea ülevaade Ruby on Rails, Sa võid ilmselt tegema tund või kaks. Ja see on tõesti tegemist tagasi Ruby mantra, mis on konventsiooni üle konfiguratsioon. Nii juba järgmisel päeval, inimesed, millal nad tahavad sellel veebilehel, oleks alustada nullist. OK, ma tahan teha veebilehel. Teeme seda faili ja Selle faili ja faili. Mis Ruby on Rails, seal on midagi sellist. Te ütlete, ma tahan uut rakendust. Ja nii nagu Gabe näitas meile, et loob kogu faili struktuuri meile. Ja me lihtsalt muuta vähe osi, et me peame. Me lihtsalt kohandada, mida on ainulaadne meie app. Külm. Nii läheb tagasi meie esitlus preview-- huvitav. Kust ma esitama? Sihtrühm: Full screen. Top õigus. Zack CHAUVIN: Suurepärane. Külm. OK. Nii kõigepealt mudel. Stephen tegi vinge töö piiritleda MVC. Ja nüüd me läheme seotud et tagasi Ruby on Rails. Nii mudeli saate liiki ja mõtle kui andmebaasi. Olete näinud seda CS50 Finance, kui mudel kauplustes informatsiooni kui palju varud teil on või kõik tehingud, mis sa tegid. See on näide line, kuidas soovid minna teha uusi mudel Rails. Ma tahan kasutaja. See saab olema e-posti, mis on string, ja parooli, mida Samuti on string. Nii et see on nagu those-- tahan igas reas minu laua kasutajate selline. Tõesti awesome osa umbes rööpad on, et see ei ole enam vajalik kirjuta SQL päris palju. Kui paljud kutid armastas kirjalikult SQL pset 7? Täpselt. SQL ei ole väga kasutajasõbralik. Ja Rails imab kõik, et ära Nende tõesti lihtne käske. Nii näiteks, kui meil kasutaja, kasutaja on palju tweets. Ja igaüks neist tweets kuulub kasutaja. Nii et kui sa vaatad siin, see on meie mudel meie piiksuma. Ja kõik, mis meil öelda on Selle ühe LINE ma olen Tweet ja ma kuulun kasutaja. Ja et ühe liini ja natuke andmebaasi konfiguratsiooni, Rails loob see suhe. Pakkumistele, võin öelda, zack.tweets, nagu, anna mulle kõik Zack tweets. No SQL. Super lihtne. Jällegi, see on konventsiooni üle konfiguratsiooni tulevad mängu. Näete natuke on näide Ruby siin. Nagu Andis ütles, kirjutades Ruby on omamoodi nagu kirjalikult inglise keeles. See on väga kõrgetasemeline keele, ja see muudab väga lihtne meil öelda asju nagu tahan veenduge, et seda lehte on keha. Selle esinemine on tõsi. Ja ma tahan veenduda, et see piiksuma, just nagu tavaline Twitter, on max pikkus 140. See on super-intuitiivne, tõesti suur keel. Järgmisena on meil vaadata. Nii et see hõlmab HTML ja CSS. Ja siin on näide arvates. Nii Ruby on Rails omamoodi sujuvalt ühendab nii Ruby ja HTML et genereerida mida me tahame lehel. Nii on see näiteks meie paigutuse. Nii et näete mõned sildid, mis sa poisid on harjunud, nagu HTML, keha, kõik, mis hea kraam. Ja just siin, aga me lisada mõned Ruby, öeldes, kui seal on teade, mis näitab, Seejärel kuvab sõnumi div. Nii et ma ei saa liiga palju seda. Kuid see on üldiselt lehekülg, mis saab sulatatud nüüd-- ja ükskõik, mis lehel sa oled on see üks saab sulatatud. Nii et see on see, mida saab lisada alati. Külm. Teine näide view-- see kus ta valis kõik tweets. Ja mõned seda kraami võib tunduda üsna tuttav. Nii näiteks, siin me oleme silmukoiminen läbi iga tweets, ja me nende väljatrükkimist. Nii et siin on koht, kus me oleme väljatrükk keha. Ja kui piiksuma oma user-- siin ehtne näide ei SQL on kaasatud. Ma lihtsalt küsin, kas see on piiksuma kasutajate praeguse kasutaja? Siis näitavad link kustutada. See on super lihtne. Kontroller. Seega on see jällegi liides vahel mudel ja vaadata. See on see, mis teeb rasket tööd kohta interacting-- on käsi. See laeb info Vaata, mida me näeme sek. Ja selleks, et suhelda mudeliga, siis kutsub mudel meetodeid, mis on see, mis kutid on tuttavad nii funktsioone. Nii näiteks on see Meie piiksuma kontroller. See võib tunduda väike heidutav kohe. Aga see on tegelikult super intuitiivne kui hakkate sukeldudes. Nii näiteks meie indeks, mis on kus me tahame näidata kõiki tweets. Ja nii see rida põhimõtteliselt lihtsalt küsib kõik tweets. Ja siis me initsialiseerida nii uus tweet-- nii nagu kui nad soovivad luua uus piiksuma sellel lehel. Ja siis küsib, mida praegune kasutaja on. Ja see on väga sarnane muuta, et sa nägid pset 7, kui see on lihtsalt selline ütlen view-- see on selline, nagu, kulgeb muutujaid, mis sa oled läheb vaja, et vaadata. Ja seal on terve hunnik Erinevate meetodite et seda lehte kontroller saab hakkama. Aga tõesti, Rails teeb suure töö laadi kohta jagades eri meetmeid, et teie töötleja võib teha. Kas on mingeid küsimusi ükskõik MVC osad rööpad? Kind of vaid imelihtne. Nii kutid saavad vaadata seda ise. Awesome. Me jätkame. Nii paigaldamisel Rails. Paigaldamine Rails võiks olla, nagu, üks rohkem heidutav osad Kogu Rails protsess, kahjuks. Kuid loomulikult on kõik meil on umbes aidata. Ja kui see on olemas, palju suuri ressursse, kui Gabe mainida, alustanud. Siin on lingid, mis peate, et alla laadida Rails, et saan seda paigaldatud arvuti. Ilmselt see on saadaval nii Windowsi ja Mac ja CS50 aparaat. Küsimused midagi me oleme öelnud? Sihtrühm: Oleksin huvitatud, actually-- nii et ma tean, et allalaadimine tarkvara on suurim takistus. Kui seal on piisavalt huvi on allalaadimise mini istungil või midagi. Zack CHAUVIN: Mm-hm. Jah. See võib olla tõesti kasulik. Kui keegi on tõesti gung-ho umbes kasutades seda oma projekti või tulevikus, siis olime kindlasti hea meelega teile rääkida sellest. Mm-hm. Sihtrühm: seotud küsimus mida ma küsisin enne. Neile, kes on teinud teiste raamistike veel üritavad teha sama asi, et lihtsustada ehitada veebilehel või funktsionaalsus, ma arvan, et mingit mõtet miks me oleks Rails versus Zend või mõned teised raamistikud ja keeli. Zack CHAUVIN: ma lihtsalt öelda minu $ 0,02 sellest. Ma armastan Ruby on Rails. Mul on olnud võimalus töötada nii PHP ja Ruby on Rails. Ma eelistan Ruby on Rööpad tõttu Ruby. Kindlasti, see on suur osa sellest. Like, kui sa oled Valides oma raames, sa ka vali oma keel. Ruby on super accessible-- ma arvan palju parem keeles kui PHP. Aga see on selline isiklik eelistus. Nagu hästi, teine ​​aspekt on kogukonna taga raames et te töötate. Praegu Ruby on Rails on tõesti kuum. Seal tonni toetust taga. Sa postitada midagi Stack Ületäitumine probleemi kohta olete võttes Ruby on Rails, ja see vastas. Jällegi, see on avatud lähtekoodiga, mis tähendab, et see on pidevalt muutunud. Seal tonni inimest mis on tegelikult pühendunud et muuta see tõesti awesome raames. Nii et miks ma tahan vali Ruby on Rails. GABRIEL GUIMARAES: Jah. Ma ütleksin, et mõte taga kõige raamistike sa oled leiame seal on väga, väga sarnased, eks? Nii Mudel View Controller, Asjaolu, et meie kontrolleri hakkab välja nägema midagi nagu see-- iga funktsiooni on nagu üks teie lehti, ja see suunab sind, ja see käivitab muutujaid. See saab olema sama asi Iga raamistik, mis sa näed seal. Ja seal saab olema mudel. Ja seda saab teha asju, "kuulub." Selle asemel teeb SQL versioon, sa lihtsalt, nagu, teha, user.tweets, ja sa saad kõike. Kõigil on nii. Välja arvatud Ruby, sa user.tweets, ja siis mõned raamistike PHP, sa user.getalltweets Kus mu PHP ei ole probleem. Like, see on suur line. See on sama asi, kuid see on suur line. Nii et üks peamisi põhjusi minu eelistuste Ruby. See on lihtsalt teen täpselt Sama asi teistes raamistikes, see lihtsalt võtab mind kaks korda nii kaua rida koodi. OK? Muid küsimusi? Zack CHAUVIN: Midagi Ma mainida quickly-- Gabe rääkisime natuke kalliskivid. Ja see on tõesti great-- ma mõtlen, seda on selline ühine kõigile raamistike et seal on mingi pärl mõiste, mis on nagu minu väike näide, Olen logida. Like, võite sisse logida, välja logida. Like, see on tegelikult liiki keerukas protsess. See jäi nõrgaks vähe natuke teile pset 7. Aga ma ikka ei ole täielikult teada, kuidas rakendada sign-in, sign-out. Ja see on sellepärast, Ruby on Rails on tonni kalliskivid, et teha asju, mis teile. Jällegi konventsiooni üle konfiguratsioon. Igaüks läheb tegema märgi-in, sign-out samm. Nii et miks mitte lihtsalt pakett, mida nimetatakse Töötada sel juhul, mis on pärl. Sa lihtsalt lisada see. Ja siis on veidi abi Internetis kuidas seda kasutada. Ja sa ei pea muretsema umbes midagi sellist. Kinnitamine pilte nendele things-- gem selle eest. Like, millal sa üritad teha midagi uut, seal on gem selle eest. Ja sa mingi lihtsalt kokku panema need kalliskivid ja ehitada tõeliselt keerulise taotlus väga kiiresti. Külm. Muid küsimusi? STEPHEN turban: Woo-hoo. Ma ei arva, [kuuldamatu]. GABRIEL GUIMARAES: OK. Tänu nii palju, poisid. STEPHEN turban: Buh-bye. Zack CHAUVIN: Buh-bye. STEPHEN turban: Woo-hoo. [APPLAUSE] Jee.