11.1K subscribers
3.12K photos
19 videos
138 files
3.66K links
Level up daily with insider dev hacks, smart career tips, and real talk! ๐Ÿš€

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

๐Ÿ“ To advertise on the channel: https://telega.io/c/the_developer_guide
Download Telegram
DevGuide pinned a photo
Build Large Next.js Projects Lightning Fast ๐Ÿš€
โค1
ู…ุฌู…ูˆุนุฉ Repos ุฑุงูŠู‚ุฉ ู„ุฌู…ุงุนุฉ ุงู„ู€ Web ๐Ÿ’ฏ
.
.
๐€ ๐œ๐จ๐ฅ๐ฅ๐ž๐œ๐ญ๐ข๐จ๐ง ๐จ๐Ÿ ๐š๐ฐ๐ž๐ฌ๐จ๐ฆ๐ž ๐ญ๐ก๐ข๐ง๐ ๐ฌ ๐ซ๐ž๐ ๐š๐ซ๐๐ข๐ง๐  ๐–๐ž๐› ๐ƒ๐ž๐ฏ๐ž๐ฅ๐จ๐ฉ๐ฆ๐ž๐ง๐ญ. โญ๏ธ

- Awesome JavaScript
https://lnkd.in/dR2BxbtF

- Awesome TypeScript
https://lnkd.in/df8JBEBm

- Awesome React.js
https://lnkd.in/dApUkSQ5

- Awesome Angular
https://lnkd.in/dZ6reGbx

- Awesome Vue.js
https://lnkd.in/d92TyJQ7

- Awesome React Native
https://lnkd.in/dZcYTemC

- Awesome Svelte
https://lnkd.in/dTe8PpXJ

- Awesome Node.js
https://lnkd.in/diQfrRdR

- Awesome Express.js
https://lnkd.in/dCNQrQWY

- Awesome MongoDB
https://lnkd.in/dPNFewDm

- Awesome Next.js
https://lnkd.in/dD7ZyT3g

- Awesome PHP
https://lnkd.in/dSRNZFir

- Awesome Laravel
https://lnkd.in/dJDU7xHe

- Awesome .NET
https://lnkd.in/dVd2KFBF

- Awesome Java
https://lnkd.in/dxjRPzRS

- Awesome C#
https://lnkd.in/dbFvQkVA

- Awesome Spring
https://lnkd.in/d6egPvPN

- Awesome Deno
https://lnkd.in/dYCz6Cza

- Awesome Bun
https://lnkd.in/dusj4z4p

- Awesome Remix
https://lnkd.in/dKzh7v6m

- Awesome Qwik
https://lnkd.in/deVfxNAG

- Awesome Git
https://lnkd.in/dc5YD3Nw

- Awesome GitHub
https://lnkd.in/dvNzdCQe

- Awesome Tailwind CSS
https://lnkd.in/dKziPbDG

- Awesome Bootstrap
https://lnkd.in/dq9QHZp2

- Awesome Sass
https://lnkd.in/dRtSe58W

- Awesome Flask
https://lnkd.in/dpgnJ8uT

- Awesome Django
https://lnkd.in/d9SQKnKB

- Awesome Python
https://lnkd.in/dcmkHKJ4

- Awesome SvelteKit
https://lnkd.in/dC7MVefh

- Awesome DevOps
https://lnkd.in/dxBBbvbf

- Awesome Interviews
https://lnkd.in/dC6Ru4hh

- Awesome Web
https://lnkd.in/dsX2iwnp

- Awesome HTML5
https://lnkd.in/d6ieWMqC

- Awesome CSS
https://lnkd.in/dHZ8gNmy
โค3
ู…ุฌู…ูˆุนุฉ ู…ุตุงุฏุฑ ู‡ุชุณุงุนุฏูƒ ููŠ ุงู„ุชุญุถูŠุฑ ู„ุงู†ุชุฑฺคูŠูˆ ุงู„ู€ React Native ๐Ÿ’ฏ
.
.
- React Native Interview Questions and Answers
https://lnkd.in/dyirJaJx

- 100 Must-Know React Native Interview Questions
https://lnkd.in/dvfsRYXP

- Top 30 React Native Interview Questions
https://lnkd.in/dpfeAm97

- 10 Essential React Native Interview Questions
https://lnkd.in/dbmi_esw

- Top 100 React Native Interview Questions and Answers
https://lnkd.in/ddbk7HmS

- 40 React Native Interview Questions and Answers
https://lnkd.in/dan8uYHb

- 41 React Native Interview Questions (ANSWERED)
https://lnkd.in/dPWUb_Ff

- Top 30 React Native Interview Questions
https://lnkd.in/dbHazhdb

- Advanced React Native Interview Questions & Answers
https://lnkd.in/dtYuggAQ

- Best React Native Interview Questions And Answers
https://lnkd.in/d-VJqKye

- Top 100+ React Interview Questions and Answers
https://lnkd.in/djifvmzH

- 40+ React Native Interview Questions for Tech Interview Preparation
https://lnkd.in/dx8N6Cdb

- Top 45+ React Native Interview Questions
https://lnkd.in/f69_UpZ
โค3
ู…ู‡ู… ุฌุฏู‹ุง ุชุญูุธ ุงู„ุฑูŠุจูˆ ุฏู‡ ุนู†ุฏูƒ ๐Ÿ’ฏ
.
.
Awesome YouTube Channels

A comprehensive list of +180 YouTube Channels (in no particular order) for Data Science, Data Engineering, Machine Learning, Deep Learning, Artificial Intelligence, Computer Science, programming, software engineering, and more!

โ€”โ€”โ€”

https://github.com/benthecoder/yt-channels-DS-AI-ML-CS
โค4
ุฅุดูƒุงู„ูŠุฉ ุงู„ู€Roadmap...๐Ÿ’ฏ
.
.
- ูŠุนู†ูŠ ุฅูŠู‡ RoadmapุŸ
- ู‡ู„ ู„ุงุฒู… ุฃุชุจุน Roadmap ูˆู„ุง ุฃู…ุดูŠ ุจุงู„ุจุฑูƒุฉุŸ
- ู‡ู„ ู„ุงุฒู… ุฃุฎู„ุต ูƒู„ ุญุงุฌุฉ ููŠ ุงู„ู€RoadmapุŸ
- ู‡ู„ ู„ูˆ ุฎู„ุตุช ุงู„ู€Roadmap ูƒู„ู‡ุง ู‡ู„ุงู‚ูŠ ุดุบู„ุŸ

โ€”โ€”โ€”

ุจุจุณุงุทุฉ ุงู„ู€Roadmap ุฃูˆ ุฎุงุฑุทุฉ ุงู„ุทุฑูŠู‚ ู‡ูŠ ุนุจุงุฑุฉ ุนู† ู…ุณุงุฑ ู…ุญุฏุฏ ู„ุชุนู„ู… ุดูŠุก ู…ุนูŠู† ุจุทุฑูŠู‚ุฉ ู…ู†ุธู…ุฉ ูˆุจุงู„ุชุฑุชูŠุจ.

ู…ุซู„ู‹ุง ู„ูˆ ุญุฏ ู‡ูŠุจุฏุฃ ููŠ ู…ุฌุงู„ ุงู„ูุฑูˆู†ุช ูุงู„ุทุจูŠุนูŠ ุฅู†ู‡ ูŠุชุนู„ู… HTML ุซู… CSS ุซู… JavaScript ูˆู‡ูƒุฐุง...ู…ูŠู†ูุนุด ุฅู†ู‡ ูŠุชุนู„ู… CSS ู‚ุจู„ ู…ุง ูŠุชุนู„ู… HTML.

ู„ูˆ ุญุฏ ู‡ูŠุจุฏุฃ ููŠ ู…ุฌุงู„ ุงู„ู…ูˆุจุงูŠู„ ูุงู„ุทุจูŠุนูŠ ุฅู†ู‡ ูŠุชุนู„ู… ู„ุบุฉ Java ุฃูˆ Kotlin ุซู… ูŠุจุฏุฃ ููŠ ูƒูˆุฑุณุงุช ุงู„ุฃู†ุฏุฑูˆูŠุฏ ุจุงู„ุชุฑุชูŠุจ ู…ู† ุงู„ุจุฏุงูŠุฉ ูˆู‡ูƒุฐุง...

โ€”โ€”โ€”

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

โ€”โ€”โ€”

ุทูŠุจ ู‡ู„ ู…ุญุชุงุฌ ุชุฎู„ุต ุงู„ู€ Roadmap ูƒู„ู‡ุงุŸ

ููŠู‡ ุจุนุถ ุงู„ู€Roadmaps ุจุชุจู‚ู‰ ู…ูˆุถุญุฉ ุงู„ุญุงุฌุงุช ุงู„ู„ูŠ ู…ุญุชุงุฌ ุชุฑูƒุฒ ุนู„ูŠู‡ุง ููŠ ุงู„ู„ุบุฉ ุฃูˆ ููŠ ุฅุทุงุฑ ุงู„ุนู…ู„ ุงู„ู„ูŠ ุจุชุฐุงูƒุฑู‡ ูˆููŠู‡ Roadmaps ุจุชุณูŠุจ ุงู„ุฏู†ูŠุง ุณุงูŠุญุฉ ูˆู‡ู†ุง ุฃู†ุช ู…ู…ูƒู† ุชุญุณ ุจุฅุญุจุงุท ูˆุฅู† ุงู„ุทุฑูŠู‚ ู„ุณู‡ ุทูˆูŠู„...

ุทุจ ุฅูŠู‡ ุงู„ุญู„ุŸ

ุงุณุฃู„...ุจุณ ู‚ุฑุฑ ู‡ุชุณุฃู„ ู…ูŠู† ูˆู„ูŠู‡ ูˆู‡ุชุณุฃู„ู‡ ููŠ ุฅูŠู‡...ู…ุชุณุฃู„ุด ุตุงุญุจูƒ ุงู„ู„ูŠ ุจูŠุฐุงูƒุฑ ู…ุนุงูƒ ูˆู†ูุณ ู…ุณุชูˆุงูƒ...ู…ุชุณุฃู„ุด ุฌูˆุฌู„ ูˆู„ุง ChatGPT ู„ุฃู†ู‡ู… ู‡ูŠูƒุจุฑูˆุง ุงู„ู…ูˆุถูˆุน ุฒูŠุงุฏุฉ ุนู† ุงู„ู„ุฒูˆู…...ู…ุชุณุฃู„ุด ุญุฏ ููŠ ุบูŠุฑ ุชุฎุตุตูƒ ุญุชู‰ ู„ูˆ ู„ู‡ ู…ุณู…ู‰ ูˆุธูŠููŠ ูƒุจูŠุฑ...

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

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

โ€”โ€”โ€”

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

ู„ูˆ ุฃู†ุช ู…ุญุฏุฏ ุดุฑูƒุฉ ู…ุนูŠู†ุฉ ุนุงูˆุฒ ุชุดุชุบู„ ููŠู‡ุง ูุงู„ุฃูุถู„ ุฅู†ูƒ ุชุดูˆู ุงู„ูˆุธุงุฆู ุนู†ุฏู‡ู… ุจุชุญุชุงุฌ ุฅูŠู‡ ูˆุชู‚ูŠุณ ุนู„ู‰ ู…ู‡ุงุฑุงุชูƒ...

ูƒู…ุงู† ุฅู†ูƒ ุชุธู‡ุฑ ู†ูุณูƒ ุนู„ู‰ ู„ูŠู†ูƒุฏุงู† ูˆุชุฎู„ูŠ ู„ูŠูƒ ุจุฑูˆูุงูŠู„ ูƒูˆูŠุณ ูˆุจูŠุธู‡ุฑ ููŠ ุงู„ุจุญุซ ุนู†ุฏ ุงู„ู€ HR ูˆุชุฃูƒุฏ ุฅู†ูƒ ูƒุงุชุจ ุงู„ู…ุณู…ู‰ ุงู„ูˆุธูŠููŠ ุตุญ...

ุชุนู…ู„ CV ู…ุญุชุฑู… ูˆุงุจู† ู†ุงุณ ูˆุชุฎู„ูŠ ุฃูƒุชุฑ ู…ู† ุญุฏ ูŠุฑุงุฌุนู‡ ุนู„ุดุงู† ู„ูˆ ููŠู‡ ุชุนุฏูŠู„ุงุชุŒ ูˆู‚ุจู„ ูƒู„ ุฏู‡ ุฎู„ูŠูƒ ุฏุงุฆู…ู‹ุง ูุงูƒุฑ: "ุฅูู†ูŽู‘ ุงู„ู„ูŽู‘ู‡ูŽ ู‡ููˆูŽ ุงู„ุฑูŽู‘ุฒูŽู‘ุงู‚ู ุฐููˆ ุงู„ู’ู‚ููˆูŽู‘ุฉู ุงู„ู’ู…ูŽุชููŠู†ู"...

โ€”โ€”โ€”

ุจุงู„ุชูˆููŠู‚ ูŠุง ุตุฏูŠู‚ูŠ ๐ŸŒฟ
โค7
ุชุนุงู„ ู†ุฏุฑุฏุด ุดูˆูŠุฉ ุนู† GraphQLุŒ ูˆู†ุนุฑู ุงู„ูุฑู‚ ุจูŠู†ู‡ุง ูˆุจูŠู† REST APIs ๐Ÿ’ฏ

โ€”โ€”โ€”

๐Ÿ“Œ ุฅูŠู‡ ู‡ูŠ GraphQLุŸ

ุงู„ู€ GraphQL ุนุจุงุฑุฉ ุนู† ุทุฑูŠู‚ุฉ ู„ู„ุชุนุงู…ู„ ู…ุน ุงู„ู€ APIsุŒ ูˆู‡ูŠ ุชุนุชุจุฑ ุจุฏูŠู„ ุฃูˆ ุชุญุณูŠู† ู„ู€ REST APIs.

ุงู„ู„ูŠ ุจูŠุญุตู„ ููŠ GraphQL ุฅู†ูƒ ุจุชู‚ุฏุฑ ุชุญุฏุฏ ุงู„ุจูŠุงู†ุงุช ุงู„ู„ูŠ ุนุงูˆุฒู‡ุง ุจุงู„ุถุจุท ู…ู† ุงู„ู€ APIุŒ ู…ู† ุบูŠุฑ ู…ุง ุชุฑุฌุน ูƒู„ ุญุงุฌุฉ ู…ูˆุฌูˆุฏุฉ ููŠ ุงู„ู€ endpoint ุฒูŠ ู…ุง ุจูŠุญุตู„ ููŠ REST.

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

ู„ูƒู† ููŠ GraphQLุŒ ุฃู†ุช ุงู„ู„ูŠ ุจุชุญุฏุฏ ุฃู†ุช ุนุงูˆุฒ ุฅูŠู‡ ุจุงู„ุถุจุทุŒ ูŠุนู†ูŠ ู„ูˆ ู…ุญุชุงุฌ ุงู„ุงุณู… ุจุณุŒ ู‡ุชุงุฎุฏ ุงู„ุงุณู… ุจุณ ูˆู‡ูƒุฐุง.

โ€”โ€”โ€”

๐Ÿ“Œ ุฅูŠู‡ ุงู„ูุฑู‚ ุจูŠู† GraphQL ูˆRESTุŸ

โœ… ุงู„ู€ REST ุจูŠุนุชู…ุฏ ุนู„ู‰ ููƒุฑุฉ ุงู„ู€ endpointsุŒ ูŠุนู†ูŠ ูƒู„ endpoint ู…ุณุคูˆู„ ุนู† ุฅุฑุฌุงุน ู†ูˆุน ู…ุนูŠู† ู…ู† ุงู„ุจูŠุงู†ุงุช. ู„ูƒู† ููŠ GraphQLุŒ ุนู†ุฏูƒ query ูˆุงุญุฏุฉ ุชู‚ุฏุฑ ุชุทู„ุจ ุจูŠู‡ุง ุฃูŠ ุจูŠุงู†ุงุช ุฃู†ุช ู…ุญุชุงุฌู‡ุงุŒ ุจุบุถ ุงู„ู†ุธุฑ ุนู† ุนุฏุฏ ุงู„ู€ endpoints.

โœ… ููŠ REST ู…ู…ูƒู† ุชุจู‚ู‰ ู…ุญุชุงุฌ ุชุนู…ู„ ุฃูƒุชุฑ ู…ู† request ุนุดุงู† ุชุฌูŠุจ ุงู„ุจูŠุงู†ุงุช ู…ู† ุฃูƒุชุฑ ู…ู† ู…ูƒุงู†ุŒ ู„ูƒู† ููŠ GraphQLุŒ ุชู‚ุฏุฑ ุชุทู„ุจ ูƒู„ ุงู„ุจูŠุงู†ุงุช ุงู„ู…ุทู„ูˆุจุฉ ููŠ request ูˆุงุญุฏุฉ.

โœ… ูƒู…ุงู† GraphQL ุจุชู‚ู„ู„ ูƒู…ูŠุฉ ุงู„ุจูŠุงู†ุงุช ุงู„ู„ูŠ ุจุชุฑุฌุน ููŠ ุงู„ู€ responseุŒ ูˆุฏู‡ ู„ุฃู†ู‡ ุฃู†ุช ุงู„ู„ูŠ ุจุชุญุฏุฏ ุฅูŠู‡ ุงู„ู„ูŠ ู…ุญุชุงุฌู‡ ุจุงู„ุถุจุท. ุนู„ู‰ ุนูƒุณ REST ุงู„ู„ูŠ ู…ู…ูƒู† ูŠุจุนุช ุจูŠุงู†ุงุช ุฃูƒุชุฑ ู…ู† ุงู„ู„ูŠ ุฃู†ุช ุนุงูˆุฒู‡ุง.

โ€”โ€”โ€”

๐Ÿ“Œ ู„ูŠู‡ ู…ู…ูƒู† ุชููƒุฑ ุชุณุชุฎุฏู… GraphQLุŸ

โšก๏ธ ู„ูˆ ุงู„ู…ุดุฑูˆุน ู…ุนู‚ุฏ ูˆููŠู‡ ุนู„ุงู‚ุงุช ูƒุชูŠุฑ ุจูŠู† ุงู„ุจูŠุงู†ุงุชุŒ GraphQL ู‡ุชุณุงุนุฏูƒ ุชู†ุธู… ุงู„ุจูŠุงู†ุงุช ูˆุชุทู„ุจู‡ุง ุจุทุฑูŠู‚ุฉ ุฃุณู‡ู„.

โšก๏ธ ู‡ุชู‚ู„ู„ ุนุฏุฏ ุงู„ู€ requests ุงู„ู„ูŠ ุจุชุชุจุนุช ู„ู„ุณูŠุฑูุฑ.

โšก๏ธ ู‡ุชุชุญูƒู… ุฃูƒุชุฑ ููŠ ุงู„ุจูŠุงู†ุงุช ุงู„ู„ูŠ ุจุชุฑุฌุนุŒ ูˆุฏู‡ ู‡ูŠุญุณู† ุฃุฏุงุก ุงู„ุชุทุจูŠู‚ ุฎุตูˆุตู‹ุง ู„ูˆ ุดุบุงู„ ุนู„ู‰ ู…ูˆุจุงูŠู„ ุฃูˆ ุงู†ุชุฑู†ุช ุจุทูŠุก.

โ€”โ€”โ€”

ุงู„ู€ GraphQL ู…ุด ุจุฏูŠู„ ูƒุงู…ู„ ุนู† RESTุŒ ู„ูƒู† ู‡ูŠ ุทุฑูŠู‚ุฉ ู…ุฎุชู„ูุฉ ููŠ ุงู„ุชุนุงู…ู„ ู…ุน ุงู„ู€ APIs ููŠู‡ุง ู…ุฑูˆู†ุฉ ุฃูƒุชุฑ ููŠ ุทู„ุจ ุงู„ุจูŠุงู†ุงุช. ู„ูˆ ุจุชุทูˆุฑ ุชุทุจูŠู‚ ู…ุนู‚ุฏ ุฃูˆ ู…ุญุชุงุฌ ุชุญูƒู… ุฃูƒุชุฑ ููŠ ุงู„ู€ requests ุงู„ู„ูŠ ุจุชุจุนุชู‡ุง ูˆุชุณุชู‚ุจู„ู‡ุงุŒ ูŠุจู‚ู‰ GraphQL ู…ู…ูƒู† ุชูƒูˆู† ุงุฎุชูŠุงุฑ ู…ู†ุงุณุจ ู„ูƒ.

โ€”โ€”โ€”

ุทูŠุจ ู‡ูŠ ู…ู„ู‡ุงุด ุนูŠูˆุจุŸ

ุงู„ู€ GraphQL ุฒูŠู‡ุง ุฒูŠ ุฃูŠ ุชูƒู†ูˆู„ูˆุฌูŠ ู„ู‡ุง ู…ู…ูŠุฒุงุช ูˆู„ู‡ุง ุนูŠูˆุจุŒ ู„ูƒู† ุฎู„ูŠู†ุง ู†ุฐูƒุฑ ุงู„ุนูŠูˆุจ ููŠ ุฌุฒุก ุชุงู†ูŠ ู…ู†ูุตู„...
โค14
ุฅุฒุงูŠ ุชุฎู„ูŠ ุงู„ู…ูˆู‚ุน ูŠุดุชุบู„ ู…ู† ุบูŠุฑ ุงู†ุชุฑู†ุชุŸ
.
.
ุนู…ุฑูƒ ููƒุฑุช ุฅุฒุงูŠ ู…ู…ูƒู† ุชูุชุญ ู…ูˆู‚ุน ูˆูŠุจ ูˆูŠูุถู„ ูŠุดุชุบู„ ุญุชู‰ ู„ูˆ ุงู„ุฅู†ุชุฑู†ุช ู‚ุทุนุŸ ุฃูˆ ุชู„ุงู‚ูŠ ุงู„ู…ูˆู‚ุน ุณุฑูŠุน ุฌุฏู‹ุง ูƒุฃู†ู‡ ู…ุฎุฒู† ูƒู„ ุญุงุฌุฉ ุนู†ุฏูƒุŸ ุงู„ุณุฑ ู‡ู†ุง ููŠ ุงู„ู€ Service Workers.

ุงู„ู€ Service Workers ุจุชู„ุนุจ ุฏูˆุฑ ูƒุจูŠุฑ ููŠ ุชุญุณูŠู† ุชุฌุฑุจุฉ ุงู„ู…ุณุชุฎุฏู…ุŒ ูƒู…ุงู† ุจุชุฎู„ูŠ ุงู„ู…ูˆุงู‚ุน ุชุดุชุบู„ ุจุณุฑุนุฉ ูˆูƒูุงุกุฉ ุญุชู‰ ููŠ ุญุงู„ุฉ ุงู†ู‚ุทุงุน ุงู„ุฅู†ุชุฑู†ุช.

ุชุนุงู„ ู†ูู‡ู… ุงู„ู…ูˆุถูˆุน ุจุจุณุงุทุฉ...

โ€”โ€”โ€”

๐Ÿ“Œ ูŠุนู†ูŠ ุฅูŠู‡ Service WorkersุŸ


ุจุจุณุงุทุฉุŒ ุฏู‡ ูƒูˆุฏ ุฃูˆ ุณูƒุฑุจุช JavaScript ุจูŠุดุชุบู„ ููŠ ุงู„ุฎู„ููŠุฉ (background) ุจูŠู† ุงู„ู…ุชุตูุญ ูˆุงู„ุณูŠุฑูุฑ. ูˆุจูŠุนุทูŠ ุงู„ู…ูˆู‚ุน ู…ู…ูŠุฒุงุช ูƒุจูŠุฑุฉ ุฒูŠ:

- ุงู„ู€ (Caching): ูŠุนู†ูŠ ูŠุญูุธ ู…ู„ูุงุช ุงู„ู…ูˆู‚ุน ุนู†ุฏูƒ ุนู„ู‰ ุงู„ุฌู‡ุงุฒ ุนุดุงู† ูŠูุชุญ ุจุณุฑุนุฉ ุญุชู‰ ู„ูˆ ุงู„ุฅู†ุชุฑู†ุช ุถุนูŠู.
- ุงู„ู…ูˆู‚ุน ูŠุดุชุบู„ ุญุชู‰ ู„ูˆ ุงู„ุฅู†ุชุฑู†ุช ู‚ุงุทุน.
- ุงู„ู€ (Push Notifications): ุงู„ุฑุณุงุฆู„ ุงู„ู„ูŠ ุจุชุฌูŠู„ูƒ ู…ู† ุงู„ู…ูˆู‚ุน ุญุชู‰ ู„ูˆ ู…ุด ูุงุชุญ ุงู„ุตูุญุฉ.

โ€”โ€”โ€”

๐Ÿ“Œ ุฅุฒุงูŠ ุงู„ู€ Service Workers ุจุชุดุชุบู„ุŸ


1- ุงู„ุชุณุฌูŠู„ (Registration): ุฃูˆู„ ู…ุง ุงู„ู…ุณุชุฎุฏู… ูŠูุชุญ ุงู„ู…ูˆู‚ุนุŒ ุงู„ู€ Service Worker ุจูŠุชุณุฌู„ ู…ุฑุฉ ูˆุงุญุฏุฉ.
2- ุงู„ุชุซุจูŠุช (Installation): ู‡ู†ุง ูŠู‚ุฏุฑ ูŠุจุฏุฃ ูŠุดุชุบู„ ูˆูŠุญูุธ ุงู„ู…ู„ูุงุช ุงู„ู„ูŠ ู…ุญุชุงุฌู‡ุง.
3- ุงู„ุญุฏุซ (Fetch Event): ู„ู…ุง ุงู„ู…ุณุชุฎุฏู… ูŠุทู„ุจ ุฃูŠ ุญุงุฌุฉ (ุฒูŠ ุตูˆุฑุฉ ุฃูˆ ุตูุญุฉ)ุŒ ุงู„ู€ Service Worker ูŠู‚ุฑุฑ ูŠุฌูŠุจู‡ุง ู…ู† ุงู„ูƒุงุด ูˆู„ุง ู…ู† ุงู„ุณูŠุฑูุฑ.

โ€”โ€”โ€”

โœ… ู…ู…ูŠุฒุงุช ุงู„ู€ Service Workers:


- ุฃุฏุงุก ุฃูุถู„: ู„ุฃู†ู‡ ุจูŠู‚ู„ู„ ุงู„ุถุบุท ุนู„ู‰ ุงู„ุณูŠุฑูุฑ.
- ุชุฌุฑุจุฉ ู…ุณุชุฎุฏู… ู…ู…ุชุงุฒุฉ: ู…ู† ู†ุงุญูŠุฉ ุงู„ุณุฑุนุฉ ูˆุฅู…ูƒุงู†ูŠุฉ ุงู„ุชุดุบู„ ุจุฏูˆู† ุฅู†ุชุฑู†ุช.
- ุงู„ุฃู…ุงู†: ู„ุงุฒู… ุงู„ู€ Service Workers ูŠุดุชุบู„ูˆุง ุนู„ู‰ HTTPS ุนุดุงู† ูŠุญุงูุธูˆุง ุนู„ู‰ ุจูŠุงู†ุงุช ุงู„ู…ุณุชุฎุฏู….

โ€”โ€”โ€”

๐Ÿ“Œ ู…ู„ุญูˆุธุงุช ู…ู‡ู…ุฉ


๐Ÿ“ ุงู„ู€ Service Workers ู…ุญุชุงุฌุฉ ุชุฎุทูŠุท ูƒูˆูŠุณ ุนุดุงู† ู…ุชุนู…ู„ุด ูƒุงุด ู„ู„ู…ู„ูุงุช ุฒูŠุงุฏุฉ ุนู† ุงู„ู„ุฒูˆู….
๐Ÿ“ ู…ุด ูƒู„ ุงู„ู…ู…ูŠุฒุงุช ุจุชุดุชุบู„ ููŠ ูƒู„ ุงู„ู…ุชุตูุญุงุชุŒ ูู„ุงุฒู… ุชุนู…ู„ ุญุณุงุจูƒ.

โ€”โ€”โ€”

ู„ูˆ ุนุงูˆุฒ ุชุชุนู…ู‚ ููŠ ุงู„ู…ูˆุถูˆุน ูˆุชุนุฑู ุชูุงุตูŠู„ ุฃูƒุชุฑ ๐Ÿ‘‡
Service Worker API
https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API

Service workers
https://web.dev/learn/pwa/service-workers
โค8
ุจุงู„ุฑุบู… ู…ู† ุฅู† GraphQL ู„ู‡ุง ู…ู…ูŠุฒุงุช ูƒุชูŠุฑ ุฒูŠ ุงู„ู…ุฑูˆู†ุฉ ููŠ ุทู„ุจ ุงู„ุจูŠุงู†ุงุช ูˆุชู‚ู„ูŠู„ ุงู„ู€ requestsุŒ ุฅู„ุง ุฃู†ู‡ุง ุฒูŠ ุฃูŠ ุชูƒู†ูˆู„ูˆุฌูŠุŒ ู„ู‡ุง ุดูˆูŠุฉ ุนูŠูˆุจ ู„ุงุฒู… ุชุงุฎุฏ ุจุงู„ูƒ ู…ู†ู‡ุง...
.
.
ุชุนุงู„ ุฃู‚ูˆู„ูƒ ุนู„ู‰ ุฃู‡ู… ุงู„ุนูŠูˆุจ ุงู„ู„ูŠ ู…ู…ูƒู† ุชูˆุงุฌู‡ูƒ:

1. ุชุนู‚ูŠุฏ ููŠ ุงู„ู€ Server-Side 

ููŠ GraphQLุŒ ุงู„ุณูŠุฑูุฑ ู…ุญุชุงุฌ ูŠูƒูˆู† ุฐูƒูŠ ุดูˆูŠุฉ ุนุดุงู† ูŠุชุนุงู…ู„ ู…ุน ูƒู„ ุงู„ู€ queries ุงู„ู…ุฎุชู„ูุฉ ุงู„ู„ูŠ ู…ู…ูƒู† ูŠุทู„ุจู‡ุง ุงู„ุนู…ูŠู„ (client). ุจู…ุนู†ู‰ ุฅู† ูƒู„ query ู…ู…ูƒู† ุชุทู„ุจ ุจูŠุงู†ุงุช ู…ุฎุชู„ูุฉ ุชู…ุงู…ู‹ุงุŒ ูู…ู…ูƒู† ูŠุจู‚ู‰ ููŠู‡ ุถุบุท ุนู„ู‰ ุงู„ู…ุจุฑู…ุฌูŠู† ุงู„ู„ูŠ ุดุบุงู„ูŠู† ุนู„ู‰ ุงู„ู€ backend ุนุดุงู† ูŠุจู†ูˆุง ุงู„ู€ resolvers ุงู„ู„ูŠ ุจุชุชุนุงู…ู„ ู…ุน ุงู„ุทู„ุจุงุช ุฏูŠ.

ุฏู‡ ุจูŠุญุชุงุฌ ูˆู‚ุช ูˆุฌู‡ุฏ ุฃูƒุชุฑ ู…ู‚ุงุฑู†ุฉ ุจู€ REST ุงู„ู„ูŠ ุจูŠุจู‚ู‰ ูƒู„ endpoint ุซุงุจุช ูˆู…ุนุฑูˆู ุจูŠุนู…ู„ ุฅูŠู‡.

โ€”โ€”โ€”

2. ุงู„ุฃุฏุงุก (Performance)

ุจุงู„ุฑุบู… ู…ู† ุฅู† GraphQL ุจุชู‚ู„ู„ ุนุฏุฏ ุงู„ู€ requests ุงู„ู„ูŠ ุจุชุชุจุนุชุŒ ุฅู„ุง ุฅู†ู‡ุง ู…ู…ูƒู† ุชุณุชู‡ู„ูƒ ู…ูˆุงุฑุฏ ุฃูƒุชุฑ ุนู„ู‰ ุงู„ุณูŠุฑูุฑ. ุงู„ุณุจุจ ููŠ ุฏู‡ ุฅู† ุงู„ุนู…ูŠู„ ู…ู…ูƒู† ูŠุทู„ุจ ุจูŠุงู†ุงุช ูƒุชูŠุฑ ููŠ request ูˆุงุญุฏุŒ ูˆุงู„ู€ server ู„ุงุฒู… ูŠุนุงู„ุฌ ูƒู„ ุงู„ู€queries ุฏูŠ ู…ุฑุฉ ูˆุงุญุฏุฉ.

ู„ูˆ ูƒุงู† ููŠ ุทู„ุจุงุช ู…ุนู‚ุฏุฉ ุจุชุทู„ุจ ุจูŠุงู†ุงุช ูƒุชูŠุฑ ู…ู† ุฃู…ุงูƒู† ู…ุฎุชู„ูุฉุŒ ู…ู…ูƒู† ุงู„ุฃุฏุงุก ูŠุชุฃุซุฑ ุจุงู„ุณู„ุจ.

โ€”โ€”โ€”

3. ุงู„ู€ Over-fetching ูˆุงู„ู€ Under-fetching

ููŠ RESTุŒ ูƒุงู† ุงู„ุนูŠุจ ุงู„ุฃุณุงุณูŠ ุฅู†ูƒ ู…ู…ูƒู† ุชุงุฎุฏ ุจูŠุงู†ุงุช ุฃูƒุชุฑ ู…ู† ุงู„ู„ูŠ ุฃู†ุช ู…ุญุชุงุฌู‡ (Over-fetching)ุŒ ู„ูƒู† ููŠ GraphQLุŒ ุงู„ุนูƒุณ ู…ู…ูƒู† ูŠุญุตู„. ูŠุนู†ูŠ ู…ู…ูƒู† ุชุทู„ุจ ุจูŠุงู†ุงุช ู‚ู„ูŠู„ุฉ ุฌุฏู‹ุง (Under-fetching)ุŒ ูˆุจุนุฏูŠู† ุชูƒุชุดู ุฅู†ูƒ ู…ุญุชุงุฌ ุชุฑุฌุน ุชุนู…ู„ query ุชุงู†ูŠ ุนุดุงู† ุชุฌูŠุจ ุจูŠุงู†ุงุช ู†ุงู‚ุตุฉ.

โ€”โ€”โ€”

4. ุงู„ุญู…ุงูŠุฉ (Security)

ุจู…ุง ุฅู† ุงู„ุนู…ูŠู„ ููŠ GraphQL ุนู†ุฏู‡ ุญุฑูŠุฉ ูŠุทู„ุจ ุงู„ุจูŠุงู†ุงุช ุงู„ู„ูŠ ู‡ูˆ ุนุงูˆุฒู‡ุงุŒ ู…ู…ูƒู† ูŠุจู‚ู‰ ููŠ ู…ุดุงูƒู„ ุฃู…ู†ูŠุฉ ู„ูˆ ุงู„ู€ schema ู…ุด ู…ูƒุชูˆุจุฉ ุจุดูƒู„ ุตุญูŠุญ.

ุนู„ู‰ ุณุจูŠู„ ุงู„ู…ุซุงู„ุŒ ุงู„ุนู…ูŠู„ ู…ู…ูƒู† ูŠุทู„ุจ ุจูŠุงู†ุงุช ุจุดูƒู„ ู…ุชูƒุฑุฑ ุจุทุฑูŠู‚ุฉ ุชุณุจุจ ุถุบุท ุนู„ู‰ ุงู„ุณูŠุฑูุฑ ุฃูˆ ูŠุทู„ุจ ุจูŠุงู†ุงุช ุญุณุงุณุฉ ู„ูˆ ุงู„ุญู…ุงูŠุฉ ู…ุด ู…ุธุจูˆุทุฉ.

โ€”โ€”โ€”

5. ู…ุณุงุฑ ุงู„ุชุนู„ู… (Learning Path)

ู„ูˆ ุฃู†ุช ุฃูˆ ุงู„ุชูŠู… ุจุชุงุนูƒ ู…ุชุนูˆุฏูŠู† ุนู„ู‰ RESTุŒ ุงู„ุชุญูˆู„ ู„ู€ GraphQL ู…ู…ูƒู† ูŠุงุฎุฏ ุดูˆูŠุฉ ูˆู‚ุช ุนุดุงู† ุชูู‡ู…ูˆุง ุฅุฒุงูŠ ุชุดุชุบู„ูˆุง ุจู‡ุง ุจุดูƒู„ ูุนู‘ุงู„.

โ€”โ€”โ€”

6. ุนุฏู… ุงู„ุชูˆุงูู‚ ู…ุน ุงู„ู€ Caching ุงู„ุชู‚ู„ูŠุฏูŠ

ููŠ RESTุŒ ุชู‚ุฏุฑ ุจุณู‡ูˆู„ุฉ ุชุณุชุฎุฏู… ุงู„ู€ HTTP Caching ู„ุฃู† ุงู„ู€ endpoints ุซุงุจุชุฉุŒ ู„ูƒู† ููŠ GraphQLุŒ ุงู„ู€ queries ู…ู…ูƒู† ุชุจู‚ู‰ ู…ุฎุตุตุฉ ุฌุฏู‹ุงุŒ ูˆุฏู‡ ุจูŠุตุนุจ ุนู…ู„ูŠุฉ ุงู„ู€ caching.

ุนุดุงู† ูƒุฏู‡ุŒ ู‡ุชุญุชุงุฌ ุชุณุชุฎุฏู… ุญู„ูˆู„ ู…ุฎุชู„ูุฉ ุฒูŠ Apollo Client ุงู„ู„ูŠ ุจูŠูˆูุฑ caching ู…ู†ุงุณุจ ู„ู€ GraphQLุŒ ุจุณ ุฏู‡ ุจูŠุฒูˆุฏ ุงู„ุชุนู‚ูŠุฏ.

โ€”โ€”โ€”

ููŠ ุงู„ู†ู‡ุงูŠุฉุŒ GraphQL ู‚ูˆูŠุฉ ูˆู…ุฑู†ุฉ ุฌุฏู‹ุงุŒ ู„ูƒู† ุฒูŠ ุฃูŠ ุฃุฏุงุฉุŒ ู„ู‡ุง ู…ู…ูŠุฒุงุชู‡ุง ูˆุนูŠูˆุจู‡ุง. ู…ุญุชุงุฌ ุชู‚ุฑุฑ ู„ูˆ ุงู„ุนูŠูˆุจ ุฏูŠ ู‡ุชุฃุซุฑ ุนู„ู‰ ู…ุดุฑูˆุนูƒ ูˆู„ุง ู„ุงุŒ ุจู†ุงุกู‹ ุนู„ู‰ ู…ุชุทู„ุจุงุช ุงู„ุชุทุจูŠู‚ ูˆุงู„ู€ team ุงู„ู„ูŠ ุดุบุงู„ ู…ุนุงูƒ.
โค9
React 19: Break Hook Cycles

Fix circular dependencies in your React hooks with useDeferredValue!
โค2