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
๐Ÿ”ฅ6๐Ÿ‘1
1- The 10 Front-End Mistakes I Wish I Knew as a Beginner (With Fixes) ๐Ÿ’ก
https://levelup.gitconnected.com/the-10-front-end-mistakes-i-wish-i-knew-as-a-beginner-with-fixes-cec0f6430455

2- How to Build a Scalable Back-End with Zero Downtime Deployments ๐Ÿš€
https://levelup.gitconnected.com/how-to-build-a-scalable-back-end-with-zero-downtime-deployments-6f10b6d1f389

3- The Dark Side of Tailwind: When Utility Classes Become a Mess โš ๏ธ
https://levelup.gitconnected.com/the-dark-side-of-tailwind-when-utility-classes-become-a-mess-f339fb72cb81
๐Ÿ‘5๐Ÿ‘1
ูŠุนู†ูŠ ุฅูŠู‡ API GatewayุŸ
.
.
ุชุฎูŠู„ ู…ุนุงูŠุง ุฅู†ูƒ ุฏุงุฎู„ ู…ุทุนู… ูƒุจูŠุฑ ุฌุฏู‹ุงุŒ ูˆุงู„ู…ุทุจุฎ ููŠู‡ ุฃูƒุชุฑ ู…ู† ุดูŠู:
ูˆุงุญุฏ ู…ุณุคูˆู„ ุนู† ุงู„ุจูŠุชุฒุง ๐Ÿ•ุŒ ูˆุงู„ุชุงู†ูŠ ุนู† ุงู„ุญู„ูˆูŠุงุช ๐ŸฐุŒ ูˆุงู„ุชุงู„ุช ุนู† ุงู„ู…ุดุฑูˆุจุงุช โ˜•๏ธ.

ูˆุฃู†ุช ูƒู€ ุฒุจูˆู†ุŒ ู…ุด ู‡ุชุฑูˆุญ ู„ูƒู„ ุดูŠู ูˆุชุทู„ุจ ู…ู†ู‡ุŒ ุตุญุŸ
ููŠู‡ ุฌุฑุณูˆู† (ุงู„ู€ waiter) ุจูŠุงุฎุฏ ุทู„ุจูƒ ูˆูŠูˆุตู‘ู„ู‡ ู„ู„ู…ุทุจุฎุŒ ูˆูŠุฌูŠุจู„ูƒ ุงู„ุฃูƒู„ ูƒู„ู‡ ู…ุฑู‘ุฉ ูˆุงุญุฏุฉ.

ุงู„ุฌุฑุณูˆู† ุฏู‡ ููŠ ุนุงู„ู… ุงู„ุจุฑู…ุฌุฉ ุงุณู…ู‡: API Gateway.


โ€”โ€”โ€”

๐Ÿ’ก ูŠุนู†ูŠ ุฅูŠู‡ API GatewayุŸ


ุจุจุณุงุทุฉุŒ ุงู„ู€ API Gateway ู‡ูˆ ุญุงุฑุณ ุงู„ุจูˆุงุจุฉ ุฃูˆ ู†ู‚ุทุฉ ุงู„ุฏุฎูˆู„ ุงู„ูˆุญูŠุฏุฉ ู„ูƒู„ ุงู„ู€ APIs ุงู„ู„ูŠ ุงู„ุณูŠุฑูุฑ ุฃูˆ ุงู„ู†ุธุงู… ุจูŠู‚ุฏู‘ู…ู‡ุง.

ู„ูˆ ุนู†ุฏูƒ ู†ุธุงู… ุถุฎู… (ุฒูŠ ู…ูˆู‚ุน ุชุฌุงุฑุฉ ุฅู„ูƒุชุฑูˆู†ูŠุฉ ู…ุซู„ู‹ุง)ุŒ ู‡ุชู„ุงู‚ูŠ ูƒู„ ุฌุฒุก ููŠู‡ ุดุบู‘ุงู„ ูƒู€ Microservice:

- ุฌุฒุก ู„ุทู„ุจ ุงู„ุฃูˆุฑุฏุฑุงุช
- ุฌุฒุก ู„ุญุณุงุจุงุช ุงู„ู…ุณุชุฎุฏู…ูŠู†
- ุฌุฒุก ู„ู„ู…ู†ุชุฌุงุช
- ุฌุฒุก ู„ู„ุฏูุน ุงู„ุฅู„ูƒุชุฑูˆู†ูŠ


ุงู„ู€ API Gateway ุจูŠุฌู…ุน ูƒู„ ุงู„ุฎุฏู…ุงุช ุฏูŠ ูˆุจูŠุฎู„ูŠ ุงู„ู€ Frontend ุฃูˆ ุงู„ู…ูˆุจุงูŠู„ ูŠุชุนุงู…ู„ ู…ุน ู†ู‚ุทุฉ ูˆุงุญุฏุฉ ุจุณุŒ ุจุฏู„ ู…ุง ูŠุจุนุช ุทู„ุจุงุช ู…ุชูุฑู‚ุฉ ู„ูƒู„ ุฎุฏู…ุฉ.

โ€”โ€”โ€”

๐Ÿค” ู„ูŠู‡ ู†ุณุชุฎุฏู… API GatewayุŸ


โœ… ุชูˆุญูŠุฏ ู†ู‚ุทุฉ ุงู„ุงุชุตุงู„
ุจุฏู„ ู…ุง ุงู„ู€ Frontend ูŠุชุนุงู…ู„ ู…ุน 5 ุฃูˆ 10 APIsุŒ ุจูŠุชุนุงู…ู„ ู…ุน gateway ูˆุงุญุฏุฉ.

๐Ÿ” ุงู„ุฃู…ุงู†
ุงู„ู€ Gateway ุชู‚ุฏุฑ ุชุถูŠู layer ู„ู„ุฃู…ุงู†: JWT, API keys, Rate limiting... ุฅู„ุฎ.

๐Ÿ“Š ุงู„ู…ุฑุงู‚ุจุฉ ูˆุงู„ุชุญู„ูŠู„
ุชู‚ุฏุฑ ุชุนุฑู ู…ูŠู† ุจูŠุทู„ุจ ุฅูŠู‡ุŒ ูˆุฅู…ุชู‰ุŒ ูˆุชุฑุงู‚ุจ ูƒู„ ุญุงุฌุฉ ู…ู† ู…ูƒุงู† ูˆุงุญุฏ.

๐Ÿ“ฆ ุงู„ู€ Caching ูˆ Load Balancing
ู…ู…ูƒู† ูŠุฎุฒู‘ู† ุงู„ุฑุฏูˆุฏ (Cache) ูˆูŠูˆุฒู‘ุน ุงู„ุฃุญู…ุงู„ ุจุดูƒู„ ุฐูƒูŠ.

๐Ÿ” ุชุญูˆูŠู„ ุงู„ุจูŠุงู†ุงุช
ู„ูˆ ุฎุฏู…ุฉ ุจุชุฑุฏ ุจู€ XML ูˆุงู†ุช ู…ุญุชุงุฌ JSONุŒ ุงู„ู€ Gateway ู…ู…ูƒู† ูŠุชุตุฑู.

โ€”โ€”โ€”

๐Ÿ›  ุฃู…ุซู„ุฉ ุญู‚ูŠู‚ูŠุฉ ู„ู€ API Gateways:


- Kong
- AWS API Gateway
- Nginx
- Apigee
- Zuul

โ€”โ€”โ€”

#ุฏู‚ูŠู‚ุฉ_ุจุฑู…ุฌุฉ
๐Ÿ‘8๐Ÿ‘1
Advanced React: Building Scalable Apps with Design Systems, Patterns, and Performance ๐Ÿš€


In this article, weโ€™ll dive into advanced React techniques, focusing on design systems, design patterns, and performance optimization to help you build robust, user-friendly applications that scale effortlessly.

https://dev.to/alisamir/advanced-react-building-scalable-apps-with-design-systems-patterns-and-performance-229
โค3
ุฏูˆุฑุงุช ู…ุฌุงู†ูŠุฉ ุนู† ุจูุนุฏ ุจุดู‡ุงุฏุฉ ุฅุชู…ุงู…ุ› ู…ุชุงุญุฉ ู„ูƒ ููŠ ุฃูŠ ูˆู‚ุช ูˆู…ู† ุฃูŠ ู…ูƒุงู†

https://satr.codes
โค6๐Ÿ”ฅ1
ุฃู‡ู… 7 ุฃุฎุทุงุก ู…ู…ูƒู† ุชู‚ุน ููŠู‡ุง ููŠ ุงู„ูุฑูˆู†ุช ุฅู†ุฏ ๐Ÿ’ก
.
.
ููŠ ุนุงู„ู… ุงู„ูุฑูˆู†ุช ุฅู†ุฏ ุบุงู„ุจู‹ุง ุดูˆูุช ุฃูˆ ุชุนุงู…ู„ุช ู…ุน ูƒูˆุฏ ูƒุชูŠุฑ ุดูƒู„ู‡ ู…ุฑูŠุจ ูˆุฎู„ุงูƒ ุชุญุณ ุฅู† ููŠ ุญุงุฌุฉ ุบู„ุท ุจุณ ู…ุด ุนุงุฑู ุชู‚ูˆู„ ุฅูŠู‡ ู‡ูŠ ุจุงู„ุถุจุท.

ููŠ ุงู„ู…ู‚ุงู„ ุฏู‡ุŒ ู‡ุชุชุนุฑู ุนู„ู‰ 7 ุญุงุฌุงุช (Code Smells) ููŠ ู…ุดุฑูˆุน ุงู„ูุฑูˆู†ุช ุฅู†ุฏ ู…ู…ูƒู† ุชุจุงู† ุจุณูŠุทุฉุŒ ุจุณ ููŠ ุงู„ุญู‚ูŠู‚ุฉ ุจุชุฃุซุฑ ุนู„ู‰ ุฃุฏุงุก ุงู„ู…ุดุฑูˆุนุŒ ูˆู‚ุงุจู„ูŠุฉ ุงู„ุตูŠุงู†ุฉุŒ ูˆุชุฌุฑุจุฉ ุงู„ูุฑูŠู‚ ูƒู„ู‡. ุงู„ู…ู‚ุงู„ ุจูŠุดุฑุญ ูƒู„ ู†ู‚ุทุฉ ุจุดูƒู„ ูˆุงุถุญุŒ ูˆุจูŠู‚ูˆู„ูƒ ู„ูŠู‡ ุชุนุชุจุฑ ู…ุดูƒู„ุฉุŒ ูˆุฅุฒุงูŠ ุชุตู„ุญู‡ุง.

โ€”โ€”โ€”

7 Front-End Code Smells You Should Fix Right Now โšก๏ธ


As a front-end developer, youโ€™ve likely encountered code that feels wrong โ€” hard to read, tricky to maintain, or just plain chaotic.

These are code smells, subtle signs that your codebase needs a refactor. Left unchecked, they can slow development, introduce bugs, and frustrate your team.

In this article, weโ€™ll dive into 7 front-end code smells you should spot and fix immediately to keep your projects clean, scalable, and developer-friendly.

โ€”โ€”โ€”

https://medium.com/gitconnected/7-front-end-code-smells-you-should-fix-right-now-6286ce16b539
โค6๐Ÿ‘3
ู…ุจุงุฏุฑุฉ ุงู„ุฑูˆุงุฏ ุงู„ุฑู‚ู…ูŠูˆู†
.
.
ุชู‡ุฏู ู…ุจุงุฏุฑุฉ ุงู„ุฑูˆุงุฏ ุงู„ุฑู‚ู…ูŠูˆู† (Digilians) ุฅู„ู‰ ุชุฃู‡ูŠู„ ูˆุชุฏุฑูŠุจ ุงู„ุดุจุงุจ ููŠ ู…ุฌุงู„ุงุช ุงู„ุงุชุตุงู„ุงุชุŒ ุชูƒู†ูˆู„ูˆุฌูŠุง ุงู„ู…ุนู„ูˆู…ุงุชุŒ ูˆุงู„ุจุฑู…ุฌูŠุงุชุŒ ูˆุฐู„ูƒ ู„ุชุนุฒูŠุฒ ุฏูˆุฑู‡ู… ููŠ ุนู…ู„ูŠุฉ ุงู„ุชุญูˆู„ ุงู„ุฑู‚ู…ูŠ ูˆุฏุนู… ู†ู…ูˆ ุงู„ุตุงุฏุฑุงุช ุงู„ุฑู‚ู…ูŠุฉุŒ ุจู…ุง ูŠุณู‡ู… ููŠ ุชุญู‚ูŠู‚ ุฃุญุฏ ุงู„ู…ุญุงูˆุฑ ุงู„ุฑุฆูŠุณูŠุฉ ู„ุชู†ู…ูŠุฉ ุงู„ุงู‚ุชุตุงุฏ ุงู„ูˆุทู†ูŠ.

ุชู…ู†ุญ ุงู„ู…ุจุงุฏุฑุฉ ูƒู„ู‹ุง ู…ู† ุงู„ุฏุฑุงุณุฉ ุงู„ุนู„ู…ูŠุฉ ูˆุงู„ุชุฏุฑูŠุจ ุงู„ุนู…ู„ูŠ ู„ู„ู…ุชู…ูŠุฒูŠู† ู…ู† ู…ุฎุชู„ู ุงู„ู…ุคู‡ู„ุงุช ุงู„ุนู„ู…ูŠุฉ ูˆู…ู† ุฌู…ูŠุน ุงู„ู…ุญุงูุธุงุช ุญูŠุซ ุชุณุชู‡ุฏู ุงู„ุชุนุงูˆู† ู…ุน ุงู„ุฌู‡ุงุช ุงู„ู…ุชุฎุตุตุฉ ู…ุญู„ูŠู‹ุง ูˆุฏูˆู„ูŠู‹ุง ููŠ ุงู„ุนู„ูˆู… ุงู„ุชูƒู†ูˆู„ูˆุฌูŠุฉ ุงู„ู…ุฎุชู„ูุฉ ู„ุชุบุทูŠุฉ ุงู„ู†ูˆุงุญูŠ ุงู„ุนู„ู…ูŠุฉ ูˆุงู„ุชุนู„ูŠู…ูŠุฉุŒ ุฐู„ูƒ ุจุงู„ุฅุถุงูุฉ ุงู„ู‰ ุชู†ู…ูŠุฉ ุงู„ู…ู‡ุงุฑุงุช ุงู„ู„ุบูˆูŠุฉ ูˆุงู„ุญูŠุงุชูŠุฉ ูˆุงู„ู‚ูŠุงุฏูŠุฉ.

โ€”โ€”โ€”

ู…ุฒุงูŠุง ุงู„ู…ุจุงุฏุฑุฉ

- ุดู‡ุงุฏุฉ ู…ุนุชู…ุฏุฉ ู…ุดุชุฑูƒุฉ ู…ู† ูˆุฒุงุฑุฉ ุงู„ุงุชุตุงู„ุงุช ูˆุชูƒู†ูˆู„ูˆุฌูŠุง ุงู„ู…ุนู„ูˆู…ุงุช ูˆุงู„ุฃูƒุงุฏูŠู…ูŠุฉ ุงู„ุนุณูƒุฑูŠุฉ.
- ุดู‡ุงุฏุงุช ู…ุนุชู…ุฏุฉ ู„ูƒุงูุฉ ุงู„ู…ู‡ุงุฑุงุช ุงู„ุชูŠ ูŠุชู… ุงู„ุชุฏุฑูŠุจ ุนู„ูŠู‡ุง.
- ุดู‡ุงุฏุฉ ุงู„ู…ุงุฌุณุชูŠุฑ ู…ู† ุฅุญุฏู‰ ุงู„ุฌุงู…ุนุงุช ุงู„ุฃุฌู†ุจูŠุฉ ุงู„ู…ุฑู…ูˆู‚ุฉ ู„ุจุฑุงู…ุฌ ุงู„ู…ุงุฌุณุชูŠุฑ.
- ุชูˆููŠุฑ ู…ุณุงุฑ ุชุฏุฑูŠุจูŠ ู…ุชูƒุงู…ู„ ุนู„ู‰ ู…ุฏุงุฑ ู…ุฏุฉ ุงู„ุชู†ููŠุฐ ูˆู…ูƒูˆู† ู…ู† ุงู„ุนุฏูŠุฏ ู…ู† ุงู„ุฃู†ุดุทุฉ ูˆุงู„ูุนุงู„ูŠุงุช.
- ุงู„ู…ุดุงุฑูƒุฉ ููŠ ู…ุณุงุจู‚ุงุช ุชูƒู†ูˆู„ูˆุฌูŠุฉ ู…ุญู„ูŠุฉ ูˆุนุงู„ู…ูŠุฉ.
- ุฌูˆุงุฆุฒ ุนูŠู†ูŠุฉ ู„ู„ู…ุชููˆู‚ูŠู†.
- ุงู„ุชุฏุฑูŠุจ ุงู„ู…ูŠุฏุงู†ูŠ ู„ู„ุชุฃู‡ูŠู„ ู„ู…ุณุชู‚ุจู„ ุนู…ู„ูŠ ููŠ ู…ุฌุงู„ุงุช ุชูƒู†ูˆู„ูˆุฌูŠุง ุญุฏูŠุซุฉ.
- ุฅู‚ุงู…ุฉ ู…ุฌุงู†ูŠุฉ ุจุงู„ูƒุงู…ู„ ุดุงู…ู„ุฉ ูƒุงูุฉ ุงู„ูˆุฌุจุงุช.

โ€”โ€”โ€”

ุงู„ุจุฑุงู…ุฌ ุงู„ุชุฏุฑูŠุจูŠุฉ

ุชู‚ุฏู… ุงู„ู…ุจุงุฏุฑุฉ ู…ุฌู…ูˆุนุฉ ูˆุงุณุนุฉ ู…ู† ุงู„ุจุฑุงู…ุฌ ุงู„ุงูƒุงุฏูŠู…ูŠุฉ ุงู„ู…ุชู†ูˆุนุฉ ุงู„ุชูŠ ุชู… ุชุตู…ูŠู…ู‡ุง ุจุนู†ุงูŠุฉ ู„ุชู„ุจูŠุฉ ุงุญุชูŠุงุฌุงุช ุณูˆู‚ ุงู„ุนู…ู„ ุงู„ู…ุชู†ูˆุนุฉ ูˆุงู„ู…ุชุบูŠุฑุฉ. ู†ู‡ุฏู ุงู„ู‰ ุชุฒูˆูŠุฏ ุงู„ุทู„ุงุจ ุจุงู„ู…ู‡ุงุฑุงุช ูˆุงู„ู…ุนุฑูุฉ ุงู„ู„ุงุฒู…ุฉ ู„ู„ุชููˆู‚ ููŠ ู…ุฌุงู„ุงุชู‡ู… ุงู„ู…ู‡ู†ูŠุฉ ุงู„ู…ุฎุชู„ูุฉุŒ ู…ู…ุง ูŠุถู…ู† ู„ู‡ู… ูุฑุตู‹ุง ูˆุงุณุนุฉ ููŠ ุณูˆู‚ ุงู„ุนู…ู„ ุงู„ุนู…ู„ูŠ. ุงุจุฏุฃ ุฑุญู„ุชูƒ ููŠ ุนุงู„ู… ุงู„ุชูƒู†ูˆู„ูˆุฌูŠุง..ุญูŠุซ ูŠู„ุชู‚ูŠ ุงู„ุดุบู ุจุงู„ุฅุจุฏุงุน!

- ุจุฑู†ุงู…ุฌ ุงู„ุฏุจู„ูˆู… ุงู„ู…ูƒุซู
- ุจุฑู†ุงู…ุฌ ุงู„ุฏุจู„ูˆู… ุงู„ู…ุชุฎุตุต
- ุจุฑู†ุงู…ุฌ ุงู„ู…ุงุฌุณุชูŠุฑ ุงู„ู…ู‡ู†ูŠ
- ุจุฑู†ุงู…ุฌ ู…ุงุฌุณุชูŠุฑ ุงู„ุนู„ูˆู…

โ€”โ€”โ€”

ุงู„ู…ูˆู‚ุน ุงู„ุฑุณู…ูŠ ู„ู„ุชุณุฌูŠู„ ููŠ ุงู„ู…ุจุงุฏุฑุฉ:

https://www.digilians.gov.eg
โค3๐Ÿ‘1
DevGuide ๐Ÿ‡ต๐Ÿ‡ธ pinned ยซู…ุจุงุฏุฑุฉ ุงู„ุฑูˆุงุฏ ุงู„ุฑู‚ู…ูŠูˆู† . . ุชู‡ุฏู ู…ุจุงุฏุฑุฉ ุงู„ุฑูˆุงุฏ ุงู„ุฑู‚ู…ูŠูˆู† (Digilians) ุฅู„ู‰ ุชุฃู‡ูŠู„ ูˆุชุฏุฑูŠุจ ุงู„ุดุจุงุจ ููŠ ู…ุฌุงู„ุงุช ุงู„ุงุชุตุงู„ุงุชุŒ ุชูƒู†ูˆู„ูˆุฌูŠุง ุงู„ู…ุนู„ูˆู…ุงุชุŒ ูˆุงู„ุจุฑู…ุฌูŠุงุชุŒ ูˆุฐู„ูƒ ู„ุชุนุฒูŠุฒ ุฏูˆุฑู‡ู… ููŠ ุนู…ู„ูŠุฉ ุงู„ุชุญูˆู„ ุงู„ุฑู‚ู…ูŠ ูˆุฏุนู… ู†ู…ูˆ ุงู„ุตุงุฏุฑุงุช ุงู„ุฑู‚ู…ูŠุฉุŒ ุจู…ุง ูŠุณู‡ู… ููŠ ุชุญู‚ูŠู‚ ุฃุญุฏ ุงู„ู…ุญุงูˆุฑ ุงู„ุฑุฆูŠุณูŠุฉ ู„ุชู†ู…ูŠุฉโ€ฆยป
ุฅูŠู‡ ุงู„ูุฑู‚ ุจูŠู† ุงู„ู€ JWT ูˆุงู„ู€ SessionsุŸ ๐Ÿค”
.
.
ุงู„ุงุชู†ูŠู† ุจูŠุณุชุฎุฏู…ูˆุง ุนู„ุดุงู† ู†ุนุฑู ุงู„ู…ุณุชุฎุฏู…ูŠู† ุงู„ู„ูŠ ุฏุฎู„ูˆุง ุนู„ู‰ ุงู„ู…ูˆู‚ุนุŒ ุจุณ ูƒู„ ูˆุงุญุฏ ู„ู‡ ุทุฑูŠู‚ุฉ ู…ุฎุชู„ูุฉ ุชู…ุงู…ู‹ุง ููŠ ุงู„ุชุนุงู…ู„.

ููŠ ุงู„ู…ู‚ุงู„ ุฏู‡ุŒ ู‡ุชูู‡ู… ุงู„ูุฑู‚ ุจูŠู†ู‡ู… ุจุดูƒู„ ุจุณูŠุท ูˆุณู‡ู„ุŒ ุนู„ุดุงู† ุชุนุฑู ุชุฎุชุงุฑ ุงู„ุฃูุถู„ ู„ู…ุดุฑูˆุนูƒ.

โ€”โ€”โ€”

JWT vs Sessions: The Real Difference in Simple Words ๐Ÿ’ก


If youโ€™ve ever built or used a web app, youโ€™ve probably logged in at some point. Maybe you checked your email, browsed Twitter, or paid a bill online. But have you ever wondered how these websites remember who you are?

Thatโ€™s where authentication comes in. In web development, there are two big players in handling user sessions: JWT (JSON Web Tokens) and Sessions.

This article breaks down the difference between JWT and Sessions in simple, no-fluff words.

โ€”โ€”โ€”

๐Ÿ“ DEV Community
https://dev.to/alisamir/jwt-vs-sessions-the-real-difference-in-simple-words-51c0

๐Ÿ“ Medium
https://medium.com/@dev.alisamir/jwt-vs-sessions-the-real-difference-in-simple-words-184e1e0d9e8d
โค9๐Ÿ‘1
PREACT RUNS FAST โšก๏ธ


Why Preact is winning:

๐Ÿ“ฆ Only 3kB vs React's 30+kB
๐Ÿ”ฅ Dramatically faster load times
โ™ป๏ธ Direct DOM connection
โš™๏ธ Works with React libraries


Perfect for:

๐Ÿš€ Fast PWAs
๐Ÿ“ฑ Mobile-first experiences
๐Ÿงฉ Lightweight components
โค6๐Ÿ‘1
SQL Zero To Hero Mindmap
โค5
ุงู„ูุฑู‚ ุจูŠู† ุงู„ู€ Primary Key ูˆุงู„ู€ Foreign Key
.
.
ุฎู„ูŠู†ุง ู†ุชุฎูŠู„ ู‚ูˆุงุนุฏ ุงู„ุจูŠุงู†ุงุช ูƒุฃู†ู‡ุง ุดูŠุช ุฅูƒุณูŠู„ ูƒุจูŠุฑ ููŠู‡ ุฌุฏุงูˆู„ (Tables)ุŒ ูˆูƒู„ ุฌุฏูˆู„ ููŠู‡ ุตููˆู (Rows) ูˆุฃุนู…ุฏุฉ (Columns)ุŒ ุฅุฒุงูŠ ู†ู‚ุฏุฑ ู†ู…ูŠู‘ุฒ ูƒู„ ุตู ู„ูˆุญุฏู‡ุŸ ุฃูˆ ู†ุฑุจุท ุจูŠู† ุฌุฏูˆู„ ูˆุฌุฏูˆู„ุŸ ู‡ู†ุง ุจู‚ู‰ ุจูŠูŠุฌูŠ ุฏูˆุฑ ุงู„ู€ Primary Key ูˆุงู„ู€ Foreign Key.

โ€”โ€”โ€”

๐Ÿ”ธ ุฃูˆู„ู‹ุง: ุงู„ู€ Primary Key โ€“ ุงู„ู…ูุชุงุญ ุงู„ุฃุณุงุณูŠ


ุฏู‡ ุฒูŠ ุฑู‚ู… ุงู„ุจุทุงู‚ุฉ ุฃูˆ ุฑู‚ู… ุงู„ุฌู„ูˆุณ ูƒุฏู‡ุŒ ูƒู„ ุตู ููŠ ุงู„ุฌุฏูˆู„ ู„ุงุฒู… ูŠูƒูˆู† ุนู†ุฏู‡ ู‚ูŠู…ุฉ ู…ู…ูŠุฒุฉ ููŠ ุงู„ุนู…ูˆุฏ ุฏู‡ุŒ ุนู„ุดุงู† ู†ุนุฑู ู†ูˆุตู„ู‡ ุจุณู‡ูˆู„ุฉ ู…ู† ูˆุณุท 1000 ุตู ุชุงู†ูŠ.

- ู„ุงุฒู… ูŠูƒูˆู† Unique: ูŠุนู†ูŠ ูƒู„ ุตู ู„ู‡ ุฑู‚ู… ู…ุฎุชู„ู ุนู† ุงู„ุชุงู†ูŠ.
- ู„ุง ูŠุณู…ุญ ุจู€ null: ูŠุนู†ูŠ ู„ุงุฒู… ุชูƒูˆู† ุงู„ู‚ูŠู…ุฉ ู…ูˆุฌูˆุฏุฉ ูˆู…ุด ูุงุถูŠุฉ.


๐ŸŽฏ ู…ุซุงู„ ุจุณูŠุท: ู„ูˆ ุนู†ุฏูƒ ุฌุฏูˆู„ ุงุณู…ู‡ StudentsุŒ ู…ู…ูƒู† ุชุถูŠู ุนู…ูˆุฏ ุงุณู…ู‡ student_id ูƒู€ Primary Key. ูŠุนู†ูŠ ูƒู„ ุทุงู„ุจ ู„ู‡ ID ู…ุฎุชู„ูุŒ ุฏู‡ ุจูŠุณุงุนุฏู†ุง ู†ู…ูŠู‘ุฒู‡ ูˆู†ุชุนุงู…ู„ ู…ุน ุจูŠุงู†ุงุชู‡ ุจุณู‡ูˆู„ุฉ.

โ€”โ€”โ€”

๐Ÿ”ธ ุซุงู†ูŠู‹ุง: ุงู„ู€ Foreign Key โ€“ ุงู„ู…ูุชุงุญ ุงู„ุฃุฌู†ุจูŠ ุฃูˆ ุงู„ู…ูุชุงุญ ุงู„ุฑุงุจุท


ู‡ู†ุง ุจู‚ู‰ ุงู„ู…ูˆุถูˆุน ู„ู‡ ุนู„ุงู‚ุฉ ุจุงู„ุนู„ุงู‚ุงุช (Relationships) ุจูŠู† ุงู„ุฌุฏุงูˆู„.

ุงู„ู€ Foreign Key ู‡ูˆ ุนู…ูˆุฏ ู…ูˆุฌูˆุฏ ููŠ ุฌุฏูˆู„ุŒ ุจุณ ุจูŠุฑุฌุน ูŠุดุงูˆุฑ ุนู„ู‰ ุงู„ู€ Primary Key ุจุชุงุน ุฌุฏูˆู„ ุชุงู†ูŠ.
ูŠุนู†ูŠ ุจูŠู‚ูˆู„ูƒ: "ุงู„ู‚ูŠู…ุฉ ุงู„ู„ูŠ ู‡ู†ุงุŒ ู„ุงุฒู… ุชูƒูˆู† ู…ูˆุฌูˆุฏุฉ ู‡ู†ุงูƒ"


โœ… ุงุณุชุฎุฏุงู…ู‡ ุงู„ุฃุณุงุณูŠ:

- ุจูŠุฑุจุท ุงู„ุฌุฏุงูˆู„ ุจุจุนุถ.
- ุจูŠุณุงุนุฏู†ุง ู†ุญุงูุธ ุนู„ู‰ "ุณู„ุงู…ุฉ ุงู„ุจูŠุงู†ุงุช" (Data Integrity)ุŒ ูŠุนู†ูŠ ู…ูŠุจู‚ุงุด ููŠู‡ ุจูŠุงู†ุงุช ู…ู„ู‡ุงุด ู…ุนู†ู‰ ุฃูˆ ู…ู„ู‡ุงุด ุนู„ุงู‚ุฉ.


๐ŸŽฏ ู…ุซุงู„: ู„ูˆ ุนู†ุฏู†ุง ุฌุฏูˆู„ ุงุณู…ู‡ OrdersุŒ ูˆุนุงูŠุฒูŠู† ู†ุนุฑู ูƒู„ ุฃูˆุฑุฏุฑ ุงุชุนู…ู„ ู…ู† ู…ูŠู†ุŒ ู‡ู†ุถูŠู ุนู…ูˆุฏ ุงุณู…ู‡ user_id ูƒู€ Foreign KeyุŒ ุงู„ู„ูŠ ุจูŠุฑุจุท ุงู„ุฃูˆุฑุฏุฑ ุฏู‡ ุจุงู„ู…ุณุชุฎุฏู… ุงู„ู„ูŠ ู…ูˆุฌูˆุฏ ููŠ ุฌุฏูˆู„ Users.

โ€”โ€”โ€”

๐Ÿง  ุงู„ุฎู„ุงุตุฉ ููŠ ูƒู„ู…ุชูŠู†:

- ุงู„ู€ Primary Key: ุจูŠู…ูŠุฒ ูƒู„ ุตู ููŠ ุฌุฏูˆู„ ู„ูˆุญุฏู‡.
- ุงู„ู€ Foreign Key: ุจูŠุฑุจุท ุงู„ุตู ุฏู‡ ุจุตู ุชุงู†ูŠ ููŠ ุฌุฏูˆู„ ุชุงู†ูŠ.

ุงู„ุงุชู†ูŠู† ู…ุน ุจุนุถ ุฒูŠ ุงู„ู…ูุชุงุญ ูˆุงู„ุจุงุจ... ูˆุงุญุฏ ูŠูุชุญู„ูƒ ุงู„ุตูุŒ ูˆุงู„ุชุงู†ูŠ ูŠุฎู„ูŠูƒ ุชูˆุตู„ ู„ุฌุฏูˆู„ ุชุงู†ูŠ ูˆุชุฑุจุท ุงู„ุจูŠุงู†ุงุช ุจุจุนุถู‡ุง ๐Ÿ’ก

โ€”โ€”โ€”

#ุฏู‚ูŠู‚ุฉ_ุจุฑู…ุฌุฉ
โค7๐Ÿ‘1
API Design 101: From Basics to Best Practices ๐Ÿ’ฏ


In this deep dive, weโ€™ll go through the API design, starting from the basics and advancing towards the best practices that define exceptional APIs.

โ€”โ€”โ€”

https://levelup.gitconnected.com/api-design-101-from-basics-to-best-practices-a0261cdf8886
โค6
ู…ูู‡ูˆู… ุงู„ู€ Index ููŠ ู‚ูˆุงุนุฏ ุงู„ุจูŠุงู†ุงุช ๐Ÿ”
.
.
ุชุฎูŠู„ ู…ุนุงูŠุง ุฃู†ูƒ ุฏุฎู„ุช ู…ูƒุชุจุฉ ููŠู‡ุง ู…ู„ูŠูˆู† ูƒุชุงุจุŒ ูˆุงู„ู…ุทู„ูˆุจ ุชุฏูˆุฑ ุนู„ู‰ ูƒุชุงุจ ุงุณู…ู‡ "ุชุนู„ู… ุงู„ุจุฑู…ุฌุฉ ุจู„ุบุฉ ุงู„ุฌุงูุง"ุŒ ูˆู…ููŠุด ุฃูŠ ุชุฑุชูŠุจ ุฃูˆ ูู‡ุฑุณ ู„ู„ู…ูƒุชุจุฉ.

ู‡ุชุญุชุงุฌ ุชู…ุณูƒ ูƒุชุงุจ ูƒุชุงุจ ูˆุชุดูˆู ุนู†ูˆุงู†ู‡ ู„ุญุฏ ู…ุง ุชู„ุงู‚ูŠ ุงู„ู„ูŠ ุฃู†ุช ุนุงูŠุฒู‡. ุงู„ู…ูˆุถูˆุน ู‡ูŠุจู‚ู‰ ุจุทูŠูŠูŠูŠุก ุฌุฏู‹ุงุŒ ุตุญุŸ

ุทูŠุจุŒ ู„ูˆ ุงู„ู…ูƒุชุจุฉ ุฏูŠ ููŠู‡ุง "ูู‡ุฑุณ" ู…ุฑุชุจ ููŠู‡ ุฃุณู…ุงุก ุงู„ูƒุชุจ ูˆุฃุฑู‚ุงู… ูƒู„ ุงู„ุฑููˆู ุจุชุงุนุชู‡ุง... ูˆู‚ุชู‡ุง ุชูุชุญ ุงู„ูู‡ุฑุณุŒ ุชุฏูˆุฑ ุนู„ู‰ ุงู„ุงุณู…ุŒ ุชุนุฑู ู…ูƒุงู†ู‡ุŒ ูˆุชุฑูˆุญ ุชุงุฎุฏู‡ ููŠ ุซูˆุงู†ูŠ. ๐Ÿš€

โ€”โ€”โ€”

ู†ูุณ ุงู„ููƒุฑุฉ ุจุงู„ุถุจุท ุจุชุญุตู„ ุฏุงุฎู„ ู‚ูˆุงุนุฏ ุงู„ุจูŠุงู†ุงุช.

ุงู„ู€ Index ู‡ูˆ ุนุจุงุฑุฉ ุนู† ุญุงุฌุฉ ุดุจู‡ ุงู„ูู‡ุฑุณ ูƒุฏู‡ุŒ ุจูŠุฎู„ูŠ ู‚ุงุนุฏุฉ ุงู„ุจูŠุงู†ุงุช ุชู„ุงู‚ูŠ ุงู„ุจูŠุงู†ุงุช ุงู„ู„ูŠ ุฃู†ุช ุทุงู„ุจู‡ุง ุจุณุฑุนุฉ ู…ู† ุบูŠุฑ ู…ุง ุชุถุทุฑ ุชู…ุณูƒ ูƒู„ ุตู ุฏุงุฎู„ ุงู„ุฌุฏูˆู„ ูˆุชูุชุด ููŠู‡ ุตู ุตู.

โ€”โ€”โ€”

๐Ÿค” ู„ูŠู‡ ุจู†ุณุชุฎุฏู… ุงู„ู€ IndexุŸ


ู„ู…ุง ุจุชุนู…ู„ ุงุณุชุนู„ุงู… (Query) ุนู„ุดุงู† ุชุฌูŠุจ ุจูŠุงู†ุงุช ู…ุนูŠู†ุฉุŒ ุฎุตูˆุตู‹ุง ู…ู† ุฌุฏุงูˆู„ ููŠู‡ุง ู…ู„ุงูŠูŠู† ุงู„ุตููˆูุŒ ุงู„ู€ Index ุจูŠู‚ู„ู„ ูˆู‚ุช ุงู„ุจุญุซ ุจุดูƒู„ ูƒุจูŠุฑ ุฌุฏู‹ุง. ุจุฏู„ ู…ุง ูŠู‚ู„ุจ ุงู„ุฌุฏูˆู„ ูƒู„ู‡ุŒ ุจูŠุฑูˆุญ ูŠุฏูˆุฑ ุฏุงุฎู„ ุงู„ู€ Index ูˆูŠูˆุตู„ูƒ ุจุงู„ุจูŠุงู†ุงุช ุฃุณุฑุน.

โ€”โ€”โ€”

๐Ÿ›  ุฃู†ูˆุงุน ุงู„ู€ Index ุงู„ู…ุดู‡ูˆุฑุฉ:


- ุงู„ู€ Single Column Index: ุจูŠูƒูˆู† ู…ุนู…ูˆู„ ุนู„ู‰ ุนู…ูˆุฏ ูˆุงุญุฏ ุจุณ.
- ุงู„ู€ Composite Index: ุจูŠูƒูˆู† ู…ุนู…ูˆู„ ุนู„ู‰ ุฃูƒุชุฑ ู…ู† ุนู…ูˆุฏ ู…ุน ุจุนุถ.
- ุงู„ู€ Unique Index: ุจูŠุถู…ู† ุฅู† ุงู„ู‚ูŠู… ุงู„ู„ูŠ ููŠ ุงู„ุนู…ูˆุฏ ุบูŠุฑ ู…ูƒุฑุฑุฉ.
- ุงู„ู€ Full-text Index: ุจูŠุณุชุฎุฏู… ู„ู„ุจุญุซ ุฏุงุฎู„ ู†ุตูˆุต ุทูˆูŠู„ุฉ ุฒูŠ ุงู„ู…ู‚ุงู„ุงุช.

โ€”โ€”โ€”

โš ๏ธ ู…ู„ุงุญุธุฉ ู…ู‡ู…ุฉ:


ุงุณุชุฎุฏุงู… Index ุจูŠุณุงุนุฏ ููŠ ุชุณุฑูŠุน ุงู„ู€ SELECT queries...

ู„ูƒู† ุฎู„ูŠ ุจุงู„ูƒุŒ ูƒู„ ู…ุง ุชุนู…ู„ Insert ุฃูˆ Update ุฃูˆ Delete ููŠ ุงู„ุฌุฏูˆู„ุŒ ู‚ุงุนุฏุฉ ุงู„ุจูŠุงู†ุงุช ู„ุงุฒู… ุชุญุฏุซ ุงู„ู€ Index ูƒู…ุงู†ุŒ ูˆุฏู‡ ู…ุนู†ุงู‡ ุดูˆูŠุฉ ุชูƒู„ูุฉ ุฅุถุงููŠุฉ. ูŠุนู†ูŠุŒ ู…ูŠู†ูุนุด ุชุญุท Index ุนู„ู‰ ูƒู„ ุงู„ุฃุนู…ุฏุฉ ูˆุฎู„ุงุตุŒ ู„ุงุฒู… ุชุฎุชุงุฑ ุนู„ู‰ ุญุณุจ ุฃูƒุชุฑ Queries ุจุชุณุชุฎุฏู…ู‡ุง.

โ€”โ€”โ€”

ุงู„ู€ Index = ูู‡ุฑุณ ุจูŠุณุฑุน ุงู„ุจุญุซ ุฏุงุฎู„ ู‚ูˆุงุนุฏ ุงู„ุจูŠุงู†ุงุช.

#ุฏู‚ูŠู‚ุฉ_ุจุฑู…ุฌุฉ
โค8๐Ÿ‘1
The 2025 Microservices Roadmap for Developers
โค7๐Ÿ‘1