1 00:00:00,000 --> 00:00:05,159 2 00:00:05,159 --> 00:00:09,240 >> DAN Armendáriz: Dobrý den, vítejte na CS50 seminář o přizpůsobení Cloud 9, 3 00:00:09,240 --> 00:00:11,724 a CS50 IDE. 4 00:00:11,724 --> 00:00:13,640 Takže dnes budeme Jen trochu pohovořit 5 00:00:13,640 --> 00:00:16,090 o některých technické informace, které 6 00:00:16,090 --> 00:00:19,380 jde za architektury o Cloud 9, a jak 7 00:00:19,380 --> 00:00:25,560 jsme realizovali některé z modulů plug-in jako součást Cloud 9 poskytovat CS50 IDE. 8 00:00:25,560 --> 00:00:28,820 Tak ať to jen skočit přímo v a začít mluvit o zásuvných modulech. 9 00:00:28,820 --> 00:00:32,659 >> Takže plug-iny jsou opravdu u Jádro Cloud 9 zkušenosti. 10 00:00:32,659 --> 00:00:37,590 Cloud 9 je základní technologie který poskytuje nám IDE, 11 00:00:37,590 --> 00:00:42,160 a také okno terminálu at the dno, spolu s workspace-- 12 00:00:42,160 --> 00:00:46,430 Ubuntu workspace-- že jsme použít ke kompilaci všech našich projektů 13 00:00:46,430 --> 00:00:49,190 a plnit své problémové sady, dokončit Náš problém sety. 14 00:00:49,190 --> 00:00:51,820 Ale v srdci všechny z toho, všechny technologie 15 00:00:51,820 --> 00:00:54,590 je opravdu jen banda plug-inů. 16 00:00:54,590 --> 00:00:58,740 Vše je plug-in , které mohou být upraveny, 17 00:00:58,740 --> 00:01:00,710 prodloužena, můžete vytvořit Vaše vlastní moduly plug-in, 18 00:01:00,710 --> 00:01:03,060 můžete odstranit další plug-inů, aby skutečně změnit 19 00:01:03,060 --> 00:01:07,540 poměrně dost funkčnosti stávajícího Cloud 9 IDE. 20 00:01:07,540 --> 00:01:12,040 >> Takže tohle je existující Cloud 9 prostředí. 21 00:01:12,040 --> 00:01:14,750 To je opravdu jen default Cloud 9 prostředí. 22 00:01:14,750 --> 00:01:18,450 A podívejte se na to, jak to vlastně je odlišný od CS50 IDE. 23 00:01:18,450 --> 00:01:20,340 Tak tohle je CS50 IDE. 24 00:01:20,340 --> 00:01:25,060 Všimněte si, že tam jsou některé vizuální změny mezi pravidelné Cloud 9 25 00:01:25,060 --> 00:01:28,000 životní prostředí a CS50 IDE. 26 00:01:28,000 --> 00:01:30,010 Konkrétně, budete Všimněte si, pár změn. 27 00:01:30,010 --> 00:01:34,201 Za prvé, je tam méně položky začít. 28 00:01:34,201 --> 00:01:36,200 Tam je vlastně způsob, že můžete změnit. 29 00:01:36,200 --> 00:01:37,270 Říká se tomu Jednoduchý režim. 30 00:01:37,270 --> 00:01:40,910 >> Ve výchozím nastavení, Jednoduchý režim je povolen, a který zjednodušuje některé z položek menu. 31 00:01:40,910 --> 00:01:43,032 Odstraňuje některé z pokročilejší ty, 32 00:01:43,032 --> 00:01:45,240 protože upřímně řečeno, spousta Studenti, kteří přicházejí 33 00:01:45,240 --> 00:01:48,550 a nemusí vědět o některých z pokročilejších funkcí 34 00:01:48,550 --> 00:01:50,530 nejsou zahlceni s partou možností. 35 00:01:50,530 --> 00:01:55,610 Ale my poskytují možnost přijmout off těch takzvaných koleček 36 00:01:55,610 --> 00:01:57,360 a odstranit, že lešení tak, aby lidé 37 00:01:57,360 --> 00:02:00,832 se může stát více zvyklí na pokročilé funkce IDE. 38 00:02:00,832 --> 00:02:02,540 Ihned k právo na to, že tam je 39 00:02:02,540 --> 00:02:05,435 také tlačítko ladění, který ve standardním Cloud 40 00:02:05,435 --> 00:02:08,199 9 prostředí je jednoduše nazývá běh. 41 00:02:08,199 --> 00:02:11,990 Ale ve výchozím nastavení, jsme nakonfigurovány tlačítko ladění v IDE CS50 42 00:02:11,990 --> 00:02:15,500 vyvolejte debugger, automaticky kompilovat zdrojový kód, 43 00:02:15,500 --> 00:02:17,940 připojit ladicí k základnímu GDB-- 44 00:02:17,940 --> 00:02:21,430 a od té doby to běh provádět debugging-- a některé jiné kroky 45 00:02:21,430 --> 00:02:22,580 také. 46 00:02:22,580 --> 00:02:25,370 Také okno terminálu u very-- nebo spíše terminál 47 00:02:25,370 --> 00:02:29,010 Karta v sekci panelu na Okno na samém spodní části obrazovky, 48 00:02:29,010 --> 00:02:31,004 byla přejmenována prostě být terminál. 49 00:02:31,004 --> 00:02:32,837 Zatímco v normě Cloud 9 prostředí, 50 00:02:32,837 --> 00:02:35,830 ve skutečnosti ukazuje běžící aplikace. 51 00:02:35,830 --> 00:02:39,140 Tímto způsobem, to zjednodušuje, opět, GUI, jen trochu. 52 00:02:39,140 --> 00:02:42,310 >> Přidali jsme také některá tlačítka na pravé horní části IDE 53 00:02:42,310 --> 00:02:45,740 ukázat některé základní informace o základní instance. 54 00:02:45,740 --> 00:02:49,700 A také jsme odstranili jednu z možností, o položkách 55 00:02:49,700 --> 00:02:51,730 od krajní pravice. 56 00:02:51,730 --> 00:02:55,620 Takže všechno toto je implementována není změnou nutně Cloud 9 57 00:02:55,620 --> 00:02:58,550 zdrojový kód, ale místo toho prostřednictvím páru 58 00:02:58,550 --> 00:03:03,460 plug-inů, které jsme realizovali v průběhu minulého roku, nebo tak nějak. 59 00:03:03,460 --> 00:03:08,840 A Cloud 9 hostil a má běží v CS50 prostoru. 60 00:03:08,840 --> 00:03:13,680 Nebo spíš v pracovní prostory, které jsou označovány jako CS50 IDE. 61 00:03:13,680 --> 00:03:17,140 >> Takže opravdu to je hlavní rozdíl mezi Cloud 9 a CS50 62 00:03:17,140 --> 00:03:18,130 pracovní plochy. 63 00:03:18,130 --> 00:03:21,780 K dispozici je také, v podkladovém instance, primární změna 64 00:03:21,780 --> 00:03:25,350 že jsme nainstalovat některé Předem nakonfigurované položky, jako jsou GDB, 65 00:03:25,350 --> 00:03:29,530 a některé další základní věci, které jsme vytvořili, stejně jako aktualizace 50, 66 00:03:29,530 --> 00:03:33,310 a pár dalších kroků, které činí celý zážitek trochu víc 67 00:03:33,310 --> 00:03:34,550 vyrovnané. 68 00:03:34,550 --> 00:03:38,520 Ale celkově, to je jen úpravou stávajícího systému 69 00:03:38,520 --> 00:03:40,979 že Cloud 9 vytvořil pro nás. 70 00:03:40,979 --> 00:03:42,770 Co budeme vykazují o něco později 71 00:03:42,770 --> 00:03:45,920 je to, jak se vlastně vytvořit poněkud základní plug-in, který 72 00:03:45,920 --> 00:03:49,461 nám umožňuje vložit něco do systém menu, a otevřít dialog. 73 00:03:49,461 --> 00:03:51,210 A pokud budeme mít dost čas, budeme vlastně 74 00:03:51,210 --> 00:03:54,210 vidět, jak můžeme naplnit, že dialog s informacemi 75 00:03:54,210 --> 00:03:56,089 z podkladové instance. 76 00:03:56,089 --> 00:03:58,880 Abychom se dostat k tomu bod, pojďme nejprve hovořit trochu 77 00:03:58,880 --> 00:04:01,740 o architektuře Cloud 9. 78 00:04:01,740 --> 00:04:05,290 >> Takže způsob, jakým jsme zvyklí k interakci s Cloud 9 79 00:04:05,290 --> 00:04:06,610 je zcela prostřednictvím klienta. 80 00:04:06,610 --> 00:04:10,610 Máme otevřít webový prohlížeč, napíšeme v CS50.io. 81 00:04:10,610 --> 00:04:14,431 Nakonec jsme, po ověření, jsou prezentovány s IDE. 82 00:04:14,431 --> 00:04:16,180 Ale uvědomit si, že je tu pár kroků 83 00:04:16,180 --> 00:04:18,180 které nás skutečně dostat do tohoto bodu. 84 00:04:18,180 --> 00:04:22,390 Úplně první věc je, že můj klient, webový prohlížeč, 85 00:04:22,390 --> 00:04:27,440 na vyžádání a po ověření, načte GUI a moduly plug-in 86 00:04:27,440 --> 00:04:30,170 z nějakého CDN, z některých Dodávka obsahové síti. 87 00:04:30,170 --> 00:04:32,700 To může být na rovinu kdekoliv. 88 00:04:32,700 --> 00:04:35,390 >> A to je ve skutečnosti samostatná z podkladové instance. 89 00:04:35,390 --> 00:04:38,890 Je důležité si uvědomit, že toto je vlastně jen hromada statických souborů. 90 00:04:38,890 --> 00:04:42,600 Je to banda JavaScriptu který je stažen z CDN 91 00:04:42,600 --> 00:04:45,200 na mé webové prohlížeče, a všechny GUI, které vás 92 00:04:45,200 --> 00:04:48,460 viz here-- je to opravdu key-- všechny GUI, které vidíte zde 93 00:04:48,460 --> 00:04:50,480 je spuštěn na straně klienta. 94 00:04:50,480 --> 00:04:53,820 Vše, co vidíte, v Cloud 9 prostoru 95 00:04:53,820 --> 00:04:56,010 je vlastně běží v prohlížeči. 96 00:04:56,010 --> 00:04:59,950 A cokoliv, co posíláte spolu se základním instanci 97 00:04:59,950 --> 00:05:04,000 sděleno s instancí podél této druhé samostatné kanálu, 98 00:05:04,000 --> 00:05:07,240 a je poté uložena na že instance přístavní dělník. 99 00:05:07,240 --> 00:05:09,660 >> Takže důvod, proč říkám toto je instance přístavní dělník 100 00:05:09,660 --> 00:05:12,650 je to, že základní technologie Není pomocí virtuálních strojů, 101 00:05:12,650 --> 00:05:16,040 ale místo toho je za použití technologie nazývaná přístavní dělník, 102 00:05:16,040 --> 00:05:20,200 které v podstatě allows-- nejbližší analogie je virtuální stroj. 103 00:05:20,200 --> 00:05:24,800 Ale to je nepatrně odlišná v tom, že jsou 104 00:05:24,800 --> 00:05:28,900 spoustu příležitostí ke spuštění Kombinace různých přístavní dělník 105 00:05:28,900 --> 00:05:30,760 instance na jednom stroji. 106 00:05:30,760 --> 00:05:34,660 A mohou být roztočit ve velmi rychlém sledu. 107 00:05:34,660 --> 00:05:38,920 To není úplně více přísné diferenciace 108 00:05:38,920 --> 00:05:42,840 mezi různými instancemi Docker jak tam jsou na virtuálních strojích, 109 00:05:42,840 --> 00:05:45,730 ale stále je tu spousta diferenciace a separace 110 00:05:45,730 --> 00:05:48,330 mezi těmito různými instancemi. 111 00:05:48,330 --> 00:05:48,830 DOBŘE. 112 00:05:48,830 --> 00:05:50,980 Takže tyto dva kroky, které zde jsou důležité si uvědomit, 113 00:05:50,980 --> 00:05:57,370 je, že když jsme se jít do CS50.io, my jsme stahování GUI a moduly plug-in, 114 00:05:57,370 --> 00:06:01,640 které jsou napsány v JavaScriptu, na do prohlížeče nebo do prohlížeče. 115 00:06:01,640 --> 00:06:05,980 A to je možná pár megabajtů hodnotě informací. 116 00:06:05,980 --> 00:06:09,460 V tomto bodě, jakmile má GUI naložený a plug-iny začaly, 117 00:06:09,460 --> 00:06:12,530 Pak se začne komunikovat s instance přístavní dělník, který není 118 00:06:12,530 --> 00:06:15,210 nezbytně být stejný server. 119 00:06:15,210 --> 00:06:16,940 >> Nyní existuje jedna výjimka z tohoto. 120 00:06:16,940 --> 00:06:22,130 Můžeme skutečně mít oba dodávka mechanismus pro GUI samotnou 121 00:06:22,130 --> 00:06:25,740 a instance v přístavní dělník všechny stejném serveru, který 122 00:06:25,740 --> 00:06:29,660 je ve skutečnosti něco, co děláme pro offline verzi Cloud 9. 123 00:06:29,660 --> 00:06:33,470 To není něco, co máme propagoval velmi letos na podzim, 124 00:06:33,470 --> 00:06:35,930 ale my také mít online verze, 125 00:06:35,930 --> 00:06:40,010 vám umožní stáhnout balený verze všechny tyto věci 126 00:06:40,010 --> 00:06:43,670 a umožňují spustit Cloud 9 v offline prostředí. 127 00:06:43,670 --> 00:06:48,325 >> Stěhování to z cloudu a na místním počítači má určitý dopad. 128 00:06:48,325 --> 00:06:50,200 Především, vy ne již mají schopnost 129 00:06:50,200 --> 00:06:52,280 se podělit o své pracovní prostor s ostatními. 130 00:06:52,280 --> 00:06:58,630 Už můžete otevřít Cloud 9 od, a CS50 IDE, z jakéhokoliv počítače 131 00:06:58,630 --> 00:07:02,950 a vidět stejné soubory, které jste pracovali s dříve. 132 00:07:02,950 --> 00:07:06,310 Ale místo toho to funguje zcela na svém vlastním místním počítači 133 00:07:06,310 --> 00:07:09,270 bez nutnosti připojení k internetu. 134 00:07:09,270 --> 00:07:13,330 Ale přesto i v tomto modelu, a to i když máme jeden virtuální stroj 135 00:07:13,330 --> 00:07:15,200 že je v podstatě spuštění těchto věcí. 136 00:07:15,200 --> 00:07:19,480 >> Máme samostatný server, který je přináší v podstatě Cloud 9 137 00:07:19,480 --> 00:07:23,640 obsah, a pak jsme mají instance Docker 138 00:07:23,640 --> 00:07:32,280 , který je zodpovědný za komunikaci s tímto IDE pro back-end. 139 00:07:32,280 --> 00:07:32,780 DOBŘE. 140 00:07:32,780 --> 00:07:38,700 Takže celá GUI je zapsán úplně v JavaScriptu 141 00:07:38,700 --> 00:07:42,800 pomocí Node.js a Cloud 9 SDK, které se dostaneme do chvilku. 142 00:07:42,800 --> 00:07:46,650 A všechny plug-inů jsou spouštěny na straně klienta. 143 00:07:46,650 --> 00:07:51,780 Takže pojďme zaměřit se pak trochu za předpokladu 144 00:07:51,780 --> 00:07:55,670 že tento první krok má ve skutečnosti úspěšně dokončena, 145 00:07:55,670 --> 00:07:58,990 a dívat se pouze na této instanci přístavní dělník. 146 00:07:58,990 --> 00:08:01,220 >> Takže v tomto případě to je standardní způsob, 147 00:08:01,220 --> 00:08:04,870 přemýšlení o tom Cloud 9 plug-in Vývoj je, že jdete 148 00:08:04,870 --> 00:08:07,940 je třeba psaní kódu, který bude být spuštěn v prohlížeči uživatele, 149 00:08:07,940 --> 00:08:11,610 a budete mít možnost použitím některých API pro komunikaci 150 00:08:11,610 --> 00:08:16,470 s podkladové instance přístavní dělník, spustit nějaký kód tam, a dělat cokoliv, 151 00:08:16,470 --> 00:08:18,860 že budete chtít dělat. 152 00:08:18,860 --> 00:08:22,000 Takže to bude kontext, že budeme 153 00:08:22,000 --> 00:08:24,340 bude používat pro zbytek tohoto rozhovoru. 154 00:08:24,340 --> 00:08:26,400 A jen držet tento model na mysli. 155 00:08:26,400 --> 00:08:28,966 To bude velmi důležité v několika málo minut. 156 00:08:28,966 --> 00:08:30,840 Je tu pár odkazy Chci vám ukázat. 157 00:08:30,840 --> 00:08:34,150 Za prvé, Cloud 9 poskytla poměrně dost dokumentace 158 00:08:34,150 --> 00:08:38,740 to je docela dobré, že ukazuje, jak provádět základní modul plug-in vývoje. 159 00:08:38,740 --> 00:08:43,320 Takže pokud jdete na tuto adresu URL, cloud9-sdk.readme.io, 160 00:08:43,320 --> 00:08:45,261 uvidíte v dokumentaci tam. 161 00:08:45,261 --> 00:08:47,510 A mnoho těchto informací že jste asi vidět 162 00:08:47,510 --> 00:08:50,310 lze také nalézt zde, a další. 163 00:08:50,310 --> 00:08:55,880 Můžete si také najít open source verze Cloud 9 na této adrese URL, 164 00:08:55,880 --> 00:09:04,270 github.com/c9/core, které používají jako část offline verze IDE, 165 00:09:04,270 --> 00:09:07,540 takže budete moci mít stejný Cloud 9 zkušenosti, 166 00:09:07,540 --> 00:09:09,660 ale v offline způsobem. 167 00:09:09,660 --> 00:09:10,160 Dobře. 168 00:09:10,160 --> 00:09:15,560 Takže pojďme se podívat na Skutečná Cloud 9 pracovní prostor zde. 169 00:09:15,560 --> 00:09:17,880 A opět, chci zdůraznit se pár věcí. 170 00:09:17,880 --> 00:09:21,560 To je, přímo tady, normální CS50 IDE. 171 00:09:21,560 --> 00:09:26,830 A já jsem zakázány méně komfortní režim v nabídce Zobrazit 172 00:09:26,830 --> 00:09:28,807 takže můžu vidět všechny z menu. 173 00:09:28,807 --> 00:09:31,140 To, co chci vám ukázat pravdu Nyní je pár věcí. 174 00:09:31,140 --> 00:09:33,140 Za prvé, když půjdu do Předvolby a poté 175 00:09:33,140 --> 00:09:37,040 klikněte na plug-in manager, a zadejte CS50 tady, 176 00:09:37,040 --> 00:09:40,590 můžeme vidět, že tam jsou, ve skutečnosti, pár CS50 plug-inů, které 177 00:09:40,590 --> 00:09:46,280 byly instalovány a náš běh na povolit změny, které jsme 178 00:09:46,280 --> 00:09:48,670 Viděl na CS50 IDE. 179 00:09:48,670 --> 00:09:51,450 >> Právě teď je tu v podstatě dva plug-iny, které jsou spuštěny. 180 00:09:51,450 --> 00:09:54,980 Je tu jeden s názvem Simple, který je zjednodušený režim, který 181 00:09:54,980 --> 00:10:00,020 umožňuje snížit počet položek menu podél horní, 182 00:10:00,020 --> 00:10:03,070 a mají tento takzvaný méně pohodlné režim. 183 00:10:03,070 --> 00:10:07,280 A pak je tu také CS50 Stats, která je možná jen mírně nesprávně pojmenovaný. 184 00:10:07,280 --> 00:10:09,550 Vzhledem k tomu, to je to, co zobrazuje vám informace 185 00:10:09,550 --> 00:10:10,850 o základním pracovním prostoru. 186 00:10:10,850 --> 00:10:13,560 To vstřikuje tato tlačítka po pravém horním rohu. 187 00:10:13,560 --> 00:10:18,620 To také vstřikuje položku nabídky do položka okno, do menu Okno 188 00:10:18,620 --> 00:10:21,730 tady, CS50 IDE Info. 189 00:10:21,730 --> 00:10:27,380 A to je zodpovědný za spouštění Tento dialog, který jsme tady viděli, 190 00:10:27,380 --> 00:10:31,460 se všemi informacemi, že jsme zvyklí vídat v CS50 IDE 191 00:10:31,460 --> 00:10:32,870 pracovní prostor. 192 00:10:32,870 --> 00:10:33,370 DOBŘE. 193 00:10:33,370 --> 00:10:36,910 Takže je to vlastně jeden plug-in že jsme vyvinuli také. 194 00:10:36,910 --> 00:10:40,110 A je tu pár dalších, které i my jsme ani zveřejněny. 195 00:10:40,110 --> 00:10:45,880 Ale jeden z nich je celkové plug-in, který umožňuje GDB fungovat. 196 00:10:45,880 --> 00:10:50,190 Takže jeden z aspektů Cloud 9 je to, že mají za předpokladu již 197 00:10:50,190 --> 00:10:53,210 toto GUI realizovat debugger. 198 00:10:53,210 --> 00:10:57,360 A jeden z plug-inů, které jsme vytvořili v podstatě 199 00:10:57,360 --> 00:11:02,380 háky GDB s tímto GUI založené verze ladicího programu. 200 00:11:02,380 --> 00:11:07,680 A je zodpovědný za zprostředkování všechny z požadavků, které by uživatel mohl mít, 201 00:11:07,680 --> 00:11:10,310 mezi překračoval nebo vytvoření zarážky nebo cokoliv 202 00:11:10,310 --> 00:11:15,390 v tomto směru, že k převedení příkazů, že GDB lze pochopit, 203 00:11:15,390 --> 00:11:16,920 vydávání tyto příkazy GDB. 204 00:11:16,920 --> 00:11:19,260 A jakmile GDB vydá odpověď, pak 205 00:11:19,260 --> 00:11:23,250 interpretujeme, že i Aktualizace grafického uživatelského rozhraní podle potřeby. 206 00:11:23,250 --> 00:11:25,130 >> To je pravděpodobně jedním z složitější 207 00:11:25,130 --> 00:11:28,840 z plug-inů, takže místo toho, co jsme bude soustředit na dnes je ve skutečnosti 208 00:11:28,840 --> 00:11:34,590 statistiky plug-in, a promluvíme něco málo o jednoduché, stejně. 209 00:11:34,590 --> 00:11:39,100 Tak jsem se zmínil dříve, a já opravdu chci, aby se velmi, velmi jasné, že opět, 210 00:11:39,100 --> 00:11:41,600 To vše, že jsme vidění je zde v podstatě 211 00:11:41,600 --> 00:11:43,300 pracující na straně klienta. 212 00:11:43,300 --> 00:11:45,810 Děláme vidět okno terminálu níže, a který, samozřejmě, 213 00:11:45,810 --> 00:11:49,230 pokud budeme psát příkazy do že, které se pak bude vydán 214 00:11:49,230 --> 00:11:50,690 na podkladové instanci. 215 00:11:50,690 --> 00:11:55,280 Podobně, když jsme se otevřít nový soubor a typ nějaké věci do něj a uložit jej, 216 00:11:55,280 --> 00:11:58,240 tento soubor bude uložen na základní instance. 217 00:11:58,240 --> 00:12:02,310 >> Ale editor sám, to okno terminálu sám, 218 00:12:02,310 --> 00:12:05,700 vše je implementován v JavaScript a vše je plug-in 219 00:12:05,700 --> 00:12:09,800 že může spolupracovat s, a proto upravit. 220 00:12:09,800 --> 00:12:11,450 Je tu spousta roztažnosti sem. 221 00:12:11,450 --> 00:12:14,690 Doporučuji, že pohled v Cloud 9 je GitHub účet 222 00:12:14,690 --> 00:12:17,790 vidět obrovské množství plug-inů, které jsou k dispozici, 223 00:12:17,790 --> 00:12:23,070 a jak dobře napsáno hodně kódu je pro rozšiřitelnost. 224 00:12:23,070 --> 00:12:24,920 Takže je tu něco, že chci zmínit 225 00:12:24,920 --> 00:12:30,480 o tom také, který je že existuje spousta of-- je tu 226 00:12:30,480 --> 00:12:33,450 mnoho funkcí, které je za předpokladu, v nastavení 227 00:12:33,450 --> 00:12:37,970 okno, které jsme viděli jen zmiňoval se jen před pár minutami. 228 00:12:37,970 --> 00:12:43,690 >> Jedna z věcí, které můžeme dělat, co IDE vývojáři, nebo jako Cloud 9 vývojáři, 229 00:12:43,690 --> 00:12:47,410 je skutečně aplikovat některé preferenčních panely naše vlastní. 230 00:12:47,410 --> 00:12:50,660 Tak jednoduchý režim, nebo méně komfortní režim, 231 00:12:50,660 --> 00:12:54,780 a také informace o IDE, nebo statistiky plug-in, 232 00:12:54,780 --> 00:12:58,560 má každý nějakou preferenci panely, které nám umožňují upravit 233 00:12:58,560 --> 00:13:00,620 chování každého z nich. 234 00:13:00,620 --> 00:13:04,140 Všimněte si, že když půjdu do Předvolby a jít do uživatelských nastavení, 235 00:13:04,140 --> 00:13:07,100 tam je karta CS50, jeden které říká, že informace o IDE. 236 00:13:07,100 --> 00:13:09,810 A mohu změnit Informace obnovovací frekvence. 237 00:13:09,810 --> 00:13:12,250 >> Účinně, co se děje ve statistikách plug-in 238 00:13:12,250 --> 00:13:16,690 je to, že každých n-sekund, kde n-sekund je definován tuto preferenci 239 00:13:16,690 --> 00:13:22,250 panel, informace jsou načteny z podkladové například odesílání 240 00:13:22,250 --> 00:13:25,490 zpět na straně klienta, plug-in je pak 241 00:13:25,490 --> 00:13:28,650 výklad informací z podkladové instance 242 00:13:28,650 --> 00:13:31,470 a aktualizace GUI podle potřeby. 243 00:13:31,470 --> 00:13:34,710 Můžeme vidět, že právě teď je to nastaveno na 30 sekund, a to je výchozí. 244 00:13:34,710 --> 00:13:37,950 Ale já si rozhodně změnit jak rychle se to stane jen 245 00:13:37,950 --> 00:13:40,520 změnou této hodnoty. 246 00:13:40,520 --> 00:13:44,330 >> A teď jedna z zajímavých věcí je to, že tato preference panel, GUI, 247 00:13:44,330 --> 00:13:49,560 je opravdu jen verze GUI z mnoha základních nastavení 248 00:13:49,560 --> 00:13:52,220 které jsou uvedeny v JSON. 249 00:13:52,220 --> 00:13:56,336 Takže když jsem se jít, například v rámci CS50 IDE menu, nebo menu Cloud 9, 250 00:13:56,336 --> 00:13:58,210 podle toho, který Verze se díváte, 251 00:13:58,210 --> 00:14:00,460 a zajít do jedné z těchto settings-- v tomto případě, 252 00:14:00,460 --> 00:14:03,420 Projekt settings-- nastavení projektu v tomto případě 253 00:14:03,420 --> 00:14:07,740 se vztahuje na všechna nastavení Pro tento jeden pracovní prostor. 254 00:14:07,740 --> 00:14:11,620 Vzhledem k tomu, uživatelská nastavení se použijí na všechny pracovní prostory 255 00:14:11,620 --> 00:14:15,110 že byste mohli mít ve vašem účtu. 256 00:14:15,110 --> 00:14:18,520 >> Takže jen jako stranou tady, být extra jasný, 257 00:14:18,520 --> 00:14:22,570 tam je oddělení mezi dvou, protože i když ve výchozím nastavení my 258 00:14:22,570 --> 00:14:26,490 mají jednu pracovní plochu, což je CS50 IDE, pokud jste 259 00:14:26,490 --> 00:14:31,900 byli kliknout na vaše malá avatar tady a jít do palubní desce, 260 00:14:31,900 --> 00:14:35,820 zjistíte, že můžete skutečně vytvořit další pracovní prostory stejně. 261 00:14:35,820 --> 00:14:39,140 Můžete vidět, že tady musím IDE 50 pracovní prostor, a také 262 00:14:39,140 --> 00:14:41,930 Pro účely tohoto seminář, pracovní prostor 263 00:14:41,930 --> 00:14:45,084 volal pracovní prostor, který je tady. 264 00:14:45,084 --> 00:14:46,750 Tak jako tak, mám jiné preference. 265 00:14:46,750 --> 00:14:49,910 Každý z nich může mít samostatný projekt preference, 266 00:14:49,910 --> 00:14:54,091 ale uživatel preference sdílená mezi všechny mé pracovní prostory. 267 00:14:54,091 --> 00:14:55,840 Mimochodem, to je také velmi užitečné, pokud 268 00:14:55,840 --> 00:14:59,080 Chcete vytvořit pracovní plochu různé možnosti přizpůsobení. 269 00:14:59,080 --> 00:15:01,640 A to je velmi užitečné vytvořte nový pracovní prostor. 270 00:15:01,640 --> 00:15:04,230 A vybrat ten, který by mohl být Předem nakonfigurované nějakým jiným způsobem, 271 00:15:04,230 --> 00:15:07,000 snad pro PHP specificky, nebo Django specificky. 272 00:15:07,000 --> 00:15:08,960 Nebo dokonce jen zvyk. 273 00:15:08,960 --> 00:15:11,320 CS50 Pracovní plocha Šablona je ten, že jsme 274 00:15:11,320 --> 00:15:15,420 použití, které automaticky nainstaluje Aktualizace 50 a všechna nastavení 275 00:15:15,420 --> 00:15:20,531 že máme tam, včetně všech plug-inů, které máme pro CS50 IDE. 276 00:15:20,531 --> 00:15:21,030 DOBŘE. 277 00:15:21,030 --> 00:15:22,200 Ale vraťme se k tomu vrátím. 278 00:15:22,200 --> 00:15:25,640 Takže znovu, tam jsou projekty nastavení, a to jsou ty, 279 00:15:25,640 --> 00:15:27,140 že se díváme na zde. 280 00:15:27,140 --> 00:15:29,056 A všimněte si, že tam jsou banda nastavení, 281 00:15:29,056 --> 00:15:32,720 mnoho z nich odpovídá přednostně panely, ale ne všechny z nich. 282 00:15:32,720 --> 00:15:40,800 Ale můžeme vidět, že tady, v tohle-- oh Ne, já jsem dal, že v nastavení uživatele? 283 00:15:40,800 --> 00:15:43,280 Možná, že jsem ji v nastavení uživatele. 284 00:15:43,280 --> 00:15:45,480 A to je to tady. 285 00:15:45,480 --> 00:15:49,840 V uživatelském nastavení, můžeme vidět, že máme část CS50, 286 00:15:49,840 --> 00:15:53,762 a tato jsou zapisována na těchto Cloud 9 plug-inů 287 00:15:53,762 --> 00:15:54,720 že jsme implementována. 288 00:15:54,720 --> 00:15:57,400 Je tu jednoduchá, kdo odpovídají, že jednoduché plug-in, 289 00:15:57,400 --> 00:16:00,930 a ten, který statistiky odpovídá, že GUI 290 00:16:00,930 --> 00:16:02,440 verze preference panelu. 291 00:16:02,440 --> 00:16:05,740 Obnovovací frekvence, v tomto případ, je nastavena na 20 sekund. 292 00:16:05,740 --> 00:16:09,740 >> To je všechno, snad se Počátky nějaké informace 293 00:16:09,740 --> 00:16:14,420 že budeme skutečně vidět v malém bit více detailů, na okamžik. 294 00:16:14,420 --> 00:16:14,920 DOBŘE. 295 00:16:14,920 --> 00:16:17,520 Takže řekněme, že chceme, aby skutečně dostat se do toho. 296 00:16:17,520 --> 00:16:20,600 Chápeme, že všechny věci, která se děje na straně klienta 297 00:16:20,600 --> 00:16:24,560 se provádí skutečně na prohlížeči, který Znamená to, že všechny plug-inů, které píši 298 00:16:24,560 --> 00:16:27,990 se bude napsán s prohlížečem v mysli. 299 00:16:27,990 --> 00:16:30,830 A když jsem vlastně chtějí dělat cokoliv na pracovní ploše, 300 00:16:30,830 --> 00:16:33,360 Budu asi muset zahájit nějaký druh komunikace 301 00:16:33,360 --> 00:16:35,970 mezi prohlížečem a pracovní prostor, abyste se ujistili 302 00:16:35,970 --> 00:16:38,212 že je ve skutečnosti dosaženo. 303 00:16:38,212 --> 00:16:40,170 Ale řekněme, že teď Chci se dostat až na to 304 00:16:40,170 --> 00:16:43,440 a skutečně vytvořit svůj první plug-in. 305 00:16:43,440 --> 00:16:48,970 No, tak, že byste byli schopni k tomu, že je vlastně docela snadné. 306 00:16:48,970 --> 00:16:51,370 Je to uvedeno v Cloud 9 SDK. 307 00:16:51,370 --> 00:16:55,520 Ale je to, aby se vaše stávající název pracovního prostoru, který 308 00:16:55,520 --> 00:16:59,810 je URL, že jste na vrcholu Váš bar, a přidejte následující k tomu. 309 00:16:59,810 --> 00:17:00,310 ? 310 00:17:00,310 --> 00:17:00,893 SDK = 1 & Debub = 2. 311 00:17:00,893 --> 00:17:04,369 312 00:17:04,369 --> 00:17:08,260 Tak co to bude k tomu, aby je že SDK = 1 se ve skutečnosti nastaven SDK 313 00:17:08,260 --> 00:17:11,430 režim true, která umožní několik dalších věcí. 314 00:17:11,430 --> 00:17:15,770 A debug = 2 umožní chybové zprávy být trochu upovídaný. 315 00:17:15,770 --> 00:17:20,170 >> A tak pokud jste vyvolat JavaScript konzola na kartě Chrome pro vývojáře, 316 00:17:20,170 --> 00:17:22,829 budete skutečně moci vidět mnohem více informací 317 00:17:22,829 --> 00:17:24,349 než byste jinak. 318 00:17:24,349 --> 00:17:28,310 Tak jsem Doporučuji soustružení obě tyto ve stejnou dobu, protože to opravdu 319 00:17:28,310 --> 00:17:31,170 Je vhodné mít všechno dodatečné informace. 320 00:17:31,170 --> 00:17:35,330 Je důležité si uvědomit, nicméně, že zapnutí ladění na hodnotu 2 321 00:17:35,330 --> 00:17:38,120 znamená, že je to velmi upovídaný, a to vlastně 322 00:17:38,120 --> 00:17:42,590 bude poněkud znatelně zpomalí tvůj IDE, zejména při nakládání 323 00:17:42,590 --> 00:17:45,657 nebo když děláte těžké úkoly. 324 00:17:45,657 --> 00:17:46,740 Takže jen mějte na paměti, že. 325 00:17:46,740 --> 00:17:51,500 Je to užitečné pro rozvoj, ale vy nemusí chtít mít po celou dobu. 326 00:17:51,500 --> 00:17:53,080 >> Takže pojďme vlastně udělat. 327 00:17:53,080 --> 00:17:59,374 Ale v tomto případě jsem skutečně Již nastavit pracovní prostor s tím. 328 00:17:59,374 --> 00:18:00,540 Tak uvidíme, SDK = 1 & debug = 2. 329 00:18:00,540 --> 00:18:03,140 330 00:18:03,140 --> 00:18:07,770 S pár plug-inů doufejme, že již nainstalována. 331 00:18:07,770 --> 00:18:08,340 Dobře. 332 00:18:08,340 --> 00:18:15,050 Takže teď, že jsem se obrátil na SDK ladění Režim, Všimněte si, že jsme v režimu ladění, 333 00:18:15,050 --> 00:18:20,430 takže se můžeme podívat na Vývojové nástroje k vidění nějaké chyby, které budu dělat mimo obrazovku. 334 00:18:20,430 --> 00:18:23,110 Můžeme vidět, že je tu banda chyb zde. 335 00:18:23,110 --> 00:18:28,090 Teď je to vlastně docela běžné, Cloud 9 mít pár chyb, 336 00:18:28,090 --> 00:18:30,680 a já bych si starosti o nich, až vás 337 00:18:30,680 --> 00:18:32,930 vidíte něco, co by mohlo být specifické pro plug-in 338 00:18:32,930 --> 00:18:34,510 které se stalo, že vytváření. 339 00:18:34,510 --> 00:18:37,620 >> Tak tady, například, dostaneme pár 404s-- nebyl nalezen. 340 00:18:37,620 --> 00:18:42,910 Vidíme nejsme schopni načíst některé Informace z podkladové instance 341 00:18:42,910 --> 00:18:43,670 sám. 342 00:18:43,670 --> 00:18:46,545 A je tu banda další Informace, ale většina z toho, že jsme 343 00:18:46,545 --> 00:18:47,970 vlastně bude ignorovat nyní. 344 00:18:47,970 --> 00:18:50,130 Protože tohle je dost Společný pro pracovní prostor 345 00:18:50,130 --> 00:18:53,200 mít jen pár chyb. 346 00:18:53,200 --> 00:18:53,700 DOBŘE. 347 00:18:53,700 --> 00:18:56,680 Chystám se přesunout toto ven cesta a vrátit se sem. 348 00:18:56,680 --> 00:19:01,860 A nyní snadný způsob, jak se hezky věc, o které tento developer 349 00:19:01,860 --> 00:19:07,330 Režim umožnil, je, že mě to dovolí snadno vytvořit nový plug-in. 350 00:19:07,330 --> 00:19:12,390 >> Takže zatímco před rokem jsem vlastně dělal ne má tento nový plug-in možnost k dispozici, 351 00:19:12,390 --> 00:19:16,460 kterou můžeme vidět, jestli jsem se vrátit do můj režim bez developer sem, 352 00:19:16,460 --> 00:19:18,510 není nový plug-in. 353 00:19:18,510 --> 00:19:23,220 Tím, že režim SDK, já mají nový plug-in k dispozici 354 00:19:23,220 --> 00:19:25,660 a mohu snadno vytvořit. 355 00:19:25,660 --> 00:19:28,160 V tomto případě, je tu pár různých možností, jednoduché, 356 00:19:28,160 --> 00:19:30,850 prázdný plug-in, plný plug-in, instalátor, Cloud 9 svazek. 357 00:19:30,850 --> 00:19:33,030 Pojďme stačí si jen vybrat prázdný plug-in pro teď 358 00:19:33,030 --> 00:19:37,670 takže můžeme vidět velmi Jednoduchá verze jednoho. 359 00:19:37,670 --> 00:19:41,520 >> Nyní si všimněte, že podél levá strana, že to tam je nyní 360 00:19:41,520 --> 00:19:45,080 něco pod oblíbeným, což je výpis několik plug-inů 361 00:19:45,080 --> 00:19:47,020 které jsou nyní k dispozici ke mně. 362 00:19:47,020 --> 00:19:50,420 Pokud bych rozšířit, že budeme být schopni vidět ty. 363 00:19:50,420 --> 00:19:52,730 Teď chci, abys všimnete něco, co tu, která 364 00:19:52,730 --> 00:19:58,260 je to, že to není ve skutečnosti obsažen v rámci adresáře pracovního prostoru 365 00:19:58,260 --> 00:20:03,190 na mém podkladové například Ubuntu, ale je obsažen na pevném disku. 366 00:20:03,190 --> 00:20:06,330 A pokud je to nachází, protože to je velmi užitečné vědět, 367 00:20:06,330 --> 00:20:09,570 zvláště pokud se chystáte dělat něco s Git, 368 00:20:09,570 --> 00:20:16,870 kde se nachází, je to ve složce .c9, / plugins. 369 00:20:16,870 --> 00:20:21,110 Takže když jsem se tam, můžeme vidět, že teď seznam plug-inů, které jsou zde 370 00:20:21,110 --> 00:20:26,390 odpovídá seznamu moduly plug-in, které jsem viděl na levé straně svého pracovního prostoru. 371 00:20:26,390 --> 00:20:28,610 >> Nyní ve výchozím nastavení, a To je trochu divné, 372 00:20:28,610 --> 00:20:31,760 Ve výchozím nastavení, když jsem vytvořit nový plug-in v pracovním prostoru, 373 00:20:31,760 --> 00:20:36,620 vytváří tento plug-in, který tím, Výchozí má jméno podtržítko. 374 00:20:36,620 --> 00:20:39,760 Obecně platí, že by mohl způsobit určité problémy. 375 00:20:39,760 --> 00:20:42,340 Takže hned další krok že jsem většinou provádět 376 00:20:42,340 --> 00:20:45,880 Je jen na odstranění, že zejména plug-in 377 00:20:45,880 --> 00:20:52,810 a ponechat jen jednoduchý plug-in, který Byl tam zpočátku, plugin.simple. 378 00:20:52,810 --> 00:20:55,430 A to je jediný, kdo tam je. 379 00:20:55,430 --> 00:20:55,930 DOBŘE. 380 00:20:55,930 --> 00:20:58,380 >> Takže co to vlastně vypadá? 381 00:20:58,380 --> 00:21:01,210 No, to je, opět, balík JavaScript 382 00:21:01,210 --> 00:21:05,220 že obsahuje některé soubory, včetně plugin.js souboru, kde 383 00:21:05,220 --> 00:21:07,700 Hlavní obsah Plug-in se nachází, 384 00:21:07,700 --> 00:21:10,590 soubor package.json, který vlastně určuje 385 00:21:10,590 --> 00:21:13,760 Některá metadata o tomto plug-in, jako například kdo je jejich autorem, 386 00:21:13,760 --> 00:21:19,240 jakékoliv další informace o tom, na popis plug-in, a tak dále. 387 00:21:19,240 --> 00:21:22,190 A také výchozím nastavení jej vytvoří prázdný soubor README, 388 00:21:22,190 --> 00:21:26,100 a prázdný testovací soubor pro vás vytvořit nějaké další dokumentaci, 389 00:21:26,100 --> 00:21:29,430 a testovací postroj, pokud byste chtěli udělat. 390 00:21:29,430 --> 00:21:34,160 >> Takže pojďme stačí se podívat nejprve na, velmi rychle, v souboru package.json. 391 00:21:34,160 --> 00:21:38,240 Je to snadné jen projít to a vyplňte v oblastech to 392 00:21:38,240 --> 00:21:42,510 že budete chtít vyplnit, jako je poskytne mu jméno, popsat, 393 00:21:42,510 --> 00:21:45,010 opakovat číslo verze každý tak často, poskytují 394 00:21:45,010 --> 00:21:47,570 autor pro každého člověk, který přispívá, 395 00:21:47,570 --> 00:21:53,000 přidejte je do přispěvatelům sekci, a zbytek tohoto vás 396 00:21:53,000 --> 00:21:56,390 může do značné míry právě ponechat jak to je nyní. 397 00:21:56,390 --> 00:21:58,490 >> Je tu ještě jedna věc, která je důležité si všimnout, 398 00:21:58,490 --> 00:22:04,990 že v rámci moduly plug-in, je klíč nazvaný plug-in. 399 00:22:04,990 --> 00:22:11,800 A to je uzavřeno na jméno soubor JavaScript s názvem plugin.js. 400 00:22:11,800 --> 00:22:18,290 Tak to je, jak Cloud 9 ví, kdy to čte tento soubor package.json, který 401 00:22:18,290 --> 00:22:20,720 z JS soubory skutečně načíst. 402 00:22:20,720 --> 00:22:25,440 Mám-li vytvořit další JS soubory, nebo chcete přejmenovat, že js soubor z plug-in, 403 00:22:25,440 --> 00:22:30,380 Také jsem se to změnit v souboru package.json. 404 00:22:30,380 --> 00:22:33,660 >> Případné dotazy z publika? 405 00:22:33,660 --> 00:22:34,160 Ne. 406 00:22:34,160 --> 00:22:38,100 Že jedna osoba, která je Následující spolu se mnou, tak daleko. 407 00:22:38,100 --> 00:22:38,760 >> DOBŘE. 408 00:22:38,760 --> 00:22:42,300 Takže jsem vlastně vytvořil několik plug-inů už, 409 00:22:42,300 --> 00:22:44,100 Myslím, že v tomto prostoru. 410 00:22:44,100 --> 00:22:53,800 Takže pojďme se zbavit některých z nich, přidejte SDK = 1 & debug = 2, obnovte tuto pracovní prostor, 411 00:22:53,800 --> 00:22:58,780 a uvidíme, jestli budeme mít ty zásuvné moduly teď. 412 00:22:58,780 --> 00:23:01,430 C9 / plugins. 413 00:23:01,430 --> 00:23:01,930 Tady jsme. 414 00:23:01,930 --> 00:23:06,910 Vidíme nyní v mých C9 / plugins tohoto jedním, máme plugin.1 a plugin.2. 415 00:23:06,910 --> 00:23:15,260 Takže budeme jen urychlit the-- stačí zvýšit množství obtížnosti 416 00:23:15,260 --> 00:23:16,660 V každém z těchto plug-inů. 417 00:23:16,660 --> 00:23:20,140 Ale tady, když jsem vytvořit nový plug-in, Mohu přidat k oblíbeným. 418 00:23:20,140 --> 00:23:25,560 A já budu jen odstranit ty, které z základní souborový systém. 419 00:23:25,560 --> 00:23:28,050 >> Pojďme odstranit to. 420 00:23:28,050 --> 00:23:33,206 Nyní, když otevřu můj první plug-in, a otevřené plugin.js, 421 00:23:33,206 --> 00:23:39,980 vidíme zde základní jednoduchý verze plug-inu. 422 00:23:39,980 --> 00:23:42,170 Dovolte mi, abych skutečně jít zpět do tohoto druhého pracovního prostoru 423 00:23:42,170 --> 00:23:47,160 protože můžete alespoň tady vidět, co prázdný plug-in ve skutečnosti vypadá. 424 00:23:47,160 --> 00:23:51,810 A tak pod kapotou, to vypadá velmi podobné technologii s názvem, 425 00:23:51,810 --> 00:23:53,780 Myslím si, že je to RequireJS. 426 00:23:53,780 --> 00:23:56,000 Všimněte si, že to není opravdu se, snad, 427 00:23:56,000 --> 00:23:59,150 stejně jako některé jiné JavaScript Soubory, které jsme mohli vidět. 428 00:23:59,150 --> 00:24:04,250 Ale místo toho, je tu jen pár základní linie, že ve skutečnosti má. 429 00:24:04,250 --> 00:24:06,900 >> Všechny tyto věci se nejprve vykládán IDE, 430 00:24:06,900 --> 00:24:09,940 ale není to vlastně běžet až specifikováno. 431 00:24:09,940 --> 00:24:13,610 A řeknu vám, že o tom, kdy ve skutečnosti znamená za chvíli. 432 00:24:13,610 --> 00:24:17,840 Ale všimněte si, že tady je tu main.consumes čára v řadě 2, 433 00:24:17,840 --> 00:24:23,270 a to uvádí všechny plug-inů že tento plug-in je závislá na. 434 00:24:23,270 --> 00:24:27,150 Takže ve výchozím nastavení, my snad co dělat, aby se jakékoliv závislosti na jiných plug-inů, 435 00:24:27,150 --> 00:24:30,530 ale když jsme vlastně potřebujeme závisí na funkcích dodaných 436 00:24:30,530 --> 00:24:34,900 ostatními plug-inů v IDE, musíme vypracovat seznam těchto plug-inů 437 00:24:34,900 --> 00:24:36,890 v main.consumes linii. 438 00:24:36,890 --> 00:24:39,230 A pak musíme odkaz je na kódu 439 00:24:39,230 --> 00:24:42,860 níže, které jsem vám ukážu, v právě O chvíli o tom, jak to můžeme udělat. 440 00:24:42,860 --> 00:24:46,100 >> Main.provides dává název tohoto plug-in 441 00:24:46,100 --> 00:24:49,190 že ostatní plug-iny mohl použití ve svém spotřebovává řádku. 442 00:24:49,190 --> 00:24:52,480 Takže v tomto případě, můj plug-in tam je jen ve výchozím nastavení, 443 00:24:52,480 --> 00:24:55,820 a že bychom měli změnit, že je to vztahující se na naší vlastní plug-in, 444 00:24:55,820 --> 00:24:57,540 jak uvidíme za pouhý okamžik. 445 00:24:57,540 --> 00:25:01,230 Nyní zde ve funkci hlavní, tato funkce hlavní 446 00:25:01,230 --> 00:25:05,630 je vlastně běh a interpretovány, ale to není vlastně dělat moc. 447 00:25:05,630 --> 00:25:08,970 Je to prostě dostane vše nastaveno, ale to není skutečně začít plug-in, 448 00:25:08,970 --> 00:25:11,220 i přes to, co název zní podobně. 449 00:25:11,220 --> 00:25:14,690 Že vlastně děje prostřednictvím posloupnost metod, které 450 00:25:14,690 --> 00:25:16,820 jsou obsaženy v této plug-in. 451 00:25:16,820 --> 00:25:20,830 >> Takže když jsem se posunout dolů, vidíme že máme životní cyklus kde 452 00:25:20,830 --> 00:25:25,100 na nějaké akce s názvem zatížení, nebo nějaké akce s názvem odlehčovací, 453 00:25:25,100 --> 00:25:26,940 některé události ve skutečnosti stalo. 454 00:25:26,940 --> 00:25:33,500 Je to opravdu tady, kde jako plug-in Začíná, že tyto metody jsou volány. 455 00:25:33,500 --> 00:25:37,240 Takže buďme trochu konkrétnější o tom, a podívat se na příklad. 456 00:25:37,240 --> 00:25:41,010 Takže tady pro plugin.1, co Jsme v podstatě dělat 457 00:25:41,010 --> 00:25:46,010 je vytvořit položku nabídky volal CS50 Seminář Dialog 1-- 458 00:25:46,010 --> 00:25:48,070 protože máme dva them-- a jdeme 459 00:25:48,070 --> 00:25:50,300 vnést do nabídky Window. 460 00:25:50,300 --> 00:25:54,590 A když jsme se na něj kliknete, my jsme chystá otevřít dialog, který 461 00:25:54,590 --> 00:25:56,290 nám ukazuje některé velmi základní informace. 462 00:25:56,290 --> 00:25:58,050 >> V tomto případě, jen Hello World. 463 00:25:58,050 --> 00:26:01,880 Tak to je velmi jednoduchý hello world dialog 464 00:26:01,880 --> 00:26:05,260 že můžeme realizovat jako plug-in v Cloud 9. 465 00:26:05,260 --> 00:26:07,960 Tak uvidíme, jak to vlastně vypadá. 466 00:26:07,960 --> 00:26:12,730 Budeme jej krok po kroku, jen poměrně rychle, takže jsme 467 00:26:12,730 --> 00:26:15,580 se podívat na další plug-in stejně. 468 00:26:15,580 --> 00:26:19,510 Všimněte si, že jsme tady náročné různé plug-inů. 469 00:26:19,510 --> 00:26:26,080 Máme náročný dialog plug-in, příkazy, menu a UI. 470 00:26:26,080 --> 00:26:30,440 Vypadá to, že ve skutečnosti jsem náročné dialog dvakrát, takže mohu odstranit, že. 471 00:26:30,440 --> 00:26:32,560 >> A všimněte si, že na cestě že jsem jim připojení, 472 00:26:32,560 --> 00:26:37,940 To je druh metadat, která nám říká plug-in systém, jaké požadavky 473 00:26:37,940 --> 00:26:41,480 jsou skutečně nutné pro tento modul plug-in načíst. 474 00:26:41,480 --> 00:26:46,400 Je také důležité si uvědomit, že objednávka, že plug-iny jsou načteny 475 00:26:46,400 --> 00:26:48,300 není zaručena. 476 00:26:48,300 --> 00:26:53,400 Ale to, co je zaručeno, je, že když jsem upřesnit nějaké plug-in jako požadavek, 477 00:26:53,400 --> 00:26:56,900 že plug-in bude načten Než tohle je načten. 478 00:26:56,900 --> 00:27:00,390 >> Takže to znamená, že pokud plug-in vyžaduje, aby na některých funkcí poskytovaných 479 00:27:00,390 --> 00:27:04,380 něco jiného v IDE, měli byste ujistěte se, že vaše zásuvné spotřebovává 480 00:27:04,380 --> 00:27:09,260 že plug-in, takže závislosti je jisté, že vytvořit plug-in, 481 00:27:09,260 --> 00:27:15,010 nebo instanci váš plug-in, jen poté, co že stávající rámec existuje. 482 00:27:15,010 --> 00:27:18,870 Tak tady jsem se zmínil o metadata na plug-in manažer, 483 00:27:18,870 --> 00:27:20,990 ty, které mi chodí k sežrání. 484 00:27:20,990 --> 00:27:24,910 A v hlavní funkce tady, Chystám se pak připojte 485 00:27:24,910 --> 00:27:30,240 můj kód na ty dovážené plug-inů. 486 00:27:30,240 --> 00:27:33,420 >> Takže jsem prostě jít vytvořit některé proměnné, které 487 00:27:33,420 --> 00:27:36,620 odpovídají jménům každého z těch tak že mohu velmi rychle odkazovat jim 488 00:27:36,620 --> 00:27:37,840 v celém mém kódu. 489 00:27:37,840 --> 00:27:41,840 Důvod, proč jsem import dialog Je tomu tak proto Chci plug-in 490 00:27:41,840 --> 00:27:44,560 působit jako dialogu plug-in. 491 00:27:44,560 --> 00:27:49,320 A to tak, že jsem schopen k tomu, že je, samozřejmě, 492 00:27:49,320 --> 00:27:52,740 připojit můj kód k dialogu plug-in pomocí importu jej 493 00:27:52,740 --> 00:27:57,210 a pak určením podle vytvoření nového dialogu proměnnou 494 00:27:57,210 --> 00:28:00,460 a jeho připojení k že dovážené plug-in. 495 00:28:00,460 --> 00:28:04,820 A pak se tím, že definuje my plug-in jako nový dialog. 496 00:28:04,820 --> 00:28:07,650 >> Takže v inicializaci I chcete definovat svůj plug-in. 497 00:28:07,650 --> 00:28:10,440 A tato proměnná s názvem plug-in uvidíte 498 00:28:10,440 --> 00:28:14,030 právě běžně používán v celém Cloud 9 plug-inů. 499 00:28:14,030 --> 00:28:16,980 Budu instanci nového dialog s některými vlastnostmi, 500 00:28:16,980 --> 00:28:22,300 dát konkrétní název, říkají, že to je možné pro uživatele zavřete. 501 00:28:22,300 --> 00:28:24,960 Že to ukážu trochu x In pravém horním roh, 502 00:28:24,960 --> 00:28:27,529 nebo o něco tlačítka v pravém dolním rohu. 503 00:28:27,529 --> 00:28:30,570 Zda nebo ne mohu vybrat text ze to, co název tohoto dialogu 504 00:28:30,570 --> 00:28:32,400 by bylo, a tak dále. 505 00:28:32,400 --> 00:28:36,330 Teď to jen definuje dialog, ale to není zatím najevo. 506 00:28:36,330 --> 00:28:40,780 Vlastně jsem definovat Žaloba pro něj být ukazován. 507 00:28:40,780 --> 00:28:43,490 >> A opět, doporučujeme vám podívejte se na Cloud 9 SDK, 508 00:28:43,490 --> 00:28:46,930 protože tam jsou různé dialogy a oni jsou opravdu dobře zdokumentovány. 509 00:28:46,930 --> 00:28:50,500 Můžete vidět různé druhy že tam jsou, a jejich použití 510 00:28:50,500 --> 00:28:55,380 v co plug-in máte na mysli. 511 00:28:55,380 --> 00:28:58,790 Teď to bude bude část zatížení, a toto zatížení 512 00:28:58,790 --> 00:29:03,390 Funkce Jak si jistě vzpomínáte, je používá plug-in životního cyklu 513 00:29:03,390 --> 00:29:07,060 skutečně instanci vše a dostat vše připraveno jít. 514 00:29:07,060 --> 00:29:11,440 Nyní, když tento modul plug-in zátěže, vůbec se mi nelíbí chci, aby to okamžitě zobrazit dialog, 515 00:29:11,440 --> 00:29:14,160 protože tento plug-in se načte spolu se zbytkem IDE. 516 00:29:14,160 --> 00:29:17,850 A když jsem jej vložte IDE, nechci dialog se ukázat automaticky. 517 00:29:17,850 --> 00:29:24,170 Já jen chci, aby to ukázat, když kliknu na Nabídka možností na mého okna položku menu 518 00:29:24,170 --> 00:29:26,760 že budu k němu přidám okamžik. 519 00:29:26,760 --> 00:29:29,480 >> Takže tam dva odlišné kroky tady to muselo stát. 520 00:29:29,480 --> 00:29:32,640 Musím vytvořit příkaz a příkaz 521 00:29:32,640 --> 00:29:37,940 bude zodpovědný za skutečně zobrazující dialog o Cloud 9 IDE. 522 00:29:37,940 --> 00:29:42,670 A pak jsem se připojit, já je nutné vytvořit nové okno nabídky 523 00:29:42,670 --> 00:29:46,070 položka, která se spouští tento příkaz. 524 00:29:46,070 --> 00:29:49,740 Takže, když jsem klikněte na toto okno položky menu, že příkaz je pak běh 525 00:29:49,740 --> 00:29:52,290 a proto můj dialog se pak zobrazí. 526 00:29:52,290 --> 00:29:55,690 A tak je to vlastně docela příjemný způsob, jak o tom přemýšlet. 527 00:29:55,690 --> 00:30:01,480 >> Vzhledem k tomu, nejprve jsem si vytvořit příkaz jehož jméno je CS50 seminář Dialog 1, 528 00:30:01,480 --> 00:30:04,860 že poskytuje některé obecný kontext pro ni. 529 00:30:04,860 --> 00:30:08,930 A důležitý bit je zde Všimněte si atributu EXEC, který 530 00:30:08,930 --> 00:30:15,160 uvádí funkce, která bude volána v mém plug-in při spuštění tohoto příkazu. 531 00:30:15,160 --> 00:30:21,980 Takže tento příkaz je něco jako je-- je to jen libovolná Cloud 9 532 00:30:21,980 --> 00:30:25,780 Příkaz která je k dispozici na jakoukoli Cloud 9 plug-in. 533 00:30:25,780 --> 00:30:30,290 Ale skutečné funkci, že je to Zavolám při spuštění tohoto příkazu 534 00:30:30,290 --> 00:30:35,010 je funkce přehlídka dialog v mém plugin.js souboru. 535 00:30:35,010 --> 00:30:38,550 >> A můžeme skutečně vidět Tyto plug-iny a seznam 536 00:30:38,550 --> 00:30:45,480 příkazů, které jsou k dispozici k nám Předvolby, vyberte celou cestu down-- 537 00:30:45,480 --> 00:30:48,180 podívejme se, vlastně vidíme to nyní? 538 00:30:48,180 --> 00:30:53,180 Plug-in správce, Ne, myslím, že je to já-- určitě někde tady. 539 00:30:53,180 --> 00:31:00,016 No, tam je seznam příkazů někde, ale musím mít, 540 00:31:00,016 --> 00:31:01,140 Zapomněl jsem, kde to je. 541 00:31:01,140 --> 00:31:02,430 Tak OK, budeme dál. 542 00:31:02,430 --> 00:31:02,930 Dobře. 543 00:31:02,930 --> 00:31:05,790 Takže máme seznam příkazů které jsou k dispozici pro nás, 544 00:31:05,790 --> 00:31:08,550 a tyto příkazy jsou to prostě libovolné Cloud 9 545 00:31:08,550 --> 00:31:10,870 příkazy, které běží specifický kód. 546 00:31:10,870 --> 00:31:13,620 Takže jen mějte na paměti, že budeme spouštět dialogovém okně Zobrazit 547 00:31:13,620 --> 00:31:15,640 okamžik fungovat. 548 00:31:15,640 --> 00:31:19,740 Teď, když jsem se skutečně chtějí přidat nabídku položka, mohu dodat, že položku cestou, 549 00:31:19,740 --> 00:31:25,570 a stačí zadat přesně tam, kde chci, aby to bylo, Window / CS50 seminář Dialog 1. 550 00:31:25,570 --> 00:31:28,380 A v tomto bodě, chci vytvořit novou položku, která 551 00:31:28,380 --> 00:31:32,040 se chystá spustit příkaz, CS50 seminář Dialog 1. 552 00:31:32,040 --> 00:31:36,140 Všimněte si, že se znovu, to je Cloud 9 příkaz Vytvořil jsem těsně nad. 553 00:31:36,140 --> 00:31:38,630 >> Teď chci také vytvořit malou dělič, 554 00:31:38,630 --> 00:31:42,260 a tak jsem můžete udělat totéž v následující řadě. 555 00:31:42,260 --> 00:31:46,040 Nyní si můžete všimnout, že jak Součástí definování této položky menu, 556 00:31:46,040 --> 00:31:48,200 je tu řada s ním spojené, které 557 00:31:48,200 --> 00:31:51,260 ve skutečnosti říká, kde přesně Chci, že položka menu bude 558 00:31:51,260 --> 00:31:53,441 se nachází v seznamu menu. 559 00:31:53,441 --> 00:31:55,190 Ale můžete všimnout že nemám vlastně 560 00:31:55,190 --> 00:31:59,540 vidět žádné čísla s Tyto nabídky, ve výchozím nastavení. 561 00:31:59,540 --> 00:32:04,630 Takže je tu malá skrytá věc, která co můžeme udělat, trochu změnu naší adresy URL. 562 00:32:04,630 --> 00:32:12,920 Takže kromě SDK = 1 & ladění = 2, Budu nastavit menu 1-- 563 00:32:12,920 --> 00:32:14,690 a doufejme, že to je menu, není menu. 564 00:32:14,690 --> 00:32:17,001 Oh, to je menu = 1. 565 00:32:17,001 --> 00:32:17,500 Počkej. 566 00:32:17,500 --> 00:32:20,150 567 00:32:20,150 --> 00:32:24,690 >> A co budeme vidět při překládce, že IDE je, že jsem stále v režimu ladění, 568 00:32:24,690 --> 00:32:27,540 ale teď tam jsou čísla které se týká všech nabídkách. 569 00:32:27,540 --> 00:32:29,630 A to vám řekne, přesně to, co se počet 570 00:32:29,630 --> 00:32:34,730 je, když se snažíte k injekci něco, kdekoli v tomto systému nabídek. 571 00:32:34,730 --> 00:32:40,365 Takže v nabídce Okno, mohu vidět, že bod 45 je spolupracovat 572 00:32:40,365 --> 00:32:43,820 a bod 38 před ním je instalační program. 573 00:32:43,820 --> 00:32:47,530 Takže když chci injekci položka mezi těmi dvěma, 574 00:32:47,530 --> 00:32:50,570 Jen bych vyberte číslo mezi těmito dvěma položkami. 575 00:32:50,570 --> 00:32:56,200 Tak jsem si vybral 41 a vloží svůj seminář Dialog položka 1 MENU na tomto místě. 576 00:32:56,200 --> 00:33:03,640 >> A to je důvod, proč toto číslo který se objeví zde je Number 41. 577 00:33:03,640 --> 00:33:08,010 To je místo toho položka menu v nabídce Cloud 9. 578 00:33:08,010 --> 00:33:11,045 Nyní podobně, chtěl jsem k vytvoření dělič 579 00:33:11,045 --> 00:33:13,920 a přidat tak, že je tu pěkný rozdělení mezi každou z těchto nabídky 580 00:33:13,920 --> 00:33:14,490 položky. 581 00:33:14,490 --> 00:33:18,600 Tak jsem dodal, že se na místě 43. 582 00:33:18,600 --> 00:33:20,260 Tak daleko, tak dobře, doufám, že? 583 00:33:20,260 --> 00:33:23,920 Takže teď pojďme podívat na skutečně specifický kód ve výstavním dialogu 584 00:33:23,920 --> 00:33:28,050 to je ve skutečnosti zodpovědný pro otevření tohoto dialogového okna. 585 00:33:28,050 --> 00:33:32,710 >> Rolování dolů, vidím, že chci, aby byla tato funkce Zobrazit dialog, 586 00:33:32,710 --> 00:33:34,730 a je to velmi jednoduché. 587 00:33:34,730 --> 00:33:38,570 Chystám se spustit show metoda na plug-in proměnné. 588 00:33:38,570 --> 00:33:43,900 A nezapomeňte, že jsme definovali to plug-in proměnné výše jako dialog. 589 00:33:43,900 --> 00:33:48,530 Takže bar plug-in, v tomto případě, je to Objekt, který jsme vnitřně definovány. 590 00:33:48,530 --> 00:33:53,030 A bude to být nový dialog obsažené v tomto plug-in. 591 00:33:53,030 --> 00:33:57,020 A tak jsme vlastně odkazoval se na to plug-in proměnné v mnoha místech 592 00:33:57,020 --> 00:33:59,790 v typické Cloud 9 vývojové prostředí. 593 00:33:59,790 --> 00:34:00,867 >> Budeme ho naleznete zde. 594 00:34:00,867 --> 00:34:03,450 Všimněte si, že když jsme přejděte dolů, je tu další životní cykly. 595 00:34:03,450 --> 00:34:06,970 Takže si všimnout, že tito reagují k událostem, které jsou vypáleny 596 00:34:06,970 --> 00:34:10,500 tímto objektem, tento dialog objektu. 597 00:34:10,500 --> 00:34:12,710 Ve výchozím nastavení, je tu nakládku a vykládku, který 598 00:34:12,710 --> 00:34:14,760 jsou k dispozici všem Cloud 9 plug-inů. 599 00:34:14,760 --> 00:34:17,139 Ale v případě Tento dialog, je tu 600 00:34:17,139 --> 00:34:19,139 Další událostí, která může Oheň také volal 601 00:34:19,139 --> 00:34:23,239 Draw, který je zapálený při které má být vypracovány na obrazovce, 602 00:34:23,239 --> 00:34:27,239 v prvním stupni dialogu ukazovat. 603 00:34:27,239 --> 00:34:29,590 >> Takže, když je ve skutečnosti bude ukázáno, 604 00:34:29,590 --> 00:34:31,739 tam se chystá poskytují nám nějaké HTML. 605 00:34:31,739 --> 00:34:34,710 A pouze pomocí standardní HTML praktiky MŮŽEME 606 00:34:34,710 --> 00:34:41,030 aplikovat některé velmi jednoduché informace, náš hello world, v tomto dialogu. 607 00:34:41,030 --> 00:34:47,780 Takže když jsme se pak přejděte nahoru, můžeme viz pak průvod věcí 608 00:34:47,780 --> 00:34:48,989 že je to dochází. 609 00:34:48,989 --> 00:34:54,070 Nejprve jsme vytvořili Cloud 9 příkazu že když jsou vykonávané Cloud 9, 610 00:34:54,070 --> 00:34:55,765 se děje na oheň této funkce. 611 00:34:55,765 --> 00:34:58,390 Bude to spustit tuto funkci volal ukazují dialog, že jsem 612 00:34:58,390 --> 00:34:59,720 psaný v mém kódu. 613 00:34:59,720 --> 00:35:04,350 >> Vytvořil jsem si položku menu a spojený s tím, že stejný příkaz 614 00:35:04,350 --> 00:35:08,550 že když je, že položka klepnutí v menu, že příkaz je pak spustit 615 00:35:08,550 --> 00:35:10,780 a tato funkce je pak spustit. 616 00:35:10,780 --> 00:35:14,080 A uvnitř funkce Jsem jen tak zavolat the-- Jsem 617 00:35:14,080 --> 00:35:17,250 právě chystá spustit show Způsob tohoto plug-in, který 618 00:35:17,250 --> 00:35:20,800 se chystá na první výzvu metoda draw, a jít 619 00:35:20,800 --> 00:35:28,050 na oheň této metody se stanoví níže, kreslit obsluhu události, v našem životním cyklu. 620 00:35:28,050 --> 00:35:30,820 A pak se to bude ve skutečnosti zobrazí dialog. 621 00:35:30,820 --> 00:35:34,870 >> K dispozici je také skrýt metoda, takže když potřebuji možnost skrýt 622 00:35:34,870 --> 00:35:37,610 můj dialog, můžu dělat totéž. 623 00:35:37,610 --> 00:35:42,060 Tak to je docela hodně to získat všechny, aby to fungovalo. 624 00:35:42,060 --> 00:35:45,160 Všimněte si, že to, kdybychom posunout dolů dále je tu zmrazení veřejné API. 625 00:35:45,160 --> 00:35:51,020 To v podstatě jen říká, že jsem Chcete tyto metody efektivně 626 00:35:51,020 --> 00:35:56,670 být veřejná, avšak nikoliv overwriteable mimo kontext tohoto plug-inu. 627 00:35:56,670 --> 00:36:00,410 A dole, na samém dně, je snad ta poslední věc, 628 00:36:00,410 --> 00:36:03,180 že musíme skutečně platit velkou pozornost na tu, která 629 00:36:03,180 --> 00:36:09,540 je to, že budeme naše registrovat plug-in se jménem C9 seminář 1, 630 00:36:09,540 --> 00:36:11,920 a objekt plug-in. 631 00:36:11,920 --> 00:36:14,870 >> Což, jak si vzpomínáš, je že plug-in, že plug-in 632 00:36:14,870 --> 00:36:18,200 Objekt, který jsme byli definování Během celého tohoto zdroje 633 00:36:18,200 --> 00:36:18,840 kód. 634 00:36:18,840 --> 00:36:23,790 A C9 seminář 1 je Řetězec, který jsme slíbili 635 00:36:23,790 --> 00:36:26,350 aby v horní části této definice. 636 00:36:26,350 --> 00:36:29,280 637 00:36:29,280 --> 00:36:29,780 DOBŘE. 638 00:36:29,780 --> 00:36:34,160 Takže pojďme rozjet to trochu a uvidíme, jestli můžeme něco udělat 639 00:36:34,160 --> 00:36:36,020 trochu zajímavější. 640 00:36:36,020 --> 00:36:38,350 Teď je to jen tak velký. 641 00:36:38,350 --> 00:36:41,380 Chci říct, je to, že je to vlastně docela vychladnout, že tak málo řádků kódu, 642 00:36:41,380 --> 00:36:45,570 můžeme upravit stávající IDE a přidat existující položku menu 643 00:36:45,570 --> 00:36:48,850 nebo přidat nové položky nabídky, přidejte příkaz, a ukázat dialog, 644 00:36:48,850 --> 00:36:51,040 a jen banda funkce, které existuje. 645 00:36:51,040 --> 00:36:54,550 Je to opravdu docela skvělý. 646 00:36:54,550 --> 00:36:59,470 >> Ale to nedělá hodně, protože to nemůže komunikovat s podkladové Ubuntu 647 00:36:59,470 --> 00:37:00,450 instance. 648 00:37:00,450 --> 00:37:02,560 Takže řekněme, že já skutečně chtějí zjistit, 649 00:37:02,560 --> 00:37:05,400 Některé informace o základní Ubuntu instance, 650 00:37:05,400 --> 00:37:08,260 jako jsou statistiky plug-in dělá. 651 00:37:08,260 --> 00:37:11,090 Takže pojďme se podívat na trochu více informací 652 00:37:11,090 --> 00:37:13,730 o tom, jak statistiky plug-in práce. 653 00:37:13,730 --> 00:37:15,900 A ve skutečnosti, že je velmi podobný tomu. 654 00:37:15,900 --> 00:37:17,680 Dalo by se připomenout, že tam je dialog. 655 00:37:17,680 --> 00:37:21,680 Dalo by se připomenout, že je tu Některé informace, které je 656 00:37:21,680 --> 00:37:24,860 ukázala, podél panelu nabídek spolu vrchol, který doufejme, že jste teď 657 00:37:24,860 --> 00:37:27,450 dostat chuť o tom, jak jsme realizovali to, 658 00:37:27,450 --> 00:37:32,360 Jen tím, že vloží položky menu na specifické body a vyvoláváním instancí dialogu 659 00:37:32,360 --> 00:37:34,360 a zobrazení, že dialog. 660 00:37:34,360 --> 00:37:36,580 >> Ale dosud zobrazeny vám, jak se můžeme připojit 661 00:37:36,580 --> 00:37:40,790 na příkaz do Základním instance Ubuntu. 662 00:37:40,790 --> 00:37:46,930 Takže pojďme se podívat pak na plugin.2, která dělá právě tuto věc. 663 00:37:46,930 --> 00:37:50,540 Jedeme do otevření plugin.js, což je kód pro toto. 664 00:37:50,540 --> 00:37:54,570 Ale pod nabídce okno když jsem klikněte na dialog 2, 665 00:37:54,570 --> 00:37:58,290 můžeme vidět, že se říká, že toto místo toho, ahoj CS50, který 666 00:37:58,290 --> 00:38:01,800 Nevypadá to všechno to Lákavé, že jo? 667 00:38:01,800 --> 00:38:04,310 Až na to, dívat se na to. 668 00:38:04,310 --> 00:38:07,020 Dovolte mi, abych něco změnit tady dole. 669 00:38:07,020 --> 00:38:11,540 >> Chystám se jít do mého Pracovní prostor a změna seminář 670 00:38:11,540 --> 00:38:15,990 říkat něco jiného, ​​jako Dobrý den, Dan. 671 00:38:15,990 --> 00:38:18,150 Chystám se zavřít a uložit ji. 672 00:38:18,150 --> 00:38:22,740 A teď budu re-run můj položka menu dialog. 673 00:38:22,740 --> 00:38:25,590 A všimněte si, že to má nyní změnilo to, co říká. 674 00:38:25,590 --> 00:38:26,880 Dobrý den, Dan. 675 00:38:26,880 --> 00:38:30,680 Myslím, že jsem udělal něco dolů tady v podkladové instance Ubuntu 676 00:38:30,680 --> 00:38:34,370 manipulovat, aniž by jakákoliv Kód, který je opět spuštěn výhradně 677 00:38:34,370 --> 00:38:35,720 na straně klienta. 678 00:38:35,720 --> 00:38:40,380 Takže tam zřejmě nějaký druh sdělení, že se tady děje. 679 00:38:40,380 --> 00:38:44,550 >> Teď to je místo, kde mnoho z Síla Cloud 9 SDK přijde, 680 00:38:44,550 --> 00:38:49,440 je to, že v tomto plugin.2, můžeme skutečně způsobit 681 00:38:49,440 --> 00:38:52,910 hovor se stane na základní instance, 682 00:38:52,910 --> 00:38:55,750 a spustit nějaký libovolný příkaz. 683 00:38:55,750 --> 00:39:00,230 Takže v tomto případě, mám vlastně vytvořil velmi jednoduchý bash skript 684 00:39:00,230 --> 00:39:02,350 v mém pracovním prostoru s názvem seminář. 685 00:39:02,350 --> 00:39:03,610 Dovolte mi tedy, že až otevře. 686 00:39:03,610 --> 00:39:05,370 A my můžeme vidět, že to vypadá takhle. 687 00:39:05,370 --> 00:39:08,310 Je to jen velmi jednoduchý bash Skript, jehož jediným cílem v životě 688 00:39:08,310 --> 00:39:11,920 bude na echo out tohoto textu, Dobrý den, Dan. 689 00:39:11,920 --> 00:39:14,360 Nebo před ním, to řekl Ahoj, CS50. 690 00:39:14,360 --> 00:39:16,000 A to je vše, co bude dělat. 691 00:39:16,000 --> 00:39:21,030 >> Vzhledem k tomu, to je nyní příkaz, že můžu běžet. 692 00:39:21,030 --> 00:39:23,750 Já si skutečně spustit jej sem. 693 00:39:23,750 --> 00:39:28,440 Můžeme vidět, že ve skutečnosti je jen příkaz, který jsem běžet přirozeně. 694 00:39:28,440 --> 00:39:32,850 Mohu se zeptat svůj plug-in k provedení této příkaz na podkladové pracovní ploše 695 00:39:32,850 --> 00:39:36,510 a analyzovat informace , který byl vrácen z ní, 696 00:39:36,510 --> 00:39:40,300 a udělat něco s ním, a upravit Plug-in a chování, které jsem 697 00:39:40,300 --> 00:39:43,240 mám v plug-inu jako výsledek. DOBŘE. 698 00:39:43,240 --> 00:39:45,450 Tak uvidíme, jak se to stane. 699 00:39:45,450 --> 00:39:48,380 Viděli jsme to velmi jednoduché Seminář dávkový skript, který jsem 700 00:39:48,380 --> 00:39:51,080 [Neslyšitelný] že může skutečně spustit. 701 00:39:51,080 --> 00:39:54,560 >> A teď se podívejme, změny které jsou nutné se svázat dohromady 702 00:39:54,560 --> 00:39:57,620 s dialogovým oknem, a spusťte jej. 703 00:39:57,620 --> 00:40:02,030 Tak tady budeme dělat docela to samé, jako jsme viděli předtím. 704 00:40:02,030 --> 00:40:05,500 Ale všimněte si, že mezi věci, které jsem spotřebované now-- 705 00:40:05,500 --> 00:40:09,090 kromě dialogu, který Znovu jsem náhodou udělal dvakrát, 706 00:40:09,090 --> 00:40:14,300 který není necessary-- navíc k dialogu a příkazy 707 00:40:14,300 --> 00:40:17,780 a menu pluginy, které byly nutné v první pro mě 708 00:40:17,780 --> 00:40:21,560 definovat nový příkaz a injekci položky do menu, 709 00:40:21,560 --> 00:40:25,010 Mám také tento proc plug-in. 710 00:40:25,010 --> 00:40:28,500 >> A to proc plug-in umožňuje nám manipulovat procesů 711 00:40:28,500 --> 00:40:30,950 na podkladové instanci. 712 00:40:30,950 --> 00:40:34,970 Jsem připojen to jsem po jsem řekl, že můj plug-in vyžaduje. 713 00:40:34,970 --> 00:40:38,320 Já jsem pak jej připojit k kód, jak jsme viděli v hlavní funkce. 714 00:40:38,320 --> 00:40:40,970 Opět platí, že budu inicializovat můj dialog. 715 00:40:40,970 --> 00:40:45,500 A pokud se pohybujeme teď dolů, my Můžete vidět, jak tohle je něco jiného. 716 00:40:45,500 --> 00:40:49,040 Funkce zatížení je stejné, takže je to jen chystáte vytvořit příkaz 717 00:40:49,040 --> 00:40:54,250 a vytvořit položku menu a připojit že položka menu k tomuto příkazu. 718 00:40:54,250 --> 00:40:56,690 Ale pokud budeme teď rolovat dolů ukázat dialogu, 719 00:40:56,690 --> 00:40:59,990 můžeme začít vidět, kde Rozdíly vznikají. 720 00:40:59,990 --> 00:41:04,170 >> Máme funkci výstavní dialog, který se právě chystá ukázat dialog. 721 00:41:04,170 --> 00:41:12,410 Ale když jsem ukázat tento dialog, a když se nazývá výstava metoda, 722 00:41:12,410 --> 00:41:14,430 vystřelí funkci draw. 723 00:41:14,430 --> 00:41:18,990 A já jdu na zadejte nějaký obsah uvnitř to. 724 00:41:18,990 --> 00:41:21,910 Takže jsem prostě jít vytvořit div, poskytnout k němu 725 00:41:21,910 --> 00:41:24,020 některé základní text, Hello, world. 726 00:41:24,020 --> 00:41:27,250 Ale všimněte si, že tady nejsem se připojit k němu ID. 727 00:41:27,250 --> 00:41:32,350 A hned další řádek jdu zjistit, že ID pomocí JavaScriptu, 728 00:41:32,350 --> 00:41:36,210 a uložit tento objekt do další proměnné 729 00:41:36,210 --> 00:41:38,280 že jsem jen tak zavolat obsahu. 730 00:41:38,280 --> 00:41:41,780 >> Takže teď, když mám obsah, vše, co potřebujete udělat, 731 00:41:41,780 --> 00:41:46,100 Je jen upravit vnitřní HTML tohoto objektu. 732 00:41:46,100 --> 00:41:51,300 A dialog HTML bude pak být upraven také. 733 00:41:51,300 --> 00:41:55,500 Takže když to plug-in je pak je znázorněno, což se může stát 734 00:41:55,500 --> 00:41:59,820 a to je nová událost že je na tento nový plug-in, 735 00:41:59,820 --> 00:42:03,380 ale se děje v každém plug-in s dialog, kdy tento se nyní zobrazuje, 736 00:42:03,380 --> 00:42:07,100 Budu volat Funkce tzv načíst informace. 737 00:42:07,100 --> 00:42:10,520 A tato funkce je maso tom zde. 738 00:42:10,520 --> 00:42:14,930 Budu používat tento proc plug-in, jsme popsali dříve, což mimochodem, 739 00:42:14,930 --> 00:42:19,790 je opravdu jen knihovna Node.js že Cloud 9 používá zde. 740 00:42:19,790 --> 00:42:21,730 >> Takže se můžete skutečně vyhledat informace o tom, jak to 741 00:42:21,730 --> 00:42:25,340 funguje, pokud jdete do Node.js dokumentace 742 00:42:25,340 --> 00:42:29,220 a dívat se exec soubor Způsob pro procesy tam. 743 00:42:29,220 --> 00:42:33,110 Chystám se spustit tento specifický Příkaz, domácí Ubuntu pracovní prostor 744 00:42:33,110 --> 00:42:38,000 seminář, který je ten stejný člověk, který Stejný příkaz, který jsem vytvořil předtím. 745 00:42:38,000 --> 00:42:40,680 Poskytnout na ní aktuální pracovní adresář, jen 746 00:42:40,680 --> 00:42:45,440 být ultra bezpečné v termínech kontext, kde to běží. 747 00:42:45,440 --> 00:42:49,150 A jakmile která byla dokončena a vrátil se, 748 00:42:49,150 --> 00:42:54,040 Chystám se spustit tento Funkce tzv parse výstup. 749 00:42:54,040 --> 00:42:54,540 DOBŘE. 750 00:42:54,540 --> 00:42:58,670 Takže to pak bude provádět příkaz na místní, nebo spíše 751 00:42:58,670 --> 00:43:01,700 vzdálené instance Ubuntu. 752 00:43:01,700 --> 00:43:03,490 Až se vrátím trochu Informace, já jsem pak 753 00:43:03,490 --> 00:43:06,940 Zavolám samostatnou funkci volal parse výstup, že 754 00:43:06,940 --> 00:43:13,790 má tento podpis tady, ehm, stdout, stderr, 755 00:43:13,790 --> 00:43:15,910 a provádět některé výpočty na toto téma. 756 00:43:15,910 --> 00:43:18,930 Takže když jsem dostal chybu nějakého druhu vůbec, 757 00:43:18,930 --> 00:43:22,340 Já se skutečně zkontroluje, zda Chyba ve skutečnosti má některá data. 758 00:43:22,340 --> 00:43:27,204 A pokud ano, pak jsem se změnit vnitřní HTML tohoto obsahu objektu, který 759 00:43:27,204 --> 00:43:28,995 je si vzpomenete, my připojený k dialogu 760 00:43:28,995 --> 00:43:32,210 na instantiattion toho dialogu, nebo na první kresby 761 00:43:32,210 --> 00:43:33,370 tohoto dialogu. 762 00:43:33,370 --> 00:43:35,650 Budu jen říct, že nějaká chyba se stalo. 763 00:43:35,650 --> 00:43:37,140 >> Teď je to příliš zjednodušující. 764 00:43:37,140 --> 00:43:40,170 Chyba hodnota bude obvykle obsahují něco, co bylo užitečné, 765 00:43:40,170 --> 00:43:45,520 snad číslo chyby a Chyba z samotném skriptu. 766 00:43:45,520 --> 00:43:48,430 Nebo v případě, že skript napsal něco na standardní chyby, 767 00:43:48,430 --> 00:43:50,890 že data by být naplněna se tím, že parametrem i. 768 00:43:50,890 --> 00:43:53,765 A mohl bych být trochu více pozor, co chyb 769 00:43:53,765 --> 00:43:55,332 Já jsem vlastně ukázat lidem. 770 00:43:55,332 --> 00:43:57,415 Ale to zjednodušující příklad je dost dobré pro teď 771 00:43:57,415 --> 00:43:59,715 alespoň vidět, jak všechny tyto funkce. 772 00:43:59,715 --> 00:44:01,590 V opačném případě, pokud je zde žádná chyba, a pak jsem jen 773 00:44:01,590 --> 00:44:05,500 bude poskytovat syrové Výstup z této funkce 774 00:44:05,500 --> 00:44:10,070 do vnitřní HTML tohoto obsahu prvek, a pak aktualizovat své plug-in 775 00:44:10,070 --> 00:44:12,490 a ukázat, že tady. 776 00:44:12,490 --> 00:44:17,550 A to je docela hodně všem, co je nezbytné, aby si to spustit. 777 00:44:17,550 --> 00:44:22,860 A tak se pojďme přemýšlet o tom, poté jak to funguje, celkově. 778 00:44:22,860 --> 00:44:29,330 Při prvním jsem nahrál tento plug-in, stejně jako první plug-in, 779 00:44:29,330 --> 00:44:32,670 Chystám se přidat příkaz, který je k dispozici na cokoli, na jakékoli plug-in 780 00:44:32,670 --> 00:44:37,120 v Cloud 9, nazvaný CS50 Seminář Dialog 2, jehož zodpovědnost 781 00:44:37,120 --> 00:44:39,670 bude provozovat tuto výstavu dialogu, který je si vzpomínáte, 782 00:44:39,670 --> 00:44:42,730 bude skutečně ukáže dialog že jsem požádal níže. 783 00:44:42,730 --> 00:44:45,980 >> Pak jsem se dodat, že Příkaz do menu okna 784 00:44:45,980 --> 00:44:48,070 takže mám přístup k to. 785 00:44:48,070 --> 00:44:51,420 A když, že dialog požaduje, aby se zobrazí, 786 00:44:51,420 --> 00:44:55,170 Zatím přinesu nějaké informace od podkladové instance Ubuntu 787 00:44:55,170 --> 00:44:58,890 pomocí příkazu exec souboru. 788 00:44:58,890 --> 00:44:59,920 Omluvte mě. 789 00:44:59,920 --> 00:45:04,140 Jakmile to je se vrátil a dostanu nějaké informace, pak na straně klienta 790 00:45:04,140 --> 00:45:08,370 znovu, budu moci zpracovat výstup tohoto příkazu 791 00:45:08,370 --> 00:45:12,650 a aktualizovat vnitřní HTML prvků 792 00:45:12,650 --> 00:45:16,440 že jsme se připojit k dříve. 793 00:45:16,440 --> 00:45:19,910 >> A to, že jsme pak Tento plně funkční plug-in 794 00:45:19,910 --> 00:45:24,520 která mi umožňuje načíst informace Z tohoto libovolného skriptu 795 00:45:24,520 --> 00:45:27,170 že jsme vytvořili na Naše základní instance. 796 00:45:27,170 --> 00:45:29,660 Ale na druhou stranu, je to opravdu důležitý a rychlé klíč 797 00:45:29,660 --> 00:45:33,030 oddělit, kde každý z těchto věcí se děje, 798 00:45:33,030 --> 00:45:38,320 že máme všechny tyto straně klienta kód, který je spuštěn v prohlížeči 799 00:45:38,320 --> 00:45:41,640 a ještě nemá přístup se základním systému souborů 800 00:45:41,640 --> 00:45:44,895 dokud jsme vlastně spustit některé z nich příkazy, které jsou poskytované Cloud 801 00:45:44,895 --> 00:45:49,055 9 SDK jako proc, a některé ty ostatní které nám umožňují číst některé údaje, 802 00:45:49,055 --> 00:45:53,500 nebo přečíst některé soubory, pokud potřebujeme dělat nic takového. 803 00:45:53,500 --> 00:45:56,650 >> Nyní je to poněkud jednoduchý příklad. 804 00:45:56,650 --> 00:46:00,570 Existují i ​​jiné věci, které jsme by se možná chtít dělat stejně. 805 00:46:00,570 --> 00:46:03,470 Například, možná jsme vlastně chtějí ušetřit nějaké informace 806 00:46:03,470 --> 00:46:04,630 preferencím. 807 00:46:04,630 --> 00:46:07,900 Nebo snad chceme přidat nové podokno preference 808 00:46:07,900 --> 00:46:09,690 nebo něco v tomto směru. 809 00:46:09,690 --> 00:46:13,370 Tak to je něco, co vás Můžeš se podívat na Cloud 9 SDK 810 00:46:13,370 --> 00:46:15,300 získat více informací o. 811 00:46:15,300 --> 00:46:19,990 Ale to je opravdu dost, abyste mohli začít. 812 00:46:19,990 --> 00:46:26,410 Takže jen být trochu konkrétnější o tom, jak, že některé z těchto věcí 813 00:46:26,410 --> 00:46:31,370 funkce, chtěl jsem ukázat, ještě jeden příklad, který je jen některé 814 00:46:31,370 --> 00:46:35,580 kódu z Stats 50 plug-in. 815 00:46:35,580 --> 00:46:39,780 >> A tento kód je v podstatě Na základě těchto příkladů 816 00:46:39,780 --> 00:46:43,310 že jste vlastně viděli, ale má některé další záruky 817 00:46:43,310 --> 00:46:47,460 a má nějaké větší složitosti za účelem k dosažení některé z dalších věcí 818 00:46:47,460 --> 00:46:48,930 že chceme dosáhnout. 819 00:46:48,930 --> 00:46:54,510 Například, pokud chci být schopné uložit některá nastavení, 820 00:46:54,510 --> 00:46:57,700 pak musím mít přístup Do Nastavení plug-in, 821 00:46:57,700 --> 00:47:01,820 a pokaždé, když chci, přečíst nějaké nastavení, 822 00:47:01,820 --> 00:47:08,340 Mohu například připojit k různým Události v nastavení plug-in. 823 00:47:08,340 --> 00:47:13,630 Takže pokaždé, když je nastavení je červená, Například, ve svém vlastním plug-in, 824 00:47:13,630 --> 00:47:18,450 pokud budu číst některé nastavení z uloženého skladování 825 00:47:18,450 --> 00:47:24,540 preference uživatele, pak jsem si nastavit výchozí hodnoty pro konkrétní místo, 826 00:47:24,540 --> 00:47:31,250 pro specifické preference, v tom, že JSON Volby stylu soubor, který máme 827 00:47:31,250 --> 00:47:33,890 uložena dříve, že jsme viděli dříve. 828 00:47:33,890 --> 00:47:36,370 >> A když budu psát Některá nastavení do ní, 829 00:47:36,370 --> 00:47:40,440 Pak jsem can-- nebo jakmile zjistíme, že nastavení bylo napsáno 830 00:47:40,440 --> 00:47:44,420 to-- proto, že například, ty, které nastavení byly změněny uživatelem 831 00:47:44,420 --> 00:47:47,335 a to buď přímo v jejich nastavení soubor, nebo v podokně preference 832 00:47:47,335 --> 00:47:49,370 změnil nastavení soubor přímo, pak 833 00:47:49,370 --> 00:47:53,590 I může skutečně aktualizovat některé kódu nebo aktualizovat chování mého plug-in 834 00:47:53,590 --> 00:47:58,710 založené na těchto změnách, které došlo na souboru nastavení stejně. 835 00:47:58,710 --> 00:48:03,380 Ale opravdu, to ostatní je docela moc to, že jste již viděli. 836 00:48:03,380 --> 00:48:06,040 >> Přidáme trochu, snad něco, co je nového. 837 00:48:06,040 --> 00:48:09,440 Tak jsme přidat soubor předvoleb, či spíše panel preference, 838 00:48:09,440 --> 00:48:14,250 na okně voleb, což je opět můžete dozvědět více informací 839 00:48:14,250 --> 00:48:16,220 v Cloud 9 SDK mě číst. 840 00:48:16,220 --> 00:48:18,460 Ale všechno ostatní je docela hodně, pěkný 841 00:48:18,460 --> 00:48:25,810 podobné tomu, co jsme viděli předtím, jen s některými dalšími kontrolu chyb 842 00:48:25,810 --> 00:48:30,150 a některé dodatečné ochrany a některé další funkce 843 00:48:30,150 --> 00:48:33,314 do funkce všechny různé věci, které jsme viděli. 844 00:48:33,314 --> 00:48:35,230 Pokud nemáte ve skutečnosti Viděl to ještě, možná budete 845 00:48:35,230 --> 00:48:40,955 se divíte, co je základem Příkaz je v okně Statistiky 50. 846 00:48:40,955 --> 00:48:42,840 Je to vlastně fungovat. 847 00:48:42,840 --> 00:48:48,100 No, to je-- oh, sakra. 848 00:48:48,100 --> 00:48:49,410 Jedna sekunda. 849 00:48:49,410 --> 00:48:49,910 Počkej. 850 00:48:49,910 --> 00:48:52,270 DOBŘE. 851 00:48:52,270 --> 00:48:58,090 Dovolte mi, abych to posunout nahoru, takže můžeme vlastně uvidíme, co se stane, když jsem typ Statistiky 50. 852 00:48:58,090 --> 00:49:02,140 Všimněte si, že v tomto případě je příkaz, který jsem mimo uvedení 853 00:49:02,140 --> 00:49:06,310 je opravdu opět, jen skript, který je bude na výstup spoustu informací 854 00:49:06,310 --> 00:49:08,040 ve formátu JSON. 855 00:49:08,040 --> 00:49:10,800 A důvod, proč to děláme Tento způsob je, že proto, že jsme 856 00:49:10,800 --> 00:49:15,480 jsou v provozu, protože jsme písemné na straně klienta kód v JavaScriptu, 857 00:49:15,480 --> 00:49:19,500 můžeme velmi snadno jen analyzovat objekty JavaScript, 858 00:49:19,500 --> 00:49:23,050 a ve skutečnosti bylo možné manipulovat tyto objekty stejně jako bychom 859 00:49:23,050 --> 00:49:24,610 jakýkoliv jiný objekt JavaScript. 860 00:49:24,610 --> 00:49:27,650 >> A tak je to velmi pohodlné způsob poskytování nějaké informace 861 00:49:27,650 --> 00:49:31,950 z podkladové instance Ubuntu, jako je například číslo verze, hostiteli 862 00:49:31,950 --> 00:49:36,360 jméno, zda server naslouchá, to, co je server, tak dále a tak dále, 863 00:49:36,360 --> 00:49:39,150 a analyzovat, že velmi snadno a velmi rychle 864 00:49:39,150 --> 00:49:44,870 v plug-in, který je pak jít aby nám ukázal všechny tyto informace. 865 00:49:44,870 --> 00:49:47,920 Takže znovu, klíč Insight zde mít na paměti, 866 00:49:47,920 --> 00:49:54,260 je toto oddělení mezi základní instance, 867 00:49:54,260 --> 00:49:57,490 a také pokud kód je načten. 868 00:49:57,490 --> 00:49:59,870 Že když mám klienta, to je nejprve zatížení. 869 00:49:59,870 --> 00:50:03,951 Právě tento statický obrázek JavaScript z Někde, snad CDN nějakého druhu. 870 00:50:03,951 --> 00:50:06,450 My opravdu nemají na péči příliš mnoho o tomto prvním kroku. 871 00:50:06,450 --> 00:50:08,970 >> Jen Víme, že je to běžící na straně klienta 872 00:50:08,970 --> 00:50:12,740 a to je, když budu komunikovat s tímto instance přístavní dělník. 873 00:50:12,740 --> 00:50:15,970 Že budeme dělat tak přes Cloud 9 SDK. 874 00:50:15,970 --> 00:50:20,460 Nemáme vlastně mít schopnost, pomocí JavaScriptu nebo Node.js, 875 00:50:20,460 --> 00:50:21,750 zapisovat přímo do něj. 876 00:50:21,750 --> 00:50:29,400 Právě jsme se použít ty stávající SDK API k tomu, že akce, pro nás. 877 00:50:29,400 --> 00:50:32,490 A opět, jeden z opravdu důležité věci 878 00:50:32,490 --> 00:50:38,990 je, že když jsem vytvořil to, když jsem vytvořil tento plug-in, 879 00:50:38,990 --> 00:50:42,510 a jak jsem pracoval na tom, jeden z důležitých věcí, které se 880 00:50:42,510 --> 00:50:44,840 je vychovávat konzole JavaScriptu. 881 00:50:44,840 --> 00:50:49,400 >> Vzhledem k tomu, protože je to vše působící na JavaScriptu, 882 00:50:49,400 --> 00:50:54,700 na straně klienta, pokud mohu použít console.log method-- takže jen 883 00:50:54,700 --> 00:50:56,550 pro zobrazení příklad zde. 884 00:50:56,550 --> 00:51:07,630 Zkusme se mění tento jednoduchý plug-in také přihlásit některá data. 885 00:51:07,630 --> 00:51:09,895 A přidáme standardní výstup. 886 00:51:09,895 --> 00:51:13,010 887 00:51:13,010 --> 00:51:16,810 Takže pojďme změnit, že je to tady. 888 00:51:16,810 --> 00:51:19,560 Teď, když jsem se spustit console.log, mějte na paměti, 889 00:51:19,560 --> 00:51:21,630 že protože je spuštěn na straně klienta, 890 00:51:21,630 --> 00:51:24,900 Budu vidět v mé vlastní JavaScript konzole, což 891 00:51:24,900 --> 00:51:28,540 je, jak jsem se pak bude moci se snaží řešit a ladění 892 00:51:28,540 --> 00:51:30,330 některé z problémů, které mám. 893 00:51:30,330 --> 00:51:34,110 >> Všimněte si, že proto, Jsem v režimu SDK, já jsem 894 00:51:34,110 --> 00:51:37,820 pak schopný manipulovat modulů plug-in v této instance. 895 00:51:37,820 --> 00:51:39,800 Takže i když je uložené na tomto stupni, 896 00:51:39,800 --> 00:51:47,130 To je jeden příklad toho, že předchozí pravidlo porušována, kde se Cloud 9 897 00:51:47,130 --> 00:51:51,030 SDK bude skutečně tahat plug-inů od základní instanci a pak spustit je. 898 00:51:51,030 --> 00:51:54,440 Takže tímto způsobem, já jsem pak schopen manipulovat a postavit 899 00:51:54,440 --> 00:51:55,750 Některé moduly plug-in zde. 900 00:51:55,750 --> 00:51:58,080 Ale aby mě vidět aktualizace tohoto plug-in, 901 00:51:58,080 --> 00:52:01,880 protože je to na straně klienta, Musím kromě toho, že plug-in 902 00:52:01,880 --> 00:52:04,950 a pak znovu načíst celý pracovní prostor, tak, aby se nový plug-in je pak 903 00:52:04,950 --> 00:52:09,230 stáhnout do mého klienta, na můj webový prohlížeč, a pak je používán. 904 00:52:09,230 --> 00:52:14,460 >> Takže teď, když jsem se na tomto semináři klikněte Dialog 2, stále vidět. 905 00:52:14,460 --> 00:52:21,311 Ale teď doufám, že ve svém JavaScriptu dialogu, měli bychom vidět my-- čekat, 906 00:52:21,311 --> 00:52:21,810 Počkej. 907 00:52:21,810 --> 00:52:24,420 Budu muset otevřít dialog čerstvé. 908 00:52:24,420 --> 00:52:30,230 Měli bychom se podívat na moje přijatá data zde. 909 00:52:30,230 --> 00:52:32,780 Přijatá data, Hello, Dan, který je si vzpomínáte, 910 00:52:32,780 --> 00:52:37,770 Byla to console.log operace, která jsme požádali v plug-inu. 911 00:52:37,770 --> 00:52:42,140 Takže tento popis pak že jsem se zmínil dříve, 912 00:52:42,140 --> 00:52:45,460 Tento dialog, nebo to spíše schéma, které jsem 913 00:52:45,460 --> 00:52:49,140 již bylo zmíněno dříve, je, co se stane. 914 00:52:49,140 --> 00:52:53,150 Ale je to důležitá Výjimka pouze pro vývoj, 915 00:52:53,150 --> 00:52:55,490 což je to, že plug-in sám by mohl ve skutečnosti 916 00:52:55,490 --> 00:52:59,160 být uloženy na instanci Docker dočasně, protože podle všeho Cloud 9 917 00:52:59,160 --> 00:53:02,210 nechce, abychom byli schopni manipulovat s objekty na jejich CDN. 918 00:53:02,210 --> 00:53:08,650 >> A Cloud 9 klienti, po načtení, bude najít ty zásuvné moduly v tom. 919 00:53:08,650 --> 00:53:11,540 C9 plug-in složky a vložte ty. 920 00:53:11,540 --> 00:53:15,780 Ale ti jsou stále děje pouze na straně klienta. 921 00:53:15,780 --> 00:53:19,440 Takže je to jen AN výjimkou, že se vyskytuje pouze 922 00:53:19,440 --> 00:53:23,220 pro rozvoj Cloud 9 plug-inů. 923 00:53:23,220 --> 00:53:25,000 Ale zbytek z time-- a důvod 924 00:53:25,000 --> 00:53:26,708 že chceme opravdu kladivo tento home-- 925 00:53:26,708 --> 00:53:30,140 je proto, že po většinu času je bude spuštěn od CDN, 926 00:53:30,140 --> 00:53:33,030 a právě chystá spustit čistě ze strany klienta. 927 00:53:33,030 --> 00:53:36,110 >> Normálně tam bude žádná interakce s plug-in, 928 00:53:36,110 --> 00:53:39,840 nebo tam ani nemusí být jakýkoli Důvod, že plug-ins sebe 929 00:53:39,840 --> 00:53:42,970 jsou ve skutečnosti uložena na základní instanci přístavní dělník, 930 00:53:42,970 --> 00:53:47,240 s výjimkou v případě tento vývoj SDK. 931 00:53:47,240 --> 00:53:51,510 Takže znovu, to se změní jen mírně vzhledem k tomu, 932 00:53:51,510 --> 00:53:54,650 že nám dochází režim SDK. 933 00:53:54,650 --> 00:53:57,160 Bude to pak načíst těm modulů plug-in od vývoje, 934 00:53:57,160 --> 00:54:01,690 a jediným cílem je, aby se Mohu použít Cloud 9 k tomu rozvoje 935 00:54:01,690 --> 00:54:04,620 pro Cloud 9 pluginy. 936 00:54:04,620 --> 00:54:07,220 Ale i tak se tím nemění Znovu, jak tohle všechno funguje. 937 00:54:07,220 --> 00:54:09,650 Je to stále spuštěn zcela na straně klienta. 938 00:54:09,650 --> 00:54:16,260 >> To jen znamená, že pokud chci vytvořit Cloud 9 plug-iny v Cloud 9, 939 00:54:16,260 --> 00:54:19,320 I vytvořit tyto plug-iny, dát do mého. 940 00:54:19,320 --> 00:54:25,110 C9 složky / plugins v mém domě adresář, ujistěte se, že jsem v režimu SDK, 941 00:54:25,110 --> 00:54:29,290 stránku znovu načíst pokaždé, když jsem vlastně provést změny tohoto plug-in, 942 00:54:29,290 --> 00:54:33,590 a uvidíme, co se stane v můj konzole JavaScript. 943 00:54:33,590 --> 00:54:36,240 Jen řídit můj JavaScript utěšit, aby se ujistil 944 00:54:36,240 --> 00:54:38,930 že každém odstraňování poruch Informace, které jsem místo ke konzole, 945 00:54:38,930 --> 00:54:41,920 nebo cokoli jiného, ​​co by mohlo nastat kvůli chybám, které jsem napsal 946 00:54:41,920 --> 00:54:44,940 v mém kódu nebo podobně, zobrazí se zde. 947 00:54:44,940 --> 00:54:48,007 >> A s tím, je to opravdu natolik, aby mohli začít, myslím, 948 00:54:48,007 --> 00:54:49,090 s Cloud 9 plug-inů. 949 00:54:49,090 --> 00:54:53,120 Zvláště při pohledu na SDK dokumentace, která Cloud 9 nabízí. 950 00:54:53,120 --> 00:54:56,650 Je to skvělý způsob, jak dostat začala, a velmi snadno 951 00:54:56,650 --> 00:54:59,900 vytvořit některé zásuvné moduly pro Cloud 9. 952 00:54:59,900 --> 00:55:02,820 A s tím, bych rád poděkoval vám všem děkuji za mě spojování. 953 00:55:02,820 --> 00:55:05,550 Doufám, že se budete bavit psaní plug-inů pro Cloud 9. 954 00:55:05,550 --> 00:55:09,600 Možná, že zlepšování plug-iny že nyní máme, nebo možná dokonce 955 00:55:09,600 --> 00:55:11,360 Přidejme nějakou funkci vlastní. 956 00:55:11,360 --> 00:55:14,540 Těšíme se na setkání co to je, co vytvořit. 957 00:55:14,540 --> 00:55:16,330 Do té doby, ahoj. 958 00:55:16,330 --> 00:55:18,734