>> DAN Armendáriz: Hello, u jilqgħu għall seminar CS50 fuq Customizing Cloud 9,
u l-IDE CS50.
Hekk illum aħna qed tmur biex biss jitkellmu ftit
dwar xi wħud mill- informazzjoni teknika li
tmur wara l-arkitettura ta Cloud 9, u kif
aħna għandna implimentati xi wħud mill-plug-ins bħala parti mill-Cloud 9, biex jipprovdi IDE CS50.
Mela ejja biss jaqbżu dritt u jibda jitkellem dwar plug-ins.
>> Allura plug-ins huma verament fil- qalba tal-esperjenza Cloud 9.
Cloud 9 hija t-teknoloġija sottostanti li jipprovdi lilna l-IDE,
u wkoll il-tieqa terminal fil- qiegħ, flimkien mal-workspace--
l Ubuntu workspace-- li aħna użu li jiġbru l-proġetti tagħna
u jwettaq settijiet problema tagħna, jitlesta settijiet problema tagħna.
Iżda fil-qalba ta 'kull ta 'dan, l-teknoloġija
huwa verament biss mazz ta 'plug-ins.
Kollox huwa plug-in li tista 'tiġi modifikata,
estiż, inti tista 'toħloq stess plug-ins tiegħek,
inti tista 'tneħħi l-oħra plug-ins, li verament tbiddel
pjuttost ħafna tal-funzjonalità tal-Cloud 9 IDE eżistenti.
>> Allura dan huwa eżistenti Sħaba 9 ambjent.
Dan huwa verament ftit l- default Cloud 9 ambjent.
U tagħti ħarsa lejn kif fil-fatt huwa differenti mill-IDE CS50.
Allura dan huwa l-IDE CS50.
Avviż li hemm xi viżwali bidliet bejn l-9 regolari Cloud
ambjent u l-IDE CS50.
Speċifikament, inti ser Avviż ftit bidliet.
L-ewwelnett, hemm inqas oġġetti menu li tibda bil.
Hemm fil-fatt mod li tista 'tbiddel dan.
Huwa sejjaħ sempliċi Mode.
>> Konvenzjonalment, sempliċi Mode hija ppermettiet, u li tissimplifika xi wħud mill-oġġetti menu.
Hi tneħħi xi wħud mill- dawk l-aktar avvanzati,
minħabba franchement, ħafna istudenti li huma ġejjin fil
u m'għandhomx bżonn tkun taf dwar xi mill-aktar karatteristiċi avvanzati
mhumiex megħlub bil-mazz ta 'għażliet.
Iżda aħna ma jipprovdu l-kapaċità li jieħdu off dawk ir-roti ta 'taħriġ hekk imsejħa
u neħħi li scaffolding sabiex in-nies
tista 'ssir iktar imdorrija il-karatteristiċi avvanzati ta 'l-IDE.
Immedjatament lill- dritt ta 'dan, hemm
wkoll buttuna debug, li fil-Cloud standard
9 ambjent huwa sempliċement imsejħa run.
Iżda fil-kontumaċja, għandna konfigurati il-buttuna debug fil-IDE CS50
biex iġibu l-debugger, awtomatikament jikkompilaw l-kodiċi tas-sors,
qabbad il-debugger għall-GDB-- sottostanti
u peress li l-ġirja biex iwettqu l debugging-- u xi passi oħra
kif ukoll.
Ukoll l-tieqa terminal fil- very-- jew pjuttost il terminal
tab fil-taqsima jikkontrolla fuq il- tieqa fil-qiegħ nett tal-iskrin,
ssemma mill-ġdid li sempliċement tkun terminal.
Billi fl-istandard Cloud 9 ambjent,
fil-fatt turi l- running applikazzjoni.
Dan il-mod, hi tissemplifika, għal darb'oħra, l-GUI, biss ftit.
>> Aħna wkoll miżjuda xi buttuni lejn il-lemin ta 'fuq tal-IDE
li juru xi informazzjoni bażika dwar l-istanza sottostanti.
U wkoll aħna kienu jneħħu waħda mill-għażliet fuq l-oġġetti
minn-lemin.
Allura kollha ta 'dan huwa implimentat mhux billi timmodifika neċessarjament l Cloud 9
kodiċi tas-sors, iżda minflok permezz ta 'koppja
ta plug-ins li għandna implimentati matul l-aħħar sena jew hekk.
U Cloud 9 ospitat u għandha tmexxija fil-workspace CS50.
Jew pjuttost fil-postijiet tax-xogħol li huma indikati bħala CS50 IDES.
>> Allura verament dak l-differenza ewlenija bejn il-Cloud 9 u l-CS50
postijiet tax-xogħol.
Hemm ukoll, fis-sottostanti Pereżempju, il-bidla ewlenija hija
li aħna jinstallaw xi oġġetti minn qabel konfigurati bħal GDB,
u xi affarijiet bażiċi oħra li ħloqna, bħal Update 50,
u l-koppja ta 'passi oħra li jagħmlu l-esperjenza kollha ftit aktar
unifikata.
Iżda b'mod ġenerali, din hija biss modifika ta 'sistema eżistenti
li Cloud 9 ħoloq għalina.
Dak li aħna qed tmur biex juru ftit aktar tard
huwa kif fil-fatt joħolqu plug-in kemmxejn bażiku li
jippermetti li daħħal xi ħaġa fil- sistema menu, u jiftħu djalogu.
U jekk aħna għandna biżżejjed ħin, aħna ser fil-fatt
tara kif nistgħu timla dik djalogu ma 'xi informazzjoni
mill-każ sottostanti.
Sabiex għalina biex jiksbu għal dak punt, ejja ewwel nitkellmu ftit
dwar l-arkitettura ta 'Cloud 9.
>> Allura l-mod li aħna qed jintużaw li interazzjoni ma Cloud 9
huwa kompletament permezz tal-klijent.
Aħna jiftħu web browser, aħna tip fil-CS50.io.
Aħna eventwalment, wara awtentikazzjoni, huma ppreżentati ma 'l-IDE.
Iżda jirrealizzaw li hemm ftit passi
li fil-fatt tikseb magħna biex dan il-punt.
L-ewwel ħaġa hi li klijent tiegħi, il-web browser,
fuq talba u wara awtentikazzjoni, tagħbijiet il GUI u l-plug-ins
minn xi CDN, minn xi Netwerk Kunsinna Kontenut.
Dan jista 'jkun franchement kullimkien.
>> U dan huwa effettivament separata mill-każ sottostanti.
Huwa importanti li tirrealizza li dan huwa attwalment biss mazz ta 'fajls statiċi.
Huwa mazz ta JavaScript li huwa jitniżżel mill-CDN
fuq il-web browser tiegħi, u kollha tal-GUI li inti
tara here-- dan huwa verament key-- kollha tal-GUI li tara hawn
hi mmexxija fuq il-naħa tal-klijent.
Dak kollu li għandek tara fil-Cloud 9 workspace
huwa attwalment tmexxi fil-browser.
U xi ħaġa li inti tibgħat tul tal-każ sottostanti
tkun ikkomunikata bil-istanza flimkien dan it-tieni kanal separat,
u mbagħad salvati fuq din l-istanza Docker.
>> Allura r-raġuni li jien tgħid dan huwa eżempju Docker
huwa li t-teknoloġija sottostanti ma jkunx qiegħed juża magni virtwali,
iżda minflok qed tuża teknoloġija msejħa Docker,
li bażikament allows-- l-eqreb analoġija huwa magna virtwali.
Iżda huwa sottili differenti f'dak hemm
ħafna opportunitajiet biex tmexxi kombinazzjoni ta 'Docker differenti
każijiet fuq magna waħda.
U jistgħu jiġu mibruma up f'suċċessjoni rapida ħafna.
Mhuwiex pjuttost aktar differenzjazzjoni stretta
bejn istanzi Docker differenti kif hemm fil-magni virtwali,
iżda xorta hemm ħafna ta ' divrenzjar u s-separazzjoni
bejn dawn l-istanzi differenti.
KOLLOX SEW.
Allura l-żewġ passi hawn li huma importanti li tirrealizza
hija li meta immorru CS50.io, aħna tniżżil l-GUI u l-plug-ins,
li huma miktuba fil JavaScript, fuq għall-browser jew fil lill-browser.
U dan huwa forsi ftit megabytes jiswew ta 'informazzjoni.
F'dak il-punt, ladarba l-GUI għandha mgħobbija u l-plug-ins bdew,
imbagħad jibda jikkomunikaw ma l-istanza Docker, li ma
neċessarjament ikunu l-istess server.
>> Issa hemm eċċezzjoni waħda għal dan.
Nistgħu ngħidu jkollhom kemm l- mekkaniżmu tat-twassil għall-GUI innifsu
u l-istanza Docker fil kollha tas-server istess, li
hija xi ħaġa li nagħmlu għall-verżjoni offline ta 'Cloud 9.
Dan mhux xi ħaġa li konna pubbliċità ħafna dan Fall,
imma aħna wkoll ikollhom Verżjoni offline li
jippermettilek li tniżżel ppakkjati verżjoni ta 'kollha ta' dawn l-affarijiet
u jippermetti li inti tmexxi Cloud 9 f'ambjent offline.
>> Nimxu dan off-sħaba u fuq magna lokali tiegħek għandha xi impatt.
B'mod partikolari, inti ebda itwal jkollu l-abbiltà
biex jaqsmu workspace tiegħek ma 'oħrajn.
Inti ma tistax tiftaħ Cloud 9 minn, u l-IDE CS50, minn kwalunkwe kompjuter
u tara l-istess fajls li inti kienu qed jaħdmu ma 'qabel.
Iżda minflok taħdem għal kollox fuq magna lokali tiegħek stess
mingħajr il-bżonn aċċess għall-internet.
Iżda xorta anki f'dak il-mudell, anke għalkemm aħna għandna magna virtwali wieħed
li huwa essenzjalment running dawn l-affarijiet.
>> Għandna server separat li twassil essenzjalment l-Cloud 9
kontenut, u allura aħna ikollhom eżempju Docker
li huwa responsabbli għall-komunikazzjoni ma 'dak IDE għall-aħħar lura.
KOLLOX SEW.
Allura l-GUI kollu huwa miktub kollox fl JavaScript
użu Node.js u l Cloud 9 SDK, li aħna ser tingħata biex fi ftit minuti.
U kollha ta 'l-plug-ins huma mmexxija fuq il-naħa tal-klijent.
Mela ejja tiffoka imbagħad ftit billi wieħed jassumi
li din l-ewwel pass għandu attwalment mitmum b'suċċess,
u ħarsa biss f'dan Docker istanza.
>> Allura f'dan il-każ, din huwa l-mod standard
ta 'ħsieb dwar kif isir Cloud 9 plug-in iżvilupp huwa li inti tmur
li jkun miktub kodiċi li ser jitmexxew browser l-utent,
u inti għandek l-opportunità ta ' tuża xi APIs li jikkomunikaw
bl-Docker każ sottostanti, run xi kodiċi hemmhekk, u tagħmel xejn
li inti tista 'tixtieq li tagħmel.
Allura dan se jkun kuntest li aħna ser
tkun qed tuża għall-bqija ta 'dan talk.
U biss iżommu dan il-mudell f'moħħu.
Dan se jkun importanti ħafna fi ftit minuti.
Hemm ftit links Irrid biex turi li inti.
L-ewwelnett, Cloud 9 ipprovda pjuttost ħafna ta 'dokumentazzjoni
li pjuttost tajba, li turi kif tagħmel żvilupp plug-in bażiku.
Mela jekk inti tmur biex dan il-URL, cloud9-sdk.readme.io,
tkun taf tara d-dokumentazzjoni hemmhekk.
U ħafna ta 'din l-informazzjoni li int ser tara
jistgħu jinstabu wkoll hemm, flimkien ma 'aktar.
Tista 'ssib ukoll is-sors miftuħ verżjoni ta 'Cloud 9 f'dan URL,
github.com/c9/core, li nużaw bħala parti tal-verżjoni offline ta 'l-IDE,
sabiex inti ser ikunu jistgħu jkollhom l-istess Cloud 9 esperjenza,
iżda b'mod offline.
Kull dritt.
Mela ejja tagħti ħarsa lejn attwali Cloud 9 workspace hawn.
U għal darb'oħra, nixtieq li jiġi out ftit affarijiet.
Dan huwa, dritt hawn, a IDE normali CS50.
U jien b'diżabilità inqas modalità komda taħt il-menu View
sabiex I jista 'jara l mill-għażliet menu.
Dak li nixtieq biex turi li inti dritt issa huwa ftit affarijiet.
First off, jekk immur fis l Preferenzi u mbagħad
ikklikkja fuq Plug-in maniġer, u tip CS50 hawn,
nistgħu naraw li hemm, fil-fatt, ftit CS50 plug-ins li
ġew installati u running tagħna biex jippermettu l-modifiki li konna
tidher għall-IDE CS50.
>> Dritt issa essenzjalment hemm żewġ plug-ins li qed jitħaddmu.
Hemm wieħed imsejjaħ sempliċi, li huwa l-mod simplifikata li
jippermettilek li tnaqqas in-numru ta 'għażliet menu tul il-quċċata,
u dan hekk imsejħa Mod inqas komdi.
U allura hemm ukoll CS50 Stats, li huwa forsi biss ftit misnamed.
Minħabba li dan huwa dak li turi li inti l-informazzjoni
dwar il-workspace sottostanti.
Hija injects dawn il-buttuni tul il-lemin ta 'fuq.
Hija injects wkoll oġġett menu fil- oġġett tieqa, fil-menu Tieqa
dritt hawn, CS50 IDE Info.
U huwa responsabbli għall instantiating dan id-djalogu li aħna stajt tidher hawn,
bl-informazzjoni kollha li aħna qed imdorri jara fil-IDE CS50
workspace.
KOLLOX SEW.
Allura hemm attwalment wieħed aktar plug-in li għandna żviluppati kif ukoll.
U hemm ftit oħrajn li irridu wkoll ma jinħelsux pubblikament.
Iżda wieħed minnhom huwa l-globali plug-in li tippermetti GDB li jiffunzjonaw.
Allura wieħed mill-aspetti ta Cloud 9 hija li huma pprovdew diġà
dan GUI biex timplimenta debugger.
U wieħed mill-plug-ins li ħloqna bażikament
ganċijiet GDB ma 'dan GUI Verżjoni ta 'debugger bbażata.
U huwa responsabbli għall-medjazzjoni kollha tat-talbiet li utent jista 'jkollhom,
bejn titjib fuq jew ħolqien breakpoints jew xi ħaġa
f'dan is-sens, għal traduzzjoni li biex jikkmanda li GDB jistgħu jifhmu,
ħruġ dawk jikkmanda lill GDB.
U hekk kif GDB joħroġ rispons, imbagħad
aħna tinterpreta dan u jaġġorna l-GUI kif meħtieġ.
>> Li probabbilment wieħed mill l aktar ikkumplikat
mill-plug-ins, hekk minflok dak li aħna qed ser tiffoka fuq illum huwa fil-fatt
l Stats plug-in, u aħna ser nitkellmu ftit dwar Sempliċi, kif ukoll.
So I imsemmi qabel, u I really jixtiequ biex jagħmlu ħafna, ċara ħafna, li għal darb'oħra,
kollha ta 'dan li aħna qed jaraw hawnhekk huwa essenzjalment
joperaw fuq il-naħa tal-klijent.
We do tara tieqa terminal hawn taħt, u li, naturalment,
jekk aħna tip fil jikkmanda fis li, li se jiġu mbagħad tinħareġ
tal-każ sottostanti.
Bl-istess mod, jekk irridu tiftaħ fajl ġdid u tip xi għalf inkorporat fih u isalvawh,
dan il-fajl se jiġu ffrankati fuq l-istanza sottostanti.
>> Imma l-editur innifsu, dan tieqa terminal innifsu,
hija kollha implimentat JavaScript u hija kollha plug-in
li nistgħu jinteraġixxu ma ', u għalhekk jimmodifika.
Hemm ħafna ta 'estensjoni hawn.
I jirrakkomandaw tieħu ħarsa fil-kont GitHub Cloud 9 ta
biex tara d-kwantità kbira ta ' plug-ins li huma disponibbli,
u kemm ukoll bil-miktub ħafna tal-kodiċi hija għal estensjoni.
Allura hemm xi ħaġa li nixtieq insemmi
dwar dan ukoll, li hija li hemm ħafna of-- hemm
ħafna ta 'funzjonalità li l- sakemm fil-preferenzi
tieqa, li aħna stajt tidher biss allużjoni għal ftit ftit minuti ilu.
>> Waħda mill-affarijiet li nistgħu nagħmlu bħala IDE iżviluppaturi, jew bħala Cloud 9 iżviluppaturi,
huwa li attwalment tinjetta xi pannelli preferenza ta 'tagħna stess.
Allura l-mod sempliċi, jew il-mod inqas komdi,
u wkoll l-informazzjoni IDE, jew l-stats plug-in,
għandha kull xi preferenza panels li jippermettu magħna biex jimmodifikaw
l-imġieba ta 'kull wieħed minn dawn.
Int ser ikollok avviż li jekk immur il- Preferenzi u mur settings utenti,
hemm tab CS50, wieħed li tgħid informazzjoni IDE.
U nista 'tbiddel l- rata tar-riffriskar informazzjoni.
>> Effettivament, dak li qed jiġri fil-stats plug-in
hija li kull n-sekonda, fejn n-sekonda hija definita minn din il-preferenza
panel, informazzjoni qed fetched mill-każ sottostanti, qed tintbagħat
lura lill-naħa tal-klijent, l plug-in hija mbagħad
interpretazzjoni tal-informazzjoni mill-każ sottostanti
u aġġornament tal-GUI kif meħtieġ.
Nistgħu naraw dan id-dritt issa din hija stabbilita 30 sekonda, u dak l-default.
Imma I definittivament jistgħu jibdlu kif malajr dan jiġri biss
billi timmodifika dan il-valur.
>> Issa waħda mill-affarijiet interessanti hija li dan il-panel preferenza, GUI,
huwa verament ftit verżjoni GUI ta 'lott ta' settings sottostanti
li huma ppreżentati fil JSON.
Mela jekk immur, per eżempju, taħt il- CS50 IDE menu, jew il-Cloud 9 menu,
skond liema Verżjoni qed tfittex fi,
u jmorru f'wieħed minn dawn settings-- f'dan il-każ,
il-proġett settings-- l settings proġett f'dan il-każ
tapplika għall-settings għal dan workspace wieħed.
Billi japplikaw settings utent kollha ta 'l postijiet tax-xogħol
li jista 'jkollok fil-kont tiegħek.
>> Hekk biss bħala twarrib hawn, li tkun extra ċara,
hemm separazzjoni bejn il- tnejn minħabba li għalkemm fil-kontumaċja aħna
jkollhom workspace waħda, li huwa l-IDE CS50, jekk inti
kienu ikklikkja fuq ftit tiegħek avatar up hawn u mur daxxbord,
inti ser issib li inti tista 'attwalment joħolqu postijiet tax-xogħol addizzjonali kif ukoll.
Tista 'tara hawn li jien jkollhom IDE 50 workspace, u wkoll
għall-finijiet ta 'dan seminar, workspace
imsejħa workspace, li huwa dritt hawn.
Allura xorta, I jkollhom preferenzi differenti.
Kull wieħed minn dawn jista 'jkollhom preferenzi separati proġett,
iżda l-preferenzi utent huma maqsuma fost postijiet tax-xogħol kollha tiegħi.
Mill-mod, dan huwa wkoll ferm handy jekk inti
jixtiequ joħolqu workspace ma għażliet differenti customisation.
U huwa ferm handy biex toħloq spazju ta 'xogħol ġdid.
U jagħżlu waħda li tista 'tkun minn qabel konfigurati b'xi mod ieħor,
forsi għal PHP speċifiku, jew Django speċifikament.
Jew anki sempliċement custom.
Il workspace CS50 template hija dik li aħna
użu li awtomatikament jinstalla Aġġornament 50 u kollha ta 'l-settings
li għandna hemmhekk, inkluż l- plug-ins li għandna għall-IDE CS50.
KOLLOX SEW.
Imma ejja terġa 'lura għal dan.
Għalhekk għal darb'oħra, hemm proġetti settings, u dawk huma dawk
li aħna qed iħarsu lejn hawn.
U avviż li hemm huma mazz ta 'settings,
ħafna minnhom jikkorrispondu għal preferenza pannelli, iżda mhux kollha kemm huma.
Iżda nistgħu naraw li hawn, fil this-- oh no, ma I poġġih fil-settings utent?
Forsi I poġġih fil-settings utent.
U dan, here we go.
Fil-settings utent, nistgħu tara li għandna sezzjoni CS50,
u dan qed jiġi miktub li minn dawn Cloud 9 plug-ins
li konna implimentati.
Hemm il-waħda sempliċi biex jikkorrispondu ma 'dak sempliċi plug-in,
u l-stats wieħed li jikkorrispondi ma 'dak GUI bbażati
verżjoni tal-bord preferenza.
Ir-rata tar-riffriskar, f'dan każ, huwa stabbilit għal 20 sekonda.
>> Dan huwa, wieħed jittama, l- bidu ta 'xi informazzjoni
li aħna ser attwalment tara fil-ftit ftit aktar dettall, mumentarjament.
KOLLOX SEW.
Mela ejja ngħidu li rridu fil-fatt tikseb jistabbilixxi lilu.
Aħna nifhmu li kollha ta 'l-għalf li qed jiġri fuq il-naħa tal-klijent
isir attwalment fuq il-browser, li ifisser li kwalunkwe plug-ins li nikteb
ser tkun miktuba bl-browser f'moħħu.
U jekk I attwalment tixtieq li tagħmel xejn fuq il-workspace,
I se forsi jkollhom biex tinbeda xi tip ta 'komunikazzjoni
bejn il-browser u l workspace li jkun żgur
li din hija fil-fatt għamlet.
Imma ejja ngħidu li issa I rridu nġibu jistabbilixxi lilu
u fil-fatt joħolqu ewwel plug-in my.
Ukoll, il-mod li inti tkun kapaċi biex tagħmel dan huwa attwalment pjuttost faċli.
Huwa mogħti fil-Cloud 9 SDK.
Iżda huwa li tieħu tiegħek isem eżistenti workspace, li
huwa l-URL li inti għandek fil-quċċata tal bar tiegħek, u żid dawn li ġejjin lilha.
?
SDK = 1 & debub = 2.
Issa dak li dan se jippermetti hu li l-SDK = 1 fil-fatt se tistabbilixxi l-SDK
modalità li veru, li se jippermetti ftit affarijiet addizzjonali.
U debug = 2 se jippermetti messaġġi ta 'żball li tkun xi ftit aktar verbose.
>> U hekk jekk inti iġibu l-JavaScript console fil Chrome iżviluppatur tiegħek tab,
inti fil-fatt se tkun tista ' tara ħafna aktar informazzjoni
milli suppost kieku.
So I jirrakkomandaw tidwir kemm ta 'dawn fl-istess ħin, minħabba li verament
Huwa utli li jkun dan kollu informazzjoni addizzjonali.
Huwa importanti li wieħed jinnota, madankollu, li tidwir fuq debug għall-valur ta '2
ifisser li huwa ħafna verbose, u fil-fatt
kemmxejn se notevoli jrattab IDE tiegħek, speċjalment meta titgħabba
jew meta tagħmel tagħmel ħidmiet tqal.
Hekk biss iżommu dan f'moħħhom.
Huwa utli għall-iżvilupp, iżda inti ma tista 'tixtieq li jkollhom fuq il-ħin kollu.
>> Mela ejja fil-fatt jagħmlu dan.
Iżda f'dan il-każ, I attwalment jkollhom diġà twaqqaf workspace ma 'dan.
Mela ejja ara, SDK = 1 & debug = 2.
Ma 'koppja ta' plug-ins nisperaw diġà installat.
Kull dritt.
Allura issa li stajt mdawwar fuq il-debug SDK modalità, avviż li aħna fil-modalità debug,
hekk nistgħu nħarsu lejn l-għodod DEV biex tara kwalunkwe żbalji, li se nagħmel offscreen.
Nistgħu naraw li hemm mazz ta 'żbalji hawn.
Issa huwa attwalment pretty komuni għall Cloud 9 li jkollhom koppja ta 'żbalji,
u jien ma tinkwieta dwarhom sakemm inti
tara xi ħaġa li tista ' ikunu speċifiċi għas-plug-in
li jiġri li tkun ħolqien.
>> Allura hawnhekk, per eżempju, irridu jiksbu ftit 404s-- ma nstabx.
Naraw aħna qed kapaċi tagħbija xi informazzjoni off l-istanza sottostanti
innifsu.
U hemm mazz ta 'addizzjonali informazzjoni, iżda aktar ta 'dan aħna qed
fil-fatt se jinjora għal issa.
Minħabba li dan huwa pretty komuni għal workspace
li jkollhom biss ftit żbalji.
KOLLOX SEW.
Jien ser jimxu dan out ta il-mod u terga 'lura hawn.
U issa l-mod faċli, il-sbieħ ħaġa dwar li jkollhom din iżviluppatur
modalità ppermettiet huwa li hija tippermetti me li faċilment joħolqu plug-in ġodda.
>> So filwaqt li qabel I attwalment ma jkollhom dan il-ġdid għażla plug-in disponibbli,
li nistgħu naraw jekk immur lura għall mhux modalità iżviluppatur tiegħi hawn fuq,
hemm l-ebda ġdid plug-in.
Billi tippermetti l-modalità SDK, I jkollhom plug-in ġodda disponibbli
u I tista 'faċilment joħolqu wieħed.
F'dan il-każ, hemm koppja ta 'għażliet differenti, sempliċi,
vojta plug-in, full-plug-in, installatur, Cloud 9 gozz.
Ejja biss jagħżlu vojta plug-in għal issa
sabiex inkunu nistgħu naraw ħafna Verżjoni sempliċi ta 'wieħed.
>> Issa avviż li tul il- naħa tax-xellug li issa hemm
xi ħaġa taħt Favourites, li huwa elenkar ftit plug-ins
li issa huma disponibbli għalija.
Jekk I jespandu dan, aħna se tkun tista 'tara dawk.
Issa nixtieq li avviż xi ħaġa hawn, li
hija li dan mhuwiex fil-fatt tinsab fi ħdan il-direttorju workspace
fuq tiegħi sottostanti eżempju Ubuntu, iżda hija mdaħħla fuq il-hard drive.
U fejn dan ikun jinsab, għaliex dan ikun utli ħafna li jkunu jafu,
speċjalment jekk int ser tkun qiegħda tagħmel xejn ma 'Git,
fejn dan ikun jinsab hija fil-folder .c9, / plugins.
Mela jekk jien jmorru hemm, nistgħu naraw li issa il-lista ta 'plug-ins li huma hawn
jaqbel mal-lista l-plug-ins li I raw fuq in-naħa tax-xellug tal workspace tiegħi.
>> Issa kontumaċja, u dan huwa tip ta 'stramba,
awtomatikament meta I joħolqu ġdid plug-in fil-workspace,
dan joħloq dan plug-in li billi default għandha isem ta underscore.
Ġeneralment dan jista jikkawża xi problemi.
Allura l-pass li jmiss li I normalment twettaq
huwa biss biex ineħħi l partikolari plug-in
u jħallu biss il-sempliċi plug-in li kien hemm inizjalment, plugin.simple.
U dan huwa l-uniku wieħed li hemm.
KOLLOX SEW.
>> Allura dak li jfisser dan fil-fatt look like?
Ukoll, dan huwa, għal darb'oħra, pakkett JavaScript
li tinkludi xi fajls, inkluż fajl plugin.js, fejn
l-kontenut prinċipali ta ' tiegħi plug-in tinsab,
fajl package.json, li fil-fatt jispeċifika
xi metadata dwar dan plug-in, bħall min l-awtur huwa,
kwalunkwe informazzjoni addizzjonali dwar dan, deskrizzjoni tal-plug-in, u l-bqija.
U wkoll fil-kontumaċja, huwa toħloq fajl README vojt,
u fajl test vojt għalik biex joħolqu xi dokumenti supplimentari,
u xedd ittestjar jekk inti tixtieq li tagħmel dan.
>> Mela ejja ħu ħarsa ewwel lejn, malajr ħafna, fil-fajl package.json.
Huwa faċli biżżejjed biex biss jgħaddu dan u imla l-oqsma ta 'din
li inti tixtieq li jimlew, bħal jipprovduha isem, agħti deskrizzjoni,
jtenni l-numru tal-verżjoni kull so spiss, jipprovdu
awtur għal kull persuna li tikkontribwixxi,
jiżdiedu mal-kontributuri taqsima, u l-bqija ta 'dan inti
tista pretty ħafna biss leave bħal ma huwa għal issa.
>> Hemm ħaġa waħda li importanti li l-avviż,
li taħt it-taqsima plug-ins, hemm ċavetta msejħa plug-in.
U dan huwa mqabbel mal-isem ta ' il-fajl JavaScript imsejħa plugin.js.
Allura dan huwa kif Cloud 9 jaf, meta jaqra dan il-fajl package.json, li
mill-JS fajls li attwalment tagħbija.
Jekk I joħolqu fajls JS addizzjonali jew tixtieq li tibdel isem dan il-fajl JS minn plug-in,
Għandi wkoll biex jibdlu fil-fajl package.json.
>> Kwalunkwe mistoqsijiet mill-udjenza?
No
Dik il-persuna waħda li tkun wara flimkien miegħi s'issa.
>> KOLLOX SEW.
So I attwalment ħolqu Koppja ta 'plug-ins diġà,
I think, f'dan workspace.
Mela ejja teħles minn xi wħud minn dawn, żid SDK = 1 & debug = 2, rikarigu dan workspace,
u ejja ara jekk irridu jkollhom dawk plug-ins issa.
C9 / plugins.
Here we go.
Nistgħu naraw issa fil C9 tiegħi / plugins ta 'dan wieħed, aħna għandna plugin.1 u plugin.2.
Allura aħna qed tmur biss iżidu l the-- biss iżidu l-ammont ta 'diffikultà
f'kull wieħed minn dawn plug-ins.
Imma hawn jekk nista jinħoloq ġdid plug-in, I tista 'żżid mal-favoriti tiegħi.
U jien ser biss iħassru dawk minn is-sistema fajl sottostanti.
>> Ejja jitneħħa dak.
Issa jekk I miftuħa ewwel tiegħi plug-in, u plugin.js miftuħa,
nistgħu naraw hawn il-garanzija Verżjoni sempliċi ta 'plug-in.
Let me fil-fatt imorru lura għal dan workspace oħra
għaliex inti tista 'għall-inqas, hawn tara, dak vojt plug-in attwalment tidher qiesha.
Allura taħt il-barnuża, dan jistenna simili ħafna għat-teknoloġija msejħa,
I think, huwa RequireJS.
Avviż li dan ma verament tħares, forsi,
l-istess bħal xi JavaScript oħra fajls li nistgħu raw.
Iżda minflok, hemm koppja ta 'ftit linji bażiċi li effettivament għandu.
>> Kollha ta 'dan il-għalf huwa l-ewwel interpretat mill-IDE,
iżda mhux attwalment għaddej sa speċifikat.
U jien ser jgħidlek dwar meta dik ifisser fil-fatt fi ftit mument.
Iżda avviż li hawn hemm linja main.consumes f'konformità 2,
u dan listi kollha ta 'l-plug-ins li dan plug-in hija dipendenti fuq.
Allura fil-kontumaċja, aħna forsi ma jkollhom xi dipendenzi fuq ieħor plug-ins,
iżda meta aħna fil-fatt bżonn li jiddependu fuq il-karatteristiċi fornuti
billi plug-ins oħra fil-IDE, għandna bżonn li jiġu elenkati dawk plug-ins
fil-linja main.consumes.
U allura għandna bżonn li jorbtuhom mal-kodiċi
hawn taħt, li jiena ser nuruk biss mument dwar kif nistgħu nagħmlu dan.
>> Main.provides jagħti isem għal dan plug-in
li oħrajn plug-ins tista użu fil jikkonsma linja tagħhom.
Allura f'dan il-każ, my plug-in huwa biss sett hemmhekk fil-kontumaċja,
u għandna bidla li tkun applikabbli għall tagħna stess plug-in,
kif Ser naraw biss mument.
Issa hawn fil-funzjoni prinċipali, din il-funzjoni ewlenija
huwa attwalment run u interpretata, iżda din attwalment ma jagħmlu ħafna.
Hija biss gets kollox stabbilit, iżda din attwalment ma tibda l-plug-in,
minkejja dak l-isem ħsejjes simili.
Li attwalment jiġri permezz sekwenza ta 'metodi li
jinsabu matul din plug-in.
>> Mela jekk jien iscroll, nistgħu naraw li għandna ċiklu tal-ħajja fejn
fuq xi tagħbija avveniment imsejħa, jew xi avveniment imsejjaħ jħottu,
xi avvenimenti fil-fatt iseħħ.
Huwa tassew fil hawn fejn bħala plug-in jibda dawk il-metodi huma msejħa.
Mela ejja tkun ftit aktar konkreti dwar dan u ħarsa lejn eżempju.
Allura hawn għal plugin.1, liema aħna bażikament se jagħmlu
huwa li jinħoloq oġġett menu imsejħa CS50 Seminar Dialog 1--
għaliex għandna tnejn them-- u aħna qed tmur
biex jiddaħħal l-menu Window.
U meta aħna ikklikkja fuqha, aħna qed ser jiftħu djalogu li
jurina xi informazzjoni bażika ħafna.
>> F'dan il-każ, biss dinja bonjour.
Allura dan huwa sempliċi ħafna bonjour djalogu dinja
li nistgħu jimplimentaw bħala plug-in fil Cloud 9.
Mela ejja ara kif dan fil-fatt jistenna.
Aħna ser pass permezz tagħha, biss relattivament malajr hekk aħna
tista 'tħares lejn il-plug-in jmiss ukoll.
Avviż li aħna qegħdin hawn jikkunsmaw varjetà ta 'plug-ins.
Aħna qed jikkunsmaw djalogu plug-in, jikkmanda, menus, u UI.
Id-Dehra I attwalment am jikkunsmaw djalogu darbtejn, so I tista 'tneħħi din.
>> U tinnota li l-mod li jien konnessjoni tagħhom,
dan huwa tip ta 'metadata li javżak is-sistema plug-in liema rekwiżiti
humiex neċessarji għal dan plug-in għal tagħbija.
Huwa wkoll importanti li wieħed jinnota li l-ordni li plug-ins huma mgħobbija
ma jkunx garantit.
Imma dak li huwa garantit hija li jekk jien tispeċifika xi plug-in bħala rekwiżit,
li plug-in se jiġu mgħobbija qabel hi mgħobbija dan wieħed.
>> Allura dan ifisser li jekk tiegħek plug-in teħtieġ fuq xi funzjonalità pprovduta
billi xi ħaġa oħra fil-IDE, għandek kun żgur li l tiegħek jikkonsma plug-in
li plug-in sabiex il-dipendenzi huma ċerti li joħolqu plug-in tiegħek,
jew instantiate tiegħek plug-in, biss wara dak il-qafas eżistenti jeżisti.
So here I semmejt l metadata lill-manager plug-in,
liema jien ser jikkunsmaw.
U fil-funzjoni prinċipali hawnhekk, Jien ser imbagħad waħħal
kodiċi tiegħi għal dawk importati plug-ins.
>> Hekk jien biss se joħolqu xi varjabbli li
jaqblu mal-ismijiet ta 'kull wieħed minn dawk hekk li nista 'malajr ħafna referenza għalihom
matul kodiċi tiegħi.
Ir-raġuni jien jimporta djalogu huwa għaliex nixtieq tiegħi plug-in
biex jaġixxi bħala djalogu plug-in.
U l-mod li jien kapaċi biex tagħmel dan huwa li, naturalment,
qabbad kodiċi tiegħi għad-djalogu plug-in billi timporta dan
u mbagħad billi jispeċifika mill ħolqien ta 'varjabbli ġdida djalogu
u li jqabbadha mas li importati plug-in.
U mbagħad billi jiddefinixxu tiegħi plug-in bħala djalogu ġdid.
>> Allura fil-inizjalizzazzjoni, I tixtieq li jiddefinixxu tiegħi plug-in.
U dan il-varjabbli imsejħa plug-in tkun taf tara
huwa biss użati komunement matul Cloud 9 plug-ins.
Jien ser instantiate ġdid djalogu ma 'xi attributi,
tagħtiha isem speċifiku, jgħidu li huwa possibbli għall-utenti li tagħlaq dan.
Li dan ser juru xi x ftit fil il rokna tal-lemin,
jew buttuna ftit fil- t'isfel lemin kantuniera.
Jew le Kapaċi nagħżel test minn dan, dak it-titolu ta 'dan id-djalogu
ikun, u l-bqija.
Issa dan biss jiddefinixxi d-djalogu, iżda għadu ma juru dan.
I attwalment ikollhom jiddefinixxu azzjoni biex din tintwera.
>> U għal darb'oħra, I ninkoraġġukom biex tagħti ħarsa lejn l-Cloud 9 SDK,
għaliex hemm djalogi varjetà u huma dokumentati verament tajjeb.
Tista 'tara t-tipi differenti li hemm, u jużawhom
fi kwalunkwe plug-in għandek f'moħħu.
Issa hemm għaddej li jkun taqsima tat-tagħbija, u din it-tagħbija
funzjoni kif inti recall huwa użat mill-ċiklu tal-ħajja plug-in
li attwalment instantiate kollox u tikseb kollox lesta li tmur.
Issa meta dan plug-in tagħbijiet, I ma tixtieq li juru immedjatament djalogu,
għaliex dan plug-in se tagħbija flimkien mal-bqija tal-IDE.
U meta I tagħbija li IDE, ma rridx id-djalogu biex juru up awtomatikament.
I biss tixtieq li juru meta I ikklikkja fuq l-għażla menu fil-punt tiegħi menu Tieqa
li jiena ser iżidu miegħu mumentarjament.
>> Allura hemm żewġ passi distinti hawnhekk li jkollhom biex dan iseħħ.
Għandi biex joħolqu kmand, u l-kmand
se jkun responsabbli għall-fatt juri d-djalogu dwar il-Cloud 9 IDE.
U mbagħad I għandhom jikkonnettjaw, I ikollhom joħolqu menu tieqa ġdida
partita, li tmur dak il-kmand.
B'tali mod li meta I ikklikkja fuq dik Tieqa oġġett menu, dak il-kmand huwa allura run
u għalhekk djalogu tiegħi huwa mbagħad murija.
U għalhekk dan huwa attwalment pretty mod sabiħ ta 'ħsieb dwar dan.
>> Minħabba ewwel I tista 'toħloq kmand li isimha jkun CS50 Seminar Dialog 1,
li tipprovdi xi kuntest ġenerali għal dan.
U l-ftit importanti hawnhekk huwa li Avviż l-attribut EXEC, li
jelenka funzjoni li se tissejjaħ fil tiegħi plug-in meta dan il-kmand huwa mmexxi.
Allura dan il-kmand huwa tip simili a-- huwa biss l Cloud arbitrarja 9
kmand li ikunu disponibbli għal kull Cloud 9 plug-in.
Iżda l-funzjoni proprja li huwa ser sejħa meta dan il-kmand huwa mmexxi
hija l-funzjoni ispettaklu djalogu fil-fajl plugin.js tiegħi.
>> U nistgħu attwalment ara dawn plug-ins u l-lista
ta 'kmandi li huma disponibbli lilna fil Preferenzi, iscroll-triq kollha down--
ejja ara, fil-fatt jagħmlu naraw dan issa?
Plug-in maniġer, no, I think I-- huwa definittivament madwar hawn x'imkien.
Ukoll, hemm lista ta 'kmandijiet x'imkien, imma jien jrid ikollhom,
Stajt minsija fejn hu.
Allura OK, aħna ser jimxu fuq.
Kull dritt.
Allura aħna għandna lista ta 'kmandijiet li huma disponibbli lilna,
u dawk kmandi huma dawn Cloud 9 biss arbitrarja
jikkmanda li jimxu kodiċi speċifiku.
Hekk biss iżommu dan f'moħħhom, li aħna qed tmur biex imexxu l-dialog ispettaklu
funzjoni mumentarjament.
Issa meta I attwalment tixtieq iżżid menu oġġett, I tista 'żżid dak l-oġġett mill-passaġġ,
u biss tispeċifika eżattament fejn irrid li tkun, Window / Seminar CS50 Dialog 1.
U f'dak il-punt, nixtieq li toħloq oġġett ġdid li
se tmexxi kmand, CS50 Seminar Dialog 1.
Avviż li għal darb'oħra, dan huwa l-Cloud 9 kmand Stajt ħolqot eżatt fuq.
>> Issa Nixtieq ukoll li joħolqu divider ftit,
u so I tista 'tagħmel l-istess fil-linja sussegwenti.
Issa inti tista 'tinnota li bħala parti ta 'definizzjoni ta' dan il-partita menu,
hemm numru assoċjati magħha li
fil-fatt jgħid fejn eżattament Irrid li oġġett menu li jkun
jinsabu fil-lista ta menus.
Imma inti tista 'tinnota li jien ma attwalment
tara l-ebda numri ma dawn menus, awtomatikament.
Allura hemm xi ħaġa moħbija ftit li nistgħu nagħmlu, bidla ftit li URL tagħna.
Allura minbarra l SDK = 1 & debug = 2, I ser sett menu li 1--
u nisperaw huwa menu, mhux menus.
Oh, huwa menus = 1.
Zomm.
>> U dak li se tara fuq tagħbija mill-ġdid li IDE hija li ninsab fil-modalità debug,
iżda issa hemm għadd assoċjat ma 'l-menus.
U dan jgħidlek eżattament dak in-numru
huwa meta inti qed tipprova tinjetta xi ħaġa kullimkien f'din is-sistema menu.
Allura fil-menu Tieqa, nista ' tara dik il-partita 45 huwa jikkollaboraw,
u l-punt 38 qabel ma jkun installatur.
Allura meta I jridu tinjetta oġġett bejn dawn iż-żewġ,
Nixtieq jagħżlu biss numru bejn dawn iż-żewġ punti.
So I magħżula 41 u mdaħħla Seminar tiegħi Dialog partita 1 menu f'dak il-post.
>> U hu għalhekk li dan in-numru li jidher hawn huwa numru 41.
Dan huwa l-post ta 'dik oġġett menu fil-Cloud 9 menu.
Issa bl-istess mod, jien ridt biex jinħoloq diviżur
u żid hekk li hemm sympathique diviżjoni bejn kull wieħed minn dawn menu
oġġetti.
So I żied jgħid li fil-post 43.
S'issa, hekk tajjeb, I hope?
Allura issa ejja nħarsu lejn attwalment il-kodiċi speċifiku juru dialog
li fil-fatt responsabbli biex tinbeda din tieqa dialog.
>> Scrolling isfel, nara li nixtieq li jkollhom din il-funzjoni juru dialog,
u huwa estremament sempliċi.
Jien ser imexxu l-ispettaklu metodu fuq il-varjabbli plug-in.
U ftakar li aħna definit dan plug-in varjabbli hawn fuq bħala djalogu.
Allura bar plug-in, f'dan il-każ, huwa dan oġġett li konna definit internament.
U li għaddej biex tkun djalogu ġdid jinsabu fi ħdan dan plug-in.
U hekk aħna attwalment referenza dan plug-in varjabbli f'ħafna postijiet
fi Cloud 9 tipiku ambjent għall-iżvilupp.
>> Ser naraw hawnhekk.
Avviż li kif aħna iscroll, hemm ċikli tal-ħajja addizzjonali.
Allura avviż li dawn jirrispondu għal avvenimenti li huma sparati
minn dan l-oġġett, dan l-oġġett djalogu.
Konvenzjonalment, hemm jgħabbu u jħottu, li
huma disponibbli għall Cloud 9 plug-ins kollha.
Iżda fil-każ ta ' dan id-djalogu, hemm
F'każ ieħor li jista nar kif ukoll imsejħa
Iġbed, li jinħaraq meta dik ikun wasal biex jitfasslu fuq l-iskrin,
fl-ewwel istanza tad-djalogu juru.
>> Allura meta huwa attwalment ser jintwera,
hemm se jipprovdu lilna xi HTML.
U l-użu biss standard Prattiki HTML Nistgħu
injetta xi informazzjoni sempliċi ħafna, dinja bonjour tagħna, f'dak id-djalogu.
Mela jekk irridu mbagħad iscroll, nistgħu tara allura l-purċissjoni ta 'affarijiet
li huwa jseħħu.
L-ewwel ħloqna Cloud 9 kmand li meta esegwiti mill Cloud 9,
se nar din il-funzjoni.
Huwa ser imexxu din il-funzjoni imsejħa juru djalogu, li stajt
miktuba fil-kodiċi tiegħi.
>> I ħolqot oġġett menu u mehmuża magħha l-istess kmand
li meta dik il-partita huwa għafast fil l-menu, li kmand huwa imbagħad run
u dik il-funzjoni hija imbagħad run.
U ġewwa tal-funzjoni jien biss ser sejħa the-- jien
biss se tesegwixxi l-ispettaklu Metodu ta 'dan plug-in, li
se ewwel sejħa il-metodu tfassal, u li jmorru
għan-nar dan il-metodu stabbiliti hawn taħt, il- jiġbed avveniment handler, fil-ċiklu tal-ħajja tagħna.
U allura se attwalment juru d-djalogu.
>> Hemm ukoll metodu jinħbew, sabiex jekk I bżonn l-opportunità biex jaħbu
djalogu tiegħi, I tista 'tagħmel l-istess ħaġa.
Allura dak pjuttost ħafna li li tikseb kollha ta 'dan ix-xogħol.
Avviż li jekk irridu iscroll aktar hemm API pubbliku friża.
Dan bażikament biss jgħid li I tixtieq dawn il-metodi għall effettivament
ikunu pubbliċi, iżda mhux overwriteable barra mill-kuntest ta 'dan plug-in.
U hawn taħt, fil-qiegħ nett, hija forsi l-aħħar ħaġa
li aħna verament bżonn li jħallas ħafna attenzjoni għall hawn, li
hija li nkunu qed jirreġistraw tagħna plug-in bl-isem Seminar C9 1,
u l-oġġett plug-in.
>> Li kif inti ser recall, huwa li plug-in li plug-in
oġġett li aħna kont qed tiddefinixxi matul il-intier ta 'dan is-sors
kodiċi.
U Seminar C9 1 huwa l- string li aħna imwiegħed
li jipprovdi fil-quċċata ta 'din id-definizzjoni.
KOLLOX SEW.
Mela ejja rampa it up ftit u ara jekk nistgħu nagħmlu xi ħaġa
ftit aktar interessanti.
Issa dan huwa biss hekk kbir.
I mean, dan huwa, huwa attwalment pretty jibred li sa ftit linji ta 'kodiċi,
nistgħu timmodifika l IDE eżistenti u jiżdied punt menu eżistenti
jew iżżid xi oġġett menu ġdid, żid kmand, u juru djalogu,
u biss mazz ta ' funzjonalità li jeżisti.
Huwa tassew pjuttost kbir.
>> Iżda dan ma jagħmlu ħafna minħabba li ma tistax jikkomunikaw mal-Ubuntu sottostanti
eżempju.
Mela ejja ngħidu li jien fil-fatt tixtieq issir taf
xi informazzjoni dwar il- sottostanti Ubuntu eżempju,
bħall-stats plug-in ma.
Mela ejja tagħti ħarsa lejn ftit aktar informazzjoni
dwar kif il-stats plug-in xogħlijiet.
U fil-fatt, li hija simili ħafna għal dan.
Inti tista 'tfakkar li hemm djalogu.
Inti tista 'tfakkar li hemm xi informazzjoni li l-
muri biss tul il-bar menu flimkien il-quċċata, li nisperaw li int huma issa
jkollna togħma ta 'kif aħna implimentaw din,
biss billi ddaħħal menu fil speëifiku punti u billi instantiating djalogu
u wiri li d-djalogu.
>> Iżda għadna ma wrew inti kif aħna tista 'tqabbad
għal kmand fil- eżempju Ubuntu sottostanti.
Mela ejja tagħti ħarsa imbagħad fl plugin.2, li ma preċiżament dan il-ħaġa.
Aħna qed tmur biex tiftaħ plugin.js, li huwa l-kodiċi għal dan.
Iżda taħt il-menu Tieqa, jekk I ikklikkja fuq dialog 2,
nistgħu naraw li jgħid dan minflok, bonjour CS50, li
ma tfittex dak kollu li tħajjar, id-dritt?
Ħlief, watch dan.
Let me bidla xi ħaġa stabbiliti hawn.
>> Jien se jmorru biex tiegħi seminar workspace u l-bidla
ngħid xi ħaġa oħra, bħal Hello, Dan.
Jien ser jingħalaq u isalvawh.
U issa jien ser terġa 'run oġġett menu djalogu tiegħi.
U tinnota li hija għandha issa nbidlet dak li jgħid.
Hello, Dan.
I jidhru li għamlu xi ħaġa isfel hawn fl-istanza Ubuntu sottostanti
mingħajr ma manipulati ebda kodiċi li għal darb'oħra qed taħdem biss
fuq il-naħa tal-klijent.
Allura hemm ovvjament xi tip ta ' komunikazzjoni li qed jiġri hawn.
>> Issa dan huwa fejn ħafna tal- qawwa tal-Cloud 9 SDK tidħol fi,
hija li f'dan plugin.2, nistgħu jikkawżaw verament
sejħa li jiġri għall- eżempju sottostanti,
u run xi kmand arbitrarja.
Allura f'dan il-każ, għandi attwalment ħolqot b'kitba bash sempliċi ħafna
fil workspace tiegħi imsejħa Seminar.
So let me miftuħa li up.
U nistgħu naraw li jidher qisu dan.
Huwa biss bash sempliċi ħafna iskrittura li uniku għan fil-ħajja
se jkun li eku out dan it-test, Hello, Dan.
Jew qabel dan, huwa qal Hello, CS50.
U li kollox huwa għaddej biex tagħmel.
>> Minħabba issa dan huwa kmand li I tista 'taħdem.
I tista 'tmexxi effettivament l-isfel hawn.
Nistgħu naraw li fil-fatt hu biss kmand li I run naturali.
Kapaċi nistaqsi tiegħi plug-in sabiex tesegwixxi dan kmand fuq il-workspace sottostanti
u parse l-informazzjoni li kien lura minnha,
u tagħmel xi ħaġa ma 'dan, u timmodifika tiegħi plug-in u l-imġieba li I
jkollhom in-plug-in my bħala riżultat. KOLLOX SEW.
Mela ejja ara kif jiġri dan.
Rajna dan sempliċi ħafna Seminar b'kitba lott li I
[Inaudible] li jkun jista 'effettivament tmexxi.
>> U issa ejja ara l-modifiki li huma meħtieġa biex torbot din flimkien
mal-tieqa dialog, u run.
Allura hawnhekk aħna qed tmur biex tagħmel pretty ħafna l-istess ħaġa kif rajna qabel.
Iżda avviż li fost l- affarijiet li stajt kkunsmati now--
minbarra l--djalogu, li għal darb'oħra I jiġri li għamlu darbtejn,
li mhuwiex necessary-- minbarra għad-djalogu u l-kmandi
u l-menus plug-ins, li kienu meħtieġ fl-ewwel waħda għalija
li jiddefinixxu ġdida ta 'kmand u injetta oġġett fil-menus,
Għandi wkoll dan proc plug-in.
>> U dan proc plug-in tippermetti ahna jimmanipulaw proċessi
fuq l-istanza sottostanti.
Stajt konnessi dan wara stajt qal li tiegħi plug-in jeħtieġ dan.
Stajt mbagħad konnessi lill-kodiċi, kif rajna fil-funzjoni prinċipali.
Għal darb'oħra, jien ser initialize djalogu tiegħi.
U jekk nimxu stabbiliti issa, aħna jista 'jara kif dan huwa differenti.
Il-funzjoni tat-tagħbija huwa l-istess, hekk huwa biss se toħloq kmand
u toħloq oġġett menu u qabbad dik il-partita menu li dak il-kmand.
Imma jekk aħna issa iscroll isfel biex juru djalogu,
nistgħu tibda tara fejn jinqalgħu differenzi.
>> Għandna djalogu juru funzjoni, li huwa biss se juru d-djalogu.
Imma meta I juru dan id-djalogu, u meta l-metodu juru huwa msejjaħ,
dan nirien il-funzjoni tlug.
U jien ser imbagħad tispeċifika xi kontenut ġewwa ta 'dak.
Hekk jien biss se joħolqu div, tipprovdi lilha
xi test bażiku, Hello, dinja.
Iżda avviż li hawn jien ser jagħtu lill magħha ID.
U l-linja li jmiss ħafna I vais li ssib li ID jużaw JavaScript,
u jaħżnu dak l-oġġett fis varjabbli ieħor
li jien biss ser sejħa kontenut.
>> Allura issa meta I jkollhom kontenut, kollha I bżonn tagħmel
huwa biss timmodifika HTML ġewwa dan l-oġġett ta.
U l-HTML djalogu se imbagħad għandu jkun immodifikat ukoll.
Allura meta dan plug-in hija imbagħad murija, li jista 'jiġri
u dan huwa avveniment ġdida li huwa ġdid għal din plug-in,
iżda jiġri f'kull plug-in ma ' id-djalogu, meta dan issa huwa muri,
Jien ser sejħa funzjoni msejħa jġibu info.
U din il-funzjoni huwa il-laħam ta 'hawnhekk.
Jien ser tuża dak proc plug-in li aħna deskritti qabel, li bil-mod,
huwa verament ftit librerija Node.js li Cloud 9 qed tuża hawn.
>> Allura inti tista 'attwalment wieħed ifittex dwar kif dan
xogħlijiet jekk inti tmur fil- Dokumentazzjoni Node.js
u tfittex l-fajl Exec Metodu għall-proċessi hemmhekk.
Jien ser imexxu dan speċifika kmand, dar Ubuntu workspace
seminar, li hija l-istess waħda, li istess kmand li I maħluqa qabel.
Ipprovdi lilha kurrent direttorju tax-xogħol, biss
li jkunu ultra sikuri f'termini tal- kuntest ta 'fejn dan tkun qed taħdem.
U ladarba li kien mimlija u mibgħuta lura,
Jien ser imexxu dan funzjoni msejħa output parse.
KOLLOX SEW.
Allura dan imbagħad se tesegwixxi kmand fuq il-lokali, jew pjuttost
l-istanza Ubuntu remoti.
Meta niġi lura xi informazzjoni, jien imbagħad
ser sejħa funzjoni separata imsejħa output parse, li
għandha din il-firma hawn, err, stdout, stderr,
u jwettaq xi komputazzjoni dwar dan.
Mela jekk jien rċeviet żball ta 'xi tip fil-livelli kollha,
I attwalment se tikkontrolla biex tara jekk żball fil-fatt għandha xi data.
U jekk iva, imbagħad I se timmodifika l ġewwa HTML ta 'dak l-oġġett kontenut, li
huwa inti recall, aħna konnessi mal-djalogu
fil-instantiattion ta 'dik djalogu, jew fl-ewwel ġbid
ta 'dan id-djalogu.
Jien ser biss jgħidu li xi żball ġara.
>> Issa dan huwa simplistiku wisq.
Il-valur iżball se tipikament fihom xi ħaġa li kienet utli,
forsi numru żball u żball mill-iskrittura innifsu.
Jew jekk l-iskrittura kiteb xi ħaġa li iżball standard,
li d-data tkun popolata f'dak parametru ukoll.
UI tista 'tkun ftit aktar attenta dwar dak żball
Jien fil-fatt juru nies.
Iżda dan l-eżempju simplistiku hija tajba biżżejjed għal issa
għal mill-inqas tara kif dan kollu funzjonijiet.
Inkella jekk ikun hemm ebda żball, allura jien biss
se tipprovdi l-prima output ta 'dik il-funzjoni
fil-HTML ġewwa ta dan il-kontenut element, u mbagħad taġġorna tiegħi plug-in
u juru hawn.
U li pretty ħafna kollha li l- meħtieġ biex tikseb dan jiddekorri.
U hekk ejja jaħsbu dwar imbagħad kif dan jaħdem, ġenerali.
Meta I ewwel mgħobbija dan plug-in, bħall-ewwel plug-in,
Jien ser iżid kmand li l- disponibbli għal xejn, għal kull plug-in
fil Cloud 9, imsejħa Seminar CS50 Dialog 2, li r-responsabiltà
se jkun biex imexxu dan juri djalogu, li huwa inti recall,
fil-fatt se juru d-djalogu li jien mitluba hawn taħt.
>> Imbagħad I se jżid li kmand fi menu tieqa
I hekk li jkollhom aċċess għal dan.
U meta dik id-djalogu huwa mitlub li jintwerew,
I se jġibu xi info mill l-istanza Ubuntu sottostanti
billi tuża l-fajl kmand Exec.
Skużani.
Ladarba dan huwa rritornat u nirċievi xi informazzjoni, imbagħad fuq il-naħa tal-klijent
għal darb'oħra, I se jkunu jistgħu parse l-output ta 'dak il-kmand
u taġġorna l-ġewwa HTML mill-elementi
li kellna konness ma qabel.
>> U ma 'dan, aħna mbagħad ikollhom dan kompletament funzjonali plug-in
li tippermetti me li jġibu informazzjoni minn din l-iskrittura arbitrarja
li ħloqna fuq eżempju sottostanti tagħna.
Iżda għal darb'oħra, huwa verament importanti u verament importanti
li jiġi mifrud fejn kull ta 'dawn l-affarijiet qed jiġri,
li għandna dan kollu naħa tal-klijent kodiċi li qed titmexxa fil-browser,
u għad m'għandux aċċess għall-fajl sistema sottostanti
sakemm aħna tmexxi effettivament xi wħud minn dawn kmandi li huma pprovduti mill-Cloud
9 SDK bħal proc, u xi oħrajn li jippermettu magħna biex taqra xi data,
jew taqra xi fajls jekk għandna bżonn li tagħmel xejn tat-tip.
>> Issa dan huwa eżempju pjuttost sempliċi.
Hemm affarijiet oħra li aħna forsi trid tagħmel ukoll.
Per eżempju, forsi aħna fil-fatt tixtieq li tiffranka xi informazzjoni
għall-preferenzi.
Jew forsi irridu żid pane preferenza ġdida
jew xi ħaġa f'dan is-sens.
Allura dan huwa xi ħaġa li inti tista 'tagħti ħarsa lejn il-Cloud 9 SDK
biex tikseb aktar informazzjoni dwar.
Imma dan huwa verament biżżejjed biex tibda.
Hekk biss li jkun ftit aktar konkreti dwar il-mod li xi wħud minn dawn l-affarijiet
funzjoni, I ma jridu juru biss eżempju wieħed aktar, li huwa biss ftit
tal-kodiċi mill-Stats 50 plug-in.
>> U dan il-kodiċi huwa bażikament ibbażati fuq dawn l-eżempji
li inti stajt attwalment tidher, iżda għandha xi salvagwardji aktar
u għandha xi kumplessità aktar sabiex biex jikseb xi wħud mill-affarijiet addizzjonali
li rridu niksbu.
Per eżempju, jekk I tixtieq li tkun tista 'tiffranka xi settings,
imbagħad I bżonn li jkollhom aċċess għall-Settings plug-in,
u kull darba nixtieq li taqra xi settings,
I tista ', per eżempju, jagħtu lill varji avvenimenti fil-Settings plug-in.
Allura kull darba li l-settings huwa aħmar, per eżempju, fil stess plug-in my,
jekk I am ser taqra xi settings mill-ħażna ffrankati
preferenzi tal-utent, allura nista sett nuqqasijiet għal lokazzjoni speċifika,
għall-preferenza speċifika, f'dak JSON għażliet stil fajl li konna
salvati aktar kmieni, li aħna stajt tidher qabel.
>> U jekk jien ser jikteb xi settings lilha,
imbagħad I can-- jew hekk kif aħna jiskopru li l-settings ġew miktuba
to-- pereżempju għaliex, dawk settings ġew modifikati mill-utent
jew direttament f'ambjenti tagħhom fajl, jew il-pane preferenza
biddel il-settings fajl direttament, allura
I jistgħu attwalment taġġorna wħud mill-kodiċi jew jaġġorna l-imġiba ta 'tiegħi plug-in
ibbażata fuq dawk il-bidliet li għandhom seħħew fuq il-fajl settings kif ukoll.
Imma verament, il-bqija ta 'dan huwa pretty ħafna dan li inti stajt diġà raw.
>> Aħna żid ftit, forsi xi ħaġa li ġdida.
Allura aħna żid fajl preferenza, jew pjuttost pane preferenza,
għall-tieqa preferenzi, li għal darb'oħra tista 'ssir taf aktar informazzjoni
fil-Cloud 9 SDK taqra lili.
Iżda kull ħaġa oħra huwa pretty ħafna, pjuttost
simili għal dak li rajna qabel, biss b'xi żball iċċekkjar addizzjonali
u xi protezzjonijiet addizzjonali u xi funzjonalità addizzjonali
li karatteristika kollha tad-diversi affarijiet li aħna stajt tidher.
Jekk int ma attwalment tidher encore, inti tista
tkun mintix dak il-garanzija kmand huwa fil-Stats 50 tieqa.
Huwa fil-fatt il-funzjoni.
Ukoll, huwa is-- oh, dammit.
Wieħed sekonda.
Zomm.
KOLLOX SEW.
Let me jimxu dan up sabiex inkunu nistgħu attwalment naraw x'jiġri meta I tip Stats 50.
Avviż li f'dan il-każ, il- kmand li jien out tqegħid
huwa verament darb'oħra, biss l-iskrittura li l- ser output mazz ta 'informazzjoni
fil-format JSON.
U r-raġuni li nagħmlu dan B'dan il-mod hija li għaliex aħna
qed joperaw, għaliex aħna ħadthom bil-miktub il-kodiċi naħa tal-klijent fil JavaScript,
nistgħu faċilment biss parse JavaScript oġġetti,
u verament tkun kapaċi li jimmanipulaw dawk l-oġġetti bħad nixtiequ
kwalunkwe oġġett JavaScript oħra.
>> U għalhekk dan huwa konvenjenti ħafna mod li jipprovdu xi informazzjoni
mill-każ Ubuntu sottostanti, bħan-numru verżjoni, l-ospitanti
isem, jekk server huwa smigħ, dak l-server huwa, hekk u ibqa 'sejjer hekk,
u parse li ħafna faċilment u malajr ħafna
fil-plug-in li mbagħad se li juruna kollha ta 'dik l-informazzjoni.
Għalhekk għal darb'oħra, l-għarfien ewlieni hawn li wieħed iżomm f'moħħu
hija din il-firda bejn l-istanza sottostanti,
u wkoll fejn il-kodiċi jkun qiegħed jitgħabba.
Li meta I jkollu klijent, huwa l-ewwel tagħbija.
Just dan il-fajl JavaScript statika minn x'imkien, forsi CDN ta 'xi tip.
Aħna ma verament ikollhom kura wisq dwar dan l-ewwel pass.
>> Aħna biss jafu li huwa jimxi fuq il-naħa tal-klijent
u li meta jien ser jikkomunikaw ma 'din Docker każ.
Li aħna qed tmur biex tagħmel dan permezz tal-Cloud 9 SDK.
Aħna ma attwalment ikollhom l-abbiltà, użu JavaScript jew Node.js,
li tikteb direttament miegħu.
Aħna biss jużaw dawk SDK eżistenti APIs li jagħmlu dik l-azzjoni għalina.
U għal darb'oħra, wieħed mill- affarijiet verament importanti
huwa li meta I ħolqu dan, meta stajt ħolqot din plug-in,
u kif I am jaħdmu fuqu, wieħed mill-affarijiet importanti li jagħmlu
huwa biex iġibu l-JavaScript console.
>> Minħabba peress li din hija kollha joperaw fuq il-JavaScript,
fuq il-naħa tal-klijent, jekk I użu a console.log method-- hekk biss
li juru eżempju hawn.
Ejja nippruvaw timmodifika dan sempliċi plug-in għall-log wkoll xi data.
U aħna ser żid out standard.
Mela ejja bidla li tkun id-dritt hawn.
Issa meta I tesegwixxi console.log, wieħed iżomm f'moħħu
li peress li dan qed taħdem fuq il-naħa tal-klijent,
I se tara dan fil tiegħi stess JavaScript console, li
huwa kif I mbagħad se tkun tista ' jippruvaw troubleshoot u debug
xi wħud mill-problemi li għandi.
>> Avviż li minħabba I am fil-modalità SDK, jien
mbagħad jistgħu jimmanipulaw plug-ins fuq il-każ.
Għalhekk anki jekk huwa ffrankati fuq il-każ,
dan huwa l-eżempju wieħed ta 'dan ta' qabel regola qegħdin jiġu miksura, fejn il-Cloud 9
SDK fatt se pull plug-ins mill- sottostanti istanza u mbagħad imexxuhom.
Allura li b'dan il-mod, jien imbagħad kapaċi li jimmanipulaw u jinbena
xi plug-ins hawn.
Iżda sabiex għalija biex tara aġġornamenti għal din plug-in,
għaliex dan huwa fuq il-naħa tal-klijent, I bżonn biex jiffrankaw dak plug-in
u mbagħad rikarigu-workspace kollu, sabiex il-ġdid plug-in hija mbagħad
jitniżżlu fuq klijent tiegħi, fuq tiegħi web browser, u mbagħad ikun qed jintuża.
>> Allura issa meta I ikklikkja fuq dan is-Seminar Dialog 2, aħna xorta tara dan.
Imma issa nisperaw fil tiegħi JavaScript djalogu, jekk naraw my-- stenna,
Zomm.
I jista 'jkollhom biex tiftaħ il-frisk djalogu.
Għandna tara dejta riċevuta tiegħi hawn.
Data riċevuta, Hello, Dan, li huwa inti recall,
kien operazzjoni console.log li aħna mitluba fl-plug-in.
Allura din id-deskrizzjoni imbagħad li semmejt qabel,
dan id-djalogu, jew dan dijagramma pjuttost, li jien
imsemmi qabel huwa dak li jiġri.
Iżda hemm xi importanti eċċezzjoni biss għall-iżvilupp,
li huwa li l-plug-in innifsu jista 'attwalment
tkun maħżuna fuq l-istanza Docker temporanjament, peress preżumibbilment Cloud 9
ma tridx li nkunu kapaċi jimmanipulaw oġġetti fuq CDN tagħhom.
>> U l-Cloud 9 klijenti, fuq it-tagħbija, issib dawk plug-ins f'dak.
C9 plug-in folder, u tagħbija dawk.
Iżda dawk għadhom jiġri biss fuq il-naħa tal-klijent.
Mela allura dan huwa biss il-li eċċezzjoni li jseħħ biss
għall-iżvilupp ta 'Cloud 9 plug-ins.
Iżda l-bqija tal- time-- u r-raġuni
li aħna rridu li verament martell din home--
huwa minħabba li ħafna mill-ħin dan huwa ser tkun qed taħdem mill-CDN,
u biss ser jitmexxew purament mill-naħa tal-klijent.
>> Normalment ser jkun hemm ebda interazzjoni mal-plug-in,
jew hemm ma jkollhomx li hemm xi raġuni li l-plug-ins huma stess
huma attwalment maħżuna fuq il- sottostanti Docker eżempju,
ħlief fil-każ ta ' dan l-iżvilupp SDK.
Għalhekk għal darb'oħra, din il-bidliet biss ftit minħabba l-fatt
li qed norganizzaw modalità SDK.
Huwa ser imbagħad tagħbija dawk plug-ins mill-iżvilupp,
u l-uniku għan hawnhekk hu hekk li I jistgħu jużaw Cloud 9 tagħmel żvilupp
għall Cloud 9 plugins.
Iżda anke hekk, dan ma jbiddilx għal darb'oħra kif xi parti minn dan xogħlijiet.
Huwa għadu qed titmexxa kompletament fuq il-naħa tal-klijent.
>> Dan ifisser biss li kull meta nixtieq li joħolqu Cloud 9 plug-ins fil Cloud 9,
I joħolqu dawk plug-ins, tpoġġihom fil tiegħi.
C9 / plugins folder fid-dar tiegħi direttorju, kun żgur jien fil-modalità SDK,
rikarigu-paġna kull darba I attwalment isiru tibdiliet għal dak plug-in,
u tara x'jiġri fil JavaScript console tiegħi.
Just tmexxi tiegħi JavaScript console biex tiżgura
li kwalunkwe problemi informazzjoni li I-post console,
jew ħaġa oħra li jistgħu jseħħu minħabba żbalji li stajt bil-miktub
fil-kodiċi tiegħi jew bħalhom, jidher hemmhekk.
>> U ma 'dan, huwa verament biżżejjed biex tibda, I think,
mal-Cloud 9 plug-ins.
Speċjalment tieħu ħarsa lejn l-SDK dokumentazzjoni li Cloud 9 jipprovdi.
Huwa mod tajjeb ħafna biex jiksbu beda, u faċilment
joħolqu xi plug-ins għall Cloud 9.
U ma 'dan, nixtieq nirringrazzja inti kollha ħafna għas-sħubija għalija.
Nispera li inti ser ikollok gost miktub plug-ins għall Cloud 9.
Forsi titjib plug-ins li għandna issa, jew forsi anke
jżid xi funzjonalità tal tiegħek.
Aħna ħerqana li tara dak li huwa inti toħloq.
Sa dakinhar, bye.