[Mūzikas atskaņošanai] STEPHEN turbāns: Tātad es esmu Stephen turbānu. Pāri pusē šeit, varbūt mēs var iegūt dažus cilvēkus nirt. Mums ir Gabriels un Zaks. Līdz ar to par īsu ceļvedi par to, kas tas notiek, lai izskatās, Es esmu gatavojas darīt dažas ļoti augsta līmeņa apskatīt to, kas MVC ir. Gabe? GABRIEL GUIMARAES: Es esmu gatavojas runāt par Ruby un mazliet cik Sliedes darbi un kā tā var palīdzēs jums veidot tīmekļa lietojumprogrammas. ZACK CHAUVIN: Un es esmu gatavojas parādīs konkrētu piemēru, kā izmantot Rails, lai izveidotu super laba app. STEPHEN turbāns: satriecošs. Sweet. Labi. So parunāsim par MVC. So iesim uz nākamo slaidu, kas Es darīšu, nospiežot šo pogu. Un iesim uz next-- attīstību, Man patīk domāt par dodas uz CVS, jo CVS ir veikalu un arī ir V centrā. Un tāpēc pieņemsim iedomāties uz veikalu. Un pieņemsim padara šo veikalu pārdot tikai viena lieta. Tātad mēs esam nāksies šo uzglabāt tikai pārdot šīs sarkanās krūzes. Un iedomājieties, jūs staigāt, un jums iet uz priekšu veikala, un cilvēks. Un viņa vārds ir Vince. Un Vince viļņi sveiki pie jums, saka hi. Un jūs novērojat viena lieta, par Vince. Tātad, ja mēs domājam par Vince, mēs ir jādomā par divām galvenās īpašības vārdi. Vince ir skaists, bet viņš ir stulba. OK. Tātad, jūs zināt, ne savas vainas dēļ, diemžēl, viņš ir skaists. Viņš ir mūsu viedoklis. Tātad mūsu pirmais cast loceklis ir tur. Paturiet to prātā. Tagad jūs lūgt Vince, jums iet, hey Vince. Es esmu klients. Viņš saka hi. Es tiešām gribu vienu no sarkano tases. Un ko tas Vince saka? Vai kāds ir jebkurš ideju, ko Vince saka? Es esmu gatavojas auksti zvanu. Ko jūs domājat Vince saka? Mērķauditorija: Viņš saka, es varu parādīt jums kur tas ir, bet es nevaru dot jums vienu. STEPHEN turbāns: Viņš saka, es varu parādīt jums kur tas ir, bet es nevaru dot jums vienu. Vēl sliktāk. Kāds cits ir cits jausmas, ko Vince varētu teikt? Mērķauditorija: Viņam ir jāiet pārbaudi ja viņiem ir kāda sarkanas krūzes. STEPHEN turbāns: Vince nav pat zināt, viņš ir jāpārbauda. Kaut kas cits? Tātad jūs teicāt, ir pārbauda, ​​vai viņš ir sarkanas krūzes. Iet uz priekšu. Mērķauditorija: Kas ir sarkans kauss? STEPHEN turbāns: Kas ir sarkans kauss? Kas ir sarkans kauss? Vince ir sajaukt. Tātad Vince gatavojas runāt ar Mūsu nākamais cast loceklis, Carl. Un, kad mēs domājam par Carl, mēs gotta domāju par divu lielu adjectives-- viņš ir kontrolpakete, bet viņš ir nespējīgs. Tātad Vince goes-- viņš iet, kas ir sarkans kauss? Es nezinu, kas sarkans kauss ir. Viņš pagriežas, un viņš jautā Carl. Viņš saka, Carl, kāds lūdza sarkanu kausu. Vai jūs varat darīt? Un ko tas Carl saka? Pieņemsim skaitlis tas. Vai kāds ir jebkurš ideju, ko Carl saka? Un es ņemšu tikai atkārtot to atpakaļ uz jums. Es redzēju roku kustību. Mērķauditorija: Viņš stāsta kāds cits, lai iegūtu sarkano tases. STEPHEN turbāns: Viņš stāsta kāds cits, lai saņemtu sarkano kausu. Tieši tā. Un mums ir ideja kas šī persona varētu būt? Tas ir mājiens. Tas notiek, lai sāktu ar M. Mob? AUDITORIJA: Model. STEPHEN turbāns: modelis, jā. Viņa vārds nav modelis, diemžēl, jo tas ir muļķīgi nosaukumu. Mums ir Mitt. Un, kad mēs domājam par Mitt-- nē, tas nav attēls Zack. Mums ir jādomā par diviem galvenās īpašības vārdi ar Mitt. Viņš ir spējīgs, bet viņš ir padevīgs. Tātad, Mitt zina, ko viņš ir jādara, bet viņš tiešām nevar darīt neko. Vai viņš tiešām nevar lemt par savējo. Tātad mums ir Carl. Carl kliedz Mitt. Un viņš saka, hey Mitt, mums ir nepieciešams sarkano tases. Un Mitt dodas uz savu sarkano kauss depozitārijā. Viņš greiferi tasi, un viņš dod to atpakaļ. Vai kāds ir jebkurš Ideja, kas notiek pēc tam? Dod kausu. Līdz šim Mitt ir devusies uz viņa sarkans kauss krātuve, ņem to ārā, pārbauda to off, sacīja, Paņēmu vienu sarkano krūzi. Un viņš dod to Carl. Vai jums ir ideja? Ko jūs domājat Carl dara? Mērķauditorija: Carl dod to Vince. STEPHEN turbāns: Carl dod to Vince. Vince. AUDITORIJA: Un Vince parāda to uz [nedzirdama]. STEPHEN turbāns: Tieši tā. Tātad, tas ir tieši tā. Tātad Vince notiek kausu, pat nezina, kas tas ir, bet viņš parāda to lietotājam. Tātad, pieņemsim mēģināt atjaunot tas tiešām īsi. Un mēs esam gonna nepieciešamību Trīs kluss brīvprātīgie, kā jūs puiši nenāks lai varētu runāt. Lai es varētu paķert trīs? OK. Un kurš jūs vēlētos būt? Mērķauditorija: Es būšu Vince. STEPHEN turbāns: Vince, OK. Skaisti, bet stulba. Lieliski. Kāds cits? Mēs meklējam spējīgs bet padevīgs. Kāds cits vēlas būt spējīgs? Mērķauditorija: es varētu būt Carl. STEPHEN turbāns: Sweet. Mēs esam ieguvuši Carl. AUDITORIJA: Mitt. STEPHEN turbāns: Mitt, OK. Un mēs ejam uz nepieciešamību a-- Es būšu klients. Lai nāk uz augšu, come on klajā. Un ir visi, ņemot? Tāpēc es esmu gatavojas lūgt Vince uz stāvēt priekšā, tikai smiling, tāpat smaidot tik spilgti kā iespējams. Un mēs ejam lūgt Carl, labi, kāpēc ne jūs, piemēram, stāvēt tieši aiz viņas? Un Mitt, kāpēc ne jūs tikai iet off uz muguras, un tad es došu jums grupu tases, lai žaut ar. Tāpēc es esmu klients. Es nāku. Un es veicu [nedzirdama] I saka, hi, es gribētu krūzīti. Perfekta. Tātad Vince nav ne jausmas. Tātad, ko tas Vince darīt tālāk? Vince-- Labi, tāpēc es esmu gatavojas būt stāstīja tagad. Vince kliedz Carl, kauss! Kāda Carl darīt? Carl kliedz uz Mitt. Mitt greiferi kausu. Mitt dod to Carl. Carl atgriež to Vince. Un Vince parāda to lietotājam. Un tas ir augsts, augsts, augsts, tik augstas apskatīt MVC. Mēs sadalīt to, ņemot skatu, ko lietotājs redz, kontrolieris, kāds kas dara visu fonā bet tiešām nevar atjaunināt neko vai nevar darīt neko jebkuras nozīmes izņemot zvanot skatu un modeli. Un tad mums ir Mitt, modelis, kas atjaunina neatkarīgi no datiem mums ir. Tātad paldies jums tik daudz par mūsu skaisto, kontrolēšanai, un spēj brīvprātīgie. Un es domāju, ka tas bija. [Aplausi] Es domāju, Gabe gatavojas runāt tagad uz cerams mazāk augstā līmenī. GABRIEL GUIMARAES: OK, puiši. Tagad parunāsim mazliet vairāk par kods un par Ruby on Rails sevi, un par to, kā tas attiecas uz visu šo MVC stāsts. Būtībā, Ruby on Rails ir ietvars. Vairāk par to, ka sekundē. Bet tikai, lai dotu jums sajūtu, kurš ir, izmantojot to, piemēram, visi šie lielo companies-- tik GitHub, Groupon, Twitter-- viņi visi izmantojot Ruby on Sliedes kā savu galveno sistēmu īstenot viņu mājas lapā. Tāpēc es esmu pārliecināts, ka daudz cilvēku ir izmantojuši šīs mājas lapas šeit. Un tas viss ir Ruby on Rails, lai īstenotu modelis, skats, un kontrolieris uz visām šīm tīmekļa vietnēm un daudz ko citu. OK? Tā kā es teicu, Ruby on Sliedes ir pamats. Un jūs varat veida iedomāties regulējuma tādā nozīmē, ka, piemēram, ēkas māja. Tātad, ja jūs esat gatavojas būvēt house-- un jūs vienmēr varat sākt no nulles, vai ne? Jūs varat mēģināt nākt klajā ar to redzēja koka veidā, un celt malku uz vietu, un lai iegūtu akmeņus pareizajā formā, un tad visi to. Bet tas notiek, lai iespējams, daudz gadu kamēr jums iegūt visu materiālu, un jūs saņemsiet visu kopā, un jūs faktiski sākt veidot savu māju. Tātad izrādās, ja jūs sākt ar sistēma ar kaut ko, kas ir jau veida vietā jebkura veida mājas ka jūs vēlaties, lai build-- kaut ko tas ir ļoti vispārīgs, bet, ka jūs varat tad modelēt uz savu goals-- tad jūs varat sviras šis spēks ietvaros būvēt viņiem kaut kas daudz, daudz ātrāk. OK. Tātad šī ir pati ideja sistēma tīmekļa lietojumprogrammu vai jebkura veida pieteikumu, par šo jautājumu. Jūs faktiski sākt out ar pusi pieteikumu tur jau ir spēkā attiecībā uz jums. Un ar to es domāju, jums daudz faili, kas jau ir funkcijas, piemēram, bibliotēkās, piemēram, funkcionalitāti, un komandas, kas var palaist, lai padarīt savu dzīvi daudz vienkāršāku un vieglāk. OK. Tātad šajā gadījumā, mēs ejam runāt par Ruby on Rails. Ir daudz dažādi karkasus, kas tur. Tur Django Python. Tur ir Zend ietvars vai Laravel PHP. Ir daudz dažādu tiem. Ruby on Rails ir diezgan jauka jauns. Daudzi cilvēki izmanto ka jaunizveidotiem un šāda veida vidē. Un daži no tiem ir ļoti liels uzņēmumi, kas man parādīja, šeit pirms arī izmantojot Ruby on Rails. Tik vienkārši, lai dotu jums sajūtu par to, kas Ruby ir tāpat, jo jūs puiši vairāk ir pieraduši lai, piemēram, C un mazliet PHP tagad, lai Ruby būs ekvivalents jūsu PHP šajā ziņā. Tas nav Ruby. Tas ir C. OK? Bet tas ir kā DJBHash funkcija, kas man zinu daudzus cilvēkus izmanto par PSET pareizrakstības kļūdas. Un Ruby, diezgan daudz, piemēram, PHP, jums varētu īstenot to ar tikai dažas rindiņas kodu. Tā vietā, lai jāuztraucas par hash funkciju, jāuztraucas par spaiņiem, un tas viss, jūs vienkārši varat teikt, vārdnīca = Hash.net. Un tad jūs izmantojat veida, piemēram, pati ideja, ka PHP bija. Un tā tas ir taisnība. Un tad, ja jūs vēlaties, lai pārbaudiet, lai pārbaudītu funkcijas būtu, ja vārdnīca "foo" ir vienāds vienāds taisnība, atgriešanās taisnība. Un tas ir viss, OK? Tātad jūs ievērosiet dažas atšķirības. Nav semikoli šeit, jo tur bija C. Bet vispār ideja ir ļoti līdzīgs. OK? Arī, Ruby, ir rotaslietas, kuras ir sava veida no Ruby bibliotēkās. Un Sliedes rokturi tos ļoti jauks veids, kā jums. Tātad, ja jūs vēlaties, lai kādā bibliotēkā, ka Vai e-pastu, vai arī, ka dara īsziņu sūtīšanu, vai arī, ka tas integrāciju ar Facebook, vai jebkāda veida lieta piemēram, ka jūsu app, tas ir ļoti, ļoti viegli. Izredzes ir, jūs varat atrast kaut ko piemēram, ka internetā. Un viņi vienkārši darīt kaut kā likts, kas gem jūs vēlaties izmantot gem failā. Un tad Rails instalē visu. Jums nav jāuztraucas par kādu no tā, tā ka ir baigi foršs. Arī tur ir daudz, daudz palīdzēt tiešsaistē. Tātad, jūs varat atrast daudz lietas. Ja jums ir kļūda, Jūs varat vienkārši Google to, un tas būs ļoti viegli, lai saņemtu palīdzību. Un tas ir daudz fun-- exactly-- jo jums nav jāuztraucas par zema līmeņa detaļas, ieviešana hash tabulu un kam, lai nākt klajā ar visiem HTTP galvenes, un daudz lietas, un pat daži vēl augstāka līmeņa lietas. Jums nav jāuztraucas par ka Rails. Tas, ka ir ļoti, ļoti labi, lai jums. Un mēs ejam, lai pierādītu, ka konkrētāk ļoti drīz. OK. Tātad mazliet par Ruby vēlreiz. Tātad, tas ir tāpat kā C, kā es teicu. Tā vietā, lai printf, mēs sakām "Liek", kas ir "nodot virkni." Tas liek virkni ar konsoli. Un šajā gadījumā, mēs esam tikai drukāšanas "Hello World". Mums nav nepieciešams iekavās, bet tas ir diezgan daudz līdzīga. Un tad, ja jūs vēlaties kaut ko darīt šeit, piemēram, drukāt ķekars "Smalls" un ķekars "BIGS" brītiņa cilpa, tas ir veids, piemēram C, vai ne? Jums nav params, bet tas ir diezgan daudz to pašu. Iespieduma šeit skaits, x ir vienāds ar tā 1. Un tad bet X ir mazāks nekā 50-- tas ir Ja, tas ir cits. Tas ir diezgan daudz, piemēram, tas, ko redzējāt. Un tad x + = 1 ir tikai palielināšanai, veids kā darīt ++, ka jūs varat darīt C. ​​Bet tas ir diezgan daudz, ko redzējāt C Tā nedrīkst būt pārāk sarežģīta. Bet tas ir jaudīgākas. Tātad ir dažas komandas šeit ka ir noteikti nedaudz jaunāku. Tā, piemēram, "puts." Jūs varat izmantot šo hashtag notācija šeit, lai vienkārši izdrukāt something-- diezgan daudz, piemēram, tas, ko tu darītu, ja % D vai% C vai nedaudz, piemēram, ka. Un jūs faktiski var likt Ja uzreiz pēc paziņojuma. Tāpēc es tikai gribu darīt this-- Ja x ir lielāks nekā 3. Tātad, kāpēc man būtu veikt visu Ja bloks? Es nezinu. Es varu tikai drukāt tas tikai ja x ir vienāds lielāks par 3. Tātad šī ir viena līnija veids kā to izdarīt Ruby. Saraksts Ruby ir kaut kas ļoti daudzpusīga. Tātad jums nav tiešām ir nepieciešams lai ir tikai viena veida. Var būt virkne, un pēc tam daži skaitļi, un neatkarīgi. Un, ja jūs vēlaties pievienot kaut ko sarakstu, Jūs varat izmantot šo notācija tieši šeit. Un, ja jūs vēlaties atkārtot. Diezgan daudz 4each PHP, šeit, jūs ir saraksts un jūs "List.each darīt." Un šis "elem", tas ir tāpat nosaukumu katra elementa ka es esmu nāksies manā sarakstā. Un tad es varu tikai "liek ELEM." Un "liek" diezgan daudz rokturi liekot to you, drukāšanas. Tas nav svarīgi, ja tas ir virkne vai int. Tā dodas uz darbu, ka no jums. Taisnība? Cool. Un tāpat kā PHP, Ruby un HTML arī integrēt ļoti, ļoti labi. Un šeit, tur ir daži HTML ar Ruby tajā. Tātad mums ir ķermeņa tag, piemēram, HTML. Un, ja mēs gribam, lai pārbaudītu ka lietotājs ir, piemēram, pieteicies, mēs varam tikai teikt, sākums Ruby, ja user.logged_in ?, beigas Ruby. Drukāt visu šo lietu, kas ir daži Ruby tajā, kas ir tikai veida, piemēram, ka sintakse PHP, kas izdrukā mainīgs. Pieņemsim izdrukāt user.name. Tātad laipni, Stefanu, iekšpusē HTML div. Un beigās, mums ir "beigas" un Ruby kods, kas nozīmē, ka šis ir mans Ja bloks. OK? Tātad, tas ir tāpat kā bezšuvju integrācija starp Ruby un HTML. Ir arī daudz resursu. Bet, pirms mēs doties tālāk, vai kāds ir kādi jautājumi par Ruby, kaut ko? OK. Ir daudz resursu internetā līdz tryruby.org, Code Academy, ruby-lang.org, kur var mēģināt to uz jūsu pārlūkprogrammā pirms jūs faktiski saka, ak, OK, es esmu gatavojas izmantot Ruby par manu galīgo projektu. Un tā noteikti dod tiem, mēģināt. Visi šie slaidi ir būs pieejami tiešsaistē, lai jūs varat vienkārši lejupielādēt. Un jā? Mērķauditorija: [dzirdams] ko tu tikko parādīja Tika HTML un kods iestiprināta tas šo jēdzienu Model View Kontrolieris? GABRIEL GUIMARAES: Jā. Mēs darīsim, ka sekundē kad mēs parādām savu piemēru, OK? Paldies par jautājumu. Tātad jautājums bija pamatā, ja mēs var parādīt šo integrāciju Ruby HTML modelī Skatīt Controller sistēmu. Tātad ideja par modeli View Controller sistēma tas būtībā filozofija, tāpat kā Stephen parādīja šeit. Un tas nav kaut kas kas tev ir jādara, bet tas ir kaut kas, kas padara Jūsu dzīve tik daudz vienkāršāk. Un Ruby on Rails ir veidota ap šo filozofiju kodu. Tātad, mēs ejam, lai parādītu piemērs ļoti drīz. Tātad Sliedes ir mīlestība. Daudzi cilvēki izmanto to, kā es teicu. Un tas ir patiešām jautri. Jūs guys vajadzētu noteikti pamēģināt. MVC padara visu vienkāršāku. Tātad Model View Controller, dalāmo lietas un liekot vienu personu, per se, vai viena daļa no jūsu pieteikumu darīt katru no dažādu darbu Ka jūs pieteikums ir jādara. Un pavadīja mazāk laika zema līmeņa problēmas. Un ļoti populāri tiesības tagad. Mums ir Rails 4.0, kas ir jauna versija. Un tas nāk ar daudz cool stuff. Vēl viens jautājums. Mērķauditorija: Vēl viens jautājums. Ruby on Rails, salīdzinot Ruby on Rails Grails. GABRIEL GUIMARAES: OK. Jautājums bija, Ruby on Rails, salīdzinot Ruby-- AUDITORIJA: Grails. Ruby? GABRIEL GUIMARAES: Jā. Tātad Ruby ir valoda. AUDITORIJA: Nē. Es esmu jautā Jums salīdzināt valodu un sistēma, Ruby on Rails, ar citu tautas valoda framework-- Grails-- ar Ruby on Rails. GABRIEL GUIMARAES: OK. Piedodiet. Jautājums bija, salīdzināt Ruby un Ruby on Rails uz citu sistēmu un another-- AUDITORIJA: Ruby. Tas ir OK. Ja jūs nezināt par to, tas ir jauki. GABRIEL GUIMARAES: Tāpat, ko es saprotu, ir that-- Mērķauditorija: Ir vēl viens ietvars sauc Grails. GABRIEL GUIMARAES: Ak, Grails. Es nekad nav dzirdējuši par to. Piedodiet. Es nekad neesmu dzirdējis par Groovy on Rails. Piedodiet. Mērķauditorija: Tas ir daudz labāk integrēta ar Java. GABRIEL GUIMARAES: es redzu. Mērķauditorija: Es esmu tikai ziņkārīgs par dažiem cilvēkiem, es zinu like-- GABRIEL GUIMARAES: Nē, es nekad dzirdējuši par šo vienu, diemžēl. Grails. Mērķauditorija: Un daži cilvēki protams, tāpat kā Ruby on Rails. GABRIEL GUIMARAES: Es esmu Lietoti Ruby on Rails daudz. Esmu izmantojis kādu Django ar Python, kā es teicu. Esmu izmantojis kādu Laravel. Bet man nebija izmantoti Groovy on Rails. Piedodiet. Un tas ir ļoti populārs tagad ar Rails 4.0. Tāpat kā, daži sīkumi, ka Rails tas jums, piemēram, ir jums ir daudz CSS failus un daudz JavaScript failus. Un jūs varat rīkoties, kā atsevišķi un viss. Bet tad tas automatically-- kad jūs sūtiet savu kodu ar ražošanu, tas automātiski apkopo tos visus vienā failā kas ir minified bez jebkāda telpas, lai tas aizņem mazāk vietas jūsu pieteikumu, lai ka jūs varat patiešām mērogu lietas daudz. Tieši tāpēc tik lieli uzņēmumi piemēram, Twitter un GitHub izmanto Rails, jo tas viss kas jums, kas ir patiešām foršs. Viena lieta, ka ir ļoti, ļoti, ļoti biedējošu cilvēkiem, ieskaitot mani, kuri cenšas strādāt ar sistēmu sākumā, ir ka tad, kad jūs sākat veic pieteikumu, jūs gatavojas redzēt ķekars failus. Tāpat kā, ja jūs izveidojat Sliedes Jauns, manu pieteikumu, jūs gatavojas redzēt visus šos folders-- app, bin, config, db, pārliecinamies, log, sabiedrību. Tāpat, daudz un daudz sīkumi. Un pirmo reizi es redzēja, ka man bija, piemēram, Labi, man nav ne jausmas, kas notiek tālāk. Es tikai gribu, lai radītu mājas lapa ar "Sveiki, pasaule," un tas dod man, tāpat, 100 miljardi dažādas lapas. Es nezinu, kas notiek. Tāpēc, lūdzu, nevajag pārāk nebiedē, ka. Ideja ir tāda, ka tā faktiski ir puse no mājas tur jums jau. Tā ir visa ietvars jums jau. Tas ir iemesls, kāpēc ir tik daudz failu. Bet jauka lieta ir tā, ka to atdala viņiem visiem ir ļoti labi. Izredzes ir jums nav jāuztraucas par lielāko daļu no šīm mapēm. Vissvarīgākais, es teiktu, ir app mape, kur jūsu app faktiski dzīvo. Tātad config, jūs gatavojas ir konfigurēt daži sīkumi, piemēram, datu bāzes un lietām, piemēram kāda veida datu bāzi, jūs izmantojat. Bet citi nav, tāpat kā lielākā daļa Jūsu darbs tiks darīts app. Tātad app, jums ir aktīvi, kontrolieri, palīgi, sūtītājiem, modeļi, viedokļus. Tātad šeit, jūs sākat redzēt, ka kontrolieri, modeļi, un viedokļi nāk stājas play. Sūtītājiem ir tikai tad, ja jūs vēlaties nosūtīt e-pastus. Palīgi ja vēlaties izveidot dažas funkcijas ka jūs izmantojat daudz skatā. Tātad jūs viņus palīgiem. Un aktīvi būtībā visu attēli, visu savu CSS, visiem jūsu JavaScript, un, piemēram, tiem veidiem lietas, kas tiek nosūtīti klientam. Un viss, kas ir uzņēmuma aktīvos, ka es teicu iepriekš, kļūst minified. Tas ir apkopoti. Un jums nav īsti jāuztraucas par ka tad, kad tā iet uz ražošanas kodu. Cool. Tagad Zack gatavojas nākt, un viņš ir darīsim piemērs Twitter50. Mērķauditorija: Woo-hoo! ZACK CHAUVIN: satriecošs. Tāpēc man bija iespēja strādāt ar Ruby on Rails šovasar. Tas ir pārsteidzošs sistēma. Es esmu ļoti daļējs to. Un es ņemšu tikai parādīs mazliet piemērs tam, ko tas varētu izskatīties. Lēkt pār Chrome. Tātad šis ir piemērs ļoti vienkāršs Ruby on Rails application-- kaut ko piemēram, tas ir kaut kas ka Ruby tiešām izceļas that-- tieši tur, kur jūsu modeļi ir ļoti labi definēta. Šajā piemērā, jūs redzēsiet divi dažādi modeļi, kas ir, ka mums ir lietotāji un mums ir tweets. Tātad šī ir Twitter50, Harvard paša Twitter. Kā jūs varat redzēt, es esmu pieteicies kāzack. Un es esmu spējīgs izdarīt jaunus tweets. Tāpēc es think-- "Šis ir" - žēl? Mērķauditorija: [dzirdams]. ZACK CHAUVIN: Ak, OK. Nepieciešams, lai apturētu šo serveri. Excellent. Tāpēc šeit mēs esam. Kā jūs varat redzēt, mums ir mūsu Twitter pieteikumu šeit. Un tas ir super viegli, lai sāktu serveri. Mēs vienkārši darīt "sliedes serveri." Lieliski. OK. Paldies par to. Tāpēc tagad mēs esam darbojas. Un mēs sakām: "Šis ir laba seminārs. " Un pieņemsim redzēt, kas notiek. Tātad mēs čivināt par to. Leju apakšā, jūs varat redzēt tagad tur ir vairāk nekā trīs tweets. Tātad mums ir mazliet no lappušu notiek. Un mums ir, ka čivināt. Un es varu arī meklēt, izmantojot manu tweets-- meklēt šo un diviem tie, kas ir vārdu "Šo" viņos parādās. Mēs varam arī izdzēst tweets ar noklikšķinot uz Dzēst pogas maz. Un, protams, es varu tikai izdzēst post kas piederēja man. Jau, mēs gandrīz ir funkcionalitāti Twitter. Tāpat kā, ja jūs domājat par to, Twitter tiešām nav darīt visu, ka daudz. Tā ir lietotājiem, tā ir tweets. Tur ir daži sarežģītāka funkcionalitāti. Bet, kad jūs patiešām nokāpt uz to, tas ir diezgan vienkāršs Ruby on Rails app. Un kaut kas līdzīgs šim, ar laba izpratne par Ruby on Rails, jūs varētu, iespējams, padarīt pēc stundas vai divām. Un tas tiešām nāk atpakaļ uz Ruby mantru, kas ir konvencijas vairāk konfigurāciju. Tātad atpakaļ dienā, cilvēki, jebkurā laikā viņi vēlējās, lai šo tīmekļa vietni, būtu jāsāk no nulles. Labi, es gribu, lai mājas lapā. Padarīsim šo failu un šo failu un šo failu. Ar Ruby on Rails, tur neviens no tā. Jūs sakāt, es gribu jaunu lietotni. Un tāpat kā Gabe mums parādīja, ka rada visu failu struktūru mums. Un mēs vienkārši mainīt maz daļas, kas mums ir. Mēs vienkārši pielāgot, ko ir unikāls par mūsu app. Cool. Tā iet atpakaļ uz mūsu prezentāciju preview-- interesanti. Kur es klāt? Mērķauditorija: Full screen. Augšā pa labi. ZACK CHAUVIN: Excellent. Cool. OK. Tātad pirmkārt, modelis. Stephen bija laba darbs ieskicējot MVC. Un tagad mēs ejam saistīt ka atpakaļ uz Ruby on Rails. Tātad modeli jūs varat veida no domā par kā datubāzes. Jūs esat bijis redzēt to CS50 Finanses, kur modelis veikali informācija par cik daudz krājumu jums ir, vai visiem darījumiem, kas veicāt. Šis ir piemērs līnija, kā jūs būtu iet par padarot jaunu modeli Rails. Tāpēc es gribu lietotāju. Tas nāksies e-pasta, kas ir virkne, un parole, kuru ir arī virkne. Tātad, tas ir tāpat kā those-- es gribu katru rinda manā tabulā lietotāju, lai izskatās, ka. Tiešām laba daļa par Rails ir tas, ka tā padara par nevajadzīgu rakstīt jebkuru SQL diezgan daudz. Cik daudzi no jums, puiši mīlēja rakstot SQL PSET 7? Tieši tā. SQL nav ļoti draudzīga. Un Sliedes tēzes viss prom ar šiem tiešām viegli komandām. Tā, piemēram, ja mēs esam lietotāju, lietotājam ir daudz tweets. Un katrs no tiem tweets pieder lietotājs. Tātad, ja jūs apskatīt šeit, šis ir mūsu paraugs mūsu čivināt. Un viss, kas mums ir ko teikt, ir šī vienotā line-- es esmu čivināt un es pieder lietotājs. Un ar šo vienu līniju un a Mazliet datubāzes konfigurācijas, Sliedes izveido šīs attiecības. Jebkurā laikā, es varu tikai teikt, zack.tweets, piemēram, dod man visu Zack tweets. Nē SQL. Super vienkārši. Atkal, tas ir konvencija vairāk konfigurācija nonāk spēlēt. Jūs varat redzēt mazliet par piemēru Ruby šeit. Tāpat kā deva teica, rakstot Ruby ir veida, piemēram, rakstot angliski. Tas ir ļoti augsta līmeņa valoda, un tas padara to ļoti viegli mums teikt lietas, piemēram, es gribu pārliecinieties, ka šis tweet ir ķermenis. Tās klātbūtne ir taisnība. Un es gribu, lai pārliecinātos, ka tas čivināt, tāpat kā parasto čivināt, ir max garums 140. Tas ir super-intuitīvu, tiešām lieliski valoda. Nākamā mums ir skats. Tātad tas nozīmē HTML un CSS. Un šeit ir piemērs skatu. Tātad Ruby on Rails veida nemanāmi integrē gan Ruby un HTML lai radītu ko mēs gribam lapā. Tātad šis ir piemērs mūsu izkārtojumu. Tātad jūs varat redzēt dažus tagus, kas jums puiši tiek izmantoti, lai, piemēram, HTML, ķermenis, visu, kas labs stuff. Un tieši šeit, lai gan, mēs iekļaut dažus Ruby, sakot, ja tur ir ziņa, lai parādītu, tad parādīt ziņu div. Tāpēc es ne pārāk daudz par to. Bet tas parasti lapa, kas izpaužas padarīti on-- un nav svarīgi, ko lapā jūs gada, šis viens izpaužas sniegti. Tātad, tas ir tas, ko izpaužas iekļauti vienmēr. Cool. Vēl viens view-- piemērs tas ir viens, kur tā izvēlējās visus tweets. Un daži no šo stuff varētu likties diezgan pazīstams. Tā, piemēram, tieši šeit, mēs esam looping, izmantojot katru no tweets, un mēs esam iespiešanu out. Tātad, šeit ir vieta, kur mēs esam izdrukāšana ķermeni. Un, ja tweet ir user-- šeit reāls piemērs nav SQL ir iesaistīts. Es esmu tikai jautā, tas Tweet lietotāja pašreizējais lietotājs? Tad parādiet saiti to dzēst. Tas ir super vienkārši. Kontrolieris. Tātad tas ir, atkal, interfeiss starp modeli un viedokli. Tas ir viens, ka nav grūti strādāt no interacting-- ir starpnieks. Tas slodzes informāciju apskatītu, ko mēs redzēsim sec. Un, lai mijiedarbotos ar modeli, to aicina modelis metodes, kas ir tas, ko Jums puiši ir pazīstams kā funkcijas. Tā, piemēram, tas ir mūsu čivināt kontrolieris. Tas varētu izskatīties nedaudz pagrūti tieši tagad. Bet tas ir tiešām super intuitīvs kad jūs sākat niršanas. Tā, piemēram, mūsu datu bāzē, kas ir kur mēs gribam, lai parādītu visus tweets. Un tā šī līnija būtībā tikai prasa visu tweets. Un tad mēs sāktu abi jaunie tweet-- tik līdzīgi ja viņi vēlas, lai radītu Jaunais tweet šajā lapā. Un tas prasa, ko pašreizējais lietotājs. Un tas ir ļoti līdzīgs padarīt ka ​​jūs redzēju PSET 7, kur tas ir tikai sava veida stāsta view-- tas ir veids, piemēram, iet mainīgos, kas jūs esat dodas uz nepieciešamību šajā nolūkā viedoklim. Un tur ir viss ķekars Dažādu metožu ka this kontrolieris var rīkoties. Bet tiešām, Sliedes dara liels darbs veida dalot tos atšķirīgi darbības, ka jūsu kontrolieris varētu darīt. Vai ir kādi jautājumi par jebkurš no MVC daļām Sliedes? Veida tikai brīze pa. Tātad, jūs guys var pārbaudīt tas, kas par savu. Awesome. Mēs turpināsim iet. Tātad uzstādot Rails. Uzstādot Rails varētu būt, piemēram, viens no vairāk biedējošu daļām no veselām Rails process, diemžēl. Bet protams, visi mums ir apkārt, lai palīdzētu. Un, kad tas ir tur, daudz lielu resursu, kā Gabe minēts, lai iesākumam. Šeit ir saites, kas Jums būs nepieciešams, lai lejupielādēt Rails, lai saņemtu to instalēta jūsu datorā. Acīmredzot, tas ir pieejams gan Windows, gan Mac un par CS50 ierīces. Jautājumi par kaut ko mēs esam teica? Mērķauditorija: Es būtu ieinteresēti, actually-- tāpēc es zinu, ka lejupielādi programmatūra ir lielākais šķērslis. Ja tur ir pietiekami daudz interese, lai būtu lejupielādējot mini sesiju vai kaut ko. ZACK CHAUVIN: Mm-hm. Yeah. Tas varētu būt ļoti noderīga. Ja kāds tiešām gung-ho par izmantojot šo savu projektu vai nākotnē, tad mēs gribētu noteikti ar prieku runāt ar jums par to. Mm-hm. Mērķauditorija: saistītais jautājums to ko es jautāju pirms tam. Attiecībā uz tiem no jums, kuri ir darījuši citiem ietvariem, kas vēl cenšos darīt pats lieta, vieglāk lai izveidotu tīmekļa vietni vai funkcionalitāte, es domāju, ka nekādas jēgas par to, kāpēc mēs būtu on Rails versus Zend vai kādu no citām sistēmām un valodas. ZACK CHAUVIN: Es tikko saka mans $ 0,02 par to. Es mīlu Ruby on Rails. Man bija iespēja strādāt gan PHP un Ruby on Rails. Es daudz labprātāk Ruby on Sliedes jo Ruby. Noteikti, ka ir liela daļa no tā. Tāpat kā, ja tu esi izvēloties savu sistēmu, Jūs arī izvēlēties valodu. Ruby ir super accessible-- es domāju daudz labāk valoda nekā PHP. Bet tas ir sava veida personiskajām vēlmēm. Kā arī, vēl viens apsvērums ir kopiena aiz ietvaros ka jūs strādājat ar. Tieši tagad Ruby on Rails ir patiešām karsts. Ir tonnas atbalstu aiz tā. Jūs post kaut ko par skursteni Pārplūdes par problēmu jūs esat kam Ruby on Rails, un tas atbildēja. Atkal, tas ir atvērtā koda, kas nozīmē, ka tas pastāvīgi tiek mainīta. Ir tonnas cilvēku kas patiešām ir veltīta Lai padarītu šo par tiešām laba sistēma. Tātad, tas ir iemesls, kāpēc es būtu izvēlēties Ruby on Rails. GABRIEL GUIMARAES: Jā. Es teiktu, ka ideja aiz vairumā sistēmām esat gatavojas atrast, kas tur ir ļoti, ļoti līdzīgi, vai ne? Tātad Model View Controller, Tas, ka mūsu Regulatorā gatavojas izskatās kaut tāpat katru this-- funkciju ir, piemēram, viens no jūsu lapas, un tā novirza jūs, un tā inicializē mainīgos. Kas notiek, lai būtu pats par katru sistēma, ka jūs redzēt, kas tur. Un tur būs modeli. Un jūs varat darīt lietas, piemēram, "pieder." Tā vietā, lai dara SQL versiju, jūs vienkārši, piemēram, to, user.tweets, un jūs saņemsiet visu. Katram ir kas. Izņemot Ruby, jums user.tweets, un tad daži sistēmas PHP, jums user.getalltweets KUR mans PHP nav problēma. Tāpat kā, tas ir liels līniju. Tas ir tas pats, bet tas ir liels līniju. Tātad tas ir viens no galvenajiem iemesliem, no manas preferences nekā Ruby. Tas ir tikai man tieši Tas pats citās sistēmās, tā vienkārši ņem mani divreiz tik ilgi, rindas kods. OK? Jebkādi citi jautājumi? ZACK CHAUVIN: Kaut Es pieminēt quickly-- Gabe runāja mazliet par dārgakmeņi. Un tas patiešām great-- es domāju, šis ir sava veida kopīgs visām sistēmām, ka tur ir sava veida gem koncepcijas, kas ir kā mana mazā piemēram, Man ir pieteiktos. Tāpat kā, jūs varat pierakstīties, izrakstītos. Tāpat kā, tas ir patiesībā veida sarežģīts process. Tā bija jārīkojas mazliet bit, lai jūs PSET 7. Bet es vēl joprojām nav pilnībā zināt, cik ieviest pierakstīšanās, pierakstīšanās-out. Un tas ir tāpēc, ka Ruby on Rails ir tonnas dārgakmeņi, kas darīt lietas, piemēram, ka jums. Atkal, konvencija pār konfigurācijā. Ikvienam ir gatavojas darīt Šī zīme-in, parakstīt-out solis. Tātad, kāpēc ne tikai veikt paketi, ko sauc Izstrādāt šajā lietā, kas ir gem. Jūs vienkārši iekļaut to. Un tad ir neliela palīdzība tiešsaistē, ar to, kā to izmantot. Un jums nav jāuztraucas par kaut ko līdzīgu, ka. Bildes uz šiem pievienošana things-- gem par to. Tāpat kā, jebkurā laikā jūs mēģināt darīt nekas jauns, tur ir gem par to. Un jūs veida tikko gabals kopā šos dārgakmeņi un veidot patiešām sarežģīts pieteikums ļoti ātri. Cool. Jebkādi citi jautājumi? STEPHEN turbāns: Woo-hoo. Es nedomāju, ka [nedzirdama]. GABRIEL GUIMARAES: OK. Pateicoties tik daudz, puiši. STEPHEN turbāns: BUH-bye. ZACK CHAUVIN: BUH-bye. STEPHEN turbāns: Woo-hoo. [Aplausi] Yay.