DevGuide ๐Ÿ‡ต๐Ÿ‡ธ
10.9K subscribers
2.51K photos
17 videos
127 files
3.52K links
Join our channel for top-notch programming hacks, epic discussions, and brilliant career moves. ๐Ÿš€

โšก๏ธ Stay connected with me: linktr.ee/AliSamir

๐Ÿ“ To advertise on the channel: https://telega.io/c/the_developer_guide
Download Telegram
CSS Practices to avoid as Developer ๐Ÿ’ก
โค4
ู…ุญุฑุฑ CLion ู…ู† Jerbrains ุฃุตุจุญ ู…ุฌุงู†ูŠ ู„ู„ุงุณุชุฎุฏุงู… ุบูŠุฑ ุงู„ุชุฌุงุฑูŠ ู„ูƒู„ ุงู„ู…ุณุชุฎุฏู…ูŠู†.

ุงู„ู…ุญุฑุฑ ุจูŠุฆุฉ ูƒุงู…ู„ุฉ ู„ู„ุชุทูˆูŠุฑ ูˆุงู„ุจุฑู…ุฌุฉ ุจุงุณุชุฎุฏุงู… ู„ุบุชูŠ C ูˆ ++C.
โค11
ู…ูู‡ูˆู… ุงู„ู€ OAuth 2.0 ๐Ÿ’ก
.
.
ุชุฎูŠู„ ุฅู†ูƒ ุฏุงุฎู„ ุชุณุฌู‘ู„ ููŠ ุชุทุจูŠู‚ ุฌุฏูŠุฏ ุนู„ุดุงู† ุชุชุงุจุน ูƒูˆุฑุณุงุชุŒ ูˆู„ู…ุง ุฌูŠุช ุชุณุฌู‘ู„ุŒ ุงู„ุชุทุจูŠู‚ ู‚ุงู„ูƒ:
"ุชู‚ุฏุฑ ุชุณุฌู‘ู„ ุจุญุณุงุจ 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 ๐Ÿ’ก

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"

โ€”โ€”โ€”

๐Ÿ“ 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
โค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
๐Ÿ‘5
Useful CSS Functions ๐Ÿ’ก
โค8
ููƒ ุฑู…ูˆุฒ ุฃุทุฑ ุฅุฏุงุฑุฉ ุงู„ู…ุดุงุฑูŠุน ๐Ÿ’ฏ
.
.
ู‚ุงุนุฏ ููŠ ุงู„ู…ูŠุชูŠู†ุฌ ู…ุน ุงู„ุชูŠู… ุจุชุงุนูƒุŒ ูˆุณุงู…ุน ุงู„ู€ PM ุจูŠู‚ูˆู„: "ุฅุญู†ุง ุชุฃุฎุฑู†ุง ุชุงู†ูŠ ููŠ ุงู„ุชุณู„ูŠู…!"

ูˆุชุจุฏุฃ ุงู„ุฃุณุฆู„ุฉ:

- "ู‡ูˆ ุฅุญู†ุง ุดุบุงู„ูŠู† ุฅุฒุงูŠ ุฃุตู„ุงู‹ุŸ"
- "ู„ูŠู‡ ูƒู„ ุดูˆูŠุฉ ุงู„ุนู…ูŠู„ ูŠุบูŠุฑ ุฑุฃูŠู‡ุŸ"
- "ู‡ูˆ ุงู„ู…ูุฑูˆุถ ู†ู…ุดูŠ ุจุฎุทุฉ ูˆู„ุง ู†ุดุชุบู„ ุจุงู„ุจุฑูƒุฉุŸ"

ูˆู‚ุชู‡ุง ุงู„ุบู„ุท ูƒู„ู‡ ุจูŠูƒูˆู† ููŠ ุทุฑูŠู‚ุฉ ุฅุฏุงุฑุฉ ุงู„ู…ุดุฑูˆุน.

ููŠ ุงู„ู…ู‚ุงู„ ุฏู‡ุŒ ู‡ู†ูู‡ู… ู…ุน ุจุนุถ ุงู„ูุฑู‚ ุจูŠู† ุฃุดู‡ุฑ 3 ุทุฑู‚ ู„ุฅุฏุงุฑุฉ ุงู„ู…ุดุงุฑูŠุน...

ู‡ู†ุชูƒู„ู… ุนู† ูƒู„ ูˆุงุญุฏุฉ ููŠู‡ู…ุŒ ุฅู…ุชู‰ ุชุณุชุฎุฏู…ู‡ุงุŒ ูˆุฅู…ุชู‰ ุชุจุนุฏ ุนู†ู‡ุง...

โ€”โ€”โ€”

Agile vs. Scrum vs. Waterfall: Decoding Project Management Frameworks ๐Ÿ’ฏ


Itโ€™s Wednesday morning. Youโ€™re sipping lukewarm coffee in a conference room, staring at a chart that looks more like a crime scene than a project plan. Requirements changed mid-way (again), the dev team is frustrated, stakeholders are confused, and deadlines have become suggestions. Sound familiar?

Letโ€™s demystify the three giants: Waterfall, Agile, and Scrumโ€”what they are, how they differ, and when each makes sense.

โ€”โ€”โ€”

https://dev.to/alisamir/agile-vs-scrum-vs-waterfall-decoding-project-management-frameworks-5amg
โค3
Software Engineer Roadmap 2025 - The Complete Guide ๐Ÿ’ฏ


https://www.instagram.com/p/DJoVnkeCWp9
โค3
ุงู„ูุฑู‚ ุจูŠู† ุงู„ู€ CommonJS ูˆุงู„ู€ ES Modules ๐Ÿ’ก
.
.
ูˆุฃู†ุช ุจุชูƒุชุจ ูƒูˆุฏ ุจู„ุบุฉ JavaScript ุฃูƒูŠุฏ ุณุฃู„ุช ู†ูุณูƒ ู„ูŠู‡ ุณุงุนุงุช ุจู†ูƒุชุจ require ูˆุณุงุนุงุช importุŸ

ูˆุงู„ุณุคุงู„ ุฏู‡ ู…ูˆุฌูˆุฏ ููŠ ุฃูŠ ุงู†ุชุฑููŠูˆ ุณูˆุงุก ูุฑูˆู†ุช ุฅู†ุฏ ุฃูˆ ุจุงูƒ ุฅู†ุฏ (Node.js)

ุงู„ูุฑู‚ ุจูŠู† CommonJS ูˆ ES Modules ู…ุด ู…ุฌุฑุฏ ูุฑู‚ ููŠ ุทุฑูŠู‚ุฉ ุงู„ูƒุชุงุจุฉุŒ ู„ูƒู†ู‡ ุจูŠุฃุซุฑ ุนู„ู‰ ุญุงุฌุงุช ุฒูŠ ุงู„ุณุฑุนุฉุŒ ุงู„ุชุญู…ูŠู„ุŒ ูˆุงู„ุฃุงุก...

โ€”โ€”โ€”

๐Ÿ“ LinkedIn:

https://www.linkedin.com/posts/mentoor-io_javascript-nodejs-nodejsdeveloper-activity-7328470300604387328-T6PM

๐Ÿ“ Facebook:

https://www.facebook.com/share/p/16KPouV3jJ
โค3