Վերադառնալ
SiTech
Փոքր ծրագրավորման հնարքներ. ինչու են գիտելիքի մանր կտորտանքները օգտակար ամեն օր
SiTech AI Team3 წთ. საკითხავი

Փոքր ծրագրավորման հնարքներ. ինչու են գիտելիքի մանր կտորտանքները օգտակար ամեն օր

Ուիլ Քելեհերը պնդում է, որ ինժեների ամենօրյա արտադրողականության զգալի մասը գալիս է գիտելիքի փոքրիկ, ինքնուրույն կտորտանքներից՝ git pickaxe որոնումներից մինչև լոգարիթմական մետրիկներ։

Ինչու է փոքր գիտելիքը կարևոր

Ուիլ Քելեհերը նոր բլոգային գրառման մեջ պնդում է, որ ամենօրյա ինժեներական արտադրողականության զարմանալիորեն մեծ մասը գալիս է գիտելիքի փոքրիկ կտորտանքներից. իմանալ, որ լեզվում կա որոշակի հնարավորություն, հասկանալ, որ չբացատրված TCP-ի ուշացումը հավանաբար կապված է Nagle-ի ալգորիթմի հետ, հիշել ճիշտ git հրամանը դժվար իրավիճակից դուրս գալու համար կամ իմանալ ֆայլը վերաշարադրելու հնարք։

Տերմինալում և Git-ում

Նրա օրինակները սկսվում են տերմինալից։ Ctrl+R-ը որոնում է հրամանների պատմության մեջ, իսկ fzf-ի տեղադրումը այդ որոնումը դարձնում է մշուշոտ (fuzzy)։ atuin-ը պատմությունը փոխարինում է որոնելի SQLite բազայով, իսկ per-directory-history-ն թույլ է տալիս հերթով որոնել միայն ընթացիկ թղթապանակում գործարկված հրամանները կամ բոլոր նախորդ հրամանները։ Git-ում git log -S pattern-ը՝ այսպես կոչված pickaxe-ը, թվարկում է բոլոր commit-ները, որոնք ավելացրել կամ ջնջել են տրված տողը. հեղինակի խոսքով՝ սա չափազանց օգտակար է հին կոդային բազաներում։ git log -G-ն նման է, սակայն ցույց է տալիս նաև, երբ տողը տեղափոխվել է։ Իսկ git checkout -ը վերադարձնում է նախորդ HEAD-ին, ինչպես cd -ը՝ նախորդ թղթապանակին։

Նա նաև պնդում է, որ find, ամենայն հավանականությամբ, ձեզ պետք չէ. find-ի բազմաթիվ հրամաններ փոխարինվում են **/*.md նման գլոբերով, որոնք shell-ների մեծ մասը սատարում է առանց կարգավորման, իսկ bash-ին նախ անհրաժեշտ է shopt -s globstar։ zsh-ի ընդլայնված ավտոլրացումը, նրա նշումով, լռելյայն միացված չէ և ակտիվանում է մի քանի տողով։

Տվյալների բազաներ, մետրիկներ և JavaScript

Հնարքների մի մասը ավելի արագ պատասխան ստանալու մասին է։ SELECT-ը առանց FROM-ի աշխատում է SQL-ում և արագ եղանակ է ստուգելու, թե ինչպես է իրեն պահում ֆունկցիան կամ հիշելու, թե ինչ է վերադարձնում SELECT TRUE <> NULL-ը։ Թե՛ PostgreSQL-ը, թե՛ MySQL-ը սատարում են explain analyze-ը, որը փաստացի կատարում է հարցումը և տալիս շատ ավելի շատ տեղեկատվություն դրա աշխատանքի մասին, քան սովորական explain-ը։ Մետրիկների դեպքում էլ լոգարիթմական դույլի գրանցումը, օրինակ Math.floor(Math.log10(count)), պատկերացում է տալիս արժեքների բաշխվածության մասին, ոչ միայն միջինի։

JavaScript-ի կողմից նա նշում է Array.flatMap-ը, Object.entries-ը և Promise.withResolvers-ը որպես իմանալու արժանի ժամանակակից հնարավորություններ, ինչպես նաև Node.js-ի մի հնարք՝ անհամաչափ մեծ ազդեցությամբ. https.Agent ստեղծելը և այն fetch կանչերին փոխանցելը բաց է պահում արտաքին ռեսուրսի հետ կապը, ինչը կարող է կտրուկ ազդել ուշացման վրա։

Ընկերության գիտելիքը նույն նյութից է

Ընկերության ներսում, նշում է Քելեհերը, էլ ավելի շատ գիտելիք այս ձևն է ընդունում. որ տվյալների աղբյուրն օգտագործել կոնկրետ խնդիրը վերլուծելիս, ով լավ է տիրապետում որևէ ոլորտին և ուրախ կօգնի, որտեղ է լավ փաստաթղթավորումը, որ ազդանշանն է նշանակում, որ ծառայությունը պետք է ձեռքով մասշտաբավորել, ինչպիսին է փուլային վերագործարկման հրամանը, որ գործիքն է ձանձրալի խնդիրը սկրիպտավորելի դարձնում։ Նախորդ ընկերությունում նա ամեն օր մեկ հնարք էր կիսում ինժեներական թիմի հետ Slack-ում՝ և՛ տեխնիկական, և՛ ընկերությանը հատուկ։

SSiTech

SiTech — AI-ով հզորացված վեբ մշակում

Ստեղծում ենք արագ ու ժամանակակից կայքեր և AI-ը ներդնում իրական բիզնես գործընթացներում։ Ունե՞ք նախագիծ կամ հարց։ Ուրախ կլինենք օգնել։