Nauðsynlegt fyrir JavaScript forritara: Leiðbeiningar um skilvirka villuleit og örugga kóðun
Nauðsynlegt fyrir JavaScript forritara: Leiðbeiningar um skilvirka villuleit og örugga kóðun
JavaScript er hornsteinn vefþróunar og er mikið notað í framenda, bakenda og farsímaforritum. Hins vegar gera kraftmiklir eiginleikar JavaScript og flókið keyrsluumhverfi það einnig að svæði þar sem villur og öryggisveikleikar eru algengir. Í þessari grein verður fjallað um umræður um JavaScript á X/Twitter og veitt röð hagnýtra ráða og bestu starfsvenja fyrir JavaScript forritara frá sjónarhóli villuleitarverkfæra, öruggrar kóðunar og hagræðingar á afköstum til að hjálpa öllum að skrifa traustari og öruggari kóða.
I. Kveðja að giskum: Skilvirk JavaScript villuleitartækni
Villuleit er ómissandi hluti af þróunarferlinu. Í stað þess að villast í console.log aðferðinni í vélinni, er betra að ná tökum á skilvirkari villuleitarverkfærum og tækni.
1. Notaðu þróunarverkfæri vafrans:
Nútíma vafrar hafa innbyggð öflug þróunarverkfæri sem bjóða upp á virkni eins og villuleit með brotpunktum, netvöktun og afköstagreiningu.
-
Stilltu brotpunkta: Stilltu brotpunkta á lykilstöðum í kóðanum til að gera hlé á keyrslu forritsins, sem gerir forriturum kleift að athuga gildi breytna og stöðu forritsins. Þróunarverkfæri vafrans gera þér kleift að stilla brotpunkta beint í frumkóðanum með því að smella á línunúmerin.
-
Skref fyrir skref keyrsla: Notaðu skref fyrir skref keyrsluaðgerðir (Step Over, Step Into, Step Out) til að keyra kóðann línu fyrir línu og fylgjast með keyrsluflæði forritsins.
-
Skoðaðu kallstaflann: Kallstaflinn skráir röð kallana á aðgerðir og getur hjálpað forriturum að finna staðsetningu vandamála fljótt.
-
Fylgstu með tjáningum: Bættu tjáningum sem þú þarft að fylgjast með við „Watch“ spjaldið í þróunarverkfærinu til að skoða breytingar á gildum tjáninganna í rauntíma.
2. Notaðu Toast.log vafraviðbótina:
Eins og @@Shefali__J minntist á á Twitter, þá er Toast .log mjög gagnleg vafraviðbót sem getur birt villur, viðvaranir og upplýsingar úr vélinni beint á síðunni án þess að opna vélina í þróunarverkfærinu. Þetta er mjög gagnlegt til að finna vandamál fljótt og bæta skilvirkni villuleitar.
Skref:
- Leitaðu að „Toast .log“ í Chrome vefversluninni eða annarri vafraviðbótarverslun og settu hana upp.
- Þegar uppsetningu er lokið skaltu endurnýja vefsíðuna þína.
- Þegar JavaScript kóði framleiðir villur, viðvaranir eða upplýsingar mun Toast .log birta þær sem Toast skilaboð á síðunni.
3. Notaðu Source Maps:
Fyrir JavaScript kóða sem hefur verið þjappaður eða umritaður (til dæmis með Babel eða TypeScript) geta Source Maps kortlagt þjappaðan kóða aftur í upprunalega kóðann, sem gerir forriturum kleift að villuleita auðveldlega.
Uppsetning:
- Gakktu úr skugga um að byggingarverkfærin þín (til dæmis Webpack, Parcel) séu rétt stillt til að búa til Source Maps skrár.
- Virkjaðu Source Maps stuðning í þróunarverkfærum vafrans.
4. Notaðu debugger skipunina:
Með því að setja debugger skipunina beint inn í kóðann geturðu neytt forritið til að gera hlé þegar það keyrir á skipuninni og opnað þróunarverkfæri vafrans sjálfkrafa.
function myFunction(arg) {
// ...
debugger; // Forritið mun gera hlé hér
// ...
}
5. Notaðu faglega JavaScript villuleitara:
Fyrir flóknari verkefni geturðu íhugað að nota faglega JavaScript villuleitara, eins og villuleitarana sem eru samþættir í IDE eins og Visual Studio Code eða WebStorm. Þessir villuleitarar bjóða venjulega upp á öflugri virkni, eins og fjarvilluleit, minnisgreiningu o.s.frv.
II. Forvarnir eru betri en lækning: Bestu starfsvenjur fyrir örugga JavaScript kóðun
Ekki má hunsa öryggisvandamál JavaScript kóða. Eins og @@badcrack3r minntist á á Twitter, getur það haft alvarlegar afleiðingar að leka aðgangstáknum í JavaScript skrám. 1. Forðastu að geyma viðkvæmar upplýsingar á biðlaranum:
Aldrei geyma viðkvæmar upplýsingar eins og API lykla, lykilorð notenda o.s.frv. á biðlaranum. Þessar upplýsingar ættu að vera geymdar á þjóninum og aðgangur að þeim ætti að vera í gegnum örugg API tengi.
2. Framkvæmdu stranga staðfestingu og síun á inntaki notenda:
Aldrei treysta inntaki notenda. Framkvæmdu stranga staðfestingu og síun á öllum gögnum sem notendur setja inn til að koma í veg fyrir öryggisveikleika eins og XSS (Cross-Site Scripting) og SQL innspýtingu.
Dæmi:
// HTML flótti fyrir inntak notenda til að koma í veg fyrir XSS árásir
function escapeHtml(text) {
var map = {
'&': '&',
'': '>',
'"': '"',
"'": '''
};
return text.replace(/[&<>"']/g, function(m) { return map[m]; });
}
// Sæktu inntak notenda
let userInput = document.getElementById("userInput").value;
// Flótti inntak notenda
let safeInput = escapeHtml(userInput);
// Sýndu öruggt inntak notenda á síðunni
document.getElementById("displayArea").innerHTML = safeInput;
3. Notaðu CSP (Content Security Policy):
CSP er HTTP svarhaus sem getur takmarkað uppruna auðlinda sem vafrinn hleður inn og komið í veg fyrir innspýtingu illgjarnra skrifta.
Stilla CSP:
Stilltu CSP svarhausinn á þjóninum, til dæmis:
Content-Security-Policy: default-src 'self'; script-src 'self' https://trusted-cdn.com; style-src 'self' 'unsafe-inline'; img-src 'self' data:;
4. Skannaðu kóðann reglulega fyrir veikleikum:
Notaðu fagleg öryggisskönnunartól, eins og Snyk, OWASP ZAP o.s.frv., til að skanna kóðann reglulega fyrir öryggisveikleikum og lagaðu þá tímanlega.
5. Notaðu tól eins og SecretFinder til að greina leka á viðkvæmum upplýsingum:
Eins og @@chc_course minntist á á Twitter, þá er SecretFinder Python tól sem hægt er að nota til að greina hugsanlega leka á viðkvæmum upplýsingum í JavaScript skrám, eins og API lykla, aðgangstákn o.s.frv.
Skref:
- Settu upp SecretFinder:
pip install secretfinder - Notaðu SecretFinder til að skanna JavaScript skrá:
python secretfinder.py -i your_javascript_file.js -o output.txt - Athugaðu úttaksskránna til að sjá hvort það sé leki á viðkvæmum upplýsingum.
6. Notaðu HTTPS samskiptareglur:
Gakktu úr skugga um að vefsíðan noti HTTPS samskiptareglur til að dulkóða gögnin sem send eru og koma í veg fyrir árásir af manni í miðjunni.
III. Fínstilltu afköst: Bættu skilvirkni JavaScript kóða
Afköst JavaScript kóða hafa bein áhrif á upplifun notenda. Að fínstilla afköst JavaScript kóða getur bætt hleðsluhraða og viðbragðshraða vefsíðunnar.
1. Fækkaðu HTTP beiðnum:
Fækkaðu eins mikið og hægt er HTTP beiðnum sem þarf til að hlaða síðuna, eins og að sameina CSS og JavaScript skrár, nota CSS Sprites o.s.frv.
2. Þjappaðu JavaScript kóða:
Notaðu tól (eins og UglifyJS, Terser) til að þjappa JavaScript kóða og minnka skráarstærðina.
**3. Seinkaðu hleðslu á ómissandi auðlindum:**4. Notkun CDN:
Dreifðu kyrrstæðum auðlindum (eins og JavaScript skrám, CSS, myndum o.s.frv.) á CDN (Content Delivery Network) til að auka hleðsluhraða auðlinda.
5. Forðastu minnisleka:
Gættu þess að losa um hluti og breytur sem eru ekki lengur í notkun til að forðast minnisleka.
6. Fínstilltu DOM aðgerðir:
Reyndu að minnka DOM aðgerðir og forðastu tíðar DOM aðgerðir sem geta valdið töfum á síðunni. Notkun documentFragment getur uppfært DOM í lotum og bætt afköst.
7. Notkun Web Workers:
Fyrir flókin útreikningsverkefni er hægt að nota Web Workers til að keyra þau í bakgrunni til að forðast að hindra aðalþráðinn.
8. Notkun Vanilla JavaScript:
Eins og @@mannay minntist á á Twitter, í sumum einföldum tilfellum getur notkun hreinnar JavaScript (Vanilla JavaScript) verið skilvirkari en að nota ramma.
9. Drag & Drop fínstilling
Eins og @@midudev minntist á á Twitter @atlaskit/pragmatic-drag-and-drop, fyrir drag & drop atburðarásir er mikilvægt að velja létt og afkastamikið bókasafn til að fínstilla afköst.
IV. Haltu áfram að læra: Faðmaðu framtíð JavaScript
JavaScript tungumálið og vistkerfið eru í stöðugri þróun. Sem JavaScript forritari þarftu stöðugt að læra nýja tækni og verkfæri til að halda samkeppnishæfni.
1. Fylgstu með nýjustu tækniþróun:
Fylgstu með nýjustu tækniþróun í JavaScript samfélaginu, eins og nýjum ECMAScript stöðlum, nýjum ramma og bókasöfnum o.s.frv.
2. Taktu þátt í opnum verkefnum:
Að taka þátt í opnum verkefnum getur hjálpað þér að læra af reynslu annarra forritara og bæta forritunarkunnáttu þína.
3. Lestu góðan kóða:
Að lesa góðan kóða getur hjálpað þér að læra góðan forritunarstíl og hönnunarmynstur.
4. Æfing:
Eins og margir notendur deildu hlekkjum á Twitter, er að klára nokkur verkefni besta leiðin til að læra. Hvort sem það eru litlir leikir eða flókin vefforrit, þá getur æfing virkilega hjálpað þér að skilja og ná tökum á JavaScript þekkingu og færni.





