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 >> СТИВЪН тюрбан: Така че аз съм Стивън чалма. 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 Гимараеш: Отивам да говорим за Ruby и малко 11 00:00:35,080 --> 00:00:39,100 как Релси работи и как тя може да ви помогне да изградите уеб приложения. 12 00:00:39,100 --> 00:00:42,070 >> Зак CHAUVIN: И аз ще се ви покажа един конкретен пример за това как 13 00:00:42,070 --> 00:00:45,112 да използвате Rails за изграждане супер страхотно ап. 14 00:00:45,112 --> 00:00:46,112 СТИВЪН тюрбан: Awesome. 15 00:00:46,112 --> 00:00:46,350 Sweet. 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 И името му е Vince. 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 Vince е красива, но той е глупав. 30 00:02:00,600 --> 00:02:01,320 OK. 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 И какво Vince кажа? 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 Какво мислите Vince казва? 44 00:02:32,660 --> 00:02:36,139 >> Публика: Той казва, мога да ви покажа където и да е, но не мога да ти дам един. 45 00:02:36,139 --> 00:02:41,330 >> СТИВЪН тюрбан: Той казва, мога да ви покажа където и да е, но не мога да ти дам един. 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 СТИВЪН тюрбан: Vince не дори да знае, че трябва да се провери. 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 СТИВЪН тюрбан: Какво е червена чаша? 55 00:02:56,072 --> 00:02:58,090 Какво е червена чаша? 56 00:02:58,090 --> 00:02:59,410 Vince е объркан. 57 00:02:59,410 --> 00:03:05,141 Така че Винс ще говори с Следващата ни актьорски състав, Carl. 58 00:03:05,141 --> 00:03:10,252 И когато мислим за Carl, ние Трябва мисля за две големи adjectives-- 59 00:03:10,252 --> 00:03:15,110 той е контролен, но той е неспособен. 60 00:03:15,110 --> 00:03:17,840 >> Така че Vince goes-- той отива, какво е червена чаша? 61 00:03:17,840 --> 00:03:19,800 Аз не знам какво червена чаша е. 62 00:03:19,800 --> 00:03:23,080 Той се обръща и той пита Carl. 63 00:03:23,080 --> 00:03:28,890 Той казва, Carl, някой попита за червен чаша. 64 00:03:28,890 --> 00:03:30,722 Можеш ли да направиш това? 65 00:03:30,722 --> 00:03:31,680 И какво Carl кажа? 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 >> СТИВЪН тюрбан: Той казва, някой друг, за да получите червено чашата. 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. Mob? 77 00:03:56,960 --> 00:04:00,225 >> Публика: Model. 78 00:04:00,225 --> 00:04:02,720 >> СТИВЪН тюрбан: Моделът, да. 79 00:04:02,720 --> 00:04:06,920 Неговото име не е модела, за съжаление, защото това е глупаво име. 80 00:04:06,920 --> 00:04:09,310 Имаме Mitt. 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 Ние трябва да мислим за двама ключови прилагателни с Mitt. 84 00:04:21,759 --> 00:04:25,040 Той е способен, но той е покорен. 85 00:04:25,040 --> 00:04:29,950 Така Mitt знае какво трябва да направи, но наистина не мога да направя нищо. 86 00:04:29,950 --> 00:04:32,340 Или той наистина не може да реши сам. 87 00:04:32,340 --> 00:04:33,256 >> Така че ние имаме Carl. 88 00:04:33,256 --> 00:04:34,705 Carl крещи Mitt. 89 00:04:34,705 --> 00:04:39,990 И той казва, хей Mitt, имаме нужда от червени чаши. 90 00:04:39,990 --> 00:04:46,410 И Mitt отива да си червена чаша депозитар. 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 Досега Mitt е отишло да си червено чаша хранилище, взето го навън, 96 00:05:01,740 --> 00:05:03,550 Проверих го изключите, каза, Взех една червена чаша. 97 00:05:03,550 --> 00:05:06,717 И той го дава на Carl. 98 00:05:06,717 --> 00:05:07,550 Имате ли представа? 99 00:05:07,550 --> 00:05:08,980 Какво мислите Carl прави? 100 00:05:08,980 --> 00:05:10,926 >> Публика: Carl го дава на Винс. 101 00:05:10,926 --> 00:05:13,550 >> СТИВЪН тюрбан: Carl го дава на Винс. 102 00:05:13,550 --> 00:05:14,165 Винс. 103 00:05:14,165 --> 00:05:15,999 >> Публика: И Винс това показва до [недоловим]. 104 00:05:15,999 --> 00:05:16,998 СТИВЪН тюрбан: Точно така. 105 00:05:16,998 --> 00:05:18,080 Така че това е точно това. 106 00:05:18,080 --> 00:05:21,040 Така че Vince отнема чашата, дори не знам какво е то, 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 И ние ще нужда три тихи доброволци, 110 00:05:31,380 --> 00:05:35,260 като вас, момчета не вървят да бъде в състояние да говори. 111 00:05:35,260 --> 00:05:36,470 Така че бих могъл да вземете три? 112 00:05:36,470 --> 00:05:37,040 OK. 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 >> СТИВЪН тюрбан: Винс, OK. 117 00:05:44,960 --> 00:05:46,190 Красива, но глупава. 118 00:05:46,190 --> 00:05:47,510 Great. 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 >> Публика: Можех да бъда Carl. 123 00:05:56,944 --> 00:05:57,860 СТИВЪН тюрбан: Sweet. 124 00:05:57,860 --> 00:05:59,102 Имаме Carl. 125 00:05:59,102 --> 00:05:59,866 >> Публика: Mitt. 126 00:05:59,866 --> 00:06:01,050 >> СТИВЪН тюрбан: Mitt, 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 Така че аз ще попитам Vince да стои в предната част, просто се усмихва, 131 00:06:15,440 --> 00:06:18,230 просто се усмихва толкова ярък, колкото е възможно. 132 00:06:18,230 --> 00:06:21,520 И ние ще попитам Carl, Добре, защо не, като, 133 00:06:21,520 --> 00:06:24,050 стои зад нея? 134 00:06:24,050 --> 00:06:26,660 И Mitt, защо не Просто отидете на разстояние в гърба, 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 И аз правя [недоловим] I казват, здрасти, аз бих искал чаша. 139 00:06:40,490 --> 00:06:43,214 140 00:06:43,214 --> 00:06:44,580 Perfect. 141 00:06:44,580 --> 00:06:45,580 Така че Винс няма представа. 142 00:06:45,580 --> 00:06:46,915 Е, какво значи Vince правя след това? 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 >> Vince крещи Carl, чаша! 146 00:06:55,390 --> 00:06:58,840 147 00:06:58,840 --> 00:07:00,790 Какво означава Carl направя? 148 00:07:00,790 --> 00:07:03,910 Carl развиква Mitt. 149 00:07:03,910 --> 00:07:06,710 Mitt грабва чаша. 150 00:07:06,710 --> 00:07:08,220 Mitt го дава на Carl. 151 00:07:08,220 --> 00:07:10,870 Carl той се връща към Винс. 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 И тогава имаме Mitt, модела, който актуализира каквото данни имаме. 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 Гимараеш: Добре, момчета. 163 00:07:51,600 --> 00:07:56,790 Сега нека да поговорим малко повече за код и за Ruby върху себе Rails, 164 00:07:56,790 --> 00:08:00,750 и за това как тя се отнася до цялата история MVC. 165 00:08:00,750 --> 00:08:03,190 По принцип, Руби на релси е рамка. 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 всички те са с помощта на Руби на Релси, като основна своя рамка 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 И всичко това е Руби на релси за изпълнение модела, гледката, и контролера 173 00:08:24,470 --> 00:08:26,890 на всички тези сайтове и много други. 174 00:08:26,890 --> 00:08:27,830 OK? 175 00:08:27,830 --> 00:08:32,090 >> Така че, както казах, Ruby по 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 OK. 191 00:09:17,300 --> 00:09:21,110 Така че това е една и съща идея в рамка за уеб приложения 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 OK. 199 00:09:41,180 --> 00:09:43,555 >> Така че в този случай, ние ще да се говори за Руби на релси. 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 Framework или Laravel за PHP. 203 00:09:50,990 --> 00:09:52,390 Има много различни такива. 204 00:09:52,390 --> 00:09:56,830 Руби на релси е доста приятен нов. 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 са също така използването на Руби на релси. 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 сега, така Ruby ще бъде на еквивалент на вашата PHP в този смисъл. 211 00:10:17,560 --> 00:10:18,380 Това не е Ruby. 212 00:10:18,380 --> 00:10:19,830 Това е C. OK? 213 00:10:19,830 --> 00:10:22,660 Но това е като DJBHash функция, която I 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 И така, това е, за да е истина. 222 00:10:45,970 --> 00:10:48,080 И след това, ако искате да проверява, така че проверете функция 223 00:10:48,080 --> 00:10:51,560 би било, ако речник "Foo" е равна равнява вярно, върнете вярно. 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 OK? 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 OK. 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 Вместо ФОРМАТ, ние казваме "Поставя", която е "сложи низ." 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 като отпечата куп "дребни неща" и куп "Bigs" в линия, докато, 260 00:12:30,450 --> 00:12:32,060 това е нещо като в C, нали? 261 00:12:32,060 --> 00:12:35,090 Не е нужно на PARAMS, но това е почти същото. 262 00:12:35,090 --> 00:12:37,300 Вдлъбнатината тук брои, така х е равен на 1. 263 00:12:37,300 --> 00:12:41,250 И тогава Докато х е по-малък от 50-- това е Ако, това е друго. 264 00:12:41,250 --> 00:12:42,810 Това е почти като това, което видях. 265 00:12:42,810 --> 00:12:47,150 >> И тогава х + = 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 Можете да използвате този таг нотация тук просто да отпечатате 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 Така че, защо би аз трябва да направи цял Ако блок? 276 00:13:24,129 --> 00:13:24,670 Не знам. 277 00:13:24,670 --> 00:13:28,880 Мога само да отпечатате тази само ако х е равно на по-голямо от 3. 278 00:13:28,880 --> 00:13:32,740 Така че това е една линия начин за постигане на това в Ruby. 279 00:13:32,740 --> 00:13:35,570 >> Списъкът в Ruby е нещо много гъвкав. 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 Cool. 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 Така че ние имаме един таг тяло като в HTML. 297 00:14:25,860 --> 00:14:28,270 И ако искаме да се провери че потребителят е, например, 298 00:14:28,270 --> 00:14:35,730 влезете в профила си, ние можем само да кажа, като се започне от Ruby, ако user.logged_in ?, край на Ruby. 299 00:14:35,730 --> 00:14:39,240 Печат цялото това нещо, което има някои Ruby в това, което е просто 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 OK? 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 OK. 311 00:15:08,960 --> 00:15:12,250 >> Има много онлайн ресурси да tryruby.org, Code Academy, 312 00:15:12,250 --> 00:15:18,740 ruby-lang.org, където можете да го пробвате изложени на вашия браузър, преди да можете действително 313 00:15:18,740 --> 00:15:22,310 кажа, о, OK, аз отивам да се използва Ruby за последната ми проект. 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 и код се вгражда в то към тази идея за Model View 320 00:15:36,851 --> 00:15:37,350 Controller? 321 00:15:37,350 --> 00:15:37,610 >> GABRIEL Гимараеш: Да. 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 в рамките на модела Виж Controller рамка. 326 00:15:49,230 --> 00:15:51,710 >> Така че идеята на модела View Controller рамка 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 И Руби на релси е изграден около тази философия на код. 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 Така че Model View Controller, разделителните неща 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 по релси Grails. 347 00:16:39,310 --> 00:16:40,230 >> GABRIEL Гимараеш: OK. 348 00:16:40,230 --> 00:16:42,252 Въпросът е, Ruby на релси срещу Ruby-- 349 00:16:42,252 --> 00:16:42,960 Публика: Grails. 350 00:16:42,960 --> 00:16:43,490 Ruby? 351 00:16:43,490 --> 00:16:44,490 >> GABRIEL Гимараеш: Да. 352 00:16:44,490 --> 00:16:45,955 Така Ruby е езикът. 353 00:16:45,955 --> 00:16:46,745 >> Публика: No. 354 00:16:46,745 --> 00:16:50,360 Питам ви за сравнение език и рамка, Ruby по релси, 355 00:16:50,360 --> 00:16:52,975 с друг популярен език framework-- Grails-- с Ruby 356 00:16:52,975 --> 00:16:53,310 по релси. 357 00:16:53,310 --> 00:16:53,720 >> GABRIEL Гимараеш: OK. 358 00:16:53,720 --> 00:16:54,480 Извинете. 359 00:16:54,480 --> 00:16:57,390 Въпросът е, сравни Ruby и Ruby на релси 360 00:16:57,390 --> 00:16:59,750 в друга рамка и another-- 361 00:16:59,750 --> 00:17:01,022 >> Публика: Ruby. 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 Гимараеш: Подобно, това, което разбирам е that-- 365 00:17:05,359 --> 00:17:07,080 >> Публика: Има още рамкови наречени Grails. 366 00:17:07,080 --> 00:17:07,700 >> GABRIEL Гимараеш: Oh, 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 на релси. 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 Гимараеш: Виждам. 373 00:17:15,450 --> 00:17:17,555 >> Публика: Аз просто съм любопитен за някои хора, които познавам like-- 374 00:17:17,555 --> 00:17:20,240 >> GABRIEL Гимараеш: Не, никога не чувал, че един, за съжаление. 375 00:17:20,240 --> 00:17:20,700 Grails. 376 00:17:20,700 --> 00:17:21,410 >> Публика: А някои хора Очевидно като Руби на релси. 377 00:17:21,410 --> 00:17:22,640 >> GABRIEL Гимараеш: Нямам употребяван Руби на релси много. 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 на релси. 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 Подобно, някои от нещата, които Релси прави за вас, например, е, че 384 00:17:38,180 --> 00:17:43,650 имате много CSS файлове и много джава файлове. 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 това е minified без никакво пространства, така че да заема 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 New, моята кандидатура, 397 00:18:28,460 --> 00:18:31,710 започваш да видите всички от тях folders-- ап, бен, довереник, db, неограничено, 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 Аз просто искам да се създаде уебсайт с "Hello, World" 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 >> Най-важната от тях, I бих казал, е папката с приложения, 412 00:19:05,820 --> 00:19:07,147 когато приложението ти всъщност живее. 413 00:19:07,147 --> 00:19:09,730 Така на довереник, ти започваш да се Трябва да действителните параметри някои неща, 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 И всичко това е в активите, че казах и преди, получава minified. 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 Cool. 430 00:19:49,770 --> 00:19:54,205 >> Сега Зак ще влязат, а той е ще направим пример за Twitter50. 431 00:19:54,205 --> 00:19:54,970 >> Публика: Woo-Hoo! 432 00:19:54,970 --> 00:19:56,726 >> Зак CHAUVIN: Awesome. 433 00:19:56,726 --> 00:20:00,180 Така че имах възможност да работя с Руби на релси това лято. 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 Така че това е пример за един много прост Руби на релси application-- нещо 439 00:20:16,350 --> 00:20:19,690 като това е нещо, че Ruby наистина превъзхожда 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, Собствена Twitter Харвард. 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 Зак CHAUVIN: Oh, 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 Great. 456 00:20:58,490 --> 00:20:58,990 OK. 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 Можем също така да изтриете туитове от кликнете върху малката бутона Delete. 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 Както, когато си мислиш за него, Twitter наистина не прави чак толкова много. 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 Но когато наистина се свежда до това, това е доста проста Руби на релси ап. 474 00:21:52,960 --> 00:21:57,560 И нещо като това, с добро разбиране на Руби на релси, 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 >> С Руби на релси, има нищо от това. 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 Cool. 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 >> Зак CHAUVIN: отлично. 494 00:22:48,480 --> 00:22:48,990 Cool. 495 00:22:48,990 --> 00:22:49,490 OK. 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 И сега ние ще се отнасят че обратно на Руби на релси. 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 >> А наистина страхотно част за релси е, че 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 Rails създава тази връзка. 522 00:24:12,990 --> 00:24:17,450 Anytime, мога просто да кажа, 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 >> Можете да видите малко по- на пример за Ruby тук. 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 И аз искам да се уверите, че това чуруликане, точно като нормална Twitter, 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 и 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 >> И точно тук, все пак, ние включат някои Ruby, като казва, 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 Cool. 549 00:25:38,980 --> 00:25:42,730 >> Друг пример за това е view-- тази, в която той е избрал всички туитове. 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 ако искат да се създаде Новият Tweet на тази страница. 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 Има ли някакви въпроси относно някое от MVC части на Rails? 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 Awesome. 584 00:27:30,106 --> 00:27:31,200 Ние ще продължаваме. 585 00:27:31,200 --> 00:27:32,546 >> Така че инсталирането Rails. 586 00:27:32,546 --> 00:27:35,170 Инсталиране на Rails може да е, като, един от най-плашещи части 587 00:27:35,170 --> 00:27:37,830 на целия релси процес, за съжаление. 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 Зак CHAUVIN: MM-HM. 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 Мм-HM. 607 00:28:27,055 --> 00:28:29,530 >> Аудитория: A въпроси на тази тема до това, което аз попитах преди. 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 защо ние ще бъдем на релси срещу Zend или някои от другите рамки 612 00:28:43,653 --> 00:28:44,236 и езици. 613 00:28:44,236 --> 00:28:47,870 >> Зак CHAUVIN: аз просто ще казват ми 0.02 $ за това. 614 00:28:47,870 --> 00:28:49,090 Обичам Руби на релси. 615 00:28:49,090 --> 00:28:52,120 Аз съм имал възможност да работя в двете PHP и Ruby по релси. 616 00:28:52,120 --> 00:28:55,291 Аз много предпочитат Ruby на Релси заради 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 >> Точно сега Руби на релси е наистина горещо. 625 00:29:13,840 --> 00:29:16,160 Има тон на подкрепа зад него. 626 00:29:16,160 --> 00:29:19,180 Вие публикувате нещо на Stack Overflow за проблем сте 627 00:29:19,180 --> 00:29:22,350 като в Ruby по релси, и това е отговор. 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 Така че това е защо бих изберете Руби на релси. 632 00:29:34,225 --> 00:29:35,225 GABRIEL Гимараеш: Да. 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 Така че Model View Controller, факта, че нашата контролер 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 >> Така че това е една от основните причини на предпочитанията ми над Ruby. 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 OK? 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 >> Зак 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 И това е така, защото Руби на релси е т 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 Cool. 678 00:31:37,437 --> 00:31:38,270 Всякакви други въпроси? 679 00:31:38,270 --> 00:31:39,623 >> СТИВЪН тюрбан: Woo-Hoo. 680 00:31:39,623 --> 00:31:40,976 Не мисля, че [недоловим]. 681 00:31:40,976 --> 00:31:41,966 >> GABRIEL Гимараеш: OK. 682 00:31:41,966 --> 00:31:42,840 Благодаря много, момчета. 683 00:31:42,840 --> 00:31:43,839 >> СТИВЪН тюрбан: Buh-чао. 684 00:31:43,839 --> 00:31:44,850 Зак CHAUVIN: Buh-чао. 685 00:31:44,850 --> 00:31:45,849 >> СТИВЪН тюрбан: Woo-Hoo. 686 00:31:45,849 --> 00:31:48,150 [Аплодисменти] 687 00:31:48,150 --> 00:31:49,700 >> Yay. 688 00:31:49,700 --> 00:31:50,955