>> Gabriel Guimarães: Ito ay CS50.
Maligayang pagdating sa kahanga-hangang Web Apps may Ruby sa daang-bakal.
Kaya para sa sinuman kung sino ang interesado sa web mga website pagpapaunlad at paggawa, web
application, Ruby sa daang-bakal ay ito kamangha-manghang mga tool na Twitter, GitHub,
Groupon, at lahat ng uri ng talagang maganda, at malaki, mga web application na ginagamit sa
nakalipas na ilang mga taon.
At ito ay isang talagang, talagang cool na tampok na ito, ang isang cool na tool,
dahil ito ang bago.
Kaya mayroon itong lahat ng mga bagong malakas teknolohiya nakasama sa isa
framework na tumutulong sa mga haharapin mo sa lahat ng uri ng mga kamangha-manghang mga bagay.
>> Ngunit kung ano ay isang framework?
Kaya isang framework ay isa lamang isang bagay na lumilikha -
kapag nagsimula ka ng isang website, kung sinimulan mo mula sa simula, tulad ng binuksan mo ang
gedit doon, at gusto mong code lahat ng iyong HTML, at code sa lahat ng iyong
PHP, ang lahat ng iyong CSS, ang lahat ng bagay mula sa simula -
na lamang ang pagpunta sa maging ng maraming trabaho.
At isang framework Literal na nagbibigay sa iyo ng kalahati ng website tapos na.
Kaya magsimula sa kalahati ng isang website na may mayroong lahat ng bagay para sa iyo.
Tulad ng mga koneksyon sa database, at lahat ng mga uri ng mga bagay na mayroon kang mag-alala
tungkol sa kung gumagawa ka ng ito mula sa simula, hindi mo kailangang mag-alala tungkol sa mga
mga detalye ng mababang antas.
>> Ngunit ngayon kami ay pagpunta sa i-export ang isa sa ang mga website na ang presman ng
klase ng 2017 ay marahil pamilyar.
Kaya website na ito ay ang website na ako ginawa para sa aming klase sa ibabaw ng tag-init.
Ito ay isang website kung saan ang mga mag-aaral ng ang klase ng 2017 ay maaaring mag-log in at
makipag-ugnayan sa isa't isa.
At pagkatapos ay ito ay isang mapa -
lahat, kung saan ang mga tao ay.
At nagkaroon kami ng isang laro ng libro, isang kanta laro kung saan nakita namin ang mga kanta ng mga tao at
aklat ng mga tao.
Ano gusto nilang basahin, kung ano gusto nila upang makinig sa.
At ang pinaka-kagiliw-giliw na bahagi nito ay na ito literal na kinuha sa akin tatlong oras
sa code ng lahat ng ito.
Dahil kung nagkaroon kong gawin ang lahat mula sa sa simula, tulad ng pagbubukas up gedit, ito
Gusto marahil kinuha ako 20, 30 na oras.
Ngunit sa Ruby sa daang-bakal, dahil ang lahat ng bagay ay nag-set up para sa akin,
ito kinuha lang ako ng tatlo o apat na oras, o ang isang bagay tulad na.
>> Kaya kung ano ang Ruby sa daang-bakal.
Ruby sa daang-bakal, muli bilang namin na sinabi, ay isang framework.
Ito ay isang larawan ng isang framework.
Kaya ka pagpunta upang simulan ang pagbuo ng isang bahay, ikaw ay mayroon ng kalahati ng
tapos na bahay.
Iyan ang framework.
At Ruby sa daang-bakal ay eksakto katulad na.
At dapat mong isipin ito bilang, simulan mo isang website, simulan mo ang iyong web
application, kami ay mayroon ng kalahati ng ito tapos doon.
Ngunit una sa lahat, ano ang Ruby?
Ruby sa daang-bakal ay gumagamit ng view ng modelo controller, na kung saan ay tularan, na
ay isang talagang kawili-wiling -
at lahat ng mga application ngayong mga araw na ito gamitin ang isang bagay tulad na.
Ang ideya ng paghihiwalay ng mga bagay sa tatlong bahagi, ang modelo, ang view, at
ang controller.
Kami ay pagpunta sa makipag-usap ng kaunti higit pa tungkol sa na mamaya.
>> Una, ano ang Ruby?
Kaya ito ay Ruby.
At ito ay ang simbolo ng wika na tinatawag na Ruby.
Ruby ay isa sa mga newish kahulugan wika, kaya script.
Ito ay isang wika na hindi pinagsama-sama tulad ng C. Ito ay pinagsama-sama sa run.
Kaya na maganda dahil, tulad ng PHP, halimbawa ay kahulugan din, ay
hindi pinagsama-sama.
Iyan ay mahusay na dahil portable nito.
Kaya pumasa ka lamang ang iyong code mula sa isa machine sa isa pang.
Mula sa isang Linux machine, sa isang Windows machine, sa isang Mac o Apple machine, o
ang isang bagay tulad na.
At hindi mo kailangang mag-alala tungkol sa mga detalye tungkol sa bawat isa sa mga tiyak na
mga operating system.
Ang nangyayari Ito upang gumana sa lahat ng dako.
>> At Ruby ay isang wika na -
marahil tandaan ito sa iyo guys.
Ang mga taong gamitin ang hash ipinatupad sa C para sa hash talahanayan
huling linggo at nagkaroon ng lahat ng uri ng segmentation faults.
At pagkatapos ay mga bagay na nag-aalala tungkol sa kung ang na string i doon, ang string i
dito, ay talagang Maliit na titik o sa malaki, o mga uri ng nakakaligalig
mga detalye ng mababang antas.
Well sa Ruby, kung gusto mong ipatupad isang hash talahanayan, ito ay eksaktong kung paano mo
lumikha ng hash table.
Sasabihin mo, diksyonaryo, iyon ang pangalan ng aking mga variable, = "Hash.new".
At pagkatapos diksyunaryo ["foo"], at kapag ako ay pagdaragdag ng foo sa aking hash talahanayan, ako
lamang sinasabi foo ay doon.
>> At pagkatapos ay kung Nais kong suriin kung foo noon ay doon, lamang ako sabihin kung
diksiyunaryo ["foo"] == totoo return totoo.
Whoa, at iyon ang iyong talahanayan ng hash.
Iyan ang pagpapatupad ng hash talahanayan sa Ruby.
Kaya naisin lahat ng tao maaari silang magkaroon ginagamit ang isang bagay tulad Ruby para sa huling
pset linggong ito, tama?
Mayroon kaming lahat ng uri ng mga dahilan upang gusto gumamit ng isang wika tulad ng Ruby.
Ruby May hiyas.
Mamahaling bato ay isang pangalan para sa isang uri ng library sa Ruby.
>> Kaya lahat ng mga uri ng kawili-wiling tampok na maaari kang magkaroon, halimbawa, kung ako
nais na isama ang aking application.
Iyon Harvard 2017 application ay integrated sa Facebook.
Kaya maaari mong mag-log in, sa pamamagitan ng Facebook, upang ang app.
Kaya't kung ikaw ay pagpunta sa gawin iyon, hindi mo gusto kailangang mag-alala tungkol sa pagpapadala ng ilang mga
Kahilingan ng HTTP sa Facebook, at naghihintay para sa mga tugon, at pagpilit na ang
tugon, at blah, blah, blah.
I-download mo lang ang mga hiyas na ang lahat na para sa iyo.
At pagkatapos ay hindi mo kailangang mag-alala tungkol sa lahat ng iyon.
>> At pagkatapos ng maraming tulong online, siyempre.
Maraming, maraming, maraming mga website na ay pumunta upang matulungan kang parehong may
Ruby at may daang-bakal.
At ito ay maraming masaya sa code.
Mismong dahil maaari mong ihinto nababahala tungkol sa mga hindi kaya masaya mga problema.
Tulad ng kung ang isang bagay ay maliliit na titik o mga malaking titik, at pagkatapos ay ito bakit
magbibigay sa iyo ng segmentation fault, at Maaari mo ba talagang sumisid sa pinakadulo
kagiliw-giliw na mga bagay-bagay.
Upang sumisid sa talagang cool na mga problema.
>> Kaya Ruby ay tulad lang sa C sa isang katuturan.
Kaya ito ay hindi pagpunta sa maging na malaki ng isang jump talaga.
Kaya naglalagay, na aming i-print app sa Ruby.
Sa tingin ko maaari kang gumamit ng masyadong naka-print, ngunit naglalagay ay kung ano ang ginagamit ng lahat.
Kaya lang naglalagay ng "Hello World".
Maaari mong, o maaaring hindi mo, mayroon ang panaklong libid
"Hello World" doon.
Maaari mo lamang piliin kung o hindi na gamitin iyon.
At pagkatapos ay x = "1".
Ang isang habang loop mukhang maganda ang parehong magkano.
Ito lamang may mas kaunting syntax.
Ito ay uri ng cleaner kaunti.
At pagkatapos ay kung x> 25 Inilalagay "Big!" at iba pa naglalagay ng "Maliit na ...".
At ito ay uri ng C sa na kahulugan.
>> Kaya't kung tiningnan mo ang iyon, maaari kang marahil maunawaan diskarte
ang lahat ng bagay na nangyayari.
Ngunit ito ay mas malakas na.
Higit pang makapangyarihang dahil, higit sa na, Maaari ko itong bagay ang hindi na -
ang ilang mga uri ng hackage kaunti.
Sa C hindi mo maaaring gawin sa gawin lamang sa isang linya.
Halimbawa, naglalagay "Ako # {x}".
Ito ay lamang na syntax para ilagay ang halaga ng x dito, at huwag i-print ang
karakter x.
Sa C na kayo ay nagkaroon na gawin ang porsiyento d, at pagkatapos ay ilagay up ng variable x pagkatapos ng
kuwit dito, o isang bagay tulad na.
>> At sa Ruby mayroong isang shorthand para lang ginagawa iyon.
At naglalagay ito, kung x> 3, kaya maaari kang ilagay ang kung ang lahat sa isang linya.
At pagkatapos ay isang listahan.
Mga Listahan sa C, tulad ng isang array, kailangan mong subaybayan kung gaano kalaki ang iyong mga array ay o
kung hindi man kumuha ka ng isang segmentation kasiraan.
Ang iyong array ay lamang ng isang uri.
Kaya ito ay alinman sa isang hanay ng mga pagsingil o isang hanay ng mga integer.
Sa kasong ito, nilikha ko ang isang listahan dito, na ang isang array, na may unang
elemento ay isang string, John, at pagkatapos ay apat, dalawang - mga mga integer.
At pagkatapos ay idagdag ko lang, listahan, ang Kaliwang Anggulo Bracket, Kaliwa
Anggulo Bracket, tatlo.
Iyon ay nangangahulugang ang ikabit lamang isang bagay sa aking listahan.
>> Kaya uri ng higit pang mga kagiliw-giliw na dahil kung ginusto mong gamitin ito bilang
lamang ng isang simpleng listahan ng mga integer, magagawa mo, lahat-lahat.
Iyan ay lubos fine.
Ilagay lang integer doon.
Ngunit kung ginusto mong gawin ang isang bagay na mas nakakahimok, na may iba pang mga
mga bagay, na may -
Hindi ko alam, ang lahat ng mga uri ng mga listahan sa doon, o iba pang mga bagay na higit na
kawili-wiling, maaari mong lubos gawin iyon.
Ito ay lubos fine.
At pagkatapos ay kung gusto mong umulit sa pamamagitan ng ang listahan, maaari mong gamitin ang
higit pa C-HDR uri ng diskarte.
Iyon ay para sa loop, mo upang pasimulan ang isang variable, i = "1", o i = "0".
At pagkatapos kang umalis, at umulit, at makakuha ng lahat ng mga elemento.
>> Ngunit maaari mo ring gamitin ito higit Ruby-tulad ng diskarte.
Iyon ay tulad ng isang list.each.
Na lang sinasabi, bumalik sa akin lahat ng mga elemento ng listahan.
At gawin sa bawat elemento, tumawag sa kanila elem.
Kaya ito ay lamang ng isang pangalan na ako pagbibigay sa bawat elemento.
At ngayon ito ay pagpunta sa ulitin para sa lahat ang mga elemento, at elem, ito ay pagpunta
upang maging ang paraan na aming ma-access ang na single na elemento.
Kaya maaari mong ganap dumikit ang C diskarte, ngunit ito gumagana masyadong.
At ito ay eksakto ang parehong bagay, ang OK.
>> At bukod sa na, ito ay talagang, talagang madali upang pagsamahin Ruby at HTML
dahil sa iyo guys ay interesado sa mga web application.
HTML ay talagang isang bagay na ka pagpunta sa gumamit ng maraming.
At dito kung nais mong ilagay Ruby sa HTML, simulan lang dito, <%.
Ibig sabihin, dito Ruby nagsisimula.
At pagkatapos ay%>, uri ng tulad ng PHP sa na kahulugan.
Narito Ruby nagtatapos at pagkatapos ay maaari kang ilagay lang ang iyong kung in dito.
At pagkatapos Mayroon akong ilang mga variable user.logged_in.
Sa Ruby, kadalasan idagdag namin iyon, alinman sa interogasyon mark o exclamation
mark, tulad ng isang character na bangko, lamang sa uri ng
makilala sa pagitan ng aming mga pag-andar.
Ngunit inilagay mo lang na para sa iyong sariling alang-alang.
Ito ay hindi isang bagay na ang mga pagbabago kahit ano sa ang pag-andar.
>> Kaya lamang ipaalala sa akin na ito ay isang function na - at pag-andar sa Ruby,
sa halip na C, tulad ng sinabi ko na, hindi nila kailangang ang mga panaklong.
Kaya na naka-log in bagay, na isang function, na isang pamamaraan.
Ngunit hindi mo tahasang kailangan upang ilagay ang mga panaklong sa doon.
Kaya lang tinatanong kung ang user log in, at kung ang user-log in ka, ngayon
Muli ay nagsisimula HTML.
Kaya Maligayang pagdating, at dito I-print ko ang user.name.
At na ito.
Kaya na medyo tuwid forward, kung paano sa iyo na isama Ruby sa iyong HTML.
At mga mapagkukunan, tulad ng sinabi ko, may mga lahat ng uri ng mga mapagkukunan para sa Ruby.
Ikaw guys maaari lahat tumingin ito up pagkatapos dahil pareho sa video, at
ang mga slide, ay pumunta sa maging online na magagamit.
>> At ngayon sabihin makapunta sa daang-bakal.
Daang-bakal ay pag-ibig.
Daang-bakal -
kaya Ruby ay kanyang wika.
OK, tulad ng PHP, gusto lamang Python.
Ito ay isang wika mataas na antas, hindi gusto C. Isang gitnang, mababang antas na wika C sa
ang pakiramdam na Ruby hindi mo kailangang i- mag-alala tungkol sa memory reallocation, at
mga payo, at mga uri ng mga bagay.
Ngunit daang-bakal ay ang program na ito na ay isinulat sa Ruby.
At ginagamit nito Ruby, upang magkaroon ito framework, para sa iyo upang ma-
bumuo ng mga kahanga-hangang mga web application.
>> Kaya kailangan mo munang i-install Ruby sa iyong machine, ngunit karamihan sa mga makina
Mayroon na iyon.
At pagkatapos ay i-install ang daang-bakal sa tuktok ng ito.
Kami ay pagpunta sa makipag-usap tungkol sa na mamaya.
At bakit daang-bakal?
Kaya MVC, iyon ang controller view ng modelo usapan natin ang tungkol sa isang maliit na
bit, ginagawang mas simple ang lahat ng bagay dahil ito divides mga bagay na
conceptually iba't ibang sa iba't-ibang mga bahagi ng iyong application.
Mas kaunting oras na ginugol sa mga problema sa mababang antas, muli, at napaka, napaka
sikat ngayon.
Kaya para sa lahat ng mga taong interesado sa ang start up scene, o sa isang bagay
tulad ng simula sa mga negosyo, at ang mga tao sa merkado na teknolohiya na
simula ng kanilang sariling mga negosyo sa ngayon ay talagang, talagang tagahanga ng Ruby sa
Daang-bakal dahil ito ay kaya mabilis.
>> Kaya maaari kang makakuha ng isang bagay up at Tumatakbo sa mas mababa sa isang araw, at iyon ang
talagang isang napaka nakahihimok argumento na gamitin ang Ruby.
At daang-bakal 4.0 -
ay masyadong sariwa mula sa oven ngayon.
Kaya daang-bakal 4.0 -
Sa tingin ko ang unang release ay Marso sa taong ito.
At ito ay talagang maganda, mayroon itong lahat mga uri ng bago, cool na tampok.
Kaya Ruby sa daang-bakal ay isang framework na Patuloy ina-update na magkaroon ng lahat
ng mga bagong teknolohiya.
>> Ang unang pagkakataon na sinubukan kong gamitin ang Ruby sa Daang-bakal, nagkaroon ako ng problema na ito dahil ako
Nilikha ang aking unang web application, at ito ay tumingin nang eksakto tulad na.
Kaya lumilikha nito ang lahat ng mga file na iyon para sa iyo, at ako ay walang ideya kung ano -
kung ano ito?
Nilikha nito ang lahat ng mga file na iyon, at ako lamang Nais lumikha ng simpleng programa, isang
simpleng website HTML.
At maaaring hindi ko kahit na gumawa ng kahit ano.
Kaya ako ay isang maliit na bit mabigla.
Ngunit iyon lamang ang isa sa mga bagay na sa sandaling ikaw maunawaan ito, ang lahat ng bagay ay nagiging kaya
magkano ang mas malinaw.
Kaya huwag ma-nalulula ka sa unang paningin ng kung ano lumikha ka sa unang.
>> Kaya kung ano ang mangyayari ay daang-bakal ay lumilikha lahat ng mga file na iyon.
Kaya isa sa mga iyon ay doc, dokumentasyon.
Db, na may kaugnayan sa database.
Lib, na aklatan mag-log.
Pampublikong, script, at ilang mga bagay.
Pretty magkano lahat ka ng pagpunta sa mag-alala tungkol ay ang folder ng app, hanggang doon.
Iyan ang folder na naglalaman ng ang iyong application.
Ang lahat ng mga iba pang mga file -
ang ilan sa kanila ay mahalaga, at ikaw ay pagpunta upang malaman ang tungkol na sa ibang pagkakataon.
Ngunit ang mga ito dito lamang sa magtaglay ng mga balangkas.
Kaya ang unang cornerstones ng bahay ka guys ay pagbuo, OK?
>> Ngunit ang folder ng app -
iyon ang talagang mahalaga isa.
At ang folder ng app ay may mga ari-arian.
Asset ay medyo magkano ang lahat ng bagay na darating.
Mga Larawan halimbawa, ang lahat ng bagay na static na pupuntahan-download
sa iyong website.
Kaya mga larawan, JavaScript, CSS -
mga uri ng mga bagay ang mga asset.
Controllers -
kami ay pagpunta sa makipag-usap ang nalalaman tungkol sa ano ang mga controllers, modelo,
at mga patlang sa isang segundo.
At Katulong ang function na sa iyo Maaaring gamitin ng lahat ng higit sa iyong mga code
upang matulungan kang magawa ang isang bagay.
Mga Pag-andar tulad log in, para sa halimbawa - user.loggedin.
Iyan ay isang function na malamang na kailangang gamitin sa lahat ng mga bahagi ng iyong
application.
Kaya maaari kang maglagay ng isang bagay tulad ng na sa iyong lingkod.
>> Mailers -
na kung gumagamit ka ng pagpunta sa magpadala isang email sa iyong mga gumagamit, ikaw
nais na gumamit ng isang mailer.
At modelo at mga tanawin, kami ay pagpunta pag-uusapan na ngayon.
Kaya ang controller view ng modelo, na ang pangunahing pundasyon ng Ruby sa
Daang-bakal, at pinaka Framework ngayong mga araw na ito, upang maging matapat.
Kaya muli, ihiwalay namin ang lahat ng aming code sa tatlong iba't ibang bahagi.
Ang modelong -
ang modelo ay isa lamang sa database.
Ito humahawak ng mga bagay sa database.
>> Kaya bawat talahanayan sa database ay may nakaayon file sa loob ng modelo.
Kaya ito ay uri ng isang talahanayan para sa iyong mga user.
Kaya ka sa pag-iimbak ng impormasyon tulad ng user name, ang kanilang mga email, ang kanilang mga
address, ang kanilang password, at mga bagay tulad na.
Ikaw ay pagpunta sa may isang file sa ang modelo na tinatawag na rb user -
rb para sa Ruby.
At nagkaroon ka ng pagpunta sa mayroon ng lahat sa mga pamamaraan at mga variable.
Ang mga variable ay pagpunta sa Tumutugon upang ang user name, email, at
ang lahat.
>> At ka ng pagpunta sa mayroon ang mga pamamaraan.
Iyon ay magiging isang bagay na nauukol -
ka pagpunta upang mahawakan ang impormasyong ito sa database.
Upang lumikha ng isang modelo sa daang-bakal, gamitin mo lamang bumuo ng daang-bakal.
At upang lumikha ng mga bagay na sa daang-bakal, mo talaga kailangan ang terminal.
Kaya ito ay isang napaka terminal batay framework.
Mag-log ka lang sa terminal, at huwag daang-bakal, bumuo ng modelo.
At ang pangalan ng modelo ay gumagamit.
At gusto ko lang na magkaroon ng dalawang variable, dalawang haligi, sa aking mga talahanayan.
Kaya na email.
Email ay isang uri ng string.
Password, password ay din ng isang uri ng string.
Iyon ang mga lamang ang dalawang bagay.
Ito ay uri ng isang simplistic talahanayan ng gumagamit.
Ngunit ganap mo maaaring ilagay sa isang daang bagay naroon kung gusto mo sa.
>> At daang-bakal ay gumagawa din ito napaka, napakasimple na magkaroon ng lahat
mga uri ng mga pakikipag-ugnayan sa database.
Kaya kadalasan, kapag mayroon kang mga talahanayan sa iyong database, ang mga ito ay hindi talaga
independiyenteng ng isa't isa.
Ni isipin ang tungkol Hayaan.
Gusto mong bumili at magbenta mga produkto sa online.
OK, sa gayon mayroon kang isang website kung saan mo nais bumili at magbenta ng mga produkto.
Kaya ang bawat gumagamit ay may maraming mga produkto na ang user na ito ay nais na ibenta.
At ang bawat gumagamit ay mayroon ding maraming mga transaksyon na patuloy na, o
ang isang bagay tulad na.
At ang mga transaksyon ay sa ibang gumagamit.
Nabibilang ang bawat transaksyon sa dalawang iba't ibang mga gumagamit.
Ang user na bumibili at ang gumagamit na nagbebenta ng.
>> Kaya mga ay ang tinatawag na relasyon database.
At dito mayroon kaming eksaktong mga keyword na iyon, ay maraming at ay kabilang sa.
Iyon ang mga pinaka-mahalaga sa buhay.
At lamang ka ng pagpunta sa sabihin, para sa Halimbawa, ito ang halimbawa ng isang
modelo sa Harvard 2017 website.
Muli, ang mga mag-aaral sa dito -
bawat mag-aaral sa website, mag-aaral ay isang modelo, ay isang database ng table.
Ang bawat mag-aaral ay nagkaroon ng maraming mga libro dahil sa iyo Maaaring sabihin, kung ano ang mga paborito
mga libro, i-right.
Kaya nabibilang ang bawat libro sa isang mag-aaral down na dito.
At ipatungkol naa-access -
na lang sinasabi, mga ay ang mga variable.
Yaong ay naa-access ang mga variable mula sa modelong ito.
At ang mga variable ay ang mga may-akda ng sa libro, paglalarawan, genre, at
pamagat ng libro.
Kaya lamang ang impormasyon ukol sa libro.
>> At dito Mayroon akong isang pamamaraan na simpleng uri ang lahat.
Kaya tukuyin at tapusin dito, ito lamang ay na nagsasabi, dito ay ang aking paraan.
Self.sorted_all.
Na lang, ibigay sa akin ang lahat ng bagay pinagsunod-sunod, at iyon ang kung paano mo ipatupad
ang pag-uuri algorithm, na kung saan ay medyo madali.
Ngunit isa lamang, ito ay kung paano mukhang isang modelo tulad ng, OK.
Sinuman mayroon ba katanungan patungkol sa ito ang database ng bagay?
Relations?
Malinaw ba iyon?
Oo.
>> Madla: Maari gawin mo ang algorithm uri?
>> Gabriel Guimarães: Ang sort algorithm, OK.
Kapag nag-masanay Ruby syntax, ito ay pagpunta sa maging malinaw.
Ngunit talaga, elems ay Book.all.
Kaya libro ay ang pangalan ng aking mga modelo.
Kapag lumikha ka ng isang modelo, ito ay may lahat ng uri ng magaling na mga pamamaraan para sa iyo.
Kaya dot.all ay isang pamamaraan na Ibinabalik ng lahat ng mga libro.
Ngunit mahanap, halimbawa, ay maghanap para sa isang libro at bumalik sa librong iyon, o
ang isang bagay tulad na.
At kaya elems ay ang lahat.
At lang ako sa sinasabi elems.sort.
Pagbukud-bukurin ay isang built-in na Ruby function.
>> At, gawin ab.
Kaya ito ako muli ay -
ka pagpunta upang ayusin.
Ngunit ka pagpunta upang makakuha ng ito argumento para sa akin.
At ang mga argumento ay gumagamit ng - ito ay isa sa mga ang mas mahirap mga bagay sa Ruby talaga,
ito gawin bagay.
Ngunit sa sandaling maunawaan mo ito ang lahat ng bagay ay napaka, napaka-intuitive.
Kaya ang ab, ito ay nagsasabi sa lugar may hawak na pupuntahan ko gagamitin - tulad ng
ang mga variable sa pupuntahan ko gamitin, ay pagpunta sa ay tinatawag na isang at b.
At iyon ay ang mga libro.
>> Kaya dahil kailangan uri sa ihambing mga elemento, alalahanin na?
Kaya kapag pagbukud-bukurin ka bagay, mo paghambingin ang dalawang mga elemento.
Pupunta ako sa sinasabi na ang bawat oras ka pagpunta sa ihambing -
kaya ito ay, ako pagpasa upang ayusin ang isang argumento.
At ang mga argumento ay ang lahat ng bagay mula sa do at dito, OK?
At ito argument, ay lamang na nagsasabi sa -uri-uriin kung paano upang ihambing.
Pagbukud-bukurin gagana dito, ngunit ito Gusto ihambing ang kanilang mga
ide-default ng paghahambing ng algorithm.
Gusto ko ito upang ihambing sa isang napaka-tukoy na paraan, lalo, kapag ang mga aklat
Nilikha, kapag ang bawat aklat ay nilikha.
>> Kaya ako sinasabi ko, sabihin ang pangalan ng unang aklat ay isang at ang pangalan ng
ikalawang aklat bilang b, gusto ko maisasa-ayos upang ayusin isang bagay batay sa b.created_at ito
kakaiba simbolo, a.created_at.
At na simbolo kakaiba ay shorthand para kung ang isa ay mas malaki kaysa sa
isa, bumalik 1.
Kung ang isa ay katumbas ng isa, bumalik sa zero.
Kung ang isa ay mas maliit kaysa sa isa, balik minus 1.
Kaya ang ginagawa na simbolo kakaiba ay.
>> Ngunit hindi iyon mahalaga.
Ibig kong sabihin, kung ano ang gusto ko sa inyo guys upang makakuha ng ngayon ay ang ideya na ang database -
maaari kang magkaroon ng modelo doon.
Kaya hindi mo kailangang mag-alala tungkol sa pagkonekta at paggamit ng SQL pahayag,
at mga bagay tulad na.
Maaari rin itong lumikha ng mga pinto sa SQL iniksyon at lahat
mga uri ng mga problema sa seguridad.
Sa kasong ito, hindi mo gusto mag-alala tungkol sa na.
Gamitin mo lang ang mga pamamaraan tulad ng book.all.
At iyon, sa background ng kurso, ay pagpunta sa iyong database, at ito ay
pagpunta sa gumamit ng isang SQL pahayag upang makakuha ng lahat ng mga libro.
Ngunit hindi mo kailangang i- mag-alala tungkol sa na.
Iyan ang takeaway, OK?
>> At kapag mayroon kang isang belongs_to pahayag tulad nito, ay nangangahulugan na na
sa sandaling mayroon ka ng libro sa bagay, mo Maaari makita kung ano ang mag-aaral nito.
Kaya kung aling mga mag-aaral ay may mga aklat na ito?
Kaya maaari lamang naming gamitin book.student, at na nagbibigay sa iyo kung ano ang mag-aaral ay.
At iyon ang isang talagang nagtatampok magkaroon.
>> OK, ngayon ang view.
Kaya ang modelo ay kung ano ang nakikipag-ugnayan sa database, tama?
Tanaw Ang ay isa lamang ng HTML, at CSS, at ang ilan sa JavaScript.
At na kung ano ang user talaga nakikita.
Ang gumagamit na hindi pagpunta sa makita ang iyong database.
Siya ang nangyayari upang makita ang ilang mga data mula sa database na naka-embed sa viewer.
Ruby sa daang-bakal Ginagawang talaga simpleng upang gumawa ng mga patlang.
Una, dahil na lumilikha ito ito para sa iyo, sa labas ng kahon, isang layout.
>> Ang isang layout ay isa lamang ng isang bagay na -
kung ang lahat ng iyong mga pahina ay may logo sa tuktok at, hindi ko alam, ang ilang mga menu o
ang isang bagay tulad na, na ang lahat ng iyong mga pahina ibahagi sa karaniwan, pagkatapos ay hindi mo gusto
kailangan upang lumikha ng maraming, maraming, maraming mga HTML mga file na kung saan ang lahat ng mga file mayroon na
parehong HTML code.
Ibig kong sabihin na pipi dahil ikaw lamang paulit-ulit na code sa iba't ibang mga file.
Iyon ay talagang hindi mahusay na diskarte.
>> Kaya Ruby sa daang-bakal ay lumilikha ito layout para sa iyo.
At ito ay sinasabi lang, lahat ng aking mga pahina ay pagpunta sa may ito ng HTML, ito ulo
pamagat dito, at iyon ay style sheet link na tag.
Plug in dito lahat ng aking mga CSS.
Plug in dito sa lahat ng aking JavaScript at ilang mga meta tag.
Iyan ay isang bagay lamang na sila Awtomatikong magawa para sa iyo.
At pagkatapos, tapusin ang ulo, ngayon dito nagsisimula ang katawan.
At ngayon ito ay ang aking aktwal na nilalaman.
Kaya kung nais kong ilagay ang isang bagay tulad, isang menu dito, Gusto ko itong ilagay sa kanan sa ibabaw
ang lugar na ito, o isang bagay tulad na, upang ang lahat ng aking mga pahina Ibinahagi ito.
Kaya ang layout ay ibinabahagi sa pamamagitan ng lahat ng mga pahina.
>> Ngayon na ani dito lang sabi, walang kahit na ano ang mga pahina na ito ay nasa, lamang
plug in ang nilalaman ng na page in dito, OK?
At ngayon ito ay, halimbawa, ang nilalaman ng isang pahina na pupuntahan maging
naka-plug in ang ani pahayag Awtomatikong sa pamamagitan ng daang-bakal.
Ngunit ito ay isang layout Nagbahagi sa pamamagitan ng lahat ng mga pahina.
At ito ay isang halimbawa ng isang pahina.
At ito ay eksaktong pahina na naglilista ng lahat ng mga libro.
Kaya ito ay isang pangunahing HTML talahanayan up tuktok.
Kaya ng listahan ng mga libro, ang pamagat, may-akda, paglalarawan, genre.
>> At dito namin ginagamit, muli, ang ilang mga Ruby syntax, @ books.each--
@ Uri ng sabi na ang iyong mga variable ay global sa isang katuturan.
Dahil ito variable ay talagang ipinahayag sa controller na
ka pagpunta upang makita ngayon.
Ngunit tumagal lamang para sa ipinagkaloob na ito @ Aklat ay isang variable na ay isang listahan ng mga
lahat ng mga libro.
Kaya books.each, huwag, at muli, ito ay lamang na nagsasabi kung gaano ang gusto mong ipangalan sa
bawat isa sa mga iterators nang sa gayon ay hindi namin kailangang mag-alala tungkol sa isang apat na, int i
blah, blah, blah.
Tumagal lang namin ang bawat isa sa mga elemento at gamitin ang mga ito.
>> Kaya ito ay ang libro, at pagkatapos lamang i-print dito. book.title, book.author,
book.description, at blah, blah, blah.
At narito ang isang LINK_TO.
Kaya LINK_TO lamang ang link na tag na maaaring i-click ang isang user sa at
napupunta sa isa pang website.
LINK_TO, ipakita na partikular na libro.
Kaya kung ang gumagamit ay napaka-interesado sa aklat na ito, pagkatapos ay siya ay maaaring mag-click sa show.
O mag-click sa i-edit, kung nais ni siya i-edit ang libro.
O kaya sirain, kung nais ni siya upang tanggalin ang aklat mula sa database.
OK, ang ibig na saysay?
Mahusay.
>> Sa wakas, ang controller.
Kaya isa lamang ang controller ay ang interface sa pagitan ng mga
modelo at ang view.
Kaya ang modelo ay ang bahagi ng iyong code na may database -
bawat talahanayan sa database ay isang nauukol na file sa
modelo, at iba pa.
At kung paano gawin ang mga modelo at ang view nakikipag-ugnayan?
Kaya, sa pamamagitan ng controller.
Ano ang isang controller gumagana ay nito ay ang modelo para sa isang bagay tulad ng, halimbawa,
ilagay ang lahat ng mga libro sa loob ng isang variable.
Tulad ng isang ito, @ aklat.
>> At ito ay kailangang maging global na may ito sa bagay dahil ito ay pagpunta sa maging
na-access sa pamamagitan ng pagtingin.
Hindi ito ng pagpunta sa magamit sa loob ang mismong controller.
At ito slows lamang ng impormasyon na ang view ay pagpunta sa gamitin.
Halimbawa, ang controller sa mga pagsusuri kung ang gumagamit ay online.
At paano nito gawin iyon?
Ito talaga itinatanong ang mga modelo dahil ang modelo ay may
impormasyon tungkol sa user.
Mayroon itong talahanayan ng mga gumagamit, ang mga aklat talahanayan, iba pang mga talahanayan.
Kaya ang controller magtatanong kung ang gumagamit ay online.
Kung ang gumagamit ay online, ang controller humahawak ng mga bagay tulad ng paglalagay ng cookie,
o ang isang bagay tulad na, upang ilagay ang stamp upang sabihin na ang gumagamit ay online.
Hindi na kailangang mag-log in muli.
>> At ito ang nangyayari upang i-load sa isang variable na tinatawag na gumagamit, halimbawa, na ang
pagtingin ay maaaring gumamit ng.
At ang mga pagtingin ay maaaring maglagay ng isang bagay dito, halimbawa, maligayang pagdating user.name.
Kaya ito ay pagpunta sa sabihin, welcome John, welcome James -
ang isang bagay tulad na, i-right?
Kaya lahat ng mga variable na ginamit sa tanaw ay pagpunta sa-load sa
controller at pupunta upang maging na nakuha up mula sa modelo.
>> Ito ang halimbawa ng isang controller.
Kaya mayroon kami, talaga, ang bawat isa -
tinatawag naming mga bagay na aksyon.
Kaya index ay isang pagkilos.
Ito ay isang Ruby function.
Ito ay isang paraan ng Ruby sa doon.
Ngunit para sa mga tawag controller mga bagay na aksyon.
At ang bawat pagkilos ay may kaugnayan sa isang ruta.
Kaya dito sa rutang ito, halimbawa, ay isang get statement / libro.
Kaya kung pupunta ka sa harvard2017.com/books, kung ano ang nangyayari sa mangyari ay ang code na ito ay
pagpunta sa tatawagin.
>> At doon ay isang file -
hayaan mo akong buksan ang real mabilis.
Mayroong isang file na tinatawag na raw file.
Hindi ito ang ipapalabas.
Kaya mayroong isang file na tinatawag na raw file na talaga tumutugma -
oh, ngayon ito ang ipapalabas.
Dito, mga ruta.
Kaya tumutugma talaga pilay, activation / bagong halimbawa, upang
isang bagay sa controller.
Kaya mayroong ito controller na tinatawag na activation controller, ngunit dito,
mayroon kaming ang mga aklat, halimbawa.
Kaya tumutugma -
mga aklat / mga bagong, upang ang controller mga libro, mga aksyon bago.
Kaya talaga, napaka-tuwiran bagay.
>> At dito, kung mayroon kang upang makakuha / libro, iwa ang ID ng mga aklat, iwa bago,
ka pagpunta upang pumunta sa na Ruby paraan down na doon.
Kaya dito, kung ano ang ginagawa ito index ay naglo-load lang ng log book.
Iyan ay isang bagay na -
Mag-log ang lahat ng mga libro sa isang log.
At-uri-uriin ang lahat ng ito.
Kaya ito ng pagpunta upang bumalik lahat ng mga pinagsunod-sunod mga libro.
Ito ay, muli, sa database.
Kaya ito ay isang paraan ng modelo.
Nakita mo ang paraan na ito sa pagiging nilikha sa modelo.
Ngayon ito ay naglo-load lang lahat ng mga libro at paglalagay na sa isang variable na
maaari itong makita ng mga view.
>> Dahil hindi ka maaari, sa gitna ng iyong HTML code, hindi ka maaaring tumawag
isang bagay nang direkta mula sa modelo, dahil sa dalawang kadahilanan.
Una, para sa mga kadahilanang pang-seguridad dahil hindi ito talagang kawili-wiling upang maging
naglo-load ng impormasyon nang direkta sa loob bawat HTML na sa database.
At pangalawa, upang mapanatili ang iyong code talaga inorganisa.
Kaya't ihiwalay eksakto ang iba't-ibang bahagi.
Kaya BookLog.sorted_all, ito sa database at ito ay pagpunta sa ilagay sa
isang variable @ aklat.
At ngayon ito na variable ay naa-access sa loob ng iyong HTML code.
Kaya maaari mo lamang ilagay ang lahat ng mga libro Mayroon bang tulad lang ng ginawa namin, dito mismo.
Ito ang variable.
>> At pagbisita respond_to gawin | format |, ito ay lamang ng isang uri ng Ruby syntax para sa
kung ang gumagamit ay humihingi sa akin para sa HTML code, pupuntahan ko
tumugon kasama ang HTML code.
Kung nagtatanong ng user ako gamit ang JSON code, na kung saan ay isang bagay na gumagamit ng mga web app
upang makipag-ugnayan sa pagitan ng kanilang sarili, ang mga ito karaniwang gamitin JSON o ilang iba pang
uri ng bagay.
Kaya lamang ay tumutugon ito gamit ang mga dalawang magkaibang mga format.
Ngunit para sa isang normal na user, ito Hindi kailangang maging dito.
Gusto mong tumugon lamang sa HTML, at iyon ang fine.
Kaya huwag mag-alala talaga na magkano ang tungkol dito.
Ito ay ang tanging linya ng code sa aming kontrol na bilang ito ay naglo-load mula sa HTML
database, paglalagay sa isang bagay na naa-access sa pamamagitan ng pagtingin.
>> At pagkatapos ay bago, kaya dito Lumilikha ako ng mga libro.
Ngunit upang lumikha ng mga aklat, Kailangan ko ng mag-aaral dahil kailangan kong malaman ang mag-aaral
na kung saan ang mga aklat na ito nabibilang sa, i-right.
Kaya @ mag-aaral = Mag-aaral.
Mag-aaral, muli, ipinapadala namin na nagsisimula sa isang malaking S ay ang mag-aaral na modelo.
OK, kaya ito ay ang mag-aaral na modelo, ito ay ang log ng modelo aklat.
Student.find, kaya ako pagpunta sa makahanap ng isang mag-aaral gamit ang mga parameter ng ID.
params.id, ito ay makakuha lamang sa akin ang halaga ng ang ID na ito na pumasa sa -
at ang URL.
>> Pagpunta lamang upang maghanap ng mga mag-aaral na iyon.
At una sa lahat, kami ay pagpunta sa suriin kung ang mag-aaral ay may ilang mga kanta
at blah, blah, blah.
At ito na humahawak sa kaso kapag ang mag-aaral ang
ay hindi umiiral, halimbawa.
At pagkatapos ay, tao, kaming tumutugon lamang upang ang parehong bagay gamit ang HTML.
At pagkatapos ay maaari naming ipaalam ang gumagamit gumawa ng kanilang mga kanta.
Kaya ito ay bago.
Bagong ay karaniwang ginagamit para sa, sabihin lumikha ng user ang isang bagay.
At pagkatapos ay mayroong mga lumikha ng pagkilos na karaniwang ginagamit para sa -
talagang ilagay ang mga kanta sa database o ang isang bagay tulad na.
Ngunit sa sandaling simulan mong gamitin ang daang-bakal, mga bagay ay pagpunta sa maging
magkano, magkano ang mas malinaw.
OK, palamig.
Ang anumang mga katanungan sa ngayon?
Gumagana ba ito ang may katuturan na may controllers, mga modelo, mga patlang -
oo?
>> Muli sa iyong application daang-bakal -
kaya lahat ng na maaaring matagpuan sa dito.
Kaya mayroon kang app, controllers, mga ay ang lahat ng aking mga controllers.
Kaya halimbawa, kontrolin ang mga libro.
Iyon ang isa Nakita namin lamang.
At pagkatapos tanawin.
At bawat controller ay may nauugnay view, tama?
Kaya awtomatikong kapag kang tumawag ito index dito, halimbawa, o kapag mo
itawag sa libro bago, pagkatapos ay ang view, mga libro, mga bagong ay pagpunta sa tatawagin.
>> Kaya daang-bakal gumagana ang lahat ng bagay Awtomatikong para sa iyo.
Kaya bawat controller ay isang nauugnay na tingnan at ang lahat ng mga modelo ng -
dito Mayroon akong isa, dalawa, tatlo, apat, limang mga modelo.
Ngunit ito ay isang modelo ng mag-aaral, kaya mga ay ang mga variable na ang lahat ng
mga mag-aaral ay may - lokalisasyon, petsa ng kapanganakan.
Mga mag-aaral Medyo nang higit pa kumplikado dahil ang bawat mag-aaral ay may
higit pang iba't ibang paraan na nauugnay dito.
Ngunit ito ay lamang sa paghawak ng mga mesa na nagkaroon ng lahat ng mga
mga mag-aaral sa database.
>> At, OK, pag-install ng daang-bakal.
Pag-install ng daang-bakal, upang maging tapat, ay hindi ang pinakasimpleng bagay.
Ngunit sa sandaling makuha mo nakalipas na ang lahat ng bagay, ay masyadong, napakadaling.
Kaya pag-install ng daang-bakal, mo pumunta lamang sa website, rubyandrails.org / download
at sundin ang kanilang mga tagubilin doon.
I-download ang lahat.
At maaari mong gawin na alinman sa Appliance, sa CS50 Appliance, sa
Windows, sa Mac, o anumang mga operating sistema na iyong gusto.
Ruby sa daang-bakal ay tumatakbo sa lahat ng bagay.
>> Logro ay mayroon ka nang na-install ang Ruby kung mayroon kang isang Mac o -
sa mga kasangkapan sa tingin ko ay Ruby -
Hindi ako sigurado.
At pagkatapos ay mayroon kang naka-install na lang ito.
At kung gusto mong lumikha ng isang bagong web application, mo lamang
gawin daang-bakal, bago, blog.
Daang-bakal, bago -
Hindi ko alam kung -
ang pangalan ng iyong website.
At ito ay simpleng na.
>> Ito ay pagpunta upang lumikha ng lahat ng mga mga file ko pa lang ay nagpakita sa iyo.
Ngunit ang modelo, ang view, at ang controller ay hindi pagpunta sa maging
pa populated.
Lamang ka ng pagpunta sa may upang pumunta doon panahanan ng mga tao at tatlong mga folder na iyon.
Kaya logro ay, nais mong lumikha ng isang modelo, halimbawa, ipatupad isa
gawing modelo ang unang.
Kaya ulit, palaging sinusubukan upang kumagat mas maliit mga piraso ng isang problema sa isang pagkakataon.
>> At pagkatapos ay sabihin nating, lumikha ng isang modelo para sa iyong mga user.
Iyon ang unang bagay kung mayroon kang mga gumagamit.
Pagkatapos Gusto kong lumikha ng isang modelo tulad lang namin ay nagpakita dito.
Daang-bakal, bumuo, modelo, user, at pagkatapos ay mga email string - mayroon kaming na dito.
At lumikha lamang na modelo, oo.
Daang-bakal makabuo ng modelo ng email User: string password: string.
>> At pagkatapos mong lumikha ng isang controller na deal sa gumagamit.
At maaari kang lumikha ng mga bagong gumagamit at gawin ang mga uri ng mga bagay.
At pagkatapos ay maaari mong magpatuloy sa paglikha ang natitirang bahagi ng iyong website.
Mahusay, mga tanong?
Oo.
>> Madla: [hindi marinig]
>> Gabriel Guimarães: Oo, oo, ikaw Talagang mayroon upang pumunta sa view.
Iyan ay isang napakagandang tanong.
Kaya ang view ay kung ano talaga naglalaman ng iyong HTML.
Kaya kung ano ang mga gumagamit ay pumunta upang makita.
Muli, dito, ito ay isang halimbawa ng isang view.
Mayroon itong HTML code at Ruby code sa parehong oras.
Kaya ang Ruby code ay doon upang ilagay ang mga bagay mula sa database, halimbawa,
na na-load sa controller.
Kaya variable na @ aklat, halimbawa, mayroon ng lahat ng mga libro at ang talahanayan
aklat na ito sa database.
Ginawa namin siguraduhin na ito ay nagkaroon ng sa controller.
>> At ang mga pagtingin -
ang bawat isa sa mga pahina ng off ang iyong website ay pagpunta sa magkaroon ng isa nauugnay view.
Kaya kung pumunta ka sa home page, ang napaka unang pahina, harvard2017.com.
Na nagpapakita ng isang pahina.
At pagkatapos ay pumunta ka sa iwa profile.
Iyon ang nangyayari upang pumunta sa isang controller na ang isang profile ng controller.
At ang profile controller ay pagpunta upang mabigyan ka ng view ng profile.
At sa view ng profile ng pagpunta sa tumingin medyo na tulad nito, ngunit ito ay pagpunta sa
magkaroon ng impormasyon tungkol sa gumagamit, at hindi tungkol sa mga libro.
>> Kaya HTML code at CSS at mga mga bagay na nakita ng isang gumagamit
may Ruby code -
na aktwal na mga kopya na bagay mula sa database.
Iyan ba mas malinaw?
Umaasa ako.
>> Madla: Ang HTML code ay ginagamit upang talagang gawin ang mga website na ang
nakikita ng gumagamit, ngunit ang Ruby code ay kung bakit ang website ng trabaho?
>> Gabriel Guimarães: Ang Ruby code maipo-convert sa HTML.
Kaya kung ano ang nakukuha ng user ay lamang ng HTML, OK?
Ito ay lamang ng HTML.
Book.title na ito ay pagpunta upang i-convert sa ang halaga ng book.title sa HTML, OK.
Kaya ito ay ang lahat sa server, at sa gayon Depende ito sa kung anong mga libro ang naroon
sa server ngayon.
Ngunit ano ang server ng ginagawa agad kahulugan lamang ang HTML code, OK.
>> Ngunit ang view ay nagbibigay lamang ang layout ng kung ano ang pagpunta sa HTML upang magmukhang
at kung ano ang mga variable ay pagpunta sa maging.
Ang ganitong uri ng isang print out, OK.
Yaong mga bagay na may mga talaga i-print out.
Ang mga ito ay pagpunta sa i-print ang mga variable, OK.
Kaya kung ano ay lamang ng HTML, mga -
may-akda, pamagat, paglalarawan.
Iyon ay static na nilalaman.
Na hindi pagpunta upang baguhin.
Iyon lamang ang simpleng HTML code.
Iyon ang mga pagkontra-print para sa mga variable -
mga bagay na nakasalalay.
Mahusay, higit pang mga tanong?
Magandang?
Oo.
>> Madla: Sa tingin ko ang iyong ginagawa lahat ang pag-edit sa isang iba't ibang mga teksto
pag-edit ng programa.
Dapat ring i-download namin iyon?
>> Gabriel Guimarães: Oo, gusto ko ito editor ng teksto na tinatawag TextMate.
At ito ay talagang mahusay.
Mahusay Ito ay naaayon sa Ruby.
Ito ang mga kulay bagay napaka makinis.
Kaya TextMate, T-E-X-T. Pupunta ako upang ilagay iyon, kumapit -
>> Ibig kong sabihin maaari mong gamitin ang gedit o anumang bagay na gusto mo.
Ngunit ito ay tiyak para sa Mac, at ito ay talagang kapong baka dahil naglalagay nito ang lahat ng
ang iyong mga file down na doon.
At sa Ruby sa daang-bakal, kailangan mo upang magpalipat-lipat sa mga file ng maraming.
Kaya maraming, maraming mga file lamang pumunta mula sa isang file, tumalon sa
isang file o sa iba pa.
Kaya TextMate ay isang napakahusay na isa, ngunit maraming out doon.
Higit pang mga tanong?
OK, yes?
>> Madla: Mayroon bang isang mobile-unlad sa pamamagitan ng Ruby sa daang-bakal?
>> Gabriel Guimarães: na hindi ko na Narinig ng mga bagay.
Hindi ko pa ginamit ang mga ito.
Maaari kang magsaliksik ng higit sa na.
Hindi ako sigurado kung mayroong anumang magandang bagay out doon.
OK, yes?
>> Madla: [hindi marinig]
>> Gabriel Guimarães: Di daang-bakal, marahil Ruby array.
Buksan up ng isang terminal na window at uri, "Ruby".
Oo, marahil, at pagkatapos ay sa iyo mayroon lamang i-install ang daang-bakal.
Ngunit kung ikaw ay pagpunta upang i-install ang bagong Daang-bakal 4.0, na kung saan ko lubos na inirerekomenda,
dapat mong i-download Ruby 2.0.
Iyon ay masyadong ang bago.
At ang bagong daang-bakal 4.0 ay may isang bagay talagang cool na na
ginagawa nito upang ang mga asset.
Ito humahawak ng mga ari-arian.
Mga asset na muli ang mga imahe, CSS file, at mga file ng JavaScript.
Kaya isa talaga kapong baka bagay na Ruby sa Daang-bakal ay para sa iyo ay sa lahat ng mga CSS
mga file na mayroon ka at ang lahat ng bagay -
Bundle lang ito ang lahat ng bagay up sa isa malaking file, na walang mga puwang o anumang bagay,
upang i-minimize ang oras Kailangang gumagamit na i- download na code mula sa iyong server.
>> Kaya kapag nakita mo sa iyong computer, ito ay pagpunta sa mayroon tulad ng 15 CSS file.
O kaya naman marami, maraming iba't ibang mga CSS file.
Ngunit sa pagtatapos ng araw, kung ano ang daang-bakal Awtomatikong ang para sa iyo ay ito nilalagay
ang lahat ng bagay nang magkakasama sa isang malaking file kaya na minimizes nito ang oras na binanggit.
Iyan ay talagang cool.
Oo?
>> Madla: [hindi marinig]
>> Gabriel Guimarães: Mismong.
Kaya, ang pagsasama ng Google Maps.
Yan ang JavaScript API mula sa Google.
Kaya lang nagpunta ako sa website ng Google.
Ang mga ito ay ang Google Maps API at ako download ang code at integrated na ito
sa aking view.
Kaya kung ano ang aking kailangan upang gawin doon ay kailangan ko upang makuha ang
mga lokasyon mula sa database.
Iyon ay tapos na sa controller.
Kaya pinuntahan ko ang controller -
kung saan ang controller.
Controller Ang mukhang ito.
Nakuha ko ang lahat ng mga lokasyon ng mga mga mag-aaral, ilagay ang lahat ng iyon sa isang malaking
variable, isang malaking listahan, na mayroon ng lahat ng mga lokasyon.
>> At sa view, dahil ang JavaScript API ay isang bagay sa
tingnan, i-right?
Dahil ang JavaScript ay tumatakbo sa loob ng iyong HTML code, ito ay pagpunta upang ipadala sa
machine ng user.
At sa view, load ko ang lahat ng na impormasyon sa Google API.
At ginawa nito ang lahat ng iyon para sa sa akin, na kung saan ay talagang cool.
Ngunit kung nais mong gamitin ang mga bagay sa back-end, at ito ay tulad ng isang library, para sa
Halimbawa, muli -
ang integration sa Facebook.
Iyan ay isang bagay na marami, marami, maraming apps ginagamit ngayong mga araw na ito.
>> Kaya mayroon ang iyong pagsasama sa Facebook dahil ito ay kaya lubhang mas madaling lamang
mag-log in gamit ang Facebook kaysa sa lumikha isang account at blah, blah, blah.
Pagkatapos ay gamitin mo lang ang isang hiyas at ito ay bilang simpleng bilang ng pagpunta sa iyong hiyas file.
Hiyas file ay isang file na tinatawag na perlas file sa ang direktoryo ng pinagmulan ng iyong Ruby sa
Daang-bakal proyekto.
Pumunta lamang doon at magdagdag ng mga bagong hiyas.
At kang tumingin ito up sa Google.
Maraming, maraming, maraming mga hiyas.
May isang partikular na gumagana ito para sa pagsasama sa Facebook.
Hindi ako sigurado kung ano ang pangalan ng ito.
Google lang ito at ikaw ay pagpunta upang hanapin ito.
OK, higit pang mga tanong?
Kahanga-hanga, salamat sa iyo para sa darating na.