1 00:00:00,000 --> 00:00:03,968 >> [MUSIC PLAYING] 2 00:00:03,968 --> 00:00:10,744 3 00:00:10,744 --> 00:00:14,040 >> STEPHEN Turban: Jadi aku Stephen Turban. 4 00:00:14,040 --> 00:00:16,990 Selama di sisi sini, mungkin kita bisa mendapatkan beberapa orang untuk menyelam di. 5 00:00:16,990 --> 00:00:20,150 6 00:00:20,150 --> 00:00:23,854 Kami memiliki Gabriel dan Zack. 7 00:00:23,854 --> 00:00:26,270 Jadi untuk roadmap singkat tentang apa ini akan terlihat seperti, 8 00:00:26,270 --> 00:00:31,580 Saya akan melakukan beberapa sangat tingkat tinggi melihat apa MVC adalah. 9 00:00:31,580 --> 00:00:32,285 Gabe? 10 00:00:32,285 --> 00:00:35,080 >> GABRIEL Guimaraes: Aku akan berbicara tentang Ruby dan sedikit 11 00:00:35,080 --> 00:00:39,100 bagaimana Rails bekerja dan bagaimana hal itu dapat membantu Anda membangun aplikasi web. 12 00:00:39,100 --> 00:00:42,070 >> ZACK Chauvin: Dan aku akan menunjukkan contoh spesifik bagaimana 13 00:00:42,070 --> 00:00:45,112 menggunakan Rails untuk membangun aplikasi super awesome. 14 00:00:45,112 --> 00:00:46,112 STEPHEN Turban: Awesome. 15 00:00:46,112 --> 00:00:46,350 Manis. 16 00:00:46,350 --> 00:00:46,850 Baiklah. 17 00:00:46,850 --> 00:00:49,510 Jadi mari kita bicara tentang MVC. 18 00:00:49,510 --> 00:00:54,970 Jadi mari kita pergi ke slide berikutnya, yang Saya akan melakukan dengan menekan tombol ini. 19 00:00:54,970 --> 00:01:12,640 Dan mari kita pergi ke pengembangan next--, Saya suka berpikir tentang pergi ke CVS, 20 00:01:12,640 --> 00:01:17,240 karena CVS adalah toko dan juga memiliki V di tengah. 21 00:01:17,240 --> 00:01:21,460 >> Dan mari kita bayangkan ke toko. 22 00:01:21,460 --> 00:01:25,380 Dan mari kita membuat toko ini menjual hanya satu hal. 23 00:01:25,380 --> 00:01:31,380 Jadi kita akan memiliki ini menyimpan hanya menjual ini cangkir merah. 24 00:01:31,380 --> 00:01:40,410 Dan bayangkan Anda berjalan di, dan Anda pergi ke depan toko, dan orang. 25 00:01:40,410 --> 00:01:43,440 Dan namanya adalah Vince. 26 00:01:43,440 --> 00:01:48,370 >> Dan Vince gelombang halo pada Anda, mengatakan hi. 27 00:01:48,370 --> 00:01:50,860 Dan Anda melihat satu hal tentang Vince. 28 00:01:50,860 --> 00:01:56,880 Jadi setiap kali kita berpikir tentang Vince, kami harus memikirkan dua kata sifat utama. 29 00:01:56,880 --> 00:02:00,600 Vince indah, tapi dia bodoh. 30 00:02:00,600 --> 00:02:01,320 OKE. 31 00:02:01,320 --> 00:02:06,810 Jadi, Anda tahu, bukan karena kesalahan sendiri, sayangnya, dia cantik. 32 00:02:06,810 --> 00:02:08,009 Dia adalah pandangan kami. 33 00:02:08,009 --> 00:02:10,539 Jadi anggota pemain pertama kami ada di sana. 34 00:02:10,539 --> 00:02:12,340 Perlu diingat bahwa. 35 00:02:12,340 --> 00:02:17,230 >> Sekarang, Anda bertanya Vince, Anda pergi, hei Vince. 36 00:02:17,230 --> 00:02:18,110 Saya pelanggan. 37 00:02:18,110 --> 00:02:19,130 Dia mengatakan hi. 38 00:02:19,130 --> 00:02:23,610 Aku benar-benar ingin salah satu dari cangkir merah. 39 00:02:23,610 --> 00:02:24,760 Dan apa Vince katakan? 40 00:02:24,760 --> 00:02:26,510 Apakah ada yang punya tahu apa kata Vince? 41 00:02:26,510 --> 00:02:30,340 42 00:02:30,340 --> 00:02:31,452 Aku akan panggilan dingin. 43 00:02:31,452 --> 00:02:32,660 Apa yang Anda pikirkan Vince mengatakan? 44 00:02:32,660 --> 00:02:36,139 >> AUDIENCE: Dia mengatakan, saya bisa menunjukkan Anda di mana itu, tapi aku tidak bisa memberikan Anda satu. 45 00:02:36,139 --> 00:02:41,330 >> STEPHEN Turban: Dia mengatakan, saya bisa menunjukkan Anda di mana itu, tapi aku tidak bisa memberikan Anda satu. 46 00:02:41,330 --> 00:02:42,295 Lebih buruk lagi. 47 00:02:42,295 --> 00:02:44,420 Orang lain memiliki lain tahu apa Vince mungkin mengatakan? 48 00:02:44,420 --> 00:02:46,957 >> AUDIENCE: Dia harus pergi cek jika mereka memiliki cangkir merah. 49 00:02:46,957 --> 00:02:49,290 STEPHEN Turban: Vince tidak bahkan tahu dia harus memeriksa. 50 00:02:49,290 --> 00:02:50,070 Ada yang lain? 51 00:02:50,070 --> 00:02:52,360 Jadi Anda mengatakan, harus memeriksa apakah ia memiliki cangkir merah. 52 00:02:52,360 --> 00:02:52,895 Lanjutkan. 53 00:02:52,895 --> 00:02:54,020 AUDIENCE: Apa cangkir merah? 54 00:02:54,020 --> 00:02:56,072 STEPHEN Turban: Apa cangkir merah? 55 00:02:56,072 --> 00:02:58,090 Apa secangkir merah? 56 00:02:58,090 --> 00:02:59,410 Vince bingung. 57 00:02:59,410 --> 00:03:05,141 Jadi Vince akan berbicara dengan pemeran berikutnya, Carl. 58 00:03:05,141 --> 00:03:10,252 Dan ketika kita berpikir tentang Carl, kita Harus berpikir tentang dua adjectives-- besar 59 00:03:10,252 --> 00:03:15,110 dia mengendalikan, tapi dia tidak mampu. 60 00:03:15,110 --> 00:03:17,840 >> Jadi Vince goes-- dia pergi, apa secangkir merah? 61 00:03:17,840 --> 00:03:19,800 Aku tidak tahu apa secangkir merah. 62 00:03:19,800 --> 00:03:23,080 Dia berbalik, dan ia meminta Carl. 63 00:03:23,080 --> 00:03:28,890 Dia mengatakan, Carl, seseorang meminta secangkir merah. 64 00:03:28,890 --> 00:03:30,722 Anda bisa melakukan itu? 65 00:03:30,722 --> 00:03:31,680 Dan apa Carl katakan? 66 00:03:31,680 --> 00:03:32,513 Mari kita mencari tahu. 67 00:03:32,513 --> 00:03:34,330 Ada yang punya tahu apa kata Carl? 68 00:03:34,330 --> 00:03:37,260 Dan aku hanya akan mengulanginya kembali kepada Anda. 69 00:03:37,260 --> 00:03:39,280 Aku melihat gerakan tangan. 70 00:03:39,280 --> 00:03:41,760 >> AUDIENCE: Dia mengatakan seseorang lain untuk mendapatkan cangkir merah. 71 00:03:41,760 --> 00:03:44,430 >> STEPHEN Turban: Dia mengatakan orang lain untuk mendapatkan cangkir merah. 72 00:03:44,430 --> 00:03:46,270 Tepat. 73 00:03:46,270 --> 00:03:49,010 Dan kita punya ide siapa orang yang mungkin? 74 00:03:49,010 --> 00:03:52,590 75 00:03:52,590 --> 00:03:53,090 Ini petunjuk. 76 00:03:53,090 --> 00:03:56,960 Ini akan mulai dengan M. Mob? 77 00:03:56,960 --> 00:04:00,225 >> AUDIENCE: Model. 78 00:04:00,225 --> 00:04:02,720 >> STEPHEN Turban: Model, ya. 79 00:04:02,720 --> 00:04:06,920 Namanya tidak Model, sayangnya, karena itulah nama konyol. 80 00:04:06,920 --> 00:04:09,310 Kami memiliki Mitt. 81 00:04:09,310 --> 00:04:12,970 Dan ketika kita berpikir tentang Mitt-- tidak, ini bukan gambar Zack. 82 00:04:12,970 --> 00:04:15,590 83 00:04:15,590 --> 00:04:21,759 Kita harus berpikir dua kata sifat kunci dengan Mitt. 84 00:04:21,759 --> 00:04:25,040 Dia mampu, tapi dia tunduk. 85 00:04:25,040 --> 00:04:29,950 Jadi Mitt tahu apa yang harus dia lakukan, tapi dia benar-benar tidak bisa berbuat apa-apa. 86 00:04:29,950 --> 00:04:32,340 Atau dia benar-benar tidak bisa memutuskan sendiri. 87 00:04:32,340 --> 00:04:33,256 >> Jadi kita harus Carl. 88 00:04:33,256 --> 00:04:34,705 Carl berteriak pada Mitt. 89 00:04:34,705 --> 00:04:39,990 Dan dia berkata, hey Mitt, kita perlu cangkir merah. 90 00:04:39,990 --> 00:04:46,410 Dan Mitt pergi ke Piala penyimpanan merahnya. 91 00:04:46,410 --> 00:04:48,960 Dia mengambil cangkir, dan ia memberikan kembali. 92 00:04:48,960 --> 00:04:51,360 Ada yang punya tahu apa yang terjadi kemudian? 93 00:04:51,360 --> 00:04:54,070 94 00:04:54,070 --> 00:04:55,120 Memberikan cangkir. 95 00:04:55,120 --> 00:05:01,740 Sejauh Mitt telah pergi ke merahnya cup repositori, diambil keluar, 96 00:05:01,740 --> 00:05:03,550 diperiksa off, kata, Aku mengambil satu cangkir merah. 97 00:05:03,550 --> 00:05:06,717 Dan dia memberikannya kepada Carl. 98 00:05:06,717 --> 00:05:07,550 Apakah Anda punya ide? 99 00:05:07,550 --> 00:05:08,980 Bagaimana menurutmu Carl tidak? 100 00:05:08,980 --> 00:05:10,926 >> AUDIENCE: Carl memberikannya kepada Vince. 101 00:05:10,926 --> 00:05:13,550 >> STEPHEN Turban: Carl memberikannya kepada Vince. 102 00:05:13,550 --> 00:05:14,165 Vince. 103 00:05:14,165 --> 00:05:15,999 >> AUDIENCE: Dan Vince menunjukkan kepada [tidak terdengar]. 104 00:05:15,999 --> 00:05:16,998 STEPHEN Turban: Tepat. 105 00:05:16,998 --> 00:05:18,080 Jadi itulah itu. 106 00:05:18,080 --> 00:05:21,040 Jadi Vince mengambil cangkir, bahkan tidak tahu apa itu, 107 00:05:21,040 --> 00:05:23,840 tetapi ia menunjukkan kepada pengguna. 108 00:05:23,840 --> 00:05:27,140 Jadi mari kita coba untuk menciptakan ini benar-benar singkat. 109 00:05:27,140 --> 00:05:31,380 Dan kita akan membutuhkan tiga relawan diam, 110 00:05:31,380 --> 00:05:35,260 seperti yang kalian tidak akan untuk dapat berbicara. 111 00:05:35,260 --> 00:05:36,470 Jadi bisa saya ambil tiga? 112 00:05:36,470 --> 00:05:37,040 OKE. 113 00:05:37,040 --> 00:05:38,248 Dan siapa yang akan Anda ingin menjadi? 114 00:05:38,248 --> 00:05:42,310 115 00:05:42,310 --> 00:05:43,750 >> AUDIENCE: Aku akan Vince. 116 00:05:43,750 --> 00:05:44,960 >> STEPHEN Turban: Vince, OK. 117 00:05:44,960 --> 00:05:46,190 Indah tapi bodoh. 118 00:05:46,190 --> 00:05:47,510 Hebat Sekali. 119 00:05:47,510 --> 00:05:48,570 Orang lain? 120 00:05:48,570 --> 00:05:53,520 Kami sedang mencari mampu tetapi tunduk. 121 00:05:53,520 --> 00:05:55,760 Orang lain ingin menjadi mampu? 122 00:05:55,760 --> 00:05:56,944 >> AUDIENCE: Aku bisa Carl. 123 00:05:56,944 --> 00:05:57,860 STEPHEN Turban: Manis. 124 00:05:57,860 --> 00:05:59,102 Kami punya Carl. 125 00:05:59,102 --> 00:05:59,866 >> AUDIENCE: Mitt. 126 00:05:59,866 --> 00:06:01,050 >> STEPHEN Turban: Mitt, OK. 127 00:06:01,050 --> 00:06:05,070 Dan kita akan membutuhkan a-- Aku akan pelanggan. 128 00:06:05,070 --> 00:06:07,460 Jadi datang ke atas, datang ke atas. 129 00:06:07,460 --> 00:06:10,470 Dan semua orang dalam pandangan? 130 00:06:10,470 --> 00:06:15,440 Jadi aku akan meminta Vince ke berdiri di depan, hanya tersenyum, 131 00:06:15,440 --> 00:06:18,230 hanya tersenyum seterang mungkin. 132 00:06:18,230 --> 00:06:21,520 Dan kita akan meminta Carl, benar, kenapa tidak Anda, seperti, 133 00:06:21,520 --> 00:06:24,050 berdiri tepat di belakangnya? 134 00:06:24,050 --> 00:06:26,660 Dan Mitt, kenapa tidak Anda hanya pergi di belakang, 135 00:06:26,660 --> 00:06:31,410 dan kemudian saya akan memberikan kelompok cangkir untuk bergaul dengan. 136 00:06:31,410 --> 00:06:34,170 >> Jadi aku pelanggan. 137 00:06:34,170 --> 00:06:35,610 Saya datang. 138 00:06:35,610 --> 00:06:40,490 Dan saya membuat [tidak terdengar] Saya mengatakan, hi, saya ingin cangkir. 139 00:06:40,490 --> 00:06:43,214 140 00:06:43,214 --> 00:06:44,580 Sempurna. 141 00:06:44,580 --> 00:06:45,580 Jadi Vince tidak tahu. 142 00:06:45,580 --> 00:06:46,915 Jadi apa Vince lakukan selanjutnya? 143 00:06:46,915 --> 00:06:50,770 144 00:06:50,770 --> 00:06:52,860 Vince-- OK, jadi aku akan untuk menceritakan sekarang. 145 00:06:52,860 --> 00:06:55,390 >> Vince berteriak pada Carl, cangkir! 146 00:06:55,390 --> 00:06:58,840 147 00:06:58,840 --> 00:07:00,790 Apa Carl lakukan? 148 00:07:00,790 --> 00:07:03,910 Carl berteriak Mitt. 149 00:07:03,910 --> 00:07:06,710 Mitt meraih cangkir. 150 00:07:06,710 --> 00:07:08,220 Mitt memberikannya kepada Carl. 151 00:07:08,220 --> 00:07:10,870 Carl kembali ke Vince. 152 00:07:10,870 --> 00:07:12,640 Dan Vince menunjukkan kepada pengguna. 153 00:07:12,640 --> 00:07:17,960 >> Dan itu adalah tinggi, tinggi, tinggi, melihat begitu tinggi di MVC. 154 00:07:17,960 --> 00:07:22,460 Kami membaginya dengan memiliki pandangan, apa pengguna melihat, controller, seseorang 155 00:07:22,460 --> 00:07:25,760 yang melakukan segala sesuatu di latar belakang tapi benar-benar tidak dapat memperbarui apa-apa 156 00:07:25,760 --> 00:07:29,960 atau tidak bisa melakukan apa-apa signifikansi apapun kecuali memanggil pandangan dan model. 157 00:07:29,960 --> 00:07:35,280 Dan kemudian kita harus Mitt, model, yang update Data apapun yang kita miliki. 158 00:07:35,280 --> 00:07:42,660 Jadi terima kasih banyak untuk yang indah, mengendalikan, dan relawan mampu. 159 00:07:42,660 --> 00:07:43,730 Dan saya pikir itu saja. 160 00:07:43,730 --> 00:07:45,040 >> [TEPUK TANGAN] 161 00:07:45,040 --> 00:07:48,745 >> Saya pikir Gabe akan bicara sekarang pada tingkat mudah-mudahan kurang tinggi. 162 00:07:48,745 --> 00:07:51,600 >> GABRIEL Guimaraes: OK, guys. 163 00:07:51,600 --> 00:07:56,790 Sekarang mari kita bicara sedikit tentang kode dan Ruby on Rails itu sendiri, 164 00:07:56,790 --> 00:08:00,750 dan bagaimana hal ini berkaitan semua cerita MVC ini. 165 00:08:00,750 --> 00:08:03,190 Pada dasarnya, Ruby on Rails adalah framework. 166 00:08:03,190 --> 00:08:04,640 Lebih lanjut tentang bahwa dalam satu detik. 167 00:08:04,640 --> 00:08:07,760 >> Tapi hanya untuk memberi Anda rasa siapa yang menggunakannya, 168 00:08:07,760 --> 00:08:12,240 seperti, semua ini companies-- besar jadi GitHub, Groupon, Twitter-- 169 00:08:12,240 --> 00:08:15,300 mereka semua menggunakan Ruby on Rails sebagai kerangka utama mereka 170 00:08:15,300 --> 00:08:16,510 untuk melaksanakan situs web mereka. 171 00:08:16,510 --> 00:08:19,130 Jadi saya yakin banyak orang telah menggunakan situs ini di sini. 172 00:08:19,130 --> 00:08:24,470 Dan itu semua Ruby on Rails untuk melaksanakan model, pandangan, dan controller 173 00:08:24,470 --> 00:08:26,890 pada semua situs ini dan banyak lagi. 174 00:08:26,890 --> 00:08:27,830 OKE? 175 00:08:27,830 --> 00:08:32,090 >> Jadi seperti yang saya katakan, Ruby on Rails adalah framework. 176 00:08:32,090 --> 00:08:37,237 Dan Anda dapat jenis memikirkan kerangka dalam arti seperti membangun rumah. 177 00:08:37,237 --> 00:08:39,570 Jadi jika Anda akan membangun sebuah house-- dan Anda selalu dapat 178 00:08:39,570 --> 00:08:40,653 mulai dari awal, kan? 179 00:08:40,653 --> 00:08:46,440 Anda dapat mencoba untuk datang dengan cara untuk melihat kayu, 180 00:08:46,440 --> 00:08:49,760 dan untuk membawa kayu ke tempat, dan untuk mendapatkan batu dalam bentuk yang tepat, 181 00:08:49,760 --> 00:08:51,250 dan kemudian semua itu. 182 00:08:51,250 --> 00:08:54,020 Tapi itu akan mengambil mungkin banyak tahun 183 00:08:54,020 --> 00:08:56,910 sampai Anda mendapatkan semua bahan, dan Anda mendapatkan segala sesuatu bersama-sama, 184 00:08:56,910 --> 00:08:58,790 dan Anda benar-benar mulai untuk membangun rumah Anda. 185 00:08:58,790 --> 00:09:01,748 >> Jadi ternyata jika Anda mulai dengan kerangka dengan sesuatu yang 186 00:09:01,748 --> 00:09:04,260 sudah jenis di tempat untuk semua jenis rumah 187 00:09:04,260 --> 00:09:07,750 bahwa Anda ingin build-- sesuatu itu sangat generik tetapi Anda bisa 188 00:09:07,750 --> 00:09:12,850 kemudian memodelkan arah Anda sendiri goals-- maka Anda dapat memanfaatkan 189 00:09:12,850 --> 00:09:16,800 kekuatan ini dari kerangka kerja untuk membangun mereka sesuatu yang jauh, jauh lebih cepat. 190 00:09:16,800 --> 00:09:17,300 OKE. 191 00:09:17,300 --> 00:09:21,110 Jadi, ini adalah ide yang sama dalam framework untuk aplikasi web 192 00:09:21,110 --> 00:09:23,755 atau untuk semua jenis aplikasi, dalam hal ini. 193 00:09:23,755 --> 00:09:26,560 >> Anda benar-benar mulai keluar dengan setengah aplikasi yang 194 00:09:26,560 --> 00:09:28,400 sudah ada di tempat untuk Anda. 195 00:09:28,400 --> 00:09:32,230 Dan dengan itu, saya berarti Anda mendapatkan banyak file yang sudah memiliki fungsi, 196 00:09:32,230 --> 00:09:36,830 seperti perpustakaan, seperti fungsi, dan perintah yang dapat dijalankan untuk 197 00:09:36,830 --> 00:09:40,500 untuk membuat hidup Anda lebih sederhana dan lebih mudah. 198 00:09:40,500 --> 00:09:41,180 OKE. 199 00:09:41,180 --> 00:09:43,555 >> Jadi dalam hal ini, kita akan untuk berbicara tentang Ruby on Rails. 200 00:09:43,555 --> 00:09:45,920 Ada banyak berbeda kerangka kerja di luar sana. 201 00:09:45,920 --> 00:09:47,550 Ada Django untuk Python. 202 00:09:47,550 --> 00:09:50,990 Ada kerangka Zend atau Laravel untuk PHP. 203 00:09:50,990 --> 00:09:52,390 Ada banyak orang yang berbeda. 204 00:09:52,390 --> 00:09:56,830 Ruby on Rails adalah yang baru cukup bagus. 205 00:09:56,830 --> 00:10:01,600 Banyak orang menggunakan bahwa dalam startups dan lingkungan semacam ini. 206 00:10:01,600 --> 00:10:04,250 Dan beberapa di antaranya sangat besar perusahaan yang saya menunjukkan di sini sebelum 207 00:10:04,250 --> 00:10:06,050 juga menggunakan Ruby on Rails. 208 00:10:06,050 --> 00:10:10,070 >> Jadi hanya untuk memberi Anda rasa apa Ruby adalah 209 00:10:10,070 --> 00:10:13,030 seperti, karena kalian lebih digunakan untuk, seperti, C dan sedikit PHP 210 00:10:13,030 --> 00:10:17,560 sekarang, jadi Ruby akan menjadi setara dengan PHP Anda dalam pengertian ini. 211 00:10:17,560 --> 00:10:18,380 Ini bukan Ruby. 212 00:10:18,380 --> 00:10:19,830 Ini adalah C. OK? 213 00:10:19,830 --> 00:10:22,660 Tapi ini adalah seperti Fungsi DJBHash yang saya 214 00:10:22,660 --> 00:10:27,170 tahu banyak orang yang digunakan untuk salah eja PSET. 215 00:10:27,170 --> 00:10:29,670 >> Dan di Ruby, cukup seperti di PHP, Anda 216 00:10:29,670 --> 00:10:32,745 bisa menerapkan ini dengan hanya beberapa baris kode. 217 00:10:32,745 --> 00:10:34,870 Daripada harus khawatir tentang fungsi hash, 218 00:10:34,870 --> 00:10:37,950 harus khawatir tentang ember, dan semua itu, Anda hanya bisa mengatakan, 219 00:10:37,950 --> 00:10:40,160 kamus = Hash.net. 220 00:10:40,160 --> 00:10:44,560 Dan kemudian Anda menggunakan jenis seperti ide yang sama yang telah PHP. 221 00:10:44,560 --> 00:10:45,970 Dan jadi true. 222 00:10:45,970 --> 00:10:48,080 Dan kemudian jika Anda ingin cek, jadi fungsi 223 00:10:48,080 --> 00:10:51,560 kalau kamus "foo" equals sama benar, kembali benar. 224 00:10:51,560 --> 00:10:52,580 Dan itu semua, OK? 225 00:10:52,580 --> 00:10:54,030 >> Jadi Anda melihat beberapa perbedaan. 226 00:10:54,030 --> 00:10:57,940 Tidak ada semi-titik dua di sini, karena ada di C. 227 00:10:57,940 --> 00:11:00,710 Tapi ide umum sangat mirip. 228 00:11:00,710 --> 00:11:02,030 OKE? 229 00:11:02,030 --> 00:11:08,010 >> Juga, di Ruby, ada permata, yang adalah jenis perpustakaan Ruby. 230 00:11:08,010 --> 00:11:12,460 Dan Rails menangani mereka cara yang sangat baik untuk Anda. 231 00:11:12,460 --> 00:11:15,480 Jadi jika Anda ingin menempatkan di beberapa perpustakaan yang 232 00:11:15,480 --> 00:11:18,670 melakukan email, atau melakukan pesan teks, 233 00:11:18,670 --> 00:11:22,170 atau yang melakukan integrasi dengan Facebook, atau segala hal 234 00:11:22,170 --> 00:11:24,374 seperti itu untuk aplikasi Anda, itu sangat, sangat mudah. 235 00:11:24,374 --> 00:11:26,790 Kemungkinan besar Anda dapat menemukan sesuatu seperti itu di internet. 236 00:11:26,790 --> 00:11:30,300 Dan mereka hanya melakukan sesuatu seperti put yang 237 00:11:30,300 --> 00:11:32,290 Permata yang ingin Anda gunakan dalam file permata. 238 00:11:32,290 --> 00:11:33,749 Dan kemudian Rails menginstal segalanya. 239 00:11:33,749 --> 00:11:36,456 Anda tidak perlu khawatir tentang apapun itu, sehingga benar-benar keren. 240 00:11:36,456 --> 00:11:38,500 Juga, ada banyak, banyak bantuan online. 241 00:11:38,500 --> 00:11:40,485 Jadi, Anda dapat menemukan banyak hal. 242 00:11:40,485 --> 00:11:42,360 Jika Anda memiliki kesalahan, Anda hanya dapat Google itu, 243 00:11:42,360 --> 00:11:45,090 dan itu akan menjadi sangat mudah untuk mendapatkan bantuan. 244 00:11:45,090 --> 00:11:47,200 >> Dan itu banyak fun-- exactly-- karena Anda 245 00:11:47,200 --> 00:11:51,420 tidak perlu khawatir tentang tingkat rendah rincian, pelaksanaan tabel hash 246 00:11:51,420 --> 00:11:58,080 dan harus datang dengan semua header HTTP, dan banyak hal, 247 00:11:58,080 --> 00:12:00,197 dan bahkan beberapa lebih tinggi hal tingkat. 248 00:12:00,197 --> 00:12:02,030 Anda tidak perlu khawatir tentang itu di Rails. 249 00:12:02,030 --> 00:12:04,010 Itu tidak sangat, sangat baik untuk Anda. 250 00:12:04,010 --> 00:12:07,490 Dan kita akan menunjukkan bahwa lebih konkret segera. 251 00:12:07,490 --> 00:12:08,130 OKE. 252 00:12:08,130 --> 00:12:09,750 >> Jadi sedikit tentang Ruby lagi. 253 00:12:09,750 --> 00:12:11,420 Jadi itu hanya seperti C, seperti yang saya katakan. 254 00:12:11,420 --> 00:12:14,170 Alih-alih printf, kita katakan "Menempatkan," yang "menempatkan string." 255 00:12:14,170 --> 00:12:18,100 Ini menempatkan string ke konsol. 256 00:12:18,100 --> 00:12:20,601 Dan dalam hal ini, kami hanya mencetak "Hello World." 257 00:12:20,601 --> 00:12:23,100 Kita tidak perlu tanda kurung, tapi itu cukup banyak yang sama. 258 00:12:23,100 --> 00:12:26,190 >> Dan kemudian jika Anda ingin untuk melakukan sesuatu di sini, 259 00:12:26,190 --> 00:12:30,450 seperti mencetak sekelompok "smalls" dan sekelompok "bigs" dalam lingkaran Sementara, 260 00:12:30,450 --> 00:12:32,060 itu jenis seperti di C, kan? 261 00:12:32,060 --> 00:12:35,090 Anda tidak memiliki params, tapi itu hampir sama. 262 00:12:35,090 --> 00:12:37,300 Lekukan di sini jumlah, sehingga x sama dengan 1. 263 00:12:37,300 --> 00:12:41,250 Dan kemudian Sementara x lebih kecil dari 50-- ini adalah Jika, ini adalah sebuah Lain. 264 00:12:41,250 --> 00:12:42,810 Hal ini cukup banyak seperti apa yang Anda lihat. 265 00:12:42,810 --> 00:12:47,150 >> Dan kemudian x + = 1 hanya incrementing, jenis seperti melakukan ++ yang Anda bisa 266 00:12:47,150 --> 00:12:50,213 lakukan di C. Tapi itu cukup banyak apa yang Anda lihat di C. 267 00:12:50,213 --> 00:12:52,380 Seharusnya tidak terlalu rumit. 268 00:12:52,380 --> 00:12:54,320 Tapi ini lebih kuat. 269 00:12:54,320 --> 00:13:00,100 Jadi ada beberapa perintah di sini yang pasti sedikit lebih baru. 270 00:13:00,100 --> 00:13:05,110 >> Jadi misalnya, "menempatkan." 271 00:13:05,110 --> 00:13:08,680 Anda dapat menggunakan notasi hashtag ini di sini untuk hanya mencetak something-- 272 00:13:08,680 --> 00:13:13,490 cukup banyak seperti apa yang akan Anda lakukan jika % D% atau C atau agak seperti itu. 273 00:13:13,490 --> 00:13:17,600 Dan Anda benar-benar dapat menempatkan Jika setelah pernyataan itu. 274 00:13:17,600 --> 00:13:21,180 Jadi saya hanya ingin melakukan this-- Jika x lebih besar dari 3. 275 00:13:21,180 --> 00:13:24,129 Jadi mengapa saya harus membuat seluruh Jika blok? 276 00:13:24,129 --> 00:13:24,670 Saya tidak tahu. 277 00:13:24,670 --> 00:13:28,880 Aku hanya bisa mencetak ini hanya jika x sama dengan lebih dari 3. 278 00:13:28,880 --> 00:13:32,740 Jadi ini adalah cara satu baris untuk melakukan hal ini di Ruby. 279 00:13:32,740 --> 00:13:35,570 >> Daftar di Ruby adalah sesuatu yang sangat serbaguna. 280 00:13:35,570 --> 00:13:38,110 Jadi Anda tidak benar-benar membutuhkan untuk memiliki hanya satu jenis. 281 00:13:38,110 --> 00:13:40,674 Anda dapat memiliki string, dan kemudian beberapa nomor, dan apa pun. 282 00:13:40,674 --> 00:13:42,590 Dan jika Anda ingin menambahkan sesuatu untuk daftar, 283 00:13:42,590 --> 00:13:46,860 Anda hanya bisa menggunakan ini notasi di sini. 284 00:13:46,860 --> 00:13:48,310 >> Dan jika Anda ingin beralih. 285 00:13:48,310 --> 00:13:56,200 Cukup banyak 4each di PHP, di sini, Anda memiliki daftar dan Anda melakukan "List.each lakukan." 286 00:13:56,200 --> 00:13:59,464 Dan ini "elem," ini seperti nama setiap elemen 287 00:13:59,464 --> 00:14:00,880 bahwa aku akan ada di daftar saya. 288 00:14:00,880 --> 00:14:03,890 Dan kemudian aku hanya bisa "menempatkan elem." 289 00:14:03,890 --> 00:14:07,130 Dan "menempatkan" cukup banyak menangani menempatkan untuk Anda, mencetaknya. 290 00:14:07,130 --> 00:14:09,920 Tidak masalah jika itu string atau int. 291 00:14:09,920 --> 00:14:12,790 Ini akan bekerja bahwa untuk Anda. 292 00:14:12,790 --> 00:14:14,270 Yang Tepat? 293 00:14:14,270 --> 00:14:14,790 Keren. 294 00:14:14,790 --> 00:14:19,980 >> Dan seperti PHP, Ruby dan HTML juga mengintegrasikan sangat, sangat baik. 295 00:14:19,980 --> 00:14:23,340 Dan di sini, ada beberapa HTML dengan Ruby di dalamnya. 296 00:14:23,340 --> 00:14:25,860 Jadi kita memiliki tag tubuh seperti di HTML. 297 00:14:25,860 --> 00:14:28,270 Dan jika kita ingin memeriksa bahwa pengguna, misalnya, 298 00:14:28,270 --> 00:14:35,730 login, kita hanya bisa mengatakan, mulai dari Ruby, jika user.logged_in ?, akhir Ruby. 299 00:14:35,730 --> 00:14:39,240 Cetak hal ini seluruh, yang memiliki beberapa Ruby di dalamnya, yang hanya 300 00:14:39,240 --> 00:14:42,230 jenis seperti itu sintaks untuk PHP yang mencetak variabel. 301 00:14:42,230 --> 00:14:43,380 Mari kita mencetak user.name tersebut. 302 00:14:43,380 --> 00:14:48,870 >> Jadi menyambut, Stephen, dalam sebuah div HTML. 303 00:14:48,870 --> 00:14:53,760 Dan pada akhirnya, kita memiliki "end" dan Kode Ruby, yang berarti ini adalah saya 304 00:14:53,760 --> 00:14:54,470 Jika blok. 305 00:14:54,470 --> 00:14:55,060 OKE? 306 00:14:55,060 --> 00:14:57,684 Jadi itu hanya seperti sebuah mulus integrasi antara Ruby dan HTML. 307 00:14:57,684 --> 00:15:00,056 308 00:15:00,056 --> 00:15:01,430 Ada juga banyak sumber daya. 309 00:15:01,430 --> 00:15:06,290 Namun sebelum kita melanjutkan, apakah ada yang memiliki pertanyaan tentang Ruby, apa pun? 310 00:15:06,290 --> 00:15:08,960 OKE. 311 00:15:08,960 --> 00:15:12,250 >> Ada banyak sumber daya online untuk tryruby.org, Kode Academy, 312 00:15:12,250 --> 00:15:18,740 ruby-lang.org, di mana Anda dapat mencobanya keluar pada browser Anda sebelum Anda benar-benar 313 00:15:18,740 --> 00:15:22,310 mengatakan, oh, OK, saya akan menggunakan Ruby untuk proyek akhir saya. 314 00:15:22,310 --> 00:15:24,020 Dan pasti memberikan yang mencoba. 315 00:15:24,020 --> 00:15:26,510 Semua slide ini akan tersedia secara online, 316 00:15:26,510 --> 00:15:28,950 sehingga Anda hanya dapat men-download mereka. 317 00:15:28,950 --> 00:15:30,115 Dan ya? 318 00:15:30,115 --> 00:15:31,889 >> AUDIENCE: [tidak terdengar] apa yang Anda hanya menunjukkan 319 00:15:31,889 --> 00:15:36,851 adalah HTML dan kode tertanam ke untuk gagasan ini Model View 320 00:15:36,851 --> 00:15:37,350 Controller? 321 00:15:37,350 --> 00:15:37,610 >> GABRIEL Guimaraes: Ya. 322 00:15:37,610 --> 00:15:40,290 Kami akan melakukan itu dalam satu detik ketika kita menunjukkan contoh kita, OK? 323 00:15:40,290 --> 00:15:41,290 Terima kasih atas pertanyaannya. 324 00:15:41,290 --> 00:15:44,760 Jadi pertanyaannya adalah pada dasarnya jika kita dapat menunjukkan integrasi ini Ruby 325 00:15:44,760 --> 00:15:49,230 dalam HTML dalam Model Lihat kerangka Controller. 326 00:15:49,230 --> 00:15:51,710 >> Jadi ide Model Kerangka View Controller 327 00:15:51,710 --> 00:15:55,740 itu pada dasarnya filsafat, seperti Stephen menunjukkan di sini. 328 00:15:55,740 --> 00:15:58,177 Dan itu bukan sesuatu yang harus Anda lakukan, 329 00:15:58,177 --> 00:16:00,510 tapi itu adalah sesuatu yang membuat hidup Anda jauh lebih mudah. 330 00:16:00,510 --> 00:16:04,170 Dan Ruby on Rails dibangun sekitar filosofi ini kode. 331 00:16:04,170 --> 00:16:06,320 Jadi kita akan menunjukkan contoh segera. 332 00:16:06,320 --> 00:16:07,340 >> Jadi Rails adalah cinta. 333 00:16:07,340 --> 00:16:09,140 Banyak orang yang menggunakannya, seperti yang saya katakan. 334 00:16:09,140 --> 00:16:10,510 Dan itu benar-benar menyenangkan. 335 00:16:10,510 --> 00:16:12,360 Kalian harus pasti mencobanya. 336 00:16:12,360 --> 00:16:15,120 MVC membuat segalanya lebih mudah. 337 00:16:15,120 --> 00:16:18,110 Jadi Model View Controller, hal-hal yang memisahkan 338 00:16:18,110 --> 00:16:21,450 dan menempatkan satu orang, per se, atau salah satu bagian dari aplikasi Anda 339 00:16:21,450 --> 00:16:24,850 untuk melakukan setiap pekerjaan yang berbeda bahwa aplikasi Anda harus dilakukan. 340 00:16:24,850 --> 00:16:26,676 Dan sedikit waktu yang dihabiskan pada masalah tingkat rendah. 341 00:16:26,676 --> 00:16:27,800 Dan sangat populer sekarang. 342 00:16:27,800 --> 00:16:29,917 Kami memiliki Rails 4.0, yang merupakan versi baru. 343 00:16:29,917 --> 00:16:31,500 Dan ia datang dengan banyak hal keren. 344 00:16:31,500 --> 00:16:32,562 Pertanyaan lain. 345 00:16:32,562 --> 00:16:34,490 >> AUDIENCE: Pertanyaan lain. 346 00:16:34,490 --> 00:16:39,310 Ruby on Rails dibandingkan Ruby on Rails Grails. 347 00:16:39,310 --> 00:16:40,230 >> GABRIEL Guimaraes: OK. 348 00:16:40,230 --> 00:16:42,252 Pertanyaannya adalah, Ruby on Rails dibandingkan Ruby-- 349 00:16:42,252 --> 00:16:42,960 AUDIENCE: Grails. 350 00:16:42,960 --> 00:16:43,490 Ruby? 351 00:16:43,490 --> 00:16:44,490 >> GABRIEL Guimaraes: Ya. 352 00:16:44,490 --> 00:16:45,955 Jadi Ruby adalah bahasa. 353 00:16:45,955 --> 00:16:46,745 >> AUDIENCE: No. 354 00:16:46,745 --> 00:16:50,360 Saya meminta Anda untuk membandingkan bahasa dan kerangka kerja, Ruby on Rails, 355 00:16:50,360 --> 00:16:52,975 dengan bahasa lain yang populer framework-- Grails-- dengan Ruby 356 00:16:52,975 --> 00:16:53,310 on Rails. 357 00:16:53,310 --> 00:16:53,720 >> GABRIEL Guimaraes: OK. 358 00:16:53,720 --> 00:16:54,480 Mohon Maaf. 359 00:16:54,480 --> 00:16:57,390 Pertanyaan itu, membandingkan Ruby dan Ruby on Rails 360 00:16:57,390 --> 00:16:59,750 kerangka lain dan another-- 361 00:16:59,750 --> 00:17:01,022 >> AUDIENCE: Ruby. 362 00:17:01,022 --> 00:17:01,954 Tidak apa-apa. 363 00:17:01,954 --> 00:17:03,820 Jika Anda tidak tahu tentang hal itu, itu baik-baik saja. 364 00:17:03,820 --> 00:17:05,359 >> GABRIEL Guimaraes: Seperti, apa yang saya pahami adalah itu-- 365 00:17:05,359 --> 00:17:07,080 >> AUDIENCE: Ada satu lagi Kerangka disebut Grails. 366 00:17:07,080 --> 00:17:07,700 >> GABRIEL Guimaraes: Oh, Grails. 367 00:17:07,700 --> 00:17:08,650 Aku tidak pernah mendengar tentang hal itu. 368 00:17:08,650 --> 00:17:09,640 Mohon Maaf. 369 00:17:09,640 --> 00:17:11,690 Aku pernah mendengar tentang Groovy on Rails. 370 00:17:11,690 --> 00:17:12,744 Mohon Maaf. 371 00:17:12,744 --> 00:17:14,869 >> AUDIENCE: Ini jauh lebih baik terintegrasi dengan Java. 372 00:17:14,869 --> 00:17:15,450 >> GABRIEL Guimaraes: Saya melihat. 373 00:17:15,450 --> 00:17:17,555 >> AUDIENCE: Saya hanya ingin tahu tentang beberapa orang yang saya tahu like-- 374 00:17:17,555 --> 00:17:20,240 >> GABRIEL Guimaraes: Tidak, saya tidak pernah mendengar satu itu, sayangnya. 375 00:17:20,240 --> 00:17:20,700 Grails. 376 00:17:20,700 --> 00:17:21,410 >> AUDIENCE: Dan beberapa orang jelas seperti Ruby on Rails. 377 00:17:21,410 --> 00:17:22,640 >> GABRIEL Guimaraes: Saya sudah digunakan Ruby on Rails banyak. 378 00:17:22,640 --> 00:17:24,790 Saya telah menggunakan beberapa Django dengan Python, seperti yang saya katakan. 379 00:17:24,790 --> 00:17:26,329 Saya telah menggunakan beberapa Laravel. 380 00:17:26,329 --> 00:17:29,490 Tapi aku tidak menggunakan Groovy on Rails. 381 00:17:29,490 --> 00:17:31,630 Mohon Maaf. 382 00:17:31,630 --> 00:17:34,040 Dan itu sangat populer sekarang dengan Rails 4.0. 383 00:17:34,040 --> 00:17:38,180 Seperti, beberapa hal yang Rails lakukan untuk Anda, misalnya, adalah Anda 384 00:17:38,180 --> 00:17:43,650 memiliki banyak file CSS dan banyak file JavaScript. 385 00:17:43,650 --> 00:17:45,790 Dan Anda dapat memperlakukan mereka sebagai terpisah dan semuanya. 386 00:17:45,790 --> 00:17:50,010 >> Tapi kemudian ketika automatically-- Anda mengirim kode untuk produksi, 387 00:17:50,010 --> 00:17:52,770 secara otomatis mengkompilasi mereka semua menjadi satu file tunggal 388 00:17:52,770 --> 00:17:55,150 yang minified tanpa ruang, sehingga tidak memakan 389 00:17:55,150 --> 00:17:59,400 ruang kurang dalam aplikasi Anda, sehingga bahwa Anda benar-benar dapat skala hal-hal banyak. 390 00:17:59,400 --> 00:18:04,380 Itu perusahaan besar mengapa seperti seperti Twitter dan GitHub 391 00:18:04,380 --> 00:18:10,220 menggunakan Rails, karena tidak semua untuk Anda, yang benar-benar keren. 392 00:18:10,220 --> 00:18:12,840 >> Satu hal yang sangat, sangat, sangat menakutkan 393 00:18:12,840 --> 00:18:18,450 bagi orang-orang, termasuk saya, yang mencoba untuk bekerja 394 00:18:18,450 --> 00:18:22,430 dengan kerangka di awal, adalah bahwa ketika Anda memulai aplikasi, 395 00:18:22,430 --> 00:18:24,440 Anda akan melihat sekelompok file. 396 00:18:24,440 --> 00:18:28,460 Seperti, ketika Anda membuat Rails Baru, Aplikasi My, 397 00:18:28,460 --> 00:18:31,710 Anda akan melihat semua ini folders-- app, bin, konfigurasi, db, lib, 398 00:18:31,710 --> 00:18:32,482 log, masyarakat. 399 00:18:32,482 --> 00:18:33,690 Seperti, banyak dan banyak hal. 400 00:18:33,690 --> 00:18:35,030 >> Dan pertama kali saya melihat bahwa, aku seperti, 401 00:18:35,030 --> 00:18:36,570 OK, saya tidak tahu apa yang terjadi. 402 00:18:36,570 --> 00:18:38,890 Saya hanya ingin membuat website dengan "Halo, dunia," 403 00:18:38,890 --> 00:18:41,730 dan ini memberi saya, seperti, 100 miliar halaman yang berbeda. 404 00:18:41,730 --> 00:18:43,070 Aku tidak tahu apa yang terjadi. 405 00:18:43,070 --> 00:18:47,460 Jadi jangan terlalu gentar dengan itu. 406 00:18:47,460 --> 00:18:53,699 >> Idenya adalah bahwa itu benar-benar memiliki setengah rumah di sana untuk Anda sudah. 407 00:18:53,699 --> 00:18:55,490 Ini memiliki seluruh kerangka kerja untuk Anda sudah. 408 00:18:55,490 --> 00:18:56,948 Itulah mengapa ada begitu banyak file. 409 00:18:56,948 --> 00:19:00,150 Tapi hal yang menyenangkan adalah bahwa hal itu memisahkan mereka semua sangat baik. 410 00:19:00,150 --> 00:19:03,370 Kemungkinan besar Anda tidak perlu khawatir tentang sebagian besar folder tersebut. 411 00:19:03,370 --> 00:19:05,820 >> Yang paling penting, saya akan mengatakan, adalah folder aplikasi, 412 00:19:05,820 --> 00:19:07,147 di mana aplikasi Anda benar-benar hidup. 413 00:19:07,147 --> 00:19:09,730 Jadi konfigurasi, Anda akan harus configurate beberapa hal, 414 00:19:09,730 --> 00:19:12,840 seperti database dan hal-hal seperti yang jenis database yang Anda gunakan. 415 00:19:12,840 --> 00:19:17,430 Tapi selain itu, seperti kebanyakan dari pekerjaan Anda akan dilakukan di app. 416 00:19:17,430 --> 00:19:21,620 Jadi dalam aplikasi, Anda memiliki aset, controller, pembantu, mailer, model, pemandangan. 417 00:19:21,620 --> 00:19:24,460 Jadi di sini, Anda mulai melihat bahwa controller, model, dan pandangan datang 418 00:19:24,460 --> 00:19:25,410 ke dalam bermain. 419 00:19:25,410 --> 00:19:27,270 >> Mailer hanya jika Anda ingin mengirim email. 420 00:19:27,270 --> 00:19:29,400 Pembantu jika Anda ingin membuat beberapa fungsi 421 00:19:29,400 --> 00:19:32,050 Anda menggunakan banyak dalam pandangan. 422 00:19:32,050 --> 00:19:34,490 Jadi Anda menempatkan mereka dalam pembantu. 423 00:19:34,490 --> 00:19:39,000 Dan aset dasarnya semua gambar, semua CSS Anda, 424 00:19:39,000 --> 00:19:41,200 semua Anda JavaScript, dan seperti yang jenis 425 00:19:41,200 --> 00:19:43,110 hal-hal yang akan dikirim ke klien. 426 00:19:43,110 --> 00:19:45,500 Dan semua yang ada di aset, yang saya katakan sebelumnya, akan minified. 427 00:19:45,500 --> 00:19:45,940 Itu dikompilasi. 428 00:19:45,940 --> 00:19:49,189 Dan Anda tidak benar-benar perlu khawatir tentang bahwa ketika ia pergi ke kode produksi. 429 00:19:49,189 --> 00:19:49,770 Keren. 430 00:19:49,770 --> 00:19:54,205 >> Sekarang Zack akan datang, dan dia akan melakukan contoh Twitter50. 431 00:19:54,205 --> 00:19:54,970 >> AUDIENCE: Woo-hoo! 432 00:19:54,970 --> 00:19:56,726 >> ZACK Chauvin: Awesome. 433 00:19:56,726 --> 00:20:00,180 Jadi saya memiliki kesempatan untuk bekerja dengan Ruby on Rails musim panas ini. 434 00:20:00,180 --> 00:20:01,580 Ini adalah kerangka kerja yang luar biasa. 435 00:20:01,580 --> 00:20:03,580 Saya sangat parsial untuk itu. 436 00:20:03,580 --> 00:20:09,770 Dan aku hanya akan menunjukkan sedikit contoh dari apa yang bisa terlihat seperti. 437 00:20:09,770 --> 00:20:11,020 Langsung ke Chrome. 438 00:20:11,020 --> 00:20:16,350 Jadi ini adalah contoh yang sangat sederhana Ruby on Rails application-- sesuatu 439 00:20:16,350 --> 00:20:19,690 seperti ini adalah sesuatu bahwa Ruby benar-benar unggul 440 00:20:19,690 --> 00:20:24,070 itu-- hanya di mana Anda model sangat didefinisikan dengan baik. 441 00:20:24,070 --> 00:20:27,150 >> Dalam contoh ini, Anda akan melihat dua model yang berbeda, yang 442 00:20:27,150 --> 00:20:30,380 adalah bahwa kita memiliki pengguna dan kami memiliki tweet. 443 00:20:30,380 --> 00:20:33,480 Jadi ini adalah Twitter50, Twitter sendiri Harvard. 444 00:20:33,480 --> 00:20:36,820 Seperti yang Anda lihat, saya login sebagaizack. 445 00:20:36,820 --> 00:20:38,860 Dan aku bisa membuat tweet baru. 446 00:20:38,860 --> 00:20:42,266 Jadi saya think-- "Ini adalah" - maaf? 447 00:20:42,266 --> 00:20:43,182 AUDIENCE: [tidak terdengar]. 448 00:20:43,182 --> 00:20:44,061 ZACK Chauvin: Oh, OK. 449 00:20:44,061 --> 00:20:45,060 Perlu untuk menghentikan server. 450 00:20:45,060 --> 00:20:47,480 Baik. 451 00:20:47,480 --> 00:20:49,630 Jadi di sini kita. 452 00:20:49,630 --> 00:20:52,520 Seperti yang Anda lihat, kami telah kami Aplikasi Twitter di sini. 453 00:20:52,520 --> 00:20:55,020 Dan itu super mudah untuk memulai server. 454 00:20:55,020 --> 00:20:57,991 Kami hanya akan melakukan "rel Server." 455 00:20:57,991 --> 00:20:58,490 Hebat Sekali. 456 00:20:58,490 --> 00:20:58,990 OKE. 457 00:20:58,990 --> 00:21:00,830 Terima kasih untuk itu. 458 00:21:00,830 --> 00:21:02,200 Jadi sekarang kita berjalan. 459 00:21:02,200 --> 00:21:06,120 >> Dan kita akan mengatakan, "Ini adalah seminar yang mengagumkan. " 460 00:21:06,120 --> 00:21:08,870 Dan mari kita lihat apa yang terjadi. 461 00:21:08,870 --> 00:21:10,020 Jadi kita akan men-tweet tentang hal itu. 462 00:21:10,020 --> 00:21:13,390 Turun di bagian bawah, Anda dapat melihat sekarang ada lebih dari tiga tweet. 463 00:21:13,390 --> 00:21:15,980 Jadi kita memiliki sedikit dari pagination terjadi. 464 00:21:15,980 --> 00:21:19,640 Dan kami memiliki tweet yang. 465 00:21:19,640 --> 00:21:24,010 Dan saya juga bisa mencari melalui saya pencarian tweets-- untuk ini dan dua 466 00:21:24,010 --> 00:21:27,960 orang yang memiliki kata "Ini" di dalamnya muncul. 467 00:21:27,960 --> 00:21:30,860 Kita juga bisa menghapus tweet dengan mengklik tombol Delete kecil. 468 00:21:30,860 --> 00:21:36,440 Dan jelas, saya hanya dapat menghapus pos milik saya. 469 00:21:36,440 --> 00:21:39,030 >> Sudah, kita hampir memiliki fungsi Twitter. 470 00:21:39,030 --> 00:21:42,000 Seperti, ketika Anda berpikir tentang hal itu, Twitter benar-benar tidak melakukan semua itu banyak. 471 00:21:42,000 --> 00:21:44,280 Memiliki pengguna, ia memiliki tweets. 472 00:21:44,280 --> 00:21:47,690 Ada beberapa fungsi yang lebih kompleks. 473 00:21:47,690 --> 00:21:52,960 Tetapi ketika Anda benar-benar turun ke sana, itu cukup Ruby on Rails aplikasi sederhana. 474 00:21:52,960 --> 00:21:57,560 Dan sesuatu seperti ini, dengan pemahaman yang baik tentang Ruby on Rails, 475 00:21:57,560 --> 00:22:00,680 Anda mungkin bisa buat dalam satu atau dua jam. 476 00:22:00,680 --> 00:22:04,210 >> Dan itu benar-benar datang kembali ke mantra Ruby, 477 00:22:04,210 --> 00:22:07,540 yang merupakan konvensi di atas konfigurasi. 478 00:22:07,540 --> 00:22:10,965 Jadi kembali pada hari, orang-orang, kapan saja mereka ingin membuat website ini, 479 00:22:10,965 --> 00:22:12,340 harus mulai dari awal. 480 00:22:12,340 --> 00:22:13,740 OK, saya ingin membuat sebuah website. 481 00:22:13,740 --> 00:22:15,970 Mari kita membuat file ini dan file ini dan file ini. 482 00:22:15,970 --> 00:22:19,180 >> Dengan Ruby on Rails, ada semua itu. 483 00:22:19,180 --> 00:22:21,170 Anda berkata, saya ingin aplikasi baru. 484 00:22:21,170 --> 00:22:25,010 Dan seperti Gabe menunjukkan kepada kita, itu menciptakan struktur seluruh file bagi kita. 485 00:22:25,010 --> 00:22:27,490 Dan kita hanya mengubah bagian kecil yang kita perlu. 486 00:22:27,490 --> 00:22:31,570 Kami hanya menyesuaikan apa yang unik tentang aplikasi kita. 487 00:22:31,570 --> 00:22:32,250 Keren. 488 00:22:32,250 --> 00:22:38,540 Jadi kembali ke presentasi kami preview-- menarik. 489 00:22:38,540 --> 00:22:41,408 490 00:22:41,408 --> 00:22:42,724 Di mana saya hadir? 491 00:22:42,724 --> 00:22:43,640 AUDIENCE: Layar penuh. 492 00:22:43,640 --> 00:22:45,715 Kanan atas. 493 00:22:45,715 --> 00:22:48,480 >> ZACK Chauvin: Excellent. 494 00:22:48,480 --> 00:22:48,990 Keren. 495 00:22:48,990 --> 00:22:49,490 OKE. 496 00:22:49,490 --> 00:22:51,480 Jadi pertama-tama, model. 497 00:22:51,480 --> 00:22:54,100 Stephen melakukan mengagumkan pekerjaan menguraikan MVC. 498 00:22:54,100 --> 00:22:57,980 Dan sekarang kita akan berhubungan yang kembali ke Ruby on Rails. 499 00:22:57,980 --> 00:23:00,730 Jadi model Anda dapat jenis dari anggap sebagai database. 500 00:23:00,730 --> 00:23:04,870 Anda telah melihat ini di CS50 Keuangan, di mana toko-toko Model 501 00:23:04,870 --> 00:23:07,590 informasi tentang berapa banyak saham yang Anda miliki, 502 00:23:07,590 --> 00:23:10,986 atau semua transaksi yang Anda buat. 503 00:23:10,986 --> 00:23:12,860 Ini adalah contoh dari garis bagaimana Anda akan 504 00:23:12,860 --> 00:23:15,640 bisa membuat model baru di Rails. 505 00:23:15,640 --> 00:23:17,102 Jadi saya ingin pengguna. 506 00:23:17,102 --> 00:23:19,060 Itu akan memiliki email, yang merupakan string, 507 00:23:19,060 --> 00:23:20,990 dan password, yang juga string. 508 00:23:20,990 --> 00:23:27,150 Jadi seperti those-- saya ingin setiap baris di meja saya pengguna untuk terlihat seperti itu. 509 00:23:27,150 --> 00:23:30,730 >> Bagian yang benar-benar mengagumkan tentang Rails adalah bahwa hal itu 510 00:23:30,730 --> 00:23:33,755 membuatnya tidak perlu untuk menulis SQL apapun cukup banyak. 511 00:23:33,755 --> 00:23:38,640 Berapa banyak dari kalian mencintai menulis SQL di PSET 7? 512 00:23:38,640 --> 00:23:39,770 Tepat. 513 00:23:39,770 --> 00:23:41,840 SQL tidak sangat user-friendly. 514 00:23:41,840 --> 00:23:46,470 Dan Rails abstrak semua yang jauh dengan perintah-perintah yang benar-benar mudah. 515 00:23:46,470 --> 00:23:51,580 Jadi misalnya, jika kita memiliki pengguna, pengguna memiliki banyak tweet. 516 00:23:51,580 --> 00:23:56,580 Dan masing-masing dari mereka tweet milik pengguna. 517 00:23:56,580 --> 00:23:59,520 >> Jadi jika Anda melihat di sini, ini adalah model kami untuk menciak kami. 518 00:23:59,520 --> 00:24:02,750 Dan semua kita harus katakan adalah line-- tunggal ini saya tweet 519 00:24:02,750 --> 00:24:05,090 dan saya milik pengguna. 520 00:24:05,090 --> 00:24:10,160 Dan dengan garis tunggal dan sedikit dari konfigurasi database, 521 00:24:10,160 --> 00:24:12,990 Rails set hubungan ini. 522 00:24:12,990 --> 00:24:17,450 Kapan saja, saya hanya bisa mengatakan, zack.tweets, seperti, memberi saya semua Zack tweet. 523 00:24:17,450 --> 00:24:19,420 Tidak ada SQL. 524 00:24:19,420 --> 00:24:20,040 Super mudah. 525 00:24:20,040 --> 00:24:26,580 Sekali lagi, itu konvensi di atas Konfigurasi datang ke dalam bermain. 526 00:24:26,580 --> 00:24:29,770 >> Anda dapat melihat sedikit dari contoh Ruby di sini. 527 00:24:29,770 --> 00:24:32,740 Seperti memberi kata, menulis Ruby adalah semacam seperti menulis bahasa Inggris. 528 00:24:32,740 --> 00:24:35,540 Ini adalah bahasa yang sangat tingkat tinggi, dan itu membuat sangat mudah 529 00:24:35,540 --> 00:24:42,380 bagi kita untuk mengatakan hal-hal seperti, saya ingin pastikan bahwa tweet ini memiliki tubuh. 530 00:24:42,380 --> 00:24:43,740 Keberadaannya benar. 531 00:24:43,740 --> 00:24:47,170 Dan saya ingin memastikan bahwa ini menciak, seperti Twitter normal, 532 00:24:47,170 --> 00:24:49,020 memiliki panjang maksimal 140. 533 00:24:49,020 --> 00:24:52,800 Ini super-intuitif, a bahasa benar-benar hebat. 534 00:24:52,800 --> 00:24:54,590 >> Selanjutnya kita memiliki pandangan. 535 00:24:54,590 --> 00:24:57,510 Jadi ini melibatkan HTML dan CSS. 536 00:24:57,510 --> 00:25:00,490 Dan inilah contoh dari pandangan. 537 00:25:00,490 --> 00:25:05,600 Jadi Ruby on Rails jenis mulus terintegrasi baik Ruby dan HTML 538 00:25:05,600 --> 00:25:08,880 untuk menghasilkan apa yang kita inginkan pada halaman. 539 00:25:08,880 --> 00:25:11,380 Jadi ini adalah contoh dari tata letak kami. 540 00:25:11,380 --> 00:25:15,710 Sehingga Anda dapat melihat beberapa tag yang Anda orang digunakan untuk, seperti HTML, tubuh, 541 00:25:15,710 --> 00:25:17,250 semua hal yang baik. 542 00:25:17,250 --> 00:25:21,760 >> Dan tepat di sini, meskipun, kita menggabungkan beberapa Ruby dengan mengatakan, 543 00:25:21,760 --> 00:25:25,390 jika ada pesan untuk menampilkan, kemudian menampilkan pesan di div. 544 00:25:25,390 --> 00:25:28,060 Jadi saya tidak akan terlalu banyak ke dalam. 545 00:25:28,060 --> 00:25:31,190 Tapi ini umumnya merupakan Halaman yang akan diberikan on-- 546 00:25:31,190 --> 00:25:33,960 dan tidak peduli apa halaman Anda pada, yang satu ini akan diberikan. 547 00:25:33,960 --> 00:25:38,110 Jadi ini adalah apa yang akan disertakan selalu. 548 00:25:38,110 --> 00:25:38,980 Keren. 549 00:25:38,980 --> 00:25:42,730 >> Contoh lain dari view-- ini satu di mana ia memilih semua tweets. 550 00:25:42,730 --> 00:25:45,630 Dan beberapa hal ini mungkin terlihat cukup akrab. 551 00:25:45,630 --> 00:25:50,050 Jadi misalnya, di sini, kami tidak perulangan melalui masing-masing tweets, 552 00:25:50,050 --> 00:25:51,960 dan kami mencetak mereka keluar. 553 00:25:51,960 --> 00:25:54,320 Jadi di sini adalah di mana kita mencetak tubuh. 554 00:25:54,320 --> 00:26:00,910 Dan jika user-- tweet di sini adalah Contoh nyata ada SQL terlibat. 555 00:26:00,910 --> 00:26:04,390 Aku hanya bertanya, apakah ini pengguna Tweet ini pengguna saat? 556 00:26:04,390 --> 00:26:06,030 Kemudian menunjukkan link untuk menghapusnya. 557 00:26:06,030 --> 00:26:06,880 Ini super sederhana. 558 00:26:06,880 --> 00:26:09,670 559 00:26:09,670 --> 00:26:10,920 >> Controller. 560 00:26:10,920 --> 00:26:14,390 Jadi ini adalah, sekali lagi, antarmuka antara model dan tampilan. 561 00:26:14,390 --> 00:26:17,820 Ini adalah salah satu yang melakukan kerja keras dari interacting-- menjadi perantara. 562 00:26:17,820 --> 00:26:20,980 Ini beban informasi untuk melihat, yang akan kita lihat dalam detik. 563 00:26:20,980 --> 00:26:23,850 Dan untuk berinteraksi dengan model, 564 00:26:23,850 --> 00:26:29,170 panggilan metode model, yang adalah apa kalian sudah familiar dengan fungsi. 565 00:26:29,170 --> 00:26:31,490 >> Jadi misalnya, ini adalah kontroler Tweet kita. 566 00:26:31,490 --> 00:26:33,930 Ini mungkin tampak sedikit menakutkan sekarang. 567 00:26:33,930 --> 00:26:38,240 Tetapi sebenarnya sangat intuitif setelah Anda mulai menyelam di. 568 00:26:38,240 --> 00:26:42,990 Jadi misalnya, dalam indeks kami, itu di mana kami ingin menunjukkan semua tweets. 569 00:26:42,990 --> 00:26:46,910 Dan baris ini pada dasarnya hanya meminta semua tweets. 570 00:26:46,910 --> 00:26:50,300 Dan kemudian kita menginisialisasi kedua yang tweet-- baru sehingga seperti 571 00:26:50,300 --> 00:26:52,320 jika mereka ingin membuat Tweet baru pada halaman tersebut. 572 00:26:52,320 --> 00:26:54,250 >> Dan bertanya apa yang pengguna saat ini. 573 00:26:54,250 --> 00:26:58,850 Dan ini sangat mirip dengan membuat Anda lihat di PSET 7, 574 00:26:58,850 --> 00:27:02,230 di mana itu hanya semacam memberitahu yang view-- itu jenis, seperti, 575 00:27:02,230 --> 00:27:06,284 melewati variabel yang Anda akan membutuhkan dalam tampilan ke tampilan. 576 00:27:06,284 --> 00:27:08,200 Dan ada seluruh banyak metode yang berbeda 577 00:27:08,200 --> 00:27:10,410 bahwa kontroler ini tweet yang dapat menangani. 578 00:27:10,410 --> 00:27:12,495 >> Tapi sungguh, Rails tidak pekerjaan yang besar jenis 579 00:27:12,495 --> 00:27:18,910 membagi mereka ke dalam berbagai tindakan yang controller yang mungkin dilakukan. 580 00:27:18,910 --> 00:27:23,800 Apakah ada pertanyaan tentang salah satu bagian MVC Rails? 581 00:27:23,800 --> 00:27:25,550 Jenis hanya angin oleh. 582 00:27:25,550 --> 00:27:29,250 Jadi kalian dapat memeriksa itu sendiri. 583 00:27:29,250 --> 00:27:30,106 Mengagumkan. 584 00:27:30,106 --> 00:27:31,200 Kami akan terus berjalan. 585 00:27:31,200 --> 00:27:32,546 >> Jadi menginstal Rails. 586 00:27:32,546 --> 00:27:35,170 Instalasi Rails mungkin, seperti, salah satu bagian yang lebih menakutkan 587 00:27:35,170 --> 00:27:37,830 dari seluruh Rails proses, sayangnya. 588 00:27:37,830 --> 00:27:40,450 Tapi jelas, semua kami sekitar untuk membantu. 589 00:27:40,450 --> 00:27:42,590 Dan setelah itu di sana, banyak sumber daya yang besar, 590 00:27:42,590 --> 00:27:45,100 sebagai Gabe disebutkan, untuk memulai. 591 00:27:45,100 --> 00:27:47,230 Berikut adalah link yang Anda harus dalam rangka 592 00:27:47,230 --> 00:27:51,460 untuk men-download Rails untuk mendapatkannya diinstal pada komputer Anda. 593 00:27:51,460 --> 00:27:54,240 Jelas, ini tersedia untuk Windows dan Mac 594 00:27:54,240 --> 00:27:55,600 dan untuk alat CS50. 595 00:27:55,600 --> 00:27:58,520 596 00:27:58,520 --> 00:28:00,020 Pertanyaan tentang apa pun yang kita katakan? 597 00:28:00,020 --> 00:28:04,265 598 00:28:04,265 --> 00:28:06,690 >> AUDIENCE: Saya akan tertarik, actually-- 599 00:28:06,690 --> 00:28:10,255 jadi saya tahu bahwa download software adalah penghalang terbesar. 600 00:28:10,255 --> 00:28:14,807 Jika ada bunga yang cukup untuk memiliki download sesi mini atau sesuatu. 601 00:28:14,807 --> 00:28:15,640 ZACK Chauvin: Mm-hm. 602 00:28:15,640 --> 00:28:15,692 Ya. 603 00:28:15,692 --> 00:28:16,900 Itu mungkin benar-benar membantu. 604 00:28:16,900 --> 00:28:20,650 Kalau ada yang benar-benar gung-ho tentang menggunakan ini untuk proyek mereka 605 00:28:20,650 --> 00:28:26,555 atau di masa depan, maka kita lebih pasti senang berbicara dengan Anda tentang hal itu. 606 00:28:26,555 --> 00:28:27,055 Mm-hm. 607 00:28:27,055 --> 00:28:29,530 >> AUDIENCE: Sebuah pertanyaan yang terkait untuk apa yang saya minta sebelumnya. 608 00:28:29,530 --> 00:28:32,563 Bagi Anda yang telah melakukan kerangka lain yang masih 609 00:28:32,563 --> 00:28:34,354 mencoba untuk melakukan hal yang sama hal, memudahkan 610 00:28:34,354 --> 00:28:38,452 untuk membangun sebuah website atau fungsi, saya pikir akal 611 00:28:38,452 --> 00:28:43,653 mengapa kita akan on Rails dibandingkan Zend atau beberapa kerangka kerja lainnya 612 00:28:43,653 --> 00:28:44,236 dan bahasa. 613 00:28:44,236 --> 00:28:47,870 >> ZACK Chauvin: saya hanya akan mengatakan saya $ 0,02 tentang itu. 614 00:28:47,870 --> 00:28:49,090 Saya suka Ruby on Rails. 615 00:28:49,090 --> 00:28:52,120 Aku punya kesempatan untuk bekerja baik PHP dan Ruby on Rails. 616 00:28:52,120 --> 00:28:55,291 Saya lebih memilih Ruby on Rails karena Ruby. 617 00:28:55,291 --> 00:28:56,790 Jelas, itu adalah bagian besar dari itu. 618 00:28:56,790 --> 00:28:58,140 Seperti, ketika Anda memilih kerangka Anda, 619 00:28:58,140 --> 00:28:59,490 Anda juga memilih bahasa Anda. 620 00:28:59,490 --> 00:29:03,510 >> Ruby super accessible-- saya pikir bahasa jauh lebih baik daripada PHP. 621 00:29:03,510 --> 00:29:06,250 Tapi itu semacam preferensi pribadi. 622 00:29:06,250 --> 00:29:09,360 Selain itu, pertimbangan lain adalah masyarakat di balik kerangka 623 00:29:09,360 --> 00:29:11,570 bahwa Anda bekerja dengan. 624 00:29:11,570 --> 00:29:13,840 >> Sekarang Ruby on Rails benar-benar panas. 625 00:29:13,840 --> 00:29:16,160 Ada ton dukungan di belakangnya. 626 00:29:16,160 --> 00:29:19,180 Anda posting sesuatu di Stack Melimpah tentang masalah Anda 627 00:29:19,180 --> 00:29:22,350 karena dalam Ruby on Rails, dan itu dijawab. 628 00:29:22,350 --> 00:29:26,900 Sekali lagi, itu open source, yang berarti bahwa itu terus-menerus berubah. 629 00:29:26,900 --> 00:29:28,910 Ada ton orang yang benar-benar berdedikasi 630 00:29:28,910 --> 00:29:32,370 untuk membuat ini Kerangka benar-benar mengagumkan. 631 00:29:32,370 --> 00:29:34,225 Jadi itu sebabnya saya akan memilih Ruby on Rails. 632 00:29:34,225 --> 00:29:35,225 GABRIEL Guimaraes: Ya. 633 00:29:35,225 --> 00:29:37,562 Saya akan mengatakan bahwa ide balik sebagian kerangka Anda 634 00:29:37,562 --> 00:29:39,770 akan mencari tahu ada sangat, sangat mirip, kan? 635 00:29:39,770 --> 00:29:42,210 Jadi Model View Controller, fakta bahwa kontroler kami 636 00:29:42,210 --> 00:29:44,793 akan terlihat seperti sesuatu seperti this-- masing-masing fungsi 637 00:29:44,793 --> 00:29:47,235 seperti salah satu halaman Anda, dan mengarahkan Anda, 638 00:29:47,235 --> 00:29:48,750 dan menginisialisasi variabel. 639 00:29:48,750 --> 00:29:51,959 Itu akan menjadi hal yang sama untuk setiap kerangka kerja yang Anda lihat di luar sana. 640 00:29:51,959 --> 00:29:53,375 Dan ada akan menjadi model. 641 00:29:53,375 --> 00:29:55,270 Dan Anda dapat melakukan hal-hal seperti, "milik." 642 00:29:55,270 --> 00:29:59,830 Jadi bukannya melakukan versi SQL, Anda hanya, seperti, lakukan, user.tweets, 643 00:29:59,830 --> 00:30:01,210 dan Anda mendapatkan semuanya. 644 00:30:01,210 --> 00:30:02,650 Semua orang memiliki itu. 645 00:30:02,650 --> 00:30:07,070 Kecuali di Ruby, Anda user.tweets, dan kemudian beberapa kerangka kerja PHP, 646 00:30:07,070 --> 00:30:12,010 Anda user.getalltweets MANA PHP saya tidak masalah. 647 00:30:12,010 --> 00:30:13,460 Seperti, itu adalah garis besar. 648 00:30:13,460 --> 00:30:15,320 Ini adalah hal yang sama, tapi itu adalah garis besar. 649 00:30:15,320 --> 00:30:19,350 >> Jadi itulah salah satu alasan utama preferensi saya selama Ruby. 650 00:30:19,350 --> 00:30:22,290 Hanya saja saya lakukan persis hal yang sama dalam framework lain, 651 00:30:22,290 --> 00:30:26,021 itu hanya membutuhkan saya dua kali garis sepanjang kode. 652 00:30:26,021 --> 00:30:26,520 OKE? 653 00:30:26,520 --> 00:30:29,730 654 00:30:29,730 --> 00:30:32,540 >> Ada pertanyaan lain? 655 00:30:32,540 --> 00:30:35,200 >> ZACK Chauvin: Sesuatu Saya akan menyebutkan quickly-- Gabe 656 00:30:35,200 --> 00:30:36,682 berbicara sedikit tentang permata. 657 00:30:36,682 --> 00:30:39,890 Dan itu benar-benar besar-Maksudku, ini adalah jenis umum untuk semua kerangka, 658 00:30:39,890 --> 00:30:45,170 bahwa ada semacam konsep permata, yang seperti dalam contoh kecil saya, 659 00:30:45,170 --> 00:30:46,680 Saya telah masuk. 660 00:30:46,680 --> 00:30:48,460 Seperti, Anda dapat masuk, keluar. 661 00:30:48,460 --> 00:30:51,740 Seperti, itu benar-benar jenis proses yang kompleks. 662 00:30:51,740 --> 00:30:55,950 Itu ditangani sedikit bit untuk Anda dalam PSET 7. 663 00:30:55,950 --> 00:31:01,160 Tapi aku masih tidak sepenuhnya tahu bagaimana untuk melaksanakan masuk, tanda-out. 664 00:31:01,160 --> 00:31:03,740 Dan itu karena Ruby on Rails memiliki ton 665 00:31:03,740 --> 00:31:06,080 permata yang melakukan hal-hal seperti itu untuk Anda. 666 00:31:06,080 --> 00:31:08,550 >> Sekali lagi, konvensi di atas konfigurasi. 667 00:31:08,550 --> 00:31:11,050 Semua orang akan melakukan sign-in ini, tanda-out langkah. 668 00:31:11,050 --> 00:31:14,450 Jadi mengapa tidak hanya membuat paket, disebut Rancangan dalam hal ini, yang merupakan permata. 669 00:31:14,450 --> 00:31:15,810 Anda hanya memasukkannya. 670 00:31:15,810 --> 00:31:18,970 Dan kemudian ada bantuan online dengan cara menggunakannya. 671 00:31:18,970 --> 00:31:21,230 Dan Anda tidak perlu khawatir tentang sesuatu seperti itu. 672 00:31:21,230 --> 00:31:24,060 >> Melampirkan gambar ke ini things-- permata untuk itu. 673 00:31:24,060 --> 00:31:27,220 Seperti, kapan saja Anda coba lakukan sesuatu yang baru, ada permata untuk itu. 674 00:31:27,220 --> 00:31:29,420 Dan Anda jenis hanya mengumpulkan permata ini 675 00:31:29,420 --> 00:31:33,160 dan membangun benar-benar kompleks aplikasi yang sangat cepat. 676 00:31:33,160 --> 00:31:35,902 677 00:31:35,902 --> 00:31:37,437 Keren. 678 00:31:37,437 --> 00:31:38,270 Ada pertanyaan lain? 679 00:31:38,270 --> 00:31:39,623 >> STEPHEN Turban: Woo-hoo. 680 00:31:39,623 --> 00:31:40,976 Saya tidak berpikir [tidak terdengar]. 681 00:31:40,976 --> 00:31:41,966 >> GABRIEL Guimaraes: OK. 682 00:31:41,966 --> 00:31:42,840 Terima kasih banyak, guys. 683 00:31:42,840 --> 00:31:43,839 >> STEPHEN Turban: Buh-bye. 684 00:31:43,839 --> 00:31:44,850 ZACK Chauvin: Buh-bye. 685 00:31:44,850 --> 00:31:45,849 >> STEPHEN Turban: Woo-hoo. 686 00:31:45,849 --> 00:31:48,150 [TEPUK TANGAN] 687 00:31:48,150 --> 00:31:49,700 >> Hore. 688 00:31:49,700 --> 00:31:50,955