1 00:00:00,000 --> 00:00:03,968 >> [音乐播放] 2 00:00:03,968 --> 00:00:10,744 3 00:00:10,744 --> 00:00:14,040 >> STEPHEN TURBAN:所以我斯蒂芬头巾。 4 00:00:14,040 --> 00:00:16,990 在这里上的一面,也许我们 可以得到一些人潜水。 5 00:00:16,990 --> 00:00:20,150 6 00:00:20,150 --> 00:00:23,854 我们有Gabriel和扎克。 7 00:00:23,854 --> 00:00:26,270 因此,对于在一个简短的路线图是什么 这是怎么回事的样子, 8 00:00:26,270 --> 00:00:31,580 我会做一些非常 高层次看看什么MVC是。 9 00:00:31,580 --> 00:00:32,285 加布? 10 00:00:32,285 --> 00:00:35,080 >> GABRIEL GUIMARAES:我要去 谈Ruby和一点点 11 00:00:35,080 --> 00:00:39,100 Rails是如何工作以及它如何 帮助您构建Web应用程序。 12 00:00:39,100 --> 00:00:42,070 >> ZACK CHAUVIN:而且我要去 告诉你怎样一个具体的例子 13 00:00:42,070 --> 00:00:45,112 使用Rails的构建 超级真棒应用程序。 14 00:00:45,112 --> 00:00:46,112 STEPHEN TURBAN:真棒。 15 00:00:46,112 --> 00:00:46,350 甜蜜。 16 00:00:46,350 --> 00:00:46,850 行。 17 00:00:46,850 --> 00:00:49,510 因此,让我们来谈谈MVC。 18 00:00:49,510 --> 00:00:54,970 因此,让我们去下一张幻灯片,其中 我会按这个按钮做的。 19 00:00:54,970 --> 00:01:12,640 让我们去next--发展, 我喜欢去想要去CVS, 20 00:01:12,640 --> 00:01:17,240 由于CVS是一家商店, 也有中央的V。 21 00:01:17,240 --> 00:01:21,460 >> 因此,让我们想象一家商店。 22 00:01:21,460 --> 00:01:25,380 让我们使这家店 只卖一件事。 23 00:01:25,380 --> 00:01:31,380 所以,我们要这个 存储只卖这些红色的杯子。 24 00:01:31,380 --> 00:01:40,410 想象你走在,你去 到商店,和人的前面。 25 00:01:40,410 --> 00:01:43,440 他的名字叫文斯。 26 00:01:43,440 --> 00:01:48,370 >> 和Vince波你好你说喜。 27 00:01:48,370 --> 00:01:50,860 你注意到一件事对文斯。 28 00:01:50,860 --> 00:01:56,880 所以每当我们想到文斯,我们 必须考虑两个关键形容词。 29 00:01:56,880 --> 00:02:00,600 文斯是美丽的,但他是愚蠢的。 30 00:02:00,600 --> 00:02:01,320 好不好。 31 00:02:01,320 --> 00:02:06,810 所以,你知道,没有他的错, 不幸的是,他的美丽。 32 00:02:06,810 --> 00:02:08,009 他是我们的观点。 33 00:02:08,009 --> 00:02:10,539 所以我们的第一个剧组成员是存在的。 34 00:02:10,539 --> 00:02:12,340 记住这一点。 35 00:02:12,340 --> 00:02:17,230 >> 现在,你问文斯,你去了,哎文斯。 36 00:02:17,230 --> 00:02:18,110 我是一个客户。 37 00:02:18,110 --> 00:02:19,130 他说喜。 38 00:02:19,130 --> 00:02:23,610 我真的希望你的红色杯子中的一个。 39 00:02:23,610 --> 00:02:24,760 又是什么文斯说? 40 00:02:24,760 --> 00:02:26,510 没有人有任何 知道什么文斯说? 41 00:02:26,510 --> 00:02:30,340 42 00:02:30,340 --> 00:02:31,452 我要去造访。 43 00:02:31,452 --> 00:02:32,660 你怎么看文斯说? 44 00:02:32,660 --> 00:02:36,139 >> 听众:他说,我可以告诉你 它在哪里,但我不能给你一个。 45 00:02:36,139 --> 00:02:41,330 >> STEPHEN TURBAN:他说,我可以告诉你 它在哪里,但我不能给你一个。 46 00:02:41,330 --> 00:02:42,295 更糟糕的。 47 00:02:42,295 --> 00:02:44,420 任何人有另一种 知道什么文斯可能会说什么? 48 00:02:44,420 --> 00:02:46,957 >> 听众:他要去检查 如果他们有任何的红色杯子。 49 00:02:46,957 --> 00:02:49,290 STEPHEN TURBAN:文斯不 甚至不知道他有检查。 50 00:02:49,290 --> 00:02:50,070 还要别的吗? 51 00:02:50,070 --> 00:02:52,360 所以,你说,有 检查他是否有红色的杯子。 52 00:02:52,360 --> 00:02:52,895 前进。 53 00:02:52,895 --> 00:02:54,020 听众:什么是红色的杯子? 54 00:02:54,020 --> 00:02:56,072 STEPHEN TURBAN:什么是红色的杯子? 55 00:02:56,072 --> 00:02:58,090 什么是红色的杯子? 56 00:02:58,090 --> 00:02:59,410 文斯是困惑。 57 00:02:59,410 --> 00:03:05,141 所以,文斯是要谈 我们的下一个剧组成员,卡尔。 58 00:03:05,141 --> 00:03:10,252 当我们想到卡尔,我们 总得想想两大adjectives-- 59 00:03:10,252 --> 00:03:15,110 他的控制,但他无能为力。 60 00:03:15,110 --> 00:03:17,840 >> 所以,文斯goes--他 云,什么是红色的杯子? 61 00:03:17,840 --> 00:03:19,800 我不知道什么是红色的杯子。 62 00:03:19,800 --> 00:03:23,080 他转过身来,他问卡尔。 63 00:03:23,080 --> 00:03:28,890 他说,卡尔,一个人 要了一杯红。 64 00:03:28,890 --> 00:03:30,722 你能做到吗? 65 00:03:30,722 --> 00:03:31,680 又是什么卡尔说? 66 00:03:31,680 --> 00:03:32,513 让我们看着办吧。 67 00:03:32,513 --> 00:03:34,330 没有任何人有任何 想法是什么卡尔说? 68 00:03:34,330 --> 00:03:37,260 而我就重复回给你。 69 00:03:37,260 --> 00:03:39,280 我看到了一个手部动作。 70 00:03:39,280 --> 00:03:41,760 >> 听众:他告诉别人 其他获得红杯。 71 00:03:41,760 --> 00:03:44,430 >> STEPHEN TURBAN:他告诉 别人拿到红色杯子。 72 00:03:44,430 --> 00:03:46,270 没错。 73 00:03:46,270 --> 00:03:49,010 而且我们有一个想法 谁的那个人可能是什么? 74 00:03:49,010 --> 00:03:52,590 75 00:03:52,590 --> 00:03:53,090 这是一个提示。 76 00:03:53,090 --> 00:03:56,960 这将开始与M.暴民? 77 00:03:56,960 --> 00:04:00,225 >> 听众:模型。 78 00:04:00,225 --> 00:04:02,720 >> 斯蒂芬TURBAN:模型,是的。 79 00:04:02,720 --> 00:04:06,920 他的名字是不是模式,遗憾的是, 因为这是一个愚蠢的名字。 80 00:04:06,920 --> 00:04:09,310 我们有米特。 81 00:04:09,310 --> 00:04:12,970 当我们想到Mitt-- 没有,这不是扎克的图片。 82 00:04:12,970 --> 00:04:15,590 83 00:04:15,590 --> 00:04:21,759 我们必须考虑两个 关键形容词与米特。 84 00:04:21,759 --> 00:04:25,040 他的能力,但他顺从。 85 00:04:25,040 --> 00:04:29,950 所以米特知道他必须做, 但他真的不能做任何事情。 86 00:04:29,950 --> 00:04:32,340 或者,他真的不能决定自己的。 87 00:04:32,340 --> 00:04:33,256 >> 因此,我们有卡尔。 88 00:04:33,256 --> 00:04:34,705 卡尔在呼喊米特。 89 00:04:34,705 --> 00:04:39,990 他说,嘿米特,我们需要红色的杯子。 90 00:04:39,990 --> 00:04:46,410 和米特去他的红色杯子保管。 91 00:04:46,410 --> 00:04:48,960 他抓起一个杯子,他给它回来。 92 00:04:48,960 --> 00:04:51,360 没有任何人有任何 想法会发生什么呢? 93 00:04:51,360 --> 00:04:54,070 94 00:04:54,070 --> 00:04:55,120 给人的杯子。 95 00:04:55,120 --> 00:05:01,740 到目前为止米特已经对他的红色 杯资料库,取出来, 96 00:05:01,740 --> 00:05:03,550 检查它,说, 我把一红杯。 97 00:05:03,550 --> 00:05:06,717 而他把它给卡尔。 98 00:05:06,717 --> 00:05:07,550 你有一个想法? 99 00:05:07,550 --> 00:05:08,980 您如何看待卡尔呢? 100 00:05:08,980 --> 00:05:10,926 >> 听众:卡尔把它交给文斯。 101 00:05:10,926 --> 00:05:13,550 >> STEPHEN TURBAN:卡尔把它交给文斯。 102 00:05:13,550 --> 00:05:14,165 文斯。 103 00:05:14,165 --> 00:05:15,999 >> 听众:和Vince 它显示为[听不清]。 104 00:05:15,999 --> 00:05:16,998 STEPHEN TURBAN:没错。 105 00:05:16,998 --> 00:05:18,080 所以,这也正是它。 106 00:05:18,080 --> 00:05:21,040 所以,文斯把杯, 甚至不知道它是什么, 107 00:05:21,040 --> 00:05:23,840 但他显示它给用户。 108 00:05:23,840 --> 00:05:27,140 所以让我们尝试重新 这真的简要介绍。 109 00:05:27,140 --> 00:05:31,380 而且我们要需要 3沉默的志愿者, 110 00:05:31,380 --> 00:05:35,260 因为你们不打算 要能发言。 111 00:05:35,260 --> 00:05:36,470 所以,我能抢3? 112 00:05:36,470 --> 00:05:37,040 好不好。 113 00:05:37,040 --> 00:05:38,248 又是谁,你想是什么? 114 00:05:38,248 --> 00:05:42,310 115 00:05:42,310 --> 00:05:43,750 >> 听众:我是文斯。 116 00:05:43,750 --> 00:05:44,960 >> STEPHEN TURBAN:文斯,OK。 117 00:05:44,960 --> 00:05:46,190 美丽的,但愚蠢的。 118 00:05:46,190 --> 00:05:47,510 大。 119 00:05:47,510 --> 00:05:48,570 别人? 120 00:05:48,570 --> 00:05:53,520 我们正在寻找一个 但能够逆来顺受。 121 00:05:53,520 --> 00:05:55,760 任何人都希望能? 122 00:05:55,760 --> 00:05:56,944 >> 观众:我可能是卡尔。 123 00:05:56,944 --> 00:05:57,860 STEPHEN TURBAN:甜。 124 00:05:57,860 --> 00:05:59,102 我们已经得到了卡尔。 125 00:05:59,102 --> 00:05:59,866 >> 听众:米特。 126 00:05:59,866 --> 00:06:01,050 >> STEPHEN TURBAN:米特,OK。 127 00:06:01,050 --> 00:06:05,070 并且我们将需要 A--我会客户。 128 00:06:05,070 --> 00:06:07,460 所以来了,上来吧。 129 00:06:07,460 --> 00:06:10,470 并为大家在看法? 130 00:06:10,470 --> 00:06:15,440 所以我要问到文斯 站在前面,只是面带微笑, 131 00:06:15,440 --> 00:06:18,230 只是微笑尽可能明亮。 132 00:06:18,230 --> 00:06:21,520 而我们要问卡尔, 没错,你为什么不一样, 133 00:06:21,520 --> 00:06:24,050 站在她右后方? 134 00:06:24,050 --> 00:06:26,660 和米特,你为什么不 刚刚熄灭在后面, 135 00:06:26,660 --> 00:06:31,410 然后我给你一组 杯挂出。 136 00:06:31,410 --> 00:06:34,170 >> 所以我的客户。 137 00:06:34,170 --> 00:06:35,610 我来了。 138 00:06:35,610 --> 00:06:40,490 我让[听不清]我 说,嗨,我想一个杯子。 139 00:06:40,490 --> 00:06:43,214 140 00:06:43,214 --> 00:06:44,580 完美。 141 00:06:44,580 --> 00:06:45,580 所以,文斯不知道。 142 00:06:45,580 --> 00:06:46,915 那么什么是文斯办呢? 143 00:06:46,915 --> 00:06:50,770 144 00:06:50,770 --> 00:06:52,860 Vince--好了,我要去 是现在叙述。 145 00:06:52,860 --> 00:06:55,390 >> 文斯喊卡尔,杯具! 146 00:06:55,390 --> 00:06:58,840 147 00:06:58,840 --> 00:07:00,790 什么是卡尔办? 148 00:07:00,790 --> 00:07:03,910 卡尔骂米特。 149 00:07:03,910 --> 00:07:06,710 米特抓起一个杯子。 150 00:07:06,710 --> 00:07:08,220 米特给它卡尔。 151 00:07:08,220 --> 00:07:10,870 卡尔返回给文斯。 152 00:07:10,870 --> 00:07:12,640 和Vince显示它给用户。 153 00:07:12,640 --> 00:07:17,960 >> 而这是一个高,高, 高,这么高看MVC。 154 00:07:17,960 --> 00:07:22,460 我们通过有一个观点把它什么 用户看到,控制器,有人 155 00:07:22,460 --> 00:07:25,760 谁做的一切在后台 但真的不能更新任何东西 156 00:07:25,760 --> 00:07:29,960 或不能做任何事情的意义 除了调用视图和模型。 157 00:07:29,960 --> 00:07:35,280 然后我们有米特,模型, 谁更新任何数据,我们有。 158 00:07:35,280 --> 00:07:42,660 所以,非常感谢你对我们的美丽, 控制,并能志愿者。 159 00:07:42,660 --> 00:07:43,730 我认为这是它。 160 00:07:43,730 --> 00:07:45,040 >> [掌声] 161 00:07:45,040 --> 00:07:48,745 >> 我认为加布是现在要谈 在一个希望少高水平。 162 00:07:48,745 --> 00:07:51,600 >> GABRIEL GUIMARAES:OK,伙计们。 163 00:07:51,600 --> 00:07:56,790 现在,让我们来谈谈更一点关于 代码和有关Ruby on Rails的本身, 164 00:07:56,790 --> 00:08:00,750 以及有关它与 所有这一切的MVC的故事。 165 00:08:00,750 --> 00:08:03,190 基本上,Ruby on Rails是一个框架。 166 00:08:03,190 --> 00:08:04,640 更多关于在第二。 167 00:08:04,640 --> 00:08:07,760 >> 但只给你一个 是谁感的使用它, 168 00:08:07,760 --> 00:08:12,240 像所有的这些大companies-- 所以GitHub上,Groupon的,Twitter-- 169 00:08:12,240 --> 00:08:15,300 他们都使用Ruby on 导轨为主要框架 170 00:08:15,300 --> 00:08:16,510 实现他们的网站。 171 00:08:16,510 --> 00:08:19,130 所以我敢肯定有很多人 在这里使用这些网站。 172 00:08:19,130 --> 00:08:24,470 和它的on Rails的Ruby的全部落实 模型,视图和控制器 173 00:08:24,470 --> 00:08:26,890 在所有这些网站和许多更多。 174 00:08:26,890 --> 00:08:27,830 好不好? 175 00:08:27,830 --> 00:08:32,090 >> 所以,正如我所说,在红宝石 Rails是一个框架。 176 00:08:32,090 --> 00:08:37,237 你可以种想想框架 在就像盖房子一样的感觉。 177 00:08:37,237 --> 00:08:39,570 所以,如果你要打造 一个house--,你可以随时 178 00:08:39,570 --> 00:08:40,653 从头开始,对不对? 179 00:08:40,653 --> 00:08:46,440 你可以尝试拿出 一种方法来锯木头, 180 00:08:46,440 --> 00:08:49,760 并且使木材的地方,和 得到石头在正确的形状, 181 00:08:49,760 --> 00:08:51,250 然后将所有的这一点。 182 00:08:51,250 --> 00:08:54,020 但要采取 也许很多年 183 00:08:54,020 --> 00:08:56,910 直到你得到所有的材料, 你会得到一切融合在一起, 184 00:08:56,910 --> 00:08:58,790 你真正开始 来建房。 185 00:08:58,790 --> 00:09:01,748 >> 所以,事实证明,如果你开始时 带着几分框架的 186 00:09:01,748 --> 00:09:04,260 种已经到位 对于任何类型的房子 187 00:09:04,260 --> 00:09:07,750 要build--东西 这是很普通的,但是,你可以 188 00:09:07,750 --> 00:09:12,850 那么模型对你自己 goals--那么你可以利用 189 00:09:12,850 --> 00:09:16,800 该框架的这种力量打造 他们的东西很多,要快得多。 190 00:09:16,800 --> 00:09:17,300 好不好。 191 00:09:17,300 --> 00:09:21,110 因此,这是同样的想法在 框架的Web应用程序 192 00:09:21,110 --> 00:09:23,755 或用于任何类型的 应用程序,对于这个问题。 193 00:09:23,755 --> 00:09:26,560 >> 你真正开始了 有一半的应用程序 194 00:09:26,560 --> 00:09:28,400 已经存在于你的地方。 195 00:09:28,400 --> 00:09:32,230 通过这一点,我的意思是你会得到很多的 文件已经具备的功能, 196 00:09:32,230 --> 00:09:36,830 像图书馆一样的功能, 和命令,你可以为了运行 197 00:09:36,830 --> 00:09:40,500 让你的生活更 简单和容易。 198 00:09:40,500 --> 00:09:41,180 好不好。 199 00:09:41,180 --> 00:09:43,555 >> 所以在这种情况下,我们要 谈Ruby on Rails的。 200 00:09:43,555 --> 00:09:45,920 有许多不同 框架在那里。 201 00:09:45,920 --> 00:09:47,550 有Django的Python的。 202 00:09:47,550 --> 00:09:50,990 有Zend框架 或Laravel的PHP。 203 00:09:50,990 --> 00:09:52,390 有很多不同的。 204 00:09:52,390 --> 00:09:56,830 Ruby on Rails是一个相当不错的新的。 205 00:09:56,830 --> 00:10:01,600 很多人使用,在创业公司 而这种环境。 206 00:10:01,600 --> 00:10:04,250 而其中的一些非常大的 我在这里表现出公司之前, 207 00:10:04,250 --> 00:10:06,050 也使用Ruby on Rails。 208 00:10:06,050 --> 00:10:10,070 >> 所以只给你一个 什么Ruby是感 209 00:10:10,070 --> 00:10:13,030 像,因为你们用的比较多 到一样,C和PHP的一点点 210 00:10:13,030 --> 00:10:17,560 现在,让红宝石将是该 相当于在这个意义上你的PHP。 211 00:10:17,560 --> 00:10:18,380 这不是红宝石。 212 00:10:18,380 --> 00:10:19,830 这是C. OK? 213 00:10:19,830 --> 00:10:22,660 但是,这是像 DJBHash功能,我 214 00:10:22,660 --> 00:10:27,170 知道很多人使用 为PSET拼写错误。 215 00:10:27,170 --> 00:10:29,670 >> 而在Ruby中,漂亮 就像在PHP,你 216 00:10:29,670 --> 00:10:32,745 可与实施这一 只有几行代码。 217 00:10:32,745 --> 00:10:34,870 而不必担心 关于该散列函数, 218 00:10:34,870 --> 00:10:37,950 不必担心桶, 而所有这一切,你就可以说, 219 00:10:37,950 --> 00:10:40,160 字典= Hash.net。 220 00:10:40,160 --> 00:10:44,560 然后使用一种像 该PHP有同样的想法。 221 00:10:44,560 --> 00:10:45,970 所以这是为true。 222 00:10:45,970 --> 00:10:48,080 然后,如果你想 检查,所以检查功能 223 00:10:48,080 --> 00:10:51,560 是,如果字典“富” 等于等于true,返回true。 224 00:10:51,560 --> 00:10:52,580 而这一切,OK? 225 00:10:52,580 --> 00:10:54,030 >> 所以,你看到一些差别。 226 00:10:54,030 --> 00:10:57,940 有没有分号 这里,因为有在C. 227 00:10:57,940 --> 00:11:00,710 但一般的概念非常类似。 228 00:11:00,710 --> 00:11:02,030 好不好? 229 00:11:02,030 --> 00:11:08,010 >> 此外,在Ruby中,有宝石,其中 是一种对Ruby库。 230 00:11:08,010 --> 00:11:12,460 和Rails处理他们 一个非常好的方式为您服务。 231 00:11:12,460 --> 00:11:15,480 所以,如果你想放 一些库 232 00:11:15,480 --> 00:11:18,670 确实的电子邮件,或 的确短信, 233 00:11:18,670 --> 00:11:22,170 或者,做与整合 Facebook或任何种类的东西 234 00:11:22,170 --> 00:11:24,374 这样你的应用程序, 这是非常,非常容易。 235 00:11:24,374 --> 00:11:26,790 奇怪的是,你可以找到的东西 像在互联网上。 236 00:11:26,790 --> 00:11:30,300 他们只是做 像放哪 237 00:11:30,300 --> 00:11:32,290 创业板要在创业板文件中使用。 238 00:11:32,290 --> 00:11:33,749 然后安装Rails的一切。 239 00:11:33,749 --> 00:11:36,456 你不必担心任何 这一点,所以这真的很酷。 240 00:11:36,456 --> 00:11:38,500 此外,还有大量的, 大量的在线帮助。 241 00:11:38,500 --> 00:11:40,485 所以,你可以找到很多的东西。 242 00:11:40,485 --> 00:11:42,360 如果你有一个错误, 你可以Google一下, 243 00:11:42,360 --> 00:11:45,090 而这将是 很容易得到帮助。 244 00:11:45,090 --> 00:11:47,200 >> 这是一个很大的fun-- exactly--因为你 245 00:11:47,200 --> 00:11:51,420 不必担心低级别 详情,实施哈希表的 246 00:11:51,420 --> 00:11:58,080 并且必须拿出所有的 HTTP头,和很多事情, 247 00:11:58,080 --> 00:12:00,197 甚至一些更高层次的东西。 248 00:12:00,197 --> 00:12:02,030 你不必担心 有关Rails中。 249 00:12:02,030 --> 00:12:04,010 它确实非常,非常漂亮的你。 250 00:12:04,010 --> 00:12:07,490 我们要去证明 更具体地很快。 251 00:12:07,490 --> 00:12:08,130 好不好。 252 00:12:08,130 --> 00:12:09,750 >> 所以关于Ruby一点点了。 253 00:12:09,750 --> 00:12:11,420 所以,它就像C,正如我所说。 254 00:12:11,420 --> 00:12:14,170 取而代之的printf的,我们说 “把”,这是“把字符串”。 255 00:12:14,170 --> 00:12:18,100 它把一个字符串到控制台。 256 00:12:18,100 --> 00:12:20,601 在这种情况下,我们 刚刚打印的“Hello World”。 257 00:12:20,601 --> 00:12:23,100 我们不需要括号, 但它是非常相似的。 258 00:12:23,100 --> 00:12:26,190 >> 然后,如果你想 做的东西在这里, 259 00:12:26,190 --> 00:12:30,450 像打印一串“小商品”和 在While循环一堆“大个子”的, 260 00:12:30,450 --> 00:12:32,060 这有点像在C,对不对? 261 00:12:32,060 --> 00:12:35,090 你没有的参数,可以 但它几乎是相同的。 262 00:12:35,090 --> 00:12:37,300 这里的压痕 计数,所以x等于1。 263 00:12:37,300 --> 00:12:41,250 然后当x是小于 50--这是一个如果,这是一个else。 264 00:12:41,250 --> 00:12:42,810 这几乎就像你看到的是什么。 265 00:12:42,810 --> 00:12:47,150 >> 和那么x + = 1只是递增, 有点像做++,你可以 266 00:12:47,150 --> 00:12:50,213 做C.但是它是相当 多,你在C.看到的 267 00:12:50,213 --> 00:12:52,380 它不应该是太复杂了。 268 00:12:52,380 --> 00:12:54,320 但它更强大。 269 00:12:54,320 --> 00:13:00,100 因此,有一些命令在这里 这肯定是一个有点新。 270 00:13:00,100 --> 00:13:05,110 >> 因此,例如,“卖出期权”。 271 00:13:05,110 --> 00:13:08,680 你可以使用这个符号包括hashtag 这里只是打印something-- 272 00:13:08,680 --> 00:13:13,490 很像,如果你会做什么 在%D或%C或有点类似。 273 00:13:13,490 --> 00:13:17,600 而实际上你可以把一个 如果会后声明的权利。 274 00:13:17,600 --> 00:13:21,180 所以,我只想做this-- 如果x大于3。 275 00:13:21,180 --> 00:13:24,129 那么,为什么我要 使整个If块? 276 00:13:24,129 --> 00:13:24,670 我不知道。 277 00:13:24,670 --> 00:13:28,880 我可以只打印这只 如果x等于大于3。 278 00:13:28,880 --> 00:13:32,740 所以这是一个行路 对这样的红宝石。 279 00:13:32,740 --> 00:13:35,570 >> 在红宝石名单 一些非常灵活。 280 00:13:35,570 --> 00:13:38,110 所以你并不真的需要 有一种类型。 281 00:13:38,110 --> 00:13:40,674 你可以有一个字符串,然后 一些数字,而不管。 282 00:13:40,674 --> 00:13:42,590 如果你想追加 东西的列表, 283 00:13:42,590 --> 00:13:46,860 你可以使用这个 符号就在这里。 284 00:13:46,860 --> 00:13:48,310 >> 如果你想迭代。 285 00:13:48,310 --> 00:13:56,200 几乎是在4each PHP,在这里,你 有一个列表,你做“List.each做的。” 286 00:13:56,200 --> 00:13:59,464 而这个“ELEM”,这是 像的每个元素的名称 287 00:13:59,464 --> 00:14:00,880 那我要在我的名单。 288 00:14:00,880 --> 00:14:03,890 然后我就可以“把ELEM。” 289 00:14:03,890 --> 00:14:07,130 和“放”几乎手柄 把它给你,打印。 290 00:14:07,130 --> 00:14:09,920 这并不重要,如果 它是一个字符串或一个整数。 291 00:14:09,920 --> 00:14:12,790 这是去上班的为你。 292 00:14:12,790 --> 00:14:14,270 对不对? 293 00:14:14,270 --> 00:14:14,790 酷。 294 00:14:14,790 --> 00:14:19,980 >> 而且就像PHP,Ruby和HTML 还集成了非常,非常漂亮。 295 00:14:19,980 --> 00:14:23,340 在这里,有一些 HTML和Ruby它。 296 00:14:23,340 --> 00:14:25,860 因此,我们有一个body标签像HTML。 297 00:14:25,860 --> 00:14:28,270 如果我们想检查 一个用户,例如, 298 00:14:28,270 --> 00:14:35,730 登录后,我们就可以说,一开始的 红宝石的红宝石,如果user.logged_in?结束。 299 00:14:35,730 --> 00:14:39,240 打印这整个事情,这 有一些红宝石在里面,这是刚 300 00:14:39,240 --> 00:14:42,230 种这样的语法 PHP的打印出的变量。 301 00:14:42,230 --> 00:14:43,380 让我们打印user.name。 302 00:14:43,380 --> 00:14:48,870 >> 所以欢迎,斯蒂芬, 在HTML的div。 303 00:14:48,870 --> 00:14:53,760 并在结束时,我们有一个“终点”,并 Ruby代码,这意味着这是我的 304 00:14:53,760 --> 00:14:54,470 如果块。 305 00:14:54,470 --> 00:14:55,060 好不好? 306 00:14:55,060 --> 00:14:57,684 所以,它就像一个无缝 Ruby和HTML之间的集成。 307 00:14:57,684 --> 00:15:00,056 308 00:15:00,056 --> 00:15:01,430 也有很多的资源。 309 00:15:01,430 --> 00:15:06,290 但在此之前,我们继续前进,做任何人 对Ruby的,什么什么问题吗? 310 00:15:06,290 --> 00:15:08,960 好不好。 311 00:15:08,960 --> 00:15:12,250 >> 有大量的资源在网上 到tryruby.org,代码学院, 312 00:15:12,250 --> 00:15:18,740 ruby-lang.org,在那里你可以试试 其实出在你的浏览器之前,您 313 00:15:18,740 --> 00:15:22,310 说,哦,好吧,我将使用 红宝石为我最后的项目。 314 00:15:22,310 --> 00:15:24,020 所以肯定会给那些一试。 315 00:15:24,020 --> 00:15:26,510 所有这些幻灯片都是 将在网上提供, 316 00:15:26,510 --> 00:15:28,950 所以你可以下载它们。 317 00:15:28,950 --> 00:15:30,115 是的? 318 00:15:30,115 --> 00:15:31,889 >> 观众:[听不清] 你刚才表现是什么 319 00:15:31,889 --> 00:15:36,851 被HTML和代码嵌入到 它的模型 - 视图 - 这个概念 320 00:15:36,851 --> 00:15:37,350 控制器? 321 00:15:37,350 --> 00:15:37,610 >> GABRIEL GUIMARAES:是的。 322 00:15:37,610 --> 00:15:40,290 我们将在第二 当我们展示我们的例子中,OK? 323 00:15:40,290 --> 00:15:41,290 谢谢你的问题。 324 00:15:41,290 --> 00:15:44,760 所以,问题基本上是,如果我们 可以显示这种集成的Ruby 325 00:15:44,760 --> 00:15:49,230 在模型中的HTML 视图控制器架构。 326 00:15:49,230 --> 00:15:51,710 >> 因此模型的想法 视图控制器架构 327 00:15:51,710 --> 00:15:55,740 是它基本上是一个理念, 就像斯蒂芬显示在这里。 328 00:15:55,740 --> 00:15:58,177 它不是什么 你所要做的, 329 00:15:58,177 --> 00:16:00,510 但它的东西,使 你的生活变得更简单。 330 00:16:00,510 --> 00:16:04,170 和Ruby on Rails是建立 围绕这一理念的代码。 331 00:16:04,170 --> 00:16:06,320 所以,我们要展示 一个例子很快。 332 00:16:06,320 --> 00:16:07,340 >> 所以Rails是爱。 333 00:16:07,340 --> 00:16:09,140 很多人都在使用它,因为我说的。 334 00:16:09,140 --> 00:16:10,510 它真的很有趣。 335 00:16:10,510 --> 00:16:12,360 你们应该 肯定会给它一个尝试。 336 00:16:12,360 --> 00:16:15,120 MVC使一切更简单。 337 00:16:15,120 --> 00:16:18,110 所以模型视图控制器, 分离的东西 338 00:16:18,110 --> 00:16:21,450 并把一个人本身, 或者您的应用程序的一部分 339 00:16:21,450 --> 00:16:24,850 做每一个不同的职位 你的应用程序必须做。 340 00:16:24,850 --> 00:16:26,676 少花时间 低层次的问题。 341 00:16:26,676 --> 00:16:27,800 和非常受欢迎的现在。 342 00:16:27,800 --> 00:16:29,917 我们的Rails 4.0, 这是一个新的版本。 343 00:16:29,917 --> 00:16:31,500 它配备了很多很酷的东西。 344 00:16:31,500 --> 00:16:32,562 另外一个问题。 345 00:16:32,562 --> 00:16:34,490 >> 听众:另一个问题。 346 00:16:34,490 --> 00:16:39,310 Ruby on Rails的对比 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 现在的问题是,红宝石 on Rails的与Ruby-- 349 00:16:42,252 --> 00:16:42,960 听众:Grails的。 350 00:16:42,960 --> 00:16:43,490 红宝石? 351 00:16:43,490 --> 00:16:44,490 >> GABRIEL GUIMARAES:是的。 352 00:16:44,490 --> 00:16:45,955 因此Ruby语言。 353 00:16:45,955 --> 00:16:46,745 >> 听众:第 354 00:16:46,745 --> 00:16:50,360 我问你比较的语言 和框架,Ruby on Rails的, 355 00:16:50,360 --> 00:16:52,975 与其他流行的语言 framework-- Grails--使用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 抱歉。 359 00:16:54,480 --> 00:16:57,390 现在的问题是,比较 Ruby和Ruby on Rails的 360 00:16:57,390 --> 00:16:59,750 另一个框架和another-- 361 00:16:59,750 --> 00:17:01,022 >> 听众:红宝石。 362 00:17:01,022 --> 00:17:01,954 没关系。 363 00:17:01,954 --> 00:17:03,820 如果你不知道它,这很好。 364 00:17:03,820 --> 00:17:05,359 >> GABRIEL GUIMARAES:像, 我的理解是that-- 365 00:17:05,359 --> 00:17:07,080 >> 听众:还有一个 框架称为Grails的。 366 00:17:07,080 --> 00:17:07,700 >> GABRIEL GUIMARAES:哦,Grails的。 367 00:17:07,700 --> 00:17:08,650 我从来没有听说过。 368 00:17:08,650 --> 00:17:09,640 抱歉。 369 00:17:09,640 --> 00:17:11,690 我从来没有听说过的Groovy on Rails的。 370 00:17:11,690 --> 00:17:12,744 抱歉。 371 00:17:12,744 --> 00:17:14,869 >> 听众:这是更好 集成的Java。 372 00:17:14,869 --> 00:17:15,450 >> GABRIEL GUIMARAES:我明白了。 373 00:17:15,450 --> 00:17:17,555 >> 听众:我只是好奇 一些人,我知道like-- 374 00:17:17,555 --> 00:17:20,240 >> GABRIEL GUIMARAES:不,我从来没有 听说那一个,很遗憾。 375 00:17:20,240 --> 00:17:20,700 Grails的。 376 00:17:20,700 --> 00:17:21,410 >> 听众:有些人 明明喜欢Ruby on Rails的。 377 00:17:21,410 --> 00:17:22,640 >> GABRIEL GUIMARAES:我有 使用Ruby on Rails的很多。 378 00:17:22,640 --> 00:17:24,790 我已经使用了一些Django的 与Python,正如我所说。 379 00:17:24,790 --> 00:17:26,329 我用了一些Laravel。 380 00:17:26,329 --> 00:17:29,490 但我没有使用过的Groovy on Rails的。 381 00:17:29,490 --> 00:17:31,630 抱歉。 382 00:17:31,630 --> 00:17:34,040 它很受欢迎 现在使用Rails 4.0。 383 00:17:34,040 --> 00:17:38,180 喜欢,有些东西Rails的 为你做,比如说是你 384 00:17:38,180 --> 00:17:43,650 有很多的CSS文件和 大量的JavaScript文件。 385 00:17:43,650 --> 00:17:45,790 你可以把它们作为 独立和一切。 386 00:17:45,790 --> 00:17:50,010 >> 但随后automatically--时 你把你的代码到生产, 387 00:17:50,010 --> 00:17:52,770 它会自动编译 他们都到一个单一的文件 388 00:17:52,770 --> 00:17:55,150 这是缩小的,没有任何 空间,以便它占用 389 00:17:55,150 --> 00:17:59,400 在应用程序中更小的空间,所以 你可以真正扩展了很多东西。 390 00:17:59,400 --> 00:18:04,380 这就是为什么这样的大公司 像Twitter和GitHub上 391 00:18:04,380 --> 00:18:10,220 使用Rails的,因为它所有 这对你来说,这是真的很酷。 392 00:18:10,220 --> 00:18:12,840 >> 有一件事,这是非常, 非常,非常艰巨 393 00:18:12,840 --> 00:18:18,450 人,包括我在内, 谁是努力工作 394 00:18:18,450 --> 00:18:22,430 带框架的开头,是 当你开始了一个应用程序, 395 00:18:22,430 --> 00:18:24,440 你会看到一堆文件。 396 00:18:24,440 --> 00:18:28,460 喜欢,当你创建 Rails的新的,我的应用程序, 397 00:18:28,460 --> 00:18:31,710 你会看到所有的这些 folders--应用程序,垃圾桶,配置,DB,LIB, 398 00:18:31,710 --> 00:18:32,482 日志,公开。 399 00:18:32,482 --> 00:18:33,690 喜欢,很多很多的东西。 400 00:18:33,690 --> 00:18:35,030 >> 和我第一次 见此情景,我当时想, 401 00:18:35,030 --> 00:18:36,570 OK,我不知道发生了什么事情。 402 00:18:36,570 --> 00:18:38,890 我只是想创建一个 网站,“你好,世界” 403 00:18:38,890 --> 00:18:41,730 这是给我一样, 100十亿不同的页面。 404 00:18:41,730 --> 00:18:43,070 我不知道发生了什么事情。 405 00:18:43,070 --> 00:18:47,460 所以,请不要用太气馁。 406 00:18:47,460 --> 00:18:53,699 >> 我们的想法是,它实际上具有半 一个房子有你了。 407 00:18:53,699 --> 00:18:55,490 它有一个整 框架你了。 408 00:18:55,490 --> 00:18:56,948 这就是为什么有这么多的文件。 409 00:18:56,948 --> 00:19:00,150 但好处是,它 分开他们都非常漂亮。 410 00:19:00,150 --> 00:19:03,370 奇怪的是,你不必担心 有关大多数这些文件夹中。 411 00:19:03,370 --> 00:19:05,820 >> 最重要的一条,我 可以说,是应用程序文件夹, 412 00:19:05,820 --> 00:19:07,147 在您的应用程序实际上生活。 413 00:19:07,147 --> 00:19:09,730 所以,配置,你会 要configurate一些东西, 414 00:19:09,730 --> 00:19:12,840 像你的数据库之类的东西 哪一种你正在使用的数据库。 415 00:19:12,840 --> 00:19:17,430 但除此之外,像极了 你的工作是要在应用程序完成。 416 00:19:17,430 --> 00:19:21,620 因此,在应用程序,你有资产,控制器, 佣工,邮寄,模型,视图。 417 00:19:21,620 --> 00:19:24,460 所以在这里,你开始看到 控制器,模型和视图来 418 00:19:24,460 --> 00:19:25,410 发挥作用。 419 00:19:25,410 --> 00:19:27,270 >> 寄件人只是,如果你 要发送电子邮件。 420 00:19:27,270 --> 00:19:29,400 助理如果你想 创建一些功能 421 00:19:29,400 --> 00:19:32,050 您在视图中使用了很多。 422 00:19:32,050 --> 00:19:34,490 所以,你把它们放在助手。 423 00:19:34,490 --> 00:19:39,000 和资产基本上所有的 你的形象,你的所有的CSS, 424 00:19:39,000 --> 00:19:41,200 所有的JavaScript, 而像那些种 425 00:19:41,200 --> 00:19:43,110 的东西,被发送到客户端。 426 00:19:43,110 --> 00:19:45,500 和一切是在资产, 我以前说过,被缩小的。 427 00:19:45,500 --> 00:19:45,940 它的编译。 428 00:19:45,940 --> 00:19:49,189 你真的不担心 当它进入生产代码。 429 00:19:49,189 --> 00:19:49,770 酷。 430 00:19:49,770 --> 00:19:54,205 >> 现在,扎克会来的,而且他的 打算做Twitter50的一个例子。 431 00:19:54,205 --> 00:19:54,970 >> 听众:呜 - 呼! 432 00:19:54,970 --> 00:19:56,726 >> ZACK CHAUVIN:真棒。 433 00:19:56,726 --> 00:20:00,180 所以,我要工作机会 使用Ruby on Rails的这个夏天。 434 00:20:00,180 --> 00:20:01,580 这是一个惊人的框架。 435 00:20:01,580 --> 00:20:03,580 我很偏爱它。 436 00:20:03,580 --> 00:20:09,770 而我就告诉你一点点 是什么它可能看起来像一个例子。 437 00:20:09,770 --> 00:20:11,020 跳过至Chrome浏览器。 438 00:20:11,020 --> 00:20:16,350 因此,这是一个非常简单的一个例子 Ruby on Rails的application--东西 439 00:20:16,350 --> 00:20:19,690 像这样的东西 那红宝石的确有过人之处 440 00:20:19,690 --> 00:20:24,070 that--只需在您的 模型是非常明确。 441 00:20:24,070 --> 00:20:27,150 >> 在这个例子中,你会看到 两种不同型号,其中 442 00:20:27,150 --> 00:20:30,380 都是我们的用户 我们有鸣叫。 443 00:20:30,380 --> 00:20:33,480 所以这是Twitter50, 哈佛自己的微博。 444 00:20:33,480 --> 00:20:36,820 正如你所看到的,我的身份登录@zack。 445 00:20:36,820 --> 00:20:38,860 而我能够做出新的鸣叫。 446 00:20:38,860 --> 00:20:42,266 所以我think--“这是一个” - 对不起? 447 00:20:42,266 --> 00:20:43,182 观众:[听不清]。 448 00:20:43,182 --> 00:20:44,061 ZACK CHAUVIN:哦,OK。 449 00:20:44,061 --> 00:20:45,060 需要停止服务器。 450 00:20:45,060 --> 00:20:47,480 优秀的。 451 00:20:47,480 --> 00:20:49,630 所以,我们在这里。 452 00:20:49,630 --> 00:20:52,520 正如你所看到的,我们有我们的 Twitter的应用程序就在这里。 453 00:20:52,520 --> 00:20:55,020 和它的超级容易启动服务器。 454 00:20:55,020 --> 00:20:57,991 我们就做“导轨的服务器。” 455 00:20:57,991 --> 00:20:58,490 大。 456 00:20:58,490 --> 00:20:58,990 好不好。 457 00:20:58,990 --> 00:21:00,830 感谢。 458 00:21:00,830 --> 00:21:02,200 所以,现在我们正在运行。 459 00:21:02,200 --> 00:21:06,120 >> 我们会说,“这 是一个真棒研讨会“。 460 00:21:06,120 --> 00:21:08,870 让我们看看会发生什么。 461 00:21:08,870 --> 00:21:10,020 因此,我们将鸣叫了。 462 00:21:10,020 --> 00:21:13,390 倒在底部,你可以看到 现在有三个以上的鸣叫。 463 00:21:13,390 --> 00:21:15,980 因此,我们有一点点 分页的事情。 464 00:21:15,980 --> 00:21:19,640 我们有鸣叫。 465 00:21:19,640 --> 00:21:24,010 我也可以通过搜索我的 tweets--搜索,这和两 466 00:21:24,010 --> 00:21:27,960 那些有词 “这个”在其中出现。 467 00:21:27,960 --> 00:21:30,860 我们还可以通过删除微博 点击小删除按钮。 468 00:21:30,860 --> 00:21:36,440 很明显,我只能删除 这是属于我的岗位。 469 00:21:36,440 --> 00:21:39,030 >> 目前,我们几乎有 Twitter的功能。 470 00:21:39,030 --> 00:21:42,000 喜欢,当你想想看,微博 真的没有做那么多。 471 00:21:42,000 --> 00:21:44,280 它的用户,它有鸣叫。 472 00:21:44,280 --> 00:21:47,690 还有一些更复杂的功能。 473 00:21:47,690 --> 00:21:52,960 但是,当你真正坐下来了, 这是一个相当简单的Ruby on Rails应用程序。 474 00:21:52,960 --> 00:21:57,560 而这样的事情,有 很好理解的Ruby on Rails的, 475 00:21:57,560 --> 00:22:00,680 你很可能 使一两个小时。 476 00:22:00,680 --> 00:22:04,210 >> 而这其实就是 回到Ruby的口头禅, 477 00:22:04,210 --> 00:22:07,540 这是约定优于配置。 478 00:22:07,540 --> 00:22:10,965 所以,早在一天,人们随时随地 他们想让这个网站, 479 00:22:10,965 --> 00:22:12,340 将不得不从头开始。 480 00:22:12,340 --> 00:22:13,740 OK,我想使一个网站。 481 00:22:13,740 --> 00:22:15,970 让我们把这个文件, 这个文件,这个文件。 482 00:22:15,970 --> 00:22:19,180 >> 随着Ruby on Rails的, 有没有说。 483 00:22:19,180 --> 00:22:21,170 你说,我希望有一个新的应用程序。 484 00:22:21,170 --> 00:22:25,010 就这样加布向​​我们展示了,它 为我们创造了整个文件结构。 485 00:22:25,010 --> 00:22:27,490 我们只是改变 小部分,我们需要。 486 00:22:27,490 --> 00:22:31,570 我们只是定义了什么 独特之处我们的应用程序。 487 00:22:31,570 --> 00:22:32,250 酷。 488 00:22:32,250 --> 00:22:38,540 所以,要回我们的介绍 preview--有趣。 489 00:22:38,540 --> 00:22:41,408 490 00:22:41,408 --> 00:22:42,724 我在哪里出现? 491 00:22:42,724 --> 00:22:43,640 听众:全屏。 492 00:22:43,640 --> 00:22:45,715 右上角。 493 00:22:45,715 --> 00:22:48,480 >> ZACK CHAUVIN:优秀。 494 00:22:48,480 --> 00:22:48,990 酷。 495 00:22:48,990 --> 00:22:49,490 好不好。 496 00:22:49,490 --> 00:22:51,480 所以首先,模型。 497 00:22:51,480 --> 00:22:54,100 斯蒂芬做了一个真棒 工作概述MVC的。 498 00:22:54,100 --> 00:22:57,980 现在我们要与 这回的Ruby on Rails。 499 00:22:57,980 --> 00:23:00,730 因此,该模型可以种 中认为的数据库。 500 00:23:00,730 --> 00:23:04,870 你已经看到这CS50 金融,那里的模型店 501 00:23:04,870 --> 00:23:07,590 有关信息 你有多少的个股有, 502 00:23:07,590 --> 00:23:10,986 或者所有你所做的交易。 503 00:23:10,986 --> 00:23:12,860 这是一个例子 行,你会怎么 504 00:23:12,860 --> 00:23:15,640 去让Rails中的新模式。 505 00:23:15,640 --> 00:23:17,102 所以我想一个用户。 506 00:23:17,102 --> 00:23:19,060 这将有 电子邮件,它是一个字符串, 507 00:23:19,060 --> 00:23:20,990 和密码,其 也是字符串。 508 00:23:20,990 --> 00:23:27,150 所以,它就像those--我想每一行 在我的用户表看起来像。 509 00:23:27,150 --> 00:23:30,730 >> 一个真正真棒一部分 Rails的是,它 510 00:23:30,730 --> 00:23:33,755 使得不必 写任何SQL漂亮多了。 511 00:23:33,755 --> 00:23:38,640 怎么你们的人爱 编写SQL在PSET 7? 512 00:23:38,640 --> 00:23:39,770 没错。 513 00:23:39,770 --> 00:23:41,840 SQL是不是很人性化。 514 00:23:41,840 --> 00:23:46,470 和Rails抽象一切离开 这些很容易的命令。 515 00:23:46,470 --> 00:23:51,580 因此,例如,如果我们有一个 用户中,用户有许多鸣叫。 516 00:23:51,580 --> 00:23:56,580 而这些中的每一个 鸣叫属于一个用户。 517 00:23:56,580 --> 00:23:59,520 >> 所以,如果你看这里,这 是我们的模型对我们的鸣叫。 518 00:23:59,520 --> 00:24:02,750 而我们不得不说的是 这种单一line--我鸣叫 519 00:24:02,750 --> 00:24:05,090 我属于一个用户。 520 00:24:05,090 --> 00:24:10,160 并与单个线路和一个 数据库配置点点, 521 00:24:10,160 --> 00:24:12,990 导轨设置这种关系。 522 00:24:12,990 --> 00:24:17,450 任何时候,我只能说,zack.tweets, 喜欢,给我所有扎克鸣叫。 523 00:24:17,450 --> 00:24:19,420 没有SQL。 524 00:24:19,420 --> 00:24:20,040 超级简单。 525 00:24:20,040 --> 00:24:26,580 再次,这是惯例了 配置开始​​发挥作用。 526 00:24:26,580 --> 00:24:29,770 >> 你可以看到一点点 红宝石这里的例子。 527 00:24:29,770 --> 00:24:32,740 像都给说,编写Ruby是 有点像写英语。 528 00:24:32,740 --> 00:24:35,540 这是一个非常高层次的语言, 它使得它很容易 529 00:24:35,540 --> 00:24:42,380 对我们说这样的话,我想 确保这条推文有一具尸体。 530 00:24:42,380 --> 00:24:43,740 它的存在是真实的。 531 00:24:43,740 --> 00:24:47,170 我想确保这个 鸣叫,就像正常的微博, 532 00:24:47,170 --> 00:24:49,020 拥有140的最大长度。 533 00:24:49,020 --> 00:24:52,800 这是超级直观,一 真正伟大的语言。 534 00:24:52,800 --> 00:24:54,590 >> 接下来我们有看法。 535 00:24:54,590 --> 00:24:57,510 因此,这涉及到HTML和CSS。 536 00:24:57,510 --> 00:25:00,490 而且这里有一个观点的一个例子。 537 00:25:00,490 --> 00:25:05,600 因此,Ruby on Rails的那种无缝 集成了Ruby和HTML 538 00:25:05,600 --> 00:25:08,880 为了产生 我们想要在页面上。 539 00:25:08,880 --> 00:25:11,380 因此,这是我们的布局的一个例子。 540 00:25:11,380 --> 00:25:15,710 所以你可以看到一些标签,你 家伙都习惯了,就像HTML,身体, 541 00:25:15,710 --> 00:25:17,250 所有的好东西。 542 00:25:17,250 --> 00:25:21,760 >> 而就在这里,虽然,我们 加入一些红宝石说, 543 00:25:21,760 --> 00:25:25,390 如果有消息显示, 然后显示在一个div消息。 544 00:25:25,390 --> 00:25:28,060 所以,我不会得到太多成。 545 00:25:28,060 --> 00:25:31,190 但是,这是一个通常 这被on--呈现的页面 546 00:25:31,190 --> 00:25:33,960 无论你是哪一页 对,这一个被渲染。 547 00:25:33,960 --> 00:25:38,110 所以这是什么得到总是包含。 548 00:25:38,110 --> 00:25:38,980 酷。 549 00:25:38,980 --> 00:25:42,730 >> 一个view--另一个例子是 一个地方选择所有的tweet。 550 00:25:42,730 --> 00:25:45,630 而一些这方面的东西, 可能看起来很熟悉。 551 00:25:45,630 --> 00:25:50,050 因此,例如,就在这里,我们 通过每个鸣叫的循环, 552 00:25:50,050 --> 00:25:51,960 我们正在打印出来。 553 00:25:51,960 --> 00:25:54,320 所以,这里是我们 打印出的身体。 554 00:25:54,320 --> 00:26:00,910 如果鸣叫的user--这里有一个 没有SQL的真实的例子是参与。 555 00:26:00,910 --> 00:26:04,390 我只是问,这是 鸣叫的用户当前的用户? 556 00:26:04,390 --> 00:26:06,030 然后显示一个链接删除。 557 00:26:06,030 --> 00:26:06,880 这是超级简单。 558 00:26:06,880 --> 00:26:09,670 559 00:26:09,670 --> 00:26:10,920 >> 控制器。 560 00:26:10,920 --> 00:26:14,390 所以这是,再次,接口 模型和视图之间。 561 00:26:14,390 --> 00:26:17,820 这是一个的辛勤工作 的interacting--作为中间人。 562 00:26:17,820 --> 00:26:20,980 它加载信息的 看来,我们将在几秒钟之内看到。 563 00:26:20,980 --> 00:26:23,850 并以交互 与模型,它 564 00:26:23,850 --> 00:26:29,170 调用模型的方法,这是什么 你们所熟悉的功能。 565 00:26:29,170 --> 00:26:31,490 >> 因此,例如,这是 我们的鸣叫的控制器。 566 00:26:31,490 --> 00:26:33,930 它可能看起来有点 令人生畏现在。 567 00:26:33,930 --> 00:26:38,240 但它实际上是超直觉 一旦你开始跳水英寸 568 00:26:38,240 --> 00:26:42,990 因此,例如,在我们的索引,这是 在这里我们要显示所有的鸣叫。 569 00:26:42,990 --> 00:26:46,910 所以这条线基本 只是要求所有的鸣叫。 570 00:26:46,910 --> 00:26:50,300 然后我们俩初始化 新tweet--这么喜欢 571 00:26:50,300 --> 00:26:52,320 如果他们想要创建一个 该网页上新的鸣叫。 572 00:26:52,320 --> 00:26:54,250 >> 而且,它要求当前用户是什么。 573 00:26:54,250 --> 00:26:58,850 这是非常类似的 使您在PSET 7所看到的, 574 00:26:58,850 --> 00:27:02,230 种在那里,它只是告诉 在view--它的种一样, 575 00:27:02,230 --> 00:27:06,284 顺便指出你的变量 将需要在视图中的视图。 576 00:27:06,284 --> 00:27:08,200 并有一大堆 不同的方法 577 00:27:08,200 --> 00:27:10,410 这鸣叫的控制器可以处理。 578 00:27:10,410 --> 00:27:12,495 >> 但实际上,Rails会 这种伟大的工作 579 00:27:12,495 --> 00:27:18,910 中把它们分为不同的 行动控制器可能会做。 580 00:27:18,910 --> 00:27:23,800 是否有任何问题 任何一个Rails的MVC部分? 581 00:27:23,800 --> 00:27:25,550 那种只是一件轻而易举的通过。 582 00:27:25,550 --> 00:27:29,250 所以你们可以查 它在你自己。 583 00:27:29,250 --> 00:27:30,106 真棒。 584 00:27:30,106 --> 00:27:31,200 我们会继续前进。 585 00:27:31,200 --> 00:27:32,546 >> 所以安装导轨。 586 00:27:32,546 --> 00:27:35,170 安装滑轨可能是一样, 更艰巨的部分之一 587 00:27:35,170 --> 00:27:37,830 整个的Rails 过程中,很遗憾。 588 00:27:37,830 --> 00:27:40,450 但很明显,所有的 我们周围,以帮助。 589 00:27:40,450 --> 00:27:42,590 一旦它在那里, 很多伟大的资源, 590 00:27:42,590 --> 00:27:45,100 作为加布提到,入门。 591 00:27:45,100 --> 00:27:47,230 这里是链接 你需要为了 592 00:27:47,230 --> 00:27:51,460 下载的Rails得到它 安装在您的计算机上。 593 00:27:51,460 --> 00:27:54,240 显然,这是可用的 适用于Windows和Mac 594 00:27:54,240 --> 00:27:55,600 并为CS50器具。 595 00:27:55,600 --> 00:27:58,520 596 00:27:58,520 --> 00:28:00,020 我们说一下什么问题? 597 00:28:00,020 --> 00:28:04,265 598 00:28:04,265 --> 00:28:06,690 >> 观众:我是 兴趣,actually-- 599 00:28:06,690 --> 00:28:10,255 所以我知道下载 软件是最大的障碍。 600 00:28:10,255 --> 00:28:14,807 如果有足够的兴趣,有一个 下载小型会议什么的。 601 00:28:14,807 --> 00:28:15,640 ZACK CHAUVIN:嗯。 602 00:28:15,640 --> 00:28:15,692 是啊。 603 00:28:15,692 --> 00:28:16,900 这可能是真正有用的。 604 00:28:16,900 --> 00:28:20,650 如果有人真的很卖力的约 使用此为他们的项目 605 00:28:20,650 --> 00:28:26,555 还是将来,那么我们倒是肯定 很高兴和你谈谈这一点。 606 00:28:26,555 --> 00:28:27,055 嗯。 607 00:28:27,055 --> 00:28:29,530 >> 听众:一个相关的问题 什么我问过。 608 00:28:29,530 --> 00:28:32,563 对于那些你们谁做 其他的框架,仍 609 00:28:32,563 --> 00:28:34,354 试图做同样的 的事情,更容易 610 00:28:34,354 --> 00:28:38,452 建立一个网站或 功能,我想任何意义 611 00:28:38,452 --> 00:28:43,653 为什么我们会on Rails的对比 Zend的或其他的一些框架 612 00:28:43,653 --> 00:28:44,236 和语言。 613 00:28:44,236 --> 00:28:47,870 >> ZACK CHAUVIN:我就 说我0.02美元有关。 614 00:28:47,870 --> 00:28:49,090 我喜欢的Ruby on Rails。 615 00:28:49,090 --> 00:28:52,120 我有工作的机会 在这两个PHP和Ruby on Rails。 616 00:28:52,120 --> 00:28:55,291 我更喜欢的Ruby on 导轨因为Ruby的。 617 00:28:55,291 --> 00:28:56,790 肯定地说,这是它的一个重要组成部分。 618 00:28:56,790 --> 00:28:58,140 喜欢,当你 选择你的框架, 619 00:28:58,140 --> 00:28:59,490 你也可以选择你的语言。 620 00:28:59,490 --> 00:29:03,510 >> Ruby是超级accessible--我想 比PHP更好的语言。 621 00:29:03,510 --> 00:29:06,250 但是,这是一种个人喜好。 622 00:29:06,250 --> 00:29:09,360 同时,另外一个考虑是 该框架背后的社区 623 00:29:09,360 --> 00:29:11,570 你正在使用。 624 00:29:11,570 --> 00:29:13,840 >> 现在,Ruby on Rails是真热。 625 00:29:13,840 --> 00:29:16,160 还有吨的背后支持。 626 00:29:16,160 --> 00:29:19,180 您发布的东西在堆栈 溢出你是一个问题 627 00:29:19,180 --> 00:29:22,350 其在Ruby on Rails的, 和它的回答。 628 00:29:22,350 --> 00:29:26,900 再次,它是开源的,这意味着 它是不断地被改变。 629 00:29:26,900 --> 00:29:28,910 有成千上万的人 这是真正的专用 630 00:29:28,910 --> 00:29:32,370 为了使这 真正真棒框架。 631 00:29:32,370 --> 00:29:34,225 所以这就是为什么我会 选择Ruby on Rails的。 632 00:29:34,225 --> 00:29:35,225 GABRIEL GUIMARAES:是的。 633 00:29:35,225 --> 00:29:37,562 我会说,这个想法 大多数框架背后的你 634 00:29:37,562 --> 00:29:39,770 要找出有 非常非常的相似,对吧? 635 00:29:39,770 --> 00:29:42,210 所以模型视图控制器, 一个事实,即我们的控制器的 636 00:29:42,210 --> 00:29:44,793 去看看喜欢的事 像this--每个功能 637 00:29:44,793 --> 00:29:47,235 就像你的一个页面, 它会将您重定向, 638 00:29:47,235 --> 00:29:48,750 它初始化的变量。 639 00:29:48,750 --> 00:29:51,959 这将是同样的事情 每一个框架,你看那里。 640 00:29:51,959 --> 00:29:53,375 还有的将是模型。 641 00:29:53,375 --> 00:29:55,270 你可以做的东西一样,“属于”。 642 00:29:55,270 --> 00:29:59,830 所以不是做SQL版, 你刚才一样,做什么,user.tweets, 643 00:29:59,830 --> 00:30:01,210 而你得到的一切。 644 00:30:01,210 --> 00:30:02,650 每个人都有的。 645 00:30:02,650 --> 00:30:07,070 但在Ruby中,你做user.tweets, 然后在PHP一些框架, 646 00:30:07,070 --> 00:30:12,010 你做user.getalltweets 在我的PHP是没有问题的。 647 00:30:12,010 --> 00:30:13,460 喜欢,这是一个大线。 648 00:30:13,460 --> 00:30:15,320 这是同样的事情, 但它是一个大线。 649 00:30:15,320 --> 00:30:19,350 >> 所以这是主要的原因之一 我的偏好超过红宝石。 650 00:30:19,350 --> 00:30:22,290 这只是我做的正是 在其他框架一样的东西, 651 00:30:22,290 --> 00:30:26,021 它只是需要我两次 只要行代码。 652 00:30:26,021 --> 00:30:26,520 好不好? 653 00:30:26,520 --> 00:30:29,730 654 00:30:29,730 --> 00:30:32,540 >> 还有没有其他问题? 655 00:30:32,540 --> 00:30:35,200 >> ZACK CHAUVIN:东西 我会提到quickly--加布 656 00:30:35,200 --> 00:30:36,682 谈到宝石一点点。 657 00:30:36,682 --> 00:30:39,890 而这是一个非常great--我的意思是,这 是一种常见的以全框架, 658 00:30:39,890 --> 00:30:45,170 这有一种宝石的概念, 这就像我的小例子, 659 00:30:45,170 --> 00:30:46,680 我已经登录。 660 00:30:46,680 --> 00:30:48,460 喜欢,您可以登录,登出。 661 00:30:48,460 --> 00:30:51,740 喜欢,这实际上 怎样的一个复杂过程。 662 00:30:51,740 --> 00:30:55,950 它是处理一个小 在PSET 7位给你。 663 00:30:55,950 --> 00:31:01,160 但我还是不完全知道如何 实现登录,注销。 664 00:31:01,160 --> 00:31:03,740 那是因为 Ruby on Rails的拥有万吨 665 00:31:03,740 --> 00:31:06,080 中的宝石,做这样的东西给你。 666 00:31:06,080 --> 00:31:08,550 >> 再次,约定优于配置。 667 00:31:08,550 --> 00:31:11,050 每个人都会做 此签到,签退的步骤。 668 00:31:11,050 --> 00:31:14,450 那么,为什么不只是做一个包,叫做 设计在这种情况下,这是一个宝石。 669 00:31:14,450 --> 00:31:15,810 你只是包括它。 670 00:31:15,810 --> 00:31:18,970 再有就是一些帮助 在线和如何使用它。 671 00:31:18,970 --> 00:31:21,230 而且你不必担心 关于这样的事情。 672 00:31:21,230 --> 00:31:24,060 >> 图片连接这些 things--宝石为。 673 00:31:24,060 --> 00:31:27,220 喜欢,任何时候你正在试图做 任何新的东西,有一个创业板的。 674 00:31:27,220 --> 00:31:29,420 而你只是种 拼凑这些宝石 675 00:31:29,420 --> 00:31:33,160 并建立一个非常复杂的 应用程序非常迅速。 676 00:31:33,160 --> 00:31:35,902 677 00:31:35,902 --> 00:31:37,437 酷。 678 00:31:37,437 --> 00:31:38,270 还有没有其他问题? 679 00:31:38,270 --> 00:31:39,623 >> STEPHEN TURBAN:胡灏。 680 00:31:39,623 --> 00:31:40,976 我不认为[听不清]。 681 00:31:40,976 --> 00:31:41,966 >> GABRIEL GUIMARAES:OK。 682 00:31:41,966 --> 00:31:42,840 非常感谢,伙计们。 683 00:31:42,840 --> 00:31:43,839 >> STEPHEN TURBAN:寮步再见。 684 00:31:43,839 --> 00:31:44,850 ZACK CHAUVIN:寮步再见。 685 00:31:44,850 --> 00:31:45,849 >> STEPHEN TURBAN:胡灏。 686 00:31:45,849 --> 00:31:48,150 [掌声] 687 00:31:48,150 --> 00:31:49,700 >> 耶。 688 00:31:49,700 --> 00:31:50,955