DevGuide ๐Ÿ‡ต๐Ÿ‡ธ
10.9K subscribers
2.61K photos
18 videos
127 files
3.55K 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
ุงู„ูุฑู‚ ุจูŠู† ุงู„ู€ Monorepo ูˆุงู„ู€ Multirepo ๐Ÿ’ฏ
.
.
ุชุฎูŠู„ ุฃู†ูƒ ุดุบุงู„ ุนู„ู‰ ู…ุดุฑูˆุน ุถุฎู…ุŒ ุนู†ุฏูƒ ุฃูƒุชุฑ ู…ู† ูุฑูŠู‚ุŒ ูˆูƒู„ ูุฑูŠู‚ ุจูŠุดุชุบู„ ุนู„ู‰ ุฌุฒุก ู…ุฎุชู„ู. ูุฌุฃุฉุŒ ุชุจุฏุฃ ุงู„ู…ุดุงูƒู„ ุชุธู‡ุฑ: ูƒูˆุฏ ู…ูƒุฑุฑุŒ ุตุนูˆุจุฉ ููŠ ุงู„ุชุนุฏูŠู„ุงุชุŒ ุชุนุงุฑุถ ุจูŠู† ุงู„ูุฑู‚ุŒ ูˆุฃูˆู‚ุงุช ุถุงูŠุนุฉ ุนู„ู‰ ุงู„ู€ builds ูˆุงู„ู€ pipelines.

ุงู„ู…ุดูƒู„ุฉ ู‡ู†ุง ู…ู…ูƒู† ุชูƒูˆู† ููŠ ุงู„ุทุฑูŠู‚ุฉ ุงู„ู„ูŠ ุจุชู†ุธู… ุจู‡ุง ุงู„ูƒูˆุฏ ุจุชุงุนูƒ. ๐Ÿ’ก

ู‡ู†ุง ุชุจุฏุฃ ุชุณุฃู„ ู†ูุณูƒ: ุชุฎุชุงุฑ Monorepo ูˆู„ุง MultirepoุŸ

ูƒู„ ุทุฑูŠู‚ุฉ ู„ู‡ุง ู…ูŠุฒุงุชู‡ุง ูˆุนูŠูˆุจู‡ุงุŒ ูˆุงุฎุชูŠุงุฑูƒ ู…ู…ูƒู† ูŠุญุณู† ุดุบู„ูƒ ุจู†ุณุจุฉ ูƒุจูŠุฑุฉ ุฃูˆ ูŠุนู‚ุฏ ุญูŠุงุชูƒ ู„ูˆ ุงุฎุชุงุฑุช ุงู„ุบู„ุท.

ุชุนุงู„ ู†ูˆุถุญ ุงู„ูุฑู‚ ุจูŠู†ู‡ู… ูˆุงู…ุชู‰ ุชุฎุชุงุฑ ุงู„ุทุฑูŠู‚ุฉ ุงู„ู…ู†ุงุณุจุฉ...

โ€”โ€”โ€”

๐Ÿ“Œ ุฃูˆู„ู‹ุง: ูŠุนู†ูŠ ุฅูŠู‡ MonorepoุŸ

ุงู„ู€ Monorepo ุจุจุณุงุทุฉ ู‡ูŠ ุฅู†ูƒ ุชุญุท ูƒู„ ุงู„ูƒูˆุฏ ุงู„ุฎุงุต ุจุงู„ู…ุดุฑูˆุน ุจุชุงุนูƒุŒ ุจูƒู„ ุงู„ู€ components ุฃูˆ ุงู„ู€ modules ุงู„ู„ูŠ ููŠู‡ุŒ ุฏุงุฎู„ Repository ูˆุงุญุฏ.

ูŠุนู†ูŠ ุญุชู‰ ู„ูˆ ุนู†ุฏูƒ ุฃูƒุชุฑ ู…ู† ุฎุฏู…ุฉ (microservices) ุฃูˆ ุฃูƒุชุฑ ู…ู† ู…ูƒุชุจุฉ ุฃูˆ ุฃูƒุชุฑ ู…ู† ุชุทุจูŠู‚ ู…ุฑุชุจุทูŠู† ุจุจุนุถุŒ ูƒู„ู‡ ุจูŠูƒูˆู† ููŠ ู…ูƒุงู† ูˆุงุญุฏ.

โ€”โ€”โ€”

๐Ÿ“ ู…ู…ูŠุฒุงุช ุงู„ู€ Monorepo:

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

- ุฅุนุงุฏุฉ ุงุณุชุฎุฏุงู… ุงู„ูƒูˆุฏ (Code Reusability): ู„ูˆ ููŠ ู…ูƒุชุจุฉ ุฃูˆ ุฌุฒุก ู…ุนูŠู† ู…ู† ุงู„ูƒูˆุฏ ู…ุญุชุงุฌ ุชุณุชุฎุฏู…ู‡ ููŠ ุฃูƒุชุฑ ู…ู† ู…ูˆุฏูŠูˆู„ุŒ ุชู‚ุฏุฑ ุชุนู…ู„ู‡ ุจุณู‡ูˆู„ุฉ ู…ู† ุบูŠุฑ duplication.

- ุชู†ุณูŠู‚ ุฃูุถู„ ุจูŠู† ุงู„ูุฑู‚: ูƒู„ ูุฑูŠู‚ ุดุงูŠู ุงู„ูƒูˆุฏ ุจุชุงุน ุจุงู‚ูŠ ุงู„ูุฑู‚ุŒ ูุฏู‡ ุจูŠุณู‡ู„ ุงู„ุชุนุงูˆู† ุจูŠู†ู‡ู… ูˆุจูŠู‚ู„ู„ ุชุนุงุฑุถ ุงู„ุชุนุฏูŠู„ุงุช (conflicts).

- ุชูƒุงู…ู„ ุฃูุถู„ ุจูŠู† ุงู„ุฃุฏูˆุงุช: ุฒูŠ ุงู„ู€ CI/CD (Continuous Integration/Continuous Deployment) ุงู„ู„ูŠ ุจูŠุดุชุบู„ ุจุณู‡ูˆู„ุฉ ุนู„ู‰ ู…ุดุฑูˆุน ูˆุงุญุฏ ุจุฏู„ ู…ุง ูŠุชู‚ุณู… ุนู„ู‰ ุฃูƒุชุฑ ู…ู† repository.

โ€”โ€”โ€”

๐Ÿ“ ุนูŠูˆุจ ุงู„ู€ Monorepo:

- ุงู„ุญุฌู… ุงู„ูƒุจูŠุฑ ู„ู„ู€ repo: ู…ุน ู…ุฑูˆุฑ ุงู„ูˆู‚ุช ูˆุนุฏุฏ ุงู„ู…ุณุงู‡ู…ูŠู† ุงู„ูƒุจูŠุฑุŒ ุญุฌู… ุงู„ู€ repo ุจูŠูƒุจุฑ ูˆุฏู‡ ู…ู…ูƒู† ูŠุจุทู‘ุฃ ุงู„ุนู…ู„ูŠุงุช ุฒูŠ cloning ุฃูˆ ุญุชู‰ ุงู„ู€ builds.

- ุงู„ุชุนู‚ูŠุฏ ููŠ ุฅุฏุงุฑุฉ ุงู„ุตู„ุงุญูŠุงุช: ุตุนุจ ุชู‚ูˆู„ ุฅู† ูู„ุงู† ูŠู‚ุฏุฑ ูŠุดุชุบู„ ุนู„ู‰ ุฌุฒุก ู…ุนูŠู† ุจุณ ู…ู† ุบูŠุฑ ู…ุง ูŠุดูˆู ุงู„ุจุงู‚ูŠ.

- ู…ุดุงูƒู„ ู…ุน ุงู„ู€ Tools: ู„ูˆ ู…ุด ุนู†ุฏูƒ ุฃุฏูˆุงุช ู‚ูˆูŠุฉ ู„ุฅุฏุงุฑุฉ ุงู„ู€ monorepoุŒ ู…ู…ูƒู† ุชูˆุงุฌู‡ ู…ุดุงูƒู„ ููŠ ุงู„ุชู†ุธูŠู… ูˆุนู…ู„ูŠุฉ ุงู„ู€ build.

โ€”โ€”โ€”

๐Ÿ“Œ ุซุงู†ูŠู‹ุง: ูŠุนู†ูŠ ุฅูŠู‡ MultirepoุŸ

ุนู„ู‰ ุงู„ุนูƒุณ ุชู…ุงู…ู‹ุงุŒ ุงู„ู€ Multirepo ู…ุนู†ุงู‡ุง ุฅู† ูƒู„ ุฌุฒุก ุฃูˆ ู…ูˆุฏูŠูˆู„ ู…ู† ุงู„ู…ุดุฑูˆุน ูŠูƒูˆู† ููŠ Repository ุฎุงุต ุจู‡. ูŠุนู†ูŠ ูƒู„ ู…ูˆุฏูŠูˆู„ ุจูŠุจู‚ู‰ ู…ุณุชู‚ู„ ุจุฐุงุชู‡ ูˆูƒุฃู†ู‡ ู…ุดุฑูˆุน ู„ูˆุญุฏู‡.

โ€”โ€”โ€”

๐Ÿ“ ู…ู…ูŠุฒุงุช ุงู„ู€ Multirepo:

- ูƒู„ ู…ูˆุฏูŠูˆู„ ู„ูŠู‡ ุญูŠุงุชู‡ ุงู„ุฎุงุตุฉุŒ ูˆุฏู‡ ุจูŠุฎู„ูŠ ุฅุฏุงุฑุฉ ูƒู„ ุฌุฒุก ู…ุณุชู‚ู„ุฉ ูˆุฃุณู‡ู„ ู„ุจุนุถ ุงู„ูุฑู‚.

- ุชู‚ุฏุฑ ุชุญุฏุฏ ู…ูŠู† ูŠุดุชุบู„ ุนู„ู‰ ุฅูŠู‡ ุจู†ุงุกู‹ ุนู„ู‰ ุงู„ู€ repo ุงู„ู„ูŠ ุนู†ุฏู‡ู… ุฃูƒุณุณ ุนู„ูŠู‡.

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

- ูƒู„ ุฌุฒุก ุจูŠูƒูˆู† ุตุบูŠุฑ ูˆู…ุณุชู‚ู„ุŒ ูุฏู‡ ุจูŠุฎู„ูŠ ุงู„ุนู…ู„ูŠุงุช ุฒูŠ cloning ุฃุณุฑุน ูˆุฃุณู‡ู„.

โ€”โ€”โ€”

๐Ÿ“ ุนูŠูˆุจ ุงู„ู€ Multirepo:

- ุชูƒุฑุงุฑ ุงู„ูƒูˆุฏ: ู„ูˆ ููŠู‡ ุฃูƒุชุฑ ู…ู† ู…ูˆุฏูŠูˆู„ ุจูŠุญุชุงุฌ ู†ูุณ ุงู„ูƒูˆุฏุŒ ู…ู…ูƒู† ุชุถุทุฑ ุชูƒุฑุฑู‡ ุฃูˆ ุชุญุท ู…ูƒุชุจุฉ ู…ู†ูุตู„ุฉ ู„ูŠู‡.

- ุชุนู‚ูŠุฏ ููŠ ุงู„ุชู†ุณูŠู‚ ุจูŠู† ุงู„ูุฑู‚: ุงู„ุชุนุงูˆู† ุจูŠู† ุงู„ูุฑู‚ ุจูŠุจู‚ู‰ ุฃุตุนุจุŒ ูˆุฎุตูˆุตู‹ุง ู„ู…ุง ูŠูƒูˆู† ููŠู‡ dependencies ูƒุชูŠุฑ ุจูŠู† ุงู„ู€ modules.

- ุชูƒุงู…ู„ ู…ุนู‚ุฏ ู„ู„ู€ CI/CD: ุนุดุงู† ูƒู„ ุฌุฒุก ููŠ Repository ู…ุฎุชู„ูุŒ ู‡ุชุญุชุงุฌ ุฅุนุฏุงุฏุงุช ุฃูƒุชุฑ ู„ู„ู€ pipelines ุนุดุงู† ูƒู„ ุญุงุฌุฉ ุชุดุชุบู„ ู…ุน ุจุนุถ.

- ุตุนูˆุจุฉ ููŠ ุฅุฏุงุฑุฉ ุงู„ุชุบูŠูŠุฑุงุช ุงู„ูƒุจูŠุฑุฉ: ู„ูˆ ุนู†ุฏูƒ ุชุบูŠูŠุฑ ุถุฎู… ุจูŠุฃุซุฑ ุนู„ู‰ ุฃูƒุชุฑ ู…ู† ู…ูˆุฏูŠูˆู„ุŒ ู‡ุชุญุชุงุฌ ุชุฏุฎู„ ุนู„ู‰ ูƒุฐุง repo ูˆุชุนุฏู„ ููŠ ูƒู„ ูˆุงุญุฏ ู„ูˆุญุฏู‡.

โ€”โ€”โ€”

๐Ÿ“Œ ุงู…ุชู‰ ุชุฎุชุงุฑ ู…ูŠู†ุŸ

โœ… ุงุฎุชุฑ Monorepo ู„ูˆ:

1- ู…ุดุฑูˆุนูƒ ุนุจุงุฑุฉ ุนู† ู…ุฌู…ูˆุนุฉ modules ู…ุฑุชุจุทุฉ ุจุจุนุถู‡ุง.

2- ุนู†ุฏูƒ ูุฑูŠู‚ ุตุบูŠุฑ ุฃูˆ ู…ุชูˆุณุท.

3- ุจุชุญุชุงุฌ ุชุนู…ู„ ุชุบูŠูŠุฑุงุช ุจุดูƒู„ ู…ุชูƒุฑุฑ ุนู„ู‰ ุฃูƒุชุฑ ู…ู† ู…ูˆุฏูŠูˆู„ ููŠ ู†ูุณ ุงู„ูˆู‚ุช.

4- ุงู„ุฃุฏูˆุงุช ุงู„ู„ูŠ ุจุชุณุชุฎุฏู…ู‡ุง ุจุชุฏุนู… ุฅุฏุงุฑุฉ monorepos ุจุดูƒู„ ูƒูˆูŠุณ.


โœ… ุงุฎุชุฑ Multirepo ู„ูˆ:

1- ู…ุดุฑูˆุนูƒ ูƒุจูŠุฑ ุฌุฏู‹ุง ูˆู…ุนู‚ุฏุŒ ูˆูƒู„ ุฌุฒุก ููŠู‡ ู…ุณุชู‚ู„ ุชู…ุงู…ู‹ุง.

2- ุจุชุญุชุงุฌ ุชุชุญูƒู… ููŠ ุงู„ุตู„ุงุญูŠุงุช ุนู„ู‰ ู…ุณุชูˆู‰ ูƒู„ ู…ูˆุฏูŠูˆู„.

3- ุนู†ุฏูƒ ูุฑู‚ ู…ุฎุชู„ูุฉ ูƒู„ ูุฑูŠู‚ ุดุบุงู„ ุนู„ู‰ ู…ูˆุฏูŠูˆู„ ุฎุงุต ุจู‡.

4- ุนุงูŠุฒ ุชุชุฌู†ุจ ุงู„ู…ุดุงูƒู„ ุงู„ู„ูŠ ุจุชุณุจุจู‡ุง ุฃุญุฌุงู… ุงู„ู€ repos ุงู„ูƒุจูŠุฑุฉ.

โ€”โ€”โ€”

ุงู„ู‚ุฑุงุฑ ููŠ ุงู„ุขุฎุฑ ุจูŠุฑุฌุน ู„ุทุจูŠุนุฉ ู…ุดุฑูˆุนูƒ ูˆุงุญุชูŠุงุฌุงุช ูุฑูŠู‚ูƒ. ู…ููŠุด ุทุฑูŠู‚ุฉ "ุตุญ" ูˆุทุฑูŠู‚ุฉ "ุบู„ุท"ุŒ ู„ูƒู† ููŠู‡ ุทุฑูŠู‚ุฉ ู…ู†ุงุณุจุฉ ุฃูƒุชุฑ ุญุณุจ ุธุฑูˆููƒ. ุฃู‡ู… ุญุงุฌุฉ ุฅู†ูƒ ุชูƒูˆู† ูุงู‡ู… ูƒู„ ุทุฑูŠู‚ุฉ ุจุชู‚ุฏู… ุฅูŠู‡ ูˆุนูŠูˆุจู‡ุง ุฅูŠู‡. ๐Ÿ’ก

ูˆูู‚ูƒู… ุงู„ู„ู‡ ู„ูƒู„ ุฎูŠุฑ ๐ŸŒฟ
โค9
Keys In SQL With Tables Well Explained ๐Ÿ’ฏ
โค3๐Ÿ”ฅ1
ุฏูˆุฑุฉ ู…ุฌุงู†ูŠุฉ ุจุนู†ูˆุงู†: Power BI 101

ุชู‡ุฏู ู‡ุฐู‡ ุงู„ุฏูˆุฑุฉ ุฅู„ู‰ ุงู„ุชุนุฑู ุนู„ู‰ ุฃุณุงุณูŠุงุช Power BIุŒ ุจุฏุกู‹ุง ู…ู† ุงุณุชูŠุฑุงุฏ ุงู„ุจูŠุงู†ุงุชุŒ ุฅู„ู‰ ุชู…ุซูŠู„ ุงู„ุจูŠุงู†ุงุช ูˆุฅู†ุดุงุก ุงู„ุชู‚ุงุฑูŠุฑ ูˆdashboard.

ุณุชุณุงุนุฏูƒ ุงู„ุฏูˆุฑุฉ ุนู„ู‰ ุงูƒุชุณุงุจ ุงู„ู…ู‡ุงุฑุงุช ุงู„ู„ุงุฒู…ุฉ ู„ุชู…ุซูŠู„ ุงู„ุจูŠุงู†ุงุช ูˆุฅู†ุดุงุก ุชู‚ุงุฑูŠุฑ ูุนู‘ุงู„ุฉ ุจุงุณุชุฎุฏุงู… Power BI.

https://satr.codes/course/OC6sfVMdl9/view
โค2
ุงู„ู€ MVC

ู†ู…ุท ุงู„ู€ MVCุŒ ุฃูˆ Model-View-ControllerุŒ ูŠุนุชุจุฑ ู…ู† ุฃุดู‡ุฑ ุงู„ุฃู†ู…ุงุท ุงู„ู…ุณุชุฎุฏู…ุฉ ููŠ ู‡ู†ุฏุณุฉ ุงู„ุจุฑู…ุฌูŠุงุชุŒ ูˆุจูŠุณุงุนุฏ ุนู„ู‰ ุชู†ุธูŠู… ุงู„ูƒูˆุฏ ุจุดูƒู„ ูŠุฎู„ูŠ ุนู…ู„ูŠุฉ ุชุทูˆูŠุฑ ูˆุตูŠุงู†ุฉ ุงู„ุจุฑุงู…ุฌ ุฃุจุณุท ูˆุฃุณู‡ู„.

โ€”โ€”โ€”

ุทูŠุจ ูŠุนู†ูŠ ุฅูŠู‡ MVCุŸ ๐Ÿค”

ุงู„ู€ MVC ุจูŠุชูƒูˆู† ู…ู† 3 ู…ูƒูˆู†ุงุช ุฃุณุงุณูŠุฉ:

โœ… ุงู„ู€ Model: ุงู„ุฌุฒุก ุฏู‡ ู‡ูˆ ุงู„ู„ูŠ ุจูŠุชุนุงู…ู„ ู…ุน ุงู„ุจูŠุงู†ุงุช. ุงู„ู€ Model ุจูŠู‚ูˆู… ุจุชุฎุฒูŠู† ุงู„ุจูŠุงู†ุงุชุŒ ู…ุนุงู„ุฌุฉ ุงู„ุจูŠุงู†ุงุชุŒ ูˆุงู„ุชูˆุงุตู„ ู…ุน ู‚ูˆุงุนุฏ ุงู„ุจูŠุงู†ุงุช.

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

โœ… ุงู„ู€ View: ูˆุฏู‡ ุงู„ู…ุณุฆูˆู„ ุนู† ูƒู„ ุงู„ู„ูŠ ุงู„ู…ุณุชุฎุฏู… ุจูŠุดูˆูู‡ ู‚ุฏุงู…ู‡ ุนู„ู‰ ุงู„ุดุงุดุฉ. ู‡ูˆ ุงู„ู…ุณุฆูˆู„ ุนู† ุนุฑุถ ุงู„ุจูŠุงู†ุงุช ุงู„ู„ูŠ ุฌู‡ุฒู‡ุง ุงู„ู€ Model.

ูŠุนู†ูŠ ู…ุซู„ู‹ุง ู„ูˆ ุนู†ุฏูƒ ุตูุญุฉ ุจุชุนุฑุถ ุงู„ู…ู†ุชุฌุงุชุŒ ูุงู„ู€ View ู‡ูˆ ุงู„ู„ูŠ ุจูŠุญุฏุฏ ุฅุฒุงูŠ ุงู„ู…ู†ุชุฌุงุช ู‡ุชุธู‡ุฑ (ุงู„ุฃู„ูˆุงู†ุŒ ุงู„ุดูƒู„ุŒ ุงู„ุชุฑุชูŠุจ... ุฅู„ุฎ).

โœ… ุงู„ู€ Controller: ูˆุฏู‡ ุงู„ูˆุณูŠุท ุงู„ู„ูŠ ุจูŠุนู…ู„ ุงู„ุชู†ุณูŠู‚ ุจูŠู† ุงู„ู€ Model ูˆุงู„ู€ View.

ุจู…ุนู†ู‰ ุชุงู†ูŠุŒ ู‡ูˆ ุงู„ู„ูŠ ุจูŠุณุชู‚ุจู„ ุทู„ุจุงุช ุงู„ู…ุณุชุฎุฏู…ูŠู†ุŒ ุฒูŠ ู„ู…ุง ุชุถุบุท ุนู„ู‰ ุฒุฑุงุฑ ุฃูˆ ุชุฏุฎู„ ุจูŠุงู†ุงุช ููŠ ููˆุฑู…ุŒ ูˆุจุนุฏูŠู† ูŠูˆุฌู‡ ุงู„ุทู„ุจ ู„ู„ู€ Model ุนู„ุดุงู† ูŠุนุงู„ุฌ ุงู„ุจูŠุงู†ุงุชุŒ ูˆููŠ ุงู„ุขุฎุฑ ูŠุฑุฌุน ุงู„ุจูŠุงู†ุงุช ุฏูŠ ู„ู„ู€ View ุนู„ุดุงู† ูŠุนุฑุถู‡ุง.

โ€”โ€”โ€”

ู…ุซุงู„ ุจุณูŠุท ๐Ÿ› 

ุชุฎูŠู„ ุฅู†ูƒ ูุงุชุญ ู…ูˆู‚ุน ู„ู„ุชุณูˆู‚ ูˆุนุงูŠุฒ ุชุดูˆู ู‚ุงุฆู…ุฉ ุงู„ู…ู†ุชุฌุงุช:

โšก๏ธ ุฃูˆู„ ุญุงุฌุฉ ุจุชุถุบุท ุนู„ู‰ ุฒุฑุงุฑ "ุนุฑุถ ุงู„ู…ู†ุชุฌุงุช" โ€“ ู‡ู†ุง ุงู„ู€ Controller ุจูŠุณุชู‚ุจู„ ุงู„ุทู„ุจ ุฏู‡.

โšก๏ธ ุจุนุฏ ูƒุฏู‡ุŒ ุงู„ู€ Controller ุจูŠุฑูˆุญ ู„ู„ู€ Model ุนู„ุดุงู† ูŠุฌูŠุจ ุงู„ุจูŠุงู†ุงุช ู…ู† ู‚ุงุนุฏุฉ ุงู„ุจูŠุงู†ุงุช (ู‚ุงุฆู…ุฉ ุงู„ู…ู†ุชุฌุงุช).

โšก๏ธ ุงู„ู€ Model ุจูŠุฏูˆุฑ ููŠ ู‚ุงุนุฏุฉ ุงู„ุจูŠุงู†ุงุช ูˆูŠุฌูŠุจ ุงู„ู…ู†ุชุฌุงุช.

โšก๏ธ ุจุนุฏ ู…ุง ุงู„ู€ Model ูŠุฌู‡ุฒ ุงู„ุจูŠุงู†ุงุชุŒ ุจูŠุฑุฌู‘ุนู‡ุง ู„ู„ู€ Controller ุงู„ู„ูŠ ุจุฏูˆุฑู‡ ูŠุจุนุชู‡ุง ู„ู„ู€ View.

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

โ€”โ€”โ€”

ู„ูŠู‡ ุชุณุชุฎุฏู… ุงู„ู€ MVCุŸ ๐Ÿคทโ€โ™‚๏ธ

๐Ÿ“Œ ุชู†ุธูŠู… ุงู„ูƒูˆุฏ: ุจูŠุฎู„ูŠ ุงู„ูƒูˆุฏ ู…ู†ุธู… ุฃูƒุชุฑุŒ ุจุญูŠุซ ุชู‚ุฏุฑ ุชูุตู„ ู…ู†ุทู‚ ุงู„ุนู…ู„ (ุงู„ู€ Model) ุนู† ุงู„ุนุฑุถ (ุงู„ู€ View) ูˆุนู† ุงู„ุชุญูƒู… (ุงู„ู€ Controller)ุŒ ูˆุจุงู„ุชุงู„ูŠ ู„ูˆ ุนุงูŠุฒ ุชุนุฏู„ ููŠ ุฌุฒุก ู…ุนูŠู†ุŒ ุจุชุนุฏู„ ุนู„ูŠู‡ ู…ู† ุบูŠุฑ ู…ุง ุชุฃุซุฑ ุนู„ู‰ ุงู„ุฃุฌุฒุงุก ุงู„ุชุงู†ูŠุฉ.

๐Ÿ“Œ ุณู‡ูˆู„ุฉ ุงู„ุชุทูˆูŠุฑ ูˆุงู„ุตูŠุงู†ุฉ: ูƒู„ ู…ูƒูˆู† ููŠ ุงู„ู€ MVC ุจูŠุดุชุบู„ ุจุดูƒู„ ู…ุณุชู‚ู„ุŒ ูู„ูˆ ููŠ ู…ุดูƒู„ุฉ ููŠ ุงู„ุนุฑุถ (ุงู„ู€ View) ู…ุด ู„ุงุฒู… ุชู„ู…ุณ ุงู„ูƒูˆุฏ ุงู„ุฎุงุต ุจุงู„ุจูŠุงู†ุงุช (ุงู„ู€ Model) ุฃูˆ ุงู„ุชุญูƒู… (ุงู„ู€ Controller).

๐Ÿ“Œ ุฅุนุงุฏุฉ ุงุณุชุฎุฏุงู… ุงู„ูƒูˆุฏ: ุจู…ุง ุฅู† ุงู„ูƒูˆุฏ ู…ุชู‚ุณู… ูˆู…ู†ุธู…ุŒ ู…ู…ูƒู† ุชุนูŠุฏ ุงุณุชุฎุฏุงู… ุฃุฌุฒุงุก ู…ุนูŠู†ุฉ ู…ู†ู‡ ููŠ ู…ุดุงุฑูŠุน ุชุงู†ูŠุฉ.

โ€”โ€”โ€”

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

ุฏู‡ ู‡ูŠูˆูุฑ ุนู„ูŠูƒ ูˆู‚ุช ูˆู…ุฌู‡ูˆุฏ ูˆู‡ุชู‚ุฏุฑ ุชุนู…ู„ ุชุนุฏูŠู„ ููŠ ุงู„ุชุทุจูŠู‚ ุจุชุงุนูƒ ุจูƒู„ ุณู‡ูˆู„ุฉ.

ุจุงู„ุชูˆููŠู‚ ูŠุง ุจุทู„ ๐Ÿ’ช๐Ÿป
โค9
ุงู„ูุฑู‚ ุจูŠู† AOT Compiler ูˆ JIT Compiler ููŠ Angular ๐Ÿ’ก
.
.
ุทุจุนู‹ุง ุฃู†ุช ุนุงุฑู ุฅู† ุงู„ู…ุชุตูุญ ู…ุจูŠูู‡ู…ุด ุบูŠุฑ ู„ุบุฉ ูˆุงุญุฏุฉ ููŠ ุงู„ุขุฎุฑุŒ ูˆู‡ูŠ ุงู„ู€ JavaScript. ูŠุนู†ูŠ ู…ู‡ู…ุง ูƒุชุจุช ูƒูˆุฏ ุจู„ุบุฉ ุฒูŠ TypeScript ุฃูˆ ุญุชู‰ HTML ูˆCSSุŒ ู„ุงุฒู… ููŠ ุงู„ู†ู‡ุงูŠุฉ ุงู„ูƒู„ุงู… ุฏู‡ ูƒู„ู‡ ูŠุชุญูˆู„ ู„ู€ JavaScript ุนุดุงู† ุงู„ู…ุชุตูุญ ูŠู†ูุฐู‡ ูˆูŠุทู„ุน ุงู„ู…ูˆู‚ุน ุนู„ู‰ ุงู„ุดุงุดุฉ.

ูˆุฏู‡ ุจูŠุญุตู„ ุนู† ุทุฑูŠู‚ ุญุงุฌุฉ ุงุณู…ู‡ุง ุงู„ู€ Compiler (ุฃูˆ ุงู„ู€ Transpiler ููŠ ุจุนุถ ุงู„ุญุงู„ุงุช ุฒูŠ TypeScript). ูˆู„ูƒู† ููŠ AngularุŒ ุงู„ู€ compilation ุฏู‡ ู…ู…ูƒู† ูŠุญุตู„ ุจุทุฑูŠู‚ุชูŠู† ู…ุฎุชู„ูุชูŠู†ุŒ ูˆูƒู„ ุทุฑูŠู‚ุฉ ู„ู‡ุง ู…ู…ูŠุฒุงุช ูˆุนูŠูˆุจ.

โ€”โ€”โ€”

https://www.linkedin.com/posts/dev-alisamir_angular-devabrguide-typescript-activity-7305272573439713280-pq-Q
โค3
ุงู„ูุฑู‚ ุจูŠู† Dependency Injection ูˆ Inversion of Control ๐Ÿ’ก

ู„ู…ุง ุชุชุนู…ู‚ ุดูˆูŠุฉ ููŠ ู…ุฌุงู„ ุงู„ุณูˆูุชูˆูŠุฑ ู‡ุชุณู…ุน ุนู† ู…ุตุทู„ุญุงุช ุฒูŠ Dependency Injection ูˆ Inversion of ControlุŒ ูˆููŠู‡ ู†ุงุณ ุจุชุชู„ุฎุจุท ุจูŠู†ู‡ู… ูˆุจุชููƒุฑ ุฅู†ู‡ู… ุญุงุฌุฉ ูˆุงุญุฏุฉ. ุฎู„ูŠู†ุง ู†ูˆุถุญ ุงู„ูุฑู‚ ุจุทุฑูŠู‚ุฉ ุจุณูŠุทุฉ ุชูู‡ู…ูƒ ุงู„ููƒุฑุฉ ูƒูˆูŠุณ...

โ€”โ€”โ€”

๐Ÿ“ ุฅูŠู‡ ู‡ูˆ Inversion of Control (IoC)ุŸ

ุฎู„ูŠู†ุง ู†ุจุฏุฃ ุจู€ Inversion of Control ุฃูˆ ุฒูŠ ู…ุง ุจู†ุฎุชุตุฑู‡ุง IoC. ุงู„ู…ูู‡ูˆู… ุฏู‡ ุจุจุณุงุทุฉ ุจูŠู‚ูˆู„ ุฅู† ุจุฏู„ ู…ุง ุงู„ูƒูˆุฏ ุจุชุงุนูƒ ู‡ูˆ ุงู„ู„ูŠ ูŠุชุญูƒู… ููŠ ูƒู„ ุญุงุฌุฉ ุจู†ูุณู‡ (ูŠุนู†ูŠ ู‡ูˆ ุงู„ู„ูŠ ุจูŠุนู…ู„ ุงู„ูƒุงุฆู†ุงุช (Objects) ุงู„ู„ูŠ ู‡ูŠุดุชุบู„ ุจูŠู‡ุง ูˆูŠุนุชู…ุฏ ุนู„ูŠู‡ุง)ุŒ ุจูŠูƒูˆู† ููŠู‡ ุฌู‡ุฉ ุชุงู†ูŠุฉ ู‡ูŠ ุงู„ู„ูŠ ุจุชุนู…ู„ ุฏู‡ ูˆุชุฏูŠุฑ ุงู„ู…ูˆุถูˆุน.

ูŠุนู†ูŠ ุงู„ูƒูˆุฏ ุจุชุงุนูƒ ู…ุด ุจูŠู‡ุชู… ุจุฃู†ู‡ "ูŠู†ุดุฆ" ุงู„ู€ dependencies (ุงู„ูƒุงุฆู†ุงุช ุงู„ู„ูŠ ุจูŠุนุชู…ุฏ ุนู„ูŠู‡ุง)ุŒ ุจู„ ุจูŠุณุชู‚ุจู„ู‡ุง ุฌุงู‡ุฒุฉ.

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

โ€”โ€”โ€”

๐Ÿ“ ุฅูŠู‡ ุญูƒุงูŠุฉ Dependency InjectionุŸ

ู‡ู†ุง ุจู‚ู‰ ูŠูŠุฌูŠ ุฏูˆุฑ ุงู„ู€ Dependency Injection. ุฏู‡ ุจุจุณุงุทุฉ ุฃุณู„ูˆุจ ุฃูˆ ุทุฑูŠู‚ุฉ ู„ุชุทุจูŠู‚ ู…ูู‡ูˆู… ุงู„ู€ Inversion of Control.

ุจุฏู„ ู…ุง ุงู„ูƒูˆุฏ ุจุชุงุนูƒ ู‡ูˆ ุงู„ู„ูŠ ูŠู‚ูˆู„ "ุฃู†ุง ู…ุญุชุงุฌ ุงู„ูƒุงุฆู† ุฏู‡ ุฃูˆ ุงู„ู…ูƒูˆู† ุฏู‡ ุนุดุงู† ุฃุดุชุบู„"ุŒ ุญุงุฌุฉ ุชุงู†ูŠุฉ (ุฒูŠ ุงู„ู€ framework ุฃูˆ ุงู„ู€ container) ุจุชูƒูˆู† ู…ุณุคูˆู„ุฉ ุนู† ุฅู†ู‡ุง "ุชุถุฎ" ุงู„ูƒุงุฆู†ุงุช ุฏูŠ ู„ูƒ ููŠ ุงู„ูˆู‚ุช ุงู„ู…ู†ุงุณุจ.

โ€”โ€”โ€”

๐Ÿ“Œ ู…ุซุงู„ ูŠูˆุถุญ ุงู„ูุฑู‚:

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

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

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

โ€”โ€”โ€”

๐Ÿ“Œ ุทุจ ู„ูŠู‡ ุจู†ู‡ุชู… ุจุงู„ุญุงุฌุงุช ุฏูŠ ููŠ ุงู„ุจุฑู…ุฌุฉุŸ

ุงู„ููƒุฑุฉ ุจุจุณุงุทุฉ ุฅู† ุงู„ุทุฑูŠู‚ุฉ ุฏูŠ ุจุชุฎู„ูŠู†ุง ู†ูƒุชุจ ูƒูˆุฏ ู…ุฑู† ูˆุณู‡ู„ ุงู„ุชุทูˆูŠุฑ. ู„ูˆ ูƒู„ ูƒุงุฆู† ููŠ ุงู„ูƒูˆุฏ ุจุชุงุนูƒ ุจูŠุนุชู…ุฏ ุนู„ู‰ ูƒุงุฆู†ุงุช ุชุงู†ูŠุฉ ูˆุจูŠุนู…ู„ู‡ุง ุจู†ูุณู‡ุŒ ุฏู‡ ู‡ูŠุฎู„ูŠ ุงู„ูƒูˆุฏ ู…ุนู‚ุฏ ูˆุตุนุจ ุชุฎุชุจุฑู‡ ุฃูˆ ุชุนุฏู„ ุนู„ูŠู‡.

ู„ูƒู† ู„ู…ุง ุชุฎู„ูŠ Dependency Injection ู…ุณุคูˆู„ ุนู† ุชูˆุตูŠู„ ุงู„ู€ dependenciesุŒ ู‡ุชู‚ุฏุฑ ุชุนุฏู„ ุนู„ู‰ ุงู„ูƒูˆุฏ ุฃูˆ ุชุณุชุจุฏู„ ุฃูŠ ุฌุฒุก ุจุณู‡ูˆู„ุฉ ู…ู† ุบูŠุฑ ู…ุง ุชุจู‚ู‰ ู…ุญุชุงุฌ ุชุบูŠูŠุฑุงุช ูƒุจูŠุฑุฉ.

โ€”โ€”โ€”

ุงู„ุฎู€ู„ุงุตู€ุฉ โœ…


ุงู„ู€ Inversion of Control: ู‡ูˆ ุงู„ู…ูู‡ูˆู… ุงู„ู„ูŠ ุจูŠู‚ูˆู„ ุฅู†ูƒ ุชุณูŠุจ ุงู„ุชุญูƒู… ููŠ ุงู„ู€ dependencies ู„ุฌู‡ุฉ ุฎุงุฑุฌูŠุฉ.

ุงู„ู€ Dependency Injection: ู‡ูˆ ุทุฑูŠู‚ุฉ ู„ุชุทุจูŠู‚ ุงู„ู…ูู‡ูˆู… ุฏู‡ ุนู† ุทุฑูŠู‚ ุชูˆุตูŠู„ ุงู„ู€ dependencies ู„ู„ูƒูˆุฏ ุจุชุงุนูƒ ุจุดูƒู„ ุฃูˆุชูˆู…ุงุชูŠูƒูŠ.

ุจุงู„ุชุงู„ูŠุŒ IoC ู‡ูˆ ุงู„ููƒุฑุฉ ุงู„ูƒุจูŠุฑุฉ ุงู„ู„ูŠ ุจุชุญูƒู… ุงู„ู…ูˆุถูˆุนุŒ ูˆDependency Injection ู‡ูˆ ุงู„ุฃุฏุงุฉ ุงู„ู„ูŠ ุจุชุทุจู‚ ุงู„ููƒุฑุฉ ุฏูŠ.

ุจุงู„ุชูˆููŠู‚ ูŠุง ุจุทู„ โšก๏ธ
โค7๐Ÿ‘4
All CSS Functions ๐Ÿ’ก
โค8๐Ÿ‘1