[CHWARAE CERDDORIAETH] STEPHEN twrban: Felly rwy'n Stephen twrban. Dros yr ochr yma, efallai ein bod yn gallu cael rhai pobl i ddeifio i mewn. Rydym wedi Gabriel a Zack. Felly, ar gyfer map ffordd byr ar yr hyn mae hyn yn mynd i edrych fel, Rydw i'n mynd i fod yn gwneud rhywfaint dros ben lefel uchel edrych ar yr hyn MVC yw. Gabe? GABRIEL GUIMARAES: Rydw i'n mynd i siarad am Ruby ac ychydig bach sut rheiliau yn gweithio a sut y gall yn eich helpu i adeiladu ceisiadau ar y we. Zack CHAUVIN: Ac yr wyf i'n mynd i dangos i chi enghraifft benodol o'r modd y i ddefnyddio Rheiliau i adeiladu app super awesome. STEPHEN twrban: Awesome. Melys. Mae pob hawl. Felly, gadewch i ni siarad am MVC. Felly, gadewch i ni fynd at y sleid nesaf, sy'n Byddaf yn gwneud drwy wasgu'r botwm hwn. A gadewch i ni fynd i ddatblygiad next--, Rwy'n hoffi meddwl am fynd i'r CVS, gan fod CVS yn storio a Hefyd, mae gan V yn y canol. Ac felly gadewch i ni ddychmygu i storfa. A gadewch i ni wneud siop hon yn gwerthu dim ond un peth. Felly, rydym yn mynd i gael hwn storio ond yn gwerthu cwpanau coch hyn. A dychmygu eich bod yn cerdded i mewn, ac rydych yn mynd i flaen y siop, a'r person. Ac mae ei enw i yw Vince. A Vince tonnau helo ar chi, meddai hi. A ydych yn sylwi ar un peth am Vince. Felly, pryd bynnag yr ydym yn meddwl am Vince, rydym yn rhaid i feddwl am ddau ansoddeiriau allweddol. Vince yn hardd, ond mae'n dwp. OK. Felly rydych yn gwybod, heb fod unrhyw fai ei hun, yn anffodus, mae'n brydferth. Ef yw ein barn ni. Felly mae ein aelod cast cyntaf yno. Cadwch hynny mewn cof. Yn awr, yr ydych yn gofyn i Vince, byddwch yn mynd, hey Vince. Rwy'n cwsmer. Dywed hi. Fi 'n sylweddol eisiau un o'ch cwpanau coch. A beth mae Vince yn ei ddweud? A oes unrhyw un yn cael unrhyw syniad beth Vince ei ddweud? Rydw i'n mynd i alwad oer. Beth ydych chi'n meddwl Vince yn dweud? GYNULLEIDFA: Mae'n dweud, gallaf ddangos i chi lle y mae, ond ni allaf roi un i chi. STEPHEN twrban: Mae'n dweud, gallaf ddangos i chi lle y mae, ond ni allaf roi un i chi. Hyd yn oed yn waeth. Unrhyw un arall yn cael un arall syniad beth allai Vince yn ei ddweud? GYNULLEIDFA: Mae'n rhaid iddo fynd siec os oes ganddynt unrhyw cwpanau coch. STEPHEN twrban: Nid yw Vince yn ei wneud hyd yn oed yn gwybod ei fod wedi gwirio. Unrhyw beth arall? Felly y dywedasoch, wedi i gadarnhau a oes ganddo cwpanau coch. Fynd yn ei flaen. GYNULLEIDFA: Beth yw cwpan coch? STEPHEN twrban: Beth yw cwpan coch? Beth yw cwpan coch? Vince yn ddryslyd. Felly Vince yn mynd i siarad â ein haelod cast nesaf, Carl. A phan fyddwn yn meddwl am Carl, rydym yn gotta meddwl am ddau adjectives-- mawr ei fod yn rheoli, ond mae'n analluog. Felly Vince goes-- ef yn mynd, beth yw cwpan goch? Nid wyf yn gwybod yr hyn y cwpan coch yn. Mae'n troi o gwmpas, ac mae'n gofyn Carl. Mae'n dweud, Carl, rhywun Gofynnir am baned coch. A allwch chi wneud hynny? A beth mae Carl yn ei ddweud? Gadewch i chyfrif 'ii maes. A oes unrhyw un yn cael unrhyw syniad beth Carl ei ddweud? A byddaf jyst ailadrodd yn ôl i chi. Gwelais symudiad llaw. GYNULLEIDFA: Mae'n dweud rywun arall i gael y cwpanau coch. STEPHEN twrban: Mae'n dweud rhywun arall i gael y cwpan coch. Yn union. A oes gennym syniad pwy allai person hwnnw fod? Mae'n awgrym. Mae'n mynd i ddechrau gyda M. Mob? GYNULLEIDFA: Model. STEPHEN twrban: Y model, ie. Nid yw ei enw yn Model, yn anffodus, oherwydd dyna enw gwirion. Rydym wedi Mitt. A phan fyddwn yn meddwl am Mitt-- na, nid yw hyn yn ddarlun o Zack. Mae'n rhaid i ni feddwl am ddau ansoddeiriau allweddol gyda Mitt. Mae'n gallu, ond mae'n ymostyngol. Felly Mitt yn gwybod yr hyn y mae'n ei wneud, ond mae'n wir na all wneud unrhyw beth. Neu mae'n wir na all benderfynu ar ei ben ei hun. Felly mae gennym Carl. Carl gweiddi ar Mitt. Ac meddai, hey Mitt, mae angen cwpanau coch. Ac Mitt yn mynd at ei storfa cwpan coch. Ef grabs cwpan, ac mae'n rhoi yn ôl. A oes unrhyw un yn cael unrhyw syniad beth fydd yn digwydd wedyn? Yn rhoi y cwpan. Hyd yn hyn Mitt wedi mynd at ei goch cwpan ystorfa, a dynnwyd allan, gwirio 'i off, meddai, Cymerais un cwpan coch. Ac mae'n ei roi i Carl. A oes gennych chi syniad? Beth ydych chi'n meddwl Carl yn ei wneud? GYNULLEIDFA: Carl yn rhoi i Vince. STEPHEN twrban: Carl yn rhoi i Vince. Vince. GYNULLEIDFA: A Vince yn dangos ei fod i [yn anhyglyw]. STEPHEN twrban: Yn union. Felly dyna yn union hynny. Felly Vince yn cymryd y cwpan, Nid yw hyd yn oed yn gwybod beth ydyw, ond mae'n dangos ei fod i'r defnyddiwr. Felly gadewch i ni geisio ail-greu mae hyn yn wir yn fyr. Ac rydym yn gonna angen tri gwirfoddolwr dawel, gan nad ydych guys yn mynd i allu siarad. Er mwyn i mi cydio tri? OK. A phwy hoffech chi fod? GYNULLEIDFA: Byddaf yn Vince. STEPHEN twrban: Vince, OK. Beautiful ond yn dwp. Great. Unrhyw un arall? Rydym yn chwilio am alluog ond yn ymostyngol. Unrhyw un arall eisiau bod yn alluog? GYNULLEIDFA: allwn i fod Carl. STEPHEN twrban: Sweet. Mae gennym Carl. GYNULLEIDFA: Mitt. STEPHEN twrban: Mitt, OK. Ac rydym yn mynd i angen a-- Byddaf yn y cwsmer. Felly dewch ar i fyny, yn dod ar i fyny. Ac mae pawb yn wyneb? Felly, rwy'n mynd i ofyn i Vince i sefyll yn y tu blaen, dim ond gwenu, dim ond gwenu mor llachar ag y bo modd. Ac rydym yn mynd i ofyn i Carl, iawn, pam na gwneud i chi, fel, sefyll i'r dde y tu ôl iddi? Ac Mitt, beth am ei wneud i chi dim ond yn mynd i ffwrdd yn y cefn, ac yna byddaf yn rhoi grŵp chi o gwpanau i hongian allan gyda. Felly, rwy'n cwsmer. Rwy'n dod. Ac yr wyf yn gwneud [Anghlywadwy] Yr wyf dweud, hi, hoffwn cwpan. Perffaith. Felly, Vince Nid oes syniad. Felly beth mae Vince yn ei wneud nesaf? Vince-- Iawn, felly dwi'n mynd i fod yn adrodd yn awr. Vince yn gweiddi ar Carl, cwpan! Beth mae Carl yn ei wneud? Carl yells yn Mitt. Mitt grabs cwpan. Mitt yn rhoi i Carl. Carl dychwelyd i Vince. A Vince yn dangos i'r defnyddiwr. A bod yn uchel, uchel, uchel, yn edrych mor uchel ar MVC. Rydym rannu drwy gael barn ni, yr hyn y y defnyddiwr yn gweld, rheolwr, rhywun pwy sy'n gwneud popeth yn y cefndir ond mewn gwirionedd ni all diweddaru unrhyw beth neu os na allwch wneud unrhyw beth o unrhyw arwyddocâd ac eithrio galw y farn a'r model. Ac yna mae gennym Mitt, y model, sydd yn diweddaru beth bynnag ddata sydd gennym. Felly diolch yn fawr am ein hardd, rheoli, a gwirfoddolwyr sy'n gallu. Ac yr wyf yn meddwl dyna ni. [Cymeradwyaeth] Rwy'n credu Gabe yn mynd i siarad yn awr ar lai gobeithio lefel uchel. GABRIEL GUIMARAES: OK, guys. Nawr, gadewch i ni siarad ychydig bach mwy am Cod ac ynghylch Ruby acha Chledrau ei hun, ac am y modd y mae'n berthnasol i gyd y stori hon MVC. Yn y bôn, Ruby acha Chledrau yn fframwaith. Mwy am hynny mewn eiliad. Ond dim ond i roi i chi ymdeimlad o pwy sy'n ei ddefnyddio, fel, pob un o'r rhain companies-- mawr felly GitHub, Groupon, Twitter-- maen nhw i gyd yn defnyddio Ruby ar Rheiliau fel eu prif fframwaith i weithredu eu gwefan. Felly, rwy'n siŵr bod llawer o bobl wedi defnyddio'r gwefannau hyn yma. Ac mae'r cyfan Ruby acha Chledrau i weithredu y model, y farn, ac mae'r rheolwr ar bob un o'r gwefannau hyn a llawer mwy. OK? Felly, fel y dywedais, Ruby ar Rheiliau yn fframwaith. A gallwch fath o feddwl o fframwaith yn yr ystyr o fel adeiladu tŷ. Felly, os ydych yn mynd i adeiladu yn house-- a gallwch bob amser ddechrau o'r dechrau, dde? Gallwch geisio dod i fyny i ffordd i yn gweld y coed, ac i ddod â'r coed i'r lle, ac i gael y cerrig yn y siâp cywir, ac yna i gyd. Ond mae hynny'n mynd i gymryd yn ôl pob tebyg llawer o flynyddoedd hyd nes y byddwch yn cael yr holl ddeunydd, a'ch bod yn cael popeth at ei gilydd, ac rydych mewn gwirionedd yn dechrau i adeiladu eich tŷ. Felly, mae'n troi allan os byddwch yn dechrau allan gyda fframwaith gyda rhywbeth sy'n eisoes yn fath o waith ar gyfer unrhyw fath o dy yr ydych am ei build-- rhywbeth mae hynny'n gyffredinol iawn, ond eich bod yn gallu Yna, modelu tuag at eich hun goals-- yna gallwch trosoledd pŵer hwn o'r fframweithiau i adeiladu nhw rhywbeth llawer, llawer cyflymach. OK. Felly, mae hyn yn yr un syniad mewn fframwaith ar gyfer cais ar y we neu ar gyfer unrhyw fath o cais, o ran hynny. Chi mewn gwirionedd yn dechrau allan gyda hanner cais eisoes yno yn lle i chi. A thrwy hynny, yr wyf yn golygu eich bod yn cael llawer o ffeiliau sydd eisoes â swyddogaethau, fel llyfrgelloedd, fel ymarferoldeb, a gorchmynion y gallwch redeg er mwyn i wneud eich bywyd yn llawer symlach ac yn haws. OK. Felly, yn yr achos hwn, rydym yn mynd i siarad am Ruby acha Chledrau. Mae llawer o wahanol Fframweithiau i maes 'na. Mae Django ar gyfer Python. Mae fframwaith Zend neu Laravel gyfer PHP. Mae llawer o rai gwahanol. Ruby acha Chledrau yn un newydd 'n bert' n glws. Mae llawer o bobl yn defnyddio hwnnw mewn startups ac y math hwn o amgylchedd. Ac mae rhai o'r rhain yn fawr iawn cwmnïau sy'n Dangosais yma o'r blaen hefyd yn defnyddio Ruby acha Chledrau. Felly, dim ond i roi i chi synnwyr o'r hyn Ruby yn fel, ers i chi guys yn fwy cyfarwydd i, fel, C ac ychydig o PHP yn awr, felly Ruby yn mynd i fod y sy'n cyfateb i eich PHP yn yr ystyr hwn. Nid yw hyn yn Ruby. Mae hyn yn C. iawn? Ond mae hyn yn debyg i'r Swyddogaeth DJBHash fy mod adnabod llawer o bobl a ddefnyddir i gamsillafu PSET. Ac yn Ruby, 'n bert yn debyg iawn yn PHP, byddwch yn Gallai gweithredu hyn gyda dim ond ychydig o linellau o god. Yn hytrach na gorfod poeni am y swyddogaeth hash, orfod poeni am y bwcedi, a hynny i gyd, gallwch ddweud, geiriadur = Hash.net. Ac yna byddwch yn defnyddio math o fel yr un syniad bod PHP wedi. Ac felly mae'n wir. Ac yna os ydych chi am gwirio, felly gwiriwch swyddogaeth fyddai pe geiriadur "foo" Equals hafal wir, yn dychwelyd yn wir. A dyna i gyd, iawn? Felly, byddwch yn sylwi ar ychydig o wahaniaethau. Nid oes unrhyw lled-colon yma, fel yr oedd yno yn C. Ond mae'r syniad cyffredinol yn debyg iawn. OK? Hefyd, yn Ruby, mae yna gemau, a oedd yn yn fath o lyfrgelloedd Ruby. A Rheiliau hwy ymdrin yn yn ffordd neis iawn i chi. Felly os ydych eisiau rhoi mewn rhai llyfrgelloedd sy'n mae negeseuon e-bost, neu fod mae negeseuon testun, neu sy'n gwneud integreiddio gyda Facebook, neu unrhyw fath o beth fel 'na ar gyfer eich app, 'i' iawn, yn hawdd iawn. Groes yn y gallwch chi o hyd i rywbeth fel 'na ar y rhyngrwyd. Ac maent ond yn ei wneud rhywbeth fel Rhowch sy'n drysor ydych am eu defnyddio yn y ffeil drysor. Ac yna Rheiliau gosod popeth. Nid oes rhaid i chi boeni am unrhyw o hynny, felly dyna 'n sylweddol oera. Hefyd, mae digon, digon o gymorth ar-lein. Fel y gallwch ddod o hyd i lawer o bethau. Os oes gennych camgymeriad, gallwch Google ei, ac mae'n mynd i fod yn hawdd iawn i gael help. Ac mae'n llawer o fun-- exactly-- oherwydd eich bod Nid oes rhaid i chi boeni am y lefel isel manylion, gweithredu tablau hash ac yn gorfod dod o hyd i bob un y penawdau HTTP, a llawer o bethau, a hyd yn oed rhai pethau lefel fwy uwch. Nid oes rhaid i chi boeni am hynny yn Rheiliau. Mae'n ei wneud iawn, iawn 'n glws i chi. Ac rydym yn mynd i ddangos bod yn fwy diriaethol yn fuan iawn. OK. Felly ychydig am Ruby eto. Felly mae'n union fel C, fel y dywedais. Yn hytrach na printf, rydym yn dweud "Rhoi," sydd yn "rhoi llinyn." Mae'n rhoi llinyn i'r consol. Ac yn yr achos hwn, rydym yn dim ond argraffu "Helo Byd." Nid oes angen y cromfachau Rydym ni, ond mae'n 'n bert lawer debyg. Ac yna os ydych chi am i wneud rhywbeth fan hyn, fel argraffu criw o "Smalls" ac criw o "bigs" mewn dolen Tra, mae'n fath o fel yn C, dde? Nid oes rhaid i'r params Chi, ond mae'n 'n bert lawer yr un fath. Mae'r bant yma cyfrif, felly x hafal i 1. Ac yna Er bod x yn llai na 50-- hwn yn Os, mae hwn yn Else. Mae'n 'n bert lawer fel beth welsoch chi. Ac yna x + = 1 yn unig incrementing, math o fel gwneud y ++ eich bod yn gallu ei wneud yn C. Ond mae'n eithaf lawer yr hyn a welodd chi yn C. Ni ddylai fod yn rhy gymhleth. Ond mae'n fwy pwerus. Felly, mae yna ychydig o gorchmynion yma sydd yn bendant ychydig yn fwy newydd. Felly, er enghraifft, "yn niwtral yn gosod." Gallwch ddefnyddio hwn nodiant hashtag yma i jyst argraffu something-- 'n bert lawer fel beth fyddech chi'n ei wneud os y% D neu% C neu braidd fel 'na. A gallwch mewn gwirionedd roi Os dde ar ôl y datganiad. Felly, yr wyf yn unig am ei wneud this-- Os yw x yn fwy na 3. Felly byddai pam yr wyf yn rhaid i gwneud cyfan Os bloc? Nid wyf yn gwybod. Gall Fi jyst ag argraffu hwn yn unig os x hafal fwy na 3. Felly mae hyn yn ffordd un llinell o wneud hyn yn Ruby. Mae rhestr yn Ruby yn rhywbeth hyblyg iawn. Felly nid oes gwir angen i chi i gael dim ond un math. Gallwch gael llinyn, ac yna rhai rhifau, a beth bynnag. Ac os ydych chi am atodi rhywbeth i restr, gallwch ddefnyddio hwn nodiant iawn yma. Ac os ydych chi am ailadrodd. 'N bert lawer yr 4each yn PHP, yma, i chi restr ac rydych yn ei wneud "List.each yn ei wneud." Ac mae hyn yn "ELEM," mae hyn yn fel enw pob elfen fy mod i'n mynd i gael yn fy rhestr. Ac yna gallaf jyst "rhoi ELEM." Ac ystyr "rhoi" 'n bert lawer dolenni ei roi i chi, argraffu. Nid oes ots os ei fod yn llinyn neu int. Mae'n mynd i weithio y tu allan i chi. Iawn? Cool. Ac yn union fel PHP, Ruby a HTML hefyd yn integreiddio iawn, iawn 'n glws. A dyma, mae rhywfaint HTML gyda Ruby ynddo. Felly mae gennym tag corff fel yn HTML. Ac os ydym am wirio bod defnyddiwr yn, er enghraifft, wedi mewngofnodi, gallwn ddweud, gan ddechrau o Rhuddem, os user.logged_in ?, diwedd Ruby. Argraffwch y peth cyfan, a oedd yn Mae gan rai Ruby ynddo, sydd ychydig math o fel 'na cystrawen ar gyfer PHP sy'n argraffu allan newidyn. Gadewch i ni argraffu'r user.name. Felly groesawu, Stephen, y tu mewn o div HTML. Ac ar y diwedd, mae gennym "diwedd" a Cod rhuddem, sy'n golygu mae hyn yn fy Os bloc. OK? Felly mae'n union fel di-dor integreiddio rhwng Ruby a HTML. Mae yna hefyd lawer o adnoddau. Ond cyn i ni symud ymlaen, a yw unrhyw un gennych unrhyw gwestiynau am Ruby, unrhyw beth? OK. Mae llawer o adnoddau ar-lein i tryruby.org, Academi Cod, ruby-lang.org, lle gallwch roi cynnig arni allan ar eich porwr cyn i chi mewn gwirionedd dweud, oh, OK, dw i'n mynd i ddefnyddio Ruby ar gyfer fy prosiect terfynol. Ac felly yn bendant yn rhoi rhai cynnig arni. Mae pob un o'r sleidiau hyn yn mynd i fod ar gael ar-lein, er mwyn i chi yn unig eu llwytho i lawr. Ac ie? GYNULLEIDFA: [Anghlywadwy] hyn yr ydych newydd yn dangos Roedd HTML a'r cod hymgorffori i mewn i i syniad hwn o Model View Rheolwr? GABRIEL GUIMARAES: Ie. Byddwn yn gwneud hynny mewn ail pan rydym yn dangos ein enghraifft, OK? Diolch am y cwestiwn. Felly roedd y cwestiwn yn y bôn os ydym Gall ddangos integreiddio hwn o Ruby yn HTML o fewn y Model Gweld fframwaith Rheolwr. Felly, y syniad y Model Fframwaith Gweld Rheolwr yw ei fod yn y bôn yn athroniaeth, yn union fel Dangosodd Stephen yma. Ac nid yw'n rhywbeth bod yn rhaid i chi ei wneud, ond mae'n rhywbeth sy'n gwneud eich bywyd gymaint yn haws. A Ruby acha Chledrau ei adeiladu tua athroniaeth hon o god. Felly, rydym yn mynd i ddangos enghraifft yn fuan iawn. Felly Rheiliau yw cariad. Mae llawer o bobl yn ei ddefnyddio, fel y dywedais. Ac mae'n wir yn hwyl. Dylech guys bendant rhowch gynnig arni. MVC yn gwneud popeth yn symlach. Felly y Model View Rheolwr, y pethau sy'n gwahanu a rhoi un person, fel y cyfryw, neu un rhan o'ch cais i wneud pob un o'r gwahanol swyddi eich bod cais wedi ei wneud. A llai o amser a dreulir ar broblemau lefel isel. Ac yn boblogaidd iawn ar hyn o bryd. Rydym wedi Rheiliau 4.0, sef fersiwn newydd. Ac mae'n dod gyda llawer o bethau oer. Cwestiwn arall. GYNULLEIDFA: Cwestiwn arall. Ruby acha Chledrau yn erbyn Ruby acha Chledrau Grails. GABRIEL GUIMARAES: OK. Y cwestiwn oedd, Ruby acha Chledrau yn erbyn Ruby-- GYNULLEIDFA: Grails. Ruby? GABRIEL GUIMARAES: Yeah. Felly Ruby yw iaith. GYNULLEIDFA: Na Rydw i'n gofyn i chi gymharu iaith a fframwaith, Ruby acha Chledrau, gydag iaith poblogaidd arall framework-- Grails-- gyda Ruby acha Chledrau. GABRIEL GUIMARAES: OK. Mae'n ddrwg gennym. Y cwestiwn oedd, cymharu Rhuddem a Ruby acha Chledrau i fframwaith arall ac another-- GYNULLEIDFA: Ruby. Mae'n iawn. Os nad ydych yn gwybod am y peth, mae hynny'n iawn. GABRIEL GUIMARAES: Fel, hyn yr wyf yn ei ddeall yw that-- GYNULLEIDFA: Mae un arall fframwaith a elwir yn Grails. GABRIEL GUIMARAES: O, Grails. Dwi byth clywed amdano. Mae'n ddrwg gennym. Dwi byth wedi clywed am bwrw'r llawr acha Chledrau. Mae'n ddrwg gennym. GYNULLEIDFA: Mae'n llawer gwell hintegreiddio gyda Java. GABRIEL GUIMARAES: Gwelaf. GYNULLEIDFA: Im 'jyst yn chwilfrydig am rai pobl yr wyf yn gwybod like-- GABRIEL GUIMARAES: Na, yr wyf byth clywed am fod un, yn anffodus. Grails. GYNULLEIDFA: Ac mae rhai pobl yn amlwg fel Ruby acha Chledrau. GABRIEL GUIMARAES: Rwyf wedi defnyddio Ruby acha Chledrau llawer. Rwyf wedi defnyddio rhai Django gyda Python, fel y dywedais. Rwyf wedi defnyddio rhai Laravel. Ond nid wyf wedi defnyddio bwrw'r llawr acha Chledrau. Mae'n ddrwg gennym. Ac mae'n boblogaidd iawn yn awr gyda Rheiliau 4.0. Fel, mae rhai o'r pethau sy'n cledrau yn ei wneud i chi, er enghraifft, yw i chi cael llawer o ffeiliau CSS a llawer o ffeiliau JavaScript. A gallwch eu trin fel ar wahân a phopeth. Ond yna mae'n automatically-- pryd chi anfon eich cod i gynhyrchu, mae'n llunio yn awtomatig nhw i gyd mewn un ffeil unigol sy'n cael ei minified heb unrhyw mannau, fel y mae'n ei gymryd i fyny llai o le yn eich cais, felly y gallwch chi wir raddfa pethau llawer. Dyna pam cwmnïau mawr o'r fath fel Twitter a GitHub yn defnyddio Rheiliau, gan ei fod yn gwneud popeth hynny i chi, sydd yn 'n sylweddol oera. Un peth sydd yn iawn, iawn, yn frawychus iawn i bobl, gan gynnwys fi, sydd yn ceisio gweithio gyda fframwaith ar y dechrau, yn bod pan fyddwch yn dechrau allan cais, rydych chi'n mynd i weld criw o ffeiliau. Fel, pan fyddwch yn creu Rheiliau Newydd, Fy Nghais, rydych chi'n mynd i weld pob un o'r rhain folders-- app, bin, config, db, lib, log, y cyhoedd. Fel, llawer a llawer o bethau. A'r tro cyntaf i mi Gwelodd hynny, yr wyf yn hoffi, OK, nid oes gennyf syniad beth sy'n digwydd. Fi jyst am greu gwefan gyda "Helo, byd," ac mae hyn yn rhoi i mi, fel, 100 biliwn o dudalennau gwahanol. Nid wyf yn gwybod beth sy'n mynd ymlaen. Felly peidiwch â bod yn rhy ddigalon wrth hynny. Y syniad yw ei fod mewn gwirionedd wedi hanner o dŷ yno ar eich cyfer yn barod. Mae ganddo cyfan fframwaith ar gyfer gennych eisoes. Dyna pam mae cymaint o ffeiliau. Ond y peth braf yw ei fod yn yn gwahanu pob un ohonynt iawn 'n glws. Groes yn Nid oes rhaid i chi boeni am y rhan fwyaf o'r ffolderi hyn. Yr un mwyaf pwysig, yr wyf yn Byddai ddweud, yn y ffolder app, lle mae eich app mewn gwirionedd yn byw. Felly mae'r config, rydych chi'n mynd i rhaid i configurate rhai pethau, fel eich cronfa ddata a phethau fel pa fath o gronfa ddata rydych yn ei ddefnyddio. Ond ar wahân i hynny, fel y rhan fwyaf o eich gwaith yn cael ei wneud yn app. Felly, yn app, mae gennych asedau, rheolwyr, cynorthwywyr, defnyddio'r post, modelau, golygfeydd. Felly dyma, byddwch yn dechrau gweld bod rheolwyr, modelau, a golygfeydd yn dod i chwarae. Defnyddio'r post yn unig os ydych yn yn awyddus i anfon negeseuon e-bost. Cynorthwywyr os ydych am creu rhai swyddogaethau eich bod yn defnyddio llawer yn y golwg. Felly rydych yn eu rhoi mewn chynorthwywyr. Ac asedau yn y bôn i gyd eich delweddau, eich holl CSS, eich holl JavaScript, ac fel mathau hynny o bethau sy'n cael eu hanfon at y cleient. A phopeth dyna yn yr asedau, bod y dywedais o'r blaen, yn cael minified. Mae wedi llunio. Ac nid oes rhaid i chi boeni am 'n sylweddol bod pan fydd yn mynd i'r cod cynhyrchu. Cool. Nawr Zack yn mynd i ddod i mewn, ac mae'n mynd i wneud enghraifft o Twitter50. GYNULLEIDFA: Woo Hoo-! Zack CHAUVIN: Awesome. Felly, cefais y cyfle i weithio gyda Ruby acha Chledrau yr haf hwn. Mae'n fframwaith anhygoel. Rwy'n rhannol iawn iddo. A byddaf yn dangos i chi jyst ychydig bach o enghraifft o'r hyn y gallai edrych. Neidio dros i Chrome. Felly mae hwn yn enghraifft o syml iawn Ruby acha Chledrau application-- rywbeth fel hyn yn rhywbeth bod Ruby 'n sylweddol yn rhagori that-- union lle mae eich modelau yn cael eu diffinio'n dda iawn. Yn yr enghraifft hon, byddwch yn gweld dau fodel gwahanol, a oedd yn yw bod gennym i ddefnyddwyr ac mae gennym tweets. Felly mae hyn yn Twitter50, Twitter Harvard ei hun. Fel y gwelwch, dw i'n mewngofnodi felzack. A dwi'n gallu gwneud tweets newydd. Felly yr wyf yn think-- "Mae hwn yn" - mae'n ddrwg gennyf? GYNULLEIDFA: [Anghlywadwy]. Zack CHAUVIN: O, OK. Angen i atal y gweinydd. Ardderchog. Felly dyma ni. Fel y gwelwch, rydym wedi ein Twitter cais yma. Ac mae'n super hawdd cychwyn y gweinydd. Byddwn yn jyst yn gwneud "gweinydd rheiliau." Great. OK. Diolch am hynny. Felly nawr rydym yn rhedeg. A byddwn yn dweud, "Mae hwn yn seminar awesome. " A gadewch i ni weld beth sy'n digwydd. Felly, byddwn yn trydar am y peth. I lawr ar y gwaelod, gallwch weld Erbyn hyn mae mwy na thair tweets. Felly mae gennym ychydig bach o tudaleniad digwydd. Ac mae gennym y tweet. A gallaf hefyd chwilio trwy fy chwilio tweets-- ar gyfer hyn ac mae'r ddau rhai sydd yn cael y gair "Hyn yn" ynddynt arddangos i fyny. Gallwn hefyd dileu tweets gan glicio ar ychydig y botwm Dileu. Ac yn amlwg, ni allaf ond dileu y swydd oedd yn perthyn i mi. Eisoes, yr ydym bron yn cael y ymarferoldeb Twitter. Fel, pan fyddwch yn meddwl am y peth, Twitter ddim wir yn gwneud i gyd bod llawer. Mae ganddo defnyddwyr, mae wedi tweets. Mae rhywfaint o functionality yn fwy cymhleth. Ond pan fyddwch yn wir yn cael i lawr iddo, mae'n eithaf Ruby acha Chledrau app syml. Ac mae rhywbeth fel hyn, gyda dealltwriaeth dda o Ruby acha Chledrau, fe allech chi yn ôl pob tebyg gwneud mewn awr neu ddwy. Ac mae hynny'n wir yn dod yn ôl at y mantra Ruby, sef confensiwn dros cyfluniad. Felly, yn ôl yn y dydd, mae pobl, unrhyw bryd yr oeddent am ei wneud y wefan hon, Byddai'n rhaid i ddechrau o'r newydd. OK, yr wyf am wneud gwefan. Gadewch i ni wneud y ffeil a ffeil hon ac mae hyn yn ffeil. Gyda Ruby acha Chledrau, mae dim o hynny. Yr ydych yn dweud, yr wyf am gael app newydd. Ac yn union fel Gabe dangos i ni, mae'n creu strwythur ffeil cyfan i ni. Ac rydym yn unig yn newid y rhannau bach y mae angen i ni. Rydym yn unig yn addasu yr hyn y sy'n unigryw am ein app. Cool. Felly, mynd yn ôl at ein cyflwyniad preview-- diddorol. Ble ydw i'n cyflwyno? GYNULLEIDFA: sgrîn lawn. Dde uchaf. Zack CHAUVIN: Ardderchog. Cool. OK. Felly, yn gyntaf oll, y model. Gwnaeth Stephen yn anhygoel gwaith o amlinellu MVC. Ac yn awr rydym yn mynd i ymwneud hwnnw yn ôl i Ruby acha Chledrau. Felly mae'r model y gallwch math o yn meddwl am fel y gronfa ddata. Rydych chi wedi bod yn gweld hyn yn CS50 Cyllid, lle mae'r siopau model mae'r wybodaeth am faint o stociau sydd gennych, neu'r holl drafodion a wnaethoch. Mae hwn yn enghraifft o llinell o sut y byddech fynd ati i wneud model newydd yn Rheiliau. Felly, yr wyf am ddefnyddiwr. Mae'n mynd i gael e-bost, sy'n llinyn, a chyfrinair, a oedd yn yw'r llinyn hefyd. Felly mae fel those-- Rwyf am bob rhes yn fy tabl o ddefnyddwyr i edrych fel 'na. Mae rhan wirioneddol anhygoel am Rheiliau yw ei fod yn yn ei gwneud yn ddiangen i ysgrifennu unrhyw SQL 'n bert lawer. Faint ohonoch guys caru ysgrifennu SQL mewn PSET 7? Yn union. Nid yw SQL yn iawn gyfeillgar i'r defnyddiwr. A Rheiliau crynodebau cyfan sydd i ffwrdd gyda'r gorchmynion hawdd iawn. Felly, er enghraifft, os oes gennym defnyddiwr, defnyddiwr mae llawer o tweets. Ac mae pob un o'r rhai a tweets yn perthyn i ddefnyddiwr. Felly, os ydych yn edrych fan hyn, mae hyn yn yw ein model ar gyfer ein tweet. A'r holl rhaid i ni ddweud yw mae hyn line-- sengl rwy'n tweet ac yr wyf yn perthyn i ddefnyddiwr. A chyda hynny llinell sengl a ychydig bach o cyfluniad gronfa ddata, Rheiliau yn sefydlu y berthynas hon. Anytime, gallaf ddweud, zack.tweets, fel, roi i mi yr holl tweets Zack. Dim SQL. Super hawdd. Unwaith eto, dyna confensiwn dros cyfluniad yn dod i chwarae. Gallwch weld ychydig bach o enghraifft o Ruby yma. Fel Rhoddodd ddywedodd, ysgrifennu Ruby yn math o fel ysgrifennu Saesneg. Mae'n iaith lefel uchel iawn, ac mae'n ei gwneud yn hawdd iawn i ni yn dweud pethau fel, yr wyf am gwneud yn siŵr bod tweet hyn yn cael corff. Mae ei bresenoldeb yn wir. Ac yr wyf am wneud yn siŵr bod hyn yn tweet, yn union fel Twitter arferol, Mae gan hyd max o 140. Mae'n super-sythweledol, mae iaith yn wirioneddol wych. Nesaf i fyny gennym y farn. Felly, mae hyn yn golygu HTML a CSS. A dyma enghraifft o farn. Felly Ruby acha Chledrau math o ddi-dor integreiddio yn Ruby a HTML er mwyn cynhyrchu yr hyn yr ydym ei eisiau ar y dudalen. Felly, mae hyn yn enghraifft o'n cynllun. Fel y gallwch weld rhai tagiau sy'n eich guys cael eu defnyddio i, fel HTML, corff, holl bethau da. Ac i'r dde i mewn yma, fodd bynnag, rydym yn ymgorffori rhai Ruby drwy ddweud, os oes neges i arddangos, Yna, yn dangos y neges mewn div. Felly, ni fyddaf yn cael gormod i mewn i hynny. Ond mae hyn yn gyffredinol dudalen sy'n cael ei rendro on-- ac ni waeth pa dudalen rydych yn ymlaen, yr un yma yn cael ei rendro. Felly mae hyn yn yr hyn sy'n cael ei gynnwys bob amser. Cool. Enghraifft arall o view-- hwn yw mae'r un lle y dewisodd yr holl tweets. Ac mae rhai o'r pethau hyn Gallai edrych yn bert cyfarwydd. Felly, er enghraifft, dde yma, rydym yn dolennu drwy bob un o'r tweets, ac rydym yn argraffu nhw allan. Felly dyma lle rydym yn argraffu allan i'r corff. Ac os user-- y tweet yn dyma enghraifft go iawn o ddim SQL yn cymryd rhan. Im 'jyst yn gofyn, a yw hyn defnyddiwr tweet yn defnyddiwr ar hyn o bryd? Yna dangos cysylltiad ei ddileu. Mae'n super syml. Y rheolwr. Felly mae hyn yn, unwaith eto, y rhyngwyneb rhwng y model a'r olygfa. Mae'n yr un sy'n gwneud y gwaith caled o interacting-- sef y middleman. Mae'n llwythi gwybodaeth ar gyfer y gweld, a byddwn yn gweld mewn sec. Ac er mwyn rhyngweithio â'r model, mae'n yn galw dulliau enghreifftiol, sef yr hyn y rydych guys yn gyfarwydd â swyddogaethau. Felly, er enghraifft, mae hyn yn rheolwr ein tweet yn. Gallai fod yn edrych ychydig yn frawychus ar hyn o bryd. Ond mae'n mewn gwirionedd yn super 'n athrylithgar unwaith y byddwch yn dechrau deifio i mewn. Felly, er enghraifft, yn ein mynegai, mae hynny'n lle rydym yn awyddus i ddangos yr holl tweets. Ac felly y llinell hon yn y bôn dim ond gofyn am yr holl tweets. Ac yna rydym yn ymgychwyn y ddau y tweet-- newydd felly fel os ydynt am greu tweet newydd ar y dudalen honno. Ac mae'n gofyn beth y defnyddiwr presennol yw. Ac mae hyn yn debyg iawn i'r gwneud eich bod yn gweld yn PSET 7, lle 'i' jyst fath o ddweud y view-- mae'n fath o, fel, gan fynd heibio i'r newidynnau eich bod yn mynd i angen yn y golwg ar yr olygfa. Ac mae criw cyfan dulliau o wahanol y gall y rheolwr tweet hwn trin. Ond mewn gwirionedd, Rheiliau yn ei wneud gwaith gwych o'r math ohonynt yn rhannu i mewn i'r gwahanol camau y gallai eich rheolwr yn ei wneud. A oes unrhyw gwestiynau am unrhyw un o rannau MVC y Rheiliau? Fath o ddim ond awel heibio. Er mwyn i chi guys wirio 'ii maes ar eich pen eich hun. Awesome. Byddwn yn dal i fynd. Felly gosod Rheiliau. Gosod Rheiliau allai fod, fel, un o'r rhannau mwy brawychus o'r Rheiliau cyfan proses, yn anffodus. Ond yn amlwg, i gyd ni o gwmpas i helpu. Ac unwaith ei fod ar yno, llawer o adnoddau gwych, fel y crybwyllwyd Gabe, er dechrau arni. Dyma'r cysylltiadau sy'n bydd eu hangen arnoch er mwyn i lawrlwytho Rheiliau i'w gael osod ar eich peiriant. Yn amlwg, mae ar gael ar gyfer y ddau Ffenestri a Mac ac ar gyfer y peiriant CS50. Cwestiynau am unrhyw beth yr ydym wedi'i ddweud? GYNULLEIDFA: Byddwn yn sydd â diddordeb mewn, actually-- felly yr wyf yn gwybod bod lawrlwytho meddalwedd yw'r rhwystr mwyaf. Os oes digon o ddiddordeb i gael llwytho i lawr sesiwn mini neu rywbeth. Zack CHAUVIN: Mm-EM. Yeah. Gallai hynny fod yn wirioneddol ddefnyddiol. Os oes unrhyw un 'n sylweddol gung-ho am defnyddio hwn ar gyfer eu prosiect neu yn y dyfodol, yna byddem yn bendant yn hapus i siarad â chi am hynny. Mm-EM. GYNULLEIDFA: A cwestiwn cysylltiedig i hyn yr wyf yn gofyn o'r blaen. I'r rhai ohonoch sydd wedi gwneud fframweithiau eraill sy'n dal ceisio gwneud yr un peth beth, yn ei gwneud yn haws i adeiladu gwefan neu ymarferoldeb, yr wyf yn meddwl bod unrhyw synnwyr o pam y byddem yn acha Chledrau yn erbyn Zend neu rai o'r fframweithiau eraill ac ieithoedd. Zack CHAUVIN: 'n annhymerus' jyst yn dweud fy $ 0.02 am hynny. Rwyf wrth fy modd Ruby acha Chledrau. Rwyf wedi cael y cyfle i weithio yn PHP a Ruby acha Chledrau. Mae'n well Ruby Rwy'n llawer ar Rheiliau oherwydd Ruby. Yn bendant, mae hynny'n rhan fawr ohono. Fel, pan fyddwch yn dewis eich fframwaith, byddwch hefyd yn dewis eich iaith. Ruby yn super accessible-- dwi'n meddwl iaith llawer gwell na PHP. Ond dyna fath o ddewis personol. Yn ogystal, ystyriaeth arall yw y gymuned y tu ôl i'r fframwaith eich bod yn gweithio gyda. Ar hyn o bryd Ruby acha Chledrau yn wirioneddol boeth. Mae tunnell o gefnogaeth y tu ôl iddo. Rydych yn postio rhywbeth ar Stack Gorlif am broblem rydych yn chael yn Ruby acha Chledrau, ac mae'n hateb. Unwaith eto, mae'n ffynhonnell agored, sy'n golygu ei fod yn cael ei newid yn gyson. Mae tunnell o bobl sydd yn ymroddedig mewn gwirionedd er mwyn gwneud hyn fframwaith yn wir yn awesome. Felly dyna pam yr wyf byddai dewiswch Ruby acha Chledrau. GABRIEL GUIMARAES: Yeah. Byddwn yn dweud bod y syniad y tu ôl i rhan fwyaf o fframweithiau eich bod yn mynd i gael gwybod nad oes iawn, yn debyg iawn, dde? Felly y Model View Rheolwr, y ffaith fod ein rheolwr yn yn mynd i edrych fel rhywbeth fel this-- pob un o'r swyddogaethau yn debyg i un o'ch tudalennau, ac mae'n ail-gyfeiriadau i chi, ac mae'n initializes y newidynnau. Mae hynny'n mynd i fod yr un peth ar gyfer pob fframwaith eich bod yn gweld allan yno. Ac mae mynd i fod y model. A allwch chi wneud pethau fel, "yn perthyn i." Felly, yn hytrach na gwneud y fersiwn SQL, 'ch jyst, fel, yn ei wneud, user.tweets, a byddwch yn cael popeth. Mae pawb wedi hynny. Ac eithrio mewn Ruby, byddwch yn gwneud user.tweets, ac yna mae rhai fframweithiau yn PHP, chi ei wneud user.getalltweets BLE nad yw fy PHP yn broblem. Fel, 'i' yn llinell mawr. Mae yr un peth, ond mae'n llinell mawr. Felly dyna un o'r prif resymau fy hoffterau dros Ruby. Mae wedi dim ond i ei wneud yn union yr un peth mewn fframweithiau eraill, 'i jyst yn cymryd i mi ddwywaith llinellau ar yr amod o god. OK? Unrhyw gwestiynau eraill? Zack CHAUVIN: Rhywbeth 'N annhymerus' yn sôn quickly-- Gabe Soniodd ychydig am gemau. Ac mae hynny'n wir yn great-- wyf yn ei olygu, mae hyn yn yn fath o gyffredin i bob fframweithiau, fod yna fath o gysyniad drysor, sydd fel yn fy esiampl bach, Rwyf wedi mewngofnodi. Fel, gallwch lofnodi i mewn, arwyddo allan. Fel, dyna mewn gwirionedd fath o broses gymhleth. Cafodd ei drin ychydig yn bit i chi yn PSET 7. Ond yr wyf yn dal ddim yn gwybod yn llawn sut i weithredu arwydd-mewn, arwydd-allan. A dyna oherwydd bod Mae gan Ruby acha Chledrau tunnell o gemau sy'n gwneud pethau fel 'na i chi. Unwaith eto, confensiwn dros cyfluniad. Mae pawb yn mynd i fod yn ei wneud arwydd-yn hyn, cam arwyddo allan. Felly beth am dim ond gwneud pecyn, o'r enw Dyfeisio yn yr achos hwn, sydd yn drysor. Rydych yn unig ei gynnwys. Ac yna mae rhywfaint o help ar-lein gyda sut i'w ddefnyddio. A does dim rhaid i chi boeni am unrhyw beth fel 'na. Atodi lluniau i'r rhain things-- trysor ar gyfer hynny. Fel, unrhyw adeg rydych yn ceisio ei wneud unrhyw beth newydd, mae 'na drysor ar gyfer hynny. A ydych yn fath o yn unig darnau at ei gilydd gemau hyn ac yn adeiladu wirioneddol gymhleth cais yn gyflym iawn. Cool. Unrhyw gwestiynau eraill? STEPHEN twrban: Woo Hoo-. Nid wyf yn credu [Anghlywadwy]. GABRIEL GUIMARAES: OK. Diolch cymaint, guys. STEPHEN twrban: Buh-bye. Zack CHAUVIN: Buh-bye. STEPHEN twrban: Woo Hoo-. [Cymeradwyaeth] Yay.