10 gjëra që nuk i dinit se mund të bënte JavaScript

Autor: Randy Alexander
Data E Krijimit: 2 Prill 2021
Datën E Azhurnimit: 14 Mund 2024
Anonim
10 gjëra që nuk i dinit se mund të bënte JavaScript - Krijues
10 gjëra që nuk i dinit se mund të bënte JavaScript - Krijues

Përmbajtje

JavaScript ka bërë një rrugë të gjatë që nga lindja e tij në 1995. Një mënyrë e vështirë me siguri, plot keqkuptime, keqpërdorime dhe injorancë. Por kohët kanë ndryshuar, që prej pesë viteve të fundit JavaScript ka fituar gjithnjë e më shumë vëmendje. Me më shumë vëmendje, më shumë zhvillues në të vërtetë po përdorin JavaScript, duke e përdorur atë për shumë qëllime të ndryshme dhe duke shijuar bukurinë e tij. Histori klasike "Pog i shëmtuar", nëse më pyetni.

Në artikullin vijues, ne do të zbulojmë 10 raste përdorimi për JavaScript që janë të ndryshme nga ato të zakonshme "në shfletues", siç jeni mësuar.

01. timeshtë koha për një strehë

A ju kujtohet vizioni i viteve 80 të komunikimit me video të ngjashëm me Facetime?

U deshën vetëm 20 vjet para se kjo të kalonte në rrjedhën e zakonshme për shkak të pothuajse gjithkund të internetit të disponueshëm me bandë të gjerë dhe përdorimit të madh të një programi të vogël të quajtur Skype.

Me aftësitë e Adobe's Flash dhe përpjekjen e Google për të ndërtuar një rrjet social, ne tashmë kemi aftësitë e komunikimit video në shfletuesin tonë. A nuk do të ishte mirë të kesh ato aftësi pa përdorur një shtesë të palëve të treta siç është Flash?


Për fat të mirë, shitësit e shfletuesve menduan të njëjtën gjë dhe zbatuan API "getUserMedia" në softuerin e tyre. Ky ishte një hap i parë për të hyrë në pajisje si kamera ose mikrofona direkt nga shfletuesi juaj.

Duke përdorur Node.js si një server në pjesën e prapme të një aplikacioni të tillë, është çuditërisht e lehtë të transportosh sinjalin video përmes ajrit te një ose më shumë klientë. Për fat të keq, deri në kohën e shkrimit të kësaj, vetëm Chrome dhe Opera po mbështesin API, por të tjerët do të arrijnë shpejt.

Qasja më e pastër për një komunikim dy drejtimësh është një gjë e vetme e Chrome për momentin, e quajtur WebRTC. Për shkak të WebRTC, klientëve ju mundësohet hapja e kanaleve të komunikimit kolegëve për kolegët, duke lidhur drejtpërdrejt klientin me klientin.

Për hir të argëtimit, shikoni Zbatimin e Photo Booth të Sindre Sorhus në 121 bajt!

var video = dokument.getElementByTagName ('video') [0],
navigator.getUserMedia ('video', successCallback, errorCallback);

suksesi i funksionitCallback (transmetim) {
video.src = lumë;
}

gabimi i funksionit Telefonimi (gabimi) {
console.log (gabim);
}


02. $ ('drita'). FadeIn ();

Platforma e mikrokontrolluesit Arduino është një shembull i një shkalle A për një rast përdorimi JavaScript "jashtë kutisë". Për ata prej jush, të cilët nuk janë të njohur me platformën Arduino, këtu është një citim super i famshëm nga faqja e saj në internet:

"Arduino është një platformë prototipizimi elektronike me burim të hapur e bazuar në pajisje dhe softuer fleksibël, të lehtë për t'u përdorur. Intendedshtë menduar për artistë, dizajnerë, hobi dhe të gjithë të interesuarit për krijimin e objekteve ose mjediseve interaktive."

Vetë Arduino mbështet vetëm kodin e shkruar në C, i cili ende nuk është ndonjë problem i madh. Me disa rreshta C (përveç që të tjerët e kanë bërë këtë punë për ju), Arduino mund të marrë komanda përmes portës së tij USB përmes protokollit të portës serike.

Por si mund të hyni në portin serik përmes JavaScript? Shtë e qartë se jo nga shfletuesi.
Node.js në shpëtim!


Për shkak të përpjekjeve të avokatit të komunitetit Chris Williams, ne kemi një bibliotekë të portit serial Node, ku mund të dërgojmë të dhëna mbi protokollin e vjetër të SP. Ky ishte përparimi fillestar, bazuar në bibliotekë njerëzit e tjerë dolën me një qasje më abstrakte për aftësitë e Arduino. Për shembull bibliotekat node-arduino dhe duino.

Biblioteka më e nxehtë dhe e freskët përreth bllokut për programimin e drejtuar nga JS Arduino deri tani është jonny-pesë. Shikoni blogun e Bocoup për disa gjëra të nxehta që ata kanë bërë me platformën Arduino dhe shumë shtesa. Gjithashtu videoja JSConf nga Nicolai Onken dhe Jörn Zaefferer mund t'ju japë një rrotullim të asaj që është e mundur sot me pak kod.

03. Duart tuaja janë bërë për shfletuesin

Vizioni i ardhshëm i Minority Report (ai ku ata kontrollojnë kompjuterët me duart e tyre, jo makinat e shëmtuara) afrohet çdo ditë. Një hap i madh në këtë drejtim ishte kontrolluesi i Microsoft-it, përpjekja për të luajtur më pak, Kinect. Një lojë e mahnitshme mund të mendoni, por çfarë lidhje ka kjo me JavaScript ?!

Me lëshimin e Kinect SDK të Microsoft, një bandë njerëzish kaluan urën e përdorimit të shfletuesit për Kinect. Para së gjithash djemtë e ChildNodes që kanë ndërtuar një bibliotekë të plotë kinect.js që funksionon, që mundëson përdorimin e Kinect të Microsoft në shfletuesin tuaj.

Unë rekomandoj shumë të shikoni demonstrimet dhe videot e tyre, është një shpërthim. Sidoqoftë, një pengesë kryesore e bibliotekës kinect.js është se duhet të ketë një program serveri WebSocket që ekzekutohet në pjesën e pasme të klientit (në të vërtetë është ngjitësi Kinect -> C # -> JS).

Disa studentë me famë të MIT po punojnë për një zgjidhje për të shembur këtë mur, të quajtur DepthJS,
një shtesë në shfletuesin e cila mundëson përdorimin e Kinect për Chrome dhe Safari, madje edhe për faqet që nuk janë të optimizuara për përdorim të bazuar në Kinect në çdo formë. DepthJS aktualisht është në një fazë të hershme të zhvillimit, por padyshim që ia vlen të gjurmohet.

04. Lojërat 3D të kontrolluara me lojën tuaj

A keni provuar ndonjëherë të luani një lojë shfletuesi jo-Flash në ditët e sotme? Aftësitë grafike janë të mahnitshme, veçanërisht kur shihni klone lojërash si Quake.

Por kur luani këto gjëra jeni gjithmonë të lidhur me tastierën tuaj dhe miun (kryesisht) të ngathët. Ky është një disavantazh i madh, veçanërisht për lojërat aksion, me të vërtetë i mban ata larg nga shfletuesi.

A nuk do të ishte mirë nëse thjesht mund të fusni kontrolluesin tuaj Xbox në PC tuaj dhe të filloni të luani lojën tuaj të preferuar të shfletuesit? Ky nuk është më një vizion i së ardhmes, përshëndetni GamePad API!

Nëse keni një gamepad rreth tavolinës tuaj, lidheni atë tani dhe shijoni disa lojëra, që tashmë po përdorin GamePad API. Programimi i kontrolleve të hyrjes gjithashtu është një copë tortë, shikoni këtë copë kodi ose edhe më mirë, ekzekutojeni vetë:

div id = "gamepads"> / div>
skenari>
funksioni gamepadConnected (ngjarje) {
var gamepads = document.getElementById ("gamepads"),
gamepadId = ngjarje.gamepad.id;

gamepads.innerHTML + = "Gamepad-i i lidhur (id =" + gamepadId + ")";
}

window.addEventListener ("MozGamepadConnected", gamepadConnected, false);
/ skenari>

Nëse dëshironi të mësoni më shumë rreth aftësive 3D të shfletuesve shikoni Motorin simulator 3D me burim të hapur të Three.js dhe Jens Arps, ngritur në majë të tij. Mark Hammil kujdes, mund të na duhesh për një vazhdim tjetër të Komandantit të krahut!

05. Drejtimi i Flash-it në iPad-in tuaj

Si një adhurues i standardeve të hapura dhe fanboy i Apple duhet të pranoj që vërtet do të doja të falënderoja Apple që nuk vendos Flash në iPad dhe iPod, kjo me të vërtetë filloi një lëvizje të përqafimit të teknologjive të hapura si HTML5, CSS3 dhe JavaScript.

Si një punonjës i agjencisë, duhet të them se kjo është një situatë vërtet e keqe për klientët tanë.
Shumica e tyre duhet të paguajnë dy herë për një reklamë ose fushatë të thjeshtë që po fillojnë për të pasur përmbajtje interaktive që ekzekutohet në IE7 ose IE8 të vjetër përmes Flash dhe në shfletuesit modernë, si dhe iDevices përmes HTML5.

Plotësimi i veçorive të shfletuesve të vjetër ka kufijtë e tyre, kryesisht të quajtur performancë. Pra, a nuk ka një aftësi për të ekzekutuar Flash në ato iDevices pa Flash?

Sigurisht që është një, dhe sigurisht që është ndërtuar në JavaScript.

Një pjesë e historisë: Në 2010 Tobias Schneider lëshoi ​​një bibliotekë të vogël të quajtur Gordon
i cili lejoi skedarët SWF të ekzekutohen direkt në shfletues. Kjo funksionoi mjaft mirë për skedarët e vegjël Flash si reklamat që përdorën vetëm funksionalitete deri në versionin Flash 2, por funksionaliteti i nivelit më të lartë nuk u përfshi fare.

Kur Tobias u bashkua me kompaninë ueberJS UXEBU, ata dolën me një ide të re.
Dhe kështu, Lindi Bikeshed. Vetë Bikeshed është një lloj kornize animacioni JavaScript, por është gjithashtu një JavaScript në Flash për gjithçka që dëshironi të jetë përpiluese (është e bazuar në përshtatës, kështu që mund të shkruani adaptorë për gjithçka që dëshironi, megjithëse sjellja standarde është përpilimi i Flash në JavaScript) . Compatibleshtë i pajtueshëm me Flash 10 dhe ActionScript 3. Shikoni faqen e saj në internet për të mësuar më shumë rreth shumë veçorive të tij përveç përpiluesit.

06. Shkrimi i aplikacioneve për smartphone-in tuaj

Shkrimi i aplikacioneve vendase për mjediset e celularëve është një rrugë e vështirë. Fillon me vendimin se cilën platformë dëshironi të mbështesni. Nëse aplikacioni juaj ekzekutohet në një iPhone dhe iPad, një pajisje mobile me Android, Windows Mobile, pajisje Blackberry, faqe të bazuara në webOS ... dhe kështu me radhë.

Secila prej këtyre platformave ka API-të e veta dhe kryesisht përdor gjuhë të ndryshme programimi.
Nëse i keni mbijetuar luftërave të shfletuesit, më lejoni t'ju them se kjo është një mënyrë për të luftuar më vështirë. Nearlyshtë gati e pamundur që një zhvillues të ndërtojë një aplikacion për të gjitha këto platforma në kohë dhe buxhet.

Atëherë çfarë të bëjmë? Të punësoni më shumë zhvillues? Të ngarkosh më shumë për aplikacionet? Apo gjeni një qasje më të mirë për t'u siguruar që baza e kodit tuaj funksionon në çdo pajisje? Si shumica prej jush, unë do të preferoja qasjen e fundit.

Por në çfarë duhet të ndërtohen këto aplikacione? Çfarë kanë të përbashkët të gjitha këto platforma? Ju mund ta dini përgjigjen, është një shfletues uebi dhe për këtë arsye një motor JavaScript.

Kjo është ideja pas Apache Cordova, e njohur më mirë me emrin e saj të mëparshëm PhoneGap.
Cordova është një kornizë JavaScript e cila abstrakton API-të e secilit mjedis celular dhe ekspozon një API të pastër JavaScript për t’i kontrolluar të gjitha. Kjo ju mundëson të mbani një bazë të vetme të kodit, të cilën më pas e ndërtoni dhe vendosni në pajisje të ndryshme mobile.

Shikoni burimet këtu për të gjetur se si të përdorni Cordova për të ndërtuar aplikacione të lëvizshme që ndërtoni një herë dhe do të ekzekutohen kudo.

07. Drejtimi i Ruby dhe Python në shfletuesin tuaj

Mozilla, kompania prapa shfletuesit të famshëm Firefox, punëson shumë geek, kjo është e sigurt. Një nga ata është Alon Zakai një inxhinier në Ekipin Kërkimor Mozilla, që ndërtoi një mjet të çuditshëm të quajtur Emscripten.

Emscripten ju lejon të merrni kodin bit bit LLVM - i cili mund të gjenerohet nga bibliotekat e bazuara në C / C ++, në JavaScript. E bën këtë duke përpiluar bibliotekat në kod bit dhe më pas, duke marrë atë kod bit dhe duke e shndërruar atë në JavaScript. I zoti, por çfarë mund të bëj në të vërtetë me këtë, mund ta pyesni veten?

Unë kam një kundërpyetje për ju: a keni dëgjuar ndonjëherë frazën "Përdorimi i CoffeeScript dhe Prototype është më e afërta për të ekzekutuar Ruby në shfletuesin"? Jo Mos u shqetësoni, sepse kjo nuk është më e vërtetë.

Me Emscripten ju thjesht mund të merrni burimet Ruby, t'i shndërroni ato në JavaScript dhe voilà, të keni Rubin e vërtetë duke ekzekutuar në shfletuesin tuaj! Por kjo nuk vlen vetëm për Ruby, Python për shembull u përshkrua gjithashtu.

Ose shikoni dekoderin në shfletuesin H.264 Broadway. Kjo është në të vërtetë një bibliotekë e përshkruar C ++!

Shkoni te repl.it për të parë disa gjuhë programimi (përfshirë Ruby dhe Python) që funksionojnë në shfletuesin tuaj!

08. Shkrimi i programeve të pavarura të desktopit

Kemi biseduar për shënjestrimin e platformave të shumta mobile me ndihmën e Apache Cordova më parë. Për çudi, JavaScript jo vetëm që mund të përdoret për të synuar platforma mobile, por edhe miku ynë i vjetër, kompjuteri desktop mund të zgjidhet.

Zgjidhjet e para erdhën nga djemtë e Appcelerator me Titanium Desktop Suite dhe nga Adobe platforma Air e përdorur gjerësisht.

Por si adhurues të burimit të hapur që të gjithë jemi, një teknologji më e hapur dhe e bazuar në Node.js është ajo që ne po kërkojmë. Njihuni me app.js! app.js është një teknologji e hapur dhe ndërtuese e programeve desktop të bazuar në Node.js, që na lejon të shkruajmë programe të vërteta desktop me qasje në sistemin e skedarëve, kontrolle të dritareve dhe më shumë. Ne mund të mbështetemi në API-të e ndër-platformës së qëndrueshme të Node dhe të ndërtojmë softuerin tonë UI me HTML dhe CSS. Ashtu si gjërat e reja më të nxehta në këtë listë këtu.

app.js është një projekt mjaft i ri dhe prandaj mbështet vetëm Windows dhe Linux deri tani, por sipas listës së postave, mbështetja për Mac është në rrugën e saj.

09. Drejtimi i një serveri të internetit

Në ditët e sotme, ju nuk tronditni askënd kur u tregoni se faqja juaj në internet po shërbehet nga një server i bazuar në JavaScript. Nëse i mendoni dy ose tre vjet më parë dhe u thoni zhvilluesve të internetit saktësisht të njëjtën gjë, ata ndoshta do të kishin qeshur me ju ose edhe më keq.

Por me suksesin e pabesueshëm të Node.js kjo për fat të mirë është larg nga tani. Jo vetëm që nuk i habit më njerëzit, për shkak të natyrës së saj asinkrone Node.js është një lloj njerëzor në performancë, veçanërisht kur bëhet fjalë për të përballuar problemin e shumë lidhjeve paralele. Jo vetëm që performanca e tij është një shpërthim, API me të vërtetë e thjeshtë tërheq shumë zhvillues, gjithashtu. Le të shikojmë shembullin "Hello World" nga bota Node, nuk është vetëm një shtypje "Hello World" në shembullin e ekranit, por është një server në internet!

var http = kërkoj ('http');
http.createServer (funksioni (req, rez) {
res.writeHead (200, {'Content-Type': 'text / plain'});
res.end ('Përshëndetje Botërore n');
}). dëgjoni (1337, ’127.0.0.1’);

Nëse nuk ju merr fryma nga kjo thjeshtësi, mirëpo, as unë nuk mund t'ju ndihmoj.

Një nga pjesët më të mira të popullaritetit (ose hype) të Nyjes është që kompanitë e mëdha si Microsoft në të vërtetë po e mbështesin atë, dmth. Në Azure Cloud Services!

10. Mbërthimi i faqeve në internet dhe shkrepja e ekranit

Pra, e fundit, por jo më pak e rëndësishmja, le të hedhim një vështrim në një projekt që unë personalisht e dua sepse më la të ekzekutoja testet e QUnit pa kokë në vijën e komandës. PhantomJS është një shfletues pa kokë i bazuar në WebKit me një API të pastër JavaScript (ose CoffeScript).

Por testimi i JavaScript dhe DOM nuk është rasti i vetëm i përdorimit për Phantom. Ajo që më magjeps me të vërtetë janë aftësitë e saj për të pastruar faqet e internetit dhe për t'ju lejuar të merrni pamje nga ekrani i saj!
Po, po lexon mirë, me Phantom mund të nxjerrësh faqe në internet në formate të ndryshme grafike dhe, natyrisht, është po aq e lehtë sa të vjedhësh ëmbëlsira nga një foshnjë.

Le të hedhim një vështrim në një skenar që e bën pikërisht këtë:

faqe var = faqe e re në internet ();
page.open ('http://google.com', funksioni (statusi) {
faqe.render ('google.png');
fantom.dalje ();
});

Kjo është gjithçka që ju nevojitet për të bërë një pamje të ekranit dhe sepse është e bazuar në JavaScript, ju gjithashtu mund të përdorni jQuery dhe të manipuloni përmbajtjen e faqes përpara se ta shihni atë në ekran!

Prisni! Ka më shumë ...

Kështu që, shpresoj të jesh i mahnitur si unë, kur zbulova secilën nga këto mjete. Ky artikull sapo ka gërvishtur sipërfaqen e asaj që është e mundur me JavaScript në ditët e sotme. Ka shumë më tepër si IDE të shkruara plotësisht në JS Cloud9 ose gjëra me siguri të lartë të bëra me të (Karta juaj e kreditit është bërë me JavaScript).

Shpresoj që të ndiheni të frymëzuar, të merrni pak kohë dhe të luani me disa nga projektet e përmendura këtu, ose edhe më mirë të merrni disa nga këto mjete dhe të ndërtoni gjëra të reja rreth tyre. Shumica e kësaj këtu është me burim të hapur dhe ka zhvillues atje, duke kërkuar që ju t'i ndihmoni ata të përmirësojnë punën e tyre, edhe nëse kjo është vetëm duke përdorur mjetet, duke zbuluar mete dhe duke i raportuar ato.

Postime Interesante
Skrivr e bën të lehtë tipografinë e bukur
Zbuloj

Skrivr e bën të lehtë tipografinë e bukur

krivr ë htë një mjet që heq punën e madhe nga tipografia e bukur në internet. Titujt krye orë dhe hkronjat e titujve rregullohen automatiki ht për t'iu p&#...
Rishikimi i Jamie Hewlett
Zbuloj

Rishikimi i Jamie Hewlett

Prezantuar bukur me një kolek ion të gjerë arti, ky libër ë htë mënyra perfekte për të parë karrierën e një legjende të artit kult. hum...
Krijoni një libër adresash me PHP
Zbuloj

Krijoni një libër adresash me PHP

Ky artikull u hfaq për herë të parë në numrin 228 të revi të .net - revi ta më e hitur në botë për krijue it e faqeve në internet.MongoDB &#...