What Is the Virtual DOM, and Why Does It Make React So Fast? ๐
If youโre diving into React or curious why itโs known for its speed, youโve probably heard the term โVirtual DOMโ thrown around. But what exactly is it, and why does it matter?
Letโs examine it and see why the Virtual DOM is one of the secret ingredients that make React so powerful.
https://medium.com/p/420fdc24a13b
โค5
Node.js 24 is here and it's looking good ๐๐
Featuring updates to V8 v13.6, npm v11, improved Permission Model and more new features in the blog.
Check it out: https://hubs.ly/Q03lfLDC0
โค5๐1
ู
ูููู
ุงูู OAuth 2.0 ๐ก
.
.
ุชุฎูู ุฅูู ุฏุงุฎู ุชุณุฌูู ูู ุชุทุจูู ุฌุฏูุฏ ุนูุดุงู ุชุชุงุจุน ููุฑุณุงุชุ ููู ุง ุฌูุช ุชุณุฌููุ ุงูุชุทุจูู ูุงูู:
"ุชูุฏุฑ ุชุณุฌูู ุจุญุณุงุจ Google ุฃู GitHub ุจุฏู ู ุง ุชุนู ู ุฃูููุช ุฌุฏูุฏ"
ุถุบุทุช ุนูู ุฒุฑุงุฑ "Continue with Google"ุ ูGoogle ุทูุจุช ู ูู ุชุฎุชุงุฑ ุงูุฅูู ูู ูุชูุงูู ุนูู ุดููุฉ ุตูุงุญูุงุช.
ุจุนุฏูุง ุงูุชุทุจูู ูุชุญ ูุงุดุชุบู ููุฃูู ุนู ูุช sign up ูุนููุง...
ุฅูู ุงููู ุญุตู ููุงุ ๐ค
ุงููู ุญุตู ุจุงูุถุจุท ูู ุฅู Google ุงุณุชุฎุฏู ุช ุญุงุฌุฉ ุงุณู ูุง OAuth 2.0.
โโโ
ุจุจุณุงุทุฉุ ุงูู OAuth 2.0 ูู ุจุฑูุชูููู authorization (ู ุด authentication)ุ ุจูุฎููู ุงูุชุทุจููุงุช ุชูุฏุฑ ุชุงุฎุฏ ุฅุฐู ู ู ุงูู ุณุชุฎุฏู ุนุดุงู ุชุฏุฎู ุนูู ุฌุฒุก ู ู ู ุนููู ุงุชู ูู service ุชุงููุฉ (ุฒู Google, Facebook, GitHub) ู ู ุบูุฑ ู ุง ูุนุฑููุง ุงูุจุงุณูุฑุฏ ุจุชุงุนุชู.
ูุนูู ุงูุชุทุจูู ุงููู ุจุชุณุชุฎุฏู ู ู ุด ุจูุดูู ุงูุจุงุณูุฑุฏ ุจุชุงุนุชูุ ุจุณ ุจูุงุฎุฏ ุชููู ู ุคูุช ููุฏุฑ ูุณุชุฎุฏู ู ูุฏุฎู ุนูู ุงูู APIs ุงููู ุฃูุช ูุงููุช ุนูููุง.
ูุฏู ุจูุฎูู ุงูุนู ููุฉ ุขู ูุฉุ ูุจูุญุงูุธ ุนูู ุงูุฎุตูุตูุฉ ุจุชุงุนุชู.
โโโ
ุชุนุงู ูู ุดู ุฎุทูุฉ ุจุฎุทูุฉ ูู ุงูู flow ุงูู ุดููุฑ ุจุชุงุน Authorization Code Grant Flowุ ูุงููู ุจูุณุชุฎุฏู ูู web apps
1- ุงูู User Requests Login
ุงูุชุทุจูู (Client) ููููู: "ุณุฌูู ุจุญุณุงุจ Google ู ุซููุง"ุ ูุงูู ุณุชุฎุฏู ูุถุบุท ุนูู ุงูุฒุฑุงุฑุ ููุชู ุชูุฌููู ุนูู authorization server (ุฒู Google).
2- ุงูู User Grants Permission
ุฌูุฌู ูุทูุจ ู ูู ุชุณุฌูู ุฏุฎูู ูุชูุงูู ุนูู ุงูู permissions ุงููู ุงูุชุทุจูู ุทุงูุจูุง (ุฒู ุงูุฅูู ููุ ุงูุงุณู ุ ุฅูุฎ).
3- ุงูู Authorization Code
ูู ูุงููุชุ Google ููุจุนุช authorization code ููุชุทุจูู (ุฃู ุชุญุฏูุฏูุง ููู redirect URL ุงููู ุงูุชุทุจูู ุญุฏุฏู ูุจู ูุฏู).
4- ุงูู Token Exchange
ุงูุชุทุจูู ูุงุฎุฏ ุงูู authorization code ุฏู ููุจุนุช request ูู token endpoint ุนูุดุงู ูุจุฏูู ุจู access token (ูุณุงุนุงุช ูู ุงู refresh token).
5- ุงูู Access Protected APIs
ุจู ุฌุฑุฏ ู ุง ุงูุชุทุจูู ูุงุฎุฏ ุงูู access tokenุ ููุฏุฑ ูุณุชุฎุฏู ู ูุทูุจ ุจูุงูุงุช ู ู Google APIsุ ุจุณ ูู ุญุฏูุฏ ุงูู scope ุงููู ูุงููุช ุนููู.
โโโ
ูู ุนูุฏู API ูุนุงูุฒ ุชุฃู ููุงุ ู ู ูู ุชุณุชุฎุฏู OAuth 2.0 ุจุญูุซ:
- ุฃู Client ู ุด ูููุฏุฑ ููุตู ูู API ุบูุฑ ูู ุง ููุฏูู Access Token ุตุงูุญ.
- ุงูู Backend ุจุชุงุนู ููุฏุฑ ูุชุญููู ู ู ุงูุชููู (ู ุซููุง JWT ุฃู ุนู ุทุฑูู introspection endpoint).
- ุชูุฏุฑ ุชุชุญููู ูู ุงูุตูุงุญูุงุช ุนู ุทุฑูู ุงูู scope (ูุนูู ู ุซููุง ุชููู ู ุนูู ููุฏุฑ ููุฑุฃ ุจุณุ ูุชููู ุชุงูู ููุฏุฑ ููุชุจ ููุนุฏูู).
- ุชูุฏุฑ ุชุณุญุจ ุตูุงุญูุงุช ุงูุชููู ูู ุฃู ููุช (Revoke).
ุจุงูุชุงููุ OAuth 2.0 ุจูุฃู ูู ุงูู APIs ุนู ุทุฑูู ุฅูู:
โ ุจูููู ุงูุงุนุชู ุงุฏ ุนูู ููู ุงุช ุงูู ุฑูุฑ
โ ุจูุณู ุญ ุจุงูู delegation (ุชุทุจูู ูุงุฎุฏ ุฅุฐู ู ู ู ุณุชุฎุฏู ููุตู ูุญุงุฌุฉ ู ุด ุจุชุงุนุชู)
โ ุจูุฎูู ุงูู tokens ู ุคูุชุฉุ ูู ู ูู ุชุชุญูู ูู ุตูุงุญูุงุชูุง ูู ุฏูุชูุง
โโโ
- ุงูู Authorization Code (with PKCE): ููู ูุจุงูู ูุงูููุจ.
- ุงูู Client Credentials: ููู machine-to-machine apps.
- ุงูู Password (deprecated): ูุงู ุจูุณุชุฎุฏู ูู ุง ุงูู ุณุชุฎุฏู ููุชุจ ุงูู username ูุงูุจุงุณูุฑุฏ ูู ููุณ ุงูุชุทุจูู (ุบูุฑ ุขู ู).
- ุงูู Implicit (deprecated): ุฒู ุงู ูุงู ุจูุชุณุชุฎุฏู ููู SPA apps ูููู ุบูุฑ ู ูุตู ุจู.
โโโ
ูู ููุช ุจุชุณุชุฎุฏู OAuth 2.0 ูู ู ูุจุงูู ุฃู SPA appุ ูุงุฒู ุชุณุชุฎุฏู ุญุงุฌุฉ ุงุณู ูุง PKCE (Proof Key for Code Exchange) ุนูุดุงู ุชู ูุน ุงูู authorization code ู ู ุฅูู ูุชุณุฑู.
โโโ
ููููู ุงููู ููู ุฎูุฑ ๐ฟ
.
.
ุชุฎูู ุฅูู ุฏุงุฎู ุชุณุฌูู ูู ุชุทุจูู ุฌุฏูุฏ ุนูุดุงู ุชุชุงุจุน ููุฑุณุงุชุ ููู ุง ุฌูุช ุชุณุฌููุ ุงูุชุทุจูู ูุงูู:
"ุชูุฏุฑ ุชุณุฌูู ุจุญุณุงุจ Google ุฃู GitHub ุจุฏู ู ุง ุชุนู ู ุฃูููุช ุฌุฏูุฏ"
ุถุบุทุช ุนูู ุฒุฑุงุฑ "Continue with Google"ุ ูGoogle ุทูุจุช ู ูู ุชุฎุชุงุฑ ุงูุฅูู ูู ูุชูุงูู ุนูู ุดููุฉ ุตูุงุญูุงุช.
ุจุนุฏูุง ุงูุชุทุจูู ูุชุญ ูุงุดุชุบู ููุฃูู ุนู ูุช sign up ูุนููุง...
ุฅูู ุงููู ุญุตู ููุงุ ๐ค
ุงููู ุญุตู ุจุงูุถุจุท ูู ุฅู Google ุงุณุชุฎุฏู ุช ุญุงุฌุฉ ุงุณู ูุง OAuth 2.0.
โโโ
๐ ูุนูู ุฅูู OAuth 2.0ุ
ุจุจุณุงุทุฉุ ุงูู OAuth 2.0 ูู ุจุฑูุชูููู authorization (ู ุด authentication)ุ ุจูุฎููู ุงูุชุทุจููุงุช ุชูุฏุฑ ุชุงุฎุฏ ุฅุฐู ู ู ุงูู ุณุชุฎุฏู ุนุดุงู ุชุฏุฎู ุนูู ุฌุฒุก ู ู ู ุนููู ุงุชู ูู service ุชุงููุฉ (ุฒู Google, Facebook, GitHub) ู ู ุบูุฑ ู ุง ูุนุฑููุง ุงูุจุงุณูุฑุฏ ุจุชุงุนุชู.
ูุนูู ุงูุชุทุจูู ุงููู ุจุชุณุชุฎุฏู ู ู ุด ุจูุดูู ุงูุจุงุณูุฑุฏ ุจุชุงุนุชูุ ุจุณ ุจูุงุฎุฏ ุชููู ู ุคูุช ููุฏุฑ ูุณุชุฎุฏู ู ูุฏุฎู ุนูู ุงูู APIs ุงููู ุฃูุช ูุงููุช ุนูููุง.
ูุฏู ุจูุฎูู ุงูุนู ููุฉ ุขู ูุฉุ ูุจูุญุงูุธ ุนูู ุงูุฎุตูุตูุฉ ุจุชุงุนุชู.
โโโ
๐ ุฅุฒุงู ุงูู OAuth 2.0 ุจูุดุชุบูุ
ุชุนุงู ูู ุดู ุฎุทูุฉ ุจุฎุทูุฉ ูู ุงูู flow ุงูู ุดููุฑ ุจุชุงุน Authorization Code Grant Flowุ ูุงููู ุจูุณุชุฎุฏู ูู web apps
1- ุงูู User Requests Login
ุงูุชุทุจูู (Client) ููููู: "ุณุฌูู ุจุญุณุงุจ Google ู ุซููุง"ุ ูุงูู ุณุชุฎุฏู ูุถุบุท ุนูู ุงูุฒุฑุงุฑุ ููุชู ุชูุฌููู ุนูู authorization server (ุฒู Google).
2- ุงูู User Grants Permission
ุฌูุฌู ูุทูุจ ู ูู ุชุณุฌูู ุฏุฎูู ูุชูุงูู ุนูู ุงูู permissions ุงููู ุงูุชุทุจูู ุทุงูุจูุง (ุฒู ุงูุฅูู ููุ ุงูุงุณู ุ ุฅูุฎ).
3- ุงูู Authorization Code
ูู ูุงููุชุ Google ููุจุนุช authorization code ููุชุทุจูู (ุฃู ุชุญุฏูุฏูุง ููู redirect URL ุงููู ุงูุชุทุจูู ุญุฏุฏู ูุจู ูุฏู).
4- ุงูู Token Exchange
ุงูุชุทุจูู ูุงุฎุฏ ุงูู authorization code ุฏู ููุจุนุช request ูู token endpoint ุนูุดุงู ูุจุฏูู ุจู access token (ูุณุงุนุงุช ูู ุงู refresh token).
5- ุงูู Access Protected APIs
ุจู ุฌุฑุฏ ู ุง ุงูุชุทุจูู ูุงุฎุฏ ุงูู access tokenุ ููุฏุฑ ูุณุชุฎุฏู ู ูุทูุจ ุจูุงูุงุช ู ู Google APIsุ ุจุณ ูู ุญุฏูุฏ ุงูู scope ุงููู ูุงููุช ุนููู.
โโโ
ุฅุฒุงู ุจูุฃู ู ุงูู APIsุ ๐
ูู ุนูุฏู API ูุนุงูุฒ ุชุฃู ููุงุ ู ู ูู ุชุณุชุฎุฏู OAuth 2.0 ุจุญูุซ:
- ุฃู Client ู ุด ูููุฏุฑ ููุตู ูู API ุบูุฑ ูู ุง ููุฏูู Access Token ุตุงูุญ.
- ุงูู Backend ุจุชุงุนู ููุฏุฑ ูุชุญููู ู ู ุงูุชููู (ู ุซููุง JWT ุฃู ุนู ุทุฑูู introspection endpoint).
- ุชูุฏุฑ ุชุชุญููู ูู ุงูุตูุงุญูุงุช ุนู ุทุฑูู ุงูู scope (ูุนูู ู ุซููุง ุชููู ู ุนูู ููุฏุฑ ููุฑุฃ ุจุณุ ูุชููู ุชุงูู ููุฏุฑ ููุชุจ ููุนุฏูู).
- ุชูุฏุฑ ุชุณุญุจ ุตูุงุญูุงุช ุงูุชููู ูู ุฃู ููุช (Revoke).
ุจุงูุชุงููุ OAuth 2.0 ุจูุฃู ูู ุงูู APIs ุนู ุทุฑูู ุฅูู:
โ ุจูููู ุงูุงุนุชู ุงุฏ ุนูู ููู ุงุช ุงูู ุฑูุฑ
โ ุจูุณู ุญ ุจุงูู delegation (ุชุทุจูู ูุงุฎุฏ ุฅุฐู ู ู ู ุณุชุฎุฏู ููุตู ูุญุงุฌุฉ ู ุด ุจุชุงุนุชู)
โ ุจูุฎูู ุงูู tokens ู ุคูุชุฉุ ูู ู ูู ุชุชุญูู ูู ุตูุงุญูุงุชูุง ูู ุฏูุชูุง
โโโ
๐ ุฃููุงุน ุงููGrant Types ุงูู ุดููุฑุฉ:
- ุงูู Authorization Code (with PKCE): ููู ูุจุงูู ูุงูููุจ.
- ุงูู Client Credentials: ููู machine-to-machine apps.
- ุงูู Password (deprecated): ูุงู ุจูุณุชุฎุฏู ูู ุง ุงูู ุณุชุฎุฏู ููุชุจ ุงูู username ูุงูุจุงุณูุฑุฏ ูู ููุณ ุงูุชุทุจูู (ุบูุฑ ุขู ู).
- ุงูู Implicit (deprecated): ุฒู ุงู ูุงู ุจูุชุณุชุฎุฏู ููู SPA apps ูููู ุบูุฑ ู ูุตู ุจู.
โโโ
ูู ููุช ุจุชุณุชุฎุฏู OAuth 2.0 ูู ู ูุจุงูู ุฃู SPA appุ ูุงุฒู ุชุณุชุฎุฏู ุญุงุฌุฉ ุงุณู ูุง PKCE (Proof Key for Code Exchange) ุนูุดุงู ุชู ูุน ุงูู authorization code ู ู ุฅูู ูุชุณุฑู.
โโโ
ููููู ุงููู ููู ุฎูุฑ ๐ฟ
โค11๐2๐1
This media is not supported in your browser
VIEW IN TELEGRAM
ู
ูุงู ุณูู ูุจุณูุท ุนู ุงูู SOLID Principles ๐ก
Ever read about SOLID and felt your eyelids droop halfway through the โSโ? Letโs fix that.
Whether you're debugging spaghetti code at 2 AM or trying to prevent future you from rage-quitting, SOLID principles are here to help. But let's be honestโtheyโre often taught in the driest way possible.
In this article, Iโll walk you through the SOLID principles using TypeScript, real-world analogies, and some much-needed humor. No jargon. No hand-waving. Just clean, readable code examples youโll understand and remember.
โโโ
๐ DEV:
https://dev.to/alisamir/understanding-solid-principles-without-falling-asleep-17ai
๐ Medium:
https://medium.com/@dev.alisamir/understanding-solid-principles-without-falling-asleep-2375d4471944
Understanding SOLID Principles (Without Falling Asleep) ๐ฏ
Ever read about SOLID and felt your eyelids droop halfway through the โSโ? Letโs fix that.
Whether you're debugging spaghetti code at 2 AM or trying to prevent future you from rage-quitting, SOLID principles are here to help. But let's be honestโtheyโre often taught in the driest way possible.
In this article, Iโll walk you through the SOLID principles using TypeScript, real-world analogies, and some much-needed humor. No jargon. No hand-waving. Just clean, readable code examples youโll understand and remember.
โโโ
๐ DEV:
https://dev.to/alisamir/understanding-solid-principles-without-falling-asleep-17ai
๐ Medium:
https://medium.com/@dev.alisamir/understanding-solid-principles-without-falling-asleep-2375d4471944
โค3
ุฅุฒุงู Node.js ุจุชุณุชุฎุฏู
ุงูู Event Loopุ ๐ก
.
.
ุชุฎูู ู ุนุงูุง ุฅู ุนูุฏู ูุงูููุ ูููู ุฌุฑุณูู ูุงุญุฏ ุจุณ ุจูุฎุฏู ูู ุงูุฒุจุงูู. ุงูุฌุฑุณูู ุฏู ุจูุนุฑู ูุฎูุต ุทูุจุงุช ูุชูุฑ ุฌุฏูุง ูู ููุณ ุงูููุชุ ู ู ุบูุฑ ู ุง ุฃู ุฒุจูู ูุญุณ ุฅูู ู ุณุชูู ูุชูุฑ.
ูุฏู ุจุงูุถุจุท ุงููู ุจูุญุตู ุฏุงุฎู ุงูู Node.js. ูุงูุณุฑ ูู ุญุงุฌุฉ ุงุณู ูุง Event Loop...
ุฎูุงู ุฑุญูุชู ูู ุนุงูู ุงูู Node.jsุ ุฃููุฏ ุณู ุนุช ุนู ุงูู Event Loopโฆ ูุณู ุนุช ุงูุฌู ูุฉ ุงูุดููุฑุฉ ุฒู:
"Node.js single-threaded but non-blocking and asynchronous"
โโโ
https://www.linkedin.com/posts/mentoor-io_nodejs-nodejsdeveloper-javascript-activity-7327286056658059265-2Ovz
https://www.facebook.com/share/p/18UMkAYLpY
.
.
ุชุฎูู ู ุนุงูุง ุฅู ุนูุฏู ูุงูููุ ูููู ุฌุฑุณูู ูุงุญุฏ ุจุณ ุจูุฎุฏู ูู ุงูุฒุจุงูู. ุงูุฌุฑุณูู ุฏู ุจูุนุฑู ูุฎูุต ุทูุจุงุช ูุชูุฑ ุฌุฏูุง ูู ููุณ ุงูููุชุ ู ู ุบูุฑ ู ุง ุฃู ุฒุจูู ูุญุณ ุฅูู ู ุณุชูู ูุชูุฑ.
ูุฏู ุจุงูุถุจุท ุงููู ุจูุญุตู ุฏุงุฎู ุงูู Node.js. ูุงูุณุฑ ูู ุญุงุฌุฉ ุงุณู ูุง Event Loop...
ุฎูุงู ุฑุญูุชู ูู ุนุงูู ุงูู Node.jsุ ุฃููุฏ ุณู ุนุช ุนู ุงูู Event Loopโฆ ูุณู ุนุช ุงูุฌู ูุฉ ุงูุดููุฑุฉ ุฒู:
"Node.js single-threaded but non-blocking and asynchronous"
โโโ
๐ LinkedIn:
https://www.linkedin.com/posts/mentoor-io_nodejs-nodejsdeveloper-javascript-activity-7327286056658059265-2Ovz
๐ Facebook:
https://www.facebook.com/share/p/18UMkAYLpY
โค4
Elevate your projects with Symbl, an essential tool for developers and designers that features responsive solutions, quick symbol searches, and easy icon access.
https://symbl.revend.group
https://symbl.revend.group
โค3๐ฅ2
ููู React ุจุชุณุชุฎุฏู
Keys ูู ุงูู Listsุ ๐ค
.
.
ุนู ุฑู ุณุฃูุช ููุณู ููู React ุฏุงูู ูุง ุจุชุทูุจ ู ูู ุชุถูู Key ููู ุนูุตุฑ ูู Listุ
ูููู ูุงุฒู ููุชู ุจู ูุฅูู ุงููู ู ู ูู ูุญุตู ูู ู ุง ุถููุง ุงูู keyุ
ุงูุณุคุงู ุฏู ู ูุชุดุฑ ุจุดูู ูุจูุฑ ูู ุฃู ู ูุงุจูุฉ ุนู ู ุชุฎุต ุฑูุฃูุชุ ูุงูุณุคุงู ุจุณูุท ููู ูู ูู ุงูุญูููุฉ ู ูุถูุน ู ูู ุฌุฏูุง ูุจููุฑู ูู ุงูุฃุฏุงุก ุจุดูู ูุจูุฑ...
โโโ
๐ LinkedIn:
https://www.linkedin.com/posts/dev-alisamir_react-reactdeveloper-reactjs-activity-7327749421134200834-XYVc
๐ Qabilah:
https://qabilah.com/posts/XW04VJqYFz4
.
.
ุนู ุฑู ุณุฃูุช ููุณู ููู React ุฏุงูู ูุง ุจุชุทูุจ ู ูู ุชุถูู Key ููู ุนูุตุฑ ูู Listุ
ูููู ูุงุฒู ููุชู ุจู ูุฅูู ุงููู ู ู ูู ูุญุตู ูู ู ุง ุถููุง ุงูู keyุ
ุงูุณุคุงู ุฏู ู ูุชุดุฑ ุจุดูู ูุจูุฑ ูู ุฃู ู ูุงุจูุฉ ุนู ู ุชุฎุต ุฑูุฃูุชุ ูุงูุณุคุงู ุจุณูุท ููู ูู ูู ุงูุญูููุฉ ู ูุถูุน ู ูู ุฌุฏูุง ูุจููุฑู ูู ุงูุฃุฏุงุก ุจุดูู ูุจูุฑ...
โโโ
๐ LinkedIn:
https://www.linkedin.com/posts/dev-alisamir_react-reactdeveloper-reactjs-activity-7327749421134200834-XYVc
๐ Qabilah:
https://qabilah.com/posts/XW04VJqYFz4
๐5