>> Prav zato smo se nazaj, Nekaj ​​ciljev za danes,
bomo dvignili kam smo končali zadnji čas,
opozarjajo, da smo bili izdelavo tega nasledstva
od strežniških aplikacij, povezanih, super preprosta, vendar z uporabo vozlišča JS
in nato prav tako nedavno uporabljajo izrecno dotik AS
in kaj je bilo izraženo JS analog v PHP svetu.
Torej express je bolj ... blizu,
tako express je v bistvu Okvir MBC, da je precej
priljubljena v vozlišču js svetu,
Knjižna polica katerih bomo videli danes prek Tim je analogna
z zgovornim ki je ORM na predmet razmerja Mapper
ki dejansko omogoča lažje da bi se izognili kodo SQL nizki ravni
in dejansko izražajo odnose med različnimi predmeti.
Tako je eden izmed najbolj kul Stvari odkrito
O vozlišče js je le, kako enostavno, da bi lahko bilo
da delaš prave aplikacije času, Stvari, kot so chat strežniki
ali sporočila strežniki, vse, kar vi zdaj uporabljajo
kot Google ... G-chat ali Google Obiščejo
ali posodobitve Facebook status ali celo Twitter če ste
na svoji spletni strani vsem je neke vrste realnem času
ali ste, da daje Iluzija realnem času
in to je dejansko bolečine v vratu storiti z nečim
kot so PHP in My SQL Pravica kaj smo predlagali
V ponedeljek bi se sredstva
, s katerim bi lahko izvajala Iluzija realnem času obnašanja
s strežnikom klepet v PHP, kaj bi morali narediti?
Alice pošlje sporočilo, udari vpišite kam gre?
Ja.
>> [Oddelek neslišno]
>> Into bazo podatkov, nato pa kaj brskalnik Bob imajo
storiti, da bi dejansko videli Alice, kaj je rekel, ja?
>> [Oddelek neslišno]
>> Naj pozivanja bazo podatkov, V redu, torej ajax Zahtevek je
na ogenj vsako sekundo, vsak malo sekund ali smo se pogovarjali na kratko
vendar ne gledajo na primer nekaj, kar ti dolgo javnomnenjske raziskave,
kdo se spomni, kako
ta mehanizem ... o visoka stopnja deluje?
>> [Oddelek neslišno]
>> Točno, ja tako brskalnik Še vedno naredi ajax zahtevo
na strežnik, do foo dot php ampak foo dot php samo zdi
obesiti, je v bistvu sedi v while zanko za toliko
kot 30 sekund običajno in samo enkrat foo dot php datoteko
se zaveda, oh tam je nova vrstica
v bazo podatkov pa dejansko odzivajo
s http odziv.
Torej menite, da bi lahko to drugače visi strežnik
in to ne do neke mere
vendar to pomeni, da je Veliko manj režijske
ker ne potrebujete nov TCP povezava, novo HTP povezava
dejansko zahteva Podatki iz strežnika.
Vendar vozlišče js prihaja z zelo priljubljena knjižnica imenuje vtičnica
dot io, ki ga lahko nikoli ne uporablja, je zgrajen na vrhu
od tehnologije, imenovane web vtičnica, ki je prisotna
V večini sodobnih brskalnikov in kaj vtičnica io pa je vam omogočajo
ustvariti bistvu trajne povezave
med brskalnikom in strežnikom to je zelo nizka režijske
tako da vam ni nujno imajo ista vprašanja Normiranje
, da bi lahko, če ste stalno hitting strežnik
v svetu PHP in Moj SQL in podobno.
Tudi za starejše brskalnike
da ne podpirajo spletno vtičnico Ta knjižnica vtičnica pika io lahko
pade nazaj na utripa Izvajanje vtičnice
in vtičnice je mreženje stvar od CS143 npr.
Ali pa lahko celo pade nazaj na dolge polling sama, tako da izvajajo
to isto vrsto dela
približno za dejansko ohranjanje Iluzija zvezi s tem.
Torej vtičnice [neslišno] io in to v obliki
knjižnice java script, v bistvu, če jo uporabite
v obliki vozlišč JS aplikacija ne boste le namestiti
je v paketu z uporabo nekaj kot NPM, ki smo ga uporabili v ponedeljek
in ali ste tudi strip oznako v na vašem html datoteko
ki pravi, da uporabite Stranka strani knjižnice.
Tako da je obe polovici do je in kaj smo storili?
v četrtem ponovitvi v ponedeljek je zaporedje
primerov je naslednja.
Torej to sliko struktura spominja na zelo skupnega niza
up za izraženih js in K sreči je pot enostavnejša
kot lervo [fonetične] je, spomnimo, ko ste nastavili
up lervo imaš veliko grdo smetišče za cel kup datotek,
prodajalec imenikov, lib in zelo težka teža v primerjavi s tem.
Zdaj v pravičnosti, ki smo jih odstranili proč stvari, ki je precej
moteča, ampak vse sočno stvari je res
v vozliščnih modulov.
Samo, da vam okus, če pogledamo
na vozlišču modulov obstaja dva modula ali knjižnice
, ki sem jih prenesli, to bi bila enakovredna
imenika prodajalca, en se imenuje Express, ki je
kot larevel ampak v vozlišču
priključek io eno sem omenil.
Torej tistih, ki obstajajo zato, da smo lahko naredite naslednje, če odprem
up recimo indeks dot html, Oglejmo prvi pogled na html,
To se dogaja, da sestavite ta organ, moja super,
super enostavna chat strežnik.
Torej je očitno ul z edinstveno idejo sporočil
in da je, kjer je enega li naenkrat,
vsa hitra sporočila, ki so bo pojavil med Alice
Bob in potem je tukaj preprost obrazec z polje z besedilom
in gumb za pošiljanje s katero Alice
ali Bob lahko dejansko Sporočilo seboj.
Tako da je neto učinek, če Jaz vodim to aplikacijo
s tem vozlišča prostor app pika js, če potegnem gor par
od okna brskalnika, da Alice je lahko na desni strani,
Bob je lahko na levo in samo
da bo jasno, da ni čarobna Tukaj imam eno okno
V incognito, tako da ni Delitev piškotkov ali karkoli
kot je ta, so ti dve različni uporabniki.
Moral bi imeti možnost, da Alice pozdravit Bob, kliknite Pošlji
in zdaj vidite na levi da je bilo sporočilo poslano Alice
in skoraj v trenutku na desno.
Ne polling navidez sodeluje, Bob prejeli enako sporočilo.
Zdaj pa Bob pravi Pozdravi Alice vidiš ravno nasproten učinek.
Torej, kaj se v resnici dogaja, kako veliko code bomo morali napisati
za izvajanje tega strežnika za klepet
ki lahko sedaj ekstrapolirati duševno, da vsi
v tem prostoru, če to ni bilo na mojem [neslišno]
ampak na foo dot com smo lahko vsi začnite klepetati trenutku
seboj.
Torej, kaj je sodelovati in preden sem počistite zaslon, to je to
je samo vtičnica io da malo glasen, to je samo za tiskanje
out informacije za odpravljanje napak na zaslonu
Tam je res nič drugega se dogaja tam.
Naj odprejo js dot app, tako da kot prej imamo nekaj stvari
Na vrhu datoteke.
Kup zahtev, tako da so kot knjižnice
ali izostriti namige ali zahtevajo onces karkoli miselni model si
želijo imeti in samo da Rekapitulacija FS se uporablja
za kakšno funkcionalnost?
Torej slik sistem tako branje datotek potencialno in podobne stvari
in sem to uporabiti v enem postaviti kot boste videli,
express seveda je to okvir, ki smo ga uporabljate,
to ni strogo potrebno smo lahko
kot v ponedeljek povsem ustvariti naše http strežnik iz nič
s tem ustvariti strežnik in vse te vrste z oznako od prej
ampak, kot bomo videli, to pomeni, stvari malo lažje
ker vse, kar morate storiti je, on line 3 tukaj sprožajo
in izražanje predmeta, bom poklical to app, nekoliko arbitrarno,
Bom pa povedal, app poslušate na poljubno vrat 1337,
, da bi se lahko 80 po dogovoru
in potem končno imam novo linija je danes kar pove
zahtevati vtičnico io knjižnico in nato
s tem pristopom bi verige ta pika operater sem samo
kliče lekcijo poslušati, da je v bistvu povedal vtičnico
io knjižnica tudi poslušaj istem strežniku
ali web vticnica.
In kaj zdaj, kaj je to počneš, te štiri vrstice
kode tukaj, ki bi morala pogled spominja na larevel,
kaj to predstavlja?
>> [Oddelek neslišno]
>> To je ... pot, samo Pot do leta js dot app,
aka server dot js odvisno o tem, kaj ljudje želijo, da ga pokličete
v svojih vlogah imate konvencije
početje opredeljevanju svoje poti,
app pika get pomeni, da vsakič boste dobili zahtevo zaslužiti iti
da za dobesedno drastično gredo naprej in to imenujemo anonimno funkcijo
in anonimna funkcija v V tem primeru potrebno zaradi zahteve
ali zaprosilo in odgovor, potencialno nekatere druge stvari,
ampak minimalno teh dveh.
Zahteva vam daje dostop za stvari, kot http parametrov
in glave in drugo sočno stvari
in nato odziv je mehanizem
, s katerim lahko odziv na uporabnika.
Torej, to je super enostavna, tudi čeprav nismo videli dokaj
Isto kodo zadnji čas, da sem z uporabo datotečnega sistema modulov,
ustvariti branje metodo tok ki v bistvu ne da
ustvariti branje tok, ki pomeni v bistvu začetek srkanje
up bajtov iz indeksa piko html tako učinkovito, kot si lahko
ni nujno, da čaka dokler si prebral celotno datoteko
in kot ti, da cev jim dobesedno
v navpični bar smislu Če ste zadovoljni
z ukazno vrstico linux,
Cev je za odgovor predmeta.
Torej sta bila dva primera povezane z tokov v ponedeljek,
smo iskali le na eni, ampak ste dobrodošli, da se ozremo
ob potoku o in toku 1.
Stream 1 ... 0 storil nekaj podobnega za to,
tok 1 naredili nekaj skoraj natanko tako kot je ta,
to je samo madež ena linijske rekel nekako
od slurp nekaj v tukaj in nato začnete pošiljanje tukaj
hkrati brez delaš maso dogovorijo
in nato ogromen pravica,
Ta pristop je na splošno bolj učinkovito.
Tako da je vrsta starih stvari tudi če je bila nova v ponedeljek,
to je vse kar je potrebno, da izvajati strežnik klepet
z vozliščnih js in več posebej vtičnica dot IO.
Torej, kako to deluje, Naj ga premikajte gor malo,
Tako io je le spremenljivka , ki se nanaša
na modulu smo prej potrebno,
dot vtičnica je le nepremičnine v njem
da mi daje vtičnico povezano funkcionalnost,
o je običajna metoda, ki se nanaša na to, kar na splošno pojem?
Dogodek tako naprej aka poslušajo nekatere knjižnice To samo pomeni,
na zaslišanju ta dogodek ki se imenuje povezava
zdaj pa to vedo le iz gledamo na dokumentaciji,
kdor je napisal knjižnico opredeljena dogodka, imenovano
Povezava, ki ne kaj bi si mislite
ko Alice in Bob povezuje.
Pojdi naprej in to imenujemo anonimno funkcijo prevzamejo kratki
v enem argumentu stranka ki je očitno nekakšen
predmeta, ki predstavlja Povezava Alice
ali Bob povezavo ali Charlie ali kdorkoli drug
in zdaj smo storili naslednje.
Povemo stranko po on ali ona je povezan
posebej poslušati
za sporočilo, ki je povsem samovoljno imenuje sporočilo
debelo črevo stranka.
To je nekaj, Tim in Domislil sem se, bi bilo foo
ali bar, to je samo nekaj edinstven niz, ki smo potrebovali
da se odloči, kot je razvijalci.
Kadarkoli Alice in Bob sliši
ta dogodek je ta anonimna Funkcija naj imenuje
in podatke, Vsebina Alice
ali sporočilo Bob mora biti prenesejo v to obravnavo dogodkov
in kaj zdaj naj bi Stranka dobro, lahko nekako
berem ta dokaj intuitivno Stranka mora oddajati,
sicer znan kot oddajane Sporočilo imenovana metoda za strežnike
s tem, ki pomeni to sporočilo prihaja iz strežnika ne
iz brskalnika in kaj to bi bilo sporočilo,
to je očitno tovora iz karkoli je prišel iz stranke
in smo le, da bo samovoljno imenujejo sporočilo.
Torej, veliko je to samovoljno
po razumni poimenovanje konvencij, Tim in sem prišel
z, večinoma Timom in potem smo preprosto ustvarjajo koncu
chat strežnik, ki počne kaj, ko Alice pošlje sporočilo
in zadetki vpišite Kateri dogodek očitno dobi odpustili,
samo da Rekapitulacija.
Alice vrste sporočil, hits vstopiti, je sporočila stranka odpuščen,
ta koda sliši to in zdaj Strežnik oddaja kaj,
kaj je končni rezultat to res?
Alice pošlje sporočilo zdaj strežnik reprize
dejansko vsem, razen za Alice, zakaj vsi razen
za Alice, če pogledate
V dokumentacijskem stranko dot dot oddaja priznati,
dobesedno ne da, oddaj sporočilo
za vse, razen Stranka, ki vas je poslal
da zadnje sporočilo.
Torej, to je razlog, zakaj le ga vidim enkrat na vsaki strani,
ne vidite tako Alice in Bob dobili sporočilo o Alice.
Tako, da je to je ponovno nasaditev sredstvo
če boste, da je samo ob v sporočilih
in jih radiodifuzna retransmisija ven
in to je neverjetno razširljive Mislim celo
z zelo preprost strežnik in nekaj vrstic
kode si lahko zagotovo ročaj na stotine, če ne na tisoče
sočasnih preprostih sporočil gre naprej in nazaj, kot je ta
in samo predstavljate zapletenost Zdaj to počne v PHD
ali Larevel ali moja SQL in koliko koda bi morali
pisati, da dejansko dosegli.
Zdaj v poštenost to ni obstojna prav
če strežnik gre dol bomo izgubili celotno zgodovino
tako da to ni čisto popoln prevod, vendar je
da naravnost naprej.
Oglejmo si skript Java kodo, ki smo preskočila več kot prej,
To je Alice in Bob je stranka,
Spletna stran, ki ga uporabljajo zdaj Oglejmo si tu gor za trenutek.
Tam je malo več kode
ampak to je precej preprosto jQuery tukaj tako obvestilo
da se na spletni strani da sem potegnil
do pred nekaj trenutki smo vključujejo knjižnico jQuery,
vtičnica io knjižnico in kot poleg opazili razliko
tukaj, slash slash na začetek poti
kot to pomeni, kaj točno,
kjer je jQuery dot js o tem, kaj strežnik?
Ja.
>> [Oddelek neslišno]
>> To je na internetu ja dobesedno imenovani code dot jQuery
dot com zakaj poševnica, poševnica, zakaj ne samo en slash,
kjer je HTTP ali kolona, kaj to pomeni v splošnem
če vam slash slash na začetek url?
To je pravzaprav koristno.
Ok, tako kar je očitno manjka http zdaj, če bomo razloga
skozi to logično, običajno vam ni treba
omenil strežnikov imena pravica
kot če samo uporabo poševnica jQuery dot JS, kaj se predpostavlja
brskalnik?
Ta datoteka je na isti Strežnik tako naprej, da SORT
logike, če ne povej to, kar protokol, kar je
Brskalnik prevzame, isti protokol tako Če ste že kdaj obiskali spletne strani
da vam napako skupaj so proge nevarne vsebine
na tej strani, je to zato, ker nekdo je težko kodirane http
debelo črevo slash slash URL slika ali Java skripto
ali CSS datoteko, nekaj takega v izvorno kodo strani
vendar pa stran sama v brskalniki URL http i.
Torej to je samo fancy malo način
rekel ne vem kaj je protokol
da ti končni uporabniki bo uporabil
ampak poskrbite, da tekme, tako da krom
in drugimi brskalniki Ne vpij uporabnika.
Samo ulov pri jQuery ljudi, je bolje nastaviti
do https na njihovem strežniku.
Tako da so dejansko kotacijo na 443.
Vse je v redu medtem to ena, tukaj je ta vrsta
zavajajočega slash Vtičnica io predlaga
da obstaja imenik imenovano Vtičnica dot io na mojem strežniku
vendar pa ne, če smo suniti
okoli tam Imenik vozlišča modula
vendar ni nič javnosti o tem,
ko smo nastavljen vtičnica io poslušati na istih pristaniščih,
1337 v bistvu, da knjižnica da je nekdo drug napisal je šlo
da nekako vstaviti kodo: v okolje vozlišče JS je
in poslušaj za to pot.
Ta knjižnica ima samo nastavljen pot za to,
to ni pravi imenik.
To bi bilo v standardno mesto.
Ok, tako zdaj zanimivo del,
tako da, ko dokument je pripravljen, kot je navedeno
s tem jQuery konstrukt, Prvi bom, da gredo naprej
in priključite na vtičnico,
kaj vtičnica samo z ... hraniti preprost bom povezati
drastično, da je kadar je uporabnik,
Skrival sem na primer preprosto smo le, da bo priključitev
na točno istem URL, ki Uporabnik je obiskal potem bom
narediti naslednje, bom povej brskalnik Alice ali Bob
za poslušanje za Sporočilo iz strežnika.
Ponovno bi bilo to foo
ali bar vsakem trenutku Zaslišali sporočilo
od strežnika call it podatkov in naredite tega kodeksa jQuery
ki sem najbolj ugibati, če niso vsi seznanjeni
teh dneh, vendar v bistvu pin na seznam artikel
obstoječemu UL, ki je bil imenovan sporočila
ki dobesedno pravi karkoli tovora je
od poslal sporočilo, ki mu sledi vezaj, sledi prejmejo
sledi prostor nato čas posodabljanja, in da je, zakaj
da bo jasno, če gremo nazaj
da to dobiš ti dodatni naboji znova in znova
in ponovno z datuma roki.
Medtem, če gledamo tukaj imamo samo
, ki skrbi za pošiljanje obrazca tako, da je sprejemna
z neposrednim sporočilom, tukaj je pošiljanje in to je neke vrste
nepovezanih do vozlišča js, poslušajte na obrazcih predložiti dogodek.
Ko se to zgodi prepreči privzeto, To samo pomeni, da ga ne predloži
na strežniku v običajni Tako osvežite celo stran,
želimo to storiti vse preko Ajax.
Tukaj je le nekaj kode jQuery
dejansko dobil vhod katerih vrsta je sporočila,
čigar ime je sporočilo, nadaljujte
in se je vrednost potem pa greš naprej
in če ste dejansko imajo sporočilo, če Alice in Bob
ali Bob dejansko tipi nekateri none 0 Število pritiskov na tipke oddajajo
na vtičnici sporočilo imenovano Sporočilo stranka s tem tovorom
in potem tukaj to tisto, kar je zeleno, v nasprotju
v rdečo, smo preprosto izhod Aparat stran [neslišno].
Tako da, vendar vse to To je šele ustanovljena,
real nove stvari bi jaz trdijo, je samo te tri
ali pet vrstic kode tu in da nekako namiguje na moč
vozliščnih js in z njim to posebno knjižnico.
Tako da je lahko hitro poglej izrecnih js dot,
kaj bom poskusil storiti v preostalih nekaj
minut je tu ustanovila Nekaj ​​ideja, nekaj tehnik
, ki bo nato vzemite nekaj minutni odmor, bo Tim ustanovila
in potem bomo potopili globlje
za bolj zanimivo izraziti prošnjo, in tudi
na knjižni polici, knjižnica Tim dejansko napisal
za odprtokodne skupnosti
ki nam zgovorno luč funkcionalnost z mojim SQL
in transakcije in druga funkcije in da bo tudi potapljati
V malo globlje jezik Java sama skripta,
kako njen cilj ali ne-class model deluje drugače vedeli
kot model prototipa, nekaj več o tem, da pridejo.
Tako da je lahko pogled na dva zadnja aplikacije tukaj, strežnik pet
in strežnik 6, ki so vsi nekako podobna v duhu,
ti niso klepet strežnikov vendar jih uporabljajo express.
Torej, dajmo si oglejte kaj to v resnici počne,
Jaz grem naprej in open ... grem teči ta program
z vozlišče app js, bom pojdi nazaj v svoj brskalnik in osvežite
in to je očitno vse to strežnik počne,
to je super enostavna za strežnike To je očitno iskanje
motorja, tako da, če sem tip v foo in predloži nobenih rezultatov iskanja
za foo, nisem dobil okoli izvajanje prefinjene
Zadnji konec, vse to se dogaja
storiti je, da echo ne glede na to, kaj vnesete nobenih rezultatov za foo,
Ni rezultatov za vrat Torej, kako bomo to naredili
zato, ker je Nekaj ​​kosov, ena,
tam je očitno nekaj vhodi so predvideni
na strežnik ne Larevel Seveda, ampak vozlišče js zdaj
zato moramo nekako priti na ta parameter Q,
smo očitno počne nekakšen pogled tu,
smo upodabljanje pogled tako morda je priložnost
za predloge ali spremenljivko interprelation [fonetično]
tako da je lahko pogled v nadaljevanju.
V app js za to posebej Strežnik je to vse, kar imamo.
Ena zahtevamo izraziti sama, dva modula pot
ki pravkar počne nekaj koristne stvari
kot pridružil strune skupaj in tako naprej za mene,
Poslušam na vratih 1337 in zdaj je to novo, da se izkaže
iz tega izrecnega kot Larevel podpira različne plug ins
tehnologije in druge stvari in ena
tehnologij, ki jih lahko priključite je pogled na motor
ki pomeni le tisto, kar template Motor želite uporabiti,
Imel Larevel da je lastnik stvar, vendar ga lahko priključite
v različnih stvareh, ki se razlikuje okviri breskev P ni
različni načini templating, EJS je samo skupni
in zelo preprost motor da le Naj te stvari
tako kot zavite oklepaje, da ste imeli v Larevels skladnji
za nadomeščanje spremenljivk,
to je malo drugačna skladenjsko je vse.
Torej, zdaj pa je ta stvar imenovano middle ware, tako kot boste videli
v svojem ekipe vozlišča projekta a middle ware je nekako koda
ali knjižnice, ki si vbrizgavajo
v [neslišno] odgovor življenjski cikel aplikacije
z drugimi besedami, ta dva linije so povedali ekspres
narediti nekaj dodatnega dela med Tokrat je dobil zahtevo
in med časom, ki ga pošlje da zahteva za lastno pot,
kodo, ki ste jih napisali.
Torej, še posebej ta vrstica tukaj uporabite izrecno piko statično in vse
te kompleksnosti to samo pomeni, če vidite zahtevo
ki prihaja v za statične datoteke kot foo dot Jif ali foo dot CSS
ali foo dot JS tako ne dinamično ustvari pot,
iti naprej in predvidevam, da živi v javnem podimeniku,
to je vse, kar počne.
To je nekako tako kot preslikavi Larevel, vse za vašo spletno
ali vaš javni imenik namesto v Larevel.
Naslednja vrstica je samo pravijo, želim uporabiti poti,
Želim uporabiti stvari kot app dot dobili
ki smo jih videli pred nekaj trenutki in bomo videli v samo sekundo zdaj.
Torej app pika dobili sredstva poslušaj za to pot,
slash ko dobiš to to imenujemo anonimna funkcija, ki traja
na zahtevo in a Odziv in zdaj samo
kot Larevel imate pot upodobi predlogo,
Odziv dot render, citiram konec citata indeks,
render je predlogo imenujemo indeks,
to je to, tako da je začasno odvzame nit za trenutek pogled
na vsebino Imenik ogledov
in opazili tudi to super enostavna za zdaj,
tam je EJS dot indeks in iskanje EJS dot,
Očitno bi rad najprej
ker je to ena sem utrujen, da postane in bomo videli
V EJS dot indeksnih ogledov Najbolj dejansko povsem html
v tem trenutku, pa je pravzaprav ni template dogaja.
Tako da sem tehnično ni tudi ni treba, da ga pokličete EJS,
Ne rabim, da funkcionalnost ampak sem kar naprej ga enotna,
tako da je to, to je tisto, mi daje to zelo preprosto obliko.
Torej obstaja samo ena pot, če pogledamo tukaj, sem rekel,
da je to tisto, kar ročaji dobili slash iskanje, tako da dejansko SORT
Google kot trener za Obrazec za oddajo, ko prideš
Pot, ki to imenujemo anonimni funkcija
in postal predlogo imenovana iskanje
in kaj je druga Trditev verjetno pomeni.
Izgleda kot kodeku json objekt vrste ali Java script objekt.
Kakšna je vloga, ki Drugi argument domnevno?
>> [Oddelek neslišno]
>> Dejansko vprašanje, ki uporabnik vnesel v navidezno živi
na zahtevo dot poizvedbe, poizvedbe ki se nanaša na vse
piko vprašajem Q, ki je poljubno ime
, ki sem jo dal tako kot na Googlu
in medtem q debelega črevesa je le pravijo, prehajajo v predlogo,
EJS iskanje dot, Ključni q in vrednost
ne glede na q je dejanska vrednost je bila.
Tako da ostane samo ena Datoteka v interesu mnenj,
Iskanje dot EJS sem ohranil to super enostavno preveč,
To je večinoma samo html, razen eno nekoliko presenetljivo linije
ki je ta sintaksa tukaj ki je videti kot kup
različnih templating motorji, to samo pomeni vtič
pri vrednosti Q in da bo krepko.
Tako da ni dejansko iskanje funkcionalnost, vendar pa nekako
od predlagajte, kako bi jo strukturirati okostje
vloge, kot je ta.
Medtem ... Pravzaprav sem lahko pokaže eno stvar,
opazili, da imam nekaj html tukaj za CSS datoteke
in Java script datoteke, nič ni iz teh zbirk
v trenutku, ampak obvestilo, da obstaja javni imenik
kot sem že rekel, za statičnih slik tako da če grem
tam tam moj css imenik,
če grem tja Tam stilov dot css
In ni vsebine tam
ampak to je, kako bi jo imajo javno dostopne datoteke.
Dobro pa si oglejte na eni drugi varianti tukaj
in potem bomo uvesti ena ideja in odmor.
Torej je ta strežnik 6 zadnja, tako to je skoraj identična, razen
Za spodnjih dveh vrsticah ki je videti takole.
Tako dejansko obstaja tretja vrstica, ki je drugačen
vendar sem skrit ... tako, da me pusti nazaj rahlo navzgor, da se nekdo želi
predlagati, kaj se dogaja tukaj v smislu navadnega je
ali tehnični pogoji, kaj je razlikujejo glede te različice
v zvezi s tistimi črte na vrh vozlišč.
Kaj pa sem menda tu in zakaj je naredil?
Ja, Sharon.
>> [Oddelek neslišno]
>> Ja, izgleda, da sem preselil indeks in iskanje
tako ločen neposredno ali kaj podobnega, Jaz sem jih izoblikoval ven
in to je, da podobno kot v Larevel bi si dal vse
vašega krmilnika logike Notranjost poti dot php
anonimnih funkcij znova in znova in znova
ampak, da je slika seveda Lahko bi dobili precej masiven
tako na poti dot PHP, kaj najbolj
od vi počeli je ali ste podali ime
v skupino krmilnika ali celo ime za metodo
, da bi se moral imenuje
tako enaka Zamisel celo čeprav sintaksa je malo
razlikujejo tako tu gor obvestilo
da imam očitno izvajajo svoje lastne vozlišče js
modul in modul je le Java skript datoteko, ki spoštuje
v bistvu ena konvencija da bomo videli čez nekaj trenutkov.
Torej, predvidevam, da vsi moji funkcionalnost za indeks
in za iskanje imajo očitno je dal v tem imeniku
in zdaj kličem, da je celotno modul ali paket ali knjižnico,
karkoli hočeš Če pomislim, da, kot je,
kot poti spremenljivka imenovane poti.
Torej, očitno tam poti Indeks dot je metoda, imenovana
indeks in očitno obstaja druga metoda se imenuje iskanje
v tem poteh modulov ali knjižnica
in sem samo usmerjanju samo zato, da mi ni dal vse
moje anonimne kode znotraj mojega app datoteko.
Torej gremo na poti zaznali tam je js dot le indeks
in če gledam tukaj je to Konvencija sem mislil prej
tako da je to precej samovoljno ampak to je konvencija vozlišče.
Vsakič, ko izvajajo svoje vozlišče js knjižnica,
aka modul, ki ga v bistvu lahko napišite Java Script kodo, ki jo
želijo v tej datoteki, bo se zelo lepo pesek boxed
tako da vsi vi spremenljivke odločijo, da ne bodo trčijo
s knjižnico kdorkoli drug, spremenljivk ali metod ali karkoli
všeč, vendar nič želite izpostavljati
z zunanjim svetom ala javna metoda Java script
ali php ali drugih jezikih morate Pasti notranjosti
globalnega predmeta, ki avtor vozlišče se imenuje izvoz.
Torej, s tem izvoza dot Indeks bom izpostavljal uporabnike
tega modula metoda, imenovana indeks, ki se preslika v tej funkciji
tako da je anonimni na desna stran
vendar sem dejansko ji daje ime na levi strani
in izvažati v svetu
tako da lahko pokličete dot indeks ali pika iskanje.
Torej, da bo jasno, če bi imeli tudi nekaj podobnega kot funkcijski foo
sem, da je naredil nekaj
da bi funkcija popolnoma operativen,
to bi lahko imenovali v ta datoteka, vendar nihče
v zunanjem svetu hladno kdaj poklicati foo
ker to ni bil izvožen preko tega dot zapisu.
Tako, da je vse, kar se dogaja,
vse, kar je lepo ime razporejene za vas.
Torej končni rezultat, če to storim vozlišče app in osvežite stran, je
da če bom zdaj iskanje
za bar ... funkcionalno Te aplikacije so enaki
ampak to je nekako korak k čistejšemu izvajanju,
Vsekakor, ko začnete pisanje več in več kode
in da je vse to so.
Očitno ni posebej prefinjen ali zapletene
ampak v bistvu izhodišče
za kaj se bo vaš Prvo vozlišče js app.
Kaj bomo verjetno kasneje ta teden ali pa ta vikend
kot ste končali nekje na php aplikacije bomo sledili
z zelo preprost Vlogo za ekipo, da se potopite
v pisane v duhu, da ogrevanje vaja za php
ki temelji na mid raziskava semester,
ljudje niso našli koristne skozi uresničevanje
nekaj počnemo dokaj preprost
ampak precej voden pred vami dejansko rešiti nekaj več
sami, da bomo spremljati s tem
in v bistvu bo zaradi tednu in pol
Od zdaj nekoliko prekrivajo z php namerno.
Vsa vprašanja, nato na izraziti na vtičnico IO
ali zmedenost preostali od ponedeljka mogoče.
Vse je v redu, tako upam, da eden od da-a-načine, doslej je
da je za nekatere od teh Stvari zagotovo veliko manj
režijske stroške, kot si morda so bili uporabljeni za.
Torej, naj vam predstavim Še zadnja ideja,
tako zelo pogosti programing paradigma
Java skript, ki je dejansko prisotni v jQuery
V zadnjih različicah, da bi morali dejansko videl to tehniko
Pred vendar je tudi precej pogosti v vozlišču js svetu,
je skupno, da v Tim je lastna Knjižna polica knjižnica
tako da bomo to ponovili bolj konkreten primer
V trenutku je raztopina kodo, kot je ta,
To je predstavnik kode smo videli v ponedeljek, tako da se glasi datoteko
V tem smislu ni realna Postopek je podoben v duhu
na fs dot branje datoteke, ampak prevzemajo da je to le nekaj postavil
up način, ki ne Nekaj ​​zelo podobnega.
Tako smo naleteli na nekaj Vprašanja v ponedeljek na splošno
kaj je nekako ... zakaj je to spolzke strmine,
Ta pokliče nazaj paradigma za programiranje Java script
in jih pokliče nazaj paradigmo Mislim da to tehniko
kjer se ne vrneš Vrednosti takoj
ker je, da bi blokira strežnik
od počne nekaj drugega, ki je uporaben, boste namesto pokliče nazaj
kot so brenčali na Shake Shack, ko ste pripravljeni
prenesti nazaj odgovor kot argument.
To je spolzka tla
kjer je zelo hitro postane nadležno, zakaj?
Ja.
>> [Oddelek neslišno]
>> Ja, minimalno pa postane vrsta neberljiv desno
če imate vse te klic hrbet in če ste se držijo
do dobrega stila je pridobivanje Precej močno razčlenjena
v času in primeru moram poudariti to Primer, če ste nekako prelistati
s je preprosto namenjen odpreti JSON datoteko in jo natisnite,
kot da je to in še smo nekaj 8 ali 10 vrstic tukaj
ki so že nekako od ekipe zamaknjeni,
imamo poskusiti ulov, ki je
če niste seznanjeni, je obravnavanje napak tehnika
, ki vam omogoča, da poskusite nekaj
in če mu ne uspe, ste ujeti upajmo
brez vašega celotnega programa zaključku, vendar pa je
toliko kompleksnosti, kot si ti nekako za to morali premisliti
in Bog ne daj mi nekaj drugi asinhroni način poziva,
stvar je že bo tukaj,
si lahko mislite, da je to nekako z neumno estetske, vendar to
ker pokliče nazaj paradigma je tako skupno najmanj
v native kodo vozlišču to Zelo hitro postane dolgočasno,
težko debug, vdrtina začne pomembno, da lahko razvrščate
Chase stvari navzdol, to je samo ne zelo vesel način
od programing.
Torej, kaj ljudje so storile
v različnih kontekst vozlišča med Z njimi se poskušajo poenostaviti to,
os na primer obljube je še en način razmišljanja
o pisanju asinhrono kodo ki vizualno obrne nekaj
kot različica 1 v Ta različica 2.
Trdim, in to je spet nekako pomešana
med dejanskim kodo in psevdo kodo, to je reprezentativna
kako bi ponovno izvajati da točno isto stvar,
odpreti JSON datoteko ga razčleniti in ga natisnete
z uporabo nekaj imenovane obljube
in ključ sintaktična detajl
da je veriženje dogaja.
Opazimo, da samo podpičje
v celoti ... pravzaprav dobro dajva ... Ne želim, da bi zavajala.
To ni nujno potrebno ampak bodimo dosledni,
opazili, da podpičje , ki se nanaša na otvoritev
tega celotnega poslovnega izida je vso pot dol.
Torej, ko sem formatiran to ... zgledajo
kot tri izjave, tri Izjave, ki jih lahko vidite
v Java ali drugih jezikih da imajo poskusiti in ulov
in ravnanje izjema bolj na splošno.
Obvestilo, da sem verigo vrne vrednost vsakega
teh metod skupaj.
Torej, kaj se dogaja, preberite datoteko Če je ta metoda, ki obstaja
očitno poskuša za branje te datoteke,
pika, potem je tako, potem je zelo generično ime glede na svetu
obljub za Postopek, ki je treba izvesti
če je prejšnja stvar uspela.
Torej, to je nekako kot uspeh trener, tako da potem json dot parse,
dobro json dot parse je le metoda
v svetovnem knjižnici kodeku json in je očitno prilepi
v tem primeru Obljuba modela
zato smo rekli, da smo lahko samo Predvidevam, da se poziv tega tipa
in če mu uspe, potem poklical tega tipa in potem
če je to dejansko izvaja le tolažimo se prijavite podatke
V vprašanju.
Torej, kje je napaka ravnanje, opazil sem nekako
zelo slepo stopil off tej polici
in samo to imenoval Postopek in nato ta metoda
ne da bi kdaj preverjanja za težave.
Torej, kadar so tisti problem predvidoma ravnati ... pri teh
Izjave predpomnilnika tako različni knjižnice uporabljajo različne
konvencij, vendar v V tem primeru pa je nekako
za uspeh trener, predpomnilnik je neke vrste vodnik napaka
in ker smo lomljeno ta veriga še zmeraj uporablja
dot zapis povezati skupaj Prvotni način sklicevanje
za branje datotek in funkcije invokacijo morebitne napake razvrščanja
mehurček njihov način preko verige
dokler oni dejansko ravna ki je tako čistejši kot poskuša
za spopadanje s tem vsako prekleto korak poti
tako da bo koda zelo hitro postane nerealne podatke.
V tem primeru bo trdijo, da skušamo
ujeti tisto, kar se imenuje skladenjska napaka je v bistvu
podrazred bolj generično napakam in če se to zgodi terjatev
da je neveljavna json drugače če je bolj generično napako
da nismo pričakovali samo na splošno reči, ne more
preberite datoteko.
Zdaj je to le pomenilo da so reprezentativni koda
vendar če ste programirani surova Java script ali v Java
ali drugih jezikih, to je Postopkovna pravila v bistvu,
to je bolj tradicija poskusite izjav o ulovu
in to je estetsko in funkcionalnost, ki obljublja
ali poskuša, da bi vam , s katerim lahko pomislim
kot le pisanje poskusiti in potem ujeli in nato ujeti nimajo
skrbeti na vsak single možna točka
kjer napake lahko ročaj ... se zgodi,
lahko zmore vse na na koncu, kot je potrebno manjšega bloka
kode, in lahko celo razlikovati med napakami
kot jih lahko v tem primeru tukaj.
Torej nomenklatura, ki jih boste glej v literaturi morda
kot Tim predstavlja nekatere te stvari je preveč
da v idealnem želite obljublja, da bo reševanje
in reševanje obljuba sredstva da se je končno vrnil tako rekoč
vendar ne na tradicionalen način vrednosti, tako da bodisi uspe
za ne bistveno.
Vse je v redu z vsemi vprašanji, potem, to ni mišljeno, da bo zadostovala
za izpostavljenost obljube ampak samo miselni model
za kodo, ki jo bodo začeli videti.