|
After Width: | Height: | Size: 1.4 MiB |
|
After Width: | Height: | Size: 1.3 MiB |
|
After Width: | Height: | Size: 1.3 MiB |
|
After Width: | Height: | Size: 1.7 MiB |
|
After Width: | Height: | Size: 1.8 MiB |
|
After Width: | Height: | Size: 1.8 MiB |
|
After Width: | Height: | Size: 1.5 MiB |
|
After Width: | Height: | Size: 1.8 MiB |
|
After Width: | Height: | Size: 1.8 MiB |
|
After Width: | Height: | Size: 1.7 MiB |
|
After Width: | Height: | Size: 1.6 MiB |
|
After Width: | Height: | Size: 1.6 MiB |
|
After Width: | Height: | Size: 1.7 MiB |
|
After Width: | Height: | Size: 246 KiB |
|
After Width: | Height: | Size: 240 KiB |
|
After Width: | Height: | Size: 253 KiB |
|
After Width: | Height: | Size: 200 KiB |
|
After Width: | Height: | Size: 206 KiB |
|
After Width: | Height: | Size: 169 KiB |
|
After Width: | Height: | Size: 170 KiB |
|
After Width: | Height: | Size: 177 KiB |
|
After Width: | Height: | Size: 150 KiB |
|
After Width: | Height: | Size: 163 KiB |
@ -0,0 +1,78 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "17b8ec8e85d99e27dcb3f73842e583be",
|
||||
"translation_date": "2026-01-08T20:24:03+00:00",
|
||||
"source_file": "1-getting-started-lessons/1-intro-to-programming-languages/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಅಸೈನ್ಮೆಂಟ್: ಆಧುನಿಕ ವೆಬ್ ಅಭಿವೃದ್ದಿ ಸಾಧನಗಳನ್ನು ಅನ್ವೇಷಿಸುವುದು
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ವೆಬ್ ಅಭಿವೃದ್ಧಿ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ವಿಕಸಕರೆಗಳಿಗೆ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ನಿರ್ಮಿಸಲು, ಪರೀಕ್ಷಿಸಲು, ನಿರ್ವಹಿಸಲು ಸಹಾಯ ಮಾಡುವ ನೂರಾರು ವಿಶೇಷ ಸಾಧನಗಳು ಸೇರಿವೆ. ಈ ಪಾಠದಲ್ಲಿ ಒಳಗೊಂಡಿರುವ ಸಾಧನಗಳನ್ನು ಸಹಾಯ ಮಾಡುವ ಸಾಧನಗಳನ್ನು ಅಧ್ಯಯನ ಮಾಡಿ, ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ನಿಮ್ಮ ಕಾರ್ಯವಾಗಿದೆ.
|
||||
|
||||
**ನಿಮ್ಮ ಮಿಷನ್:** ಈ ಪಾಠದಲ್ಲಿ **ಆಳವಾಗಿ ಒಳಗೊಂಡಿಲ್ಲದ ಮೂರು ಸಾಧನಗಳನ್ನು** ಆಯ್ಕೆಮಾಡಿ (ಮೂದಲು ನೀಡಲಾದ ಕೋಡ್ ಸಂಪಾದಕರು, ಬ್ರೌಸರಗಳು ಅಥವಾ ಕಮಾಂಡ್ ಲೈನ್ ಸಾಧನಗಳನ್ನು ಆಯ್ಕೆಮಾಡಲು ಬಾರದು). ಆಧುನಿಕ ವೆಬ್ ಅಭಿವೃದ್ಧಿ ಕಾರ್ಯಪ್ರವಾಹಗಳಲ್ಲಿ ವಿಶೇಷ ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಹರಿಸುವ ಸಾಧನಗಳ ಮೇಲೆ ಗಮನಹರಿಸಿ.
|
||||
|
||||
**ಪ್ರತಿಯೊಂದು ಸಾಧನಕ್ಕೆ, ನೀಡಬೇಕಾಗಿರುವುದು:**
|
||||
|
||||
1. **ಸಾಧನ ಹೆಸರು ಮತ್ತು ವರ್ಗ** (ಉದಾಹರಣೆ: "Figma - ವಿನ್ಯಾಸ ಸಾಧನ" ಅಥವಾ "Jest - ಪರೀಕ್ಷಾ ಫ್ರೇಮ್ವರ್ಕ್")
|
||||
2. **ಉದ್ದೇಶ ಮತ್ತು ಉಪಯೋಗಗಳು** - ಒಂದು ವೆಬ್ ಡೆವಲಪರ್ ಈ ಸಾಧನವನ್ನು ಯಾಕೆ ಬಳಸುತ್ತಾನೆ ಮತ್ತು ಯಾವ ಸಮಸ್ಯೆಗಳನ್ನು ಅದು ಪರಿಹರಿಸುತ್ತದೆ ಎಂದು 2-3 ವಾಕ್ಯಗಳಲ್ಲಿ ವಿವರಿಸಿ
|
||||
3. **ಅಧಿಕೃತ ದಾಖಲೆ ಲಿಂಕ್** - ಸಾಧನದ ಅಧಿಕೃತ ದಸ್ತಾವೇಜು ಅಥವಾ ವೆಬ್ಸೈಟ್ (ಕೆವಲ ಟ್ಯುಟೋರಿಯಲ್ ಸೈಟ್ಗಳು ಅಲ್ಲ)
|
||||
4. **ವಾಸ್ತವಿಕ ಸಂತ್ರಸ್ತ ಪರಿಸರ** - ಈ ಸಾಧನವು ವೃತ್ತಿಪರ ಅಭಿವೃದ್ಧಿ ಕಾರ್ಯಪ್ರವಾಹದಲ್ಲಿ ಹೇಗೆ ಸೇರಿಕೊಳ್ಳುತ್ತದೆ ಎಂದು ಕೆಲವೊಂದು ವಿವರಿಸಿ
|
||||
|
||||
## ಶಿಫಾರಸು ಮಾಡಿದ ಸಾಧನ ವರ್ಗಗಳು
|
||||
|
||||
ಈ ವರ್ಗಗಳಿಂದ ಸಾಧನಗಳನ್ನು ಅನ್ವೇಷಿಸಲು ಪರಿಗಣಿಸಿ:
|
||||
|
||||
| ವರ್ಗ | ಉದಾಹರಣೆಗಳು | ಅವು ಏನು ಮಾಡುತ್ತವೆ |
|
||||
|----------|----------|--------------|
|
||||
| **ನಿರ್ಮಾಣ ಸಾಧನಗಳು** | Vite, Webpack, Parcel, esbuild | ವೇಗವಾಗಿ ಅಭಿವೃದ್ಧಿ ಸರ್ವರ್ಗಳೊಂದಿಗೆ ಉತ್ಪಾದನೆಗೆ ಕೋಡ್ ಪ್ಯಾಕೇಜ್ ಮತ್ತು ಗಾತ್ರ ಕುಗ್ಗಿಸುವುದು |
|
||||
| **ಪರೀಕ್ಷಾ ಫ್ರೇಮ್ವರ್ಕ್ಗಳು** | Vitest, Jest, Cypress, Playwright | ಕೋಡ್ ಸರಿಯಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತಿದೆ ಎಂಬುದನ್ನು ಖಚಿತಪಡಿಸಿ, ದೋಷಗಳನ್ನು ಮುಂಗಡದಲ್ಲಿಯೇ ಹಿಡಿಯುವುದು |
|
||||
| **ಡಿಸೈನ್ ಸಾಧನಗಳು** | Figma, Adobe XD, Penpot | ಮಾಕ್ ಅಪ್ಗಳು, ಪ್ರೋಟೋಟೈಪ್ಗಳು, ಡಿಸೈನ್ ವ್ಯವಸ್ಥೆಗಳನ್ನು ಸಹಕರಿಸಿ ಸೃಷ್ಟಿಸುವುದು |
|
||||
| ** ವಿನ್ಯಾಸ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗಳು** | Netlify, Vercel, Cloudflare Pages | ವೆಬ್ಸೈಟ್ಗಳನ್ನು ಸ್ವಯಂಚಾಲಿತ CI/CD ಜೊತೆ ಹೋಸ್ಟ್ ಮತ್ತು ಹಂಚುವಿಕೆ |
|
||||
| **ಪರ್ಯವಕ್ಷಣೆ ವಿಭಾಗ** | GitHub, GitLab, Bitbucket | ಕೋಡ್ ಬದಲಾವಣೆ, ಸಹಕಾರ ಮತ್ತು ಯೋಜನಾ ಕಾರ್ಯಪ್ರವಾಹಗಳನ್ನು ನಿರ್ವಹಿಸುವುದು |
|
||||
| **CSS ಫ್ರೇಮ್ವರ್ಕ್ಗಳು** | Tailwind CSS, Bootstrap, Bulma | ಪೂರ್ವನಿರ್ಮಿತ ಘಟಕ ಗ್ರಂಥಾಲಯಗಳೊಂದಿಗೆ ಶೈಲಿಸರಣೆಯನ್ನು ವೇಗಗೊಳಿಸುವುದು |
|
||||
| **ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್ಗಳು** | npm, pnpm, Yarn | ಕೋಡ್ ಗ್ರಂಥಾಲಯಗಳು ಮತ್ತು ಅವಲಂಬನೆಗಳನ್ನು ಸ್ಥಾಪಿಸಿ ನಿರ್ವಹಿಸುವುದು |
|
||||
| **ಪ್ರವೇಶಾಧಿಕಾರ ಸಾಧನಗಳು** | axe-core, Lighthouse, Pa11y | ಅಂತರಾಷ್ಟ್ರೀಯ ವಿನ್ಯಾಸ ಮತ್ತು WCAG ಅನುಕೂಲತೆಗಾಗಿ ಪರೀಕ್ಷಿಸುವುದು |
|
||||
| **API ಅಭಿವೃದ್ಧಿ** | Postman, Insomnia, Thunder Client | ಅಭಿವೃದ್ಧಿ ಸಮಯದಲ್ಲಿ APIಗಳನ್ನು ಪರೀಕ್ಷಿಸಿ ಡಾಕ್ಯುಮೆಂಟ್ ಮಾಡುವುದು |
|
||||
|
||||
## ಸ್ವರೂಪವಿಧಾನ ಅವಶ್ಯಕತೆಗಳು
|
||||
|
||||
**ಪ್ರತೀಸ್ ಸಾಧನಕ್ಕೆ:**
|
||||
```
|
||||
### [Tool Name] - [Category]
|
||||
|
||||
**Purpose:** [2-3 sentences explaining why developers use this tool]
|
||||
|
||||
**Documentation:** [Official website/documentation link]
|
||||
|
||||
**Workflow Integration:** [1 sentence about how it fits into development process]
|
||||
```
|
||||
|
||||
## ಗುಣಮಟ್ಟ ಮಾರ್ಗಸೂಚಿಗಳು
|
||||
|
||||
- **ಆಧುನಿಕ ಸಾಧನಗಳನ್ನು ಆರಿಸಬಹುದು**: 2025 ರಲ್ಲಿ ಸಕ್ರೀಯವಾಗಿ ನಿರ್ವಹಿಸಲ್ಪಡುವ ಮತ್ತು ವ್ಯಾಪಕವಾಗಿ ಬಳಸುವ ಸಾಧನಗಳನ್ನು ಆಯ್ಕೆಮಾಡಿ
|
||||
- **ಮೌಲ್ಯಕ್ಕೆ ಕೇಂದ್ರೀಕರಿಸಿ**: ಸಾಧನವೇನು ಮಾಡುವುದನ್ನು ಮಾತ್ರವಲ್ಲದೆ, ಅದರ ವಿಶೇಷ ಲಾಭಗಳನ್ನು ವಿವರಿಸಿ
|
||||
- **ವೃತ್ತಿಪರ ಸಂತ್ರಸ್ತತೆ**: ವೈಯಕ್ತಿಕ ಹವ್ಯಾಸಿಗಳಿಗೆ ಅಲ್ಲ, ಅಭಿವೃದ್ಧಿ ತಂಡಗಳು ಬಳಸುವ ಸಾಧನಗಳನ್ನು ಪರಿಗಣಿಸಿ
|
||||
- **ಬೇರೆಬೇರೆ ಆಯ್ಕೆ**: ಪರಿಸರ ವ್ಯಾಪ್ತಿಯನ್ನು ತೋರಿಸಲು ವಿಭಿನ್ನ ವರ್ಗಗಳಿಂದ ಸಾಧನಗಳನ್ನು ಆರಿಸಿ
|
||||
- **ಸಮಕಾಲೀನ ಪ್ರಾಮುಖ್ಯತೆ**: ಇತ್ತೀಚಿನ ವೆಬ್ ಅಭಿವೃದ್ಧಿ ಪ್ರವರ್ತನೆಗಳು ಮತ್ತು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳಿಗೆ ಹೊಂದಾಣಿಕೆಯಾಗುವ ಸಾಧನಗಳಿಗೆ ಪ್ರಾಥಮ್ಯ ನೀಡಿ
|
||||
|
||||
## ಮಾನದಂಡ
|
||||
|
||||
| ಅತ್ಯುತ್ತಮ | ಉತ್ತಮ | ಸುಧಾರಣೆಯ ಅಗತ್ಯವಿದೆ |
|
||||
|-----------|------|-------------------|
|
||||
| **ಪ್ರತೀಸ್ ಸಾಧನವನ್ನು ವೆಬ್ ಡೆವಲಪರ್ ಏಕೆ ಬಳಸುತ್ತಾರೆ ಮತ್ತು ಯಾವ ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಹರಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ವಿವರಿಸಲಾಗಿದೆ** | **ಸಾಧನ ಏನು ಮಾಡುತ್ತದೆ ಎಂದೂ ತಿಳಿಸಿದ್ದು ವ್ಯಾಲ್ಯೂ ಬಗ್ಗೆ ಕೆಲವೊಂದು ವಿವರ ತಪ್ಪಿದ್ದಾರೆ** | **ಸಾಧನಗಳ ಪಟ್ಟಿ ನೀಡಲಾಗಿದೆ ಆದರೆ ಅವರ ಉದ್ದೇಶ ಅಥವಾ ಲಾಭಗಳು ವಿವರಿಸಲಿಲ್ಲ** |
|
||||
| **ಎಲ್ಲಾ ಸಾಧನಗಳಿಗೆ ಅಧಿಕೃತ ದಾಖಲೆ ಲಿಂಕ್ ನೀಡಲಾಗಿದೆ** | **ಬಹುಮಾರಿಗೆ ಅಧಿಕೃತ ಲಿಂಕ್ ಒದಗಿಸಲಾಗಿದೆ ಆದರೆ 1-2 ಟ್ಯುಟೋರಿಯಲ್ ಸೈಟ್ಗಳಿವೆ** | **ಮುಖ್ಯವಾಗಿ ಟ್ಯುಟೋರಿಯಲ್ ಸೈಟ್ಗಳನ್ನು ಅಧೀನ ಮಾಡಿದರೆ ಅಧಿಕೃತ ದಸ್ತಾವೇಜುಗಳ ಬದಲು** |
|
||||
| **ಸಕ್ರೀಯ, ವೃತ್ತಿಪರವಾಗಿ ಬಳಸುವುದಾದಭ್ಯ ಸಾಧನವನ್ನು ವಿಭಿನ್ನ ವರ್ಗಗಳಿಂದ ಆಯ್ಕೆ ಮಾಡಲಾಗಿದೆ** | **ರೂಚಿಕರ ಸಾಧನಗಳು ಆಯ್ಕೆಮಾಡಲಾಗಿದೆ ಆದರೆ ವರ್ಗಗಳ ವೈವಿಧ್ಯ ಕಡಿಮೆ** | **ಹಳೆ ಪದ್ಧತಿನ ಸಾಧನಗಳು ಅಥವಾ ಒಂದೇ ವರ್ಗದಿಂದ ಮಾತ್ರ ಆಯ್ಕೆ** |
|
||||
| **ಅಭಿವೃದ್ಧಿ ಕಾರ್ಯಪ್ರವಾಹಗಳಲ್ಲಿ ಸಾಧನಗಳ ಜಾಗದ ಬಗ್ಗೆ ಅರ್ಥಮಾಡಿಕೊಂಡಿದೆ** | **ವೃತ್ತಿಪರ ಸಂತ್ರಸ್ತತಾ ಬಗ್ಗೆ ಕೆಲವೊಂದು ಅರಿವು ತೋರಿಸಲಾಗಿದೆ** | **ಕೆವಲ ಸಾಧನ ವೈಶಿಷ್ಟ್ಯಗಳ ಮೇಲೆ ಮಾತ್ರ ಗಮನ ಕೇಂದ್ರೀಕರಿಸಿದ್ದು ಕಾರ್ಯಪ್ರವಾಹದ ಭಾಗವಿಲ್ಲ** |
|
||||
|
||||
> 💡 **ಸಂಬಂಧಿತ ಸಂಶೋಧನೆ ಸಲಹೆ:** ವೆಬ್ ಡೆವಲಪರ್ಗಾಗಿ ಉದ್ಯೋಗ ಪ್ರಕಟಣೆಗಳಲ್ಲಿ ಉಲ್ಲೇಖಿಸಿದ ಸಾಧನಗಳನ್ನು ಹುಡುಕಿ, ಜನಪ್ರಿಯ ಡೆವಲಪರ್ ಸಮೀಕ್ಷೆಗಳನ್ನು ಪರಿಶೀಲಿಸಿ, ಅಥವಾ GitHub上的 ಯಶಸ್ವೀ ಮುಕ್ತಸ್ರೋತ ಯೋಜನೆಗಳ ಅವಲಂಬನೆಗಳನ್ನು ಪರಿಶೀಲಿಸಿ!
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತ್ಯಾಗಪತ್ರಿಕೆ**:
|
||||
ಈ ದಾಖಲೆ ಅನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಯನ್ನು ಸಾಧಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದೆಂದನ್ನು ಗಮನದಲ್ಲಿರಿಸಿಕೊಳ್ಳಿ. ಮೂಲ ದಾಖಲೆ ಅದರ ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಅಧಿಕೃತ ಮೂಲವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವದ ಮಾಹಿತಿಗಳಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವನ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಸಂಭವಿಸುವ ಯಾವುದೇ ಅರ್ಥಮಾಡಿಕೊಳ್ಪು ಅಥವಾ ತಪ್ಪು ಅರ್ಥಗಹಣೆಗೆ ನಾವು ಹೊಣೆಗಾರರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,262 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "e6d0f456dfc22afb41bbdefeb5ec179d",
|
||||
"translation_date": "2026-01-08T19:59:54+00:00",
|
||||
"source_file": "1-getting-started-lessons/3-accessibility/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಸಂಪೂರ್ಣ ವೆಬ್ಸೈಟ್ ಪ್ರವೇಶ ವ್ಯವಸ್ಥೆ ಪರೀಕ್ಷೆ
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ಈ ಹುದ್ದೆಯಲ್ಲಿ, ನೀವು ವಾಸ್ತವಿಕ ವೆಬ್ಸೈಟ್ನ ವೃತ್ತಿಪರ ಮಟ್ಟದ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಚೆಕ್ ನಡೆಸುತ್ತೀರಿ, ನಿಮ್ಮ ತಿಳಿದುಕೊಂಡ ನಂತರದ ಸಿದ್ಧಾಂತಗಳು ಮತ್ತು ತಂತ್ರಗಳನ್ನು ಅನ್ವಯಿಸಿ. ಈ ಪ್ರಾಯೋಗಿಕ ಅನುಭವವು ಪ್ರವೇಶಾತಿ ಅಡೆತಡೆಗಳು ಮತ್ತು ಪರಿಹಾರಗಳ ಆಳವಾದ ಅರಿವನ್ನು ನೀಡುತ್ತದೆ.
|
||||
|
||||
ಪ್ರವೇಶ ಅಡಚಣೆಗಳಿರುವಂತೆಯೇ ತೋರುತ್ತಿರುವ ವೆಬ್ಸೈಟ್ ಆಯ್ಕೆಮಾಡಿ—ಇದು ಈಗಾಗಲೇ ಪರಿಪೂರ್ಣ ವೆಬ್ಸೈಟ್ ವಿಶ್ಲೇಷಿಸುವ ತೋರ್ಪಡಿಸಲಾಗದ ಕಲಿಕೆಯ ಅವಕಾಶಗಳನ್ನು ನೀಡುತ್ತದೆ. ಉತ್ತಮ ಅಭ್ಯರ್ಥಿಗಳಲ್ಲಿ ಹಳೆಯ ವೆಬ್ಸೈಟ್ಗಳು, ಜಟಿಲ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು, ಅಥವಾ ಶ್ರೀಮಂತ ಮಲ್ಟಿಮಿಡಿಯಾ ವಿಷಯಗಳಿರುವ ಸೈಟ್ಗಳು ಸೇರಿವೆ.
|
||||
|
||||
### ಹಂತ 1: ತಂತ್ರಜ್ಞಾನದ ಕೈಯಿಂದ ಮೌಲ್ಯಮಾಪನ
|
||||
|
||||
ಸ್ವಯಂಚಾಲಿತ ಸಾಧನಗಳ ಕಡೆಗೆ ಹೋಗುವುದಕ್ಕೆ ಮುನ್ನ, ಸಂಪೂರ್ಣವಾದ ಕೈಯಿಂದ ಮೌಲ್ಯಮಾಪನವನ್ನು ನಡೆಸಿ. ಈ ಮಾನವನಿರ್ಮಿತ ವಿಧಾನವು ಸಾಧನಗಳು ತಪ್ಪಿಸಿಹೋಗುವ ಸಮಸ್ಯೆಗಳನ್ನು ಬಹುಮಾನಿಸುತ್ತದೆ ಮತ್ತು ನಿಜವಾದ ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ನಿಮಗೆ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
|
||||
|
||||
**🔍 ಅವಶ್ಯಕ ಮೌಲ್ಯಮಾಪನಾ ಮಾನದಂಡಗಳು:**
|
||||
|
||||
**ನಾವಿಗೇಶನ್ ಮತ್ತು ರಚನೆ:**
|
||||
- ನೀವು ಪೂರ್ಣ ತಾಣವನ್ನು ಕೀಬೋರ್ಡ್ ಮಾತ್ರ ಬಳಸಿ (Tab, Shift+Tab, Enter, Space, Arrow ಕೀಗಳು) ನಾವಿಗೇಟ್ ಮಾಡಬಹುದೇ?
|
||||
- ಎಲ್ಲಾ ಸಂವಹನಾತ್ಮಕ ಅಂಶಗಳ ಮೇಲೆ ಫೋಕಸ್ ಸೂಚಕಗಳು ಸ್ಪಷ್ಟವಾಗಿದೆಯೇ?
|
||||
- ಶೀರ್ಷಿಕೆಗಳ ರಚನೆ (H1-H6) ಒಂದು ತಾರ್ಕಿಕ ವಿಷಯ ರೂಪರೇಖೆಯನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆಯೇ?
|
||||
- ಮುಖ್ಯ ವಿಷಯಕ್ಕೆ ಬಾರಲು ಸ್ಕಿಪ್ ಲಿಂಕ್ಸ್ ಇದಿವೇ?
|
||||
|
||||
**ದೃಶ್ಯ ಪ್ರವೇಶಾತಿ:**
|
||||
- ತಾಣದಲ್ಲಿ ಯೋಗ್ಯ ಬಣ್ಣ ಭಿನ್ನತೆ ಇದ್ದಿದೆಯೇ (ಸಾಮಾನ್ಯ ಪಠ್ಯದಿಗಾಗಿ ಕನಿಷ್ಠ 4.5:1)?
|
||||
- ತಾಣವು ಮುಖ್ಯ ಮಾಹಿತಿಯನ್ನು ಕೇವಲ ಬಣ್ಣದಿಂದ ಮಾತ್ರ ಸಂದೇಶಿಸುವುದೇ?
|
||||
- ಎಲ್ಲಾ ಚಿತ್ರಗಳಿಗೂ ಸೂಕ್ತ ಪರ್ಯಾಯ ಪಠ್ಯವನ್ನು ಹೊಂದಿದೆಯೇ?
|
||||
- 200% ಜೂಮ್ ಮಾಡಿದಾಗ ವಿನ್ಯಾಸ ಕಾರ್ಯನಿರ್ವಹಣೆಯಲ್ಲದೇ ಇದೆಯೇ?
|
||||
|
||||
**ವಿಷಯ ಮತ್ತು ಸಂಪರ್ಕ:**
|
||||
- "ಇಲ್ಲಿ ಕ್ಲಿಕ್ ಮಾಡಿ" ಅಥವಾ ಸಂಶಯಾಸ್ಪದ ಲಿಂಕ್ ಪಠ್ಯಗಳಿವೆಯೇ?
|
||||
- ದೃಶ್ಯ ಸೂಚನೆಗಳಿಲ್ಲದೆ ವಿಷಯ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ನೀವು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಬಹುದೇ?
|
||||
- ಫಾರ್ಮ್ ಕ್ಷೇತ್ರಗಳನ್ನು ಸರಿಯಾಗಿ ಲೇಬಲ್ ಮಾಡಿ ಗುಂಪು ಮಾಡಲಾಗಿದೆಯೇ?
|
||||
- ದೋಷ್ಟ ಸಂದೇಶಗಳು ಸ್ಪಷ್ಟವಾಗಿದ್ದು ಸಹಾಯಕವಾಗಿದೆಯೇ?
|
||||
|
||||
**ಸಂವಹನಾತ್ಮಕ ಅಂಶಗಳು:**
|
||||
- ಎಲ್ಲಾ ಬಟನ್ಗಳು ಮತ್ತು ಫಾರ್ಮ್ ನಿಯಂತ್ರಣಗಳು ಕೀಬೋರ್ಡ್ ಮಾತ್ರ ಬಳಸಿ ಕೆಲಸ ಮಾಡುತ್ತವೆಯೇ?
|
||||
- ಡೈನಾಮಿಕ್ ವಿಷಯ ಬದಲಾವಣೆಗಳನ್ನು ಸ್ಕ್ರೀನ್ ರೀಡರ್ಗಳಿಗೆ ಪ್ರಕಟಿಸಲಾಗುತ್ತದೆಯೇ?
|
||||
- ಮೋಡಲ್ ಡೈಲಾಗ್ಗಳು ಮತ್ತು ಜಟಿಲ ವიჯೆಟ್ಗಳು ಸರಿಯಾದ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಮಾದರಿಗಳನ್ನು ಅನುಸರಿಸುತ್ತವೆಯೇ?
|
||||
|
||||
📝 ನಿಮ್ಮ ಕಂಡುಹಿಡಿದುಗಳನ್ನ ವಿವರಣೆಗಳು, ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳು ಮತ್ತು ಪುಟ URL ಗಳು ಜೊತೆಗೆ ದಾಖಲೆಮಾಡಿ. ಸಮಸ್ಯೆಗಳು ಮತ್ತು ಉತ್ತಮವಾಗಿ ಮಾಡಲ್ಪಟ್ಟವುಗಳನ್ನೂ ಗುರುತಿಸಿ.
|
||||
|
||||
### ಹಂತ 2: ಸಂಪೂರ್ಣ ಸ್ವಯಂ-ಪರೀಕ್ಷೆ
|
||||
|
||||
ಈಗ ನಿಮ್ಮ ಕೈಯಿಂದ ಕಂಡುಹಿಡಿದ ಸಂಗತಿಗಳನ್ನು ಕೈಕೊಟ್ಟು ಕೈಗೊಳ್ಳುವ ತಂತ್ರಜ್ಞಾನದ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಪರೀಕ್ಷಾ ಸಾಧನಗಳನ್ನು ಬಳಸಿ ಪರಿಶೀಲಿಸಿ ಮತ್ತು ವಿಸ್ತರಿಸಿ. ಪ್ರತಿ ಸಾಧನವು ವಿಭಿನ್ನ ಶಕ್ತಿ ಹೊಂದಿದೆ, ಆದ್ದರಿಂದ ಅನೇಕ ಸಾಧನಗಳನ್ನು ಬಳಸಿ ಪೂರ್ಣ ಕ್ರಿಯಾ ವ್ಯಾಪ್ತಿಯನ್ನು ಪಡೆಯಿರಿ.
|
||||
|
||||
**🛠️ ಅಗತ್ಯ ಟೆಸ್ಟಿಂಗ್ ಉಪಕರಣಗಳು:**
|
||||
|
||||
1. **ಲೈಟ್ಹೌಸ್ ಪ್ರವೇಶಾತಿ ಪರಿಶೀಲನೆ** (ಕ್ರೋಮ್/ಎಡ್ಜ್ ಡೆವ್ಟೂಲ್ಗಳಲ್ಲಿ ಸೇರಿದೆ)
|
||||
- ಬಹು ಪುಟಗಳಲ್ಲಿ ಪರಿಶೀಲನೆ ನಡೆಸಿ
|
||||
- ನಿರ್ದಿಷ್ಟ ಮೀಟ್ರಿಕ್ಗಳು ಮತ್ತು ಶಿಫಾರಸುಗಳ ಮೇಲೆ ಗಮನ ಕೊಡಿ
|
||||
- ನಿಮ್ಮ ಪ್ರವೇಶಾತಿ ಅಂಕೆಯನ್ನು ಮತ್ತು ಖಾತರಿಪಡಿಸಿದ ಉಲ್ಲಂಘನೆಗಳನ್ನು ದಾಖಲಿಸಿ
|
||||
|
||||
2. **axe ಡೆವ್ಟೂಲ್ಗಳು** (ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ - ಕೈಗಾರಿಕಾ ಮಾನದಂಡ)
|
||||
- ಲೈಟ್ಹೌಸ್ಗಿಂತ ಹೆಚ್ಚಿನ ವಿವರವಾದ ಸಮಸ್ಯೆ ಪತ್ತೆಮಾಡುವುದು
|
||||
- ಸರಿಪಡಣೆಗೆ ನಿರ್ದಿಷ್ಟ ಕೋಡ್ ಉದಾಹರಣೆಗಳನ್ನು ನೀಡುವುದು
|
||||
- WCAG 2.1 ಮಾನದಂಡಗಳ ವಿರುದ್ಧ ಪರೀಕ್ಷೆ
|
||||
|
||||
3. **WAVE ವೆಬ್ ಪ್ರವೇಶಾತಿ ಮೌಲ್ಯಮಾಪಕ** (ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ)
|
||||
- ಪ್ರವೇಶ ಯೋಗ್ಯತೆ அம்சಗಳ ದೃಶ್ಯ ಪ್ರದರ್ಶನ
|
||||
- ತಪ್ಪು ಮತ್ತು ಲಾಭಕರ ಲಕ್ಷಣಗಳನ್ನು ಹೈಲೈಟ್ ಮಾಡುತ್ತದೆ
|
||||
- ಪುಟದ ರಚನೆ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಉತ್ತಮ
|
||||
|
||||
4. **ಬಣ್ಣ ಭಿನ್ನತೆ ವಿಶ್ಲೇಷಕರು**
|
||||
- WebAIM ವಿಪರೀತ ಪರಿಶೀಲಕ ವಿಶೇಷ ಬಣ್ಣ ಜೋಡಿಗಳಿಗಾಗಿ
|
||||
- ಪುಟ ವ್ಯಾಪ್ತಿಯ ವಿಶ್ಲೇಷಣೆಗೆ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಗಳು
|
||||
- WCAG AA ಮತ್ತು AAA ಮಾನದಂಡಗಳ ವಿರುದ್ಧ ಪರೀಕ್ಷೆ
|
||||
|
||||
**🎧 ನಿಜವಾದ ಸಹಾಯಕ ತಂತ್ರಜ್ಞಾನ ಪರೀಕ್ಷೆ:**
|
||||
- **ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಪರೀಕ್ಷೆ**: NVDA (ವಿಂಡೋಸ್), VoiceOver (ಮ್ಯಾಕ್ನಂಚಿ), ಅಥವಾ TalkBack (ಆಂಡ್ರಾಯ್ಡ್) ಬಳಸಿ
|
||||
- **ಕೀಬೋರ್ಡ್-ಮಾತ್ರ ನಾವಿಗೇಶನ್**: ನಿಮ್ಮ ಮೌಸ್ ಅನ್ಪ್ಲಗ್ ಮಾಡಿ ಮತ್ತು ತಾಣ ಸಂಪೂರ್ಣವಾಗಿ ನಾವಿಗೇಟ್ ಮಾಡಿ
|
||||
- **ಜೂಮ್ ಪರೀಕ್ಷೆ**: 200% ಮತ್ತು 400% ಜೂಮ್ ಮಟ್ಟಗಳಲ್ಲಿ ಕಾರ್ಯನೀರವಾಯಿಸಿ
|
||||
- **ವಾಯ್ಸ್ ನಿಯಂತ್ರಣ ಪರೀಕ್ಷೆ**: ಲಭ್ಯವಿದ್ದರೆ, ವಾಯ್ಸ್ ನಾವಿಗೇಶನ್ ಸಾಧನಗಳನ್ನು ಪ್ರಯತ್ನಿಸಿ
|
||||
|
||||
**📊 ನಿಮ್ಮ ಫಲಿತಾಂಶಗಳನ್ನು ವ್ಯವಸ್ಥಿತ ಪಟ್ಟಿ ಮಾಡಿ:**
|
||||
- ಸಮಸ್ಯೆಯ ವಿವರಣೆ ಮತ್ತು ಸ್ಥಳ
|
||||
- ತೀವ್ರ ಮಟ್ಟ (ಗಂಭೀರ/ಎತ್ತರ/ಮಧ್ಯಮ/ಕಡಿಮೆ)
|
||||
- WCAG ಯಶಸ್ಸು ನಿಯಮ ಉಲ್ಲಂಘನೆ
|
||||
- ಸಮಸ್ಯೆ ಪತ್ತೆಮಾಡಿದ ಸಾಧನ
|
||||
- ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳು ಮತ್ತು ಸಾಕ್ಷಿಗಳು
|
||||
|
||||
### ಹಂತ 3: ಸಂಪೂರ್ಣ ಕಂಡುಹಿಡಿದ ಸಂಗತಿಗಳ ದಾಖಲೆ
|
||||
|
||||
ತಾಂತ್ರಿಕ ಸಮಸ್ಯೆಗಳು ಮತ್ತು ಅವುಗಳ ಮಾನವ ಪರಿಣಾಮಗಳ ಅರಿವು ಪ್ರದರ್ಶಿಸುವ ವೃತ್ತಿಪರ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಪರಿಶೀಲನೆಯ ವರದಿಯನ್ನು ರಚಿಸಿ.
|
||||
|
||||
**📋 ಅಗತ್ಯ ವರದಿ ವಿಭಾಗಗಳು:**
|
||||
|
||||
1. **ಕಾರ್ಯನಿರ್ವಹಣಾ ಸಾರಾಂಶ** (1 ಪುಟ)
|
||||
- ವೆಬ್ಸೈಟ್ URL ಮತ್ತು ಸಂಕ್ಷಿಪ್ತ ವಿವರಣೆ
|
||||
- ಒಟ್ಟು ಪ್ರವೇಶಾತಿ ಸ್ಥಿತಿಮಾಪನ ಮಟ್ಟ
|
||||
- ಶ್ರೇಷ್ಠ 3 ಗಂಭೀರ ಸಮಸ್ಯೆಗಳು
|
||||
- ದಿವಂಗತ ಬಳಕೆದಾರರ ಮೇಲೆ ಅಂದಾಜು ಮಾಡಲಾದ ಪರಿಣಾಮ
|
||||
|
||||
2. **ವಿಧಾನಶಾಸ್ತ್ರ** (ಅರ್ಧ ಪುಟ)
|
||||
- ಪರೀಕ್ಷೆ ವಿಧಾನ ಮತ್ತು ಉಪಕರಣಗಳು
|
||||
- ಮೌಲ್ಯಮಾಪನ ಮಾಡಲಾದ ಪುಟಗಳು ಮತ್ತು ಸಾಧನ/ಬ್ರೌಸರ್ ಸಂಯೋಜನೆಗಳು
|
||||
- ಮಾನದಂಡಗಳು (WCAG 2.1 AA)
|
||||
|
||||
3. **ವಿಸ್ತೃತ ಕಂಡುಹಿಡಿದ ಸಂಗತಿಗಳು** (2-3 ಪುಟಗಳು)
|
||||
- WCAG ತತ್ತ್ವಗಳ ಪ್ರಕಾರ ಸಮಸ್ಯೆಗಳು (ನಿರೀಕ್ಷಣೀಯ, ಕಾರ್ಯನಿರ್ವಹಣೀಯ, ಅರ್ಥಮಾಡಬಹುದಾದ, ಬಲಿಷ್ಠ)
|
||||
- ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳು ಮತ್ತು ನಿರ್ದಿಷ್ಟ ಉದಾಹರಣೆಗಳು
|
||||
- ನೀವು ಕಂಡುಹಿಡಿದ ಸಕಾರಾತ್ಮಕ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಲಕ್ಷಣಗಳು
|
||||
- ಸ್ವಯಂಚಾಲಿತ ಸಾಧನ ಫಲಿತಾಂಶಗಳ ಜೊತೆ ಕ್ರಾಸ್ ರೆಫರೆನ್ಸ್
|
||||
|
||||
4. **ಬಳಕೆದಾರರ ಪರಿಣಾಮ ಮೌಲ್ಯಮಾಪನ** (1 ಪುಟ)
|
||||
- ಗುರುತಿಸಲಾದ ಸಮಸ್ಯೆಗಳು ವಿಭಿನ್ನ ದಿವಂಗತ ಬಳಕೆದಾರರನ್ನು ಹೇಗೆ ಪ್ರಭಾವಿಸುತ್ತವೆ
|
||||
- ನಿಜವಾದ ಬಳಕೆದಾರ ಅನುಭವಗಳನ್ನು ವಿವರಣೆಗೊಳಿಸುವ ದೃಶ್ಯಾವಳಿ
|
||||
- ವ್ಯವಹಾರ ಪರಿಣಾಮ (ಕಾನೂನು ಅಪಾಯ, SEO, ಬಳಕೆದಾರ ಆಧಾರ ವಿಸ್ತರಣೆ)
|
||||
|
||||
**📸 ಸಾಕ್ಷಿ ಸಂಗ್ರಹಣೆ:**
|
||||
- ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಉಲ್ಲಂಘನೆಯ ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳು
|
||||
- ಸಮಸ್ಯಾತ್ಮಕ ಬಳಕೆದಾರ ಪ್ರವಾಹಗಳ ಸ್ಕ್ರೀನ್ ರೆಕಾರ್ಡಿಂಗ್ಗಳು
|
||||
- ಸಾಧನ ವರದಿ (PDF ಆಗಿ ಸಂರಕ್ಷಿಸಿ)
|
||||
- ಸಮಸ್ಯೆಗಳು ತೋರಿಸುವ ಕೋಡ್ ಉದಾಹರಣೆಗಳು
|
||||
|
||||
### ಹಂತ 4: ವೃತ್ತಿಪರ ಪರಿಹಾರ ಯೋಜನೆ
|
||||
|
||||
ಪ್ರವೇಶ ಯೋಗ್ಯ ಸಮಸ್ಯೆಗಳನ್ನು ಸರಿಪಡಿಸಲು ತಂತ್ರಜ್ಞಾನದ ಪ್ರಾಥಮಿಕತೆ ಹೊಂದಿದ ಯೋಜನೆಯನ್ನು ರೂಪಿಸಿ. ಇದು ನಿಜವಾದ ವ್ಯವಹಾರ ಸಂಬಂಧಿತ ಮಿತಿಗಳನ್ನು ಎದುರಿಸುವ ವೃತ್ತಿಪರ ವೆಬ್ ಡೆವಲಪರ್ ಆಗಿ ನಿಮ್ಮ ಯೋಗ್ಯತೆಯನ್ನು ತೋರಿಸುತ್ತದೆ.
|
||||
|
||||
**🎯 ವಿವರವಾದ ಸುಧಾರಣಾ ಶಿಫಾರಸುಗಳನ್ನು ರಚಿಸಿ (ಕನಿಷ್ಠ 10 ಸಮಸ್ಯೆಗಳು):**
|
||||
|
||||
**ಪ್ರತಿ ಗುರುತಿಸಲಾದ ಸಮಸ್ಯೆಗೆ ನೀಡಬೇಕಾದವು:**
|
||||
|
||||
- **ಸಮಸ್ಯೆಯ ವಿವರ**: ತಪ್ಪಿದೆ ಏನು ಮತ್ತು ಏಕೆ ಅದು ಸಮಸ್ಯೆಯಾಗಿದೆ ಎಂಬ ಸ್ಪಷ್ಟ ವಿವರಣೆ
|
||||
- **WCAG ಉಲ್ಲೇಖ**: ಉಲ್ಲಂಘಿತ ಯಶಸ್ಸು ಮಾನದಂಡಗಳು (ಉದಾ: "2.4.4 ಲಿಂಕ್ ಉದ್ದೇಶ (ಸಂದರ್ಭದಲ್ಲಿ) - ಮಟ್ಟ A")
|
||||
- **ಬಳಕೆದಾರ ಪರಿಣಾಮ**: ವಿಭಿನ್ನ ದಿವಂಗತ ಬಳಕೆದಾರರ ಮೇಲೆ ಇದರ ಪರಿಣಾಮ
|
||||
- **ಪರಿಹಾರ**: ನಿರ್ದಿಷ್ಟ ಕೋಡ್ ಬದಲಾವಣೆಗಳು, ವಿನ್ಯಾಸ ಸುಧಾರಣೆಗಳು ಅಥವಾ ಪ್ರಕ್ರಿಯಾ ಉತ್ತಮಗೊಳಿಕೆಗಳು
|
||||
- **ಪ್ರಾಥಮಿಕತೆ ಮಟ್ಟ**: ಗಂಭೀರ (ಮೂಲ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ತಡೆಯುತ್ತದೆ) / ಎತ್ತರ (ಗুরুತರುವ ಅಡೆತಡೆ) / ಮಧ್ಯಮ (ಬಳಕೆದಾರ ಅನುಕೂಲದಲ್ಲಿ ಸಮಸ್ಯೆ) / ಕಡಿಮೆ (ಸುಧಾರಣೆ)
|
||||
- **ಕಾರ್ಯಗತಗೊಳಿಸುವ ಪ್ರಯತ್ನ**: ಸಮಯ / ಜಟಿಲತೆ ಅಂದಾಜು (ತ್ವರಿತ ಗೆಲುವು / ಮಧ್ಯಮ ಪ್ರಯತ್ನ / ಪ್ರಮುಖ ಪುನರ್ ರಚನೆ)
|
||||
- **ಪರೀಕ್ಷೆ ಪರಿಶೀಲನೆ**: ಪರಿಹಾರ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದೆಯೇ ಎಂಬುದನ್ನು ತಿಳಿಯುವುದು ಹೇಗೆ
|
||||
|
||||
**ಉದಾಹರಣೆಯ ಸುಧಾರಣೆ ದಾಖಲೆ:**
|
||||
|
||||
```
|
||||
Issue: Generic "Read more" link text appears 8 times on homepage
|
||||
WCAG Reference: 2.4.4 Link Purpose (In Context) - Level A
|
||||
User Impact: Screen reader users cannot distinguish between links when viewed in link list
|
||||
Solution: Replace with descriptive text like "Read more about sustainability initiatives"
|
||||
Priority: High (major navigation barrier)
|
||||
Effort: Low (30 minutes to update content)
|
||||
Testing: Generate link list with screen reader - each link should be meaningful standalone
|
||||
```
|
||||
|
||||
|
||||
**📈 ತಂತ್ರಜ್ಞಾನ ಕಾರ್ಯಗತಗೊಳಿಸುವ ಹಂತಗಳು:**
|
||||
|
||||
- **ಹಂತ 1 (0-2 ವಾರಗಳು)**: ಮೂಲ ಕಾರ್ಯನಿರ್ವಹಣೆಯನ್ನು ತಡೆದ ಗಂಭೀರ ಸಮಸ್ಯೆಗಳು
|
||||
- **ಹಂತ 2 (1-2 ತಿಂಗಳು)**: ಉತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವಕ್ಕಾಗಿ ಹೆಚ್ಚಿನ ಪ್ರಾಥಮಿಕತೆ ಸುಧಾರಣೆಗಳು
|
||||
- **ಹಂತ 3 (3-6 ತಿಂಗಳು)**: ಮಧ್ಯಮ ಪ್ರಾಥಮಿಕತೆಯ ಸುಧಾರಣೆಗಳು ಮತ್ತು ಪ್ರಕ್ರಿಯಾ ಹೆಚ್ಚಳಗಳು
|
||||
- **ಹಂತ 4 (ತತ್ಕಾಲೀನ)**: ನಿರಂತರ ನಿಗಾ ಮತ್ತು ಸುಧಾರಣೆ
|
||||
|
||||
## ಮೌಲ್ಯಮಾಪನ ಮಾಪನಕೆಲಸ
|
||||
|
||||
ನಿಮ್ಮ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಪರೀಕ್ಷೆಯನ್ನು ತಾಂತ್ರಿಕ ಖಚಿತತೆ ಮತ್ತು ವೃತ್ತಿಪರ ಪ್ರಸ್ತುತಿಯಿಂದ ಎಲ್ಲ ವಿಷಯಗಳ ಮೇಲೆ ಮೌಲ್ಯಮಾಪನ ಮಾಡಲಾಗುತ್ತದೆ:
|
||||
|
||||
| ಮಾನದಂಡ | ಅತ್ಯುತ್ತಮ (90-100%) | ಚೆನ್ನಾಗಿದೆ (80-89%) | ತೃಪ್ತಿಕರ (70-79%) | ಸುಧಾರಣೆ ಅಗತ್ಯ (<70%) |
|
||||
|----------|-------------------|---------------|---------------------|------------------------|
|
||||
| **ಕೈಯಿಂದ ಪರೀಕ್ಷೆ ಆಳತೆ** | ಎಲ್ಲಾ POUR ತತ್ತ್ವಗಳನ್ನು ವಿವರವಾಗಿ ಮೌಲ್ಯಮಾಪನ ಮಾಡಿ, ವಿಶ್ಲೇಷಣೆ ಮತ್ತು ಬಳಕೆದಾರ ದೃಶ್ಯಗಳು | ಬಹುಮಟ್ಟಿನಲ್ಲಿ ಪ್ರವೇಶ ಪ್ರದೇಶಗಳಿಗೆ ಒಳ್ಳೆಯ ವ್ಯಾಪ್ತಿ ಮತ್ತು ಗುಣಮಟ್ಟದ ಕಂಡುಹಿಡಿತಗಳು | ಮುಖ್ಯ ಪ್ರದೇಶಗಳ ಮೂಲ ಮೌಲ್ಯಮಾಪನ ಮತ್ತು ಸಾಕಾದ ವೀಕ್ಷಣೆಗಳು | ಸೀಮಿತ ಪರೀಕ್ಷೆ, ಮೇಲ್ಮನಸ್ಸಿನ ವೀಕ್ಷಣೆ ಮತ್ತು ಕಡಿಮೆ ಬಳಕೆದಾರ ಪರಿಣಾಮ |
|
||||
| **ಉಪಕರಣ ಬಳಕೆ ಮತ್ತು ವಿಶ್ಲೇಷಣೆ** | ಎಲ್ಲಾ ಅಗತ್ಯ ಉಪಕರಣಗಳನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಬಳಸುವುದು, ಕಂಡುಹಿಡಿದ ಸಂಗತಿಗಳ ಹೋಲಿಕೆ, ಸ್ಪಷ್ಟ ಸಾಕ್ಷಿ, ಮತ್ತು ಉಪಕರಣ ಸೀಮಿತತೆ ವಿವರಣೆ | ಬಹುತೇಕ ಉಪಕರಣಗಳನ್ನು ಬಳಸಿ, ಕೆಲವು ಹೋಲಿಕೆ ಮತ್ತು ಸಾಕಷ್ಟು ಸಾಕ್ಷಿ | ಅಗತ್ಯ ಉಪಕರಣಗಳನ್ನು ಬಳಸಿ ಮೂಲ ದಾಖಲಾತಿ ಮತ್ತು ಕೆಲವು ಸಾಕ್ಷಿ | ಕಡಿಮೆ ಉಪಕರಣ ಬಳಕೆ, ಅಪೂರ್ಣ ದಾಖಲೆ ಅಥವಾ ಸಾಕ್ಷಿ ಇಲ್ಲ |
|
||||
| **ಸಮಸ್ಯೆಗಳ ಪತ್ತೆ ಮತ್ತು ವರ್ಗೀಕರಣ** | WCAG ತತ್ತ್ವಗಳಾದ್ಯಂತ 15+ ಸ್ನಿಗ್ಧ ಸಮಸ್ಯೆಗಳ ಗುರುತು, ತೀವ್ರತೆ ಮೇರೆಗೆ ನಿಖರವಾಗಿ ವರ್ಗೀಕರಣೆ, ಆಳವಾದ ಅರಿವು | 10-14 ಸಮಸ್ಯೆಗಳು ಹೆಚ್ಚಿನ WCAG ತತ್ತ್ವಗಳ ವ್ಯಾಪ್ತಿ, ಉತ್ತಮ ವರ್ಗೀಕರಣ ಮತ್ತು ಗಟ್ಟಿಯಾದ ಅರ್ಥ | 7-9 ಸಮಸ್ಯೆಗಳು ಸಾಕಾದ WCAG ವ್ಯಾಪ್ತಿ ಮತ್ತು ಮೂಲ ವರ್ಗೀಕರಣ | 7 ತೆಳುವಾಗಿರದ ಅಥವಾ ಕಡಿಮೆ ವ್ಯಾಪ್ತಿಯ ಸಮಸ್ಯೆಗಳು |
|
||||
| **ಪರಿಹಾರ ಗುಣಮಟ್ಟ ಮತ್ತು ಸಾಧ್ಯತೆ** | 10+ ವಿವರವಾದ, ಕೈಗೊಂಡು ಪರಿಹಾರಗಳು ನಿಖರ WCAG ಉಲ್ಲೇಖಗಳು, ನೈತಿಕ ಕಾರ್ಯಗತಗೊಳಿಸುವ ಸಮಯ ಮತ್ತು ಪರಿಶೀಲನೆ ವಿಧಾನ | 8-9 ಉತ್ತಮ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ ಪರಿಹಾರಗಳು, ಹೆಚ್ಚಿನ ನಿಖರ ಉಲ್ಲೇಖ ಮತ್ತು ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆ ವಿವರಗಳು | 6-7 ಮೂಲ ಪರಿಹಾರಗಳು ಕೆಲವು ವಿವರ ಹಾಗೂ ಸಾಮಾನ್ಯ ಸಂಖ್ಯಾತ್ಮಕ ದೃಷ್ಟಿಕೋನಗಳು | 6 ಕ್ಕಿಂತ ಕಡಿಮೆ ಪರಿಹಾರಗಳು, ಅಪರ്യാപ್ತ ವಿವರಗಳು ಅಥವಾ ಅಸಾಧ್ಯವಾದ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆ |
|
||||
| **ವೃತ್ತಿಪರ ಸಂವಹನ** | ವರದಿ ಉತ್ತಮವಾಗಿ ಸಂಘಟಿತ ಮತ್ತು ಸ್ಪಷ್ಟ ಬರಹ, ಕಾರ್ಯನಿರ್ವಹಣಾ ಸಾರಾಂಶ, ಸೂಕ್ತ ತಾಂತ್ರಿಕ ಭಾಷೆ ಮತ್ತು ವ್ಯವಹಾರ ಡಾಕ್ಯುಮೆಂಟ್ ಮಾನದಂಡಗಳು | ಒಳ್ಳೆಯ ಸಂಘಟನೆ, ಉತ್ತಮ ಬರಹ ಗುಣಮಟ್ಟ, ಅತಿ ಅಗತ್ಯ ವಿಭಾಗಗಳು ಒಳಗೊಂಡಿವೆ, ಅನುಕೂಲಕರ ಶೈಲಿ | ಅತೃಪ್ತ ಸಂಘಟನೆ, ಸ್ವೀಕಾರ ಆಗಬಲ್ಲ ಬರಹ, ಮೂಲ ಅಗತ್ಯ ವಿಭಾಗಗಳು | ದುರಷ್ಟೂಪವಾದ ಸಂಘಟನೆ, ಅಸ್ಪಷ್ಟ ಬರಹ ಅಥವಾ ಮುಖ್ಯ ವಿಭಾಗಗಳ ಕೊರತೆ |
|
||||
| **ವಾಸ್ತವಿಕ ಅನ್ವಯದಲ್ಲಿ** | ವ್ಯವಹಾರ ಪರಿಣಾಮ, ಕಾನೂನು ಪರಿಗಣನೆಗಳು, ಬಳಕೆದಾರ ವೈವಿಧ್ಯತೆ ಮತ್ತು ನೈಜ ಜಾಗೃತಿಯ ಅರ್ಥವಂತಿಕೆ | ಪ್ರಾಯೋಗಿಕ ಅನ್ವಯಗಳ ಉತ್ತಮ ಅರಿವು ಮತ್ತು ಕೆಲವು ವ್ಯವಹಾರ ಸಂದರ್ಬ | ಮೂಲ ಅರ್ಥ ಮತ್ತು ಜಾಗೃತಿ | ಪ್ರಾಯೋಗಿಕ ಅನ್ವಯಗಳಿಗೆ ಕಡಿಮೆ ಸಂಪರ್ಕ |
|
||||
|
||||
## ಉನ್ನತ ಮಟ್ಟದ ಸವಾಲು ಆಯ್ಕೆಗಳು
|
||||
|
||||
**🚀 ಹೆಚ್ಚುವರಿ ಸವಾಲಿನ ಹೋರಾಟಗಾರರಿಗಾಗಿ:**
|
||||
|
||||
- **ಹೋಲಿಕೆ ವಿಶ್ಲೇಷಣೆ**: 2-3 ಸ್ಪರ್ಧಾತ್ಮಕ ವೆಬ್ಸೈಟ್ಗಳನ್ನು ಪರಿಶೀಲಿಸಿ ಮತ್ತು ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಮೂರ್ಚನೆಗಳನ್ನು ಹೋಲಿಸಿ
|
||||
- **ಮೊಬೈಲ್ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಫೋಕಸ್**: ಆಂಡ್ರಾಯ್ಡ್ TalkBack ಅಥವಾ iOS VoiceOver ಬಳಸಿ ಮೊಬೈಲ್-ಪರಿಶಿಷ್ಟ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಸಮಸ್ಯೆಗಳ ಆಳವಾದ ಅಧ್ಯಯನ
|
||||
- **ಅಂತರರಾಷ್ಟ್ರೀಯ ದೃಷ್ಟಿಕೋಣ**: ವಿವಿಧ ದೇಶಗಳ ಪ್ರವೇಶ ಮಾನದಂಡಗಳ ಅಧ್ಯಯನ ಮತ್ತು ಅನ್ವಯಣೆ (EN 301 549, ಸೆಕ್ಷನ್ 508, ADA)
|
||||
- **ಪ್ರವೇಶ ಯೋಗ್ಯತೆಯ ಘೋಷಣೆ ಅವಲೋಕನ**: ವೆಬ್ಸೈಟ್ನ ಪ್ರಸ್ತುತ ಪ್ರವೇಶ ಘೋಷಣೆಯನ್ನು ನಿಮ್ಮ ಕಂಡುಹಿಡಿತಗಳೊಡನೆ ಮೌಲ್ಯಮಾಪನ
|
||||
|
||||
## ಸಲ್ಲಿಸಲು ಬೇಕಾಗಿರುವವು
|
||||
|
||||
ವೃತ್ತಿಪರ-ಮಟ್ಟದ ವಿಶ್ಲೇಷಣೆ ಮತ್ತು ಪ್ರಾಯೋಗಿಕ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆ ಯೋಜನೆಯನ್ನು ತೋರಿಸುವ ಸಂಪೂರ್ಣ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಪರಿಶೀಲನಾ ವರದಿ ಸಲ್ಲಿಸಿ:
|
||||
|
||||
**📄 ಅಂತಿಮ ವರದಿ ಅಗತ್ಯಗಳು:**
|
||||
|
||||
1. **ಕಾರ್ಯನಿರ್ವಹಣಾ ಸಾರಾಂಶ** (1 ಪುಟ)
|
||||
- ವೆಬ್ಸೈಟ್ ವೀಕ್ಷಣೆ ಮತ್ತು ಪ್ರವೇಶ ಯೋಗ್ಯತೆಯ ಸ್ಥಿತಿಮಾಪನ
|
||||
- ಪ್ರಮುಖ ಕಂಡುಹಿಡಿತಗಳ ಸಾರಾಂಶ ಮತ್ತು ವ್ಯವಹಾರ ಪರಿಣಾಮ
|
||||
- ಶಿಫಾರಸು ಮಾಡಲಾದ ಪ್ರಾಥಮಿಕ ಕ್ರಮಗಳು
|
||||
|
||||
2. **ವಿಧಾನಶಾಸ್ತ್ರ ಮತ್ತು ವ್ಯಾಪ್ತಿ** (1 ಪುಟ)
|
||||
- ಪರೀಕ್ಷೆಯ ವಿಧಾನ, ಉಪಕರಣಗಳು ಬಳಕೆಮಾಡಿದ್ದು, ಮತ್ತು ಮೌಲ್ಯಮಾಪನಾ ಮಾನದಂಡಗಳು
|
||||
- ಪರಿಶೀಲಿಸಲಾದ ಪುಟಗಳು/ವಿಭಾಗಗಳು ಮತ್ತು ಯಾವುದೇ ಸೀಮಿತತೆಗಳು
|
||||
- ಮಾನದಂಡಗಳ ಅನುಕೂಲ (WCAG 2.1 AA)
|
||||
|
||||
3. **ವಿಸ್ತೃತ ಕಂಡುಹಿಡಿತಗಳ ವರದಿ** (3-4 ಪುಟಗಳು)
|
||||
- ಕೈಯಿಂದ ಪರೀಕ್ಷೆ ವೀಕ್ಷಣೆಗಳು ಬಳಕೆದಾರ ದೃಶ್ಯಗಳೊಡನೆ
|
||||
- ಸ್ವಯಂಚಾಲಿತ ಸಾಧನ ಫಲಿತಾಂಶಗಳು ಮತ್ತು ಹೋಲಿಕೆ
|
||||
- WCAG ತತ್ತ್ವಗಳ ಪ್ರಕಾರ ವ್ಯವಸ್ಥಿತ ಸಮಸ್ಯೆಗಳು ಸಾಕ್ಷಿ ಜೊತೆ
|
||||
- ಪಾಸಿಟಿವ್ ಪ್ರವೇಶ ಲಕ್ಷಣಗಳ ಗುರುತು
|
||||
|
||||
4. **ತಂತ್ರಜ್ಞಾನದ ಪರಿಹಾರ ಯೋಜನೆ** (3-4 ಪುಟಗಳು)
|
||||
- ಪ್ರಾಧಾನ್ಯಿತ ಸುಧಾರಣಾ ಶಿಫಾರಸುಗಳು (ಕನಿಷ್ಠ 10)
|
||||
- ಕಾರ್ಯಗತಗೊಳಿಸುವ ಸಮಯಾವಳಿ ಮತ್ತು ಪ್ರಯತ್ನ ಅಂದಾಜುಗಳು
|
||||
- ಯಶಸ್ಸಿನ ಅಂಕಿಗಳು ಮತ್ತು ಪರಿಶೀಲನೆ ವಿಧಾನಗಳು
|
||||
- ಉದ್ದಿರ್ನ性್ ಪ್ರವೇಶ ನಿರ್ವಹಣಾ ತಂತ್ರ
|
||||
|
||||
5. **ಬೆಂಬಲಿಸಿ ಸಾಕ್ಷಿಗಳು** (ಹೊರಗಾಗಿಗಳು)
|
||||
- ಪ್ರವೇಶ_ulಾṅgaತೆ ಉಲ್ಲಂಘನೆಯ ಸ್ಕ್ರಿನ್ಶಾಟ್ಗಳು ಮತ್ತು ಪರೀಕ್ಷಾ ಉಪಕರಣಗಳು
|
||||
- ಸಮಸ್ಯೆಗಳತ್ತ ಸೂಚಿಸುವ ಕೋಡ್ ಉದಾಹರಣೆಗಳು
|
||||
- ಉಪಕರಣ ವರದಿಗಳು ಮತ್ತು ಪರಿಶೀಲನಾ ಸಾರಾಂಶಗಳು
|
||||
- ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಪರೀಕ್ಷೆ ನೋಟ್ಗಳು ಅಥವಾ ರೆಕಾರ್ಡಿಂಗ್ಗಳು
|
||||
|
||||
**📊 ರೂಪರೇಖಾ ಅಗತ್ಯಗಳು:**
|
||||
- **ಡಾಕ್ಯುಮೆಂಟ್ ಫಾರ್ಮ್ಯಾಟ್**: PDF (ವೃತ್ತಿಪರ ಪ್ರದರ್ಶನ)
|
||||
- **ಪದಗಳ ಸಂಖ್ಯೆ**: 2,500-3,500 ಪದಗಳು (ಹೊರಗಾಗಿಗಳು ಮತ್ತು ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳನ್ನು ಹೊರತುಪಡಿಸಿ)
|
||||
- **ದೃಶ್ಯ ಅಂಶಗಳು**: ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳು, ಚಿತ್ರಗಳು ಮತ್ತು ಉದಾಹರಣೆಗಳನ್ನು ಒಳಗೊಂಡಿರಲಿ
|
||||
- **ಉಲ್ಲೇಖನೆಗಳು**: WCAG ಮಾರ್ಗಸೂಚಿಗಳು ಮತ್ತು ಪ್ರವೇಶ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಸರಿಯಾಗಿ ಉಲ್ಲೇಖಿಸಿ
|
||||
|
||||
**💡 ಅತ್ಯುತ್ತಮಕ್ಕಾಗಿ ಪ್ರೋ ಸಲಹೆಗಳು:**
|
||||
- ವೃತ್ತಿಪರ ವರದಿ ಸ್ವರೂಪಣೆಯನ್ನು ಸತತ ಶೀರ್ಷಿಕೆ ಮತ್ತು ಶೈಲಿಯೊಂದಿಗೆ ಬಳಸಿ
|
||||
- ಸುಲಭ ನಾವಿಗೇಶನಿಗೆ ವಿಷಯ ಪಟ್ಟಿಯನ್ನು ಸೇರಿಸಿ
|
||||
- ತಾಂತ್ರಿಕ ದಾಖಲಾತಿಗೆ ಸ್ಪಷ್ಟ, ವ್ಯವಹಾರಿಗೆ ಯೋಗ್ಯ ಭಾಷೆಯನ್ನು ಸಮತೋಲಗೊಳಿಸಿ
|
||||
- ತಾಂತ್ರಿಕ ಜಾರಿಗೆ ಮತ್ತು ಬಳಕೆದಾರ ಪರಿಣಾಮಕ್ಕೆ ಸಮಗ್ರ ಅರ್ಥ ಪ್ರದರ್ಶಿಸಿ
|
||||
|
||||
## ಕಲಿಕೆ ಫಲಿತಾಂಶಗಳು
|
||||
|
||||
ಈ ಸಂಪೂರ್ಣ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಪರಿಶೀಲನೆ ಪೂರ್ಣಗೊಳಿಸುವ ನಂತರ, ನೀವು ಅತೀ ಮುಖ್ಯ ವೃತ್ತಿಪರ ಕೌಶಲ್ಯಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಿಕೊಂಡಿರುತ್ತೀರಿ:
|
||||
|
||||
**🎯 ತಾಂತ್ರಿಕ ಸಾಮರ್ಥ್ಯಗಳು:**
|
||||
- **ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಪರೀಕ್ಷೆಯಲ್ಲಿ ಪರಿಣತಿ**: ಕೈಗಾರಿಕಾ ಪ್ರಮಾಣದ ಕೈಯಿಂದ ಹಾಗೂ ಸ್ವಯಂ-ಪರೀಕ್ಷಣಾ ವಿಧಾನಗಳಲ್ಲಿ ಪ್ರಾವೀಣ್ಯತೆ
|
||||
- **WCAG ಅನ್ವಯಣೆ**: ವೆಬ್ ವಿಷಯ ಪ್ರವೇಶ ಮಾರ್ಗಸೂಚಿಗಳನ್ನು ನಿಜವಾದ ಪರಿಸ್ಥಿತಿಗಳಲ್ಲಿ ಅನುಷ್ಠಾನಮಾಡಿದ ಅನುಭವ
|
||||
- **ಸಹಾಯಕ ತಂತ್ರಜ್ಞಾನ ಅರಿವು**: ಸ್ಕ್ರೀನ್ ರೀಡರ್ಗಳು ಮತ್ತು ಕೀಬೋರ್ಡ್ ನವಿಗೇಶನ್ ಪರಿಣಾಮಕಾರಿತ್ವವನ್ನು ಕೈಗೆತ್ತಿಕೊಂಡ ಅನುಭವ
|
||||
- **ಸಮಸ್ಯೆ-ಪರಿಹಾರ ನಕ್ಷೆ**: ಪ್ರವೇಶ ಅಡೆತಡೆಗಳನ್ನು ಗುರುತಿಸಿ, ನಿರ್ದಿಷ್ಟ, ನಡತೆಯಾದ ಪರಿಹಾರ ಕಾರ್ಯತಂತ್ರಗಳನ್ನು ರೂಪಿಸುವ ಸಾಮರ್ಥ್ಯ
|
||||
|
||||
**💼 ವೃತ್ತಿಪರ ಕೌಶಲ್ಯಗಳು:**
|
||||
- **ತಾಂತ್ರಿಕ ಸಂವಹನ**: ವಿಭಿನ್ನ ಹಕ್ಕುಗಳಲ್ಲಿ ವೃತ್ತಿಪರ ಪ್ರವೇಶ ವರದಿಗಳನ್ನು ಬರೆಯುವ ಅನುಭವ
|
||||
- **ತಂತ್ರಜ್ಞಾನದ ಯೋಜನೆ**: ಬಳಕೆದಾರರ ಪರಿಣಾಮ ಮತ್ತು ಜಾರಿಗೆ ಸಾಧ್ಯತೆ ಆಧರಿಸಿ ಪ್ರವೇಶ ಸುಧಾರಣೆಯ ಆದ್ಯತೆ ಪಟ್ಟಿ
|
||||
- **ಗುಣಮಟ್ಟ ನಿರ್ವಹಣೆ**: ಅಭಿವೃದ್ಧಿ ಚಕ್ರದಲ್ಲಿ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಪರೀಕ್ಷೆ ಕಲಿಕೆಯ ಅರಿವು
|
||||
- **ಅಪಾಯ ಮೌಲ್ಯಮಾಪನ**: ಪ್ರವೇಶ ನಿಯಮ ಪಾಲನೆಯ ಕಾನೂನು, ವ್ಯವಹಾರ ಮತ್ತು ನೈತಿಕ ಪರಿಣಾಮದ ಕುರಿತು ಮೆಲುಕು
|
||||
|
||||
**🌍 ಒಳಗೊಂಡ ವಿನ್ಯಾಸ ಮನೋಭಾವ:**
|
||||
- **ಬಳಕೆದಾರ ಅನುಭಾವ**: ವೈವಿಧ್ಯಮಯ ಬಳಕೆದಾರರ ಅಗತ್ಯಗಳು ಮತ್ತು ಸಹಾಯಕ ತಂತ್ರಜ್ಞಾನ ಸಂವಹನ ನಿರ್ಣಯಗಳು
|
||||
- **ವಿಶ್ವವ್ಯಾಪಿ ವಿನ್ಯಾಸ ತತ್ತ್ವಗಳು**: ಪ್ರವೇಶ ವಿನ್ಯಾಸವು ಬಲಹೀನರು ಮಾತ್ರವಲ್ಲದೆ ಎಲ್ಲ ಬಳಕೆದಾರರಿಗೂ ಉಪಯುಕ್ತ ಎಂಬ ಅರಿವು
|
||||
- **ನಿರಂತರ ಸುಧಾರಣೆ**: ನಿರಂತರ ಪ್ರವೇಶಯೋಗ್ಯತೆ ಮೌಲ್ಯಮಾಪನ ಮತ್ತು ವೃದ್ಧಿ ರೂಪರೇಖೆ
|
||||
- **ಪ್ರಚಾರ ಕೌಶಲ್ಯಗಳು**: ಮುಂದೆ Projectionಗಾ ಸ್ಥಳಗಳಿಗೆ ಪ್ರವೇಶ ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಪ್ರಚಾರ ಮಾಡುವ ವಿಶ್ವಾಸ
|
||||
|
||||
**🚀 ವೃತ್ತಿ ಸಿದ್ಧತೆ:**
|
||||
ಈ ಹುದ್ದೆ ನಿಜ ಬದುಕಿನ ಪ್ರವೇಶ ಸಲಹಾ ಯೋಜನೆಗಳನ್ನು ಪ್ರತಿಬಿಂಬಿಸುತ್ತದೆ, ಅದು ನಿಮಗೆ ಪೋರ್ಟ್ಫೋಲಿಯೋಗೆ ಯೋಗ್ಯ ಅನುಭವವನ್ನು ನೀಡುತ್ತದೆ, ಇವುಗಳನ್ನು ತೋರಿಸುತ್ತದೆ:
|
||||
- ಸಕಾಲಿಕ ಸಮಸ್ಯೆ ಪರಿಹಾರ ವಿಧಾನ
|
||||
- ತಾಂತ್ರಿಕ ವಿವರಗಳು ಮತ್ತು ವ್ಯವಹಾರ ಪರಿಣಾಮ ಎರಡಕ್ಕೂ ಗಮನ
|
||||
- ಸಂಕೀರ್ಣ ತಾಂತ್ರಿಕ ಕಲ್ಪನೆಗಳ ಸ್ಪಷ್ಟ ಸಂವಹನ
|
||||
- ವೆಬ್ ಅಭಿವೃದ್ಧಿಯಲ್ಲಿ ಕಾನೂನು ಮತ್ತು ನೈತಿಕ ಹೊಣೆಗಾರಿಕೆಗಳ ಅರಿವು
|
||||
|
||||
ಪೂರ್ಣಗೊಂಡ ನಂತರ, ನೀವು ಯಾವುದೇ ವೆಬ್ ಅಭಿವೃದ್ಧಿ ಪಾತ್ರದಲ್ಲಿ ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಉಪಕ್ರಮಗಳಿಗೆ ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಕೊಡುಗೆ ನೀಡಲು ಮತ್ತು ಸಮಗ್ರ ವಿನ್ಯಾಸ ಅಭ್ಯಾಸಗಳ ಪರ ಪ್ರಚಾರ ಮಾಡಲು ಸಜ್ಜಾಗಿರುತ್ತೀರಿ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ನಿರಾಕರಣೆ**:
|
||||
ಈ ದಾಖಲೆ AI ಭಾಷಾಂತರ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವದಿಸಲಾಗಿದೆ. ನಿಖರತೆಯಿಗಾಗಿ ನಾವು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಕ್ರಿಯ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸ್ಪಷ್ಟತೆಗಳಿರುವ ಸಾಧ್ಯತೆ ಇದೆ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಾಖಲೆ ಅಧಿಕೃತ ಸ್ರೋತವಾಗಿದೆ ಎಂದು ಪರಿಗಣಿಸಬೇಕು. ಅತ್ಯಾವಶ್ಯಕ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಭಾಷಾಂತರವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುವುದು. ಈ ಭಾಷಾಂತರದಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥ ಅಥವಾ ತಾರತಮ್ಯದ ಜವಾಬ್ದಾರಿಯನ್ನು ನಾವು ಹೊತ್ತೂಕೊಳ್ಳುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,34 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "770d9f83dddc841c19f210dee5fe0712",
|
||||
"translation_date": "2026-01-08T11:40:34+00:00",
|
||||
"source_file": "1-getting-started-lessons/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ವೆಬ್ ಅಭಿವೃದ್ಧಿಗೆ ಪ್ರಾರಂಭ
|
||||
|
||||
ಈ ಪಠ್ಯದ ವಿಭಾಗದಲ್ಲಿ, ವೃತ್ತಿಪರ ಡೆವೆಲಪರ್ ಆಗಲು ಮುಖ್ಯವಾದ ಪ್ರಾಜೆಕ್ಟ್ ಆಧಾರಿತವಲ್ಲದ ಕಲ್ಪನೆಗಳಿಗೆ ಪರಿಚಯ ಮಾಡಲಾಗುತ್ತದೆ.
|
||||
|
||||
### ವಿಷಯಗಳು
|
||||
|
||||
1. [ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳು ಮತ್ತು ವ್ಯಾಪಾರದ ಉಪಕರಣಗಳ ಪರಿಚಯ](1-intro-to-programming-languages/README.md)
|
||||
2. [GitHub ಗೆ ಪರಿಚಯ](2-github-basics/README.md)
|
||||
3. [ಸಾಧ್ಯತೆಯ ಮೂಲಭೂತಾಂಶಗಳು](3-accessibility/README.md)
|
||||
|
||||
### ಕ್ರೆಡಿಟ್ಸ್
|
||||
|
||||
ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳು ಮತ್ತು ವ್ಯಾಪಾರದ ಉಪಕರಣಗಳ ಪರಿಚಯವನ್ನು ♥️ ಜೊತೆಗೆ ಬರೆದವರು [ಜೆಸ್ಮಿನ್ ಗ್ರೀನವೇ](https://twitter.com/paladique)
|
||||
|
||||
GitHub ಗೆ ಪರಿಚಯವನ್ನು ♥️ ಜೊತೆಗೆ ಬರೆದವರು [ಫ್ಲೋರ್ ಡ್ರೀಸ್](https://twitter.com/floordrees)
|
||||
|
||||
ಸಾಧ್ಯತೆಯ ಮೂಲಭೂತಾಂಶಗಳನ್ನು ♥️ ಜೊತೆಗೆ ಬರೆದವರು [ಕ್ರಿಸ್ಟೋಫರ್ ಹರಿಸನ್](https://twitter.com/geektrainer)
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ನಿರಾಕರಣೆ**:
|
||||
ಈ ದಸ್ತಾವೇಜನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಗೆ ಪ್ರಯತ್ನಿಸಿದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳಿರಬಹುದೆಂದು ದಯವಿಟ್ಟು ಗಮನವಿರಲಿ. ಮೂಲ ದಸ್ತಾವೇಜನ್ನು ಅದರ ಸ್ಥಳೀಯ ಭಾಷೆಯಲ್ಲಿ ಪ್ರಾಮಾಣಿಕ ಮೂಲವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವದ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಗಳಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು
|
||||
ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿಕೆಗಳಿಗೆ ಅಥವಾ ತಪ್ಪು ವಿವರಣೆಗಳಿಗೆ ನಾವು ಹೊಣೆಗಾರರಾಗಿದ್ದೇವೆ ಅಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,103 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "6fd645e97c48cd5eb5a3d290815ec8b5",
|
||||
"translation_date": "2026-01-08T12:43:58+00:00",
|
||||
"source_file": "2-js-basics/1-data-types/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# Data Types Practice: ಇ-ಕಾಮರ್ಸ್ ಶಾಪಿಂಗ್ ಕಾರ್ಟ್
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ನೀವು ಆಧುನಿಕ ಇ-ಕಾಮರ್ಸ್ ಶಾಪಿಂಗ್ ಕಾರ್ಟ್ ವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ಮಿಸುತ್ತಿದ್ದೀರಿ ಎಂದು ಕಲ್ಪಿಸಿ. ಈ ಕಾರ್ಯ ನಿಮ್ಮಿಗೆ ವಿಭಿನ್ನ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಡೇಟಾ ತರಪ್ರಕಾರಗಳು ಪ್ರತಿಯೊಂದು ಹೇಗೆ ಜೋಡಣೆಯಾಗುತ್ತವೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ನೆರವಾಗುತ್ತದೆ.
|
||||
|
||||
### ನಿಮ್ಮ ಕಾರ್ಯ
|
||||
|
||||
ಶಾಪಿಂಗ್ ಕಾರ್ಟ್ ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಡೇಟಾ ತರಪ್ರಕಾರಗಳನ್ನು ನೀವು ಹೇಗೆ ಉಪಯೋಗಿಸುವಿರೋದುಗಳ ಸಮಗ್ರ ವಿಶ್ಲೇಷಣೆಯನ್ನು ರಚಿಸಿ. ಏಳು ಮೂಲಭೂತ ಡೇಟಾ ತರಪ್ರಕಾರಗಳು ಮತ್ತು ಆоб್ಜೆಕ್ಟ್ ಗಳಿಗಾಗಿ ನೀವು:
|
||||
|
||||
1. **ತರಪ್ರಕಾರವನ್ನು ಗುರುತಿಸಿ** ಮತ್ತು ಅದರ ಉದ್ದೇಶವನ್ನು ವಿವರಿಸಿ
|
||||
2. **ಈ ಡೇಟಾ ತರಪ್ರಕಾರ ಶಾಪಿಂಗ್ ಕಾರ್ಟ್ ವೈಶಿಷ್ಟ್ಯಗಳಿಗೆ ಅತ್ಯುತ್ತಮ ಆಯ್ಕೆ ಆಗಿರುವ ಕಾರಣವನ್ನು ವಿವರಿಸಿ**
|
||||
3. **ನಿಜವಾದ ಉದಾಹರಣೆ ಕೋಡ್ ಅನ್ನು ಕೊಡಿ** ಆಗ ಡೇಟಾ ತರಪ್ರಕಾರ ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ತೋರಿಸಿ
|
||||
4. **ಈ ಡೇಟಾ ತರಪ್ರಕಾರವು ಶಾಪಿಂಗ್ ಕಾರ್ಟ್ನ ಇತರ ಭಾಗಗಳೊಂದಿಗೆ ಹೇಗೆ ಸಂವಹನ ಹೊಂದುತ್ತದೆ ಎಂಬುದನ್ನು ವಿವರಿಸಿ**
|
||||
|
||||
### ಆವರಿಸಲು ಅಗತ್ಯವಿರುವ ಡೇಟಾ ತರಪ್ರಕಾರಗಳು
|
||||
|
||||
**ಮೂಲಭೂತ ಡೇಟಾ ತರಪ್ರಕಾರಗಳು:**
|
||||
- **ಸ್ಟ್ರಿಂಗ್**: ಉತ್ಪನ್ನ ಹೆಸರುಗಳು, ವಿವರಣೆಗಳು, ಬಳಕೆದಾರ ಮಾಹಿತಿಗಳು
|
||||
- **ನಂಬರ್**: ಬೆಲೆಗಳು, ಪ್ರಮಾಣಗಳು, ತೆರಿಗೆ ಲೆಕ್ಕಾಚಾರಗಳು
|
||||
- **ಬೂಲಿಯನ್**: ಐಟಂ ಲಭ್ಯತೆ, ಬಳಕೆದಾರ पसंद, ಕಾರ್ಟ್ ಸ್ಥಿತಿ
|
||||
- **ನಲ್**: ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಖಾಲಿ ಮೌಲ್ಯಗಳು (ಡಿಸ್ಕೌಂಟ್ ಕೋಡ್ ಇಲ್ಲದಿರುವಂತೆ)
|
||||
- **ಅನಿರ್ಧಿಷ್ಟ (Undefined)**: ಆರಂಭಗೊಳಿಸಲಾದಿಲ್ಲದ ಮೌಲ್ಯಗಳು ಅಥವಾ ಕೊರತೆಯ ಮಾಹಿತಿಗಳು
|
||||
- **ಸಿಂಬಲ್**: ವಿಶಿಷ್ಟ ಗುರುತಿಸುವಿಕೆಗಳು (ಉನ್ನತ ಬಳಕೆ)
|
||||
- **ಬಿಗ್ಇಂಟ್**: ದೊಡ್ಡ ಹಣಕಾಸಿನ ಲೆಕ್ಕಾಚಾರಗಳು (ಉನ್ನತ ಬಳಕೆ)
|
||||
|
||||
**ರેફರೆನ್ಸ್ ತರಪ್ರಕಾರಗಳು:**
|
||||
- **ಆಬ್ಜೆಕ್ಟ್**: ಉತ್ಪನ್ನ ವಿವರಗಳು, ಬಳಕೆದಾರ ಪ್ರೊಫೈಲ್ಗಳು, ಕಾರ್ಟ್ ಒಳಗಿನ ವಸ್ತುಗಳು
|
||||
- **ಅರೈ**: ಉತ್ಪನ್ನಗಳ ಪಟ್ಟಿ, ಆದೇಶ ಇತಿಹಾಸ, ವರ್ಗಗಳು
|
||||
|
||||
### ಪ್ರತಿ ಡೇಟಾ ತರಪ್ರಕಾರಕ್ಕೆ ಉದಾಹರಣೆಯ ರೂಪ
|
||||
|
||||
ಪ್ರತಿ ಡೇಟಾ ತರಪ್ರಕಾರಕ್ಕಾಗಿ, ನಿಮ್ಮ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಹೀಗೆ ರಚಿಸಿ:
|
||||
|
||||
```markdown
|
||||
## [Data Type Name]
|
||||
|
||||
**Purpose in Shopping Cart:** [Explain what this data type does]
|
||||
|
||||
**Why This Type:** [Explain why this is the best choice]
|
||||
|
||||
**Code Example:**
|
||||
```javascript
|
||||
// Your realistic code example here
|
||||
```
|
||||
|
||||
**ವಾಸ್ತವಿಕ ಬಳಕೆ:** [ಪ್ರಾಯೋಗಿಕವಾಗಿ ಇದು ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂದು ವಿವರಿಸಿ]
|
||||
|
||||
**ಸಂವಹನ:** [ಈ ಡೇಟಾ ತರಪ್ರಕಾರ ಇತರ ತರಪ್ರಕಾರಗಳೊಂದಿಗೆ ಹೇಗೆ ಸಂವಹನ ಮಾಡುತ್ತದೆ ಎಂದು ವಿವರಿಸಿ]
|
||||
```
|
||||
|
||||
### Bonus Challenges
|
||||
|
||||
1. **Type Coercion**: Show an example where JavaScript automatically converts between data types in your shopping cart (e.g., string "5" + number 10)
|
||||
|
||||
2. **Data Validation**: Demonstrate how you would check if user input is the correct data type before processing
|
||||
|
||||
3. **Performance Considerations**: Explain when you might choose one data type over another for performance reasons
|
||||
|
||||
### Submission Guidelines
|
||||
|
||||
- Create a markdown document with clear headings for each data type
|
||||
- Include working JavaScript code examples
|
||||
- Use realistic e-commerce scenarios in your examples
|
||||
- Explain your reasoning clearly for beginners to understand
|
||||
- Test your code examples to ensure they work correctly
|
||||
|
||||
## Rubric
|
||||
|
||||
| Criteria | Exemplary (90-100%) | Proficient (80-89%) | Developing (70-79%) | Needs Improvement (Below 70%) |
|
||||
|----------|---------------------|---------------------|---------------------|------------------------------|
|
||||
| **Data Type Coverage** | All 7 primitive types and objects/arrays covered with detailed explanations | 6-7 data types covered with good explanations | 4-5 data types covered with basic explanations | Fewer than 4 data types or minimal explanations |
|
||||
| **Code Examples** | All examples are realistic, working, and well-commented | Most examples work and are relevant to e-commerce | Some examples work but may be generic | Code examples are incomplete or non-functional |
|
||||
| **Real-world Application** | Clearly connects each data type to practical shopping cart features | Good connection to e-commerce scenarios | Some connection to shopping cart context | Limited real-world application demonstrated |
|
||||
| **Technical Accuracy** | All technical information is correct and demonstrates deep understanding | Most technical information is accurate | Generally accurate with minor errors | Contains significant technical errors |
|
||||
| **Communication** | Explanations are clear, beginner-friendly, and well-organized | Good explanations that are mostly clear | Explanations are understandable but may lack clarity | Explanations are unclear or poorly organized |
|
||||
| **Bonus Elements** | Includes multiple bonus challenges with excellent execution | Includes one or more bonus challenges well done | Attempts bonus challenges with mixed success | No bonus challenges attempted |
|
||||
|
||||
### Learning Objectives
|
||||
|
||||
By completing this assignment, you will:
|
||||
- ✅ **Understand** the seven JavaScript primitive data types and their uses
|
||||
- ✅ **Apply** data types to real-world programming scenarios
|
||||
- ✅ **Analyze** when to choose specific data types for different purposes
|
||||
- ✅ **Create** working code examples that demonstrate data type usage
|
||||
- ✅ **Explain** technical concepts in beginner-friendly language
|
||||
- ✅ **Connect** fundamental programming concepts to practical applications
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಜಾಣಿಕೆ ಮುಕ್ತಿ**:
|
||||
ಈ ದಾಖಲೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಎಂಬ AI ಅನುವಾದ ಸೇವೆಯನ್ನು ಬಳಸಿ ಅನುವದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಗೆ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ತಪ್ಪುಗಳು ಇರಬಹುದೆಂದು ತಿಳಿದುಕೊಳ್ಳಿ. ಮೂಲ ದಸ್ತಾವೇಜಿನ ಸ್ಥಳೀಯ ಭಾಷೆಯೇ ಅಧಿಕೃತ ಮೂಲವಾಗಿರುತ್ತದೆ. ಗಂಭೀರ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ误boಧನೆಗಳು ಅಥವಾ ತಪ್ಪು ಅರ್ಥಗರ್ಭಿತತೆಗಳಿಗೆ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,82 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "8328f58f4593b4671656ff8f4b2edbd9",
|
||||
"translation_date": "2026-01-08T12:31:14+00:00",
|
||||
"source_file": "2-js-basics/2-functions-methods/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# Functions ನೊಂದಿಗೆ ಮನರಂಜನೆ
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ಈ ಹುದ್ದೆಯಲ್ಲಿ, ನೀವು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಫಂಕ್ಷನ್ಗಳು, ಪ್ಯಾರಾಮೀಟರ್ಗಳು, ಡೀಫಾಲ್ಟ್ ಮೌಲ್ಯಗಳು ಮತ್ತು_RETURN_ ಸ್ಟೇಟ್ಮೆಂಟ್ಗಳ ಬಗ್ಗೆ ಕಲಿತಿರುವ ಸಂकल्पನೆಗಳನ್ನು ಬಲಪಡಿಸಲು ವಿವಿಧ ಬಗೆಯ ಫಂಕ್ಷನ್ಗಳನ್ನು ರಚಿಸುವ ಅಭ್ಯಾಸ ಮಾಡುತ್ತೀರಿ.
|
||||
|
||||
`functions-practice.js` ಎಂಬ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಫೈಲ್ ಅನ್ನು ರಚಿಸಿ ಮತ್ತು ಕೆಳಗಿನ ಫಂಕ್ಷನ್ಗಳನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸಿ:
|
||||
|
||||
### ಭಾಗ 1: ಮೂಲ ಫಂಕ್ಷನ್ಗಳು
|
||||
1. **ಯಾವುದೇ ಪ್ಯಾರಾಮೀಟರ್ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳದ, "Hello!" ಅನ್ನು ಕಾನ್ಸೋಲ್ನಲ್ಲಿ ಲಾಗ್ ಮಾಡುವ `sayHello` ಫಂಕ್ಷನ್ ಅನ್ನು ರಚಿಸಿ.**
|
||||
|
||||
2. **`name` ಎಂಬ ಪ್ಯಾರಾಮೀಟರ್ ತೆಗೆದುಕೊಳ್ಳುವ ಮತ್ತು ಕಾನ್ಸೋಲ್ನಲ್ಲಿ "Hi, my name is [name]" ಎಂಬ ಸಂದೇಶವನ್ನು ಲಾಗ್ ಮಾಡುವ `introduceYourself` ಫಂಕ್ಷನ್ ಅನ್ನು ರಚಿಸಿ.**
|
||||
|
||||
### ಭಾಗ 2: ಡೀಫಾಲ್ಟ್ ಪ್ಯಾರಾಮೀಟರ್ಗಳೊಂದಿಗೆ ಫಂಕ್ಷನ್ಗಳು
|
||||
3. **`name` (ಅವಶ್ಯಕ) ಮತ್ತು `greeting` (ಐಚ್ಛಿಕ, ಡೀಫಾಲ್ಟ್ "Hello") ಎಂಬ ಎರಡು ಪ್ಯಾರಾಮೀಟರ್ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುವ, ಮತ್ತು `[greeting], [name]!` ಎಂಬ ಸಂದೇಶವನ್ನು ಕಾನ್ಸೋಲ್ನಲ್ಲಿ ಲಾಗ್ ಮಾಡುವ `greetPerson` ಫಂಕ್ಷನ್ ಅನ್ನು ರಚಿಸಿ.**
|
||||
|
||||
### ಭಾಗ 3: ಮೌಲ್ಯಗಳನ್ನು ಹಿಂತಿರುಗಿಸುವ ಫಂಕ್ಷನ್ಗಳು
|
||||
4. **`num1` ಮತ್ತು `num2` ಎಂಬ ಎರಡು ಪ್ಯಾರಾಮೀಟರ್ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುವ ಮತ್ತು ಅವುಗಳ ಮೊತ್ತವನ್ನು ಹಿಂತಿರುಗಿಸುವ `addNumbers` ಫಂಕ್ಷನ್ ಅನ್ನು ರಚಿಸಿ.**
|
||||
|
||||
5. **`firstName` ಮತ್ತು `lastName` ಎಂಬ ಪ್ಯಾರಾಮೀಟರ್ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುವ ಮತ್ತು ಪೂರ್ಣ ಹೆಸರನ್ನು ಒಂದು ಸಾಲಿನಲ್ಲಿ ಹಿಂತಿರುಗಿಸುವ `createFullName` ಫಂಕ್ಷನ್ ಅನ್ನು ರಚಿಸಿ.**
|
||||
|
||||
### ಭಾಗ 4: ಎಲ್ಲವನ್ನೂ ಒಂದೇಗೂ మిశ್ರಣ ಮಾಡಿ
|
||||
6. **`billAmount` (ಅವಶ್ಯಕ) ಮತ್ತು `tipPercentage` (ಐಚ್ಛಿಕ, ಡೀಫಾಲ್ಟ್ 15) ಎಂಬ ಎರಡು ಪ್ಯಾರಾಮೀಟರ್ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುವ, ಮತ್ತು ಟಿಪ್ ಮೊತ್ತವನ್ನು ಲೆಕ್ಕ ಹಾಕಿ ಹಿಂತಿರುಗಿಸುವ `calculateTip` ಫಂಕ್ಷನ್ ಅನ್ನು ರಚಿಸಿ.**
|
||||
|
||||
### ಭಾಗ 5: ನಿಮ್ಮ ಫಂಕ್ಷನ್ಗಳನ್ನು ಪರೀಕ್ಷಿಸಿ
|
||||
ಪ್ರತಿಯೊಂದು ಫಂಕ್ಷನ್ಗಳ ವೈಖರಿ ಪರೀಕ್ಷಿಸಲು ಮತ್ತು ಫಲಿತಾಂಶಗಳನ್ನು `console.log()` ಮೂಲಕ ಪ್ರದರ್ಶಿಸಲು ಫಂಕ್ಷನ್ ಕರೆಗಳನ್ನು ಸೇರಿಸಿ.
|
||||
|
||||
**ಉದಾಹರಣೆ ಪರೀಕ್ಷಾ ಕರೆಯುವಿಕೆಗಳು:**
|
||||
```javascript
|
||||
// ನಿಮ್ಮ ಕಾರ್ಯಗಳನ್ನು ಇಲ್ಲಿ ಪರೀಕ್ಷಿಸಿ
|
||||
sayHello();
|
||||
introduceYourself("Sarah");
|
||||
greetPerson("Alex");
|
||||
greetPerson("Maria", "Hi");
|
||||
|
||||
const sum = addNumbers(5, 3);
|
||||
console.log(`The sum is: ${sum}`);
|
||||
|
||||
const fullName = createFullName("John", "Doe");
|
||||
console.log(`Full name: ${fullName}`);
|
||||
|
||||
const tip = calculateTip(50);
|
||||
console.log(`Tip for $50 bill: $${tip}`);
|
||||
```
|
||||
|
||||
## ರುಬ್ರಿಕ್
|
||||
|
||||
| ಮಾನದಂಡಗಳು | ಅತ್ಯುತ್ತಮ | ಸಮರ್ಪಕ | ಸುಧಾರಣೆಯ ಅಗತ್ಯವಿದೆ |
|
||||
| -------- | --------- | -------- | ----------------- |
|
||||
| **ಫಂಕ್ಷನ್ ರಚನೆ** | ಎಲ್ಲಾ 6 ಫಂಕ್ಷನ್ಗಳು ಸರಿಯಾದ ವಾಕ್ಯರಚನೆ ಮತ್ತು ಹೆಸರೀಕರಣ ನಿಯಮಗಳೊಂದಿಗೆ ಸರಿಯಾಗಿ ಅನುಷ್ಠಾನಗೊಳ್ಳುತ್ತವೆ | 4-5 ಫಂಕ್ಷನ್ಗಳು ಸರಿಯಾಗಿ ನಿರ್ವಹಿಸಲ್ಪಟ್ಟಿವೆ, ಸಣ್ಣ ವಾಕ್ಯರಚನಾ ಸಂಖ್ಯಾ ಸಮಸ್ಯೆಗಳಿವೆ | 3 ಅಥವಾ ಕಡಿಮೆ ಫಂಕ್ಷನ್ಗಳು ಅನುಷ್ಠಾನಗೊಳ್ಳಿವೆ ಅಥವಾ ಮುಖ್ಯ ವಾಕ್ಯರಚನಾ ದೋಷಗಳಿವೆ |
|
||||
| **ಪ್ಯಾರಾಮೀಟರ್ಗಳು ಮತ್ತು ಡೀಫಾಲ್ಟ್ ಮೌಲ್ಯಗಳು** | ಅವಶ್ಯಕ, ಐಚ್ಛಿಕ ಮತ್ತು ಡೀಫಾಲ್ಟ್ ಮೌಲ್ಯಗಳನ್ನು ಸರಿಯಾಗಿ ಬಳಸಲಾಗಿದೆ | ಪ್ಯಾರಾಮೀಟರ್ಗಳನ್ನು ಸರಿಯಾಗಿ ಬಳಸದಿದ್ದರೂ ಡೀಫಾಲ್ಟ್ ಮೌಲ್ಯಗಳೊಂದಿಗೆ ಸಮಸ್ಯೆಗಳಿರಬಹುದು | ಪ್ಯಾರಾಮೀಟರ್ ಅನುಷ್ಠಾನ ತಪ್ಪಾಗಿದೆ ಅಥವಾ ಇಲ್ಲ |
|
||||
| **ಹಿಂತಿರುಗುವ ಮೌಲ್ಯಗಳು** | ಮೌಲ್ಯಗಳನ್ನು ಹಿಂತಿರುಗಿಸಬೇಕಾದ ಫಂಕ್ಷನ್ಗಳು ಸರಿಯಾಗಿ ಹಿಂತಿರುಗಿಸುತ್ತವೆ, ಅವುಗಳು ಮಾಡುವುದಿಲ್ಲ ಯಾವುದೆ ಕಾರ್ಯ ಮಾತ್ರ ಮಾಡುತ್ತವೆ | ಹೆಚ್ಚಿನ ಹಿಂತಿರುಗುವ ಮೌಲ್ಯಗಳು ಸರಿಯಾಗಿದೆ, ಸಣ್ಣ ಸಮಸ್ಯೆಗಳಿವೆ | ಹಿಂತಿರುಗುವ ಸ್ಟೇಟ್ಮೆಂಟ್ಗಳಲ್ಲಿ ಪ್ರಮುಖ ಸಮಸ್ಯೆಗಳು |
|
||||
| **ಕೋಡ್ ಗುಣಮಟ್ಟ** | ಸ್ವಚ್ಛ, ಉತ್ತಮ ಕ್ರಮಿತ ಕೋಡ್, ಅಗತ್ಯವಿರುವ ಬದಲಾವಣೆಗಳ ಹೆಸರಿನೊಂದಿಗೆ ಮತ್ತು ಸರಿಯಾದ ಗುರುತುಬಳಕೆ | ಕೋಡ್ ಕೆಲಸ ಮಾಡುತ್ತದೆ ಆದರೆ ಸ್ವಚ್ಛತೆ ಕಡಿಮೆ ಅಥವಾ ಉತ್ತಮ ವ್ಯವಸ್ಥೆ ಹೊಂದಿಲ್ಲ | ಕೋಡ್ ಓದಲು ಕಷ್ಟವಾದುದು ಅಥವಾ ದುರ್ಬಲವಾಗಿ ರೂಪಿತವಾಗಿದೆ |
|
||||
| **ಪರೀಕ್ಷಣೆ** | ಎಲ್ಲಾ ಫಂಕ್ಷನ್ಗಳನ್ನು ಸೂಕ್ತ ಫಂಕ್ಷನ್ ಕರೆಗಳೊಂದಿಗೆ ಪರೀಕ್ಷಿಸಲಾಗಿದೆ ಮತ್ತು ಫಲಿತಾಂಶಗಳನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಪ್ರದರ್ಶನಗೊಳ್ಳುತ್ತದೆ | ಹೆಚ್ಚಿನ ಫಂಕ್ಷನ್ಗಳನ್ನು ಸರಿಯಾಗಿ ಪರೀಕ್ಷಿಸಲಾಗಿದೆ | ಫಂಕ್ಷನ್ಗಳ ಪರೀಕ್ಷೆಯು ಸೀಮಿತ ಅಥವಾ ತಪ್ಪಾಗಿರುತ್ತದೆ |
|
||||
|
||||
## ಬೋನಸ್ ಸವಾಲುಗಳು (ಐಚ್ಛಿಕ)
|
||||
|
||||
ನಿಮ್ಮನ್ನು ಮತ್ತಷ್ಟು ಸವಾಲು ಹಾಕಲು:
|
||||
|
||||
1. **ನಿಮ್ಮ ಫಂಕ್ಷನ್ಗಳಲ್ಲಿ ಒಂದರ ಆ್ಯರೋ ಫಂಕ್ಷನ್ ಆವೃತಿಯನ್ನು ರಚಿಸಿ**
|
||||
2. **ಮತ್ತು ಯಾವುದಾದರೂ ಫಂಕ್ಷನ್ ಅನ್ನು ಪ್ಯಾರಾಮೀಟರ್ ಆಗಿ ಸ್ವೀಕರಿಸುವ ಫಂಕ್ಷನ್ ರಚಿಸಿ** (ಪಾಠದ setTimeout ಉದಾಹರಣೆಗಳಂತೆ)
|
||||
3. **ಪ್ರವೇಶ ಮಾನ್ಯತೆ ಸೇರಿಸಿ** ನಿಮ್ಮ ಫಂಕ್ಷನ್ಗಳು ತಪ್ಪಾದ ಇನ್ಪುಟ್ಗಳನ್ನು ಚೆನ್ನಾಗಿ ನಿಭಾಯಿಸುತ್ತವೆ ಎಂದು ಖಚಿತಪಡಿಸಲು
|
||||
|
||||
---
|
||||
|
||||
> 💡 **ಸೂಚನೆ**: ನಿಮ್ಮ ಬ್ರೌಸರ್ ಡೆವಲಪರ್ ಕಾನ್ಸೋಲ್ (F12) ತೆರೆಯುವುದು ಮತ್ತು ನಿಮ್ಮ `console.log()` ವಿವರಣೆಗಳ ಫಲಿತಾಂಶಗಳನ್ನು ನೋಡುವುದು ಮರೆಯಬೇಡಿ!
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಬದ್ಲೋಕೆ**:
|
||||
ಈ ದಸ್ತಾವೇಜನ್ನು AI ಭಾಷಾಂತರ ಸೇವೆಯಾದ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಭಾಷಾಂತರಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಯಿಗಾಗಿ ಪ್ರಯತ್ನಿಸುತ್ತಿರಬಹುದಾದರೂ, ಸ್ವಯಂಚಾಲಿತ ಭಾಷಾಂತರಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಕಾಣಿಸಬಹುದು. ಮೂಲದ ದಸ್ತಾವೇಜಿನ ಮೂಲ ಭಾಷೆಯ ಪ್ರತಿಯನ್ನು ಅಧಿಕೃತ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಭಾಷಾಂತರವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಭಾಷಾಂತರದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಕಲ್ಪನೆಗಳು ಅಥವಾ ದ್ವಂದ್ವಾರ್ಥಗಳಿಗೆ ನಾವು ಜವಾಬ್ದಾರಿಯಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,120 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "ffe366b2d1f037b99fbadbe1dc81083d",
|
||||
"translation_date": "2026-01-08T12:57:26+00:00",
|
||||
"source_file": "2-js-basics/3-making-decisions/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ನಿರ್ಧಾರ ತೆಗೆದುಕೊಳ್ಳುವುದು: ವಿಧ್ಯಾರ್ಥಿ ಶ್ರೇಣಿ ಪ್ರೊಸೆಸರ್
|
||||
|
||||
## ಕಲಿಕೆ ಉದ್ದೇಶಗಳು
|
||||
|
||||
ಈ ಕಾರ್ಯದಲ್ಲಿ, ನೀವು ಈ ಪಾಠದಿಂದ ನಿರ್ಧಾರ ತೆಗೆದುಕೊಳ್ಳುವ ಸಿದ್ಧಾಂತಗಳನ್ನು ಅಭ್ಯಾಸ ಮಾಡುತ್ತೀರಿ, ವಿಭಿನ್ನ ಶ್ರೇಣಿ ವ್ಯವಸ್ಥೆಗಳಿಂದ ವಿಧ್ಯಾರ್ಥಿಗಳ ಶ್ರೇಣಿಗಳನ್ನು ಪ್ರೊಸೆಸ್ ಮಾಡುವ ಪ್ರೋಗ್ರಾಂ ರಚಿಸುವ ಮೂಲಕ. ನೀವು `if...else` ಹೇಳಿಕೆಗಳು, ಹೋಲಿಕೆ ಆಪರೇಟರ್ಗಳು ಮತ್ತು ಲಾಜಿಕಲ್ ಆಪರೇಟರ್ಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಯಾವ ವಿಧ್ಯಾರ್ಥಿಗಳು ತಮ್ಮ ಪಾಠಗಳನ್ನು ಪೂರ್ಣಗೊಳಿಸುತ್ತಾರೆ ಎಂದು ನಿರ್ಧರಿಸುವಿರಿ.
|
||||
|
||||
## ಸವಾಲು
|
||||
|
||||
ನೀವು ಇತ್ತೀಚೆಗೆ ಇನ್ನೊಬ್ಬ ಸಂಸ್ಥೆಯೊಂದರೊಂದಿಗೆ ಮಿಲಿಸಿ ಕೆಲಸಮಾಡುವ ಶಾಲೆಗೆ ಕೆಲಸಮಾಡುತ್ತೀರಿ. ಈಗ ನೀವು ಎರಡು ಸಂಪೂರ್ಣ ವಿಭಿನ್ನ ಶ್ರೇಣಿ ವ್ಯವಸ್ಥೆಗಳ ವಿಧ್ಯಾರ್ಥಿ ಶ್ರೇಣಿಗಳನ್ನು ಪ್ರೊಸೆಸ್ ಮಾಡಿ ಯಾವ ವಿಧ್ಯార్థಿಗಳು ಪಾಸಾಗಿದ್ದಾರೆ ಎಂದು ನಿರ್ಣಯಿಸಬೇಕಿದೆ. ಇದು ಶರಿಂದ ನಿಯಮಗಳ ಲಾಜಿಕ್ ಅಭ್ಯಾಸ ಮಾಡಿಕೊಳ್ಳಲು ಸೂಕ್ತ ಅವಕಾಶ!
|
||||
|
||||
### ಶ್ರೇಣಿ ವ್ಯವಸ್ಥೆಗಳ ಅರಿವು
|
||||
|
||||
#### ಮೊದಲ ಶ್ರೇಣಿ ವ್ಯವಸ್ಥೆ (ಸಂಖ್ಯಾತ್ಮಕ)
|
||||
- ಶ್ರೇಣಿ ಸಂಖ್ಯೆ 1-5 ರಲ್ಲಿ ಇರುತ್ತದೆ
|
||||
- **ಪಾಸಿಂಗ್ ಶ್ರೇಣಿ**: 3 ಮತ್ತು ಮೇಲಿಲ್ಲ (3, 4, ಅಥವಾ 5)
|
||||
- **ಫೇಲಿಂಗ್ ಶ್ರೇಣಿ**: 3 ಕೆಳಗೆ (1 ಅಥವಾ 2)
|
||||
|
||||
#### ಎರಡನೇ ಶ್ರೇಣಿ ವ್ಯವಸ್ಥೆ (ಅಕ್ಷರ ಶ್ರೇಣಿಗಳು)
|
||||
- ಶ್ರೇಣಿಗಳು ಅಕ್ಷರಗಳಲ್ಲಿ ಇರುತ್ತದೆ: `A`, `A-`, `B`, `B-`, `C`, `C-`
|
||||
- **ಪಾಸಿಂಗ್ ಶ್ರೇಣಿಗಳು**: `A`, `A-`, `B`, `B-`, `C`, `C-` (ಪಟ್ಟ ಪಟ್ಟಿಯಲ್ಲಿ ಎಲ್ಲಾ ಪಾಸಿಂಗ್ ಆಗಿವೆ)
|
||||
- **ಗಮನಿಸಿ**: ಈ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ `D` ಅಥವಾ `F` ರಂತೆ ಫೇಲಿಂಗ್ ಶ್ರೇಣಿಗಳು ಇಲ್ಲ
|
||||
|
||||
### ನಿಮ್ಮ ಕೆಲಸ
|
||||
|
||||
ಕೆಳಗಿನ ಅರೆ ಈ ವರೂಪ `allStudents` ಅನ್ನು ಕೊಟ್ಟಿದ್ದು ಅವು ಎಲ್ಲಾ ವಿಧ್ಯಾರ್ಥಿಗಳ ಶ್ರೇಣಿಗಳನ್ನು ಮತ್ತು ಅವರ ಗ್ರೇಡ್ಗಳನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ, ತದನಂತ್ರ ಅವರ ತಕ್ಕ ಶ್ರೇಣಿ ವ್ಯವಸ್ಥೆಯ ಪ್ರಕಾರ ಪಾಸಾದ ವಿಧ್ಯಾರ್ಥಿಗಳ ಒಂದು ಹೊಸ ಅರೆ `studentsWhoPass` ರಚಿಸಿ.
|
||||
|
||||
```javascript
|
||||
let allStudents = [
|
||||
'A', // ಅಕ್ಷರ ಶ್ರೇಣಿ - ಉತ್ತೀರ್ಣ
|
||||
'B-', // ಅಕ್ಷರ ಶ್ರೇಣಿ - ಉತ್ತೀರ್ಣ
|
||||
1, // ಸಂಖ್ಯಾತ್ಮಕ ಶ್ರೇಣಿ - ಯೋಜಿಸದ
|
||||
4, // ಸಂಖ್ಯಾತ್ಮಕ ಶ್ರೇಣಿ - ಉತ್ತೀರ್ಣ
|
||||
5, // ಸಂಖ್ಯಾತ್ಮಕ ಶ್ರೇಣಿ - ಉತ್ತೀರ್ಣ
|
||||
2 // ಸಂಖ್ಯಾತ್ಮಕ ಶ್ರೇಣಿ - ಯೋಜಿಸದ
|
||||
];
|
||||
|
||||
let studentsWhoPass = [];
|
||||
```
|
||||
|
||||
### ಹಂತ ಹಂತದ ವಿಧಾನ
|
||||
|
||||
1. `allStudents` ಅರೆ ಒಳಗಿನ ಪ್ರತಿ ಶ್ರೇಣಿಯ ಮೂಲಕ ಹೋಗಲು **ಲೂಪ್**ಗಳನ್ನು ಹೊಂದಿಸಿ
|
||||
2. ಶ್ರೇಣಿ ಪ್ರಕಾರವನ್ನು **ಪರಿಶೀಲಿಸಿ** (ಅದೊಂದು ಸಂಖ್ಯೆನಾ ಅಥವಾ ಸ್ಟ್ರಿಂಗ್ ಆಗಿದೆಯೇ?)
|
||||
3. ಸೂಕ್ತ ಶ್ರೇಣಿ ನಿಯಮಗಳನ್ನು **ಅನ್ವಯಿಸಿ**:
|
||||
- ಸಂಖ್ಯೆಗಳಿಗಾಗಿ: ಶ್ರೇಣಿ >= 3 ಎಂದು ಪರಿಶೀಲಿಸಿ
|
||||
- ಸ್ಟ್ರಿಂಗ್ಗಳಿಗಾಗಿ: ಅದು ಮಾನ್ಯವಾದ ಪಾಸಿಂಗ್ ಅಕ್ಷರ ಶ್ರೇಣಿಗಳಲ್ಲಿ ಒಂದಾಗಿದೆಯೇ ಎಂದು ನೋಡಿ
|
||||
4. **ಪಾಸಿಂಗ್ ಶ್ರೇಣಿಗಳನ್ನು** `studentsWhoPass` ಅರೆಗೆ ಸೇರಿಸಿ
|
||||
|
||||
### ಉತ್ತೇಜಕ ಕೋಡ್ ತಂತ್ರಗಳು
|
||||
|
||||
ಈ ಪಾಠದಿಂದ ಕೆಳಗಿನ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಮೌಲ್ಯಗಳನ್ನು ಬಳಸಿ:
|
||||
|
||||
- **typeof ಆಪರೇಟರ್**: `typeof grade === 'number'` ಎಂದು ಅಧಿಸೂಚಿಸಲು ಶ್ರೇಣಿ ಸಂಖ್ಯಾತ್ಮಕವೇ ಎಂದು ಪರೀಕ್ಷಿಸಿ
|
||||
- **ಹೋಲಿಕೆ ಆಪರೇಟರ್ಗಳು**: ಸಂಖ್ಯೆ ಶ್ರೇಣಿ ಹೋಲಿಸಲು `>=` ಬಳಸುವುದು
|
||||
- **ಲಾಜಿಕಲ್ ಆಪರೇಟರ್ಗಳು**: `||` ಒಂದರಿಗಿಂತ ಹೆಚ್ಚು ಅಕ್ಷರ ಶ್ರೇಣಿಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು
|
||||
- **if...else ಹೇಳಿಕೆಗಳು**: ವಿಭಿನ್ನ ಶ್ರೇಣಿ ವ್ಯವಸ್ಥೆಗಳನ್ನು ನಿರ್ವಹಿಸಲು
|
||||
- **ಅರೆ ವಿಧಾನಗಳು**: `.push()` ಹೊಸ ಅರೆಗೆ ಪಾಸಿಂಗ್ ಶ್ರೇಣಿಗಳನ್ನು ಸೇರಿಸುವುದು
|
||||
|
||||
### ನಿರೀಕ್ಷಿತ ಔಟ್ಪುಟ್
|
||||
|
||||
ನೀವು ಕಾರ್್ಯಕ್ರಮವನ್ನು ಸಂಚಾಲಿಸಿದಾಗ, `studentsWhoPass` ಇರುವುದು: `['A', 'B-', 4, 5]`
|
||||
|
||||
**ಈ ಶ್ರೇಣಿಗಳು పಾಸುಗಾಗಿ ಕಾರಣ:**
|
||||
- `'A'` ಮತ್ತು `'B-'` ಮಾನ್ಯ ಅಕ್ಷರ ಶ್ರೇಣಿಗಳು (ಈ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ಎಲ್ಲಾ ಅಕ್ಷರ ಶ್ರೇಣಿಗಳು ಪಾಸಿಂಗ್)
|
||||
- `4` ಮತ್ತು `5` ಸಂಖ್ಯಾತ್ಮಕ ಶ್ರೇಣಿಗಳು >= 3 ಆಗಿವೆ
|
||||
- `1` ಮತ್ತು `2` ಫೇಲ್ ಆಗಿದೆಯೆಂದು 3 ಕ್ಕಿಂತ ಕಡಿಮೆ ಸಂಖ್ಯೆ ಶ್ರೇಣಿಗಳಾಗಿವೆ
|
||||
|
||||
## ನಿಮ್ಮ ಪರಿಹಾರವನ್ನು ಪರೀಕ್ಷಿಸಿ
|
||||
|
||||
ನೀವು ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ವಿಭಿನ್ನ ಪರಿಸ್ಥಿತಿಗಳಲ್ಲಿ ಪರೀಕ್ಷಿಸಿ:
|
||||
|
||||
```javascript
|
||||
// ವಿಭಿನ್ನ ದರ್ಜೆ ಸಂಯोजನೆಗಳೊಂದಿಗೆ ಪರೀಕ್ಷೆ ಮಾಡಿ
|
||||
let testGrades1 = ['A-', 3, 'C', 1, 'B'];
|
||||
let testGrades2 = [5, 'A', 2, 'C-', 4];
|
||||
|
||||
// ನಿಮ್ಮ ಪರಿಹಾರವು ಮಾನ್ಯ ದರ್ಜೆಗಳ ಯಾವುದೇ ಸಂಯೋಜನೆಯೊಂದಿಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸಬಹುದು
|
||||
```
|
||||
|
||||
## ಹೆಚ್ಚುವರಿ ಸವಾಲುಗಳು
|
||||
|
||||
ಪ್ರಾಥಮಿಕ ಕಾರ್ಯವನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ, ಈ ವಿಸ್ತರಣೆಗಳನ್ನು ಪ್ರಯತ್ನಿಸಿ:
|
||||
|
||||
1. **ಸರಿಯಾದ ಭಿನ್ನತೆ**: ಅಯೋಗ್ಯ ಶ್ರೇಣಿಗಳನ್ನು ಪರೀಕ್ಷಿಸಿ (ಉದಾಹರಣೆಗೆ, ಋಣಾತ್ಮಕ ಸಂಖ್ಯೆ ಅಥವಾ ಅಯೋಗ್ಯ ಅಕ್ಷರಗಳು)
|
||||
2. **ಸಂಖ್ಯಾಗಣನೆ**: ಪಾಸಾದವರ ಮತ್ತು ಫೇಲ್ ಆದವರ ಎಣಿಕೆ ಮಾಡಿ
|
||||
3. **ಶ್ರೇಣಿ ಪರಿವರ್ತನೆ**: ಎಲ್ಲಾ ಶ್ರೇಣಿಗಳನ್ನು ಏಕ ಸಂಖ್ಯೆ ವ್ಯವಸ್ಥೆಗೆ ಪರಿವರ್ತಿಸಿ (A=5, B=4, C=3 ಇತ್ಯಾದಿ)
|
||||
|
||||
## ಮೌಲ್ಯಮಾಪನ
|
||||
|
||||
| ಮಾನದಂಡ | ಅದ್ಭುತ (4) | ಸಮರ್ಥ (3) | ಅಭಿವೃದ್ಧಿ (2) | ಪ್ರಾರಂಭಿಕ (1) |
|
||||
|----------|--------------|----------------|----------------|--------------|
|
||||
| **ಕಾರ್ಯಕ್ಷಮತೆ** | ಪ್ರೋಗ್ರಾಂ ಎರಡೂ ವ್ಯವಸ್ಥೆಗಳ ಪಾಸಿಂಗ್ ಶ್ರೇಣಿಗಳನ್ನು ಸರಿಯಾಗಿ ಗುರುತಿಸುತ್ತದೆ | ಕೆಲವು ಸಣ್ಣ ಸಮಸ್ಯೆ ಅಥವಾ ಅತಿಮುಖ್ಯ ತೆಗೆದುಕೊಂಡ ಘಟನೆಗಳೊಂದಿಗೆ ಪ್ರೋಗ್ರಾಂ ಕೆಲಸಮಾಡುತ್ತದೆ | ಪ್ರೋಗ್ರಾಂ ಭಾಗಶಃ ಕೆಲಸಮಾಡುತ್ತದೆ ಆದರೆ ಲಾಜಿಕ್ ದೋಷಗಳಿವೆ | ಪ್ರೋಗ್ರಾಂವು ಹೆಚ್ಚು ದೋಷಗಳನ್ನು ಹೊಂದಿದೆ ಅಥವಾ ಚಾಲನೆ ಆಗುವುದಿಲ್ಲ |
|
||||
| **ಕೋಡ್ ರಚನೆ** | ಸ್ವಚ್ಛ ಮತ್ತು ಉತ್ತಮ ಸಂಘಟಿತ ಕೋಡ್ ಸೂಕ್ತ if...else ತರ್ಕದೊಂದಿಗೆ | ಸೂಕ್ತ ನಿರ್ವಹಣೆ ಇದ್ದ ಉತ್ತಮ ರಚನೆ | ಕೆಲವು ಸಂಘಟನೆ ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ ಮಾನ್ಯ ರಚನೆ | ದುರಂತ ರಚನೆ, ತರ್ಕವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಕಷ್ಟ |
|
||||
| **ಕಾನ್ಸೆಪ್ಟ್ ಬಳಕೆ** | ಹೋಲಿಕೆ ಆಪರೇಟರ್ಗಳು, ಲಾಜಿಕಲ್ ಆಪರೇಟರ್ಗಳು ಮತ್ತು ಶರತಿ ಹೇಳಿಕೆಗಳನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಬಳಕೆ | ಪಾಠದ ಕಾನ್ಸೆಪ್ಟ್ಗಳ ನಡುವಿನ ಕಡಿಮೆ ಭೇದಗಳೊಂದಿಗೆ ಉತ್ತಮ ಬಳಕೆ | ಪಾಠದ ಕಾನ್ಸೆಪ್ಟ್ಗಳ ಕೆಲವು ಉಪಯೋಗ ಆದರೆ ಪ್ರಮುಖ ಅಂಶಗಳು ಅಗತ್ಯ | ಪಾಠದ ಕಾನ್ಸೆಪ್ಟ್ಗಳ ಬಹಳಾ ಕಡಿಮೆಯ ಬಳಕೆ |
|
||||
| **ಸಮಸ್ಯೆ ಪರಿಹಾರ** | ಸಮಸ್ಯೆಯ ಸ್ಪಷ್ಟ ಅರ್ಥ ಹಾಗೂ ಸುಂದರ ಪರಿಹಾರ ವಿಧಾನ ತೋರಿಸುತ್ತದೆ | ಉತ್ತಮ ಸಮಸ್ಯೆ ಪರಿಹಾರ ವಿಧಾನ ಮತ್ತು ಘನ ವಿಚಾರ | ಸಮಸ್ಯೆ ಪರಿಹಾರ ತಕ್ಕ ಮಟ್ಟಿಗೆ ಆದರೆ ಕೆಲವು ಗೊಂದಲದೊಂದಿಗೆ | ಅಸ್ಪಷ್ಟವಾದ ವಿಧಾನ, ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿಕೆ ಇಲ್ಲ |
|
||||
|
||||
## ಸಲ್ಲಿಕೆ ಮಾರ್ಗದರ್ಶಿಗಳು
|
||||
|
||||
1. ಕೊಟ್ಟ ಉದಾಹರಣೆಗಳೊಂದಿಗೆ ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ಸಂಪೂರ್ಣವಾಗಿ **ಪರೀಕ್ಷಿಸಿ**
|
||||
2. ನಿಮ್ಮ ಲಾಜಿಕ್ ಅನ್ನು ವಿವರಿಸುವ **ಕಾಮೆಂಟುಗಳನ್ನು ಸೇರಿಸಿ**, ವಿಶೇಷವಾಗಿ ಶರತಿ ಹೇಳಿಕೆಗಳಿಗೆ
|
||||
3. **ಔಟ್ಪುಟ್** ನಿರೀಕ್ಷಿತ ಫಲಿತಾಂಶಕ್ಕೆ ಹೊಂದಿರುತ್ತದಾ ಎಂದು ಪರಿಶೀಲಿಸಿ: `['A', 'B-', 4, 5]`
|
||||
4. ಖಾಲಿ ಅರೆಗಳು ಅಥವಾ ಅಪ್ರತೀಕ್ಷಿತ ಡೇಟಾ ಪ್ರಕಾರಗಳಂತಹ ಅತಿಕ್ರಮಗಳನ್ನು **ಗಮನಿಸಿ**
|
||||
|
||||
> 💡 **ಟಿಪ್**: ಸರಳವಾಗಿ ಪ್ರಾರಂಭಿಸಿ! ಮೊದಲಿಗೆ ಬೇಸಿಕ್ ಕಾರ್ಯಕ್ಷಮತೆಯಿಂದ ಪ್ರಾರಂಭಿಸಿ, ನಂತರ ಹೆಚ್ಚು ವ್ಯವಹಾರಿಕ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸೇರಿಸಿ. ಈ ಪಾಠದಲ್ಲಿ ಕಲಿತ ನಿಯಮಗಳನ್ನು ಬಳಸಿ ನಿರ್ಧಾರಾತ್ಮಕ ಲಾಜಿಕ್ ಅಭ್ಯಾಸ ಮಾಡುವ ಗುರಿಯನ್ನು ನೆನಪಿರಲಿ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತಪಾಸಣೆ**:
|
||||
ಈ ದಸ್ತಾವೇಜು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಿದ್ದು, ನಾವು ಬರೆಹದ ಶುದ್ಧತೆಗೆ ಪ್ರಯತ್ನಿಸುವುದಾದರೆも ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳು ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳನ್ನು ಒಳಗೊಂಡಿರಬಹುದು. ಮಾಲಿನ್ಯ ಭಾಷೆಯಲ್ಲಿ ಮೂಲ ದಸ್ತಾವೇಜನ್ನು ಪ್ರಾಮಾಣಿಕ ಮೂಲವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವಪೂರ್ಣ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ಗಂಭೀರತೆಗಳು ಅಥವಾ ತಪ್ಪು ಅರ್ಥೈಸುವಿಕೆಗಾಗಿ ನಾವು ಹೊಣೆಗಾರರಾಗಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,124 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "8abcada0534e0fb3a7556ea3c5a2a8a4",
|
||||
"translation_date": "2026-01-08T13:11:18+00:00",
|
||||
"source_file": "2-js-basics/4-arrays-loops/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಅರೇಸ್ ಮತ್ತು ಲೂಪ್ ಗಳ ಅಸೈನ್ಮೆಂಟ್
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ಅರೇಸ್ ಮತ್ತು ಲೂಪ್ಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವ ಅಭ್ಯಾಸ ಮಾಡಲು ಕೆಳಗಿನ ವ್ಯಾಯಾಮಗಳನ್ನು ಪೂರ್ಣಗೊಳಿಸಿ. ಪ್ರತಿ ವ್ಯಾಯಾಮ ಪಾಠದ ಸಂಪ್ರದಾಯಗಳ ಮೇಲೆ ಅನುಸರಿಸುತ್ತದೆ ಮತ್ತು ನೀವು ವಿಭಿನ್ನ ಲೂಪ್ ಪ್ರಕಾರಗಳು ಮತ್ತು ಅರೇ ಮೆತೃಡ್ಗಳನ್ನು ಅನ್ವಯಿಸಲು ಪ್ರೇರೇಪಿಸುತ್ತದೆ.
|
||||
|
||||
### ವ್ಯಾಯಾಮ 1: ಸಂಖ್ಯೆ ಮಾದರಿ ರಚನೆ
|
||||
1-20ರ ನಡುವೆ ಪ್ರತಿ 3ನೇ ಸಂಖ್ಯೆಯನ್ನು ಸೂಚಿಸುತ್ತ ಹಾಗೂ ಅದನ್ನು ಕಾನ್ಸೋಲ್ ಗೆ ಮುದ್ರಿಸುವ ಒಂದು ಪ್ರೋಗ್ರಾಂ ರಚಿಸಿ.
|
||||
|
||||
**ಅವಶ್ಯಕತೆಗಳು:**
|
||||
- ಕಸ್ಟಮ್ ಹೆಚ್ಚಣೆ ಹೊಂದಿರುವ `for` ಲೂಪ್ ಬಳಸಿ
|
||||
- ಬಳಕೆದಾರನಿಗೆ ಅನುಕೂಲಕರ ಆಕಾರದಲ್ಲಿ ಸಂಖ್ಯೆಗಳ ಪ್ರದರ್ಶನ ಮಾಡಿ
|
||||
- ನಿಮ್ಮ ತರ್ಕವನ್ನು ವಿವರಿಸುವ ವಿವರಣಾತ್ಮಕ ಕಾಮೆಂಟ್ಗಳನ್ನು ಸೇರಿಸಿ
|
||||
|
||||
**ನಿರೀಕ್ಷಿತ ಔಟ್ಪುಟ್:**
|
||||
```
|
||||
3, 6, 9, 12, 15, 18
|
||||
```
|
||||
|
||||
> **ಟಿಪ್:** ನಿಮ್ಮ for ಲೂಪ್ನ ಇಟರೇಷನ್-ವಿವರಣೆಯನ್ನು ಬದಲಿಸಿ ಸಂಖೇಯಗಳನ್ನು ಬಿಡಿಸುವಂತೆ ಮಾಡಿ.
|
||||
|
||||
### ವ್ಯಾಯಾಮ 2: ಅರೇ ವಿಶ್ಲೇಷಣೆ
|
||||
ಕನಿಷ್ಠ 8 ವಿಭಿನ್ನ ಸಂಖ್ಯೆಗಳ ಅರೇ ರಚಿಸಿ ಮತ್ತು ಡೇಟಾವನ್ನು ವಿಶ್ಲೇಷಿಸುವ ಕಾರ್ಯಗಳನ್ನು ಬರೆಯಿರಿ.
|
||||
|
||||
**ಅವಶ್ಯಕತೆಗಳು:**
|
||||
- ಕನಿಷ್ಠ 8 ಮೌಲ್ಯಗಳೊಂದಿಗೆ `numbers` ಎನ್ನುವ ಅರೇ ರಚಿಸಿ
|
||||
- ಅತಿ ದೊಡ್ಡ ಸಂಖ್ಯೆಯನ್ನು retourನ ಮಾಡುವ `findMaximum()` ಎನ್ನುವ Function ಬರೆಯಿರಿ
|
||||
- ಅತಿ ಕಡಿಮೆ ಸಂಖ್ಯೆಯನ್ನು retourನ ಮಾಡುವ `findMinimum()` ಎನ್ನುವ Function ಬರೆಯಿರಿ
|
||||
- ಎಲ್ಲಾ ಸಂಖ್ಯೆಗಳ ಒಟ್ಟು retourನ ಮಾಡುವ `calculateSum()` ಎನ್ನುವ Function ಬರೆಯಿರಿ
|
||||
- ಪ್ರತಿಯೊಂದು Function ಅನ್ನು ಪರೀಕ್ಷಿಸಿ ಮತ್ತು ಫಲಿತಾಂಶಗಳನ್ನು ಪ್ರದರ್ಶಿಸಿ
|
||||
|
||||
**ಬೋನಸ್ ಚಾಲೆಂಜ್:** ಅರೇಯಲ್ಲಿ ಎರಡನೇ ಅತಿ ದೊಡ್ಡ ಸಂಖ್ಯೆಯನ್ನು ಕಂಡುಹಿಡಿಯುವ Function ರಚಿಸಿ.
|
||||
|
||||
### ವ್ಯಾಯಾಮ 3: ಶ್ರೇಣಿ ಅರೇ ಪ್ರಕ್ರಿಯೆ
|
||||
ನಿಮ್ಮ ಪ್ರಿಯ ಸಿನಿಮಾಗಳು/ಪುಸ್ತಕಗಳು/ಪಾಡ್ ಗಳೆಯ ಅರೇ ರಚಿಸಿ ಮತ್ತು ವಿಭಿನ್ನ ಲೂಪ್ ಪ್ರಕಾರಗಳನ್ನು ಅಭ್ಯಾಸ ಮಾಡಿ.
|
||||
|
||||
**ಅವಶ್ಯಕತೆಗಳು:**
|
||||
- ಕನಿಷ್ಠ 5 ಸ್ಟ್ರಿಂಗ್ ಮೌಲ್ಯಗಳೊಂದಿಗೆ ಅರೇ ರಚಿಸಿ
|
||||
- ಸಂಖ್ಯೆಗಳೊಂದಿಗೆ ಐಟಂಗಳನ್ನು ಪ್ರದರ್ಶಿಸಲು ಪಾರಂಪರಿಕ `for` ಲೂಪ್ ಬಳಸಿ (1. ಐಟಂ ಹೆಸರು)
|
||||
- ಐಟಂಗಳನ್ನು ದೊಡ್ಡ ಅಕ್ಷರಗಳಲ್ಲಿ ಪ್ರದರ್ಶಿಸಲು `for...of` ಲೂಪ್ ಬಳಸಿ
|
||||
- ಒಟ್ಟು ಅಕ್ಷರಗಳನ್ನು ಎಣಿಸಲು ಮತ್ತು ಪ್ರದರ್ಶಿಸಲು `forEach()` ಮೆತೃಡ್ ಬಳಸಿ
|
||||
|
||||
**ಉದಾಹರಣೆ ಔಟ್ಪುಟ್:**
|
||||
```
|
||||
Traditional for loop:
|
||||
1. The Matrix
|
||||
2. Inception
|
||||
3. Interstellar
|
||||
|
||||
For...of loop (uppercase):
|
||||
THE MATRIX
|
||||
INCEPTION
|
||||
INTERSTELLAR
|
||||
|
||||
Character count:
|
||||
Total characters across all titles: 42
|
||||
```
|
||||
|
||||
### ವ್ಯಾಯಾಮ 4: ಡೇಟಾ ಫಿಲ್ಟರಿಂಗ್ (ಬೃಹತ್)
|
||||
ವಿದ್ಯಾರ್ಥಿಗಳ ಪ್ರತಿನಿಧಿಸುವ ಅಬ್ಜೆಕ್ಟ್ಗಳ ಅರೇ ಇವುಗಳನ್ನು ಪ್ರಕ್ರಿಯಿಸುವ ಪ್ರೋಗ್ರಾಂ ರಚಿಸಿ.
|
||||
|
||||
**ಅವಶ್ಯಕತೆಗಳು:**
|
||||
- ಕನಿಷ್ಠ 5 ವಿದ್ಯಾರ್ಥಿ ಅಬ್ಜೆಕ್ಟ್ಗಳಿಂದ `name`, `age`, `grade` ಎಂಬ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಹೊಂದಿರುವ ಅರೇ ರಚಿಸಿ
|
||||
- 18 ವರ್ಷ ಅಥವಾ ಹೆಚ್ಚುವಾಗಿರುವ ವಿದ್ಯಾರ್ಥಿಗಳನ್ನು ಹುಡುಕಲು ಲೂಪ್ಗಳ ಬಳಕೆ ಮಾಡಿ
|
||||
- ಎಲ್ಲಾ ವಿದ್ಯಾರ್ಥಿಗಳ ಸರಾಸರಿ ಗ್ರೇಡ್ ಲೆಕ್ಕ ಹಾಕಿ
|
||||
- 85ರ ಮೇಲಾಗಿರುವ ಗ್ರೇಡ್ಗಳೊಂದಿಗೆ ವಿದ್ಯಾರ್ಥಿಗಳ ಹೊಸ ಅರೇ ರಚಿಸಿ
|
||||
|
||||
**ಉದಾಹರಣಾ ರಚನೆ:**
|
||||
```javascript
|
||||
const students = [
|
||||
{ name: "Alice", age: 17, grade: 92 },
|
||||
{ name: "Bob", age: 18, grade: 84 },
|
||||
// ಮತ್ತಷ್ಟು ವಿದ್ಯಾರ್ಥಿಗಳನ್ನು ಸೇರಿಸಿ...
|
||||
];
|
||||
```
|
||||
|
||||
## ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ಪರೀಕ್ಷಿಸುವಿಕೆ
|
||||
|
||||
ನಿಮ್ಮ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು:
|
||||
1. ಪ್ರತಿಯೊಂದು ವ್ಯಾಯಾಮವನ್ನು ನಿಮ್ಮ ಬ್ರೌಸರ್ ಕಾನ್ಸೋಲ್ನಲ್ಲಿ ಕಳಿಸಿ
|
||||
2. ಔಟ್ಪುಟ್ಗಳು ನಿರೀಕ್ಷಿತ ಫಲಿತಾಂಶಗಳಿಗೆ ಹೊಂದಿಕೆಯಾಗುತ್ತಿವೆಯೇ ಎಂದು ದೃಢೀಕರಿಸಿ
|
||||
3. ವಿಭಿನ್ನ ಡೇಟಾ ಸೆಟ್ಗಳೊಂದಿಗೆ ಪರೀಕ್ಷಿಸಿ
|
||||
4. ನಿಮ್ಮ ಕೋಡ್ ಅಸಾಧಾರಣ ಸಂದರ್ಭಗಳನ್ನು (ಖಾಲಿ ಅರೇಗಳು, ಏಕತ್ವ ಅಂಶಗಳು) ನಿಭಾಯಿಸುವುದನ್ನು ಪರಿಶೀಲಿಸಿ
|
||||
|
||||
## ಸಲ್ಲಿಕೆ ಮಾರ್ಗಸೂಚಿಗಳು
|
||||
|
||||
ನಿಮ್ಮ ಸಲ್ಲಿಕೆಯಲ್ಲಿ ಕೆಳಗಿನವುಗಳನ್ನು ಸೇರಿಸಿ:
|
||||
- ಪ್ರತಿಯೊಂದು ವ್ಯಾಯಾಮಕ್ಕೆ ಉತ್ತಮವಾಗಿ ಕಾಮೆಂಟ್ಚೇಷಿತ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕೋಡ್
|
||||
- ನಿಮ್ಮ ಪ್ರೋಗ್ರಾಂಗಳು ಚಾಲನೆಯಲ್ಲಿರುವ ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳು ಅಥವಾ ಪಠ್ಯ ಔಟ್ಪುಟ್ನು
|
||||
- ಪ್ರತಿಯೊಂದು ಕಾರ್ಯಕ್ಕಾಗಿ ನೀವು ಆಯ್ದ ಲೂಪ್ ಪ್ರಕಾರ ಮತ್ತು ಕಾರಣದ ಸಂಕ್ಷಿಪ್ತ ವಿವರಣೆ
|
||||
|
||||
## ಮೌಲ್ಯಮಾಪನ ಕ್ರಮ
|
||||
|
||||
| ಮಾನದಂಡಗಳು | ಸರ್ಪ್ರಶಸ್ತ (3 ಅಂಕಗಳು) | ಯೋಗ್ಯ (2 ಅಂಕಗಳು) | ಸುಧಾರಣೆಗೆ ಅಗತ್ಯ (1 ಅಂಕ) |
|
||||
| -------- | -------------------- | ------------------- | --------------------------- |
|
||||
| **ಕಾರ್ಯಕ್ಷಮತೆ** | ಎಲ್ಲಾ ವ್ಯಾಯಾಮಗಳು ಬೋನಸ್ ಚಾಲೆಂಜ್ಗಳೊಂದಿಗೆ ಸರಿಯಾಗಿ ಪೂರ್ಣಗೊಂಡಿವೆ | ಎಲ್ಲಾ ಅಗತ್ಯ ವ್ಯಾಯಾಮಗಳು ಸರಿಯಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ | ಕೆಲವು ವ್ಯಾಯಾಮಗಳು ಅಪೂರ್ಣ ಅಥವಾ ದೋಷಗಳಿವೆ |
|
||||
| **ಕೋಡ್ ಗುಣಮಟ್ಟ** | ಸ್ವಚ್ಛ, ಉತ್ತಮವಾಗಿ ಸಂಘಟಿತ ಕೋಡ್ ಮತ್ತು ವಿವರಣಾತ್ಮಕ ಚರವರನ್ನು ಬಳಸಲಾಗಿದೆ | ಕೋಡ್ ಕೆಲಸ ಮಾಡುತ್ತದೆ ಆದರೆ ಸ್ವಚ್ಛವಾಗಿರಬಾರದು | ಕೋಡ್ ಅಸ್ವತಂತ್ರ ಅಥವಾ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಕಷ್ಟ |
|
||||
| **ಕಾಮೆಂಟ್ಗಳು** | ತರ್ಕ ಮತ್ತು ನಿರ್ಣಯಗಳನ್ನು ವಿವರಿಸುವ ವ್ಯಾಪಕ ಕಾಮೆಂಟ್ಗಳು | ಮೂಲಭೂತ ಕಾಮೆಂಟ್ಗಳು ಇದ್ದವು | ಕನಿಷ್ಟ ಅಥವಾ ಕಾಮೆಂಟ್ಗಳಿಲ್ಲ |
|
||||
| **ಲೂಪ್ ಬಳಕೆ** | ವಿಭಿನ್ನ ಲೂಪ್ ಪ್ರಕಾರಗಳ ಅರ್ಥವನ್ನು ಸೂಕ್ತವಾಗಿ ಪ್ರದರ್ಶಿಸುತ್ತದೆ | ಲೂಪ್ಗಳನ್ನು ಸರಿಯಾಗಿ ಬಳಸುತ್ತದೆ ಆದರೆ ನಿರ್ಬಂಧಿತ ವಿಧಗಳು | ತಪ್ಪು ಅಥವಾ ಅಸಮರ್ಥ ಲೂಪ್ ಬಳಕೆ |
|
||||
| **ಪರೀಕ್ಷಣೆ** | ಅನೇಕ ದೃಶ್ಯಗಳೊಂದಿಗೆ ಸೂಕ್ಷ್ಮ ಪರೀಕ್ಷೆಯ ಸಾಕ್ಷ್ಯಗಳು | ಮೂಲಭೂತ ಪರೀಕ್ಷೆ ಪ್ರದರ್ಶಿತವಾಗಿದೆ | ಪರೀಕ್ಷೆಯ ಅನಿಷ್ಟ ದ್ರಷ್ಟಾಂತಗಳಿಲ್ಲ |
|
||||
|
||||
## ಪ್ರತ್ಯಾಮ್ನ ಪ್ರಶ್ನೆಗಳು
|
||||
|
||||
ವ್ಯಾಸಯ ನಂತರ, ತಿಳಿದುಕೊಳ್ಳಿ:
|
||||
1. ಯಾವ ಲೂಪ್ ಪ್ರಕಾರ ಬಳಸುವುದು ಸ್ವಾಭಾವಿಕವಾಗಿ ಅನಿಸುತ್ತಿತ್ತು ಮತ್ತು ಏಕೆ?
|
||||
2. ಅರೇಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವಾಗ ನೀವು ಎದುರಿಸಿದ ಸವಾಲುಗಳು ಏನೆಂದು?
|
||||
3. ಈ ನಿಪುಣತೆಗಳನ್ನು ನೈಜ ಜಾಗತಿಕ ವೆಬ್ ಡೆವಲಪ್ಮೆಂಟ್ ಯೋಜನೆಗಳಿಗೆ ಹೇಗೆ ಅನ್ವಯಿಸಬಹುದು?
|
||||
4. ಪ್ರಕಾರ ಕಾರ್ಯಕ್ಷಮತೆಗಾಗಿ ನಿಮ್ಮ ಕೋಡ್ ಗಣಿತಮಾಡಬೇಕಾದರೆ ನೀವು ಏನು ವಿಭಿನ್ನ ಮಾಡುತ್ತೀರಿ?
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತ್ಯಜಿಸಿ ಸೂಚನೆ**:
|
||||
ಈ ದಸ್ತಾವೇಜನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಗಾಗಿ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ದಸ್ತಾವೇಜು ಅದರ ಸ್ಥಳೀಯ ಭಾಷೆಯಲ್ಲಿ ಅಧಿಕಾರಿಗಳಿಗೆ ಆದ ಮೂಲದಂತೆ ಪರಿಗಣಿಸಲಾಗುವುದು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ಅರ್ಥಗರ್ಭಿತ ತೊಂದರೆಗಳಿಗೆ ನಾವು ಹೊಣೆಗಾರರಾಗಿದ್ದೇವೆ ಎಂಬುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,30 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "cc9e70a2f096c67389c8acff1521fc27",
|
||||
"translation_date": "2026-01-08T10:45:23+00:00",
|
||||
"source_file": "2-js-basics/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಪರಿಚಯ
|
||||
|
||||
ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ವೆಬ್ನ ಭಾಷೆ. ಈ ನಾಲ್ಕು ಪಾಠಗಳಲ್ಲಿ, ನೀವು ಅದರ ಮೂಲ ತತ್ವಗಳನ್ನು ಕಲಿಯುತ್ತೀರಿ.
|
||||
|
||||
### ವಿಷಯಗಳು
|
||||
|
||||
1. [ಚರಗಳು ಮತ್ತು ಡೇಟಾ ಪ್ರಕಾರಗಳು](1-data-types/README.md)
|
||||
2. [ಫಂಕ್ಷನ್ಗಳು ಮತ್ತು ವಿಧಾನಗಳು](2-functions-methods/README.md)
|
||||
3. [ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ನೊಂದಿಗೆ ನಿರ್ಧಾರಗಳನ್ನು ಕೈಗೊಳ್ಳುವುದು](3-making-decisions/README.md)
|
||||
4. [IOರೇಗಳು ಮತ್ತು ಲೂಪ್ಗಳ](4-arrays-loops/README.md)
|
||||
|
||||
### ಋಣಗಳು
|
||||
|
||||
ಈ ಪಾಠಗಳನ್ನು ♥️ಧ್ಯಾ ತಮ್ಮಿಂದ ಬರೆಯಲಾಗಿದೆ [ಜೆಸ್ಮೀನ್ ಗ್ರೀನವೇ](https://twitter.com/paladique), [ಕ್ರಿಸ್ಟೋಫರ್ ಹ್ಯಾರಿಸನ್](https://twitter.com/geektrainer) ಮತ್ತು [ಕ್ರಿಸ್ ನೋರಿಂಗ್](https://twitter.com/chris_noring)
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ನಿಮ್ಮೆಚ್ಚರಿಕೆ**:
|
||||
ಈ ದಸ್ತಾವೇಜು [Co-op Translator](https://github.com/Azure/co-op-translator) ಎಂಬ AI ಭಾಷಾಂತರ ಸೇವೆಯನ್ನು ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಮಗೆ ನಿಖರತೆಯನ್ನು ಸಾಧಿಸಲು ಪ್ರಯತ್ನವಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಸಂಗತಿಗಳು ಇರುವ ಸಾಧ್ಯತೆ ಇದೆ ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ದಸ್ತಾವೇಜಿನ ಸ್ಥಳೀಯ ಭಾಷೆಯ ಪ್ರತಿಯನ್ನು ಪ್ರಾಧಿಕಾರ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದದ ಸೇವೆ ಪಡೆದುಕೊಳ್ಳುವುದು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ஏற்பட்ட ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಗರ್ಭಿತತೆಗಳಿಗೆ ಅಥವಾ ಕಲಹಗಳಿಗೆ ನಾವು ಜವಾಬ್ದಾರಿಯಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,139 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "947ca5ce7c94aee9c7de7034e762bc17",
|
||||
"translation_date": "2026-01-08T19:08:26+00:00",
|
||||
"source_file": "3-terrarium/3-intro-to-DOM-and-closures/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# DOM элемೆಂಟ್ ಪರಿಶೀಲನೆ ಅಸೈನ್ಮೆಂಟ್
|
||||
|
||||
## ಅವಲೋಕನ
|
||||
|
||||
ನೀವು ಈಗಾಗಲೇ DOM ವ್ಯವಸ್ಥಾಪನೆಯ ಶಕ್ತಿ ಅನುಭವಿಸಿದ್ದು, DOM ಇಂಟರ್ಫೇಸ್ಗಳ ವಿಶಾಲ ಜಗತ್ತನ್ನು ಅನ್ವೇಷಿಸುವ ಸಮಯ ಬಂದಿದೆ. ಈ ಅಸೈನ್ಮೆಂಟ್, ಕೇವಲ ಎಲೆಮೆಂಟ್ಗಳನ್ನು ಸೆಳೆಯುವುದನ್ನು ಮೀರಿ ವಿವಿಧ ವೆಬ್ ತಂತ್ರಜ್ಞಾನಗಳು DOM ಜೊತೆ ಹೇಗೆ ಸಂವಹನ ಮಾಡುತ್ತವೆ ಎಂಬುದರ ನಿಮ್ಮ ಅರಿವನ್ನು ಗಾಢಗೊಳಿಸುತ್ತದೆ.
|
||||
|
||||
## ಅಧ್ಯಯನ ಉದ್ದೇಶಗಳು
|
||||
|
||||
ಈ ಅಸೈನ್ಮೆಂಟ್ ಪೂರ್ಣಗೊಳಿಸುವ ಮೂಲಕ ನೀವು:
|
||||
- **ಶೋಧನೆ** ಮಾಡಿ ನಿರ್ದಿಷ್ಟ DOM ಇಂಟರ್ಫೇಸ್ನ ದಾಳಿದೃಷ್ಟಿ ಪಡೆಯುತ್ತೀರಿ
|
||||
- **ವಿಶ್ಲೇಷಣೆ** ಮಾಡಿ DOM ವ್ಯವಸ್ಥಾಪನೆಯ ನೈಜ ಜಾಗತಿಕ ಅನುಷ್ಠಾನಗಳನ್ನು
|
||||
- **ಸಂಪರ್ಕಿಸಲು** ಸಿದ್ಧಾಂತಾತ್ಮಕ ತತ್ವಗಳನ್ನು ವ್ಯವಹಾರಿಕ ಅನ್ವಯಗಳಿಗೆ
|
||||
- **ಅಭಿವೃದ್ಧಿಪಡಿಸಲು** ತಾಂತ್ರಿಕ ದಾಖಲೆಗೈದಿಕತೆ ಮತ್ತು ವಿಶ್ಲೇಷಣೆಯಲ್ಲಿ ಕೌಶಲ್ಯಗಳನ್ನು
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
### ಹಂತ 1: ನಿಮ್ಮ DOM ಇಂಟರ್ಫೇಸ್ ಆಯ್ಕೆಮಾಡಿ
|
||||
|
||||
MDN ನ ವಿಸ್ತೃತ [DOM ಇಂಟರ್ಫೇಸ್ ಪಟ್ಟಿ](https://developer.mozilla.org/docs/Web/API/Document_Object_Model) ಭೇಟಿ ನೀಡಿ ಮತ್ತು ಆಸಕ್ತಿಯ ಇಂಟರ್ಫೇಸ್ ಆಯ್ಕೆಮಾಡಿ. ನಮೂದಿಸಿದ ವರ್ಗಗಳಿಂದ ಆಯ್ಕೆ ಮಾಡುವುದು ವಿಭಿನ್ನತೆಗಾಗಿ ಪರಿಗಣಿಸಿ:
|
||||
|
||||
**ಆರಂಭಿಕರಿಗೆ ಅನುಕೂಲಕರ ಆಯ್ಕೆಗಳು:**
|
||||
- `Element.classList` - CSS ಕ್ಲಾಸುಗಳನ್ನು ಗತಿಶೀಲವಾಗಿ ನಿರ್ವಹಣೆ
|
||||
- `Document.querySelector()` - ಉನ್ನತ ಎಲೆಮೆಂಟ್ ಆಯ್ಕೆ
|
||||
- `Element.addEventListener()` - ಪಾಯಿಂಟರ್ ಘಟನೆಗಳೆ ಇತರ ಘಟನೆಗಳನ್ನು ನಿರ್ವಹಣೆ
|
||||
- `Window.localStorage` - ಕ್ಲಯಿಂಟ್-ಸೈಡ್ ಡೇಟಾ ಸಂಗ್ರಹಣೆ
|
||||
|
||||
**ಮಧ್ಯಮ ಮಟ್ಟದ ಸವಾಲುಗಳು:**
|
||||
- `Intersection Observer API` - ಎಲೆಮೆಂಟ್ ದೃಶ್ಯಮಾನತೆಯನ್ನು ಕಂಡುಹಿಡಿಯುವುದು
|
||||
- `MutationObserver` - DOM ಬದಲಾವಣೆಗಳ ಮೇಲ್ವಿಚರಣೆ
|
||||
- `Drag and Drop API` - ನಮ್ಮ ಪಾಯಿಂಟರ್ ಆಧಾರಿತ ವಿಧಾನಕ್ಕೆ ಪರ್ಯಾಯ
|
||||
- `Geolocation API` - ಬಳಕೆದಾರ ಸ್ಥಳವನ್ನು ಪಡೆಯುವುದು
|
||||
|
||||
**ಆಧುನಿಕ ಅನ್ವೇಷಣೆ:**
|
||||
- `Web Components` - ಕಸ್ಟಂ ಎಲೆಮೆಂಟ್ಗಳು ಮತ್ತು ಛಾಯಲ್ಪದ DOM
|
||||
- `Canvas API` - ಪ್ರೋಗ್ರಾಮ್ಮ್ಯಾಟಿಕ್ ಗ್ರಾಫಿಕ್ಸ್
|
||||
- `Web Workers` - ಹಿನ್ನೆಲೆ ಪ್ರোসೆಸಿಂಗ್
|
||||
- `Service Workers` - ಆಫ್ಲೈನ್ ಕಾರ್ಯಕ್ಷಮತೆ
|
||||
|
||||
### ಹಂತ 2: ಶೋಧನೆ ಮತ್ತು ದಾಖಲೆ ತಯಾರಿಸಿ
|
||||
|
||||
300-500 ಪದಗಳ ವಿವರವಾದ ವಿಶ್ಲೇಷಣೆಯನ್ನು ರಚಿಸಿ, ಇದರಲ್ಲಿ ಒಳಗೊಂಡಿರಲಿ:
|
||||
|
||||
#### ತಾಂತ್ರಿಕ ಅವಲೋಕನ
|
||||
- ನೀವು ಆಯ್ಕೆಮಾಡಿದ ಇಂಟರ್ಫೇಸ್ ಏನನ್ನು ಮಾಡುತ್ತದೆ ಎಂಬುದನ್ನು ಸ್ಪಷ್ಟವಾಗಿ, ಆರಂಭಿಕರಿಗೆ ಅನುಕೂಲಕರ ಭಾಷೆಯಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಿ
|
||||
- ಒದಗಿಸುವ ಪ್ರಮುಖ ವಿಧಾನಗಳು, ಗುಣಲಕ್ಷಣಗಳು, ಅಥವಾ ಘಟನೆಗಳನ್ನು ವಿವರಿಸಿ
|
||||
- ಅದು ಪರಿಹರಿಸುವ ಪ್ರಕಾರದ ಸಮಸ್ಯೆಗಳನ್ನು ವರ್ಣಿಸಿ
|
||||
|
||||
#### ನೈಜ ಜಾಗತಿಕ ಅನುಷ್ಠಾನ
|
||||
- ನಿಮ್ಮ ಆಯ್ಕೆ ಇಂಟರ್ಫೇಸ್ ಬಳಕೆಮಾಡಿರುವ ವೆಬ್ಸೈಟ್ ಕಂಡುಹಿಡಿಯಿರಿ (ಕೋಡ್ ಪರಿಶೀಲನೆ ಅಥವಾ ಉದಾಹರಣೆಗಳ ಶೋಧನೆ)
|
||||
- ಸಾಧ್ಯವಿದ್ದರೆ ಕೋಡ್ ತುಣುಕುಗಳೊಂದಿಗೆ ನಿರ್ದಿಷ್ಟ ಅನುಷ್ಠಾನವನ್ನು ದಾಖಲಿಸಿ
|
||||
- ಡೆವಲಪರ್ಗಳು ಈ ವಿಧಾನವನ್ನು ಯಾಕೆ ಆಯ್ಕೆಮಾಡಿದ್ದಾರೆ ಎಂಬುದನ್ನು ವಿಶ್ಲೇಷಿಸಿ
|
||||
- ಇದು ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ಹೇಗೆ ಸುಧಾರಿಸುತ್ತದೆ ಎಂದು ವಿವರಿಸಿ
|
||||
|
||||
#### ವ್ಯವಹಾರಿಕ ಅನ್ವಯ
|
||||
- ನಿಮ್ಮ ಇಂಟರ್ಫೇಸನ್ನು ತೆರಾರಿಯಂ ಪ್ರಾಜೆಕ್ಟನಲ್ಲಿ ನಾವು ಬಳಸಿದ ತಂತ್ರಗಳಿಗೆ ಹೋಲಿಸಿ
|
||||
- ನಿಮ್ಮ ಇಂಟರ್ಫೇಸ್ನಿಂದ ತೆರಾರಿಯಂ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೇಗೆ ಸುಧಾರಿಸಬಹುದು ಅಥವಾ ವಿಸ್ತರಿಸಬಹುದು ಎಂಬ ಸಲಹೆ ನೀಡಿ
|
||||
- ಈ ಇಂಟರ್ಫೇಸ್ ಉಪಯುಕ್ತವಾಗಬಹುದಾದ ಇತರ ಪ್ರಾಜೆಕ್ಟ್ಗಳನ್ನು ಗುರುತಿಸಿ
|
||||
|
||||
### ಹಂತ 3: ಕೋಡ್ ಉದಾಹರಣೆ
|
||||
|
||||
ನಿಮ್ಮ ಇಂಟರ್ಫೇಸ್ ಕೆಲಸನಿರ್ವಹಣೆಯನ್ನು ತೋರಿಸುವ ಸರಳ, ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಕೋಡ್ ಉದಾಹರಣೆಯನ್ನು ಒಳಗೊಂಡಿರಲಿ. ಇದು:
|
||||
- **ಕಾರ್ಯನಿರ್ವಹಿಸುವುದು** - ಪರೀಕ್ಷಿಸಲಿದೆ ಸಮಯ 코드는 ನಿಜವಾಗಿಯೂ ಕಾರ್ಯನಿರ್ವಹಿಸಬೇಕು
|
||||
- **ಕಾಮೆಂಟುಗಳೊಂದಿಗೆ** - ಪ್ರತಿ ಭಾಗ ಏನು ಮಾಡುತ್ತದೆ ಎಂದು ವಿವರಿಸಿ
|
||||
- **ಸಂಬಂಧಿಸಿದ** - ಪ್ರಾಯೋಗಿಕ ಬಳಕೆಗೆ ಸಂಪರ್ಕ ಹೊಂದಿದ್ದಿರಲಿ
|
||||
- **ಆರಂಭಿಕರಿಗೆ ಅನುಕೂಲಕರ** - ವೆಬ್ ಅಭಿವೃದ್ಧಿ ಅಧ್ಯಯನ ಮಾಡುತ್ತಿದ್ದವರಿಗೂ ಅರ್ಥವಾಗುವಂತೆ ಇರಲಿ
|
||||
|
||||
## ಸಲ್ಲಿಕೆಯ ವಿನ್ಯಾಸ
|
||||
|
||||
ನಿಮ್ಮ ಸಲ್ಲಿಕೆಯನ್ನು ಸ್ಪಷ್ಟ ಶೀರ್ಷಿಕೆಗಳೊಂದಿಗೆ ರಚಿಸಿ:
|
||||
|
||||
```markdown
|
||||
# [Interface Name] DOM Investigation
|
||||
|
||||
## What It Does
|
||||
[Technical overview]
|
||||
|
||||
## Real-World Example
|
||||
[Website analysis and implementation details]
|
||||
|
||||
## Code Demonstration
|
||||
[Your working example with comments]
|
||||
|
||||
## Reflection
|
||||
[How this connects to our terrarium project and future applications]
|
||||
```
|
||||
|
||||
## ಮೌಲ್ಯಮಾಪನ ಕರಕಟ
|
||||
|
||||
| ಮಾನದಂಡ | ಔತಣ (A) | ನಿಪುಣ (B) | ಅಭಿವೃದ್ದಿಗೊಳ್ಳುತ್ತಿರೋ (C) | ಸುಧಾರಣೆಯ ಅಗತ್ಯ (D) |
|
||||
|----------|-----------|------------|----------------|--------------------|
|
||||
| **ತಾಂತ್ರಿಕ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿಕೆ** | ಖಚಿತ ವಿವರಣೆಗಳು ಮತ್ತು ಸರಿಯಾದ ಪ/rem ಉಪಯೋಗಗಳೊಂದಿಗೆ ಆಳವಾದ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿಕೆ ತೋರಿಸುತ್ತದೆ | ಬಹುಮತವಾಗಿ ಸರಿಯಾದ ವಿವರಣೆಗಳೊಂದಿಗೆ ಉತ್ತಮ ಅರ್ಥಪಟುತನ ತೋರಿಸುತ್ತದೆ | ಬೇಸಿಕ್ ಅರ್ಥಪಟುತನ ಕಾರಣ ಕೆಲವು ಗಡಿಬಿಡಿಗಳು | ಪ್ರಮುಖ ದೋಷಗಳೊಂದಿಗೆ ಸೀಮಿತ ಅರ್ಥಪಟುತನ |
|
||||
| **ನೈಜ ಜಾಗತಿಕ ವಿಶ್ಲೇಷಣೆ** | ನೈಜ ಅನುಷ್ಠಾನದ ವಿಶೇಷ ಉದಾಹರಣೆಗಳನ್ನು ಗುರುತಿಸಿ ಮತ್ತು ಸಂಪೂರ್ಣ ವಿಶ್ಲೇಷಣೆ ಮಾಡುತ್ತದೆ | ಪರ್ಯಾಯ ವಿಶ್ಲೇಯನದೊಂದಿಗೆ ನೈಜ ಉದಾಹರಣೆಯನ್ನು ಕಂಡುಹಿಡಿಯುತ್ತದೆ | ಉದಾಹರಣೆ ಕಂಡುಹಿಡಿದರೂ, ವಿಶ್ಲೇಷಣೆ ಆಳದಲ್ಲಿಲ್ಲ | ಸಂಪೂರ್ಣವಾಗಿ ಸ್ಪಷ್ಟವಿಲ್ಲದ ಅಥವಾ ತಪ್ಪು ನೈಜ ಜಾಗತಿಕ ಸಂಪರ್ಕ |
|
||||
| **ಕೋಡ್ ಉದಾಹರಣೆ** | ಕಾರ್ಯನಿರ್ವಹಣೆಯಾದ, ಚೆನ್ನಾಗಿ ಕಾಮೆಂಟ್ ಮಾಡಿದ ಕೋಡ್ ಇಂಟರ್ಫೇಸ್ ಸೃಷ್ಟಿ ಮಾಡುತ್ತದೆ | ಸಮರ್ಪಕ ಕಾಮೆಂಟ್ಗಳೊಂದಿಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಕೋಡ್ | ಕೋಡ್ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಆದರೆ ಡಾಕ್ಯುಮೆಂಟೇಷನ್ ಉತ್ತಮವಾಗಿರಬೇಕು | ಕೋಡ್ ಎರರ್ಗಳಿರುವ ಅಥವಾ ಅಪರಿಚ್ಛೇದ ವಿವರಣೆ |
|
||||
| **ಲೇಖನ ಗುಣಮಟ್ಟ** | ಸ್ಪಷ್ಟ, ಆಕರ್ಷಕ ಬರವಣಿಗೆ ಸರಿಯಾದ ವಿನ್ಯಾಸ ಹಾಗೂ ತಾಂತ್ರಿಕ ಸಂವಹನ | ಚೆನ್ನಾಗಿ ಸಂಘಟಿತ ಮತ್ತು ಉತ್ತಮ ತಾಂತ್ರಿಕ ಬರವಣಿಗೆ | ಸಮರ್ಪಕ ಸಂಘಟನೆ ಮತ್ತು ಸ್ಪಷ್ಟತೆ | ಬಡ ಸಂಘಟನೆ ಅಥವಾ ಅಸ್ಪಷ್ಟ ಸಂವಹನ |
|
||||
| **ವಿಚಾರಮಯವಾಗಿ ಚಿಂತಿಸುವಿಕೆ** | ತತ್ತ್ವಗಳ ನಡುವೆ ಸೊಗಸಾದ ಸಂಪರ್ಕವನ್ನು ಮಾಡುತ್ತದೆ ಮತ್ತು ನವೀನ ಅನ್ವಯಗಳನ್ನು ಸಲಹೆ ಮಾಡುತ್ತದೆ | ಉತ್ತಮ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಚಿಂತನೆ ಮತ್ತು ಪ್ರಸ್ತುತ ಸಂಬಂಧತೆ ತೋರಿಸುತ್ತದೆ | ಕೆಲವು ವಿಶ್ಲೇಷಣೆಗಳಿವೆ ಆದರೆ ಆಳವೇ ಇಲ್ಲ | ತೀವ್ರ ಚಿಂತನೆಯ ಲೋಪ |
|
||||
|
||||
## ಯಶಸ್ಸಿನ ಸಲಹೆಗಳು
|
||||
|
||||
**ಶೋಧನಾ ತಂತ್ರಗಳು:**
|
||||
- **ಶುರುಮಾಡಿ** MDN ಡಾಕ್ಯುಮೆಂಟೇಶನ್ನಿಂದ ಪ್ರಾಮಾಣಿಕ ಮಾಹಿತಿಗಾಗಿ
|
||||
- **ಹುಡುಕಿ** GitHub ಅಥವಾ CodePen ನಲ್ಲಿ ಕೋಡ್ ಉದಾಹರಣೆಗಳನ್ನ
|
||||
- **ಪರಿಶೀಲಿಸಿ** ಜನಪ್ರಿಯ ವೆಬ್ಸೈಟ್ಗಳನ್ನು ಬ್ರೌಸರ್ ಡೆವಲಪರ್ ಸಾಧನಗಳ ಮೂಲಕ
|
||||
- **ನೋಡಿ** ವಿವರಾತ್ಮಕ ವಿಡಿಯೋ ಟ್ಯುಟೋರಿಯಲ್ಗಳೆಂದು
|
||||
|
||||
**ಬರವಣಿಗೆ ಮಾರ್ಗಸೂಚಿಗಳು:**
|
||||
- **ಬಳಸಿ** ನಿಮ್ಮ ಸ್ವಂತ ಪದಗಳನ್ನು, ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ನಕಲಿಸದೇ
|
||||
- ** ಸೇರಿಸಿ** ವಿಶೇಷ ಉದಾಹರಣೆಗಳು ಮತ್ತು ಕೋಡ್ ತುಣುಕುಗಳು
|
||||
- **ವಿವರಿಸಿ** ತಾಂತ್ರಿಕ ತತ್ವಗಳನ್ನು ಸ್ನೇಹಿತನಿಗೆ ಬೋಧಿಸುವಂತೆ
|
||||
- **ಸಂಪರ್ಕಿಸಿ** ನಿಮ್ಮ ಇಂಟರ್ಫೇಸ್ನನ್ನು ವಿಶಾಲ ವೆಬ್ ಅಭಿವೃದ್ಧಿ ತತ್ವಗಳಿಗೆ
|
||||
|
||||
**ಕೋಡ್ ಉದಾಹರಣೆ ಆಲೋಚನೆಗಳು:**
|
||||
- **ರಚಿಸಿ** ಇಂಟರ್ಫೇಸ್ಸ್ ಮುಖ್ಯ ಲಕ್ಷಣಗಳನ್ನು ತೋರಿಸುವ ಸರಳ ಡೆಮೊ
|
||||
- **ನಿರ್ಮಿಸಿ** ನಮ್ಮ ತೆರಾರಿಯಂ ಪ್ರಾಜೆಕ್ಟ್ನ ತತ್ವಗಳ ಮೇಲೆ
|
||||
- **ಗುರಿ** ಗತಿಶೀಲತೆಯನ್ನು ದೃಶ್ಯ ರಚನೆಯ ಮೇಲೆ ಇಡದೆ
|
||||
- **ಪರೀಕ್ಷಿಸಿ** ನಿಮ್ಮ ಕೋಡ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ
|
||||
|
||||
## ಸಲ್ಲಿಕೆಗೂಡುವ ಸಮಯ
|
||||
|
||||
[ಇಲ್ಲಿ ಸಮಯನ್ನು ಸೇರಿಸಿ]
|
||||
|
||||
## ಪ್ರಶ್ನೆಗಳಿವೆಯಾ?
|
||||
|
||||
ಈ ಅಸೈನ್ಮೆಂಟ್ ಸಂಬಂಧ ಯಾವುದೇ ಸ್ಪಷ್ಟತೆ ಬೇಕಾದರೆ, ಕೇಳಲು ಹಿಂಜರಿಯಬೇಡಿ! ಈ ಪರಿಶೀಲನೆ DOM ಮೂಲಕ ಪ್ರತಿದಿನ ನಾವು ಬಳಸುವ ಪರಸ್ಪರಕಾರಿ ವೆಬ್ ಅನುಭವಗಳನ್ನು ಹೇಗೆ ಸಾಧ್ಯಮಾಡುತ್ತದೆ ಎಂಬುದರ ನಿಮ್ಮ ಅರಿವನ್ನು ಉನ್ನತಿಗೆ ಕರೆದೊಯ್ಯುತ್ತದೆ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತ್ಯಾಗಪತ್ರ**:
|
||||
ಈ ದಸ್ತಾವೇಜು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವದಿಸಲಾದದ್ದು. ನಾವು ನಿಖರತೆಯನ್ನು ಸಾಧಿಸಲು ಪ್ರಯತ್ನಿಸಿದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದೆಂದು ದಯವಿಟ್ಟು ಜಾಗರೂಕವಾಗಿರಿ. ಮೂಲೆ ಭಾಷೆಯಲ್ಲಿರುವ ಮೂಲ ದಸ್ತಾವೇಜನ್ನು ಅಧಿಕೃತ ಮೂಲ ಎಂದು ಪರಿಗಣಿಸಬೇಕು. ಘನ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಅನುವಾದ ಬಳಕೆದಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪುಭಾವನೆಗಳಿಗೂ ಅಥವಾ ತಪ್ಪು ವ್ಯಾಖ್ಯಾನಗಳಿಗೆ ನಾವು ಹೊಣೆಗಾರರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,30 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "bc5c5550f79d10add90ce419ee34abb3",
|
||||
"translation_date": "2026-01-08T11:37:01+00:00",
|
||||
"source_file": "3-terrarium/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
## ನಿಮ್ಮ ಟೆರೇರಿಯಂ ಅನ್ನು ನಿಯೋಜಿಸಿ
|
||||
|
||||
ನೀವು ನಿಮ್ಮ ಟೆರೇರಿಯಂ ಅನ್ನು **ಆಜೂರು ಸ್ಥಿರ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಸ್** ಬಳಸಿ ವೆಬಿನಲ್ಲಿ ನಿಯೋಜಿಸಬಹುದು ಅಥವಾ ಪ್ರಕಟಿಸಬಹುದು.
|
||||
|
||||
1. ಈ ರೆಪೋವನ್ನು ಫೋರ್ಕ್ ಮಾಡಿ
|
||||
|
||||
2. ಈ ಬಟನ್ ಒತ್ತಿ 👇
|
||||
|
||||
[](https://portal.azure.com/#create/Microsoft.StaticApp)
|
||||
|
||||
3. ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ಸೃಷ್ಟಿಸಲು ಸೆಟ್ ಅಪ್ ವಿಜಾರ್ಡ್ ಅನುಸರಿಸಿ.
|
||||
- **ಆ್ಯಪ್ ರೂಟ್** ಅನ್ನು `/solution` ಅಥವಾ ನಿಮ್ಮ ಕೋಡ್ಬೇಸ್ನ ಮೂಲಕ್ಕೆ ಹೊಂದಿಸಿ.
|
||||
- ಈ ಆ್ಯಪ್ನಲ್ಲಿ ಯಾವುದೇ API ಇಲ್ಲ, ಆದ್ದರಿಂದ API ಕಾನ್ಫಿಗರೇಶನ್ ಮರೆಮಾಚಬಹುದು.
|
||||
- `.github` ಫೋಲ್ಡರ್ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ರಚಿಸಲಾಗುತ್ತದೆ, ಇದು ಆಜೂರು ಸ್ಥಿರ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಸ್ಗಳಿಗೆ ನಿಮ್ಮ ಆ್ಯಪ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಮತ್ತು ಪ್ರಕಟಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಜಾಹೀರಾತು**:
|
||||
ಈ ದಸ್ತಾವೇಜು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಸರಿಯಾದ ಅನುವಾದಕ್ಕಾಗಿ ಪ್ರಯತ್ನಿಸುತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅತಿಶಯೋಕ್ತಿಗಳು ಇರಬಹುದೆಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ದಸ್ತಾವೇಜು ಅದರ ಸ್ವದೇಶೀ ಭಾಷೆಯಲ್ಲಿ ಪ್ರಾಮಾಣಿಕ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಅತ್ಯವಶ್ಯಕ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮನುಷ್ಯ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗಬಹುದಾದ ಯಾವುದೇ ಅರ್ಥಾರ್ಹತೆಗಳ ತುಚ್ಛಮತಿಗಳು ಅಥವಾ ತಪ್ಪುತೈರುಗಳಿಗೆ ನಾವು ಜವಾಬ್ದಾರರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,290 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "efa2ab875b8bb5a7883816506da6b6d2",
|
||||
"translation_date": "2026-01-08T11:35:00+00:00",
|
||||
"source_file": "4-typing-game/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಇವೆಂಟ್-ಚಾಲಿತ ಪ್ರೋಗ್ರಾಮಿಂಗ್ - ಟೈಪಿಂಗ್ ಆಟವನ್ನು ನಿರ್ಮಿಸಿ
|
||||
|
||||
```mermaid
|
||||
journey
|
||||
title ನಿಮ್ಮ ಟೈಪಿಂಗ್ ಆಟದ ಅಭಿವೃದ್ಧಿ ಪ್ರಯಾಣ
|
||||
section ಮೆಲಕುಲು
|
||||
ಆಟದ ರಚನೆ ಯೋಜನೆ: 3: Student
|
||||
ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ ವಿನ್ಯಾಸಗೊಳಿಸಿ: 4: Student
|
||||
HTML ಅಂಶಗಳನ್ನು ಸೆಟ್ ಅಪ್ ಮಾಡಿ: 4: Student
|
||||
section ಕಾರ್ಯಕ್ಷಮತೆ
|
||||
ಬಳಕೆದಾರರ ಇನ್ಪುಟ್ನ್ನು ನಿಭಾಯಿಸಿ: 4: Student
|
||||
ಸಮಯವನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಿ: 5: Student
|
||||
ನಿಖರತೆ ಗಣನೆ ಮಾಡಿ: 5: Student
|
||||
section ವೈಶಿಷ್ಟ್ಯಗಳು
|
||||
ದೃശ്യ ಫೀಡ್ಬ್ಯಾಕ್ ಸೇರಿಸಿ: 5: Student
|
||||
ಆಟದ ಲಾಜಿಕ್ ಅನುಷ್ಠಾನ: 5: Student
|
||||
ಅನುಭವವನ್ನು ಸುಧಾರಿಸಿ: 5: Student
|
||||
```
|
||||
## ಪರಿಚಯ
|
||||
|
||||
ಪ್ರತೀ ಡೆವಲಪರ್ ತಿಳಿದಿರುವ, ಆದರೆ ಕಮ್ಮಿ ಮಾತನಾಡುವದ್ದು ಏನಿದೆ ಎಂದರೆ: ವೇಗವಾಗಿ ಟೈಪ್ ಮಾಡುವುದು ಒಂದು ಸೂಪರ್ಪವರ್! 🚀 ಯೋಚಿಸಿ - ನಿಮ್ಮ ಮನಸ್ಸಿನಿಂದ ನಿಮ್ಮ ಕೋಡ್ ಎಡಿಟರ್ಗೆ ನಿಮ್ಮ ಆಲೋಚನೆಗಳನ್ನು ವೇಗವಾಗಿ ಹೇಗೆ ತಲುಪಿಸುವಿರಿ ಎಂದರೆ, ನಿಮ್ಮ ಸೃಜನಶೀಲತೆಯು ಹೆಚ್ಚುತ್ತಾ ಹೋಗುತ್ತದೆ. ಇದು ನಿಮ್ಮ ಯೋಚನೆಗಳು ಮತ್ತು ಸ್ಕ್ರೀನ್ ನಡುವೆ ನೇರ ಸಂಪರ್ಕದಂತೆ.
|
||||
|
||||
```mermaid
|
||||
pie title ಗೇಮ್ ವೈಶಿಷ್ಟ್ಯಗಳು
|
||||
"ವಾಸ್ತವಿಕ-ಸಮಯ ಪ್ರತಿಕ್ರಿಯೆ" : 25
|
||||
"ಕಾರ್ಯಕ್ಷಮತೆ ಟ್ರ್ಯಾಕಿಂಗ್" : 20
|
||||
"ಪರಸ್ಪರ UI" : 20
|
||||
"ಟೈಮರ್ ಪ್ರಣಾಳಿ" : 15
|
||||
"ಕೊಟೇಶನ್ ನಿರ್ವಹಣೆ" : 10
|
||||
"ಫಲಿತಾಂಶ ಪ್ರದರ್ಶನ" : 10
|
||||
```
|
||||
ಈ ಕೌಶಲ್ಯವನ್ನು ಸುಧಾರಿಸಲು ಅತ್ಯುತ್ತಮ ಮಾರ್ಗಗಳಲ್ಲಿ ಒಂದು ತಿಳಿದುಕೊಳ್ಳಲು ಇಚ್ಛಿಸುವಿರಾ? ನೀವು ಊಹಿಸಿದ್ದಾರೆ - ನಾವು ಒಂದು ಆಟವನ್ನು ನಿರ್ಮಿಸುತ್ತಿದ್ದೇವೆ!
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A[ಆಡುಗಾರನು ಆಟವನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತಾನೆ] --> B[ಯಾದೃಚ್ಛಿಕ ಉೇಷಣೆ ಪ್ರದರ್ಶಿಸಲಾಗಿದೆ]
|
||||
B --> C[ಆಡುಗಾರನು ಅಕ್ಷರಗಳನ್ನು ಟೈಪ್ ಮಾಡುತ್ತಾನೆ]
|
||||
C --> D{ಅಕ್ಷರ ಸರಿಯಿದೆಯೇ?}
|
||||
D -->|Yes| E[ಹಸಿರು ಹೈಲೈಟ್]
|
||||
D -->|No| F[ಕೆಂಪು ಹೈಲೈಟ್]
|
||||
E --> G[ನಿಖರತೆಯನ್ನು ನವೀಕರಿಸು]
|
||||
F --> G
|
||||
G --> H{ಉೇಷಣೆ ಪೂರ್ಣವಾಯಿತೇ?}
|
||||
H -->|No| C
|
||||
H -->|Yes| I[WPM ಲೆಕ್ಕಿಸಿ]
|
||||
I --> J[ఫలితాలను ಪ್ರದರ್ಶಿಸಿ]
|
||||
J --> K[ಮತ್ತು ಆಟವಾಡಬೇಕಾ?]
|
||||
K -->|Yes| B
|
||||
K -->|No| L[ಆಟ ಮುಕ್ತಾಯ]
|
||||
|
||||
style A fill:#e1f5fe
|
||||
style D fill:#fff3e0
|
||||
style E fill:#e8f5e8
|
||||
style F fill:#ffebee
|
||||
style I fill:#f3e5f5
|
||||
```
|
||||
> ಒಟ್ಟಿಗೆ ಒಂದು ಅದ್ಭುತ ಟೈಪಿಂಗ್ ಆಟವನ್ನು ನಿರ್ಮಿಸೋಣ!
|
||||
|
||||
ನೀವು ಕಲಿತಿರುವ ಎಲ್ಲಾ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್, ಎಚ್ಟಿಎಂಎಲ್ ಮತ್ತು ಸಿಎಸ್ಎಸ್ ಕೌಶಲ್ಯಗಳನ್ನು ಬಳಸಲು ಸಜ್ಜಾಗಿದ್ದೀರಾ? ನಾವು ನಿರ್ಮಿಸುವ ಆಟವು ದೊಡ್ಡ ತನಿಖೆಗಾರ [ಶೆರ್ಲಾಕ್ ಹೊಲ್ಮ್ಸ್](https://en.wikipedia.org/wiki/Sherlock_Holmes) ಅವರ ಯಾದೃಚ್ಛಿಕ ಉಕ್ತಿಗಳೊಂದಿಗೆ ನಿಮಗೆ ಸವಾಲು ನೀಡುತ್ತದೆ. ಈ ಆಟವು ನೀವು ಎಷ್ಟು ವೇಗವಾಗಿ ಮತ್ತು ಸರಿಯಾಗಿ ಟೈಪ್ ಮಾಡಬಹುದು ಎಂಬುದನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡುತ್ತದೆ - ಮತ್ತು ನಂಬಿ, ಇದು ನೀವು ಭಾವಿಸುವುದಕ್ಕಿಂತ ಹೆಚ್ಚು ಅತೀಂದ್ರಿಯಾಗಿದೆ!
|
||||
|
||||
```mermaid
|
||||
mindmap
|
||||
root((ಟೈಪಿಂಗ್ ಆಟ ಅಭಿವೃದ್ಧಿ))
|
||||
User Interface
|
||||
Input Elements
|
||||
Visual Feedback
|
||||
Responsive Design
|
||||
Accessibility
|
||||
Game Logic
|
||||
Quote Selection
|
||||
Timer Management
|
||||
Accuracy Tracking
|
||||
Score Calculation
|
||||
Event Handling
|
||||
Keyboard Input
|
||||
Button Clicks
|
||||
Real-time Updates
|
||||
Game State Changes
|
||||
Performance Metrics
|
||||
Words Per Minute
|
||||
Character Accuracy
|
||||
Error Tracking
|
||||
Progress Display
|
||||
User Experience
|
||||
Immediate Feedback
|
||||
Clear Instructions
|
||||
Engaging Content
|
||||
Achievement System
|
||||
```
|
||||

|
||||
|
||||
## ನೀವು ತಿಳಿದುಕೊಳ್ಳಬೇಕಾಗಿರುವುದು
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
A[ಬಳಕೆದಾರ ಕ್ರಿಯಾ] --> B{ಕೇಳಿದ ಘಟನೆಯ ಪ್ರಕಾರ?}
|
||||
B -->|ಕೀಲಿಮಣಿಯ ಒತ್ತು| C[ಕೀಲಿಮಣಿಯ ಕಾರ್ಯಕ್ರಮ]
|
||||
B -->|ಬಟನ್ ಕ್ಲಿಕ್| D[ಮೌಸ್ ಕಾರ್ಯಕ್ರಮ]
|
||||
B -->|ಸಮಯಮಿತಿ| E[ಸಮಯ ಕಾರ್ಯಕ್ರಮ]
|
||||
|
||||
C --> F[ಅಕ್ಷರ ಪರಿಶೀಲನೆ]
|
||||
D --> G[ಗೇಮ್ ಪ್ರಾರಂಭ/ಪುನಃ ಸೆಟ್]
|
||||
E --> H[ಟೈಮರ್ ನವೀಕರಣ]
|
||||
|
||||
F --> I{ಸರಿಯೇ?}
|
||||
I -->|ಹೌದು| J[ಹಸಿರು ಸಂವೇದನೆ]
|
||||
I -->|ಇಲ್ಲ| K[ಕೆಂಪು ಸಂವೇದನೆ]
|
||||
|
||||
J --> L[ಸ್ಕೋರ್ ನವೀಕರಣ]
|
||||
K --> L
|
||||
L --> M[ಗೇಮ್ ಸ್ಥಿತಿ ಪರಿಶೀಲನೆ]
|
||||
|
||||
G --> N[ಹೊಸ ಉಧ್ಯೇಶ ರಚನೆ]
|
||||
H --> O[ಸಮಯ ಪ್ರದರ್ಶನ]
|
||||
|
||||
M --> P{ಗೇಮ್ ಸಂಪೂರ್ಣ?}
|
||||
P -->|ಹೌದು| Q[ಫಲಿತಾಂಶ ಪ್ರದರ್ಶಿಸಿ]
|
||||
P -->|ಇಲ್ಲ| R[ಗೇಮ್ ಮುಂದುವರಿಸಿ]
|
||||
|
||||
style A fill:#e1f5fe
|
||||
style F fill:#e8f5e8
|
||||
style I fill:#fff3e0
|
||||
style Q fill:#f3e5f5
|
||||
```
|
||||
ನಾವು ಮುಂದಾಗುವ ಮೊದಲು, ಈ ಅರ್ಥಗಳನ್ನು ನೀವು ತಿಳಿದಿರುವುದಾಗಿ ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ (ವೇಗದಾಗಿ ಸ್ಮರಣೆ ಬೇಕಾದರೆ ಚಿಂತೆ ಮಾಡಬೇಡಿ - ನಾವುಲ್ಲಿಯವರೆಗೂದಲ್ಲಿಯೇ ಇದ್ದೇವಿ!):
|
||||
|
||||
- ಪಠ್ಯ ಇನ್ಪುಟ್ ಮತ್ತು ಬಟನ್ ನಿಯಂತ್ರಣಗಳನ್ನು ರಚಿಸುವುದು
|
||||
- ಸಿಎಸ್ಎಸ್ ಮತ್ತು ಕ್ಲಾಸ್ಗಳ ಮೂಲಕ ಶೈಲಿಗಳನ್ನು ಹೊಂದಿಸುವುದು
|
||||
- ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಮೂಲಭೂತಗಳು
|
||||
- ಅರೇ ರಚನೆ ಮಾಡುವುದು
|
||||
- ಯಾದೃಚ್ಛಿಕ ಸಂಖ್ಯೆ ರಚಿಸುವುದು
|
||||
- ಪ್ರಸ್ತುತ ಸಮಯ ಪಡೆಯುವುದು
|
||||
|
||||
ಈಗಳಲ್ಲಿ ಎದ್ದುಕೊಳ್ಳುವಕೆ ಇಂಥದು ಇದ್ದರೆ, ಅದು ಸೂಕ್ತವಾಗಿದೆ! ನಿಮ್ಮ ಜ್ಞಾನವನ್ನು ಗಟ್ಟಿಗೊಳಿಸುವ ಅತ್ಯುತ್ತಮ ಮಾರ್ಗಗಳಲ್ಲಿ ಒಂದು ಪ್ರಾಜೆಕ್ಟ್ನಲ್ಲಿ ಕೈಹಾಕಿ ಕಲಿಯುವುದು.
|
||||
|
||||
### 🔄 **ಶಿಕ್ಷಣಾತ್ಮಕ ಪರಿಶೀಲನೆ**
|
||||
**ಪ್ರಾರಂಬಿಕ ಮೌಲ್ಯಮಾಪನ**: ಅಭಿವೃದ್ಧಿ ಪ್ರಾರಂಭಿಸುವ ಮೊದಲು, ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ:
|
||||
- ✅ ಎಚ್ಟಿಎಂಎಲ್ ಫಾರ್ಮ್ಗಳು ಮತ್ತು ಇನ್ಪುಟ್ ಎಲಿಮೆಂಟ್ಸ್ ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ
|
||||
- ✅ ಸಿಎಸ್ಎಸ್ ಕ್ಲಾಸ್ಗಳು ಮತ್ತು ಡೈನಾಮಿಕ್ ಶೈಲಿ ಸಂಬಂದಗಳು
|
||||
- ✅ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಇವೆಂಟ್ ಲಿಸನರ್ಗಳು ಮತ್ತು ಹ್ಯಾಂಡ್ಲರ್ಗಳು
|
||||
- ✅ ಅರೆ manipulation ಮತ್ತು ಯಾದೃಚ್ಛಿಕ ಆಯ್ಕೆ
|
||||
- ✅ ಸಮಯದ ಮಾಪನ ಮತ್ತು ಲೆಕ್ಕಾಚಾರಗಳು
|
||||
|
||||
**ತ್ವರಿತ ಸ್ವ-ಪರೀಕ್ಷೆ**: ಈ ಅರ್ಥಗಳು ಕ್ರೀಡಾತ್ಮಕ ಆಟದಲ್ಲಿ ಹೇಗೆ ಕೈಗೂಡುತ್ತವೆ ಎಂದು ವಿವರಿಸಬಹುದೇ?
|
||||
- **ಇವೆಂಟ್ಗಳು** ಬಳಕೆದಾರರು ಎಲಿಮೆಂಟ್ಗಳೊಡನೆ ಸಂವಹನ ನಡೆಸುವಾಗ ಪ್ರಾರಂಭವಾಗುತ್ತವೆ
|
||||
- **ಹ್ಯಾಂಡ್ಲರ್ಗಳು** ಆ ಘಟನೆಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಿ ಆಟದ ಸ್ಥಿತಿಯನ್ನು ನವೀಕರಿಸುತ್ತವೆ
|
||||
- **ಸಿಎಸ್ಎಸ್** ಬಳಕೆದಾರ ಕ್ರಿಯೆಗಳಿಗಾಗಿ ದೃಶ್ಯ ಪ್ರತಿಕ್ರಿಯೆ ನೀಡುತ್ತದೆ
|
||||
- **ಸಮಯ ಮಿತಿಯಿಲ್ಲದೆ** ಪ್ರದರ್ಶನವನ್ನು ಅಳೆಯಲು ಮತ್ತು ಆಟದ ಪ್ರಗತಿಗೆ ಸಹಾಯ ಮಾಡಿ
|
||||
|
||||
```mermaid
|
||||
quadrantChart
|
||||
title ಟೈಪಿಂಗ್ ಆಟ ಕೌಶಲ್ಯಗಳ ಅಭಿವೃದ್ಧಿ
|
||||
x-axis ಆರಂಭಿಕ --> ತಜ್ಞ
|
||||
y-axis ಸ್ಥಿರ --> ಪರಸ್ಪರಕ್ರಿಯಾಶೀಲ
|
||||
quadrant-1 ಅತ್ಯಧಿಕ ಆಟಗಳು
|
||||
quadrant-2 ರియಲ್-ಟೈಮ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು
|
||||
quadrant-3 ಮೂಲ ಪುಟಗಳು
|
||||
quadrant-4 ಪರಸ್ಪರಕ್ರಿಯಾಶೀಲ ತಾಣಗಳು
|
||||
|
||||
HTML Forms: [0.3, 0.2]
|
||||
CSS Styling: [0.4, 0.3]
|
||||
Event Handling: [0.7, 0.8]
|
||||
Game Logic: [0.8, 0.9]
|
||||
Performance Tracking: [0.9, 0.7]
|
||||
```
|
||||
## ಈ ಘಟನೆಯನ್ನು ದೇವಲಪ್ ಮಾಡೋಣ!
|
||||
|
||||
[ಇವೆಂಟ್-ಚಾಲಿತ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಬಳಸಿ ಟೈಪಿಂಗ್ ಆಟವನ್ನು ನಿರ್ಮಿಸುವುದು](./typing-game/README.md)
|
||||
|
||||
### ⚡ **ಮುಂದಿನ 5 ನಿಮಿಷಗಳಲ್ಲಿ ನೀವು ಮಾಡಬಹುದಾದವುಗಳು**
|
||||
- [ ] ನಿಮ್ಮ ಬ್ರೌಸರ್ ಕಾಂಸೋಲ್ ತೆರಯಿರಿ ಮತ್ತು `addEventListener` ಬಳಸಿ ಕೀಬೋರ್ಡ್ ಘಟನೆಗಳನ್ನು ಕೇಳಿ
|
||||
- [ ] ಸರಳ HTML ಪುಟವನ್ನು ರಚಿಸಿ, ಇನ್ಪುಟ್ ಫೀಲ್ಡ್-ನೊಂದಿಗೆ ಟೈಪಿಂಗ್ ಪತ್ತೆಮಾಡಿ ಪರೀಕ್ಷಿಸಿ
|
||||
- [ ] ಟೈಪ್ ಮಾಡಿದ ಪಠ್ಯವನ್ನು ಗುರಿ ಪಠ್ಯದಿಂದ ಹೋಲಿಸಿ ಸ್ಟ್ರಿಂಗ್ ನಿರ್ವಹಣೆ ಅಭ್ಯಾಸ ಮಾಡಿ
|
||||
- [ ] `setTimeout` ಮೂಲಕ ಸಮಯ ನಿಯಂತ್ರಣ ಕಾರ್ಯಗಳನ್ನು ಮನಗಾಣಿಸಿ
|
||||
|
||||
### 🎯 **ಈ ಗಂಟೆಯಲ್ಲೇ ಸಾಧಿಸಬಹುದಾದವುಗಳು**
|
||||
- [ ] ಪಾಠದ ನಂತರದ ಪ್ರಶ್ನೋತ್ತರವನ್ನು ಮುಗಿಸಿ ಇವೆಂಟ್-ಚಾಲಿತ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ತಿಳಿದುಕೊಳ್ಳಿ
|
||||
- [ ] ಪದಗಳ ಪರಿಶೀಲನೆಗಾಗಿ ಟೈಪಿಂಗ್ ಆಟದ ಮೂಲ ಆವೃತ್ತಿಯನ್ನು ನಿರ್ಮಿಸಿ
|
||||
- [ ] ಸರಿಯಾದ ಮತ್ತು ತಪ್ಪು ಟೈಪಿಗಾಗಿ ದೃಶ್ಯ ಪ್ರತಿಕ್ರಿಯೆ ಸೇರಿಸಿ
|
||||
- [ ] ವೇಗ ಮತ್ತು ನಿಖರತೆಗೆ ಆಧರಿಸಿ ಸರಳ ಸ್ಕೋರಿಂಗ್ ಸಿಸ್ಟಮ್ ಅನುಷ್ಠಾನ ಮಾಡಿ
|
||||
- [ ] ನಿಮ್ಮ ಆಟವನ್ನು ದೃಶ್ಯಾತ್ಮಕವಾಗಿ ಆಕರ್ಷಕವಾಗಿಸಲು CSS ಶೈಲಿ ಮಾಡಿ
|
||||
|
||||
### 📅 **ನಿಮ್ಮ ವಾರದ ಆಟ ಅಭಿವೃದ್ಧಿ**
|
||||
- [ ] ಎಲ್ಲಾ ವೈಶಿಷ್ಟ್ಯಗಳೊಂದಿಗೆ ಸಂಪೂರ್ಣ ಟೈಪಿಂಗ್ ಆಟವನ್ನು ಪೂರ್ಣಗೊಳಿಸಿ ಮತ್ತು ಸುಧಾರಣೆ ಮಾಡಿ
|
||||
- [ ] ಪದ ಜಟಿಲತೆಯೊಂದಿಗೆ ಕಠಿಣ ಮಟ್ಟಗಳನ್ನು ಸೇರಿಸಿ
|
||||
- [ ] ಬಳಕೆದಾರರ ಅಂಕಿಅಂಶಗಳ (WPM, ಸಮಯೋಚಿತ ನಿಖರತೆ) ಟ್ರ್ಯಾಕಿಂಗ್ ಅನುಷ್ಠಾನ ಮಾಡಿ
|
||||
- [ ] ಉತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವಕ್ಕೆ ಧ್ವನಿ ಪರಿಣಾಮಗಳು ಮತ್ತು ಅನಿಮೇಶನ್ಗಳನ್ನು ರಚಿಸಿ
|
||||
- [ ] ಟಚ್ ಸಾಧನಗಳಿಗೆ ಹೊಂದಿಕೊಳ್ಳುವಂತೆ ನಿಮ್ಮ ಆಟವನ್ನು ಮೊಬೈಲ್-ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ಮಾಡಿ
|
||||
- [ ] ನಿಮ್ಮ ಆಟವನ್ನು ಆನ್ಲೈನ್ ಹಂಚಿಕೊಳ್ಳಿ ಮತ್ತು ಬಳಕೆದಾರರ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಸಂಗ್ರಹಿಸಿ
|
||||
|
||||
### 🌟 **ನಿಮ್ಮ ತಿಂಗಳಾವ್ಯಾಪಿ ಪರಸ್ಪರ ಕ್ರಿಯಾತ್ಮಕ ಅಭಿವೃದ್ಧಿ**
|
||||
- [ ] ವಿಭಿನ್ನ ಸಂವಹನ ಮಾದರಿಗಳನ್ನು ಅನ್ವೇಷಿಸುವ ಬಹು ಆಟಗಳನ್ನು ನಿರ್ಮಿಸಿ
|
||||
- [ ] ಆಟ ಲೂಪ್, ಸ್ಥಿತಿ ನಿರ್ವಹಣೆ, ಪ್ರದರ್ಶನ ಪರಿಷ್ಕರಣೆಗಳನ್ನು ಕಲಿಯಿರಿ
|
||||
- [ ] ಓಪನ್ ಸೋರ್ಸ್ ಆಟ ಅಭಿವೃದ್ಧಿ ಪ್ರಾಜೆಕ್ಟ್ಗಳಿಗೆ ಸಹಾಯ ಮಾಡಿ
|
||||
- [ ] ಪವರ್ಫುಲ್ ಸಮಯ ಅಂಶಗಳು ಮತ್ತು ಸ್ಮೂತ್ ಅನಿಮೇಶನ್ಗಳಲ್ಲಿ ಪರಿಣತಿ ಪಡೆಯಿರಿ
|
||||
- [ ] ವಿವಿಧ ಪರಸ್ಪರ ಕ್ರಿಯಾತ್ಮಕ ಅಪ್ಲಿಕೇಶನ್ಗಳ ಪ್ರದರ್ಶನ ಮಾಡುತ್ತಾ ಪೋರ್ಟ್ಫೋಲಿಯೋ ರಚಿಸಿ
|
||||
- [ ] ಆಟ ಅಭಿವೃದ್ಧಿ ಮತ್ತು ಬಳಕೆದಾರ ಸಂವಹನದ ಬಗ್ಗೆ ಆಸಕ್ತಿ ಇರುವವರಿಗೆ ಮಾರ್ಗದರ್ಶನ ನೀಡಿ
|
||||
|
||||
## 🎯 ನಿಮ್ಮ ಟೈಪಿಂಗ್ ಆಟ ಮಾಸ್ಟರಿ ಸಮಯರೇಖೆ
|
||||
|
||||
```mermaid
|
||||
timeline
|
||||
title ಗೇಮ್ ಅಭಿವೃದ್ಧಿ ಕಲಿಕಾ ಪ್ರಗತಿ
|
||||
|
||||
section ಸೆಟಪ್ (10 ನಿಮಿಷಗಳು)
|
||||
Project Structure: HTML ನೆಲೆ
|
||||
: CSS ಶೈಲಿ ಸೆಟಪ್
|
||||
: JavaScript ಫೈಲ್ ಸೃಷ್ಟಿ
|
||||
|
||||
section ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ (20 ನಿಮಿಷಗಳು)
|
||||
Interactive Elements: ಇನ್ಪುಟ್ ಫೀಲ್ಡ್ಗಳು
|
||||
: ಬಟನ್ ನಿಯಂತ್ರಣಗಳು
|
||||
: ಡಿಸ್ప್ಲೇ ಪ್ರದೇಶಗಳು
|
||||
: ಪ್ರತಿಕ್ರೀಯಾಶೀಲ ವಿನ್ಯಾಸ
|
||||
|
||||
section ઘટના ನಿರ್ವಹಣೆ (25 ನಿಮಿಷಗಳು)
|
||||
User Interaction: ಕೀಬೋರ್ಡ್ ಘಟನೆಗಳು
|
||||
: ಮೌಸ್ ಘಟನೆಗಳು
|
||||
: ರಿಯಲ್-ಟೈಮ್ ಪ್ರತಿಕ್ರಿಯೆ
|
||||
: ಸ್ಥಿತಿ ನಿರ್ವಹಣೆ
|
||||
|
||||
section ಗೇಮ್ ಲಾಜಿಕ್ (30 ನಿಮಿಷಗಳು)
|
||||
Core Functionality: ಉಕ್ತಿಗಳ ರಚನೆ
|
||||
: ಪಾತ್ರ ಹೋಲಿಕೆ
|
||||
: ನಿಖರತೆ ಗಣನೆ
|
||||
: ಟೈಮರ್ ಅನುಷ್ಠಾನ
|
||||
|
||||
section ಕಾರ್ಯಕ್ಷಮತೆ ಟ್ರ್ಯಾಕಿಂಗ್ (35 ನಿಮಿಷಗಳು)
|
||||
Metrics & Analytics: WPM ಗಣನೆ
|
||||
: ದೋಷ ಟ್ರ್ಯಾಕಿಂಗ್
|
||||
: ಪ್ರಗತಿ ದೃಶ್ಯೀಕರಣ
|
||||
: ಫಲಿತಾಂಶ ಪ್ರದರ್ಶನ
|
||||
|
||||
section ಪೊಳಿಷ್ & ವೃದ್ಧಿ (45 ನಿಮಿಷಗಳು)
|
||||
User Experience: ದೃಷ್ಟಿಮಾತು ಪ್ರತಿಕ್ರಿಯೆ
|
||||
: ಧ್ವನಿ ಪರಿಣಾಮಗಳು
|
||||
: ಅನಿಮೇಷನ್ಗಳು
|
||||
: ಪ್ರವೇಶಸೌಲಭ್ಯ ವೈಶಿಷ್ಟ್ಯಗಳು
|
||||
|
||||
section ಮುನ್ನಡೆಯ ವೈಶಿಷ್ಟ್ಯಗಳು (1 ವಾರ)
|
||||
Extended Functionality: ಕಷ್ಟದ ಮಟ್ಟಗಳು
|
||||
: ಲೀಡರ್ಬೋರ್ಡ್ಗಳು
|
||||
: ಕಸ್ಟಮ್ ಉಕ್ತಿಗಳು
|
||||
: ಬಹುಪಾತ್ರ ಆಯ್ಕೆಗಳು
|
||||
|
||||
section ವೃತ್ತಿಪರ ಕೌಶಲ್ಯಗಳು (1 ತಿಂಗಳು)
|
||||
Game Development: ಕಾರ್ಯಕ್ಷಮತೆ ಸುಧಾರಣೆ
|
||||
: ಕೋಡ್ ಸ್ಥಾಪತ್ಯ
|
||||
: ಪರೀಕ್ಷಾ ತಂತ್ರಗಳು
|
||||
: ಬಿಡುಗಡೆ ಮಾದರಿಗಳು
|
||||
```
|
||||
### 🛠️ ನಿಮ್ಮ ಆಟ ಅಭಿವೃದ್ಧಿ ಉಪಕರಣಗಳ ಸಾರಾಂಶ
|
||||
|
||||
ಈ ಪ್ರಾಜೆಕ್ಟ್ ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ, ನೀವು ಪಾರಂಗತರಾಗಿರುತ್ತೀರಿ:
|
||||
- **ಇವೆಂಟ್-ಚಾಲಿತ ಪ್ರೋಗ್ರಾಮಿಂಗ್**: ಬಳಕೆದಾರ ಆದೇಶಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸುವ ಸ್ಪಂದನಶೀಲ ಯೂಐ
|
||||
- **ರೀಲ್-ಟೈಮ್ ಪ್ರತಿಕ್ರಿಯೆ**: ತಕ್ಷಣದ ದೃಶ್ಯ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮ ನವೀಕರಣಗಳು
|
||||
- **ಕಾರ್ಯಕ್ಷಮತೆ ಮಾಪನ**: ಸರಿಯಾದ ಸಮಯ ಮತ್ತು ಸ್ಕೋರಿಂಗ್ ಸಿಸ್ಟಮ್ಗಳು
|
||||
- **ಆಟದ ಸ್ಥಿತಿ ನಿರ್ವಹಣೆ**: ಅಪ್ಲಿಕೇಶನ್ ಹರಿವು ಮತ್ತು ಬಳಕೆದಾರ ಅನುಭವ ನಿಯಂತ್ರಣ
|
||||
- **ಪರಸ್ಪರ ಕ್ರಿಯಾತ್ಮಕ ವಿನ್ಯಾಸ**: ಆಕರ್ಷಕ, ಬೋಧಕ ಬಳಕೆದಾರ ಅನುಭವಗಳನ್ನು ರಚಿಸುವುದು
|
||||
- **ಆಧುನಿಕ ವೆಬ್ APIs**: ಶ್ರೀಮಂತ ಸಂವಹನಗಳಿಗಾಗಿ ಬ್ರೌಸರ್ ಸಾಮರ್ಥ್ಯಗಳನ್ನು ಉಪಯೋಗಿಸುವುದು
|
||||
- **ಪ್ರವೇಶ ಯೋಗ್ಯತೆ ಮಾದರಿಗಳು**: ಎಲ್ಲಾ ಬಳಕೆದಾರರಿಗೆ ಒತ್ತಾಯರಹಿತ ವಿನ್ಯಾಸ
|
||||
|
||||
**ವಾಸ್ತವಿಕ ಅನ್ವಯಿಕೆಗಳು**: ಈ ಕೌಶಲ್ಯಗಳು ನೇರವಾಗಿ ಅನ್ವಯಿಸುತ್ತವೆ:
|
||||
- **ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು**: ಯಾವುದೇ ಪರಸ್ಪರ ಸ್ನೇಹಿ ಇಂಟರ್ಫೇಸ್ ಅಥವಾ ಡಾಷ್ಬೋರ್ಡ್
|
||||
- **ಶಿಕ್ಷಣಾತ್ಮಕ ಸಾಫ್ಟ್ವೇರ್**: ಕಲಿಕಾ ವೇದಿಕೆಗಳು ಮತ್ತು ಕೌಶಲ್ಯ ಮೌಲ್ಯಮಾಪನ ಟೂಲ್ಗಳು
|
||||
- **ಉತ್ಪಾದಕತೆ ಉಪಕರಣಗಳು**: ಪಠ್ಯ ಸಂಪಾದಕ, ಐಡಿಇಗಳು ಮತ್ತು ಸಹಕಾರ ಸಾಫ್ಟ್ವೇರ್
|
||||
- **ಆಟ ಜಗತ್ತು**: ಬ್ರೌಸರ್ ಆಟಗಳು ಮತ್ತು ಪರಸ್ಪರ ಮನೋರಂಜನೆ
|
||||
- **ಮೊಬೈಲ್ ಅಭಿವೃದ್ಧಿ**: ಸ್ಪರ್ಶ ಆಧಾರಿತ ಇಂಟರ್ಫೇಸ್ಗಳು ಮತ್ತು ಜೆಸ್ಚರ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್
|
||||
|
||||
**ಮುಂದಿನ ಹಂತ**: ನೀವು ಸುಧಾರಿತ ಆಟ ಫ್ರೇಮ್ವರ್ಕ್ಗಳು, ವಾಸ್ತವಿಕ ಸಮಯ ಬಹು-ಆಟಗಾರ ವ್ಯವಸ್ಥೆಗಳು ಅಥವಾ ಸಂಗತಿಪೂರ್ಣ ಪರಸ್ಪರ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಅನ್ವೇಷಿಸಲು ಸಿದ್ಧರಾಗಿದ್ದೀರಿ!
|
||||
|
||||
## ಕ್ರೆಡಿಟ್ಗಳು
|
||||
|
||||
♥️ ಜೊತೆಗೆ ಬರೆದವರು [Christopher Harrison](http://www.twitter.com/geektrainer)
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ನಿರಾಕರಣೆ**:
|
||||
ಈ ದಾಖಲೆ AI ಅನುವಾದ ಸೇವೆಯಾದ [Co-op Translator](https://github.com/Azure/co-op-translator) ಉಪಯೋಗಿಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಗೆ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ತಪ್ಪುಗಳಿರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲಭಾಷೆಯಲ್ಲಿರುವ ಮೂಲ ದಾಖಲೆ ನಿರ್ಮಾಣಾತ್ಮಕ ಮೂಲವಾಗಿರುತ್ತದೆ ಎಂದು ಪರಿಗಣಿಸಬೇಕು. ನಿಜವಾದ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದವನ್ನು ಬಳಸುವುದರಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ಅವಗाहನೆಗಳು ಅಥವಾ ತಪ್ಪು ವಿವರಣೆಗಳ ಬಗ್ಗೆ ನಾವು ಜವಾಬ್ದಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,57 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "3eac59d70e2532a677a2ce6bf765485a",
|
||||
"translation_date": "2026-01-08T18:29:11+00:00",
|
||||
"source_file": "4-typing-game/typing-game/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಹೊಸ ಕೀಬೋರ್ಡ್ ಆಟವನ್ನು ರಚಿಸಿ
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ನೀವು ಟೈಪಿಂಗ್ ಆಟದೊಂದಿಗೆ ಇವೆಂಟ್ ಚಾಲಿತ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮೂಲಭೂತಾಂಶಗಳನ್ನು ಸಂಪೂರ್ಣ maîtrise ಮಾಡಿರುವುದರಿಂದ, ಈಗ ನಿಮ್ಮ ಸೃಜನಶೀಲತೆಯನ್ನು ಬಿಡುಗಡೆಯಾಗಿಸುವ ಸಮಯವಾಗಿದೆ! ನೀವು ಇವೆಂಟ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್, DOM ಮ್ಯಾನಿಪ್ಯುಲೇಶನ್ ಮತ್ತು ಬಳಕೆದಾರ ಸಂವಹನ ಮಾದರಿಗಳ ಅರ್ಥವನ್ನು ತೋರಿಸುವ ನಿಮ್ಮ ಸ್ವಂತ ಕೀಬೋರ್ಡ್ ಆಧಾರಿತ ಆಟವನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸಿ ಮತ್ತು ನಿರ್ಮಿಸುತ್ತೀರಿ.
|
||||
|
||||
ವಿಶಿಷ್ಟ ಕಾರ್ಯಗಳನ್ನು ನೆರವೇರಿಸಲು ಕೀಬೋರ್ಡ್ ಇವೆಂಟ್ಗಳನ್ನು ಬಳಸುವ ಸಣ್ಣ ಆಟವನ್ನು ರಚಿಸಿ. ಇದು ಬೇರೆ ರೀತಿಯ ಟೈಪಿಂಗ್ ಆಟವಾಗಿರಬಹುದು, ಕೀ ನಿಯಂತ್ರಣಗಳಲ್ಲಿ ಪರಿಕಲ್ಪನೆಗೆ ತಕ್ಕಂತೆ ಪರದೆಗೆ ಪಿಕ್ಸೆಲ್ಗಳನ್ನು ಚಿತ್ರಿಸುವ ಕಲಾತ್ಮಕ ಅಪ್ಲಿಕೇಶನ್ ಆಗಿರಬಹುದು, ಏರೋ ಕೀಗಳೊಂದಿಗೆ ನಿಯಂತ್ರಿಸುವ ಸರಳ ಆರ್ಕೇಡ್-ಶೈಲಿ ಆಟವಾಗಿರಬಹುದು, ಅಥವಾ ನೀವು ಕಲ್ಪಿಸಿಕೊಳಬಹುದು ಎಂಬ ಯಾವುದೇ ಸೃಜನಾತ್ಮಕ ಕಲ್ಪನೆ ಇರಬಹುದು. ಸೃಜನಾತ್ಮಕವಾಗಿರಿ ಮತ್ತು ವಿಭಿನ್ನ ಕೀಗಳು ವಿಭಿನ್ನ ವರ್ತನೆಗಳನ್ನು ಹೇಗೆ ಹುಟ್ಟುಹಾಕಬಹುದು ಎಂದು ಯೋಚಿಸಿ!
|
||||
|
||||
**ನಿಮ್ಮ ಆಟವು ಒಳಗೊಂಡಿರಬೇಕು:**
|
||||
|
||||
| ಅವಶ್ಯಕತೆ | ವಿವರಣೆ | ಉದ್ದೇಶ |
|
||||
|-------------|-------------|---------|
|
||||
| **ಇವೆಂಟ್ ಲಿಸ್ಟನರ್ಗಳು** | ಕನಿಷ್ಠ 3 ವಿಭಿನ್ನ ಕೀಬೋರ್ಡ್ ಇವೆಂಟ್ಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸುವುದು | ಇವೆಂಟ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ಸಂಶೋಧನೆಯ ಪ್ರದರ್ಶನ |
|
||||
| **ದೃಶ್ಯ ಫೀಡ್ಬ್ಯಾಕ್** | ಬಳಕೆದಾರ ಇನ್ಪುಟ್ಗೆ ತಕ್ಷಣದ ದೃಶ್ಯ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಒದಗಿಸುವುದು | DOM ಮ್ಯಾನಿಪ್ಯುಲೇಶನ್ ನಿಯಂತ್ರಣದ ಮೇಧಾವಿತ್ವವನ್ನು ತೋರಿಸುವುದು |
|
||||
| **ಆಟ ಲಾಜಿಕ್** | ಅಂಕೆಗೆ, ಹಂತಗಳಿಗೆ ಅಥವಾ ಪ್ರಗತಿಗಾನಿ ವ್ಯವಸ್ಥೆಗಳನ್ನು ಒಳಗೊಂಡಿರಲಿ | ಅಪ್ಲಿಕೇಶನ್ ಸ್ಥಿತಿಯನ್ನು ಅನುಷ್ಟಾನದಲ್ಲಿ ಅಭ್ಯಾಸ ಮಾಡುವುದು |
|
||||
| **ಬಳಕೆದಾರ ಸಂವಾದ** | ಸ್ಪಷ್ಟ ನಿರ್ದೇಶನಗಳು ಮತ್ತು ಆಳವಾದ ನಿಯಂತ್ರಣಗಳು | ಬಳಕೆದಾರ ಅನುಭವ ವಿನ್ಯಾಸ ಕೌಶಲ್ಯಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುವುದು |
|
||||
|
||||
**ವಿಚಾರಿಸಲು ಸೃಜನಶೀಲ ಯೋಜನೆ ಕಲ್ಪನೆಗಳು:**
|
||||
- **ರಿದಮ್ ಆಟ**: ಆಟಗಾರರು ಸಂಗೀತ ಅಥವಾ ದೃಶ್ಯ ಸೂಚನೆಗಳೊಂದಿಗೆ ಕೀಲಿಗಳನ್ನು ಸಮಯಕ್ಕೆ ಸರಿಯಾಗಿ ಒತ್ತುತ್ತಾರೆ
|
||||
- **ಪಿಕ್ಸೆಲ್ ಆರ್ಟ್ ಸೃಷ್ಟಿಕರ್ತ**: ವಿಭಿನ್ನ ಕೀಲಿಗಳು ವಿಭಿನ್ನ ಬಣ್ಣಗಳು ಅಥವಾ ಮಾದರಿಗಳನ್ನು ಚಿತ್ರಿಸುತ್ತವೆ
|
||||
- **ಶಬ್ದ ನಿರ್ಮಾಪಕ**: ಆಟಗಾರರು ವಿಶೇಷ ಕ್ರಮದಲ್ಲಿ ಅಕ್ಷರಗಳನ್ನು ಟೈಪ್ ಮಾಡಿ ಪದಗಳನ್ನು ರಚಿಸುತ್ತಾರೆ
|
||||
- **ಸ್ನೇಕ್ ಆಟ**: ಬಾಣ ಕೀಲಿಗಳೊಂದಿಗೆ ಹಾವು ನಿಯಂತ್ರಿಸಿ ಐಟಂಗಳನ್ನು ಸಂಗ್ರಹಿಸಿ
|
||||
- **ಮ್ಯೂಸಿಕ್ ಸಿಂಥಸೈಝರ್**: ವಿಭಿನ್ನ ಕೀಲಿಗಳು ವಿಭಿನ್ನ ಸಂಗೀತ ಟೋನುಗಳು ಅಥವಾ ಧ್ವನಿಗಳನ್ನು ಪ್ಲೇ ಮಾಡುತ್ತವೆ
|
||||
- **ಸ್ಪೀಡ್ ಟೈಪಿಂಗ್ ವೈವಿಧ್ಯಗಳು**: ವರ್ಗ-ವಿಶೇಷ ಟೈಪಿಂಗ್ (ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಪದಗಳು, ಪರಿಭಾಷಿತ ಭಾಷೆಗಳು)
|
||||
- **ಕೀಬೋರ್ಡ್ ಡ್ರಂಬರ್**: ಬೃಹತ್ ಬೀಗಗಳಿಗೆ ವಿಭಿನ್ನ ಡ್ರಮ್ ಧ್ವನಿಗಳನ್ನು ನಿಯೋಜಿಸುವ ಮೂಲಕ ಬೀಟ್ ರಚಿಸಿ
|
||||
|
||||
**ಕಾರ್ಯಯೋಜನೆಯ ಮಾರ್ಗಸೂಚಿಗಳು:**
|
||||
- **ಸರಳ ಕಲ್ಪನೆಯಿಂದ ಪ್ರಾರಂಭಿಸಿ ಮತ್ತು ಜಟಿಲತೆ ಹಂತವಾಗಿ ನಿರ್ಮಿಸಿ**
|
||||
- **ಸಹಜವಾದ, ಸ್ಪಂದನಾತ್ಮಕ ನಿಯಂತ್ರಣಗಳ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸಿ**
|
||||
- **ಆಟದ ಸ್ಥಿತಿ ಮತ್ತು ಆಟಗಾರರ ಪ್ರಗತಿಗೆ ಸ್ಪಷ್ಟ ದೃಶ್ಯ ಸೂಚಕಗಳನ್ನು ಒಳಗೊಂಡಿರಲಿ**
|
||||
- **ಬೇರೆ ಬಳಕೆದಾರರೊಂದಿಗೆ ನಿಮ್ಮ ಆಟವನ್ನು ಪರೀಕ್ಷಿಸಿ ಗಮನಾರ್ಹ ಆಟ ನಿರ್ವಹಣೆಯನ್ನು ಖಚಿತಪಡಿಸಿ**
|
||||
- **ತಪ್ಪದೆ ನಿಮ್ಮ ಕೋಡ್ನಲ್ಲಿ ಟಿಪ್ಪಣಿಗಳನ್ನು ಸೇರಿಸಿ ಮತ್ತು ನಿಮ್ಮ ಇವೆಂಟ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ತಂತ್ರವನ್ನು ವಿವರಿಸಿ**
|
||||
|
||||
## ಶ್ರೇಣಿಪಟ್ಟಿ
|
||||
|
||||
| ಮಾನದಂಡಗಳು | ಉತ್ಕೃಷ್ಠ | ತೃಪ್ತಿದಾಯಕ | ಸುಧಾರಣೆ ಅಗತ್ಯವಿದೆ |
|
||||
| -------- | --------- | -------- | ----------------- |
|
||||
| **ಫಂಕ್ಷನಾಲಿಟಿ** | ಬಹುತೇಕ ಲಕ್ಷಣಗಳೊಂದಿಗೆ ಪೂರ್ಣ,.polished ಆಟ ಮತ್ತು ಸೂಕ್ಷ್ಮ ಆಟ ನಿರ್ವಹಣೆ | ಕೀಬೋರ್ಡ್ ಇವೆಂಟ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ತೋರಿಸುವ ಮೂಲ ಭಾಗಗಳೊಂದಿಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಆಟ | ಅತೀ ನ್ಯೂನ, ನಿರ್ವಹಣಾರ್ಹತೆ ಕಡಿಮೆ ಇಲ್ಲದ(gameplay) ಅಥವಾ ಪ್ರಮುಖ ದೋಷಗಳೊಂದಿಗೆ ಅನುಷ್ಟಾನ |
|
||||
| **ಕೋಡ್ ಗುಣಮಟ್ಟ** | ಚೆನ್ನಾಗಿ ಸಂಘಟಿತ, ಟಿಪ್ಪಣಿಗಳು ವಹಿಸಿ ಉತ್ತಮ ಆಚರಣೆಗಳ ಅನುಸರಣೆ ಮತ್ತು ಪರಿಣಾಮಕಾರಿಯಾದ ಇವೆಂಟ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ | ಸ್ವಚ್ಛ, ಓದಲು ಸುಲಭವಾದ ಕೋಡ್ ಮತ್ತು ಸೂಕ್ತವಾಗಿ ಇವೆಂಟ್ ಲಿಸ್ಟನರ್ಗಳು ಮತ್ತು DOM ನಿಯಂತ್ರಣ ಬಳಸಿದ್ದು | ಮೂಲ್ವಾಗಿ ಕೋಡ್ ರಚನೆ, ಕೆಲ ಸಂಘಟನಾ ಸಮಸ್ಯೆಗಳ ಅಥವಾ ಅಸಂಕ್ಷಿಪ್ತ ಅನುಷ್ಠಾನಗಳೊಂದಿಗೆ |
|
||||
| **ಬಳಕೆದಾರ ಅನುಭವ** | ಅನುಕೂಲಕರ ನಿಯಂತ್ರಣ, ಸ್ಪಷ್ಟ ಪ್ರತಿಕ್ರಿಯೆ ಮತ್ತು ವೃತ್ತಿಪರ ಅನುಭವದ ಆಟ ಆಡಿಕೆ | ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಅಂತರ್ಜಾಲಗಳೊಂದಿಗೆ ಅಗತ್ಯ ಕ್ಷೇತ್ರಗಳು ನೈಜ ಮತ್ತು ಸ್ಪಂದನಾತ್ಮಕ ನಿಯಂತ್ರಣಗಳು | ಮೂಲ ಸಂವಾದ, ಸ್ಪಷ್ಟವಿಲ್ಲದ ಸೂಚನೆಗಳು ಅಥವಾ ಕಡಿಮೆ ಸ್ಪಂದನಶೀಲ ನಿಯಂತ್ರಣಗಳು |
|
||||
| **ಸೃಜನಶೀಲತೆ** | ಕೀಬೋರ್ಡ್ ಇವೆಂಟ್ಗಳ ವಿಶಿಷ್ಟ ಉಪಯೋಗ ಮತ್ತು ಸೃಜನಾತ್ಮಕ ಸಮಸ್ಯೆ ಪರಿಹಾರದಿಂದ ಮೂಲ ಕಲ್ಪನೆ | ಸಾಮಾನ್ಯ ಆಟ ಮಾದರಿಗಳ ಮೇಲೆ ರುಚಿಕರ ಬದಲಾಗುವಿಕೆ ಮತ್ತು ಉತ್ತಮ ಇವೆಂಟ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ಬಳಕೆ | ಮೂಲ ಕಲ್ಪನೆಯ ಸಾಮಾನ್ಯ ಅನುಷ್ಠಾನ ಮತ್ತು ಕನಿಷ್ಠ ಸೃಜನಾತ್ಮಕ ಅಂಶಗಳು |
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತಿರಸ್ಕರಣೆ**:
|
||||
ಈ ದಾಖಲೆಯನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ದತೆಯತ್ತ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೆ ಕೂಡ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸ ಪಷ್ಟತೆಗಳು ಇರಬಹುದು ಎಂಬುದು ತಿಳಿದುಕೊಳ್ಳಿ. ಮೂಲ ದಾಖಲೆ ತನ್ನ ಸ್ಥಳೀಯ ಭಾಷೆಯಲ್ಲಿ ಅಧಿಕೃತ ಮೂಲವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಆತಂಕಕರ ಮಾಹಿತಿಗೆ, ವ್ಯಾಪಾರದ ಮಾನ್ಯತೆಯ ಪಾತ್ರಧಾರಿಯ ವ್ಯವಸಾಯೀ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ಅರ್ಥ ತಪ್ಪುಗಳ ಅಥವಾ ತಪ್ಪುಭವನೆಗಳಿಗಾಗಿ ನಾವು ಜವಾಬ್ದಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,146 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "b6897c02603d0045dd6d8256e8714baa",
|
||||
"translation_date": "2026-01-08T15:56:29+00:00",
|
||||
"source_file": "5-browser-extension/1-about-browsers/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಕಾರ್ಯ: ನಿಮ್ಮ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ಮರು obliksilu
|
||||
|
||||
## ಸ್ಪಷ್ಟನೆ
|
||||
|
||||
ನೀವು ನಿಮ್ಮ ಕಾರ್ಬನ್ ಫುಟ್ಪ್ರಿಂಟ್ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಗೆ HTML ರಚನೆಯನ್ನು ರಚಿಸಿದ್ದ ಮೇಲೆ, ಅದನ್ನು ದೃಶ್ಯವಾಗಿ ಆಕರ್ಷಕ ಮತ್ತು ಬಳಕೆದಾರ ಸ್ನೇಹಿಯಾಗಿ ಮಾಡಲು ಸಮಯವಾಗಿದೆ. ಉತ್ತಮ ವಿನ್ಯಾಸ ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ಸುಧಾರಿಸು ತದೆ ಮತ್ತು ನಿಮ್ಮ ವಿಸ್ತರಣೆprofessionally ಮತ್ತು ಆಕರ್ಷಕವಾಗಿಸುತ್ತದೆ.
|
||||
|
||||
ನಿಮ್ಮ ವಿಸ್ತರಣೆಗೆ ಮೂಲಭೂತ CSS ಶೈಲಿಯುತವಿದೆ, ಆದರೆ ಈ ಕಾರ್ಯವು ನಿಮ್ಮ ವೈಯಕ್ತಿಕ ಶೈಲಿಯನ್ನು ಪ್ರತಿಬಿಂಬಿಸುವ ವಿಶಿಷ್ಟ ದೃಶ್ಯ ಚಿಹ್ನೆಯನ್ನು ರಚಿಸಲು ತಾಕತ್ ನೀಡುತ್ತದೆ, ಅದೇ ಸಮಯದಲ್ಲಿ ಉತ್ತಮ ಬಳಕೆಲಭ್ಯತೆಯನ್ನು ಕಾಯ್ದುಕೊಳ್ಳುತ್ತದೆ.
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
### ಭಾಗ 1: தற்போதಿನ ವಿನ್ಯಾಸ ವಿಶ್ಲೇಷಣೆ ಮಾಡಿ
|
||||
|
||||
ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡುವ ಮುನ್ನ, ಇತ್ತೀಚಿನ CSS ರಚನೆಯನ್ನು ಪರಿಶೀಲಿಸಿ:
|
||||
|
||||
1. **ನಿಮ್ಮ ವಿಸ್ತರಣೆ ಯೋಜನೆಯಲ್ಲಿ CSS ಕಡತಗಳನ್ನು ಕಂಡುಹಿಡಿಯಿರಿ**
|
||||
2. **ಪ್ರಸ್ತುತ ಶೈಲಿಯ 접근 ಮತ್ತು ಬಣ್ಣ ವಿನ್ಯಾಸವನ್ನು ಪರಿಶೀಲಿಸಿ**
|
||||
3. **ರೂಪರೇಖೆ, ಟೈಪೋಗ್ರಾಫಿ ಮತ್ತು ದೃಶ್ಯ ಹೈರಾರ್ಕಿಯಲ್ಲಿ ಸುಧಾರಣೆಯ ಪ್ರದೇಶಗಳನ್ನು ಗುರುತಿಸಿ**
|
||||
4. ** ವಿನ್ಯಾಸವು ಬಳಕೆದಾರರ ಗುರಿಗಳನ್ನು (ಸುಲಭ ಫಾರ್ಮ್ ಪೂರ್ಣಗೊಳಿಸುವಿಕೆ ಮತ್ತು ಸ್ಪಷ್ಟ ಡೇಟಾ ಪ್ರದರ್ಶನ) ಹೇಗೆ ಬೆಂಬಲಿಸುತ್ತದೆ ಎಂದು ಪರಿಗಣಿಸಿ**
|
||||
|
||||
### ಭಾಗ 2: ನಿಮ್ಮ ಕಸ್ಟಮ್ ಶೈಲಿ ವಿನ್ಯಾಸಮಾಡಿ
|
||||
|
||||
ಒಗ್ಗೂಡಿದ ದೃಶ್ಯ ವಿನ್ಯಾಸವನ್ನು ರಚಿಸಿ, ಇದರಲ್ಲಿ ಒಳಗೊಂಡಿವೆ:
|
||||
|
||||
**ಬಣ್ಣ ವಿನ್ಯಾಸ:**
|
||||
- ಪರಿಸರಾತ್ಮಕ ವಿಷಯಗಳನ್ನು ಪ್ರತಿಬಿಂಬಿಸುವ ಪ್ರಾಥಮಿಕ ಬಣ್ಣ ಪ್ಯಾಲೆಟ್ ಆಯ್ಕೆಮಾಡಿ
|
||||
- ಪ್ರವೇಶಾತೆಗೆ ಸೂಕ್ತವಾದ ಸಾಕಷ್ಟು ವಿವೇಚನೆಯನ್ನು ಖಚಿತಪಡಿಸಿ (WebAIM ಯಂತಹ ಸಾಧನಗಳನ್ನು ಬಳಸಿ)
|
||||
- ಬಣ್ಣಗಳು ವಿಭಿನ್ನ ಬ್ರೌಸರ್ ಥೀಮ್ಗಳಲ್ಲಿ ಹೇಗೆ ಕಾಣಿಸುತ್ತವೆ ಎಂದು ಪರಿಗಣಿಸಿ
|
||||
|
||||
**ಟೈಪೋಗ್ರಾಫಿ:**
|
||||
- ಸಣ್ಣ ವಿಸ್ತರಣೆ ಗಾತ್ರಗಳಲ್ಲಿ ಚೆನ್ನಾಗಿ ಕೆಲಸ ಮಾಡುವ ಓದಬಹುದಾದ ಫಾಂಟ್ಗಳನ್ನು ಆಯ್ಕೆಮಾಡಿ
|
||||
- ಸೂಕ್ತ ಫಾಂಟ್ ಗಾತ್ರಗಳು ಮತ್ತು ತೂಕಗಳೊಂದಿಗೆ ಸ್ಪಷ್ಟ ಹೈರಾರ್ಕಿಯನ್ನು ಸ್ಥಾಪಿಸಿ
|
||||
- ಪLights್ ಮತ್ತು ಡಾರ್ಕ್ ಬ್ರೌಸರ್ ಥೀಮ್ಗಳಲ್ಲಿ ಪಠ್ಯ ಸ್ಪಷ್ಟವಾಗುತ್ತದೆ ಎಂದು ಖಚಿತಪಡಿಸಿ
|
||||
|
||||
**ರೂಪರೇಖೆ ಮತ್ತು ಅಂತರ:**
|
||||
- ಫಾರ್ಮ್ ಅಂಶಗಳು ಮತ್ತು ಡೇಟಾ ಪ್ರದರ್ಶನದ ದೃಶ್ಯ ಸಂಘಟನೆಯನ್ನು ಸುಧಾರಿಸಿ
|
||||
- ಉತ್ತಮ ಓದುವಿಕೆಗಾಗಿ ಸೂಕ್ತ ಪ್ಯಾಡಿಂಗ್ ಮತ್ತು ಮಾರ್ಜಿನ್ಗಳನ್ನು ಸೇರಿಸಿ
|
||||
- ವಿಭಿನ್ನ ಪರದೆ ಗಾತ್ರಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ವಿನ್ಯಾಸ ತತ್ವಗಳನ್ನು ಪರಿಗಣಿಸಿ
|
||||
|
||||
### ಭಾಗ 3: ನಿಮ್ಮ ವಿನ್ಯಾಸವನ್ನು ಅನುಷ್ಠಾನ ಮಾಡಿ
|
||||
|
||||
ನಿಮ್ಮ ವಿನ್ಯಾಸವನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸಲು CSS ಕಡತಗಳನ್ನು ಬದಲಾಯಿಸಿ:
|
||||
|
||||
```css
|
||||
/* Example starting points for customization */
|
||||
|
||||
.form-data {
|
||||
/* Style the configuration form */
|
||||
background: /* your choice */;
|
||||
padding: /* your spacing */;
|
||||
border-radius: /* your preference */;
|
||||
}
|
||||
|
||||
.result-container {
|
||||
/* Style the data display area */
|
||||
background: /* complementary color */;
|
||||
border: /* your border style */;
|
||||
margin: /* your spacing */;
|
||||
}
|
||||
|
||||
/* Add your custom styles here */
|
||||
```
|
||||
|
||||
**ಶೈಲಿಗೊಳಿಸಲು ಮುಖ್ಯ ಪ್ರದೇಶಗಳು:**
|
||||
- **ಫಾರ್ಮ್ ಅಂಶಗಳು**: ಇನ್ಪುಟ್ ಫೀಲ್ಡ್ಗಳು, ಲೇಬಲ್ಗಳು, ಮತ್ತು ಸಲ್ಲಿಸುವ ಬಟನ್
|
||||
- **ಫಲಿತಾಂಶ ಪ್ರದರ್ಶನ**: ಡೇಟಾ ಕುಂಟೈನರ್, ಪಠ್ಯ ಶೈಲಿ, ಮತ್ತು ಲೋಡಿಂಗ್ ಸ್ಥಿತಿಗಳು
|
||||
- **ಆಂತರಿಕ ಅಂಶಗಳು**: ಹೋವರ್ ಪರಿಣಾಮಗಳು, ಬಟನ್ ಸ್ಥಿತಿಗಳು, ಮತ್ತು ಪರಿವರ್ತನೆಗಳು
|
||||
- **ಒಟ್ಟು ರೂಪರೇಖೆ**: ಕುಂಟೈನರ್ ಅಂತರ, ಹಿನ್ನೆಲೆ ಬಣ್ಣಗಳು, ಮತ್ತು ದೃಶ್ಯ ಹೈರಾರ್ಕಿ
|
||||
|
||||
### ಭಾಗ 4: ಪರೀಕ್ಷಿಸಿ ಮತ್ತು ಸುಧಾರಿಸಿ
|
||||
|
||||
1. **`npm run build`** ಜೊತೆಗೆ ನಿಮ್ಮ ವಿಸ್ತರಣೆಯನ್ನು ನಿರ್ಮಿಸಿ
|
||||
2. **ನಿಮ್ಮ ಬ್ರೌಸರ್ಗೆ ನವೀಕರಿಸಿದ ವಿಸ್ತರಣೆಯನ್ನು ಲೋಡ್ ಮಾಡಿ**
|
||||
3. **ಎಲ್ಲಾ ದೃಶ್ಯ ಸ್ಥಿತಿಗಳನ್ನು ಪರಿಶೀಲಿಸಿ** (ಫಾರ್ಮ್ ಎಂಟ್ರಿ, ಲೋಡಿಂಗ್, ಫಲಿತಾಂಶ ಪ್ರದರ್ಶನ, ದೋಷಗಳು)
|
||||
4. **ಬ್ರೌಸರ್ ಡೆವಲಪರ್ ಸಾಧನಗಳ ಮೂಲಕ ಪ್ರವೇಶಕರಣತೆಗೆ ಪರಿಶೀಲನೆ ಮಾಡಿ**
|
||||
5. **ವಾಸ್ತವಿಕ ಬಳಕೆಯ ಆಧಾರದ ಮೇಲೆ ನಿಮ್ಮ ಶೈಲಿಗಳನ್ನು ಸುಧಾರಿಸಿ**
|
||||
|
||||
## ಸೃಜನಾತ್ಮಕ ಸವಾಲುಗಳು
|
||||
|
||||
### ಬೇಸಿಕ್ ಮಟ್ಟ
|
||||
- ಬಣ್ಣಗಳು ಮತ್ತು ಫಾಂಟ್ ಸೇರಿಸಿ ಸದೃಢ ಥೀಮ್ ಸೃಷ್ಟಿಸಿ
|
||||
- ಇಂಟರ್ಫೇಸಿನ ಮೂಲಕ ಅಂತರ ಮತ್ತು ಅಳವಡಿಕೆಯನ್ನು ಸುಧಾರಿಸಿ
|
||||
- ಆಂತರಿಕ ಅಂಶಗಳಿಗೆ ಸೂಕ್ಷ್ಮ ಹೋವರ್ ಪರಿಣಾಮಗಳನ್ನು ಸೇರಿಸಿ
|
||||
|
||||
### ಮಧ್ಯಂತರ ಮಟ್ಟ
|
||||
- ನಿಮ್ಮ ವಿಸ್ತರಣೆಗೆ ಕಸ್ಟಮ್ ಐಕಾನ್ಗಳು ಅಥವಾ ಗ್ರಾಫಿಕ್ಗಳನ್ನು ವಿನ್ಯಾಸ ಮಾಡಿ
|
||||
- ವಿಭಿನ್ನ ಸ್ಥಿತಿಗಳ ಮಧ್ಯೆ ಸ್ಮೂತ್ ಪರಿವರ್ತನೆಗಳನ್ನು ಅನುಷ್ಠಾನ ಮಾಡಿ
|
||||
- API ಕರೆಗಳಿಗೆ ಏಕಕಾಲೀನ ಲೋಡಿಂಗ್ ಅನಿಮೆಷನ್ ರಚಿಸಿ
|
||||
|
||||
### ಉನ್ನತ ಮಟ್ಟ
|
||||
- ಹಲವೆಡೆ ಥೀಮ್ ಆಯ್ಕೆಗಳನ್ನು ವಿನ್ಯಾಸ ಮಾಡಿ (ಬಿಳಿ/ಕಪ್ಪು/ಅತ್ಯಧಿಕ ವೈರುದ್ದ)
|
||||
- ವಿಭಿನ್ನ ಬ್ರೌಸರ್ ವಿಂಡೋ ಗಾತ್ರಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ವಿನ್ಯಾಸವನ್ನು ಅನುಷ್ಠಾನ ಮಾಡಿ
|
||||
- ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ಹೆಚ್ಚಿಸುವ ಸೂಕ್ಷ್ಮ ಸಂವೇದನೆಗಳನ್ನು ಸೇರಿಸಿ
|
||||
|
||||
## ಸಲ್ಲಿಸುವ ಮಾರ್ಗಸೂಚಿಗಳು
|
||||
|
||||
ನಿಮ್ಮ ಪೂರ್ಣಗೊಂಡ ಕಾರ್ಯದಲ್ಲಿ ಇದನ್ನು ಒಳಗೊಂಡಿರಬೇಕು:
|
||||
|
||||
- **ನಿಮ್ಮ ಕಸ್ಟಮ್ ಶೈಲಿಯೊಂದಿಗೆ ಬದಲಾಯಿಸಿದ CSS ಕಡತಗಳು**
|
||||
- **ಬಳಕೆ ಮಾಡಲಾದ ವಿವಿಧ ಸ್ಥಿತಿಗಳಲ್ಲಿ ನಿಮ್ಮ ವಿಸ್ತರಣೆಯ ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳು** (ಫಾರ್ಮ್, ಲೋಡಿಂಗ್, ಫಲಿತಾಂಶ)
|
||||
- **ಸಣ್ಣ ವಿವರಣೆ** (2-3 ವಾಕ್ಯಗಳು) ನಿಮ್ಮ ವಿನ್ಯಾಸ ಆಯ್ಕೆಗಳು ಮತ್ತು ಅವು ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ಹೇಗೆ ಸುಧಾರಿಸುತ್ತವೆ ಎಂಬುದನ್ನು ವಿವರಿಸುವದು
|
||||
|
||||
## ಮೌಲ್ಯಮಾಪನ ಕ್ರಮ
|
||||
|
||||
| ಮಾನದಂಡ | ವಿರಳ (4) | ನೈಪುಣ್ಯ (3) | ಅಭಿವೃದ್ಧಿ (2) | ಪ್ರಾರಂಭ (1) |
|
||||
|----------|---------------|----------------|----------------|----------------|
|
||||
| **ದೃಶ್ಯ ವಿನ್ಯಾಸ** | ಕ್ರಿಯೇಟಿವ್, ಒಗ್ಗೂಡಿದ ವಿನ್ಯಾಸ, ಬಳಕೆಲಭ್ಯತೆಯನ್ನು ಬೆಳಸುತ್ತಿದ್ದ ಮತ್ತು ಬಲವಾದ ವಿನ್ಯಾಸ ಸಿದ್ಧಾಂತಗಳನ್ನು ಪ್ರತಿಬಿಂಬಿಸುವ | ಉತ್ತಮ ವಿನ್ಯಾಸ ಆಯ್ಕೆಗಳು, ಸತತ ಶೈಲಿ ಮತ್ತು ಸ್ಪಷ್ಟ ದೃಶ್ಯ ಹೈರಾರ್ಕಿ | ಮೂಲಭೂತ ವಿನ್ಯಾಸ ಸುಧಾರಣೆಗಳೊಂದಿಗೆ ಕೆಲವು ಸತತತೆ ಸಮಸ್ಯೆಗಳು | ಅಲ್ಪ ಶೈಲಿ ಬದಲಾವಣೆಗಳ ಅಥವಾ ಅಸತತ ವಿನ್ಯಾಸ |
|
||||
| **ಕಾರ್ಯಕ್ಷಮತೆ** | ಎಲ್ಲಾ ಶೈಲಿ ನೀಡಿದ ಸ್ಥಿತಿಗಳಲ್ಲಿ ಮತ್ತು ಬ್ರೌಸರ್ ಪರಿಸರಗಳಲ್ಲಿ ಸುಗಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ | ಶೈಲಿ ಅಲ್ಪ ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ ಉತ್ತಮ ಕೆಲಸ ಮಾಡುತ್ತವೆ | ಕೆಲವು ಪ್ರದರ್ಶನ ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ ಬಹುಶಃ ಶೈಲಿ ಕಾರ್ಯನಿರ್ವಹಣೆಯಲ್ಲ | ಬಳಕೆಲಭ್ಯತೆಗೆ ಪರಿಣಾಮ ಬೀರುವ ಪ್ರಮುಖ ಶೈಲಿ ಸಮಸ್ಯೆಗಳು |
|
||||
| **ಕೋಡ್ ಗುಣಮಟ್ಟ** | ಸ್ವಚ್ಛ, ಚೆನ್ನಾಗಿ ಸಂಯೋಜಿತ CSS, ಅರ್ಥಪೂರ್ಣ ಕ್ಲಾಸ್ ಹೆಸರುಗಳು ಮತ್ತು ಪರಿಣಾಮಕಾರಿ ಸಲೆಕ್ಟರ್ಗಳು | ಸೂಕ್ತ ಸಲೆಕ್ಟರ್ಗಳನ್ನು ಬಳಸಿ ಉತ್ತಮ CSS ರಚನೆ | ಸ್ವೀಕೃತ CSS ಕೇಸ್ ಕೆಲವೊಂದು ಸಂಘಟನೆ ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ | ಕೀಟಿಯ CSS ರಚನೆ ಅಥವಾ ಜಟಿಲ ಶೈಲಿ |
|
||||
| **ಪ್ರವೇಶಿಕತೆ** | ಉತ್ತಮ ಬಣ್ಣ ವಿವೇಚನೆ, ಓದಬಹುದಾದ ಫಾಂಟ್ಗಳು, ಮತ್ತು ಬಾಧಿತರಿಗೆ ಪರಿಗಣನೆ | ಉತ್ತಮ ಪ್ರವೇಶಿಕೆ ಅಭ್ಯಾಸಗಳು ಮತ್ತು ಸುಧಾರಣೆಗೆ ಮಾರ್ಗ | ಮೂಲಭೂತ ಪ್ರವೇಶಿಕೆಯ ಪರಿಗಣನೆ ಕೆಲವೊಂದಿಷ್ಟು ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ | ಪ್ರವೇಶಿಕೆಯ ಅಗತ್ಯತೆಯ ಮೇಲೆ ಸೀಮಿತ ಗಮನ |
|
||||
|
||||
## ಯಶಸ್ಸಿಗೆ ಸಲಹೆಗಳು
|
||||
|
||||
> 💡 **ವಿನ್ಯಾಸ ಸಲಹೆ**: ಸಣ್ಣ ಬದಲಾವಣೆಗಳಿಂದ ಪ್ರಾರಂಭಿಸಿ, ನಂತರ ಹೆಚ್ಚು ನಾಟಕೀಯ ಶೈಲಿಗೆ ಏರಿಕೆ ಮಾಡಿರಿ. ಟೈಪೋಗ್ರಾಫಿ ಮತ್ತು ಅಂತರದಲ್ಲಿ ಸಣ್ಣ ಸುಧಾರಣೆಗಳು ಅತಿ ಶ್ರೇಷ್ಠ ಗುಣಮಟ್ಟದ ಪರಿಣಾಮ ಉಂಟುಮಾಡುತ್ತವೆ.
|
||||
|
||||
**ಅನುಸರಿಸುವ ಉತ್ತಮ ಅಭ್ಯಾಸಗಳು:**
|
||||
- ನಿಮ್ಮ ವಿಸ್ತರಣೆಯನ್ನು ಬಿಳಿ ಮತ್ತು ಕಪ್ಪು ಬ್ರೌಸರ್ ಥೀಮ್ಗಳಲ್ಲಿ ಪರೀಕ್ಷಿಸಿ
|
||||
- ಉತ್ತಮ ವ್ಯಾಪ್ತಿಗಾಗಿ ಸಂಬಂಧಿತ ಘಟಕಗಳನ್ನು (em, rem) ಬಳಸಿ
|
||||
- CSS ಕಸ್ಟಮ್ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಬಳಸಿ ಸತತ ಅಂತರವನ್ನು ಕಾಯ್ದುಕೊಳ್ಳಿ
|
||||
- ವಿಭಿನ್ನ ದೃಶ್ಯ ಅಗತ್ಯಗಳ ಬಳಕೆದಾರರಿಗೆ ನಿಮ್ಮ ವಿನ್ಯಾಸ ಹೇಗೆ ಕಾಣುತ್ತದೆ ಎಂದು ಪರಿಗಣಿಸಿ
|
||||
- ನಿಮ್ಮ CSS ಸರಿಯಾದ ವ್ಯಾಕರಣವನ್ನು ಅನುಸರಿಸುವುದಾಗಿ ಪರಿಶೀಲಿಸಿ
|
||||
|
||||
> ⚠️ **ಸಾಮಾನ್ಯ ভুল:** ದೃಶ್ಯ ಆಕರ್ಷಕತೆಗಾಗಿ ಬಳಕೆಲಭ್ಯತೆ ಬಲಿ ಹಾಕಬೇಡಿ. ನಿಮ್ಮ ವಿಸ್ತರಣೆ ಚಿತ್ತಾಕರ್ಷಕ ಮತ್ತು ಕಾರ್ಯನಿರ್ವಹಣಾತ್ಮಕವಾಗಿರಬೇಕು.
|
||||
|
||||
**ಮರೆತುಬಾರದಿರಿ:**
|
||||
- ಪ್ರಮುಖ ಮಾಹಿತಿಯನ್ನು ಸುಲಭವಾಗಿ ಓದಬಹುದಾಗಿರಿಸಿ
|
||||
- ಬಟನ್ಗಳು ಮತ್ತು ಆಂತರಿಕ ಅಂಶಗಳನ್ನು ಕ್ಲಿಕ್ ಮಾಡಲು ಸುಲಭವಾಗಿರಲಿ
|
||||
- ಬಳಕೆದಾರ ಕ್ರಿಯೆಗಳಿಗೆ ಸ್ಪಷ್ಟ ದೃಶ್ಯ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಕಾಪಾಡಿ
|
||||
- ನಿಮ್ಮ ವಿನ್ಯಾಸವನ್ನು ನಿಜವಾದ ಡೇಟಾ ಜೊತೆ ಪರೀಕ್ಷಿಸಿ, ಕೇವಲ ಪ್ಲೇಸ್ಹೋಲ್ಡರ್ ಪಠ್ಯದಿಂದಲ್ಲ
|
||||
|
||||
ಕಾರ್ಯಕ್ಷಮ ಮತ್ತು ದೃಶ್ಯವಾಗಿ ಅದ್ಭುತವಾದ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಯನ್ನು ರಚಿಸುವಲ್ಲಿ ಶುಭಾಶಯಗಳು!
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಅಸ್ವೀಕಾರ**:
|
||||
ಈ ದಾಖಲೆ AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) を ಉಪಯೋಗಿಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಗೆ ಪ್ರಯತ್ನಿಸುವಾಗ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದದಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಸ್ಪಷ್ಟತೆಗಳಿರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿಯೇ ಇರುವ ಮೂಲ ದಾಖಲೆ ಅನ್ನು ಅಧಿಕೃತ ಮೂಲವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ತೀವ್ರ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮನುಷ್ಯ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಉಂಟಾದ ಯಾವುದೇ ತಪ್ಪುಗಳನ್ನು ಅಥವಾ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೊಳ್ಪುಗಳನ್ನು ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,597 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "b275fed2c6fc90d2b9b6661a3225faa2",
|
||||
"translation_date": "2026-01-08T15:27:43+00:00",
|
||||
"source_file": "5-browser-extension/3-background-tasks-and-performance/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ಯೋಜನೆ ಭಾಗ 3: ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಟಾಸ್ಕ್ಗಳು ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆ ಬಗ್ಗೆ ಮಾಹಿತಿ ಪಡೆದಿರಿ
|
||||
|
||||
```mermaid
|
||||
journey
|
||||
title ನಿಮ್ಮ ಕಾರ್ಯಕ್ಷಮತೆ ಸುಧಾರಣಾ ಯಾತ್ರೆ
|
||||
section ಆಧಾರ
|
||||
ಬ್ರೌಸರ್ ಸಾಧನಗಳನ್ನು ಕಲಿಕಾ: 3: Student
|
||||
ಪ್ರೊಫೈಲಿಂಗ್ ಅನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಿ: 4: Student
|
||||
ರಕ್ತಸ್ರಾವಗಳನ್ನು ಗುರುತಿಸಿ: 4: Student
|
||||
section ವಿಸ್ತರಣೆ ವೈಶಿಷ್ಟ್ಯಗಳು
|
||||
ಬಣ್ಣ ವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ಮಿಸಿ: 4: Student
|
||||
ಹಿನ್ನೆಲೆಯ ಕೆಲಸಗಳನ್ನು ಸೃಷ್ಟಿಸಿ: 5: Student
|
||||
ಐಕಾನ್ಗಳನ್ನು динамиಕಾಗಿ ನವೀಕರಿಸಿ: 5: Student
|
||||
section ಸುಧಾರಣೆ
|
||||
ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ನಿರೀಕ್ಷಿಸಿ: 5: Student
|
||||
ಸಮಸ್ಯೆಗಳನ್ನು ಡೀಬಗ್ ಮಾಡಿ: 4: Student
|
||||
ಅನುಭವವನ್ನು ಸೂಕ್ಷ್ಮಗೊಳಿಸಿ: 5: Student
|
||||
```
|
||||
ಕೆಲವು ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಗಳು ಏಕೆ ತ್ವರಿತ ಮತ್ತು ಪ್ರತಿಕ್ರಿಯಾಶೀಲವಾಗಿದೆಯೆಂದು ಆಶ್ಚರ್ಯವಾಗಿದೆಯೇ, ಬೇರೆವುಗಳು ನಿಧಾನವಾಗಿ ಅನಿಸುತ್ತದೆ? ರಹಸ್ಯವು ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ನಲ್ಲಿ ನಡೆಯುತ್ತಿರುವುದರಲ್ಲಿ ಇದೆ. ಬಳಕೆದಾರರು ನಿಮ್ಮ ವಿಸ್ತರಣೆಯ ಇಂಟರ್ಫೇಸನ್ನು ಕ್ಲಿಕ್ ಮಾಡುವಾಗ, ಡೇಟಾ ಪಡೆಯುವಿಕೆ, ಐಕಾನ್ ಅಪ್ಡೇಟ್ಗಳು ಮತ್ತು ಸಿಸ್ಟಮ್ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಮೌನವಾಗಿ ನಿರ್ವಹಿಸುವ ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಪ್ರಕ್ರಿಯೆಗಳ ಒಂದು ಸಂಪೂರ್ಣ ಜಗತ್ತು ಇದೆ.
|
||||
|
||||
ಇದು ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ಸರಣಿಯ ಕೊನೆಯ ಪಾಠ, ಮತ್ತು ನಾವು ನಿಮ್ಮ ಕಾರ್ಬನ್ ಫುಟ್ಪ್ರಿಂಟ್ ಟ್ರ್ಯಾಕರ್ ಅನ್ನು ನಯವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವಂತೆ ಮಾಡಲಿದ್ದೇವೆ. ನೀವು ಡೈನಾಮಿಕ್ ಐಕಾನ್ ಅಪ್ಡೇಟ್ಗಳನ್ನು ಸೇರಿಸಿ, ಸಮಸ್ಯೆಗಳಾಗದ ಮೊದಲು ಕಾರ್ಯಕ್ಷಮತೆ ಸಮಸ್ಯೆಗಳನ್ನು ಹೇಗೆ ಕಂಡುಹಿಡಿಯಬೇಕೆಂದು ಕಲಿತೀರಿ. ಇದು ರೇಸ್ ಕಾರನ್ನು ಸರಿಪಡಿಸುವಂತಿದೆ - ಸಣ್ಣ ಪರಿಷ್ಕಾರಗಳು ಎಲ್ಲವೂ ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂಬುದರಲ್ಲಿ ದೊಡ್ಡ ವ್ಯತ್ಯಾಸ ತರುತ್ತವೆ.
|
||||
|
||||
ನಾವು ಕೊನೆಗೊಳ್ಳುವ ವೇಳೆಗೆ, ನಿಮ್ಮ ವಿಸ್ತರಣೆ ಹೊಳೆಯುವಂತೆ ಆಗಿದ್ದು, ಉತ್ತಮ ವೆಬ್ ಆ್ಯಪ್ಗಳು ಹಾಗೂ ಅತ್ಯುತ್ತಮ ಆ್ಯಪ್ಗಳು ವಿಭಿನ್ನವಾಗುವ ಕಾರ್ಯಕ್ಷಮತೆ ತತ್ವಗಳನ್ನು ನೀವು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುತ್ತೀರಿ. ಬನ್ನಿ, ಬ್ರೌಸರ್ ಅನುವತನದ ನಾಡಿಗೆ ನುಗ್ಗೋಣ.
|
||||
|
||||
## ಪೂರ್ವ-ಪಾಠ ಪ್ರಶ್ನೋತ್ತರ
|
||||
|
||||
[ಪೂರ್ವ-ಪಾಠ ಪ್ರಶ್ನೋತ್ತರ](https://ff-quizzes.netlify.app/web/quiz/27)
|
||||
|
||||
### ಪರಿಚಯ
|
||||
|
||||
ನೇವಿ ಹಿಂದಿನ ಪಾಠಗಳಲ್ಲಿ ನೀವು ಒಂದು ಫಾರ್ಮ್ ನಿರ್ಮಿಸಿಕೊಂಡಿದ್ದೀರಿ, ಅದನ್ನು API ಗೆ ಸಂಪರ್ಕಿಸಿದೆ, ಮತ್ತು ಅಸಿಂಕ್ರೋನಸ್ ಡೇಟಾ ಪಡೆಯುವಿಕೆಯನ್ನು ನಡೆಸಿದ್ದೀರಿ. ನಿಮ್ಮ ವಿಸ್ತರಣೆ ಚೆನ್ನಾಗಿ ರೂಪುಗೊಳ್ಳುತ್ತಿದೆ.
|
||||
|
||||
ಈಗ ನಾವು ಅಂತಿಮ ಸ್ಪರ್ಶಗಳನ್ನು ಸೇರಿಸಬೇಕಾಗಿದೆ - ಕಾರ್ಬನ್ ಡೇಟಾದ ಆಧಾರದ ಮೇಲೆ ಆ ವಿಸ್ತರಣೆ ಐಕಾನ್ ಬಣ್ಣ ಬದಲಾವಣೆಯಾಗುವಂತೆ ಮಾಡುವುದು. ಇದು NASA ಹಾದಿ ಪಾಲೋ ಸ್ಪೇಸ್ಕ್ರಾಫ್ಟ್ನ ಪ್ರತಿಯೊಂದು ವ್ಯವಸ್ಥೆಯನ್ನು ಹೇಗೆ ಪರಿಷ್ಕರಿಸಬೇಕಾಯಿತು ಎಂದು ನೆನಪಿಗೆ ತರುತ್ತದೆ. ಅವರು ಯಾವುದೇ ವ್ಯರ್ಥವಾದ ಸೈಕಲ್ ಅಥವಾ ಮೆಮೊರಿ ವರ್ಧನೆಯ ಪ್ರಪಂಚದಲ್ಲಿರಲಿಲ್ಲ ಏಕೆಂದರೆ ಜೀವಗಳು ಕಾರ್ಯಕ್ಷಮತೆಯ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿದ್ದವು. ನಮ್ಮ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ಅಷ್ಟರ ಮಟ್ಟಿಗೆ ಗಂಭೀರವಾದ್ದಿಲ್ಲವಾದರೂ, ಅದೇ ತತ್ವಗಳು ಅನ್ವಯಿಸುತ್ತವೆ - ಪರಿಣಾಮಕಾರಿ ಕೋಡ್ ಉತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವಗಳನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ.
|
||||
|
||||
```mermaid
|
||||
mindmap
|
||||
root((ಕಾರ್ಯಕ್ಷಮತೆ ಮತ್ತು ಹಿನ್ನೆಲೆ ಕಾರ್ಯಗಳು))
|
||||
Browser Performance
|
||||
Rendering Pipeline
|
||||
Asset Optimization
|
||||
DOM Manipulation
|
||||
JavaScript Execution
|
||||
Profiling Tools
|
||||
Developer Tools
|
||||
Performance Tab
|
||||
Timeline Analysis
|
||||
Bottleneck Detection
|
||||
Extension Architecture
|
||||
Background Scripts
|
||||
Content Scripts
|
||||
Message Passing
|
||||
Icon Management
|
||||
Optimization Strategies
|
||||
Code Splitting
|
||||
Lazy Loading
|
||||
Caching
|
||||
Resource Compression
|
||||
Visual Feedback
|
||||
Dynamic Icons
|
||||
Color Coding
|
||||
Real-time Updates
|
||||
User Experience
|
||||
```
|
||||
## ವೆಬ್ ಕಾರ್ಯಕ್ಷಮತೆ ಮೂಲಭೂತಗಳು
|
||||
|
||||
ನಿಮ್ಮ ಕೋಡ್ ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಚಲಿಸಿದಾಗ, ಜನರು ವ್ಯತ್ಯಾಸವನ್ನು ನಿಜವಾಗಿಯೂ *ಅನುಭವಿಸಬಹುದು*. ಪೇಜ್ ತಕ್ಷಣಭಾಗಿ ಲೋಡ್ ಆಗುವುದನ್ನು ಅಥವಾ ಅನಿಮೇಷನ್ ಸವರಿಸಿಕೊಂಡು ಹೋಗುವುದನ್ನು ನೀವು ತಿಳಿದಿರುತ್ತೀರಿ? ಅದು ಉತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆಯ ಪರಿಣಾಮ.
|
||||
|
||||
ಕಾರ್ಯಕ್ಷಮತೆ ಮಾತ್ರವೇ ವೇಗವಲ್ಲ - ಅದು ಪ್ರಕೃತಿ ನಡವಳಿಕೆಯಂತೆ ಅನುಭವಿಸುವ ವೆಬ್ ಅನುಭವಗಳನ್ನು ನಿರ್ಮಿಸುವುದೇ. ಕಂಪ್ಯೂಟಿಂಗ್ ಮೊದಲ ಕಾಲಗಳಲ್ಲಿ, ಗ್ರೇಸ್ ಹಾಪರ್ ತನ್ನ ಡೆಸ್ಕ್ ನಲ್ಲಿ ನಿನೊಸೆಕೆಂಡ್ (ಒಂದು ಕಾಲು ಉದ್ದದ ತಂತಿ) ಇಡುತ್ತಾಳೆ, ಇದರಿಂದ ಒಂದು ಬಿಲಿಯನ್ ಭಾಗದ ಸೆಕೆಂಡ್ನಲ್ಲಿ ಬೆಳಕು ಎಷ್ಟು ದೂರ ಸಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ತೋರಿಸಲು. ಪ್ರತೀ ಮೈಸೆಕೆಂಡ್ ಕಂಪ್ಯೂಟಿಂಗ್ನಲ್ಲಿ ಎಷ್ಟೊಂದು ಮಹತ್ವವುಳ್ಳಿದೆ ಎಂದು ಅದೃಷ್ಟಪೂರ್ಣವಾಗಿ ವಿವರಿಸುವ ಮೂಲಕ ಅದು ಮಾಡಲಾಯಿತು. ನಾವೀಗ ಇದೇ ಮಾಹಿತಿಯನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುವ ಡಿಟೆಕ್ಟಿವ್ ಸಾಧನಗಳನ್ನು ಅನ್ವೇಷಿಸೋಣ.
|
||||
|
||||
> "ವೆಬ್ಸೈಟ್ ಕಾರ್ಯಕ್ಷಮತೆ ಎರಡು ವಿಷಯಗಳ ಬಗ್ಗೆ ಯಾವಾಗಲು ಇರುತ್ತದೆ: ಪುಟ ಎಷ್ಟು ಬೇಗ ಲೋಡ್ ಆಗುತ್ತದೆ ಮತ್ತು ಅದರಲ್ಲಿ ಇರುವ ಕೋಡ್ ಎಷ್ಟು ಬೇಗ ಚಲಿಸುತ್ತದೆ." -- [Zack Grossbart](https://www.smashingmagazine.com/2012/06/javascript-profiling-chrome-developer-tools/)
|
||||
|
||||
ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ಗಳನ್ನು ವಿವಿಧ ಸಾಧನಗಳಲ್ಲಿಯೂ, ಎಲ್ಲಾ ರೀತಿ ಬಳಕೆದಾರರಿಗಾಗಿ, ಎಲ್ಲ ರೀತಿ ಪರಿಸ್ಥಿತಿಗಳಲ್ಲಿಯೂ ಬ್ಲೈಸಿಂಗ್ ಸ್ಪೀಡ್ ಮಾಡುವುದು ಎಂದಾದರು ವಿಶಾಲ ವಿಷಯ. ನೀವು ಸ್ಟ್ಯಾಂಡರ್ಡ್ ವೆಬ್ ಪ್ರಾಜೆಕ್ಟ್ ಅಥವಾ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ನಿರ್ಮಿಸುವಾಗ ನಮೂದಿಸುವ ಕೆಲವು ಅಂಶಗಳನ್ನು ಇಲ್ಲಿ ಗಮನಿಸಿರಿ.
|
||||
|
||||
ನಿಮ್ಮ ಸೈಟ್ನೊಂದಿಗೆ ಅತ್ಯುತ್ತಮ ಅನುವತನ ಮಾಡಲು ಮೊದಲ ಹಂತವು ಅಂಡರ್ ದಿ ಹೂಡ್ ಏನಾಗುತ್ತಿದೆಯೋ ತಿಳಿದುಕೊಳ್ಳುವುದು. ಘನತೆಯಿಂದ, ನಿಮ್ಮ ಬ್ರೌಸರ್ ಒಂದು ಶಕ್ತಿ ಶುಕ್ಷುಮಕೃಪಯುಕ್ತ ಡಿಟೆಕ್ಟಿವ್ ಸಾಧನಗಳನ್ನು ಒಳಗೊಂಡಿದೆ.
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A[HTML] --> B[ಪುಟ解析]
|
||||
B --> C[ಡಿಓಎಂ ಮರ]
|
||||
D[CSS] --> E[解析]
|
||||
E --> F[CSSOM]
|
||||
G[JavaScript] --> H[ನಿರ್ವಹಿಸಿ]
|
||||
|
||||
C --> I[ರೆಂಡರ್ ಮರ]
|
||||
F --> I
|
||||
H --> I
|
||||
|
||||
I --> J[ಲೇಔಟ್]
|
||||
J --> K[ಚಿತ್ರವರ್ಣನ]
|
||||
K --> L[ಸಂಯೋಜನೆ]
|
||||
L --> M[ಪ್ರದರ್ಶನ]
|
||||
|
||||
subgraph "ಗಂಭೀರ ರೆಂಡರಿಂಗ್ ಮಾರ್ಗ"
|
||||
N["1. HTML解析"]
|
||||
O["2. CSS解析"]
|
||||
P["3. JS ನಡಿಸಿ"]
|
||||
Q["4. ರೆಂಡರ್ ಮರ ನಿರ್ಮಿಸಿ"]
|
||||
R["5. ಅಂಶಗಳ ವಿನ್ಯಾಸ"]
|
||||
S["6. ಪಿಕ್ಸೆಲ್ಗಳ ಚಿತ್ರಣ"]
|
||||
T["7. ಪದರ ಸಂಯೋಜನೆ"]
|
||||
end
|
||||
|
||||
style M fill:#e8f5e8
|
||||
style I fill:#fff3e0
|
||||
style H fill:#ffebee
|
||||
```
|
||||
ಎಡ್ಜ್ನಲ್ಲಿ ಡೆವಲಪರ್ ಟೂಲ್ಗಳನ್ನು ತೆರೆಯಲು, ಮೇಲೆ ಬಲಪ್ರದೇಶದಲ್ಲಿರುವ ಮೂವರು ಬಿಂದುಗಳನ್ನು ಕ್ಲಿಕ್ ಮಾಡಿ, ನಂತರ More Tools > Developer Tools ಗೆ ಹೋಗಿ. ಅಥವಾ ಕೀಬೋರ್ಡ್ ಶಾರ್ಟ್ಕಟ್ ಅನ್ನು ಬಳಸಿ: ವಿಂಡೋಸ್ನಲ್ಲಿ `Ctrl` + `Shift` + `I` ಅಥವಾ ಮ್ಯಾಕ್ನಲ್ಲಿ `Option` + `Command` + `I`. ಅಲ್ಲಿ ತಲುಪಿದ ಮೇಲಾಗ, Performance ಟ್ಯಾಬ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಿ - ಇಲ್ಲಿ ನೀವು ನಿಮ್ಮ ತನಿಖೆಯನ್ನು ಮಾಡುತ್ತೀರಿ.
|
||||
|
||||
**ನಿಮ್ಮ ಕಾರ್ಯಕ್ಷಮತೆ ಡಿಟೆಕ್ಟಿವ್ ಉಪಕರಣಗಳು ಇಲ್ಲಿವೆ:**
|
||||
- **ತೆರೆಯಿರಿ** ಡೆವಲಪರ್ ಟೂಲ್ಗಳು (ನೀವು ಡೆವಲಪರ್ ಆಗಿ ಹದಿನೈದು ಬಾರಿ ಬಳಸುವಿರಿ!)
|
||||
- **ಹೊಕ್ಕಿರಿ** Performance ಟ್ಯಾಬ್ - ಇದನ್ನು ನಿಮ್ಮ ವೆಬ್ ಆಪ್ ಫಿಟ್ನೆಸ್ ಟ್ರ್ಯಾಕರ್ ಎಂದು ಪರಿಗಣಿಸಿ
|
||||
- **ಒತ್ತಿರಿ** Record ಬಟನ್ ಮತ್ತು ನಿಮ್ಮ ಪುಟದ ಕ್ರಿಮ್ಮಣವನ್ನು ಗಮನಿಸಿ
|
||||
- **ಅಧ್ಯಯನ ಮಾಡಿ** ಫಲಿತಾಂಶವನ್ನು, ಏನು ನಿಧಾನಗೊಳ್ಳುತ್ತಿದೆ ನೋಡಿ
|
||||
|
||||
ಈದು ಪ್ರಯತ್ನಿಸೋಣ. ಒಂದು ವೆಬ್ಸೈಟ್ ತೆರೆಯಿರಿ (Microsoft.com ಚೆನ್ನಾಗಿದೆ) ಮತ್ತು 'Record' ಬಟನ್ ಒತ್ತಿ. ಈಗ ಪುಟವನ್ನು ರಿಫ್ರೆಶ್ ಮಾಡಿ ಮತ್ತು ಪ್ರೊಫೈಲರ್ ಕ್ರಿಯೆಯನ್ನು ಸೆರೆಹಿಡಿಯುವುದನ್ನು ನೋಡಿ. ನೀವು ರೆಕಾರ್ಡ್ ನಿಲ್ಲಿಸಿದಾಗ, ಬ್ರೌಸರ್ 'ಸ್ಕ್ರಿಪ್ಟ್', 'ರೆಂಡರ್', ಮತ್ತು 'ಪೇಂಟ್' ಆಗುವ ವೈಯಕ್ತಿಕ ವಿವರವನ್ನು ನೋಡುತ್ತೀರಿ. ಇದು ರಾಕೆಟ್ ಲಾಂಚ್ ಸಮಯದ ಮಿಷನ್ ಕಂಟ್ರೋಲ್ ನಲ್ಲಿ ಪ್ರತಿ ವ್ಯವಸ್ಥೆಯನ್ನು ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡುವ ರೀತಿಯಾಗಿದೆ - ನೀವು ನಿಜ ಸಮಯದಲ್ಲಿ ಏನು ಮತ್ತು ಯಾವಾಗ ನಡೆಯುತ್ತಿದೆ ಎಂಬ ಡೇಟಾವನ್ನು ಪಡೆಯುತ್ತೀರಿ.
|
||||
|
||||

|
||||
|
||||
✅ [Microsoft ಡಾಕ್ಯುಮೆಂಟೇಷನ್](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance/?WT.mc_id=academic-77807-sagibbon) ನಲ್ಲಿ ಹೆಚ್ಚು ವಿವರಗಳನ್ನು ತಿಳಿದುಕೊಳ್ಳಬಹುದು
|
||||
|
||||
> ಪ್ರೋ ಟಿಪ್: ಪರೀಕ್ಷಿಸುವ ಮೊದಲು ನಿಮ್ಮ ಬ್ರೌಸರ್ ಕ್ಯಾಶೆ ತೆರವುಗೊಳಿಸಿ, ಇದು ಮೊದಲ ಬಾರಿಗೆ ಭೇಟಿನಿಡುವವರಿಗೆ ನಿಮ್ಮ ಸೈಟ್ ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ತಿಳಿದುಕೊಳ್ಳಲು ಸಹಾಯಕ - ಇದು ಪುನಃ ಭೇಟಿಗೆ ಭಿನ್ನವಾಗಿರಬಹುದು!
|
||||
|
||||
ಪ್ರೊಫೈಲ್ ಟೈಮ್ಲೈನ್ನ ಅಂಶಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಿ ನಿಮ್ಮ ಪುಟ ಲೋಡ್ ಆಗುವ ಸಂದರ್ಭಗಳಲ್ಲಿ ನಡೆದ ಘಟನೆಗಳನ್ನು ಸಮೀಪದಿಂದ ನೋಡಿ.
|
||||
|
||||
ಪ್ರೊಫೈಲ್ ಟೈಮ್ಲೈನ್ನ ಭಾಗ ಆಯ್ಕೆ ಮಾಡಿ ಸಾರಾಂಶ ಪೇನ್ ನಲ್ಲಿ ನಿಮ್ಮ ಪುಟದ ಕಾರ್ಯಕ್ಷಮತೆಯ ಸ್ನಾಪ್ಶಾಟ್ ಪಡೆಯಿರಿ:
|
||||
|
||||

|
||||
|
||||
ಈವೆಂಟ್ ಲಾಗ್ ಪೇನ್ (Event Log pane) ತಪಾಸಿಸಿ ಯಾವುದೇ ಈವೆಂಟ್ 15 ಮಿಲಿಸೆಕೆಂಡ್ ಗಿಂತ ಹೆಚ್ಚು ಸಮಯ ತೆಗೆದುಕೊಂಡಿದೆಯೇ ಎಂಬುದನ್ನು ನೋಡಿ:
|
||||
|
||||

|
||||
|
||||
✅ ನಿಮ್ಮ ಪ್ರೊಫೈಲರ್ ಪರಿಚಯಿಸಿದರು! ಈ ಸೈಟ್ನಲ್ಲಿ ಡೆವಲಪರ್ ಟೂಲ್ಗಳನ್ನು ತೆರೆಯಿರಿ, ಯಾವುದಾದರೂ ಸಮಸ್ಯೆಗಳಿವೆ ಎಂಬುದನ್ನು ನೋಡಿ. ಏನು ಅತ್ಯಂತ ನಿಧಾನವಾಗಿ ಲೋಡ್ ಆಗುತ್ತದೆ? ಏನು ಅತ್ಯಂತ ವೇಗವಾಗಿ?
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
A[ಡೆವ್ ಟೂಲ್ಸ್ ತೆರೆಯಿರಿ] --> B[ಕಾರ್ಯಕ್ಷಮತಾ ತುಣುಕುಗೆ ನಾವಿಗೇಟ್ ಮಾಡಿ]
|
||||
B --> C[ರಿಕಾರ್ಡ್ ಬಟನ್ ಕ್ಲಿಕ್ ಮಾಡಿ]
|
||||
C --> D[ಕ್ರಿಯೆಗಳು ಮಾಡಿ]
|
||||
D --> E[ರಿಕಾರ್ಡಿಂಗ್ ನಿಲ್ಲಿಸಿ]
|
||||
E --> F{ಫಲಿತಾಂಶವನ್ನ ವಿಶ್ಲೇಷಿಸಿ}
|
||||
|
||||
F --> G[ಟೈಮ್ ಲೈನ್ ಪರಿಶೀಲಿಸಿ]
|
||||
F --> H[ನೆಟ್ವರ್ಕ್ ವಿಮರ್ಶಿಸಿ]
|
||||
F --> I[ಸ್ಕ್ರಿಪ್ಟ್ಸ್ ಪರಿಶೀಲಿಸಿ]
|
||||
F --> J[ಪೇಂಟ್ ಘಟನಗಳನ್ನು ಗುರುತಿಸಿ]
|
||||
|
||||
G --> K{ದೀರ್ಘ ಕಾರ್ಯಗಳು?}
|
||||
H --> L{ದೊಡ್ಡ ಆಸ್ತಿಗಳು?}
|
||||
I --> M{ರೆಂಡರ್ ಬ್ಲಾಕಿಂಗ್?}
|
||||
J --> N{ಖರ್ಚು ಹೆಚ್ಚು ಪೇಂಟುಗಳು?}
|
||||
|
||||
K -->|ಹೌದು| O[ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಆಪ್ಟಿಮೈಸ್ ಮಾಡಿ]
|
||||
L -->|ಹೌದು| P[ಆಸ್ತಿಗಳನ್ನು ಸಂಕುಚಿತಗೊಳಿಸಿ]
|
||||
M -->|ಹೌದು| Q[ಅಸಿಂಕ್/ಡೆಫರ್ ಸೇರಿಸಿ]
|
||||
N -->|ಹೌದು| R[ಶೈಲಿಗಳನ್ನು ಸರಳಗೊಳಿಸಿ]
|
||||
|
||||
O --> S[ಮರು ಪರೀಕ್ಷೆ ಮಾಡಿ]
|
||||
P --> S
|
||||
Q --> S
|
||||
R --> S
|
||||
|
||||
style A fill:#e1f5fe
|
||||
style F fill:#fff3e0
|
||||
style S fill:#e8f5e8
|
||||
```
|
||||
## ಪ್ರೊಫೈಲ್ ಮಾರ್ಗದಲ್ಲಿ ಯಾವುವುದನ್ನು ನೋಡಬೇಕು
|
||||
|
||||
ಪ್ರೊಫೈಲರ್ ಓಡಿಸುವುದು ಪ್ರಾರಂಭ ಮಾತ್ರ - ನಿಜವಾದ ಕೌಶಲ್ಯ ಅಂದರೆ ಆ ಬಣ್ಣೀಕಾರಿಯಾದ ಚಾರ್ಟುಗಳು ನಿಮ್ಮಿಗೆ ಏನನ್ನು ಹೇಳುತ್ತಿವೆ ಎಂಬುದನ್ನು ತಿಳಿದುಕೊಳ್ಳುವುದು. ಚಿಂತೆ ಬೇಡ, ನೀವು ಓದುತ್ತanonದೆ ಅಭ್ಯಾಸ ಮಾಡುತ್ತೀರಿ. ಅನುಭವಸಂಪನ್ನ ಡೆವಲಪರ್ಗಳು ಪೂರ್ಣ ಸಮಸ್ಯೆಗಳು ಆಗಲು ಮುಂಚೆ ಮುಂಜಾಗ್ರತೆಯ ಸೂಚಕಗಳನ್ನು ಗುರುತಿಸಬಲ್ಲರು.
|
||||
|
||||
ನಮ್ಮ ಸಾಮಾನ್ಯ ಆರೋಪಿಗಳನ್ನು ಚರ್ಚಿಸೋಣ - ಕಾರ್ಯಕ್ಷಮತೆಯಲ್ಲಿ ತೊಂದರೆ ಉಂಟುಮಾಡುವ ಇವು ವೆಬ್ ಪ್ರಾಜೆಕ್ಟ್ಗಳಿಗೆ ಶೀಘ್ರವಾಗಿ ಲ್ಮುಗ್ಗಿ ಬರುವವು. ಮರೀ ಕುರಿ ತನ್ನ ಪ್ರಯೋಗಾಲಯದಲ್ಲಿ ಕಿರಣಮಾನದ ಮಟ್ಟಗಳನ್ನು ಜಾಗರೂಕರಾಗಿ ನೋಡಿಕೊಂಡಂತೆ, ನಾವು ಕೂಡ ಇದನ್ನು ಗಮನಿಸಬೇಕು. ಮುಂಚೆಯೇ ಹಿಡಿದರೆ ನಿಮಗೂ (ಮತ್ತು ಬಳಕೆದಾರರಿಗೆ) ಹೆಚ್ಚಿನ ದುರಂತ ತಪ್ಪುತ್ತದೆ.
|
||||
|
||||
**ಆಸೆಟ್ ಅಳತೆಗಳು**: ವೆಬ್ಸೈಟ್ಗಳು ವರ್ಷಗಳಿಂದ 'ಭಾರಿ' ಆಗುತ್ತಿವೆ, ಮತ್ತು ಆ ಭಾರದ ಬಹುಭಾಗವು ಚಿತ್ರಗಳಿಂದ ಬರುತ್ತದೆ. ನಾವು ನಮ್ಮ ಡಿಜಿಟಲ್ ಸ್ಯುಟ್ಕೇಸ್ನಲ್ಲಿ ಹೆಚ್ಚಾಗಿ ತುಂಬುತ್ತಿರುವಂತೆ.
|
||||
|
||||
✅ [Internet Archive](https://httparchive.org/reports/page-weight) ನೋಡಿ ಪುಟದ ಅಳತೆ ಹೇಗೆ ಬೆಳವಣಿಗೆ ಕಂಡಿದೆ - ಬಹಳ ತಿಳಿವಳಿಕೆಯಿದೆ.
|
||||
|
||||
**ನಿಮ್ಮ ಆಸ್ತಿಗಳನ್ನು ತಗ್ಗಿಸಲು ವಿಧಾನಗಳು:**
|
||||
- **ಕಾಂಪ್ರೆಸೆಸ್** ಮಾಡಿ ಚಿತ್ರಗಳನ್ನು! WebP ಮುಂತಾದ ಆಧುನಿಕ ಫಾರ್ಮ್ಯಾಟ್ಗಳು ಕಡಿಮೆ ಫೈಲ್ ಗಾತ್ರಗಳನ್ನು ನೀಡುತ್ತವೆ
|
||||
- **ಸರಿಯಾದ ಚಿತ್ರ ಗಾತ್ರ** ಪ್ರತಿಯೊಂದು ಸಾಧನಕ್ಕೆ ಸೇವ್ ಮಾಡಿ - ದೊಡ್ಡ ಡೆಸ್ಕ್ಟಾಪ್ ಚಿತ್ರಗಳನ್ನು ಫೋನ್ಗಳಿಗೆ ಕಳುಹಿಸಬೇಡಿ
|
||||
- **ಮಿನಿಫೈ** ಮಾಡಿ ನಿಮ್ಮ CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ - ಪ್ರತೀ ಬೈಟ್ ಮುಖ್ಯ
|
||||
- **ಲೇಜಿ ಲೋಡಿಂಗ್** ಬಳಸಿ, ಚಿತ್ರಗಳನ್ನು ಬಳಕೆದಾರರು ಸ್ಕ್ರೋಲ್ ಮಾಡಿದಾಗ ಮಾತ್ರ ಡೌನ್ಲೋಡ್ ಆಗುವಂತೆ ಮಾಡಿ
|
||||
|
||||
**DOM ಸಂಚಾರಗಳು**: ಬ್ರೌಸರ್ ನಿಮ್ಮ ಬರೆದ ಕೋಡಿಗನುಸಾರವಾಗಿ ಡಾಕ್ಯುಮೆಂಟ್ ಆಬ್ಜೆಕ್ಟ್ ಮಾದರಿಯನ್ನು ಕಟ್ಟಬೇಕು, ಆದ್ದರಿಂದ ಉತ್ತಮ ಪುಟ ಕಾರ್ಯಕ್ಷಮತೆಯ ಬಗ್ಗೆ ನಿದರ್ಶನವಾಗಿ ನಿಮ್ಮ ಟ್ಯಾಗ್ಗಳನ್ನು ಕನಿಷ್ಟವಾಗಿಡಿ, ಪುಟಕ್ಕೆ ಅಗತ್ಯವಿರುವ ಮತ್ತು ಅದನ್ನು ಶೈಲಿಸುವುದರಲ್ಲಿ ಮಾತ್ರ ಉಪಯೋಗಿಸಿ. ಈ ದೃಷ್ಟಿಯಿಂದ, ಪುಟಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಹೆಚ್ಚುವರಿ CSS ಅನ್ನು ಪರಿಷ್ಕರಿಸಬಹುದು; ಬರವಣಿಗೆಗೆ ಅಗತ್ಯವಿರುವ ಶೈಲಿಗಳು ಒಂದು ಪುಟದಲ್ಲಿ ಮಾತ್ರ ಬಳಕೆ ಮಾಡಬೇಕಾದರೆ ಮುಖ್ಯ ಶೈಲಿ ಪಟ್ಟಿಯಲ್ಲಿ ಸೇರಿಸುವ ಅಗತ್ಯವಿಲ್ಲ.
|
||||
|
||||
**DOM ಪರಿಷ್ಕರಣೆಯ ಮುಖ್ಯ ತಂತ್ರಗಳು:**
|
||||
- **HTML ಮೂಲಭೂತ ಅಂಶಗಳು ಮತ್ತು ನೆಸ್ಟಿಂಗ್ ಮಟ್ಟಗಳನ್ನು ಕನಿಷ್ಟಗೊಳಿಸುತ್ತದೆ**
|
||||
- **ಬಳಸದ CSS ನಿಯಮಗಳನ್ನು ತೆಗೆಯುತ್ತದೆ ಹಾಗೂ ಶೈಲಿ ಪತ್ರಿಕೆಗಳನ್ನು ಸಮರ್ಥವಾಗಿ ಏಕೀಕರಿಸುತ್ತದೆ**
|
||||
- **ಪ್ರತಿ ಪುಟಕ್ಕೆ ಅಗತ್ಯವಿರುವುದನ್ನು ಮಾತ್ರ ಲೋಡ್ ಮಾಡಲು CSS ಅನ್ನು ವ್ಯವಸ್ಥಿತಗೊಳಿಸುತ್ತದೆ**
|
||||
- **ಉತ್ತಮ ಬ್ರೌಸರ್ ಪಾರ್ಸಿಂಗ್ ನimalಿ HTML ಅನ್ನು ಸ್ತრუქტುರಿಂಗ್ ಮಾಡುತ್ತದೆ**
|
||||
|
||||
**JavaScript**: ಪ್ರತಿಯೊಬ್ಬ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಡೆವಲಪರ್ 'ರೆಂಡರ್-ಬ್ಲಾಕಿಂಗ್' ಸ್ಕ್ರಿಪ್ಟ್ಗಳನ್ನು ಗಮನಿಸಬೇಕು, ಅವು DOM ಅನ್ನು ಪಾರದರ್ಶಕವಾಗಿ ಪರಿಶೀಲಿಸುವ ಮತ್ತು ಬ್ರೌಸರಿನಲ್ಲಿ ಚಿತ್ರಿಸುವ ಮೊದಲು ಲೋಡ್ ಆಗಬೇಕು. ನಿಮ್ಮ INLINE ಸ್ಕ್ರಿಪ್ಟ್ಗಳಿಗೆ `defer` ಬಳಸುವ ಬಗ್ಗೆ ಯೋಚಿಸಿ (Terrarium ಮ友情链接ೊದೆ ಮಾಡಿರುವಂತೆ).
|
||||
|
||||
**ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಪರಿಷ್ಕರಣಾ ತಂತ್ರಗಳು:**
|
||||
- **DOM ಪಾರ್ಸಿಂಗ್ ನಂತರ ಸ್ಕ್ರಿಪ್ಟ್ಗಳನ್ನು ಲೋಡ್ ಮಾಡಲು `defer` ಗುಣಲಕ್ಷಣವನ್ನು ಬಳಸುತ್ತದೆ**
|
||||
- **ಕೋಡ್ ವಿಭಜನೆಯನ್ನು ಅಳವಡಿಸಿಕೊಡುತ್ತದೆ, ಕೇವಲ ಅಗತ್ಯ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಲೋಡ್ ಮಾಡುತ್ತದೆ**
|
||||
- **ಮಹತ್ವಪೂರ್ಣವಲ್ಲದ ಕಾರ್ಯಾಚರಣೆಗಳಿಗೆ ಲೇಸಿ ಲೋಡಿಂಗ್ ಅನ್ನು ಅನ್ವಯಿಸುತ್ತದೆ**
|
||||
- **ಭಾರದ್ ಲೈಬ್ರರಿಗಳು ಮತ್ತು ಫ್ರೇಮ್ವರ್ಕ್ಗಳನ್ನು ತಗ್ಗಿಸುತ್ತದೆ ಸಾಧ್ಯವಾದರೆ**
|
||||
|
||||
✅ ಸಾಮಾನ್ಯವಾಗಿ ಇರುವ ಪರಿಶೀಲನೆಗಳ ಬಗ್ಗೆ ತಿಳಿಯಲು ಕೆಲವು ಸೈಟ್ ಗಳನ್ನು [Site Speed Test website](https://www.webpagetest.org/) ನಲ್ಲಿ ಪ್ರಯತ್ನಿಸಿ
|
||||
|
||||
### 🔄 **ಶಿಕ್ಷಣಾತ್ಮಕ ಪರಿಶೀಲನೆ**
|
||||
**ಕಾರ್ಯಕ್ಷಮತೆ ಅರಿವು**: ವಿಸ್ತರಣೆ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ನಿರ್ಮಿಸುವ ಮೊದಲು ಖಾತ್ರಿ ಪಡಿಸಿಕೊಳ್ಳಿ ನೀವು:
|
||||
- ✅ HTML ರಿಂದ ಪಿಕ್ಸೆಲ್ಗೆ ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾಥ್ ವಿವರಿಸಬಲ್ಲಿರಿ
|
||||
- ✅ ವೆಬ್ ಆ್ಯಮ್ಗಳನ್ನು ಸಾಮಾನ್ಯ ಕಾರ್ಯಕ್ಷಮತೆ ತೊಂದರೆಗಳು ಗುರುತಿಸಬಲ್ಲಿರಿ
|
||||
- ✅ ಬ್ರೌಸರ್ ಡೆವಲಪರ್ ಟೂಲ್ಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಪೇಜ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಪ್ರೊಫೈಲ್ ಮಾಡಬಲ್ಲಿರಿ
|
||||
- ✅ ಆಸ್ತಿ ಗಾತ್ರ ಹಾಗೂ DOM ಸಂಕೀರ್ಣತೆ ವೇಗದ ಮೇಲೆ ಹೇಗೆ ಪ್ರಭಾವ ಬೀರುತ್ತವೆ ಅರ್ಥ ಮಾಡಿಕೊಳ್ಳಿರಿ
|
||||
|
||||
**ತ್ವರಿತ ಸ್ವಯಂ-ಪರೀಕ್ಷೆ**: ನೀವು ರೆಂಡರ್-ಬ್ಲಾಕಿಂಗ್ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಹೊಂದಿದ್ದರೆ ಏನು ಸಂಭವಿಸುತ್ತದೆ?
|
||||
*ಉತ್ತರ: ಬ್ರೌಸರ್ HTML ಅನ್ನು ಮುಂದುವರೆಸಲು ಮತ್ತು ಪುಟವನ್ನು ರೆಂಡರ್ ಮಾಡಲು ಮುಂಚಿತವಾಗಿ ಆ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಿ ಕಾರ್ಯಗತಗೊಳಿಸಬೇಕು*
|
||||
|
||||
**ವಾಸ್ತವ ಕಾರ್ಯಕ್ಷಮತೆ ಪ್ರಭಾವ:**
|
||||
- **100ms ವಿಳಂಬ**: ಬಳಕೆದಾರರು ನಿಧಾನತೆಯನ್ನು ಗಮನಿಸುತ್ತಾರೆ
|
||||
- **1 ಸೆಕೆಂದಿನ ವಿಳಂಬ**: ಬಳಕೆದಾರರು ತಮ್ಮ ಗಮನ ಕಳೆದುಕೊಳ್ಳುತ್ತಾರೆ
|
||||
- **3+ ಸೆಕೆಂಡ್ಗಳು**: 40% ಬಳಕೆದಾರರು ಪುಟವನ್ನು ತೊರೆದಿಟ್ಟುಹೋಗುತ್ತಾರೆ
|
||||
- **ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ಗಳು**: ಕಾರ್ಯಕ್ಷಮತೆ ಇನ್ನಷ್ಟು ಮುಖ್ಯ
|
||||
|
||||
ನೀವು ಬ್ರೌಸರ್ಗೆ ಕಳುಹಿಸುವ ಆಸ್ತಿಗಳನ್ನು ಹೇಗೆ ರೆಂಡರ್ ಮಾಡುತ್ತದೆ ಎಂಬ ತಿಳಿವಳಿಕೆ ಹೊಂದಿದ್ದೀರಿ, ಈಗ ನಿಮ್ಮ ವಿಸ್ತರಣೆಯನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು ಅಗತ್ಯವಿರುವ ಕೊನೆಯ ಕೆಲವು ವಿಷಯಗಳನ್ನು ನೋಡೋಣ:
|
||||
|
||||
### ಬಣ್ಣವನ್ನು ಗಣನೆ ಮಾಡುವ ಫಂಕ್ಷನ್ ರಚಿಸಿ
|
||||
|
||||
ಈಗ ನಾವು ಸಂಖ್ಯಾತ್ಮಕ ಡೇಟಾವನ್ನು ಅರ್ಥಪೂರ್ಣ ಬಣ್ಣಗಳಲ್ಲಿ ಪರಿವರ್ತಿಸುವ ಫಂಕ್ಷನ್ ರಚಿಸೋಣ. ಇದನ್ನು ಟ್ರಾಫಿಕ್ ಲೈಟ್ ವ್ಯವಸ್ಥೆಯಂತೆ ಪರಿಗಣಿಸಿ - ಸ್ವಚ್ಛ ವಿದ್ಯುತ್ಗೆ ಹಸು ಬಣ್ಣ, ಹೆಚ್ಚು ಕಾರ್ಬನ್ ತೀವ್ರತೆಗಾಗಿ ಕೆಂಪು ಬಣ್ಣ.
|
||||
|
||||
ಈ ಫಂಕ್ಷನ್ ನಮ್ಮ API ನಿಂದ CO2 ಡೇಟಾವನ್ನು ತೆಗೆದುಕೊಂಡು ಪರಿಸರ ಪರಿಣಾಮವನ್ನು ಅತ್ಯುತ್ತಮವಾಗಿ ಸೂಚಿಸುವ ಬಣ್ಣವನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ. ವಿಜ್ಞಾನಿಗಳು ಕಂಠದಂತ ಶಕ್ತಿಶಾಲಿಯ ಡೇಟಾ ಮಾದರಿಗಳನ್ನು ವರ್ತಿಸಲು ಬಣ್ಣ-ಕೋಡಿಂಗ್ ಬಳಸುವ ರೀತಿಯಾಗಿ - ಸಮುದ್ರ ತಾಪಮಾನಗಳಿಂದ ನಕ್ಷತ್ರಗಳ ರಚನೆಗೆ. ಇದನ್ನು `/src/index.js` ಯಲ್ಲಿ ಈಗಾಗಲೇ ನಾವು ರಚಿಸಿದ `const` ಚರಗಳ ನಂತರ ಸೇರಿಸೋಣ:
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A[CO2 ಮೌಲ್ಯ] --> B[ಅಂತಿಮ ಪ್ರಮಾಣ ಬಿಂದುವನ್ನು ಹುಡುಕಿ]
|
||||
B --> C[ಪ್ರಮಾಣ ಸೂಚ್ಯಂಕ ಪಡೆಯಿರಿ]
|
||||
C --> D[ಬಣ್ಣಕ್ಕೆ ನಕ್ಷೆ ಮಾಡು]
|
||||
D --> E[ಹಿಂದಿನ ಭಾಗಕ್ಕೆ ಕಳುಹಿಸಿ]
|
||||
|
||||
subgraph "ಬಣ್ಣ ಪ್ರಮಾಣ"
|
||||
F["0-150: ಹಸಿರು (ಶುದ್ಧ)"]
|
||||
G["150-600: ಹಳದಿ (ಮಧ್ಯಮ)"]
|
||||
H["600-750: ಕಿತ್ತಳೆ (ಅತ್ಯಧಿಕ)"]
|
||||
I["750+: ಬೂದು (ಅತ್ಯಂತ ಹೆಚ್ಚುವರಿ)"]
|
||||
end
|
||||
|
||||
subgraph "ಸಂದೇಶ ಕಳುಹಿಸುವಿಕೆ"
|
||||
J[ವಿಷಯ ಸ್ಕ್ರಿಪ್ಟ್]
|
||||
K[chrome.runtime.sendMessage]
|
||||
L[ಹಿಂದಿನ ಭಾಗದ ಸ್ಕ್ರಿಪ್ಟ್]
|
||||
M[ಐಕಾನ್ ನವೀಕರಣ]
|
||||
end
|
||||
|
||||
style A fill:#e1f5fe
|
||||
style D fill:#e8f5e8
|
||||
style E fill:#fff3e0
|
||||
```
|
||||
```javascript
|
||||
function calculateColor(value) {
|
||||
// CO2 ತೀವ್ರತೆ ಪ್ರಮಾಣವನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಿ (ಗ್ರಾಂಗಳ ಪ್ರತಿ ಕಿಲೋವಾಟ್ಘಂಟೆ)
|
||||
const co2Scale = [0, 150, 600, 750, 800];
|
||||
// ಹಸಿವು (ಶುದ್ಧ) ರಿಂದ ಕಂದು ಕAnonymous (ಅಧಿಕ ಕಾರ್ಬನ್) ಗೆ ಹೊಂದಾಣಿಕೆಯ ಬಣ್ಣಗಳು
|
||||
const colors = ['#2AA364', '#F5EB4D', '#9E4229', '#381D02', '#381D02'];
|
||||
|
||||
// ನಮ್ಮ ಇನ್ಪುಟ್ಗೆ ಅತ್ಯಂತ ಸನ್ನಿಹಿತ ಪ್ರಮಾಣ ಮೌಲ್ಯವನ್ನು ಕಂಡುಹಿಡಿ
|
||||
const closestNum = co2Scale.sort((a, b) => {
|
||||
return Math.abs(a - value) - Math.abs(b - value);
|
||||
})[0];
|
||||
|
||||
console.log(`${value} is closest to ${closestNum}`);
|
||||
|
||||
// ಬಣ್ಣ ನಕ್ಷೆಗಾಗಿ ಸೂಚಿಗಾಗಿ ಕಂಡುಹಿಡು
|
||||
const num = (element) => element > closestNum;
|
||||
const scaleIndex = co2Scale.findIndex(num);
|
||||
|
||||
const closestColor = colors[scaleIndex];
|
||||
console.log(scaleIndex, closestColor);
|
||||
|
||||
// ಹಿನ್ನಲೆಯಲ್ಲಿ ಕಾರ್ಯಚಟುವಟಿಕೆಗೆ ಬಣ್ಣ ನವೀಕರಣ ಸಂದೇಶವನ್ನು ಕಳುಹಿಸಿ
|
||||
chrome.runtime.sendMessage({ action: 'updateIcon', value: { color: closestColor } });
|
||||
}
|
||||
```
|
||||
|
||||
**ಈ ಛಟಾಕ್ಷಮ ಫಂಕ್ಷನ್ ವ್ಯಾಖ್ಯಾನದಾಂಶ:**
|
||||
- **ಎರಡು ಅನುರೂಪಿತ ಸರಣಿಗಳನ್ನು ಸ್ಥಾಪಿಸುತ್ತದೆ** - ಒಬ್ಬರಿಗಾಗಿ CO2 ಮಟ್ಟಗಳು, ಮತ್ತೊಬ್ಬರಿಗಾಗಿ ಬಣ್ಣಗಳು (ಹಸಿರು = ಸ್ವಚ್ಛ, ಬೂದು = ಮಲಿನ!)
|
||||
- **ನಿಜವಾದ CO2 ಮೌಲ್ಯದ ಹತ್ತಿರದ ಹೊಂದಾಣಿಕೆಯನ್ನು ಹುಡುಕುತ್ತದೆ** ಕೆಲವು ಚುರುಕಾದ ಸರಣಿ ವಿಂಗಡಣೆಯನ್ನು ಬಳಸಿ
|
||||
- **findIndex() ವಿಧಾನ ಬಳಸಿ ಹೊಂದಾಣಿಕೆ ಬಣ್ಣವನ್ನು ಹಿಡಿಯುತ್ತದೆ**
|
||||
- **ನಮ್ಮ ಆಯ್ದ ಬಣ್ಣವೊಂದಿಗೆ ನಿರ್ಮಿತ Chrome ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಸ್ಕ್ರಿಪ್ಟ್ಗೆ ಸಂದೇಶ ಕಳುಹಿಸುತ್ತದೆ**
|
||||
- **ಡಿಯುಟಿಫುಲ್ ಸ್ಟ್ರಿಂಗ್ ಫಾರ್ಮ್ಯಾಟಿಂಗ್ಕ್ಕೆ ಟೆಂಪ್ಲೇಟ್ ಲಿಟರಲ್ಸ್ (backticks) ಬಳಕೆಯಾಗಿದೆ**
|
||||
- **const ಘೋಷಣೆಗಳೊಂದಿಗೆ ಎಲ್ಲವನ್ನೂ ವ್ಯವಸ್ಥಿತಗೊಳಿಸುತ್ತದೆ**
|
||||
|
||||
`chrome.runtime` [API](https://developer.chrome.com/extensions/runtime) ನಿಮ್ಮ ವಿಸ್ತರಣೆಯ ನರ್ವಸ್ ಸಿಸ್ಟಮ್ನಂತೆ - ಇದು ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಸಂವಹನ ಮತ್ತು ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ:
|
||||
|
||||
> "ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಪುಟವನ್ನು ಪಡೆಯಲು, ಮ್ಯಾನಿಫೆಸ್ಟ್ ವಿವರಗಳನ್ನು ಹಿಂತಿರುಗಿಸಲು, ಹಾಗೂ ಆಪ್ ಅಥವಾ ವಿಸ್ತರಣೆ ಜೀವನಚಕ್ರದಲ್ಲಿನ ಘಟನೆಗಳಿಗಾಗಿ ಕೇಳಲು ಮತ್ತು ಪ್ರತಿಕ್ರಿಯಿಸಲು chrome.runtime API ಅನ್ನು ಬಳಸಿ. ನೀವು URL ಗಳುನ್ಪೂರ್ಣಯೋಜಿತ URLs ಗೆ ಪರಿವರ್ತಿಸಲು ಈ API ಕೂಡ ಬಳಸಬಹುದು."
|
||||
|
||||
**ಕ್ರೋಮ್ ರನ್ಟೈಮ್ API उपयोगದ ಮುಖ್ಯ ಕಾರಣಗಳು:**
|
||||
- **ನಿಮ್ಮ ವಿಸ್ತರಣೆಯ ವಿಭಿನ್ನ ಭಾಗಗಳ ನಡುವೆ ಸಂವಹನ ಮುಕ್ತವಾಗಿ ಮಾಡಲು ಅವಕಾಶ ಮಾಡಿಕೊಡುತ್ತದೆ**
|
||||
- **ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸನ್ನು ಜಮಲಾಗದಂತೆ ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಕೆಲಸಗಳು ನಿರ್ವಹಿಸುತ್ತದೆ**
|
||||
- **ನಿಮ್ಮ ವಿಸ್ತರಣೆಯ ಜೀವನಚಕ್ರದ ಘಟನೆಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ**
|
||||
- **ಸ್ಕ್ರಿಪ್ಟ್ಗಳ ನಡುವೆ ಸಂದೇಶ ವಿನಿಮಯ ಸುಲಭಗೊಳಿಸುತ್ತದೆ**
|
||||
|
||||
✅ ನೀವು Edge ಗಾಗಿ ಈ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಯನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತಿದ್ದರೆ, ನೀವು ಕ್ರೋಮ್ API ಅನ್ನು ಬಳಸುತ್ತಿದ್ದೀರಂತೆ ಆಶ್ಚರ್ಯವಾಗಬಹುದು. ಹೊಸ Edge ಬ್ರೌಸರ್ ಸಂಸ್ಕರಣೆಗಳು ಕ್ರೋಮಿಯಂ ಎಂಜಿನ್ ಮೇಲೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ, ಆದ್ದರಿಂದ ನೀವು ಈ ಸಾಧನಗಳನ್ನು ಬಳಕೆ ಮಾಡಬಹುದು.
|
||||
|
||||
```mermaid
|
||||
architecture-beta
|
||||
group browser(logos:chrome)[ಬ್ರೌಸರ್]
|
||||
|
||||
service popup(logos:html5)[ಪಾಪ್ಅಪ್ UI] in browser
|
||||
service content(logos:javascript)[ಸಾಮಗ್ರಿ ಸ್ಕ್ರಿಪ್ಟ್] in browser
|
||||
service background(database)[ಹಿನ್ನಲೆ ಸ್ಕ್ರಿಪ್ಟ್] in browser
|
||||
service api(logos:api)[ಬಾಹ್ಯ API] in browser
|
||||
|
||||
popup:R -- L:content
|
||||
content:R -- L:background
|
||||
background:T -- B:api
|
||||
content:T -- B:api
|
||||
|
||||
junction junctionCenter in browser
|
||||
popup:R -- L:junctionCenter
|
||||
junctionCenter:R -- L:background
|
||||
```
|
||||
> **ಪ್ರೋ ಟಿಪ್**: ನೀವು ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಯ ಪ್ರೊಫೈಲಿಂಗ್ಗಾಗಿ ಬಯಸಿದರೆ, ವಿಸ್ತರಣೆ ಒಳಗಿನ ಡೆವ್ ಟೂಲ್ಗಳನ್ನು ಪ್ರಾರಂಭಿಸಿ, ಏಕೆಂದರೆ ಅದು ಸ್ವಂತ ಬ್ರೌಸರ್ ಘಟಕವಾಗಿದೆ. ಇದು ವಿಸ್ತರಣೆ-ನಿರ್ದಿಷ್ಟ ಕಾರ್ಯಕ್ಷಮತೆ ಮೀಟ್ರಿಕ್ಸ್ಗಳಿಗೆ ಪ್ರವೇಶವನ್ನು ಒದಗಿಸುತ್ತದೆ.
|
||||
|
||||
### ಡೀಫಾಲ್ಟ್ ಐಕಾನ್ ಬಣ್ಣವನ್ನು ಹೊಂದಿಸಿ
|
||||
|
||||
ನಿಜವಾದ ಡೇಟಾವನ್ನು ಪಡೆಯುವುದಕ್ಕೆ ಮುಂಚೆ, ನಾವು ವಿಸ್ತರಣೆಗೆ ಪ್ರಾರಂಭಿಕ ಸ್ಥಿತಿ ಒದಗಿಸೋಣ. ಯಾರಿಗೂ ಖಾಲಿ ಅಥವಾ ಮುರಿದಂತೆ ಕಾಣುವ ಐಕಾನ್ ಇಷ್ಟವಿಲ್ಲ. ನಾವು ಹಸಿರು ಬಣ್ಣದಿಂದ ಪ್ರಾರಂಭಿಸೋಣ, ಇದರಿಂದ ಬಳಕೆದಾರರು ವಿಸ್ತರಣೆ ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿದ ಕ್ಷಣದಿಂದಲೇ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದೆ ಎಂದು ತಿಳಿಯುತ್ತಾರಂತೆ.
|
||||
|
||||
ನಿಮ್ಮ `init()` ಫಂಕ್ಷನ್ನಲ್ಲಿ ಆ ಡೀಫಾಲ್ಟ್ ಹಸಿರು ಐಕಾನ್ ಹೊಂದಿಸಿ:
|
||||
|
||||
```javascript
|
||||
chrome.runtime.sendMessage({
|
||||
action: 'updateIcon',
|
||||
value: {
|
||||
color: 'green',
|
||||
},
|
||||
});
|
||||
```
|
||||
|
||||
**ಈ ಆರಂಭಿಕರಣದಿಂದ ಎನು ಸಾಧಿಯಾಗುತ್ತದೆ:**
|
||||
- **ನಿರಪೇಕ್ಷ ಹಸಿರು ಬಣ್ಣವನ್ನು ಡೀಫಾಲ್ಟ್ ಸ್ಥಿತಿಯಾಗಿ ಹೊಂದಿಸುತ್ತದೆ**
|
||||
- **ವಿಸ್ತರಣೆ ಲೋಡ್ ಆಗುವಾಗ ತಕ್ಷಣಿಕ ದೃಷ್ಟಿಗೋಚರ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ**
|
||||
- **ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಸ್ಕ್ರಿಪ್ಟ್ಗಳೊಂದಿಗೆ ಸಂವಹನ ಮಾದರಿಯನ್ನು ಸ್ಥಾಪಿಸುತ್ತದೆ**
|
||||
- **ಡೇಟಾ ಲೋಡ್ ಆಗುವ ಮೊದಲು ಬಳಕೆದಾರರು ಕಾರ್ಯಾನುಷ್ಠಾನ ವಿಸ್ತರಣೆಯನ್ನು ನೋಡುತ್ತಾರೆ**
|
||||
|
||||
### ಫಂಕ್ಷನ್ ಅನ್ನು ಕರೆದಿರಿ, ಕರೆ ಕಾರ್ಯಗತಗೊಳಿಸಿ
|
||||
|
||||
ಈಗ ನಾವು ಎಲ್ಲವನ್ನು ಸಂಪರ್ಕಿಸೋಣ, ಆದ್ದರಿಂದ ಹೊಸ CO2 ಡೇಟಾ ಬಂದಿದೆ, ನಿಮ್ಮ ಐಕಾನ್ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸರಿಯಾದ ಬಣ್ಣದಿಂದ ಅಪ್ಡೇಟ್ ಆಗುತ್ತದೆ. ಇದು ವಿದ್ಯುತ್ ಸಾಧನದ ಕೊನೆಯ ಸರ್ಕ್ಯೂಟ್ ಸಂಪರ್ಕಿಸುವಂತಹದ್ದು - ಎಲ್ಲ ವಿಭಿನ್ನ ಅಂಗಾಂಶಗಳು ಒಂದೇ ವ್ಯವಸ್ಥೆಯಂತೆ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಶುರುವಾಗುತ್ತದೆ.
|
||||
|
||||
API ನಿಂದ CO2 ಡೇಟಾ ಪಡೆದ ಮನೆಯಲ್ಲಿ ಈ ಸಾಲನ್ನು ಸೇರಿಸಿ:
|
||||
|
||||
```javascript
|
||||
// API ನಿಂದ CO2 ಮಾಹಿತಿಯನ್ನು ಪಡೆದುಕೊಳ್ಳುವುದರ ನಂತರ
|
||||
// let CO2 = data.data[0].intensity.actual;
|
||||
calculateColor(CO2);
|
||||
```
|
||||
|
||||
**ಈ ಏಕೀಕರಣವು ಸಾಧಿಸುವುದು:**
|
||||
- **API ಡೇಟಾ ಹರಿವನ್ನು ದೃಶ್ಯ ಸೂಚಕ ವ್ಯವಸ್ಥೆಗೆ ಸಂಪರ್ಕಿಸುತ್ತದೆ**
|
||||
- **ಹೊಸ ಡೇಟಾ ಬಂದಾಗ ಐಕಾನ್ ಅಪ್ಡೇಟ್ ಆಗಲು ಪ್ರೇರೇಪಿಸುತ್ತದೆ**
|
||||
- **ಪ್ರಸ್ತುತ ಕಾರ್ಬನ್ ತೀವ್ರತೆಯ ಆಧಾರದ ಮೇಲೆ ನಿಜ ಕಾಲದ ದೃಶ್ಯ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಖಾತ್ರಿ ಪಡಿಸುತ್ತದೆ**
|
||||
- **ಡೇಟಾ ಪಡೆಯುವಿಕೆ ಮತ್ತು ಪ್ರದರ್ಶನ ತಂತ್ರಾಂಶಗಳ ಮಧ್ಯೆ ಪ್ರತ್ಯೇಕತೆ ಉಳಿಸುತ್ತದೆ**
|
||||
|
||||
ಕೊನೆಗೆ, `/dist/background.js` ನಲ್ಲಿ ಈ ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಕ್ರಿಯೆಗಳ ಕರೆಗಳಿಗೆ ಶ್ರೋತೃನ್ ಸೇರಿಸಿ:
|
||||
|
||||
```javascript
|
||||
// ವಿಷಯ ಸ್ಕ್ರಿಪ್ಟ್ನಿಂದ ಸಂದേശಗಳನ್ನು ಕೇಳಿ
|
||||
chrome.runtime.onMessage.addListener(function (msg, sender, sendResponse) {
|
||||
if (msg.action === 'updateIcon') {
|
||||
chrome.action.setIcon({ imageData: drawIcon(msg.value) });
|
||||
}
|
||||
});
|
||||
|
||||
// ಕ್ಯಾನ್ವಾಸ್ API ಬಳಸಿ động ಐಕಾನ್ ಅನ್ನು ಬಿಡಿಸಿ
|
||||
// energy lollipop ವಿಸ್ತರಣೆನಿಂದ ಸಾಲಾಗಿ - ಚೆನ್ನಾದ ವೈಶಿಷ್ಟ್ಯ!
|
||||
function drawIcon(value) {
|
||||
// ಉತ್ತಮ ಪ್ರದರ್ಶನಕ್ಕಾಗಿ ಒಂದು ಆಫ್ಸ್ಕ್ರೀನ್ ಕ್ಯಾನ್ವಾಸ್ ತಯಾರಿಸಿ
|
||||
const canvas = new OffscreenCanvas(200, 200);
|
||||
const context = canvas.getContext('2d');
|
||||
|
||||
// ಕಾರ್ಬನ್ ತೀವ್ರತೆಯನ್ನು ಪ್ರತಿನಿಧಿಸುವ ಬಣ್ಣದ ವೃತ್ತವನ್ನು ಬಿಡಿಸಿ
|
||||
context.beginPath();
|
||||
context.fillStyle = value.color;
|
||||
context.arc(100, 100, 50, 0, 2 * Math.PI);
|
||||
context.fill();
|
||||
|
||||
// ಬ್ರೌಸರ್ ಐಕಾನ್ ಗಾಗಿ ಚಿತ್ರ ಡೇಟಾವನ್ನು ಹಿಂತಿರುಗಿಸಿ
|
||||
return context.getImageData(50, 50, 100, 100);
|
||||
}
|
||||
```
|
||||
|
||||
**ಈ ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಸ್ಕ್ರಿಪ್ಟ್ ಏನು ಮಾಡುತ್ತದೆ:**
|
||||
- **ನಿಮ್ಮ ಮುಖ್ಯ ಸ್ಕ್ರಿಪ್ಟ್ನಿಂದ ಸಂದೇಶಗಳನ್ನು ಕೇಳುತ್ತದೆ (ರಿಸೆಪ್ಷನಿಸ್ಟ್ ಫೋನ್ಗಳು ಸ್ವೀಕರಿಸುವಂತಿದೆ)**
|
||||
- **'updateIcon' ವಿನಂತಿಗಳನ್ನು ಪ್ರಕ್ರಿಯೆ ಮಾಡುತ್ತದೆ ಮತ್ತು ನಿಮ್ಮ ಟೂಲ್ಬಾರ್ ಐಕಾನ್ ಬದಲಾಯಿಸುತ್ತದೆ**
|
||||
- **Canvas API ಬಳಸಿ ಹೊಸ ಐಕಾನ್ಗಳನ್ನು ರಚಿಸುತ್ತದೆ**
|
||||
- **ಸರಳ ಬಣ್ಣದ ವೃತ್ತವನ್ನು ಬಿಡಿಸುತ್ತದೆ ಇದು ಪ್ರಸ್ತುತ ಕಾರ್ಬನ್ ತೀವ್ರತೆಯನ್ನು ತೋರಿಸುತ್ತದೆ**
|
||||
- **ನಿಮ್ಮ ಬ್ರೌಸರ್ ಟೂಲ್ಬಾರ್ ಅನ್ನು ಹೊಸ ಐಕಾನ್తో ಅಪ್ಡೇಟ್ ಮಾಡುತ್ತದೆ**
|
||||
- **UI ಬ್ಲಾಕಿಂಗ್ ಇಲ್ಲದೆ ಹೃದಯಸ್ಪಂದನ ಕಾರ್ಯಕ್ಷಮತೆಗಾಗಿ OffscreenCanvas ಬಳಕೆ ಮಾಡುತ್ತದೆ**
|
||||
|
||||
✅ ನೀವು Canvas API ಬಗ್ಗೆ ಇನ್ನಷ್ಟು ತಿಳಿದುಕೊಳ್ಳಲು [Space Game ಪಾಠಗಳು](../../6-space-game/2-drawing-to-canvas/README.md) ನೋಡಿ.
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant CS as ವಿಷಯ ಸ್ಕ್ರಿಪ್ಟ್
|
||||
participant BG as ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಸ್ಕ್ರಿಪ್ಟ್
|
||||
participant Canvas as ಆಫ್ಸ್ಕ್ರೀನ್ ಕ್ಯಾನ್ವಾಸ್
|
||||
participant Browser as ಬ್ರೌಸರ್ ಐಕಾನ್
|
||||
|
||||
CS->>BG: sendMessage({action: 'updateIcon', color})
|
||||
BG->>Canvas: new OffscreenCanvas(200, 200)
|
||||
Canvas->>Canvas: getContext('2d')
|
||||
Canvas->>Canvas: beginPath() + fillStyle + arc()
|
||||
Canvas->>Canvas: fill() + getImageData()
|
||||
Canvas->>BG: Return image data
|
||||
BG->>Browser: chrome.action.setIcon(imageData)
|
||||
Browser->>Browser: ಟೂಲ್ಬಾರ್ ಐಕಾನ್ ನವೀಕರಿಸಿ
|
||||
```
|
||||
### 🔄 **ಶಿಕ್ಷಣಾತ್ಮಕ ಪರಿಶೀಲನೆ**
|
||||
**ಪೂರ್ಣ ವಿಸ್ತರಣೆ ಅರಿವು**: ಸಂಪೂರ್ಣ ವ್ಯವಸ್ಥೆಯ ಮೇಲೆ ನಿಮ್ಮ ನಿಪುಣತೆ ಪರಿಶೀಲಿಸಿ:
|
||||
- ✅ ವಿಭಿನ್ನ ವಿಸ್ತರಣೆ ಸ್ಕ್ರಿಪ್ಟ್ಗಳ ನಡುವೆ ಸಂದೇಶ ವಿನಿಮಯ ಹೇಗೆ ನಡೆಯುತ್ತದೆ?
|
||||
- ✅ ಕಾರ್ಯಕ್ಷಮತೆಗೆ OffscreenCanvas ಯಾಕೆ ಸಾಮಾನ್ಯ Canvas ಬದಲು ಬಳಸಲಾಗುತ್ತದೆ?
|
||||
- ✅ ಕ್ರೋಮ್ ರಂಟೈಮ್ API ವಿಸ್ತರಣೆ ಸ್ಥಾಪನೆಯಲ್ಲಿ ಯಾವ ಭಾಗವಹnahme ಮಾಡುತ್ತದೆ?
|
||||
- ✅ ಬಣ್ಣ ಲೆಕ್ಕ ಹಾಕುವ ఆల್ಗೋರಿದಮ್ ಡೇಟಾವನ್ನು ದೃಶ್ಯ ಪ್ರತಿಕ್ರಿಯೆಗೆ ಹೇಗೆ ನಕ್ಷೆಗೊಳಿಸುತ್ತದೆ?
|
||||
|
||||
**ಕಾರ್ಯಕ್ಷಮತೆ ಪರಿಗಣನೆಗಳು**: ನಿಮ್ಮ ವಿಸ್ತರಣೆ ಈಗ ತೋರಿಸುತ್ತದೆ:
|
||||
- **ಕಾರ್ಯಕ್ಷಮ ಸಂದೇಶ ವಿನಿಮಯ**: ಸ್ಕ್ರಿಪ್ಟ್ ಸಂದರ್ಭಗಳ ನಡುವೆ ಸ್ವಚ್ಛ ಸಂವಹನ
|
||||
- **ಆಪ್ಟಿಮೈಸ್ ರೆಂಡರಿಂಗ್**: OffscreenCanvas UI ತಡೆಕಟ್ಟುವಿಕೆಯನ್ನು ತಡೆಯುತ್ತದೆ
|
||||
- **ರಿಯಲ್ ಟೈಮ್ ಅಪ್ಡೇಟ್ಸ್**: ಜೀವಂತ ಡೇಟಾದ ಆಧಾರದ ಮೇಲೆ ಐಕಾನ್ ಬದಲಾವಣೆಗಳು
|
||||
- **ಸ್ಮೃತಿ ನಿರ್ವಹಣೆ**: ಸರಿಯಾದ ಕ್ಲೀನಪ್ ಮತ್ತು ಸಂಪನ್ಮೂಲ ಹ್ಯಾಂಡ್ಲಿಂಗ್
|
||||
|
||||
**ನಿಮ್ಮ ವಿಸ್ತರಣೆಯನ್ನು ಪರೀಕ್ಷಿಸುವ ಸಮಯ:**
|
||||
- **ಎಲ್ಲವನ್ನೂ ನಿರ್ಮಿಸಿ** `npm run build`ಯೊಂದಿಗೆ
|
||||
- ಬ್ರೌಸರ್ನಲ್ಲಿ ನಿಮ್ಮ ವಿಸ್ತರಣೆಯನ್ನು **ಪುನರಾರಂಭಿಸಿ** (ಈ ಹಂತವನ್ನು ಮರೆಯಬೆಡಿ)
|
||||
- ನಿಮ್ಮ ವಿಸ್ತರಣೆಯನ್ನು **ತರೆದುಕೊಳ್ಳಿ** ಮತ್ತು ಆ ಐಕಾನ್ ಬಣ್ಣ ಬದಲಾವಣೆಯನ್ನು ನೋಡಿ
|
||||
- ಜಾಗತಿಕ ಮೂಲದಿಂದ ನಿಜವಾದ ಕಾರ್ಬನ್ ಡೇಟಾಕೆ ಇದು ಹೇಗೆ ಪ್ರತಿಕ್ರಿಯಿಸುತ್ತದೆ ಎಂದು **ಪರಿಶೀಲಿಸಿ**
|
||||
|
||||
ಈಗ ನೀವು ಎಷ್ಟು ಲಾಂಡ್ರಿ ಮಾಡುವುದಕ್ಕೆ ಸರಿಯಾದ ಸಮಯವೋ ಅಥವಾ ಶುದ್ಧ ಮತ್ತು ಶಕ್ತಿ ಬಾಳಿಕೆಗಾಗಿ ನಿರೀಕ್ಷಿಸಬೇಕೋ ಒಂದೇ ನೋಟದಲ್ಲಿ ತಿಳಿದುಕೊಳ್ಳಬಹುದು. ನೀವು ನಿಜವಾದ ಉಪಯುಕ್ತ ವಸ್ತುವನ್ನು ನಿರ್ಮಿಸಿದ್ದೀರಿ ಮತ್ತು ಬ್ರೌಸರ್ ಕಾರ್ಯಕ್ಷಮತೆಯ ಬಗ್ಗೆ ತಿಳಿದುಕೊಂಡಿದ್ದೀರಿ.
|
||||
|
||||
## GitHub Copilot ಏಜೆಂಟ್ ಚಾಲೆಂಜ್ 🚀
|
||||
|
||||
ಕೆಳಗಿನ ಚಾಲೆಂಜ್ ಪೂರ್ಣಗೊಳಿಸಲು ಏಜೆಂಟ್ ಮೋಡ್ ಬಳಸಿರಿ:
|
||||
|
||||
**ವಿವರಣೆ:** ವಿಸ್ತರಣೆ ಕಾರ್ಯಕ್ಷಮತೆ ಮಾನಿಟರಿಂಗ್ ಸಾಮರ್ಥ್ಯವನ್ನು ಸುಧಾರಿಸುವಂತೆ ವಿಶೇಷತೆ ಸೇರಿಸಿ, ಇದು ವಿಸ್ತರಣೆ ವಿವಿಧ ಘಟಕಗಳ ಲೋಡ್ ಸಮಯಗಳನ್ನು ತಡೆಯುತ್ತದೆ ಮತ್ತು ತೋರಿಸುತ್ತದೆ.
|
||||
|
||||
**ಪ್ರಾಂಪ್ಟ್:** ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಗೆ ಕಾರ್ಯಕ್ಷಮತೆ ಮಾನಿಟರಿಂಗ್ ವ್ಯವಸ್ಥೆಯನ್ನು ರಚಿಸಿ, ಇದು API ನಿಂದ CO2 ಡೇಟಾವನ್ನು ಪಡೆಯಲು, ಬಣ್ಣಗಳನ್ನು ಲೆಕ್ಕ ಹಾಕಲು ಮತ್ತು ಐಕಾನ್ ನವೀಕರಿಸಲು ತೆಗೆದುಕೊಳ್ಳುವ ಸಮಯವನ್ನು ಮર્યಾದಿಸುತ್ತದೆ ಮತ್ತು ದಾಖಲಿಸುತ್ತದೆ. `performanceTracker` ಎಂಬ ಕಾರ್ಯವನ್ನು ಸೇರಿಸಿ, ಇದು Performance API ಬಳಸಿ ಈ ಕಾರ್ಯಗಳನ್ನು ಅಳೆಯುತ್ತದೆ ಮತ್ತು ಬ್ರೌಸರ್ ಕಂಸೋಲ್ನಲ್ಲಿ ಟೈಮ್ಸ್ಟ್ಯಾಂಪ್ಗಳ ಜತೆಗೆ ಅವಧಿ ಮಾನದಂಡಗಳನ್ನು ಪ್ರದರ್ಶಿಸುತ್ತದೆ.
|
||||
|
||||
[ಎಜೆಂಟ್ ಮೋಡ್ ಕುರಿತು ಇನ್ನಷ್ಟು ತಿಳಿದುಕೊಳ್ಳಿ](https://code.visualstudio.com/blogs/2025/02/24/introducing-copilot-agent-mode) ಇಲ್ಲಿ.
|
||||
|
||||
## 🚀 ಚಾಲೆಂಜ್
|
||||
|
||||
ಇದು ಒಂದು ರೋಚಕ ತನಿಖಾ ಕಾರ್ಯ: ವರ್ಷಗಳಿಂದ ಇರುತ್ತಾ ಇದ್ದ ಕೆಲವು open source ವೆಬ್ ಸೈಟ್ಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಿ (ವಿಕಿಪೀಡಿಯಾ, ಗಿಟ್ಹಬ್, ಸ್ಟಾಕ್ ಓವರ್ಫ್ಲೋ ಇತ್ಯಾದಿ) ಮತ್ತು ಅವರ ಕಾಮಿಟ್ ಇತಿಹಾಸವನ್ನು ವಿಶ್ಲೇಷಿಸಿ. ಅವರು ಕಾರ್ಯಕ್ಷಮತೆಯಲ್ಲಿ ಯಾವಾಗ ಎಲ್ಲಿ ಸುಧಾರಣೆಗಳನ್ನು ಮಾಡಿಕೊಂಡಿದ್ದಾರೆ ಎಂದು ನಿಮ್ಮಿಗೆ ಕಂಡುಬರುತ್ತದೆಯೇ? ಯಾವ ಸಮಸ್ಯೆಗಳು ಅವತಲ-ಹೊರತಾಗುತ್ತಿವೆ?
|
||||
|
||||
**ನಿಮ್ಮ ತನಿಖಾ ವಿಧಾನ:**
|
||||
- ಕಾಮಿಟ್ ಸಂದೇಶಗಳಲ್ಲಿ "optimize", "performance", ಅಥವಾ "faster" ಎಂಬ ಪದಗಳನ್ನು **ಹುಡುಕು**
|
||||
- ಮಾದರಿಗಳನ್ನು ಹುಡುಕಿ - ಅವರು ಅದೇ ರೀತಿಯ ಸಮಸ್ಯೆಗಳನ್ನು ನಿರಂತರವಾಗಿ ಸರಿಪಡಿಸುತ್ತಿರಬಹುದಾ?
|
||||
- ವೆಬ್ಸೈಟ್ಗಳನ್ನು ನಿಧಾನಗೊಳಿಸುವ ಸಾಮಾನ್ಯ ಕಾರಣಗಳನ್ನು **ಗುರುತಿಸಿ**
|
||||
- ನೀವು ಕಂಡುಕೊಂಡದ್ದನ್ನು ಹಂಚಿಕೊಳ್ಳಿ - ಇತರ ಡೆವಲಪರ್ಗಳು ನೈಜ-ಲೋಕ ಉದಾಹರಣೆಗಳಿಂದ ಕಲಿಯುತ್ತಾರೆ
|
||||
|
||||
## ಉಪನ್ಯಾಸಶೇಷ ಪ್ರಶ್ನೋತ್ತರ
|
||||
|
||||
[ಉಪನ್ಯಾಸಶೇಷ ಪ್ರಶ್ನೋತ್ತರ](https://ff-quizzes.netlify.app/web/quiz/28)
|
||||
|
||||
## ವಿಮರ್ಶೆ ಮತ್ತು ಸ್ವಾಭಿಮಾನ ಅಧ್ಯಯನ
|
||||
|
||||
[ಕಾರ್ಯಕ್ಷಮತೆ ನ್ಯೂಸ್ಲೆಟ್ಟರ್ಗೆ ಸೈನ್ ಅಪ್ ಮಾಡಿ](https://perf.email/)
|
||||
|
||||
ತೆರೆದ ಬ್ರೌಸರ್ ಪರೀಕ್ಷಾ ಉಪಕರಣಗಳ ಕಾರ್ಯಕ್ಷಮತೆ ಟ್ಯಾಬ್ಗಳ ಮೂಲಕ ಬ್ರೌಸರ್ಗಳು ವೆಬ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೇಗೆ ಅಳೆಯುತ್ತವೆ ಎಂಬುದನ್ನು ನೋಡಿ. ನಿಮಗೆ ಯಾವುದೇ ಪ್ರಮುಖ ವ್ಯತ್ಯಾಸಗಳು ಕಂಡುಬಂದವೆಯೇ?
|
||||
|
||||
### ⚡ **ಮುಂದಿನ 5 ನಿಮಿಷಗಳಲ್ಲಿ ನೀವು ಏನು ಮಾಡಬಹುದು**
|
||||
- [ ] ಬ್ರೌಸರ್ ಟಾಸ್ಕ್ ಮ್ಯಾನೇಜರ್ (ಶಿಫ್ಟ್+ಎಸ್ಕೇ ಕ್ರೋಮ್ನಲ್ಲಿ) ತೆರೆಯಿರಿ ವಿಸ್ತರಣೆಯ ಸಂಪನ್ಮೂಲ ಬಳಕೆಯನ್ನು ನೋಡಲು
|
||||
- [ ] ಡೆವ್ಟೂಲ್ಸ್ ಕಾರ್ಯಕ್ಷಮತೆ ಟ್ಯಾಬ್ ಬಳಸಿ ವೆಬ್ಪೇಜ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ದಾಖಲೆ ಮತ್ತು ವಿಶ್ಲೇಷಿಸಿ
|
||||
- [ ] ಬ್ರೌಸರ್ನ ವಿಸ್ತರಣೆ ಪುಟವನ್ನು ಪರಿಶೀಲಿಸಿ ಯಾವ ವಿಸ್ತರಣೆಗಳು ಸ್ಟಾರ್ಟ್ ಅಪ್ ಸಮಯವನ್ನು ಪ್ರಭಾವಿಸುತ್ತಿವೆ ಎಂದು
|
||||
- [ ] ಕಾರ್ಯಕ್ಷಮತೆ ವ್ಯತ್ಯಾಸಗಳನ್ನು ನೋಡಲು ತಾತ್ಕಾಲಿಕವಾಗಿ ವಿಸ್ತರಣೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುವ ಪ್ರಯತ್ನ ಮಾಡಿ
|
||||
|
||||
### 🎯 **ಈ ಗಂಟೆಯಲ್ಲಿ ನೀವು ಸಾಧಿಸಬಹುದು**
|
||||
- [ ] ಉಪನ್ಯಾಸ ನಂತರದ ಕುಯಿಜ್ ಪೂರ್ಣಗೊಳಿಸಿ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆ ಸಿದ್ಧಾಂತಗಳನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಿ
|
||||
- [ ] ನಿಮ್ಮ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಗೆ ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನುಷ್ಠಾನಗೊಳಿಸಿ
|
||||
- [ ] ಕಾರ್ಯಕ್ಷಮ ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಕಾರ್ಯಗಳಿಗೆ browser.alarms ಬಳಸಲು ಕಲಿಯಿರಿ
|
||||
- [ ] ಕಾಂಟೆಂಟ್ ಸ್ಕ್ರಿಪ್ಟುಗಳು ಮತ್ತು ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಸ್ಕ್ರಿಪ್ಟ್ಗಳ ನಡುವೆ ಸಂದೇಶ ವಿನಿಮಯ ಅಭ್ಯಾಸ ಮಾಡಿ
|
||||
- [ ] ನಿಮ್ಮ ವಿಸ್ತರಣೆಯ ಸಂಪನ್ಮೂಲ ಬಳಕೆಯನ್ನು ಅಳೆಯಿರಿ ಮತ್ತು ಸುಧಾರಿಸಿ
|
||||
|
||||
### 📅 **ನಿಮ್ಮ ವಾರನಾಟಕ ಕಾರ್ಯಕ್ಷಮತೆ ಯಾತ್ರೆ**
|
||||
- [ ] ಬ್ಯಾಕ್ಗ್ರೌಂಡ್ ಕಾರ್ಯಕ್ಷಮತೆ ಹೊಂದಿರುವ ಉನ್ನತ-ಕಾರ್ಯಕ್ಷಮ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ಪೂರ್ಣಗೊಳಿಸಿ
|
||||
- [ ] ಸರ್ವಿಸ್ ವರ್ಕರ್ಗಳು ಮತ್ತು ಆಧುನಿಕ ವಿಸ್ತರಣೆ ಸ್ಥಾಪನೆ ಹೇಗೆ ಇರುತ್ತದೆ ಕಲಿಯಿರಿ
|
||||
- [ ] ದತ್ತಾಂಶ ಸಮನ್ವಯ ಮತ್ತು ಕ್ಯಾಷಿಂಗ್ ತಂತ್ರಗಳನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಜಾರಿಗೆ ತರಿರಿ
|
||||
- [ ] ವಿಸ್ತರಣೆ ಕಾರ್ಯಕ್ಷಮತೆಯ ಸುಧಾರಣೆಗೆ ಜುದಾಯಿಸಿದ ಡಿಬಗ್ಗಿಂಗ್ ತಂತ್ರಗಳನ್ನು ಕಲಿಯಿರಿ
|
||||
- [ ] ಕಾರ್ಯಕ್ಷಮತೆ ಮತ್ತು ಸಂಪನ್ಮೂಲ ಪರಿಣಾಮಕಾರಿತ್ವ ಎರಡಕ್ಕೂ ನಿಮ್ಮ ವಿಸ್ತರಣೆಯನ್ನು ಆಪ್ಟಿಮೈಸ್ ಮಾಡಿ
|
||||
- [ ] ವಿಸ್ತರಣೆ ಕಾರ್ಯಕ್ಷಮತೆ ದೃಶ್ಯಾಂಶಗಳಿಗಾಗಿ ವ್ಯಾಪಕ ಪರೀಕ್ಷೆಗಳನ್ನು ರಚಿಸಿ
|
||||
|
||||
### 🌟 **ನಿಮ್ಮ ತಿಂಗಳ-ನಾಟಕ ಸುಧಾರಣೆ ಮೇಸ್ಟರಿ**
|
||||
- [ ] ಎಂಟರ್ಪ್ರೈಸು-ತಗ್ಗಿತ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಗಳನ್ನು ಕಾರ್ಯಕ್ಷಮತೆಯೊಂದಿಗೆ ನಿರ್ಮಿಸಿ
|
||||
- [ ] ವೆಬ್ ವರ್ಕರ್ಗಳು, ಸರ್ವಿಸ್ ವರ್ಕರ್ಗಳು ಮತ್ತು ಆಧುನಿಕ ವೆಬ್ ಕಾರ್ಯಕ್ಷಮತೆ ಬಗ್ಗೆ ಕಲಿಯಿರಿ
|
||||
- [ ] ಕಾರ್ಯಕ್ಷಮತೆ ಸುಧಾರಣೆಯ ಮೇಲೆ ಕೇಂದ್ರೀಕೃತ open source ಪ್ರಾಜೆಕ್ಟ್ಗಳಿಗೆ ಕೊಡುಗೆ ನೀಡಿರಿ
|
||||
- [ ] ಬ್ರೌಸರ್ ಆಂತರಿಕ ಮತ್ತು ಉನ್ನತ ಡಿಬಗ್ಗಿಂಗ್ ತಂತ್ರಗಳುಮ್ಮೇಲ್ಮಟ್ಟ ಕಮಾಂಡು ಪಡೆದುಕೊಳ್ಳಿ
|
||||
- [ ] ಕಾರ್ಯಕ್ಷಮತೆ ಮಾನಿಟರಿಂಗ್ ಉಪಕರಣಗಳು ಮತ್ತು ಉತ್ತಮ ಅಭ್ಯಾಸ ಮಾರ್ಗದರ್ಶಿಗಳನ್ನು ರಚಿಸಿ
|
||||
- [ ] ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಕಾರ್ಯಕ್ಷಮತೆಗಾಗಿ ಸುಧಾರಿಸುವ ಪರಿಣತಿ ಹೊಂದಿರಿ
|
||||
|
||||
## 🎯 ನಿಮ್ಮ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ಮೇಸ್ಟರಿ ಕಾಲರೇಖೆ
|
||||
|
||||
```mermaid
|
||||
timeline
|
||||
title ಸಂಪೂರ್ಣ ವಿಸ್ತರಣೆ ಅಭಿವೃದ್ಧಿ ಪ್ರಗತಿ
|
||||
|
||||
section ಕಾರ್ಯಕ್ಷಮತೆ ಮೂಲತತ್ತ್ವಗಳು (20 ನಿಮಿಷಗಳು)
|
||||
ಬ್ರೌಸರ್ ಪ್ರೊಫೈಲಿಂಗ್: ಡೆವ್ಟೂಲ್ಗಳ ಪರಿಣತಿ
|
||||
: ವೇಳಾಸಾರಾಂಶ ವಿಶ್ಲೇಷಣೆ
|
||||
: ಬಾಟಲ್ನೆಕ್ ಗುರುತುಹಿಡಿಯುವುದು
|
||||
: ಗುರ್ತಿಸುವಿಕೆಯ ತೀವ್ರ ಮಾರ್ಗ
|
||||
|
||||
section ಹಿನ್ನೆಲೆ ಕಾರ್ಯಗಳು (25 ನಿಮಿಷಗಳು)
|
||||
ವಿಸ್ತರಣೆ ವಾಸ್ತುಶಿಲ್ಪ: ಸಂದೇಶ ಪ್ರಸರಣ
|
||||
: ಹಿನ್ನೆಲೆ ಸ್ಕ್ರಿಪ್ಟ್ಗಳು
|
||||
: ರನ್ಟೈಮ್ API ಬಳಕೆ
|
||||
: ಅತಿಕ್ರಮ ಸಂವಹನ
|
||||
|
||||
section ದೃಶ್ಯ ಪ್ರತಿಕ್ರಿಯಾ (30 ನಿಮಿಷಗಳು)
|
||||
ಡೈನಾಮಿಕ್ UI: رنگ ಲೆಕ್ಕಾಚಾರ ಅಲ್ಗಾರಿಥಂಗಳು
|
||||
: ಕ್ಯಾನ್ವಾಸ್ API ಏಕೀಕರಣ
|
||||
: ಐಕಾನ್ ತಯಾರಿ
|
||||
:实时 ನವೀಕರಣ
|
||||
|
||||
section ಕಾರ್ಯಕ್ಷಮತೆ ಉತ್ತಮೀಕರಣ (35 ನಿಮಿಷಗಳು)
|
||||
ಪರಿಣಾಮಕಾರಿ ಕೋಡ್: ಅಸಿಂಕ್ ಕಾರ್ಯಾಚರಣೆಗಳು
|
||||
: ಮೆಮೊರಿ ನಿರ್ವಹಣೆ
|
||||
: ಸಂಪನ್ಮೂಲ ಶಿಫಾರಸು
|
||||
: ಕಾರ್ಯಕ್ಷಮತೆ ನಿಗಾ
|
||||
|
||||
section ಉತ್ಪಾದನೆ ಸಿದ್ಧ (45 ನಿಮಿಷಗಳು)
|
||||
ಪೊಲಿಶ್ & ಪರೀಕ್ಷೆ: ಕ್ರಾಸ್-ಬ್ರೌಸರ ಜೊತೆಗೊಳ್ಳುವಿಕೆ
|
||||
: ದೋಷ ನಿರ್ವಹಣೆ
|
||||
: ಬಳಕೆದಾರಅನುಭವ
|
||||
: ಕಾರ್ಯಕ್ಷಮತೆ ಪರಿಶೀಲನೆ
|
||||
|
||||
section ಅಗ್ರಗಣ್ಯ ವೈಶಿಷ್ಟ್ಯಗಳು (1 ವಾರ)
|
||||
ವಿಸ್ತರಣೆ ಪರಿಸರ ವ್ಯವಸ್ಥೆ: ಕ್ರೋಮ್ ವೆಬ್ ಸ್ಟೋರ್
|
||||
: ಬಳಕೆದಾರ ಪ್ರತಿಕ್ರಿಯೆ
|
||||
: ವಿಶ್ಲೇಷಣೆ ಏಕೀಕರಣ
|
||||
: ನವೀಕರಣ ನಿರ್ವಹಣೆ
|
||||
|
||||
section ವೃತ್ತಿಪರ ಅಭಿವೃದ್ಧಿ (2 ವಾರಗಳು)
|
||||
ಸಂಸ್ಥೆ ವಿಸ್ತರಣೆಗಳು: ತಂಡ ಸಹಕಾರ
|
||||
: ಕೋಡ್ ವಿಮರ್ಶೆಗಳು
|
||||
: CI/CD ಕಾರ್ಯಪಥಗಳು
|
||||
: ಭದ್ರತಾ ಪರಿಶೀಲನೆಗಳು
|
||||
|
||||
section ತಜ್ಞ ನಿಪುಣತೆ (1 ತಿಂಗಳು)
|
||||
ವೇದಿಕೆ ಪರಿಣತಿ: ಪ್ರಗತ ಕ್ರೋಮ್ APIಗಳು
|
||||
: ಕಾರ್ಯಕ್ಷಮತೆ ಉತ್ತಮೀಕರಣ
|
||||
: ವಾಸ್ತುಶಿಲ್ಪ ಮಾದರಿಗಳು
|
||||
: ಮುಕ್ತ ಮೂಲ ಕೊಡುಗೆ
|
||||
```
|
||||
### 🛠️ ನಿಮ್ಮ ಪೂರ್ಣ ವಿಸ್ತರಣೆ ಅಭಿವೃದ್ಧಿ ಉಪಕರಣ ಸಮಗ್ರ
|
||||
|
||||
ಈ ತ್ರಿಲಾಜಿಯನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ, ನೀವು ಈಗ ಸಂಪೂರ್ಣವಾಗಿ ನಿರ್ವಹಿಸಲು ಸಮರ್ಥರಾಗಿದ್ದೀರಿ:
|
||||
- **ಬ್ರೌಸರ್ ಸ್ಥಾಪನೆ**: ವಿಸ್ತರಣೆಗಳು ಬ್ರೌಸರ್ ವ್ಯವಸ್ಥೆಗಳೊಂದಿಗೆ ಹೇಗೆ ಸಂಯೋಜಿತವಾಗುತ್ತವೆ ಎಂಬ ಆಳವಾದ ಅರ್ಥ
|
||||
- **ಕಾರ್ಯಕ್ಷಮತೆ ಪ್ರೊ파일ಿಂಗ್**: ಡೆವಲಪರ್ ಉಪಕರಣಗಳಿಂದ ಬಾಟಲ್ನೆಕ್ಗಳನ್ನು ಗುರುತಿಸಿ ಸರಿಪಡಿಸುವ ಸಾಮರ್ಥ್ಯ
|
||||
- **ಅಸಿಂಕ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್**: ಪ್ರತಿಕ್ರಿಯಾಶೀಲ, ತಡೆರಹಿತ ಕಾರ್ಯಗಳಿಗೆ ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಮಾದರಿಗಳು
|
||||
- **API ಸಂಯೋಜನೆ**: ಪ್ರಾಮಾಣೀಕರಣ ಮತ್ತು ದೋಷ ನಿರ್ವಹಣೆ ಒಳಗೊಂಡ ಬಾಹ್ಯ ಡೇಟಾ ಪಡೆಯುವಿಕೆ
|
||||
- **ದೃಶ್ಯ ವಿನ್ಯಾಸ**: ಡೈನಾಮಿಕ್ UI ಅಪ್ಡೇಟ್ಗಳು ಮತ್ತು ಕ್ಯಾನ್ವಾಸ್ ಆಧಾರಿತ ಗ್ರಾಫಿಕ್ಸ್ ಜನರೇಷನ್
|
||||
- **ಸಂದೇಶ ವಿನಿಮಯ**: ವಿಸ್ತರಣೆ ಸ್ಥಾಪನೆಯಲ್ಲಿನ ಇಂಟರ್ಸ್ಕ್ರಿಪ್ಟ್ ಸಂವಹನ
|
||||
- **ಬಳಕೆದಾರ ಅನುಭವ**: ಲೋಡಿಂಗ್ ಸ್ಥಿತಿಗಳು, ದೋಷ ನಿರ್ವಹಣೆ ಮತ್ತು ಬುದ್ಧಿಮತ್ತೆಯ ಇಂಟರಾಕ್ಷನ್ಗಳು
|
||||
- **ಉತ್ಪಾದನಾ ಕೌಶಲ್ಯಗಳು**: ನೈಜ-ಜಗತ್ತಿನ ನಿರ್ವಹಣೆಗೆ ಪರೀಕ್ಷೆ, ಡಿಬಗ್ಗಿಂಗ್ ಮತ್ತು ಆಪ್ಟಿಮೈಝೇಶನ್
|
||||
|
||||
**ನೈಜ ಜಗತ್ತಿನ ಅಪ್ಲಿಕೇಶನ್ಗಳು**: ನಿಮ್ಮ ವಿಸ್ತರಣೆ ಅಭಿವೃದ್ಧಿ ಕೌಶಲ್ಯಗಳು ನೇರವಾಗಿ ಅನ್ವಯಿಸುತ್ತವೆ:
|
||||
- **ಪ್ರೋಗ್ರೆಸಿವ್ ವೆಬ್ ಆ್ಯಪ್ಸ್**: ಸಮಾನ ಸ್ಥಾಪನೆ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯ ಮಾದರಿಗಳು
|
||||
- **ಇಲೆಕ್ಟ್ರಾನ್ ಡೆಸ್ಕ್ಟಾಪ್ ಆ್ಯಪ್ಸ್**: ವೆಬ್ ತಂತ್ರಜ್ಞಾನಗಳ ಬಳಕೆಯಿಂದ ಕ್ರಾಸ್-ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು
|
||||
- **ಮೊಬೈಲ್ ಹೈಬ್ರಿಡ್ ಆ್ಯಪ್ಸ್**: ಕೋರ್ಟ್ವಾಡಾ/ಫೋನ್ಗ್ಯಾಪ್ ವೆಬ್ APIಗಳ ಬಳಕೆ
|
||||
- **ಎಂಟರ್ಪ್ರೈಸು ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು**: ಜಟಿಲ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಮತ್ತು ಉತ್ಪಾದಕತೆ ಉಪಕರಣಗಳು
|
||||
- **ಕ್ರೋಮ್ ಡೆವ್ಟೂಲ್ಸ್ ವಿಸ್ತರಣೆಗಳು**: ಉನ್ನತ ಮಟ್ಟದ ಡೆವಲಪರ್ ಉಪಕರಣಗಳ ಜೊತೆ ಡಿಬಗ್ಗಿಂಗ್
|
||||
- **ವೆಬ್ API ಸಂಯೋಜನೆ**: ಬಾಹ್ಯ ಸೇವೆಗಳಿಗೆ ಸಂವಹನ ಮಾಡುವ ಯಾವುದೇ ಅಪ್ಲಿಕೇಶನ್
|
||||
|
||||
**ವೃತ್ತಿಪರ ಪ್ರಭಾವ**: ನೀವು ಈಗ:
|
||||
- **ನಿರ್ಮಿಸಬಹುದು** ಪ್ರೊಡಕ್ಷನ್-ಸಿದ್ಧ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಗಳನ್ನು ಕಲ್ಪನೆ ಇಂದ ಜಾರಿಗೆ
|
||||
- **ಆಪ್ಟಿಮೈಸ್ ಮಾಡಬಹುದು** ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ ನಿರ್ವಹಣೆಯನ್ನು ಉದ್ಯಮ-ಮಾನದಂಡ ಪ್ರೊಫೈಲಿಂಗ್ ಉಪಕರಣಗಳ ಬಳಕೆ ಮೂಲಕ
|
||||
- **ಸ್ಥಾಪಿಸಬಹುದು** ಮಾಪನ ವೃಂದಗಳೊಂದಿಗೆ ಮೀರಿ ಮಾದರಿತ ವ್ಯವಸ್ಥೆಗಳನ್ನು
|
||||
- **ಡಿಬಗ್ ಮಾಡಬಹುದು** ಜಟಿಲ ಅಸಿಂಕ್ರೋನಸ್ ಕಾರ್ಯಚಟುವಟಿಕೆಗಳು ಮತ್ತು ಕ್ರಾಸ್-ಕಾಂಟೆಕ್ಸ್ಟ್ ಸಂವಹನ
|
||||
- **ಕೊಡುಗೆ ನೀಡಬಹುದು** open source ವಿಸ್ತರಣೆ ಪ್ರಾಜೆಕ್ಟ್ಗಳು ಮತ್ತು ಬ್ರೌಸರ್ ಮಾನದಂಡಗಳಿಗೆ
|
||||
|
||||
**ಮುಂದಿನ ಹಂತದ ಅವಕಾಶಗಳು**:
|
||||
- **ಕ್ರೋಮ್ ವೆಬ್ ಸ್ಟೋರ್ ಡೆವಲಪರ್**: ಲಕ್ಷಾಂತರ ಬಳಕೆದಾರರಿಗೆ ವಿಸ್ತರಣೆಗಳು ಪ್ರಕಟಿಸಿ
|
||||
- **ವೆಬ್ ಕಾರ್ಯಕ್ಷಮತೆ ಎಂಜಿನಿಯರ್**: ಆಪ್ಟಿಮೈಜೆಶನ್ ಮತ್ತು ಬಳಕೆದಾರ ಅನುಭವದಲ್ಲಿ ವಿಶೇಷಗೊಳ್ಳಿ
|
||||
- **ಬ್ರೌಸರ್ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಡೆವಲಪರ್**: ಬ್ರೌಸರ್ ಎಂಜಿನ್ ಅಭಿವೃದ್ಧಿಗೆ ಕೊಡುಗೆ ನೀಡಿರಿ
|
||||
- **ವಿಸ್ತರಣೆ ಫ್ರೇಮ್ವರ್ಕ್ ಸೃಷ್ಟಿಕರ್ತ**: ಇತರೆ ಡೆವಲಪರ್ಗಳಿಗೆ ಸಹಾಯ ಮಾಡುವ ಉಪಕರಣಗಳನ್ನು ನಿರ್ಮಿಸಿ
|
||||
- **ಡೆವಲಪರ್ ರಿಲೇಶನ್ಸ್**: ಬೋಧನೆ ಮತ್ತು ವಿಷಯ ರಚನೆಯ ಮೂಲಕ ಜ್ಞಾನ ಹಂಚಿಕೊಳ್ಳಿ
|
||||
|
||||
🌟 **ಸಾಧನೆ ಅನ್ಲಾಕ್ ಆಗಿದೆ**: ನೀವು ವೃತ್ತಿಪರ ಅಭಿವೃದ್ಧಿ ಅಭ್ಯಾಸಗಳು ಮತ್ತು ಆಧುನಿಕ ವೆಬ್ ಮಾನದಂಡಗಳನ್ನು ಪ್ರದರ್ಶಿಸುವ ಸಂಪೂರ್ಣ, ಕಾರ್ಯೋಚಿತ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ನಿರ್ಮಿಸಿದ್ದೀರಿ!
|
||||
|
||||
## ನಿಯೋಜನೆ
|
||||
|
||||
[ಕಾರ್ಯಕ್ಷಮತೆಗಾಗಿ ಒಂದು ಸೈಟ್ ವಿಶ್ಲೇಷಿಸಿ](assignment.md)
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತ್ಯಾಜ್ಯವಾಣಿ**:
|
||||
ಈ ದಾಖಲೆಯನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಗೆ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ತಪ್ಪುಗುರುತುಗಳಿರುವ ಸಾಧ್ಯತೆ ಇದ್ದೇ ಇದೆ ಎಂದು ಜ್ಞಾನದಲ್ಲಿರಲಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಾಖಲೆ ಅಧಿಕಾರವಾದ ಮೂಲ ಎಂದು ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೆಗಳು ಅಥವಾ ಭ್ರಮೆಗೆ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,17 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "a203e560e58ccc6ba68bffc40c7c8676",
|
||||
"translation_date": "2026-01-08T15:34:43+00:00",
|
||||
"source_file": "5-browser-extension/3-background-tasks-and-performance/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
Translation for chunk 1 of 'assignment.md' skipped due to timeout.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಜ್ಞಾಪನೆ**:
|
||||
ಈ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಸರಿಯಾದ ಅನುವಾದಕ್ಕೆ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದೆಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು ಅಧಿಕೃತ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ತೀವ್ರ ಮಾಹಿತಿಗೆ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದದಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ವಿವರಣೆಗಳು ಅಥವಾ ಭ್ರಾಂತಿಗಳಿಗಾಗಿ ನಾವು ಹೊಣೆಗಾರರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,43 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "b121a279a6ab39878491f3e572673515",
|
||||
"translation_date": "2026-01-08T11:27:57+00:00",
|
||||
"source_file": "5-browser-extension/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಶನ್ ನಿರ್ಮಾಣ
|
||||
|
||||
ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಶನ್ಗಳನ್ನು ನಿರ್ಮಿಸುವುದು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ಗಳ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಗಮನಿಸುವ ಮನರಂಜನೆಯುತ ಮತ್ತು ಆಸಕ್ತಿದಾಯಕ ಮಾರ್ಗವಾಗಿದ್ದು ವಿಭಿನ್ನ ರೀತಿಯ ವೆಬ್ ಆಸ್ತಿ ನಿರ್ಮಾಣವಾಗುತ್ತದೆ. ಈ ಮ್ಯಾಡ್ಯೂಲ್ನಲ್ಲಿ ಬ್ರೌಸರ್ಗಳು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತವೆ ಮತ್ತು ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಶನ್ ಅನ್ನು ಹೇಗೆ ನಿಯೋಜಿಸಬೇಕು, ಫಾರ್ಮ್ ಅನ್ನು ಹೇಗೆ ನಿರ್ಮಿಸಬೇಕು, API ಅನ್ನು ಹೇಗೆ ಕರೆದಾಯ್ದು ಬಳಸಬೇಕು, ಸ್ಥಳೀಯ ಸಂಗ್ರಹಣೆಯನ್ನು ಹೇಗೆ ಬಳಸಬೇಕು ಹಾಗೂ ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೇಗೆ ಅಳೆಯಬೇಕು ಮತ್ತು ಸುಧಾರಿಸಬೇಕು ಎಂಬ ಪಾಠಗಳು ಸೇರಿವೆ.
|
||||
|
||||
ನೀವು Edge, Chrome, ಮತ್ತು Firefox-ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಶನ್ ಅನ್ನು ನಿರ್ಮಿಸುತ್ತೀರಿ. ಈ ಎಕ್ಸ್ಟೆನ್ಶನ್ ಒಂದು ವಿಶೇಷ ಕಾರ್ಯಕ್ಕೆ ಅನುಗುಣವಾದ ಸಣ್ಣ ವೆಬ್ ಸೈಟ್ ಸಾಲದಂತೆ ಇರುತ್ತದೆ. ಇದು ನೀಡಲಾದ ಪ್ರದೇಶದ ವಿದ್ಯುತ್ ಬಳಕೆ ಮತ್ತು ಕಾರ್ಬನ್ ತೀವ್ರತೆಯನ್ನು ಪರಿಶೀಲಿಸಲು [C02 Signal API](https://www.co2signal.com) ಅನ್ನು ಕರೆದಾಡುತ್ತದೆ ಮತ್ತು ಆ ಪ್ರದೇಶದ ಕಾರ್ಬನ್ पदಚಿಹ್ನೆಯನ್ನು ಮೀರಿಸಲಾಗುತ್ತದೆ.
|
||||
|
||||
ಈ ಎಕ್ಸ್ಟೆನ್ಶನ್ ಅನ್ನು ಬಳಕೆದಾರರು API ಕೀ ಮತ್ತು ಪ್ರದೇಶದ ಕೋಡ್ ಫಾರ್ಮ್ನಲ್ಲಿ ಹಾಕಿದ ನಂತರ ಅಗತ್ಯವಿರುವಾಗ ಕರೆಯಬಹುದು, ಇದರಿಂದ ಸ್ಥಳೀಯ ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ನಿರ್ಣಯಿಸಿ ಬಳಕೆದಾರರ ವಿದ್ಯುತ್ ವ್ಯವಹಾರಗಳನ್ನು ಪ್ರಭಾವಿತಗೊಳಿಸಬಹುದಾದ ಡೇಟಾವನ್ನು ನೀಡುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ನಿಮ್ಮ ಪ್ರದೇಶದಲ್ಲಿ ಹೆಚ್ಚಾದ ವಿದ್ಯುತ್ ಬಳಕೆ ಇದ್ದಾಗ ಕತ್ತರಿಸುವ ಯಂತ್ರ (ಕಾರ್ಬನ್ ತೀವ್ರವಾದ ಚಟುವಟಿಕೆ) ಹಗಲು ನಡೆಸಲು ವಿಳಂಬ ಮಾಡುವುದು ಮೇಲು.
|
||||
|
||||
### ವಿಷಯಗಳು
|
||||
|
||||
1. [ಬ್ರೌಸರ್ ಬಗ್ಗೆ](1-about-browsers/README.md)
|
||||
2. [ಫಾರ್ಮ್ಗಳು ಮತ್ತು ಸ್ಥಳೀಯ ಸಂಗ್ರಹಣೆ](2-forms-browsers-local-storage/README.md)
|
||||
3. [ಪಿನ್ನಣಿಕೆ ಕೆಲಸಗಳು ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆ](3-background-tasks-and-performance/README.md)
|
||||
|
||||
### ಕ್ರೆಡಿಟ್ಸ್
|
||||
|
||||

|
||||
|
||||
## ಕ್ರೆಡಿಟ್ಸ್
|
||||
|
||||
ಈ ವೆಬ್ ಕಾರ್ಬನ್ ಟ್ರಿಗರ್ ಕಲ್ಪನೆಯನ್ನು ಗ್ರೀನ್ ಕ್ಲೌಡ್ אַד್ವೊಕಸಿ ತಂಡದ ನಾಯಕರಾದ ಅಸೀಮ್ ಹುಸೈನ್ ಅವರು ನೀಡಿದರು ಮತ್ತು ಅವರು [Green Principles](https://principles.green/) ರಚಿಸಿದ್ದಾರೆ. ಇದು ಮೂಲತಃ ಒಂದು [ವೆಬ್ ಸೈಟ್ ಪ್ರೋಜೆಕ್ಟ್](https://github.com/jlooper/green) ಆಗಿತ್ತು.
|
||||
|
||||
ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಶನ್ ರಚನೆಯನ್ನು [ಅಡೆಬೋಲಾ ಅಡೆನಿರಾನ್ ಅವರ COVID ಎಕ್ಸ್ಟೆನ್ಶನ್](https://github.com/onedebos/covtension) ಪ್ರೇರೇಪಿಸಿದವು.
|
||||
|
||||
'dot' ಐಕಾನ್ ವ್ಯವಸ್ಥೆಯ ಕನ್ಸೆಪ್ಟ್ ಕ್ಯಾಲಿಫೋರ್ನಿಯಾ ಉಳಿತಾಯಕ್ಕಾಗಿ [Energy Lollipop](https://energylollipop.com/) ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಶನ್ನ ಐಕಾನ್ ರಚನೆಯಿಂದ ಸೂಚಿಸಲ್ಪಟ್ಟಿತು.
|
||||
|
||||
ಈ ಪಾಠಗಳನ್ನು ♥️ ಯಿಂದ [ಜೆನ್ ಲೂಪರ್](https://www.twitter.com/jenlooper) ಅವರು ಬರೆಯಲಾಗಿದೆ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಅನುವಾದ ಸೂಚನೆ**:
|
||||
ಈ ದಾಖಲೆ AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಉಪಯೋಗಿಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಯಿಗಾಗಿ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದು ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನದಲ್ಲಿ ಇಡಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿನ ಮೂಲ ದಾಖಲೆವೇ ಅಧಿಕೃತ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವಪೂರ್ಣ ಮಾಹಿತಿಗಳಿಗೆ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪುಬೋಧನೆಗಳಿಗೆ ಅಥವಾ ತಪ್ಪು ಅರ್ಥಗಳಿಗಾಗಿಯೂ ನಾವು ಜವಾಬ್ದಾರಿಯಾಗಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,43 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "fab4e6b4f0efcd587a9029d82991f597",
|
||||
"translation_date": "2026-01-08T15:59:32+00:00",
|
||||
"source_file": "5-browser-extension/solution/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಕಾರ್ಬನ್ ಟ್ರಿಗರ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಯು: ಪೂರ್ಣಗೊಂಡ ಕೋಡ್
|
||||
|
||||
tmrow ರ C02 ಸಿಗ್ನಲ್ API ಯನ್ನು ಬಳಸಿಕೊಂಡು ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ಹಿಂಬಾಲಿಸಲು, ನೀವು ನಿಮ್ಮ ಬ್ರೌಸರ್ ನಲ್ಲಿ ನಿಮ್ಮ ಪ್ರದೇಶದ ವಿದ್ಯುತ್ ಬಳಕೆ ಎಷ್ಟು ಭಾರೀವಾಗಿದೆ ಎಂಬ ಕುರಿತು ನೆನೆಪೊಡಿಸುವ ವಿಸ್ತರಣೆ ರಚಿಸಿ. ಈ ವಿಸ್ತರಣೆಯನ್ನು ಅಕ್ರಮವಾಗಿ ಬಳಸುವುದು ನಿಮ್ಮ ಚಟುವಟಿಕೆಗಳ ಬಗ್ಗೆ ಈ ಮಾಹಿತಿಯನ್ನು ಆಧರಿಸಿ ತೀರ್ಮಾನ ಕೈಗೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
|
||||
|
||||

|
||||
|
||||
## ಪ್ರಾರಂಭಿಸುವುದು
|
||||
|
||||
ನೀವು [npm](https://npmjs.com) ಅನ್ನು ಹೊಂದಿರಬೇಕು. ಈ ಕೋಡ್ ನ ಪ್ರತಿ ನಿಮ್ಮ ಕಂಪ್ಯೂಟರಿನ ಒಂದು ಫೋಲ್ಡರ್ ಗೆ ಡೌನ್ಲೋಡ್ ಮಾಡಿ.
|
||||
|
||||
ಅವಶ್ಯಕ所有 ಪ್ಯಾಕೇಜ್ಗಳನ್ನು ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿ:
|
||||
|
||||
```
|
||||
npm install
|
||||
```
|
||||
|
||||
webpack ನಿಂದ ವಿಸ್ತರಣೆಯನ್ನು ನಿರ್ಮಿಸಿ
|
||||
|
||||
```
|
||||
npm run build
|
||||
```
|
||||
|
||||
Edge ನಲ್ಲಿ ಇನ್ಸ್ಟಾಲ್ ಮಾಡಲು, ಬ್ರೌಸರ್ನ ಉದ್ದನೆಯ ಬಲ ಕೋನದಲ್ಲಿರುವ 'ಮೂರು ಬಿಂದುಗಳು' ಮೆನು ಬಳಸಿ ವಿಸ್ತರಣೆ ಪ್ಯಾನೆಲಿಗೆ ಹೋಗಿ. ಅಲ್ಲಿ 'Load Unpacked' ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ ಹೊಸ ವಿಸ್ತರಣೆಯನ್ನು ಲೋಡ್ ಮಾಡಿ. ಪ್ರಾಂಪ್ಟ್ನಲ್ಲಿ 'dist' ಫೋಲ್ಡರ್ ತೆರೆಯಿರಿ, ವಿಸ್ತರಣೆ ಲೋಡ್ ಆಗುತ್ತದೆ. ಇದನ್ನು ಬಳಸಲು, CO2 Signal ರ API ಗೆ API ಕೀ ಬೇಕಾಗುತ್ತದೆ ([ಇದನ್ನು ಇಮೇಲ್ ಮೂಲಕ ಪಡೆಯಿರಿ](https://www.co2signal.com/) - ಈ ಪುಟದ ಬಾಕ್ಸ್ ನಲ್ಲಿ ನಿಮ್ಮ ಇಮೇಲ್ ನಮೂದಿಸಿ) ಮತ್ತು ನಿಮ್ಮ [ವಿದ್ಯುತ್ ನಕ್ಷೆ](https://www.electricitymap.org/map) ಗೆ ತಕ್ಕಂತೆ ನಿಮ್ಮ ಭಾಗದ [ಕೋಡ್](http://api.electricitymap.org/v3/zones) ಬೇಕಾಗುತ್ತದೆ (ಉದಾಹರಣೆಗೆ ಬೋಸ್ಟನ್ನಲ್ಲಿ ನಾನು 'US-NEISO' ಉಪಯೋಗಿಸುತ್ತೇನೆ).
|
||||
|
||||

|
||||
|
||||
ಒಮ್ಮೆ API ಕೀ ಮತ್ತು ನಿಮ್ಮ ಭಾಗವನ್ನು ವಿಸ್ತರಣೆ ಇಂಟರ್ಫೇಸಿಗೆ ನಮೂದಿಸಿದ ಮೇಲೆ, ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ಬಾರ್ನಲ್ಲಿ ಬಣ್ಣದ ಚುಕ್ಕೆ ನಿಮ್ಮ ಪ್ರದೇಶದ ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ಪ್ರತಿಬಿಂಬಿಸುತ್ತದೆ ಮತ್ತು ಯಾವ ವಿಧಾನಗಳಲ್ಲಿಯೇ ಹೆಚ್ಚು ವಿದ್ಯುತ್ ಬಳಕೆಯಾಗುತ್ತದೆ ಎಂಬದನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಈ 'ಚುಕ್ಕೆ' ವ್ಯವಸ್ಥೆಯ ಹಿಂದಿನ ಕಲ್ಪನೆಯನ್ನು ನನ್ನಗೆ [Energy Lollipop ವಿಸ್ತರಣೆ](https://energylollipop.com/) ಕ್ಯಾಲಿಫೋರ್ನಿಯಾ ಉಸಿರಾಟಗಳಿಗಾಗಿ ನೀಡಿದೆ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಪ್ರತ್ಯಾಕ್ಷಿಕೆ**:
|
||||
ಈ ಡಾಕ್ಯುಮೆಂಟ್ ಪುಸ್ತಕವನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಗೆ ಪ್ರಯತ್ನಿಸುತ್ತೇವೆ ಆದರೆ ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರುವ ಸಾಧ್ಯತೆ ಇದೆ ಎಂದು ದಯವಿಟ್ಟು ತಿಳಿದು ಕೊಳ್ಳಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿರುವ ಮೂಲ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು ಅಧಿಕೃತ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವದ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗಬಹುದಾದ ಯಾವುದೇ ಹ misunderstandings ಅಥವಾ ತಪ್ಪು ಅರ್ಥಗಟ್ಟುವಿಕೆಗೆ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,43 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "cbaf73f94a9ab4c680a10ef871e92948",
|
||||
"translation_date": "2026-01-08T16:10:46+00:00",
|
||||
"source_file": "5-browser-extension/solution/translation/README.es.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# Carbon Trigger ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ: مڪمل ಕೋಡ್
|
||||
|
||||
tmrow ನ CO2 ಸಿಗ್ನಲ್ API ಬಳಸಿ ವಿದ್ಯುತ್ ಬಳಕೆ ಟ್ರ್ಯಾಕ್ ಮಾಡಲು, ನಿಮ್ಮ ವಲಯದ ವಿದ್ಯುತ್ ಬಳಕೆಯ ಬಗ್ಗೆ ನಿಮ್ಮ ಬ್ರೌಸರ್ನಲ್ಲಿ ನೇರವಾಗಿ ರಿಮೈಂಡರ್ ಇರಲು ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಯನ್ನು ರಚಿಸಿ. ಈ ಅಡ್ಹಾಕ್ ವಿಸ್ತರಣೆ ಬಳಕೆ ಈ ಮಾಹಿತಿಯ ಆಧಾರದ ಮೇಲೆ ನಿಮ್ಮ ಚಟುವಟಿಕೆಗಳ ಕುರಿತು ನಿರ್ಧಾರಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
|
||||
|
||||

|
||||
|
||||
## ಪ್ರಾರಂಭಿಸುವುದು
|
||||
|
||||
ನೀವು [npm](https://npmjs.com) ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿರಬೇಕು. ಈ ಕೋಡ್ ನ ನಕಲನ್ನು ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ನ ಫೋಲ್ಡರ್ಗೆ ಡೌನ್ಲೋಡ್ ಮಾಡಿ.
|
||||
|
||||
ಬಳಸಬೇಕಾಗಿರುವ ಎಲ್ಲಾ ಪ್ಯಾಕೇಜ್ಗಳನ್ನು ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿ:
|
||||
|
||||
```
|
||||
npm install
|
||||
```
|
||||
|
||||
webpack ನಿಂದ ವಿಸ್ತರಣೆಯನ್ನು ಶಿಲ್ಪಿ ಮಾಡಿ:
|
||||
|
||||
```
|
||||
npm run build
|
||||
```
|
||||
|
||||
Edge ನಲ್ಲಿ ಇನ್ಸ್ಟಾಲ್ ಮಾಡಲು, ಬ್ರೌಸರ್ನ ಮೇಲ್ಭಾಗದ ಎಡಭಾಗದ 'ಮೂರು ಮಿಂಚು' ಮెన್ಯೂ ಬಳಸಿ ವಿಸ್ತರಣೆ ಪ್ಯಾನಲ್ ಹುಡುಕಿ. ಅದರಲ್ಲಿ 'ಅನ್ಪ್ಯಾಕ್ಡ್ ಲೋಡ್' ಆಯ್ಕೆಮಾಡಿ ಹೊಸ ವಿಸ್ತರಣೆಯನ್ನು ಲೋಡ್ ಮಾಡಿ. ಕೇಳಿದಾಗ 'dist' ಫೋಲ್ಡರ್ ತೆರೆಯಿರಿ, ವಿಸ್ತರಣೆ ಲೋಡ್ ಆಗುತ್ತದೆ. ಇದನ್ನು ಬಳಸಿಸಲು, CO2 ಸಿಗ್ನಲ್ API ಕೀ ಅಗತ್ಯವಿದೆ ([ಇಮೇಲ್ ಮೂಲಕ ಇಲ್ಲಿ ಪಡೆಯಿರಿ](https://www.co2signal.com/) - ಈ ಪುಟದ ಪೆಟ್ಟಿಗೆಯಲ್ಲಿ ನಿಮ್ಮ ಇಮೇಲ್ ನಮೂದಿಸಿ) ಮತ್ತು [ವಿದ್ಯುತ್ ನಕ್ಷೆಗೆ](https://www.electricitymap.org/map) ಹೊಂದಿಕೊಳ್ಳುವ ನಿಮ್ಮ ವಲಯದ [ಕೋಡ್](http://api.electricitymap.org/v3/zones) (ಉದಾಹರಣೆಗೆ ಬಾಸ್ಟನಿಯಲ್ಲಿ 'US-NEISO' ನ್ನು ಬಳಸುತ್ತೇನೆ).
|
||||
|
||||

|
||||
|
||||
API ಕೀ ಮತ್ತು ವಲಯವು ವಿಸ್ತರಣೆ ಇಂಟರ್ಫೇಸ್ನಲ್ಲಿ ನಮೂದಿಸಿದ ನಂತರ, ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ಬಾರ್ನ ಬಣ್ಣದ ಬಿಂದುವು ನಿಮ್ಮ ವಲಯದ انر╔ಳ ನಿದರ್ಶನ ನೀಡಲು ಬದಲಾಗುತ್ತದೆ ಮತ್ತು ಹೆಚ್ಚಿನ ವಿದ್ಯುತ್ ಬಳಕೆ ಚಟುವಟಿಕೆಗಳ ಬಗ್ಗೆ ಸೂಚನೆ ನೀಡುತ್ತದೆ. ಈ "ಬಿಂದುಗಳು" ವ್ಯವಸ್ಥೆಯ ಆಲೋಚನೆಯನ್ನು ನನಗೆ [Energy Lollipop ವಿಸ್ತರಣೆ](https://energylollipop.com/) ಕೊಟ್ಟಿತು, ಇದು ಕ್ಯಾಲಿಫೋರ್ಮಿಯಾದ ಕಾರ್ಬನ್ ಉಗ್ರಣೆಗಳಿಗಾಗಿ ಇದೆ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಡ್ಿಸ್ಕ್ಲೇಮರ್**:
|
||||
ಈ ದಸ್ತಾವೇಜು ಹೃತ್ಪೂರ್ವಕ ಭಾಷಾಂತರ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಯನ್ನು ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಗೆ ಪ್ರಯತ್ನ ಮಾಡುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಭಾಷಾಂತರಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ತಪ್ಪುಪಡುವಿಕೆಗಳಿರಬಹುದು ಎಂಬುದನ್ನು ತಿಳಿದುಕೊಳ್ಳಿರಿ. ಮೂಲ ದಸ್ತಾವೇಜಿನ ಸ್ಥಳೀಯ ಭಾಷೆ ಆದ್ಯತೆಯ ಮೂಲ ಎಂದು ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಭಾಷಾಂತರವೇ ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಭಾಷಾಂತರ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪರ್ಥ ಅಥವಾ ದುರ್ನಿರ್ದೇಶನಕ್ಕೆ ನಾವು ಹುದ್ದೆಗಾರರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,43 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "9361268ca430b2579375009e1eceb5e5",
|
||||
"translation_date": "2026-01-08T16:12:49+00:00",
|
||||
"source_file": "5-browser-extension/solution/translation/README.fr.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# Carbon Trigger ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ: ಪೂರ್ಣಗೊಂಡ ಕೋಡ್
|
||||
|
||||
tmrow ನ C02 ಸಿಗ್ನಲ್ API ಬಳಸಿ ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ವೀಕ್ಷಿಸಲು, ನಿಮ್ಮ ಪ್ರದೇಶದ ವಿದ್ಯುತ್ ಬಳಕೆಯ ಬಗ್ಗೆ ನೇರವಾಗಿ ನಿಮ್ಮ ಬ್ರೌಸರ್ ನಲ್ಲಿ ಸೂಚನೆ ನೀಡುವ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಯನ್ನು ರಚಿಸಿ. ಈ ಅನೌಪಚಾರಿಕ ವಿಸ್ತರಣೆ ಬಳಕೆ ನಿಮ್ಮ ಚಟುವಟಿಕೆಗಳ ಮೇಲೆ ಈ ಮಾಹಿತಿಯ ಆಧಾರದ ಮೇಲೆ ತೀರ್ಮಾನ ತಗೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
|
||||
|
||||

|
||||
|
||||
## ಪ್ರಾರಂಭಿಸುವುದು
|
||||
|
||||
ನೀವು [npm](https://npmjs.com) ಸ್ಥಾಪಿಸಿರುವಿರಬೇಕು. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ನ ಫೋಲ್ಡರ್ಗಳಲ್ಲಿ ಈ ಕೋಡ್ ನ ನಕಲನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಿ.
|
||||
|
||||
ಎಲ್ಲಾ ಅಗತ್ಯ ಪ್ಯಾಕೇಜ್ಗಳನ್ನು ಸ್ಥಾಪಿಸಿ:
|
||||
|
||||
```
|
||||
npm install
|
||||
```
|
||||
|
||||
webpack ನಿಂದ ವಿಸ್ತರಣೆ ನಿರ್ಮಿಸಿ
|
||||
|
||||
```
|
||||
npm run build
|
||||
```
|
||||
|
||||
Edge ನಲ್ಲಿ ಸ್ಥಾಪಿಸಲು, ಬ್ರೌಸರ್ ನ ಮೇಲ್ಭಾಗದ ಬಲದ ಕಡೆ "ಮೂರು ಚಿಹ್ನೆಗಳು" ಮೆನು ಬಳಸಿ ಎಕ್ಸ್ಟೆನ್ಶನ್ ಪ್ಯಾನೆಲ್ ಹುಡುಕಿ. ಅಲ್ಲಿ, "ಅನ್ಜಿಪ್ ಮಾಡಲಾದ ವಿಸ್ತರಣೆಯನ್ನು ಲೋಡ್ ಮಾಡಿ" ಆಯ್ಕೆಯನ್ನು ಆರಿಸಿ ಹೊಸ ವಿಸ್ತರಣೆಯನ್ನು ಲೋಡ್ ಮಾಡಿ. ಆದೇಶದಲ್ಲಿ 'dist' ಫೋಲ್ಡರ್ ತೆರೆದು ವಿಸ್ತರಣೆ ಲೋಡ್ ಆಗುತ್ತದೆ. ಬಳಕೆ ಮಾಡಲು, ನೀವು CO2 ಸಿಗ್ನಲ್ API ಗಾಗಿ API ಕೀ ಬೇಕಾಗುತ್ತದೆ ([ಇಲ್ಲಿ ಇಮೇಲ್ ಮೂಲಕ ಪಡೆಯಿರಿ](https://www.co2signal.com/) - ಈ ಪುಟದಲ್ಲಿ ನಿಮ್ಮ ಇಮೇಲ್ ನಮೂದಿಸಿ) ಮತ್ತು [ವಿದ್ಯುತ್ ನಕ್ಷೆ](https://www.electricitymap.org/map) ಗೆ ಹೊಂದಿಕೊಳ್ಳುವ ನಿಮ್ಮ ಪ್ರಾಂತ್ಯದ [ಕೋಡ್](http://api.electricitymap.org/v3/zones) (ಉದಾಹರಣೆಗೆ ಬೋಸ್ಟನ್ ನಲ್ಲಿ, 'US- NEISO' ಅನ್ನು ಬಳಸುತ್ತೇನೆ).
|
||||
|
||||

|
||||
|
||||
API ಕೀ ಮತ್ತು ಪ್ರಾಂತ್ಯವನ್ನು ವಿಸ್ತರಣೆ ಮುಖಪುಟದಲ್ಲಿ ನಮೂದಿಸಿದ ನಂತರ, ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ ಬಾರದ ಬಣ್ಣದ ಬಿಂಗು ನಿಮ್ಮ ಪ್ರಾಂತ್ಯದ ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ತೋರ್ಪಡಿಸಿ, ನಿಮ್ಮ ಅಭ್ಯಾಸಗಳಿಗೆ ಸರಿ ಹೊಂದುವ ಶಕ್ತಿವಂತರ ಚಟುವಟಿಕೆಗಳ ಸೂಚಕವನ್ನು ನೀಡುತ್ತದೆ. ಈ "ಬಿಂಗು" ಸಮೀಕ್ಷೆಯ ಪರಿಕಲ್ಪನೆಯನ್ನು ಕ್ಯಾಲಿಫೋರ್ನಿಯಾದ ಉಳಿತಾಯಗಳಿಗಾಗಿ [Energy Lollipop ವಿಸ್ತರಣೆ](https://energylollipop.com/)ರಿಂದ ಪಡೆದಿದ್ದೇನೆ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತ್ಯಾಜ್ಯ ವಿವರಣೆ**:
|
||||
ಈ ದಾಖಲೆ AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಗೆ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದದಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದೆಂದು कृಪಯಾಗಿ ಗಮನಿಸಿರಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿರುವ ಮೂಲ ದಾಖಲೆ ಆಧಿಕೃತ ಮೂಲವಾಗಿದ್ದು ಪರಿಗಣಿಸಬಹುದಾಗಿದೆ. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಿ ಅಥವಾ ವಿಚಲನೆಗಳಿಗೆ ನಾವು ಹೊಣೆಗಾರರಲ್ಲೇವು.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,43 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "dd58ae1b7707034f055718c1b68bc8de",
|
||||
"translation_date": "2026-01-08T16:08:31+00:00",
|
||||
"source_file": "5-browser-extension/solution/translation/README.hi.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಕಾರ್ಬನ್ ಟ್ರಿಗರ್ ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆಂಶನ್: ಪೂರ್ಣಗೊಂಡ ಕೋಡ್
|
||||
|
||||
ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಲು tmrow ನ CO2 ಸಿಗ್ನಲ್ API ಅನ್ನು ಬಳಸುವುದು, ನಿಮ್ಮ ಬ್ರೌಸರ್ ನಲ್ಲಿ ನಿಮ್ಮ ಪ್ರದೇಶದ ವಿದ್ಯುತ್ ಬಳಕೆ ಎಷ್ಟು ಗಂಭೀರವಾಗಿದೆ ಎಂಬುದರ ಬಗ್ಗೆ ನಿಮಗೆ ಸ್ಮರಣಿಕೆ ನೀಡುವಂತೆ ಒಂದು ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆಂಶನ್ ಅನ್ನು ರಚಿಸುವುದು. ಈ ತಾತ್ಕಾಲಿಕ ಎಕ್ಸ್ಟೆಂಶನ್ನ ಬಳಕೆಯಿಂದ ನೀವು ಈ ಮಾಹಿತಿಯ ಆಧಾರದಲ್ಲಿ ನಿಮ್ಮ ಚಟುವಟಿಕೆಗಳ ಬಗ್ಗೆ ತೀರ್ಮಾನ ತೆಗೆದುಕೊಳ್ಳಲು ಸಹಾಯವಾಗುತ್ತದೆ.
|
||||
|
||||

|
||||
|
||||
## ಪ್ರಾರಂಭಿಸುವುದು
|
||||
|
||||
ನೀವು [npm](https://npmjs.com) ಅನ್ನು ಸ್ಥಾಪಿಸಬೇಕು. ನಿಮ್ಮ కంప್ಯೂಟರ್ ನಲ್ಲಿ ಒಂದು ಫೋಲ್ಡರ್ ನಲ್ಲಿ ಈ ಕೋಡ್ ನ ಪ್ರತಿಯನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಿ.
|
||||
|
||||
ಇವತ್ತು ಬೇಕಾಗುವ ಎಲ್ಲಾ ಪ್ಯಾಕೇಜ್ ಗಳನ್ನು ಸ್ಥಾಪಿಸಿ:
|
||||
|
||||
```
|
||||
npm install
|
||||
```
|
||||
|
||||
ವೆಬ್ಪ್ಯಾಕ್ ಉಪಯೋಗಿಸಿ ಎಕ್ಸ್ಟೆಂಶನ್ ರಚಿಸಿ
|
||||
|
||||
```
|
||||
npm run build
|
||||
```
|
||||
|
||||
ಎಡ್ಜ್ನಲ್ಲಿ ಸ್ಥಾಪಿಸಲು, ನಿಮ್ಮ ಬ್ರೌಸರ್ ನ ಮೇಲೆ ಬಲ ದಿಕ್ಕಿನಲ್ಲಿ ಇರುವ 'ಮೂರು ಡಾಟ್' ಮೆನು ಬಳಸಿ ಎಕ್ಸ್ಟೆಂಶನ್ ಪ್ಯಾನಲ್ ಅನ್ನು ಹುಡುಕಿರಿ. ಅಲ್ಲಿ, ಹೊಸ ಎಕ್ಸ್ಟೆಂಶನ್ ಲೋಡ್ ಮಾಡಲು 'ಲೋಡ್ ಅನ್ಪ್ಯಾಕ್ಡ್' ಆಯ್ಕೆಮಾಡಿ. ಪ್ರಾಂಪ್ಟ್ನಲ್ಲಿ 'dist' ಫೋಲ್ಡರ್ ಅನ್ನು ತೆರೆಯಿರಿ ಮತ್ತು ಎಕ್ಸ್ಟೆಂಶನ್ ಲೋಡ್ ಆಗುತ್ತದೆ. ಇದನ್ನು ಬಳಸಲು, ನಿಮಗೆ CO2 ಸಿಗ್ನಲ್ API ([ಇಮೇಲ್ ಮೂಲಕ ಇಲ್ಲಿ ಪಡೆಯಿರಿ](https://www.co2snal.com/) ಅಥವಾ ಈ ಪುಟದಲ್ಲಿ ಬಾಕ್ಸ್ನಲ್ಲಿ ನಿಮ್ಮ ಇಮೇಲ್ ನಮೂದಿಸಿ) ಮತ್ತು [ನಿಮ್ಮ ಪ್ರದೇಶಕ್ಕೆ ಕೋಡ್](http://api.electricitymap.org/v3/zones) [ಎಲೆಕ್ಟ್ರಿಸಿಟಿ ಮ್ಯಾಪ್](https://www.electricitymap.org/map) (ಉದಾಹರಣೆಗೆ, ಬೋಸ್ಟನ್ನಲ್ಲಿ ನಾನು 'US-NEISO' ಉಪಯೋಗಿಸುತ್ತೇನೆ) ಅಗತ್ಯವಿದೆ.
|
||||
|
||||

|
||||
|
||||
ಒಮ್ಮೆ API ಕೀ ಮತ್ತು ಪ್ರದೇಶದ ಎಕ್ಸ್ಟೆಂಶನ್ ಇಂಟರ್ಫೇಸ್ಗೆ ಇನ್ಪುಟ್ ಆದ ಮೇಲೆ, ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆಂಶನ್ ಬಾರ್ನಲ್ಲಿ ಬಣ್ಣದ ಹಣ್ಣು ನಿಮ್ಮ ಪ್ರದೇಶದ انرಜಿಯ ಬಳಕೆಯನ್ನು ಪ್ರತಿಬಿಂಬಿಸುವಂತೆ ಬದಲಾಯಿಸಬೇಕು ಮತ್ತು ನಿಮಗೆ ಸೂಚಕವನ್ನು ನೀಡಬೇಕು ಇಂದ್ರಿಯ ಭಾರವಾದ ಚಟುವಟಿಕೆಗಳು ನಿಮ್ಮ ಪ್ರದರ್ಶನಕ್ಕೆ ಏನು ಸೂಕ್ತವಾಗಿವೆ ಎಂಬುದರ. ಈ 'ಹಣ್ಣು' ವ್ಯವಸ್ಥೆಯ ಹಿಂದಿನ ಆಲೋಚನೆಯನ್ನು ನನಗೆ ಕ್ಯಾಲಿಫೋರ್ನಿಯಾ ಉತ್ಸರ್ಜನೆಗಾಗಿ [ಎನರ್ಜಿ ಲಾಲಿಪೋಪ್ ಎಕ್ಸ್ಟೆಂಶನ್](https://energylollipop.com/) ನೀಡಿತ್ತು.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತೆರವು**:
|
||||
ಈ ದಾಖಲೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಎಂಬ AI ಭಾಷಾಂತರ ಸೇವೆಯನ್ನು ಬಳಸಿ ಭಾಷಾಂತರಿಸಲಾಗಿದೆ. ನಮಗೆ ಶುದ್ಧತೆಯ ಪ್ರಯತ್ನವಿದ್ದು, ಸ್ವಯಂಚಾಲಿತ ಭಾಷಾಂತರಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ತಪ್ಪುಗಳಿರಬಹುದು ಎಂಬುದನ್ನು ತಿಳಿದುಕೊಳ್ಳಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಾಖಲೆ ಆಧಿಕಾರಿಕ ಮೂಲವಾಗಿರುತ್ತದೆ. ಮಹತ್ವದ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಭಾಷಾಂತರ ಸೇವೆಯನ್ನು ಬಳಸುವುದೇ ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಭಾಷಾಂತರ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಸ್ಕರಣೆಗೆ ನಾವು ಹೊಣೆಗಾರರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,43 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "9a6b22a2eff0f499b66236be973b24ad",
|
||||
"translation_date": "2026-01-08T16:18:20+00:00",
|
||||
"source_file": "5-browser-extension/solution/translation/README.it.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಕಾರ್ಬನ್ ಟ್ರಿಗರ್ ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆ: ಪ್ರಾರಂಭಿಸಲು ಕೋಡ್
|
||||
|
||||
ತಮ್ಮ ಪ್ರದೇಶದಲ್ಲಿ ವಿದ್ಯುತ್ ಬಳಕೆಯ ತೂಕ ಎಷ್ಟು ಇದೆ ಎಂಬುದರ ನೇರವಾಗಿ ನಿಮ್ಮ ಬ್ರೌಸರ್ನಲ್ಲಿ ಸ್ಮರಣಿಕೆ ಹೊಂದಿಕೊಳ್ಳಲು ಬ್ರೌಸರಿಗಾಗಿ ವಿಸ್ತರಣೆಯನ್ನು ರಚಿಸಲು tmrow ನ Signal C02 API ಅನ್ನು ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ಗಮನಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ. ಈ ವಿಶೇಷ ವಿಸ್ತರಣೆಯ ಬಳಕೆಯಿಂದ ಈ ಮಾಹಿತಿಗಳ ಆಧಾರದ ಮೇಲೆ ನಿಮ್ಮ ಚಟುವಟಿಕೆಗಳನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
|
||||
|
||||

|
||||
|
||||
## ಪ್ರಾರಂಭಿಸಲು
|
||||
|
||||
[npm](https://npmjs.com) ಸಂಸ್ಥಾಪನೆ ಹೊಂದಿರಬೇಕಾಗಿದೆ. ಈ ಕೋಡ್ ನ ಪ್ರತಿಯನ್ನು ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ನ ಒಂದು ಫೋಲ್ಡರ್ಗೆ ಡೌನ್ಲೋಡ್ ಮಾಡಿ.
|
||||
|
||||
ಎಲ್ಲಾ ಅಗತ್ಯ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಸ್ಥಾಪಿಸಿ:
|
||||
|
||||
```
|
||||
npm install
|
||||
```
|
||||
|
||||
webpack ನಿಂದ ವಿಸ್ತರಣೆಯನ್ನು ರಚಿಸಿ
|
||||
|
||||
```
|
||||
npm run build
|
||||
```
|
||||
|
||||
Edge ನಲ್ಲಿ ಸ್ಥಾಪಿಸಲು, ಬ್ರೌಸರ್ನ ಮೇಲ್ಭಾಗದ ಬಲಭಾಗದಲ್ಲಿರುವ "ಮೂರು ಅಂಕಿಗಳು" ಮೇಳುದಾಣವನ್ನು ಬಳಸಿ ವಿಸ್ತರಣೆಗಳನ್ನು ಹುಡುಕಿ. ಈಗಾಗಲೇ ಸಕ್ರಿಯವಾಗದಿದ್ದರೆ, ಕೆಳಭಾಗದ ಎಡಕ್ಕೆಿರುವ ಡೆವಲಪರ್ ಮೋಡ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ. ಹೊಸ ವಿಸ್ತರಣೆಯನ್ನು ಲೋಡ್ ಮಾಡಲು "ಅನ್ಜಿಪ್ ಮಾಡಿದ ಲೋಡ್" ಆಯ್ಕೆಮಾಡಿ. "dist" ಫೋಲ್ಡರ್ ಅನ್ನು ಪ್ರಾಂಪ್ಟ್ನಲ್ಲಿ ತೆರೆಯಿರಿ ಮತ್ತು ವಿಸ್ತರಣೆ ಲೋಡ್ ಆಗುತ್ತದೆ. ಇದನ್ನು ಬಳಸಲು, ನಿಮಗೆ CO2 Signal API ಗೆ ಒಂದು API ಕೀ ಬೇಕಾಗುತ್ತದೆ (ನೀವು [ಇಲ್ಲಿ ಇಮೇಲ್ ಮೂಲಕ ಪಡೆಯಬಹುದು](https://www.co2signal.com/) - ಈ ಪುಟದಲ್ಲಿರುವ ಪಟ್ಟಿಯನ್ನು ನಿಮ್ಮ ಇಮೇಲ್ ನೊಂದಿಗೆ ತುಂಬಿ) ಮತ್ತು [ವಿದ್ಯುತ್ ನಕ್ಷೆ](https://www.electricitymap.org/map) ಗೆ ಹೊಂದುವ [ನಿಮ್ಮ ಪ್ರादेशಿಕ ಕೋಡ್](http://api.electricitymap.org/v3/zones) ಅಗತ್ಯವಿದೆ (ಉದಾಹರಣೆಗೆ ಬೊಸ್ಟ್ನಲ್ಲಿ, "US-NEISO").
|
||||
|
||||

|
||||
|
||||
ಒಮ್ಮೆ API ಕೀ ಮತ್ತು ಪ್ರದೇಶ ವಿಸ್ತರಣೆಯ ಅಂತರ್ ಮುಖದಲ್ಲಿ ಸೇರಿಸಿದ ನಂತರ, ಬ್ರೌಸರ್ ವಿಸ್ತರಣೆಯ ಬಾರ್ ನಲ್ಲಿ ಬಣ್ಣದ ಬಿಂದು ಪ್ರದೇಶದ ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ಪ್ರತಿಬಿಂಬಿಸಲು ಬದಲಾಗುತ್ತದೆ ಮತ್ತು ಹೆಚ್ಚಿನ ವಿದ್ಯುತ್ ಉಪಯೋಗದ ಚಟುವಟಿಕೆಗಳನ್ನು ನಡಿಸುವುದು ಯೋಗ್ಯವೋ ಎಂಬುದರ ಸೂಚನೆ ನೀಡುತ್ತದೆ. ಈ "ಬಿಂದು" ಆಧಾರಿತ ವ್ಯವಸ್ಥೆಯ ಹಿನ್ನೆಲೆ ಸಂಯೋಜನೆಯು ಕ್ಯಾಲಿಫೋರ್ನಿಯಾದ ಉತ್ಸರ್ಗಗಳಿಗೆ арналған [ಎನೆರ್ಜೀ ಲಾಲಿಪಾಪ್ ವಿಸ್ತರಣೆ](https://energylollipop.com/) ನಿಂದ ಪಡೆದಿದೆ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಜಮೆ ಒಪ್ಪಂದ**:
|
||||
ಈ ದಾಖಲೆ AI ಭಾಷಾಂತರ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಉಪಯೋಗಿಸಿ ಭಾಷಾಂತರಿಸಲಾಗಿದೆ. ನಮಗೆ ನಿಖರತೆಗಾಗಿ ಪ್ರಯತ್ನವಿದ್ದರೂ ಸಹ, ಸ್ವಯಂಚಾಲಿತ ಭಾಷಾಂತರಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಯಿರಬಹುದೆಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿನ ಮೂಲ ದಾಖಲೆ ಅಧಿಕೃತ ಮೂಲವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಭಾಷಾಂತರವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಭಾಷಾಂತ್ಯದಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವ ದೋಷಗಳ ಅಥವಾ ತಪ್ಪುಭ್ರಮೆಗಳಿಗಾಗಿ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,43 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "21b364c158c8e4f698de65eeac16c9fe",
|
||||
"translation_date": "2026-01-08T16:16:18+00:00",
|
||||
"source_file": "5-browser-extension/solution/translation/README.ms.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಕಾರ್ಬನ್ ಟ್ರಿಗರ್ ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಷನ್: ಪೂರ್ಣ ಕೋಡ್
|
||||
|
||||
CO2 ಸಿಗ್ನಲ್ tmrow API ಬಳಸಿ ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ಪತ್ತೆಹಚ್ಚಲು, ನಿಮ್ಮ ಪ್ರದೇಶದ ವಿದ್ಯುತ್ ಬಳಕೆಯ ಗಂಭೀರತೆಯ ಬಗ್ಗೆ ಬ್ರೌಸರ್ನಲ್ಲಿ ಮಾಡಿದ್ದಾರೆಚ್ಚುವಿಕೆಗಳನ್ನು ಪಡೆಯಲು ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಷನ್ ನಿರ್ಮಿಸಿ. ಈ ಎಕ್ಸ್ಟೆನ್ಷನ್ ವಿಶೇಷವಾಗಿ ಬಳಸುವುದರಿಂದ ಈ ಮಾಹಿತಿಯನ್ನು ಆಧರಿಸಿ ನಿಮ್ಮ ಚಟುವಟಿಕೆಗಳ ಬಗ್ಗೆ ನೀವು ಸಂವೇದನೆ ಮಾಡಿಕೊಳ್ಳಲು ಸಹಾಯವಾಗುತ್ತದೆ.
|
||||
|
||||

|
||||
|
||||
## ಇಲ್ಲಿ ಪ್ರಾರಂಭಿಸಿ
|
||||
|
||||
ನೀವು [npm] (https://npmjs.com) ಅನ್ನು installieren ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಈ ಕೋಡ್ನ ನಕಲನ್ನು ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ನ ಫೋಲ್ಡರ್ಗೆ ಡೌನ್ಲೋಡ್ ಮಾಡಿ.
|
||||
|
||||
ಎಲ್ಲಾ ಅಗತ್ಯ ಪ್ಯಾಕೇಜ್ಗಳನ್ನು ಸ್ಥಾಪಿಸಿ:
|
||||
|
||||
```
|
||||
npm install
|
||||
```
|
||||
|
||||
webpack ನಿಂದ ಎಕ್ಸ್ಟೆನ್ಷನ್ ನಿರ್ಮಿಸಿ
|
||||
|
||||
```
|
||||
npm run build
|
||||
```
|
||||
|
||||
Edge ನಲ್ಲಿ ಇನ್ಸ್ಟಾಲ್ ಮಾಡಲು, ಬ್ರೌಸರ್ನ ಮೇಲ್ಮೈಯಲ್ಲಿನ 'ಮೂರು ತೆಳ್ಳುವ ಗುಂಡಿಗಳು' ಮೆನುವಿನಲ್ಲಿ Sambungan ಫಲಕವನ್ನು ಹುಡುಕಿ. ಅಲ್ಲಿ, ಹೊಸ ಎಕ್ಸ್ಟೆನ್ಷನ್ ಲೋಡ್ ಮಾಡಲು 'Load Unpacked' ಆಯ್ಕೆಮಾಡಿ. 'dist' ಫೋಲ್ಡರ್ ತೆರೆಯುವ ಮೂಲಕ ಎಕ್ಸ್ಟೆನ್ಷನ್ ಲೋಡ್ ಆಗುತ್ತದೆ. ಇದನ್ನು ಬಳಸಲು, CO2 Signal APIക് ([ಇಲ್ಲಿ ಇಮೇಲ್ ಮೂಲಕ ಪಡೆಯಿರಿ](https://www.co2signal.com/) - ಈ ಪುಟದಲ್ಲಿ ನಿಮ್ಮ ಇಮೇಲ್ ನಮೂದಿಸಿ) ಮತ್ತು [ನಿಮ್ಮ ಪ್ರದೇಶದ ಕೋಡ್](http://api.electricitymap.org/v3/zones) ಅನ್ನು ಪಡೆಯಬೇಕಾಗುತ್ತದೆ, ಇದು [ElectricityMap](https://www.electricitymap.org/map) ಗೆ ಹೊಂದಿಕೊಳ್ಳುತ್ತದೆ (ಉದಾಹರಣೆಗೆ ಬೋಸ್ಟನ್ನಲ್ಲಿ, ನಾನು 'US-NEISO' ಬಳಸುತ್ತೇನೆ).
|
||||
|
||||

|
||||
|
||||
API ಕೀ ಮತ್ತು ಪ್ರದೇಶವನ್ನು ಎಕ್ಸ್ಟೆನ್ಷನ್ ಇಂಟರ್ಫೇಸ್ಗೆ ನಮೂದಿಸಿದ ನಂತರ, ಬ್ರೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಷನ್ ಬಾರ್ನ ಬಣ್ಣ verandert ಕೂಡ ಆತ್ಮೀಯ ತುಂಡು ನಿಮ್ಮ ಪ್ರದೇಶದ ವಿದ್ಯುತ್ ಬಳಕೆಯನ್ನು ಪ್ರತಿಬಿಂಬಿಸುತ್ತದೆ ಮತ್ತು ನೀವು ತಗೊಂಡು ಮಾಡಿದ ಮೇಲೆ ತೂಕದ ಚಟುವಟಿಕೆಗಳಿಗೆ ಸೂಚನೆ ನೀಡುತ್ತದೆ. ಈ 'ಡಾಟ್' ವಿಧಾನದ ಆಶಯವನ್ನು [Lollipop Energy ಬೌಸರ್ ಎಕ್ಸ್ಟೆನ್ಷನ್](https://energylollipop.com/) ಕ್ಯಾಲಿಫೋರ್ನಿಯಾ ಎಮಿಷನ್ಗಳಿಗೆ ನೀಡಿ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ನಿರಾಕರಣೆ**:
|
||||
ಈ ದಾಖಲೆ ಹ人工 ಬುದ್ದಿಮತ್ತೆ ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ನ ಮೂಲಕ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಯಿಗಾಗಿ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸಮರ್ಪಕತೆಗಳು ಇರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ದಾಖಲೆ ಅದರ ಸ್ವದೇಶಿ ಭಾಷೆಯಲ್ಲಿ ಆದೇಶಾತ್ಮಕ ಮೂಲವನ್ನಾಗಿ ಪರಿಗಣಿಸಬೇಕಾಗಿದೆ. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದ ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಗ್ರಹಿಕೆಗಳು ಅಥವಾ ವೈಖರಿಗಳಿಗಾಗಿ ನಾವು ಜವಾಬ್ದಾರಿಯಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,83 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "87cd43afe5b69dbbffb5c4b209ea6791",
|
||||
"translation_date": "2026-01-08T13:48:43+00:00",
|
||||
"source_file": "6-space-game/2-drawing-to-canvas/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ನಿಯೋಜನೆ: ಕ್ಯಾನ್ವಾಸ್ API ಅನ್ನು ಅನ್ವೇಷಿಸಿ
|
||||
|
||||
## ಕಲಿಕೆಯ ಉದ್ದೇಶಗಳು
|
||||
|
||||
ಈ ನಿಯೋಜನೆಯನ್ನು ಪೂರ್ಣಗೊಳಿಸುವ ಮೂಲಕ, ನೀವು ಕ್ಯಾನ್ವಾಸ್ API ಮೂಲತತ್ವಗಳನ್ನು ತಿಳಿದುಕೊಂಡಿರುವುದು ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಮತ್ತು HTML5 ಕ್ಯಾನ್ವಾಸ್ ಬಳಸಿ ದೃಶ್ಯಾತ್ಮಕ ಅಂಶಗಳನ್ನು ರಚಿಸಲು ಸೃಜನಶೀಲ ಸಮಸ್ಯೆ ಪರಿಹಾರವನ್ನು ಅನ್ವಯಿಸುವುದನ್ನು ಪ್ರದರ್ಶಿಸುವಿರಿ.
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ನಿಮಗೆ ಆಸಕ್ತಿ ಇರುವ ಕ್ಯಾನ್ವಾಸ್ API ಯ ಒಂದು ಅಂಶವನ್ನು ಆಯ್ಕೆಮಾಡಿ ಅದರ ಸುತ್ತಲೂ ಆಕರ್ಷಕ ದೃಶ್ಯ ಪ್ರಾಜೆಕ್ಟ್ ರಚಿಸಿ. ಈ ನಿಯೋಜನೆ ನೀವು ಕಲಿತಿದೆ ಬದಲಾಯಿಸುವ ಚಿತ್ರಕಲೆ ಸಾಮರ್ಥ್ಯಗಳನ್ನು ಪ್ರಯೋಗಿಸುವಂತೆ ಪ್ರೋತ್ಸಾಹಿಸುತ್ತದೆ ಮತ್ತು ನಿಮ್ಮದೇ ಪ್ರತ್ಯೇಕವಾದ ಯಾವುದಾದರೂ ನಿರ್ಮಿಸಲು ವಿನಂತಿಸುತ್ತದೆ.
|
||||
|
||||
### ಪ್ರಾಜೆಕ್ಟ್ ಕಲ್ಪನೆಗಳು ನಿಮಗೆ ಪ್ರೇರಣೆ ನೀಡಲು
|
||||
|
||||
**ಭೌಮಿತೀಯ ಮಾದರಿಗಳು:**
|
||||
- **ರಚಿಸಿ** ಯಾದೃಚ್ಛಿಕ ಸ್ಥಾನಗಳಿಸುವಿಕೆಯಿಂದ ಚಂದಿರದ ನಕ್ಷತ್ರಗಳ ಅನಿಮೇಟೆಡ್ ಟ್ವಿಂಕ್ಲಿಂಗ್ ಗ್ಯಾಲಕ್ಸಿ
|
||||
- **ಆಯೋಜಿಸಿ** ಪುನರಾವರ್ತಿತ ಭೌಮಿತೀಯ ಆಕಾರಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಆಸಕ್ತಿಕರ ಬಣ್ಣಾರಿತ್ರ
|
||||
- **ಕಟ್ಟಿಸಿ** ಸುತ್ತುವ, ಬಣ್ಣದ ಮಾದರಿಗಳೊಂದಿಗೆ ಕಲೈಡೋಸ್ಕೋಪ್ ಪರಿಣಾಮ
|
||||
|
||||
**ಪರಸ್ಪರ ಕ್ರಿಯಾಶೀಲ ಅಂಶಗಳು:**
|
||||
- **ವಿಕಸಿಸಿ** ಮೌಸ್ ಚಲನೆಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸುವ ಚಿತ್ರಕಲೆ ಉಪಕರಣ
|
||||
- **ಅಳವಡಿಸಿ** ಕ್ಲಿಕ್ ಮಾಡಿದಾಗ ಬಣ್ಣ ಬದಲಿಸುವ ಆಕಾರಗಳು
|
||||
- **ಆಯೋಜಿಸಿ** ಚಲಿಸುವ ಅಂಶಗಳೊಂದಿಗೆ ಸರಳ ಅನಿಮೇಷನ್ ಲೂಪ್
|
||||
|
||||
**ಗೇಮ್-ಸಂಬಂಧಿತ ಗ್ರಾಫಿಕ್ಸ್:**
|
||||
- **ರಚಿಸಿ** ಸ್ಥಳ ಗೇಮ್ಗಾಗಿ ಸ್ಕ್ರოლಿಂಗ್ ಹಿನ್ನೆಲೆ
|
||||
- **ಕಟ್ಟಿಸಿ** ಸ್ಪೋಟಗಳು ಅಥವಾ ಜಾದೂ ಮಂತ್ರಗಳಂತಹ ಕಣ ಪರಿಣಾಮಗಳು
|
||||
- **ತಯಾರಿಸಿ** ಹಲವಾರು ಫ್ರೇಮ್ಗಳೊಂದಿಗೆ ಅನಿಮೇಟೆಡ್ ಸ್ಪ್ರಿಟ್ಗಳು
|
||||
|
||||
### ಅಭಿವೃದ್ಧಿ ಮಾರ್ಗಸೂಚಿಗಳು
|
||||
|
||||
**ಸಂದರ್ಬ ಮತ್ತು ಪ್ರೇರಣೆ:**
|
||||
- **ಬ್ರೌಸ್ ಮಾಡಿ** criatividade ಕಾನ್ವಾಸ್ ಉದಾಹರಣೆಗಳು (ಪ್ರೇರಣೆಗೆ, ನಕಲಿಗೆ ಅಲ್ಲ)
|
||||
- **ಅಧ್ಯಯನ ಮಾಡಿ** [ಕ್ಯಾನ್ವಾಸ್ API ಡಾಕ್ಯುಮೆಂಟೇಶನ್](https://developer.mozilla.org/docs/Web/API/Canvas_API) ಹೆಚ್ಚುವರಿ ವಿಧಾನಗಳಿಗಾಗಿ
|
||||
- **ಪ್ರಯೋಗಮಾಡಿ** ವಿಭಿನ್ನ ಚಿತ್ರಕಲೆ ಕಾರ್ಯಗಳು, ಬಣ್ಣಗಳು, ಆಗಮನ್ಗಳನ್ನು
|
||||
|
||||
** ತಾಂತ್ರಿಕ ಅವಶ್ಯಕತೆಗಳು:**
|
||||
- **ಬಳಸಿ** ಸರಿಯಾದ ಕ್ಯಾನ್ವಾಸ್ ವ್ಯವಸ್ಥೆಯನ್ನು `getContext('2d')`ೊಂದಿಗೆ
|
||||
- **ಒಳಗೆ ಸೇರಿಸಿ** ನಿಮ್ಮ ಆದೇಶವನ್ನು ವಿವರಿಸುವ ಮಹತ್ವದ ಕಾಮೆಂಟ್ಗಳು
|
||||
- **ತಪಾಸಿಸಿ** ನಿಮ್ಮ ಸಂಹಿತೆಯನ್ನು ಪೂರ್ತಿ ಆಗುಹೋಗುವುದಿಲ್ಲ ಎಂದು ಖಾತ್ರಿ ಪಡಿಸಿ
|
||||
- **ಅನುಸರಿಸಿ** ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಸಿಂಟ್ಯಾಕ್ಸ್ (const/let, ಆಯರ್ ಫಂಕ್ಷನ್ಗಳು)
|
||||
|
||||
**ಸೃಜನಶೀಲ ವ್ಯಕ್ತಪಡಿಸುವಿಕೆ:**
|
||||
- **ಕೇಂದ್ರೀಕರಿಸಿರಿ** ಒಬ್ಬ ಕ್ಯಾನ್ವಾಸ್ API ಫೀಚರ್ ಮೇಲೆ ಆದರೆ ಅದನ್ನು ಆಳವಾಗಿ ಅನ್ವೇಷಿಸಿ
|
||||
- **ನಿಮ್ಮದೇ ಸೃಜನಶೀಲ ತಿರುವನ್ನು ಸೇರಿಸಿರಿ** ಪ್ರಾಜೆಕ್ಟ್ ವೈಯಕ್ತಿಕವಾಗಿರಲು
|
||||
- **ಪರಿಗಣಿಸಿ** ನಿಮ್ಮ ರಚನೆ ಹೇಗೆ ದೊಡ್ಡ ಅಪ್ಲಿಕೇಶನಿನ ಭಾಗವಾಗಿರಬಹುದು
|
||||
|
||||
### ಸಲ್ಲಿಕೆಯ ಮಾರ್ಗಸೂಚಿಗಳು
|
||||
|
||||
ನೀವು ಪೂರ್ಣಗೊಳಿಸಿದ ಪ್ರಾಜೆಕ್ಟ್ ಅನ್ನು ಒಂದೇ HTML ಫೈಲ್ ಆಗಿ ಬಳಕೆದಾರರೊಳಗಿನ CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ಗಳೊಂದಿಗೆ ಸಲ್ಲಿಸಿ, ಅಥವಾ ಫೋಲ್ಡರ್ನಲ್ಲಿ ಬೇರೆ ಬೇರೆ ಫೈಲ್ಗಳಾಗಿ. ನಿಮ್ಮ ಸೃಜನಶೀಲ ಆಯ್ಕೆಗಳು ಮತ್ತು ನೀವು ಅನ್ವೇಷಿಸಿದ ಕ್ಯಾನ್ವಾಸ್ API ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ವಿವರಿಸುವ ಸಂಕ್ಷಿಪ್ತ ಕಾಮೆಂಟ್ ಸೇರಿಸಿ.
|
||||
|
||||
## ಮಾಪಕ ಶಿಬಿರ
|
||||
|
||||
| ಮಾನದಂಡಗಳು | ಅತಿ ಶ್ರೇಷ್ಠ | ಸೂಕ್ತ | ಸುಧಾರಣೆ ಬೇಕು |
|
||||
|-------------|--------------|---------|--------------|
|
||||
| **ತಾಂತ್ರಿಕ ಅನುಷ್ಠಾನ** | ಹಲವಾರು ವೈಶಿಷ್ಟ್ಯಗಳೊಂದಿಗೆ ಸೃಜನಶೀಲವಾಗಿ ಕ್ಯಾನ್ವಾಸ್ API ಬಳಸಲಾಗಿದೆ, ಸಂಕೇತ ದೋಷರಹಿತವಾಗಿ ನಡೆಯುತ್ತಿದೆ, ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ವಯಿಸಿದೆ | ಸರಿಯಾಗಿ ಕ್ಯಾನ್ವಾಸ್ API ಬಳಸಲಾಗಿದೆ, ಸಂಕೇತವು ಸಣ್ಣ ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ ನಿರ್ವಹಿಸುತ್ತದೆ, ಮೂಲ ಅನುಷ್ಠಾನ | ಕ್ಯಾನ್ವಾಸ್ API ಪ್ರಯತ್ನಿಸಿದೆ ಆದರೆ ಸಂಕೇತದಲ್ಲಿ ದೋಷಗಳಿವೆ ಅಥವಾ ಕಾರ್ಯಗತಗೊಳ್ಳುತ್ತಿಲ್ಲ |
|
||||
| **ಸೃಜನಶೀಲತೆ ಮತ್ತು ವಿನ್ಯಾಸ** | ಅತ್ಯಂತ ಮೂಲಭೂತ ಕಲ್ಪನೆ, ಪದಕ್ಷಿಣ ದೃಶ್ಯ ಆಕರ್ಷಣೆ, ಆಯ್ಕೆಮಾಡಿದ ಕ್ಯಾನ್ವಾಸ್ ಫೀಚರ್ ಆಳವಾದ ಅನ್ವೇಷಣೆಯನ್ನು ತೋರಿಸುತ್ತದೆ | ಕ್ಯಾನ್ವಾಸ್ ವೈಶಿಷ್ಟ್ಯಗಳ ಉತ್ತಮ ಬಳಕೆ ಕೆಲವು ಸೃಜನಶೀಲ ಅಂಶಗಳೊಂದಿಗೆ, ದೃಢ ದೃಶ್ಯ ಫಲಿತಾಂಶ | ಮೂಲ ಅನುಷ್ಠಾನ, ಅತ್ಯಲ್ಪ ಸೃಜನಶೀಲತೆ ಅಥವಾ ದೃಶ್ಯ ಆಕರ್ಷಣೆ |
|
||||
| **ಸಂಕೇತ ಗುಣಮಟ್ಟ** | ಉತ್ತಮ ಸಂಘಟಿತ, ಕಾಮೆಂಟ್ ಗಳೊಂದಿಗೆ ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಅನುಸರಿಸುವ ಸಂಕೇತ, ಪರಿಣಾಮಕಾರಿಯಾದ ಅಲ್ಗಾರಿಥಮ್ಗಳು | ಸ್ವಚ್ಛ ಸಂಕೇತ, ಕೆಲವು ಕಾಮೆಂಟ್ಗಳೊಂದಿಗೆ, ಮೂಲ ಕೋಡಿಂಗ್ ಮಾನದಂಡಗಳನ್ನು ಅನುಸರಿಸುತ್ತದೆ | ಸಂಕೇತದ ಸಂಘಟನೆಯ ಕೊರತೆ, ಕನಿಷ್ಠ ಕಾಮೆಂಟ್ಗಳು, ಪರಿಣಾಮಕಾರಿವಲ್ಲದ ಅನುಷ್ಠಾನ |
|
||||
|
||||
## ಪ್ರತಿಬಿಂಬ ಪ್ರಶ್ನೆಗಳು
|
||||
|
||||
ನಿಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್ ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ, ಈ ಪ್ರಶ್ನೆಗಳನ್ನು ಪರಿಗಣಿಸಿ:
|
||||
|
||||
1. **ನೀವು ಯಾವ ಕ್ಯಾನ್ವಾಸ್ API ವೈಶಿಷ್ಟ್ಯವನ್ನು ಆಯ್ಕೆ ಮಾಡಿಕೊಂಡಿರುತ್ತೀರಿ ಮತ್ತು ಏಕೆ?**
|
||||
2. **ಪ್ರಾಜೆಕ್ಟ್ ನಿರ್ಮಿಸುವಾಗ ನೀವು ಎದುರಿಸಿದ ಸವಾಲುಗಳು ಯಾವುವು?**
|
||||
3. **ಈ ಪ್ರಾಜೆಕ್ಟ್ ಅನ್ನು ದೊಡ್ಡ ಅಪ್ಲಿಕೇಶನ್ ಅಥವಾ ಗೇಮ್ ಆಗಿ ಹೇಗೆ ವಿಸ್ತರಿಸಬಹುದು?**
|
||||
4. **ಮುಂದೆ ನೀವು ಯಾವ ಇನ್ನೂ ಕ್ಯಾನ್ವಾಸ್ API ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಅನ್ವೇಷಿಸಲು ಇಚ್ಛಿಸುತ್ತೀರಿ?**
|
||||
|
||||
> 💡 **ಪ್ರೋ ಟಿಪ್**: ಸರಳವಾದ ವಿಚಾರದಿಂದ ಪ್ರಾರಂಭಿಸಿ ಮತ್ತು ಕ್ರಮೇಣ ಸಂಕೀರ್ಣತೆಗೆ ಹೋಗಿ. ಒಳ್ಳೆಯದಾಗಿ ನಿರ್ವಹಿಸಲಾದ ಸರಳ ಪ್ರಾಜೆಕ್ಟ್ ಸರಿಯಾಗಿಲ್ಲದ ತುಂಬಾ ಮಹತ್ವಾಕಾಂಕ್ಷಿ ಪ್ರಾಜೆಕ್ಟ್ కన్నೆ ಉತ್ತಮ!
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ನಿರಾಕರಣೆ**:
|
||||
ಈ ದಾಖಲೆಯನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಸರಿಯಾದ ಅನುವಾದಕ್ಕಾಗಿ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ದಾಖಲೆಯ ಸ್ಥಳೀಯ ಭಾಷೆಯ ಆವೃತ್ತಿಯೇ ಅಧಿಕೃತ ಮೂಲವಾಗಿರುತ್ತದೆ. ಮಹತ್ವದ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿಕೆ ಅಥವಾ ತಪ್ಪು ಬಿರುಗಾಳಿಗಾಗಿ ನಾವು ಹೊಣೆಗಾರರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,38 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "c162b3b3a1cafc1483c8015e9b266f0d",
|
||||
"translation_date": "2026-01-08T14:54:21+00:00",
|
||||
"source_file": "6-space-game/3-moving-elements-around/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ನಿಮ್ಮ ಕೋಡ್에 ಕಾಮೆಂಟ್ ಮಾಡಿ
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ಶುದ್ಧ, ಚೆನ್ನಾಗಿ ದಾಖಲೆ ಮಾಡಲಾದ ಕೋಡ್ ನಿಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್ಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಮತ್ತು ಹಂಚಿಕೊಳ್ಳಲು ಅಗತ್ಯವಾಗಿದೆ. ಈ ಕಾರ್ಯದಲ್ಲಿ, ನೀವು ವೃತ್ತಿಪರ ಡೆವಲಪರ್ಗಳ ಅತ್ಯಂತ ಪ್ರಮುಖ ಅಭ್ಯಾಸಗಳನ್ನು ಅಭ್ಯಾಸ ಮಾಡುತ್ತೀರಿ: ನಿಮ್ಮ ಕೋಡ್ನ ಉದ್ದೇಶ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ವಿವರಿಸುವ ಸ್ಪಷ್ಟ, ಸಹಾಯಕ ಕಾಮೆಂಟ್ಗಳನ್ನು ಬರೆಯುವುದು.
|
||||
|
||||
ನಿಮ್ಮ ಗೇಮ್ ಫೋಲ್ಡರ್ನ `app.js` ಫೈಲ್ ಅನ್ನು ಪರಿಶೀಲಿಸಿ ಮತ್ತು ಅದನ್ನು ಕಾಮೆಂಟ್ಮಾಡಿ ಹಾಗೂ ಶುದ್ಧಗೊಳಿಸುವ ರೀತಿಗಳಿಗೆ ಹುಡುಕಿ. ಕೋಡ್ ನಿಯಂತ್ರಣ ತಪ್ಪಿಸಿಕೊಳ್ಳುವುದು ತುಂಬಾ ಸುಲಭ, ಮತ್ತು ಈಗ ನೀವು ಓದಲು ಅನುಕೂಲಕರವಾಗಿರುವ ಕೋಡ್ ಹೊಂದಲು ಕಾಮೆಂಟ್ಗಳನ್ನು ಸೇರಿಸಲು ಉತ್ತಮ ಅವಕಾಶ.
|
||||
|
||||
**ನಿಮ್ಮ ಕಾರ್ಯದಲ್ಲಿ شامل ಆಗಿರುವುದು:**
|
||||
- **ಪ್ರತಿ ಪ್ರಮುಖ ಕೋಡ್ ವಿಭಾಗ ಏನು ಮಾಡುತ್ತದೆ ಎಂದು** ವಿವರಿಸುವ ಕಾಮೆಂಟ್ಗಳನ್ನು ಸೇರಿಸಿ
|
||||
- **ಕಾರ್ಯಗಳನ್ನು ದಾಖಲೆ ಮಾಡುವುದು** ಅವುಗಳ ಉದ್ದೇಶ ಮತ್ತು ಪ್ಯಾರಾಮೀಟರ್ಗಳ ಸ್ಪಷ್ಟ ವಿವರಣೆಗಳೊಂದಿಗೆ
|
||||
- **ಲಾಜಿಕಲ್ ಬ್ಲಾಕ್ಗಳಲ್ಲಿ ಕೋಡ್ ಅನ್ನು ವ್ಯವಸ್ಥಾಪಿಸಲು** ವಿಭಾಗ ಶೀರ್ಷಿಕೆಗಳನ್ನು ಬಳಸಿ
|
||||
- **ಬಳಸದ ಅಥವಾ ಅನಗತ್ಯವಾದ ಕೋಡ್ ಅನ್ನು** ತೆಗೆದುಹಾಕಿ
|
||||
- **ಚಿರಂತನ ಹೆಸರಿನ ನಿಯಮಗಳನ್ನು** ಬಳಸಿ ವ್ಯತ್ಯಾಸಗಳ ಮತ್ತು ಕಾರ್ಯಗಳಿಗಾಗಿ
|
||||
|
||||
## ಮೌಲ್ಯಮಾಪನ ಮಾನದಂಡ
|
||||
|
||||
| ಮಾನದಂಡ | ಉದಾಹರಣೆ | ಸಮರ್ಪಕ | ಸುಧಾರಣೆಗೆ ಅಗತ್ಯವಿದೆ |
|
||||
| -------- | --------- | -------- | ----------------- |
|
||||
| **ಕೋಡ್ ದಾಖಲೆ** | `app.js` ಕೋಡ್ ಪೂರ್ಣವಾಗಿ ಕಾಮೆಂಟ್ ಮಾಡಲಾಗಿದೆ ಎಲ್ಲಾ ಪ್ರಮುಖ ವಿಭಾಗಗಳು ಮತ್ತು ಕಾರ್ಯಗಳ ಸ್ಪಷ್ಟ, ಸಹಾಯಕ ವಿವರಣೆಗಳೊಂದಿಗೆ | `app.js` ಕೋಡ್ ಸಮರ್ಪಕವಾಗಿ ಕಾಮೆಂಟ್ ಮಾಡಲಾಗಿದೆ ಹೆಚ್ಚಿನ ವಿಭಾಗಗಳಿಗೆ ಮೂಲಭೂತ ವಿವರಣೆಗಳೊಂದಿಗೆ | `app.js` ಕೋಡ್ ಕನಿಷ್ಠ ಕಾಮೆಂಟ್ಗಳನ್ನು ಹೊಂದಿದೆ ಮತ್ತು ಸ್ಪಷ್ಟ ವಿವರಣೆ ಇಲ್ಲದಿರುವುದು |
|
||||
| **ಕೋಡ್ ವ್ಯವಸ್ಥಾಪನೆ** | ಕೋಡ್ ಲಾಜಿಕಲ್ ಬ್ಲಾಕ್ಗಳಾಗಿ ವಿಭಾಗ ಶೀರ್ಷಿಕೆಗಳೊಂದಿಗೆ ಮತ್ತು ನಿಯಮಿತ ರಚನೆಯೊಂದಿಗೆ ವ್ಯವಸ್ಥಿತವಾಗಿದೆ | ಕೋಡ್ ಕೆಲವು ಸಂಘಟನೆಯೊಂದಿಗೆ ಸಂಬಂಧಿತ ಕಾರ್ಯಕ್ಷಮತೆಯ ಮೂಲಸ್ಥಾಗತಿಯನ್ನು ಹೊಂದಿದೆ | ಕೋಡ್ ಸ್ವಲ್ಪ ಅಸಂಯೋಜಿತವಾಗಿದೆ ಮತ್ತು ಅನುಸರಿಸಲು ಕಷ್ಟವಾಗಿದೆ |
|
||||
| **ಕೋಡ್ ಗುಣಮಟ್ಟ** | ಎಲ್ಲಾ ವ್ಯತ್ಯಾಸಗಳು ಮತ್ತು ಕಾರ್ಯಗಳು ವಿವರಣಾತ್ಮಕ ಹೆಸರನ್ನು ಬಳಸುತ್ತವೆ, ಯಾವುದೇ ಬಳಸದ ಕೋಡ್ ಇಲ್ಲ, ನಿಯಮಿತ ಶೈಲಿ ಪಾಲನೆ | ಹೆಚ್ಚಿನ ಕೋಡ್ ಉತ್ತಮ ಹೆಸರಿನ ಅಭ್ಯಾಸಗಳನ್ನು ಅನುಸರಿಸುತ್ತದೆ ಕಡಿಮೆ ಬಳಸದ ಕೋಡ್ | ವ್ಯತ್ಯಾಸ ಹೆಸರಗಳು ಅಸ್ಪಷ್ಟವಾಗಿವೆ, ಬಳಸದ ಕೋಡ್ ಇದೆ, ಅಸಮರ್ಪಕ ಶೈಲಿ |
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಅಸ್ವೀಕಾರಿಕೆ**:
|
||||
ಈ ದಸ್ತಾವೇಜು AI ಭಾಷಾಂತರ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಗೆ ಪ್ರಯತ್ನಿಸುವಾಗಲೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳಿರಬಹುದೆಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಸ್ಥಳೀಯ ಭಾಷೆಯಲ್ಲಿ ಇದ್ದ ಮೂಲ ದಸ್ತಾವೇಜು ಆದ್ಯಕ್ಷತೆಯ ಮೂಲವಾಗಿರಬೇಕೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಗಂಭೀರ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಭಾಷಾಂತರವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಭಾಷಾಂತರದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪುಗಳು, ತಪ್ಪು ಅರ್ಥಗರ್ಭಿತತೆಗಳ ಬಗ್ಗೆ ನಾವು ಜವಾಬ್ದಾರರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,64 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "124efddbb65166cddb38075ad6dae324",
|
||||
"translation_date": "2026-01-08T13:37:17+00:00",
|
||||
"source_file": "6-space-game/4-collision-detection/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಅಪಘಾತಗಳ ಅನ್ವೇಷಣೆ
|
||||
|
||||
## ನಿರ್ದೇಶನಗಳು
|
||||
|
||||
ವಿಭಿನ್ನ ರೀತಿಯ ವಸ್ತು ಪರಸ್ಪರ ಕ್ರಿಯೆಗಳನ್ನು ಪ್ರದರ್ಶಿಸುವ ಕಸ್ಟಮ್ ಮಿನಿ-ಗೇಮ್ ರಚಿಸುವ ಮೂಲಕ ನಿಮ್ಮ ಅಪಘಾತ ಪತ್ತೆಮಾಡುವ ಜ್ಞಾನವನ್ನು ಅನ್ವಯಿಸಿ. ಈ ಹುದ್ದೆ ರಚನಾತ್ಮಕ ಅನುಷ್ಠಾನ ಮತ್ತು ಪ್ರಯೋಗಾಮೃತಿಕೆಯಿಂದ ಅಪಘಾತ ಯಾಂತ್ರಿಕತೆಯನ್ನು ತಿಳಿದುಕೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
|
||||
|
||||
### ಯೋಜನೆ ಅವಶ್ಯಕತೆಗಳು
|
||||
|
||||
**ಇವುಗಳನ್ನು ಹೊಂದಿರುವ ಸಣ್ಣ ಪರಸ್ಪರ ಕ್ರಿಯಾಶೀಲ ಆಟವನ್ನು ರಚಿಸಿ:**
|
||||
- **ಮಲ್ಟಿಪಲ್ ಚಲಿಸುವ ವಸ್ತುಗಳು** ಕೀಬೋರ್ಡ್ ಅಥವಾ ಮೌಸ್ ಇನ್ಪುಟ್ ಮೂಲಕ ನಿಯಂತ್ರಿಸಬಹುದಾಗಿರಬೇಕು
|
||||
- ಪಾಠದಿಂದ ಪಡೆದ ಛಲದ ಮಧ್ಯೆ ಹರಡುವದಾರಿತನ ನಿಯಮಗಳನ್ನು ಬಳಸಿ **ಅಪಘಾತ ಪತ್ತೆ ವ್ಯವಸ್ಥೆ**
|
||||
- ಅಪಘಾತಗಳು ಸಂಭವಿಸುವಾಗ ಗೋಚರಿಸುವ **ದೃಶ್ಯ ಸ್ಪಂದನೆ** (ವಸ್ತು ನಾಶ, ಬಣ್ಣ ಬದಲಾವಣೆ, ಪರಿಣಾಮಗಳು)
|
||||
- ಅಪಘಾತಗಳನ್ನು ಅರ್ಥಪೂರ್ಣ ಮತ್ತು ಮನರಂಜಕ ಮಾಡಿಸುವ **ಆಟ ನಿಯಮಗಳು**
|
||||
|
||||
### ಸೃಜನಶೀಲ ಸಲಹೆಗಳು
|
||||
|
||||
**ಈ ಸಂದರ್ಭಗಳಲ್ಲಿ ಒಂದನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸುವುದನ್ನು ಪರಿಗಣಿಸಿ:**
|
||||
- **ಅಸ್ಟೆರಾಯ್ಡ್ ಫೀಲ್ಡ್**: ಹಾನಿಕರ ಕಡೆಗಿಂತಲೂ ಬಿಗಿಯಾದ ಅಂತರಿಕ್ಷ ನಿರ್ವಹಿಸಲು ಹಡಗು ಸಾಗಿಸು
|
||||
- **ಬಂಪರ್ ಕಾರ್ಸ್**: ಭೌತಶಾಸ್ತ್ರ ಆಧಾರಿತ ಅಪಘಾತ ಇನ್ನಿತರರಂಗ ನಿರ್ಮಿಸು
|
||||
- **ಮೀಟಿಯೋರ್ ರಕ್ಷಣೆ**: ಭೂಮಿಯನ್ನು ಬರುವ ಅಂತರಿಕ್ಷ ಕಲ್ಲುಗಳಿಂದ ರಕ್ಷಿಸು
|
||||
- **ಸಂಗ್ರಹ ಆಟ**: ಅಡೆತಡೆಗಳನ್ನು ದೂರದಿಂದ ವಸ್ತುಗಳನ್ನು ಜನಿಸಿ
|
||||
- **ಪ್ರದೇಶ ನಿಯಂತ್ರಣ**: ಸ್ಥಳವನ್ನು ಸ್ವಾಧೀನ ಮಾಡಿಕೊಳ್ಳಲು ಸ್ಪರ್ಧಿಸುವ ವಸ್ತುಗಳು
|
||||
|
||||
### ತಾಂತ್ರಿಕ ಅನುಷ್ಠಾನ
|
||||
|
||||
**ನಿಮ್ಮ ಪರಿಹಾರವು ಪ್ರದರ್ಶಿಸಬೇಕು:**
|
||||
- ಸರಿಯಾದ ಅರ್ಧಶೀಲ ಆಧಾರಿತ ಅಪಘಾತ ಪತ್ತೆಮಾಡುವ ತಂತ್ರವನ್ನು ಬಳಸಿಕೊಳ್ಳುವಿಕೆ
|
||||
- ಬಳಕೆದಾರ ಇನ್ಪುಟ್ಗಾಗಿ ಘಟನೆ ಚಾಲಿತ ಪ್ರೋಗ್ರಾಮಿಂಗ್
|
||||
- ವಸ್ತುಗಳ ಆಯುಷ್ಯಚಕ್ರ ನಿರ್ವಹಣೆ (ರಚನೆ ಮತ್ತು ನಾಶ)
|
||||
- ಸೂಕ್ತ ವರ್ಗ ರಚನೆಯೊಂದಿಗೆ ಶುದ್ಧ ಕೋಡ್ ಸಂಘಟನೆ
|
||||
|
||||
### ಬೋನಸ್ ಸವಾಲುಗಳು
|
||||
|
||||
**ಹೆಚ್ಚುವರಿ ವೈಶಿಷ್ಟ್ಯಗಳೊಂದಿಗೆ ನಿಮ್ಮ ಆಟವನ್ನು ಮಾದರಿ ಮಾಡಿರಿ:**
|
||||
- ಅಪಘಾತ ಸಂಭವಿಸಿದಾಗ **ಕಣಗಳ ಪರಿಣಾಮಗಳು**
|
||||
- ವಿಭಿನ್ನ ಅಪಘಾತ ಪ್ರಕಾರಗಳಿಗೆ **ಧ್ವನಿ ಪರಿಣಾಮಗಳು**
|
||||
- ಅಪಘಾತ ಫಲಿತಾಂಶಗಳ ಆಧಾರದಲ್ಲಿ **ಸ್ಕೋರ್ ವ್ಯವಸ್ಥೆ**
|
||||
- ವಿಭಿನ್ನ ವರ್ತನೆಗಳೊಂದಿಗೆ **ಬರಹದ ಅಪಘಾತ ಪ್ರಕಾರಗಳು**
|
||||
- ಸಮಯಕ್ಕೆ ತಕ್ಕಂತೆ ಹೆಚ್ಚುವ **ಪ್ರಗತಿಶೀಲ ಕಷ್ಟಮಾನಗಳು**
|
||||
|
||||
## ಮೌಲ್ಯಮಾಪನ ಕಡತ
|
||||
|
||||
| ಕ್ರಮಿಕ ಕಾರ್ಯ | ಮಾದರಿಯಾಗಿರುವುದು | ಸೂಕ್ತ | ಸುಧಾರಣೆ ಅಗತ್ಯವಿದೆ |
|
||||
|-------------|-----------------|--------|---------------------|
|
||||
| **ಅಪಘಾತ ಪತ್ತೆ** | ಮಲ್ಟಿಪಲ್ ವಸ್ತು ಪ್ರಕಾರಗಳು ಮತ್ತು ಸುಲಭ ಪರಸ್ಪರ ಕ್ರಿಯೆ ನಿಯಮಗಳೊಂದಿಗೆ ನಿಖರ ಅರ್ಧಶೀಲ ಆಧಾರಿತ ಅಪಘಾತ ಪತ್ತೆ | ಸರಳ ವಸ್ತು ಪರಸ್ಪರ ಕ್ರಿಯೆಗಳೊಂದಿಗೆ ಮೂಲ ಅಪಘಾತ ಪತ್ತೆ ಸರಿಯಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ | ಅಪಘಾತ ಪತ್ತೆ ಸಮಸ್ಯೆಗಳಿವೆ ಅಥವಾ ಸತತವಾಗಿ ಕೆಲಸ ಮಾಡುವುದಿಲ್ಲ |
|
||||
| **ಕೋಡ್ ಗುಣಮಟ್ಟ** | ಸರಿಯಾಗಿ ವರ್ಗ ರಚನೆಯೊಂದಿಗೆ ಶುದ್ಧ, ಸುಗಮವಾದ ಕೋಡ್, ಅರ್ಥಪೂರ್ಣ ಚರಗಳ ಹೆಸರುಗಳು ಮತ್ತು ಸೂಕ್ತ ಟಿಪ್ಪಣಿಗಳು | ಕೋಡ್ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಆದರೆ ಉತ್ತಮವಾಗಿ ಸಂಘಟಿಸಲ್ಪಡಬಹುದು ಅಥವಾ ದಾಖಲಾಗಬಹುದಾಗಿರುತ್ತದೆ | ಕೋಡ್ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಕಷ್ಟಕರ ಅಥವಾ ದುರ್ಬಳಕೆ ಹೊಂದಿದೆ |
|
||||
| **ಬಳಕೆದಾರ ಪರಸ್ಪರ ಕ್ರಿಯೆ** | ಸಪ್ರತಿಕ್ರಿಯಾಶೀಲ ನಿಯಂತ್ರಣಗಳು, ಮೃದುವಾಗಿಯೂ ಗತಿಯಲ್ಲಿಯೂ ಆಟ, ಸ್ಪಷ್ಟ ದೃಶ್ಯ ಸ್ಪಂದನೆ ಮತ್ತು ಮನರಂಜಕ ಯಂತ್ರಗಳು | ಮೂಲ ನಿಯಂತ್ರಣಗಳು ಉತ್ತಮ ಪ್ರತಿಕ್ರಿಯೆಯೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ | ನಿಯಂತ್ರಣಗಳು ಪ್ರತಿಕ್ರಿಯಿಸದಿರುವುದು ಅಥವಾ ಗೊಂದಲ ಉಂಟುಮಾಡುವವು |
|
||||
| **ಸೃಜನಶೀಲತೆ** | ವಿಶೇಷ ವೈಶಿಷ್ಟ್ಯಗಳು, ದೃಶ್ಯ ಮಳೆ, ನವೀನ ಅಪಘಾತ ವರ್ತನೆಗಳೊಂದಿಗೆ ಮೂಲ ಕಲ್ಪನೆ | ಕೆಲವು ಸೃಜನಶೀಲ ಅಂಶಗಳೊಂದಿಗೆ ಸಾಮಾನ್ಯ ಅನುಷ್ಠಾನ | ಸೃಜನಶೀಲ ವೃದ್ಧಿಯಿಲ್ಲದ ಮೂಲ ಕಾರ್ಯಕ್ಷಮತೆ |
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತ್ಯಜ್ಯಕತೆ**:
|
||||
ಈ ದಸ್ತಾವೇಜನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಸರಿಯಾದ ಅನುವಾದಕ್ಕಾಗಿ ಪ್ರಯತ್ನಿಸುವುದಾದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳಿರಬಹುದೆಂದು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯ ದಸ್ತಾವೇಜು ಮೂಲ ಮಾದರಿಯಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಲ್ಲಣಗಳು ಅಥವಾ ತಪ್ಪು ಅರ್ಥಗಳನ್ನು ನಾವು ಹೊಣೆ ಹೊರುವುದು ಇಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,17 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "068cbb9b3c10a96d503f6cdd6c9ace8c",
|
||||
"translation_date": "2026-01-08T14:59:32+00:00",
|
||||
"source_file": "6-space-game/4-collision-detection/your-work/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
ಇದು ಒಂದು ಸ್ಥಳಾಪಕ, ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಖಾಲಿ laissಲಾಗಿದೆ
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತಕ್ಷಣದ ಜಾಹೀರಾತು**:
|
||||
ಈ ದಸ್ತಾವೇಜು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಯ ಕಡೆ ಗಮನ ಹರಿಸುವಾಗಲೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಸಂಭವಿಸಬಹುದು ಎಂದು ಗಮನದಲ್ಲಿರಲಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಸ್ತಾವೇಜನ್ನು ಅಧಿಕಾರದ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವದ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದವನ್ನು ಬಳಸುವುದರಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ అపಭ್ರಾಂಶಗಳು ಅಥವಾ ತಪ್ಪಾಗಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವ ಕಾರಣಗಳಿಂದ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,27 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "81f292dbda01685b91735e0398dc0504",
|
||||
"translation_date": "2026-01-08T14:19:08+00:00",
|
||||
"source_file": "6-space-game/5-keeping-score/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಸ್ಕೋರಿಂಗ್ ಆಟವನ್ನು ರಚಿಸು
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ನೀವು ಜೀವ ಮತ್ತು ಅಂಕೆಗಳನ್ನ ರಚನಾತ್ಮಕ ರೀತಿಯಲ್ಲಿ ಪ್ರದರ್ಶಿಸುವ ಆಟವನ್ನು ರಚಿಸು. ಜೀವನವನ್ನು ಹೃದಯಗಳಾಗಿ ಮತ್ತು ಅಂಕೆಗಳನ್ನ ಪರದೆತಳ ಮಧ್ಯಭಾಗದಲ್ಲಿ ದೊಡ್ಡ ಸಂಖ್ಯೆಯಾಗಿ ತೋರಿಸುವ ಸಲಹೆ ಇದೆ. ಇಲ್ಲಿ [ಉಚಿತ ಆಟ ಸಂಪನ್ಮೂಲಗಳು](https://www.kenney.nl/) ಅನ್ನು ನೋಡಿ
|
||||
|
||||
# ಮೌಲ್ಯಮಾಪನ ಮಾನದಂಡ
|
||||
|
||||
| ಮೌಲ್ಯಮಾಪನ ಕ್ರಮಗಳು | ಉತ್ಕೃಷ್ಟ | ತೃಪ್ತಿಕರ | ಸುಧಾರಣೆ ಅಗತ್ಯವಿದೆ |
|
||||
| -------- | ---------------------- | --------------------------- | -------------------------- |
|
||||
| | ಪೂರ್ಣ ಆಟವನ್ನು ನೀಡಲಾಗಿದೆ | ಆಟದ ಕೆಲವು ಭಾಗಗಳನ್ನು ತೋರಿಸಲಾಗಿದೆ | ಭಾಗಶಃ ಆಟದಲ್ಲಿ ದೋಷಗಳಿವೆ |
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಅನುಧಾನ**:
|
||||
ಈ ದಾಖಲೆ AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಸಮಗ್ರತೆಯನ್ನು ಸಾಧಿಸಲು ಪ್ರಯತ್ನಿಸಿದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳಿರಬಹುದು ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನದಲ್ಲಿ ಇಡಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿರುವ ಮೂಲ ದಾಖಲೆ ಅಧಿಕಾರಿಯ ಉಲ್ಲೇಖವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಸೂಕ್ಷ್ಮ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದ ಸೇವೆಯನ್ನು ಬಳಸುವುದು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆ ಸಹಿತ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೆ ಅಥವಾ ತಪ್ಪು ವಿವರಣೆಗಳಿಗೆ ನಾವು ಜವಾಬ್ದಾರಿಯಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,17 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "068cbb9b3c10a96d503f6cdd6c9ace8c",
|
||||
"translation_date": "2026-01-08T15:03:28+00:00",
|
||||
"source_file": "6-space-game/5-keeping-score/solution/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
ಇದು ಒಂದು ಸ್ಥಳಧಾರಕ, ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಖಾಲಿ ಬಿಡಲಾಗಿದೆ
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತಪ್ಪು ಜಾಹೀರಾತು**:
|
||||
ಈ ದಾಖಲೆ AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶुद्धತೆಯಿಗಾಗಿ ಪ್ರಯತ್ನಿಸುವುದರೊಂದಿಗೆ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಸತ್ಯತಾಂಶಗಳಿರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಾಖಲೆವೇ ಪ್ರಾಮಾಣಿಕ ಮೂಲವಾಗಿಯೇ ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗೆ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದ ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಗಾಗಿ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥೈಸುವಿಕೆಗಳಿಗೋ ಅಥವಾ ತಪ್ಪು ವ್ಯಾಖ್ಯಾನಗಳಿಗೆ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,174 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "232d592791465c1678cab3a2bb6cd3e8",
|
||||
"translation_date": "2026-01-08T14:06:55+00:00",
|
||||
"source_file": "6-space-game/6-end-condition/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಒಂದು ಮಾದರಿ ಆಟವನ್ನು ನಿರ್ಮಿಸಿ
|
||||
|
||||
## ಹುದ್ದೆಯ ಅವಲೋಕನ
|
||||
|
||||
ನೀವು ಈಗಾಗಲೇ ನಿಮ್ಮ ಅಂತರಿಕ್ಷ ಆಟದಲ್ಲಿ ಆಟದ ಅಂತ್ಯದ ಶರತ್ತುಗಳು ಮತ್ತು ಪುನರಾರಂಭ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಅರ್ಥಮಾಡಿಕೊಂಡಿದ್ದೀರ, ಈಗ ಈ ತತ್ವಗಳನ್ನು ಸಂಪೂರ್ಣ ಹೊಸ ಆಟದ ಅನುಭವಕ್ಕೆ ಅನ್ವಯಿಸಲು ಸಮಯವಾಗಿದೆ. ನೀವು ಬಗೆಬಗೆಯ ಅಂತ್ಯದ ಶರತ್ತು ಮಾದರಿಗಳು ಮತ್ತು ಪುನರಾರಂಭ ಯಂತ್ರಾಂಗಗಳನ್ನು ತೋರಿಸುವ ನಿಮ್ಮ ಸ್ವಂತ ಆಟವನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸಿ ನಿರ್ಮಿಸುತ್ತೀರಿ.
|
||||
|
||||
ಈ ವ್ಯಾಯಾಮವು ನಿಮಗೆ ಆಟ ವಿನ್ಯಾಸದ ಬಗ್ಗೆ ಕ್ರಿಯಾತ್ಮಕವಾಗಿ ಯೋಚಿಸಲು ಸವಾಲು ನೀಡುತ್ತದೆ, ಮತ್ತು ನೀವು ಕಲಿತ ತಾಂತ್ರಿಕ ನಿಪುಣತೆಯನ್ನು ಅಭ್ಯಾಸ ಮಾಡಿಸುತ್ತದೆ. ನೀವು ಬಗೆಬಗೆಯ ಜಯ ಮತ್ತು ಸೋಲು ಘಟನಾವಳಿಗಳನ್ನು ಅನ್ವೇಷಿಸಿ, ಆಟಗಾರರ ಪ್ರಗತಿ ಕಾರ್ಯಗತಗೊಳಿಸಿ, ಮತ್ತು ಆಕರ್ಷಕ ಪುನರಾರಂಭ ಅನುಭವಗಳನ್ನು ಸೃಷ್ಟಿಸುತ್ತೀರಿ.
|
||||
|
||||
## ಯೋಜನೆಯ ಅಗತ್ಯತೆಗಳು
|
||||
|
||||
### ಮೂಲ ಆಟದ ವೈಶಿಷ್ಟ್ಯಗಳು
|
||||
|
||||
ನಿಮ್ಮ ಆಟದಲ್ಲಿ ಕೆಳಕಂಡ ಅಗತ್ಯ ಅಂಶಗಳಿವೆ:
|
||||
|
||||
**ಅಂತ್ಯದ ಶರತ್ತು ವೈವಿಧ್ಯತೆ**: ಆಟವು ನಿಂತಿರುವ ಕನಿಷ್ಠ ಎರಡು ವಿಧಾನಗಳನ್ನು ಜಾರಿಗೊಳಿಸಿ:
|
||||
- **ಗುಣಾಂಕ ಆಧಾರಿತ ಜಯ**: ಆಟಗಾರ ಗುರಿ ಸ್ಕೋರ್ ಅಥವಾ ನಿರ್ದಿಷ್ಟ ವಸ್ತುಗಳನ್ನು ಸಂಗ್ರಹಿಸುತ್ತದೆ
|
||||
- **ಜೀವ ಇಳಿಕೆ ಆಧಾರಿತ ಸೋಲು**: ಆಟಗಾರ ಎಲ್ಲಾ ಲಭ್ಯವಿರುವ ಜೀವಗಳು ಅಥವಾ ಆರೋಗ್ಯ ಬಿಂದುಗಳನ್ನು ಕಳೆದುಕೊಳ್ಳುತ್ತಾನೆ
|
||||
- **ಉದ್ದೇಶ ಪೂರ್ಣಗೊಳಿಸುವಿಕೆ**: ಎಲ್ಲಾ ಶತ್ರುಗಳನ್ನು ಸೋಲಿಸುವುದು, ನಿರ್ದಿಷ್ಟ ವಸ್ತುಗಳನ್ನು ಸಂಗ್ರಹಿಸುವುದು ಅಥವಾ ಗುರಿಗಳನ್ನು ಸಾಧಿಸುವುದು
|
||||
- **ಕಾಲ ಆಧಾರಿತ**: ನಿಗದಿತ ಅವಧಿ ನಂತರ ಅಥವಾ ಕನಿಷ್ಠ ಸಮಯ ಮುಗಿದಾಗ ಆಟ ನಿಂತುಹೋಗುವುದು
|
||||
|
||||
**ಪುನರಾರಂಭ ಕಾರ್ಯಕ್ಷಮತೆ**:
|
||||
- **ಆಟದ ಸ್ಥಿತಿಯನ್ನು ಸ್ವಚ್ಛಗೊಳಿಸಿ**: ಹಳೆಯ ಎಲ್ಲಾ ಆಟ ವಸ್ತುಗಳನ್ನು ತೆಗೆದುಹಾಕಿ, ಚರಗಳು ಪುನಃನಿರ್ದೇಶಿಸಿ
|
||||
- **ವ್ಯವಸ್ಥೆಗಳ ಪುನರ್ಆರಂಭ**: ಹೊಸ ಆಟಗಾರ ಅಂಕೆಗಳು, ಶತ್ರುಗಳು, ಮತ್ತು ಗುರಿಗಳೊಂದಿಗೆ ಹೊಸದಾಗಿ ಪ್ರಾರಂಭಿಸಿ
|
||||
- **ಬಳಕೆದಾರ-ಸುಹೃತ್ ನಿಯಂತ್ರಣೆಗಳು**: ಆಟವನ್ನು ಪುನರ್ಆರಂಭಿಸುವ ಸ್ಪಷ್ಟ ಸೂಚನೆಗಳನ್ನು ಒದಗಿಸಿ
|
||||
|
||||
**ಆಟಗಾರ ಪ್ರತಿಕ್ರಿಯೆ**:
|
||||
- **ಜಯ ಸಂದೇಶಗಳು**: ಆಟಗಾರ ಸಾಧನೆಗಳನ್ನೆ ಉತ್ತಮ ಪ್ರತಿಕ್ರಿಯೆಯಿಂದ ಆಚರಿಸಿ
|
||||
- **ಸೋಲು ಸಂದೇಶಗಳು**: ಆಟ ಪುನಃಆಟ ಮಾಡಲು ಪ್ರೇರೇಪಿಸುವ ಪ್ರೋತ್ಸಾಹಕಾರಿಯಾದ ಸಂದೇಶಗಳನ್ನು ಒದಗಿಸಿ
|
||||
- **ಪ್ರಗತಿ ಸೂಚಕಗಳು**: ಪ್ರಸ್ತುತ ಸ್ಕೋರ್, ಜೀವಗಳು, ಅಥವಾ ಗುರಿ ಸ್ಥಿತಿಯನ್ನು ತೋರಿಸಿ
|
||||
|
||||
### ಆಟದ ಪರಿಕಲ್ಪನೆಗಳು ಮತ್ತು ಪ್ರೇರಣೆ
|
||||
|
||||
ಕೆಳಕಂಡ ಆಟ ಪರಿಕಲ್ಪನೆಗಳಿಂದ ಒಂದು ಆಯ್ದುಕೊಳ್ಳಿ ಅಥವಾ ನಿಮ್ಮದೇ ಆದ ಆಟವನ್ನು ರಚಿಸಿ:
|
||||
|
||||
#### 1. ಕಾನ್ಸೋಲ್ ಸಾಹಸ ಆಟ
|
||||
ಯುದ್ಧ ತಂತ್ರಗಳೊಂದಿಗೆ ಪಠ್ಯ ಆಧಾರಿತ ಸಾಹಸವನ್ನು ರಚನೆ ಮಾಡಿ:
|
||||
|
||||
```
|
||||
Hero> Strikes with broadsword - orc takes 3p damage
|
||||
Orc> Hits with club - hero takes 2p damage
|
||||
Hero> Kicks - orc takes 1p damage
|
||||
Game> Orc is defeated - Hero collects 2 coins
|
||||
Game> ****No more monsters, you have conquered the evil fortress****
|
||||
```
|
||||
|
||||
**ಕಾರ್ಯಗತಗೊಳಿಸಬೇಕಾದ ಪ್ರಮುಖ ಲಕ್ಷಣಗಳು:**
|
||||
- **ತಿರುವು ಆಧಾರಿತ ಯುದ್ಧ** ವಿವಿಧ ದಾಳಿ ಆಯ್ಕೆಗಳು
|
||||
- **ಆರೋಗ್ಯ ಬಿಂದುಗಳು** ಆಟಗಾರ ಹಾಗೂ ಶತ್ರುಗಳಿಗೆ
|
||||
- **ಸಂಗ್ರಹಣ ಸಿಸ್ಟಮ್** ನಾಣ್ಯಗಳು ಅಥವಾ ವಸ್ತುಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು
|
||||
- **ಬೋರ್ಡ್ ಶತ್ರು ಪ್ರಕಾರಗಳು** ವಿವಿಧ ಕಠಿಣತೆ ಇರುವ
|
||||
- **ಜಯ ಶರತ್ತು** ಎಲ್ಲಾ ಶತ್ರುಗಳನ್ನು ಸೋಲಿಸಿದಾಗ
|
||||
|
||||
#### 2. ಸಂಗ್ರಹಣೆ ಆಟ
|
||||
- **ಉದ್ದೇಶ**: ಅಡ್ಡಿಪಡಿಸುವುವನ್ನು ಕರೆದೋಡದೆ ನಿರ್ದಿಷ್ಟ ವಸ್ತುಗಳನ್ನು ಸಂಗ್ರಹಿಸಿ
|
||||
- **ಅಂತ್ಯದ ಶರತ್ತುಗಳು**: ಗುರಿ ಸಂಗ್ರಹಣೆಗೆ ತಲುಪುವುದು ಅಥವಾ ಎಲ್ಲಾ ಜೀವಗಳನ್ನು ಕಳೆದುಕೊಳ್ಳುವುದು
|
||||
- **ಪ್ರಗತಿ**: ಆಟ ಮುಂದುವರಿದಂತೆ ವಸ್ತುಗಳ ತಲುಪಲು ಕಠಿಣತೆ ಹೆಚ್ಚಾಗುವುದು
|
||||
|
||||
#### 3. ಹಳೆಯು ಆಟ
|
||||
- **ಉದ್ದೇಶ**: ಹಂದುರಿದಂತೆ ಕಷ್ಟಕರವಾಗುತ್ತಿರುವ ಹಳೆಯುಗಳನ್ನು ಬಗೆಹರಿಸುವುದು
|
||||
- **ಅಂತ್ಯದ ಶರತ್ತುಗಳು**: ಎಲ್ಲಾ ಮಟ್ಟಗಳನ್ನು ಪೂರ್ಣಗೊಳಿಸುವುದು ಅಥವಾ ಎಲ್ಲಾ ಸಂಚಲನಗಳು/ಸಮಯ ಮುಗಿಯುವುದು
|
||||
- **ಪುನರ್ಆರಂಭ**: ಮೊದಲ ಮಟ್ಟದಲ್ಲಿ ಪ್ರಗತಿಯಿಲ್ಲದೆ ಪುನಃ ಆರಂಭಿಸಿ
|
||||
|
||||
#### 4. ರಕ್ಷಣಾ ಆಟ
|
||||
- **ಉದ್ದೇಶ**: ಶತ್ರುಗಳ ಸರಣಿಯಿಂದ ನಿಮ್ಮ ಕೇಂದ್ರವನ್ನು ರಕ್ಷಿಸುವುದು
|
||||
- **ಅಂತ್ಯದ ಶರತ್ತುಗಳು**: ಎಲ್ಲಾ ಸರಣಿಗಳನ್ನು ತಲುಪಿದಾಗ (ಜಯ) ಅಥವಾ ಕೇಂದ್ರವು ನಾಶವಾದಾಗ (ಸೋಲು)
|
||||
- **ಪ್ರಗತಿ**: ಶತ್ರು ಸರಣಿಗಳ ಕಠಿಣತೆ ಮತ್ತು ಸಂಖ್ಯೆ ಹೆಚ್ಚಾಗುತ್ತದೆ
|
||||
|
||||
## ಜಾರಿಗೊಳ್ಳುವ ಮಾರ್ಗದರ್ಶಿಗಳು
|
||||
|
||||
### ಪ್ರಾರಂಭಿಸುವುದು
|
||||
|
||||
1. **ನಿಮ್ಮ ಆಟದ ವಿನ್ಯಾಸವನ್ನು ಯೋಜಿಸಿ**:
|
||||
- ಮೂಲ ಆಟದ ಲೂಪ್ ಅನ್ನು ರೇಖಾಚಿತ್ರಿಸಿ
|
||||
- ನಿಮ್ಮ ಅಂತ್ಯದ ಶರತ್ತುಗಳನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ನಿಶ್ಚಯಿಸಿ
|
||||
- ಪುನರಾರಂಭದಾಗ ಯಾವ ಡೇಟಾವನ್ನು ಮರುಹೊಂದಿಸುವುದು ಎಂದು ಗುರುತಿಸಿ
|
||||
|
||||
2. **ನಿಮ್ಮ ಯೋಜನೆಯ ರಚನೆಯನ್ನು ಸ್ಥಾಪಿಸಿ**:
|
||||
```
|
||||
my-game/
|
||||
├── index.html
|
||||
├── style.css
|
||||
├── game.js
|
||||
└── README.md
|
||||
```
|
||||
|
||||
3. **ನಿಮ್ಮ ಮೂಲ ಆಟದ ಲೂಪ್ ರಚಿಸಿ**:
|
||||
- ಆಟದ ಸ್ಥಿತಿಯನ್ನು ಪ್ರಾರಂಭಿಸಿ
|
||||
- ಬಳಕೆದಾರ ಇನ್ಪುಟ್ ಹ್ಯಾಂಡಲ್ ಮಾಡಿ
|
||||
- ಆಟದ ಲಾಜಿಕ್ ಅನ್ನು ನವೀಕರಿಸಿ
|
||||
- ಅಂತ್ಯದ ಶರತ್ತುಗಳನ್ನು ಪರಿಶೀಲಿಸಿ
|
||||
- ಪ್ರಸ್ತುತ ಸ್ಥಿತಿಯನ್ನು ಪ್ರದರ್ಶಿಸಿ
|
||||
|
||||
### ತಾಂತ್ರಿಕ ಅಗತ್ಯತೆಗಳು
|
||||
|
||||
**ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಬಳಸಿ**:
|
||||
- ಚರಗಳ ಘೋಷಣೆಗೆ `const` ಮತ್ತು `let` ಉಪಯೋಗಿಸಿ
|
||||
- ಅನುವಾಗ್ಕಾರಕಗಳನ್ನು (arrow functions) ಅಗತ್ಯ ಇದ್ದಲ್ಲಿ ಉಪಯೋಗಿಸಿ
|
||||
- ES6+ ವೈಶಿಷ್ಟ್ಯಗಳಾದ ಟೆಂಪ್ಲೇಟ್ ಲಿಟರಲ್ಸ್ ಮತ್ತು ವಿನ್ಯಾಸ ವಿನ್ಯಾಸಕಗಳನ್ನು ಬಳಸಿ
|
||||
|
||||
**ಈವೆಂಟ್ ಚಾಲಿತ ವಿನ್ಯಾಸ**:
|
||||
- ಬಳಕೆದಾರ ಸಂವಹನಕ್ಕಾಗಿ ಈವೆಂಟ್ ಹ್ಯಾಂಡ್ಲರ್ಗಳನ್ನು ರಚಿಸಿ
|
||||
- ಈವೆಂಟ್ಗಳ ಮೂಲಕ ಆಟದ ಸ್ಥಿತಿಯ ಬದಲಾವಣೆಗಳನ್ನು ಜಾರಿಗೊಳಿಸಿ
|
||||
- ಪುನರ್ಆರಂಭ ಕಾರ್ಯಕ್ಕಾಗಿ ಈವೆಂಟ್ ಲಿಸನರ್ಗಳನ್ನು ಬಳಸಿ
|
||||
|
||||
**ಸ್ವಚ್ಛ ಕೋಡ್ ಅಭ್ಯಾಸ**:
|
||||
- ಏಕ ದಾಯಿತ್ವಗಳೊಂದಿಗೆ ಫಂಕ್ಷನ್ಗಳನ್ನು ಬರೆಯಿರಿ
|
||||
- ವರ್ಣನಾತ್ಮಕ ಚರ ಮತ್ತು ಫಂಕ್ಷನ್ ಹೆಸರುಗಳನ್ನು ಉಪಯೋಗಿಸಿ
|
||||
- ಆಟದ ಲಾಜಿಕ್ ಮತ್ತು ನಿಯಮಗಳನ್ನು ವಿವರಿಸುವ ಟಿಪ್ಪಣಿಗಳನ್ನು ಸೇರಿಸಿ
|
||||
- ಕೋಡ್ ಅನ್ನು ತರ್ಕಬದ್ಧ ವಿಭಾಗಗಳಾಗಿ ಏಕಕಾಲೀನಗೊಳಿಸಿ
|
||||
|
||||
## ಸಲ್ಲಿಸುವ ಅಗತ್ಯತೆಗಳು
|
||||
|
||||
### ಹಸ್ತಾಂತರಗಳನ್ನು ನವೀನಗೊಳಿಸಿ
|
||||
|
||||
1. **ಪೂರ್ಣ ಆಟದ ಫೈಲ್ಗಳು**: ನಿಮ್ಮ ಆಟವನ್ನು ನಡೆಯಿಸಲು ಅಗತ್ಯವಿರುವ ಎಲ್ಲಾ HTML, CSS ಮತ್ತು JavaScript ಫೈಲ್ಗಳು
|
||||
2. **README.md**: ಕೆಳಗಿನ ವಿಷಯಗಳನ್ನು ವಿವರಿಸುವ ದಾಖಲಾತಿ:
|
||||
- ನಿಮ್ಮ ಆಟವನ್ನು ಹೇಗೆ ಆಡಬೇಕು
|
||||
- ನೀವು ಜಾರಿಗೊಳಿಸಿದ ಅಂತ್ಯದ ಶರತ್ತುಗಳು ಯಾವುವು
|
||||
- ಪುನರ್ಆರಂಭಕ್ಕಾಗಿ ಸೂಚನೆಗಳು
|
||||
- ಯಾವುದೇ ವಿಶೇಷ ಲಕ್ಷಣಗಳು ಅಥವಾ ಕಾರ್ಯವಿಧಾನಗಳು
|
||||
3. **ಕೋಡ್ ಟಿಪ್ಪಣಿಗಳು**: ನಿಮ್ಮ ಆಟದ ಲಾಜಿಕ್ ಮತ್ತು ಸಂವೇದಿ ನ್ಯಾಯಾಂಶಗಳ ಸ್ಪಷ್ಟ ವಿವರಣೆ
|
||||
|
||||
### ಪರೀಕ್ಷಾ ಪರಿಶೀಲನೆ ಪಟ್ಟಿ
|
||||
|
||||
ಸಲ್ಲಿಸಲು ಮೊದಲು, ನಿಮ್ಮ ಆಟವನ್ನು ಪರಿಶೀಲಿಸಿ:
|
||||
|
||||
- [ ] **ಬ್ರೌಸರ್ ಕನ್ಸೋಲ್ನಲ್ಲಿ ದೋಷರಹಿತವಾಗಿ ચાલುತ್ತದೆ**
|
||||
- [ ] **ಬಹು ಅಂತ್ಯದ ಶರತ್ತುಗಳನ್ನು ಜಾರಿಗೊಳಿಸಿದೆ**
|
||||
- [ ] **ಶುದ್ಧ ಸ್ಥಿತಿಯನ್ನು ಮರುಹೊಂದಿಸಿ ಪುನರ್ಆರಂಭ ಮಾಡುತ್ತದೆ**
|
||||
- [ ] **ಆಟದ ಸ್ಥಿತಿಯ ಬಗ್ಗೆ ಸ್ಪಷ್ಟ ಪ್ರತಿಕ್ರಿಯೆಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ**
|
||||
- [ ] **ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ವ್ಯಾಕರಣ ಮತ್ತು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಬಳಕೆ ಮಾಡಿದೆ**
|
||||
- [ ] **README.md ನಲ್ಲಿ ಸಮಗ್ರ ದಾಖಲೆಗಳಿವೆ**
|
||||
|
||||
## ಬೆಲೆಮಾಪನ ಮಾನದಂಡ
|
||||
|
||||
| ಮಾನದಂಡಗಳು | ಅತ್ಯುತ್ತಮ (4) | ಪ್ರೌಢ (3) | ಅಭಿವೃದ್ಧಿಗೊಳ್ಳುತ್ತಿರುವ (2) | ಪ್ರಾರಂಭಿಕ (1) |
|
||||
|----------|---------------|----------------|----------------|--------------|
|
||||
| **ಆಟ ಕಾರ್ಯಕ್ಷಮತೆ** | ಬಹು ಅಂತ್ಯದ ಶರತ್ತುಗಳೊಂದಿಗೆ ಪೂರ್ಣ ಆಟ, ಸುಗಮ ಪುನರ್ಆರಂಭ ಮತ್ತು ಹೊಳೆಯುತ್ತಿರುವ ಆಟದ ಅನಭವ | ಮೂಲ ಅಂತ್ಯದ ಶರತ್ತುಗಳೊಂದಿಗೆ ಸಂಪೂರ್ಣ ಆಟ ಮತ್ತು ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಪುನರ್ಆರಂಭ ಕ್ರಮ | ಕೆಲವು ಅಂತ್ಯದ ಶರತ್ತುಗಳ ಜಾರಿಗೊಳಿಸಿದ್ದು ಪೂರ್ತಿ ಅಲ್ಲದ ಆಟ, ಪುನರ್ಆರಂಭದಲ್ಲಿ ಸಣ್ಣ ಸಮಸ್ಯೆಗಳು ಇರಬಹುದು | ನಿರ್ದಿಷ್ಟ ಕಾರ್ಯಕ್ಷಮತೆ ಇಲ್ಲದ ಅಪೂರ್ಣ ಆಟ ಮತ್ತು ಪ್ರಮುಖ ದೋಷಗಳು ಬರುವುದಾಗಿದೆ |
|
||||
| **ಕೋಡ್ ಗುಣಮಟ್ಟ** | ಸ್ವಚ್ಛ, ಚೆನ್ನಾಗಿ ಸಂಘಟಿತ ಕೋಡ್, ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅಭ್ಯಾಸಗಳು, ಸಮಗ್ರ ಟಿಪ್ಪಣಿಗಳು ಮತ್ತು ಅತ್ಯುತ್ತಮ ರಚನೆ | ಉತ್ತಮ ಕೋಡ್ ಸಂಘಟನೆ, ಆಧುನಿಕ ವ್ಯಾಕರಣ, ಯುಕ್ತಿಯುತ ಟಿಪ್ಪಣಿಗಳು ಮತ್ತು ಸ್ಪಷ್ಟ ರಚನೆ | ಮೂಲಭೂತ ಕೋಡ್ ಸಂಘಟನೆ, ಕೆಲವು ಆಧುನಿಕ ಅಭ್ಯಾಸಗಳು, ಕಡಿಮೆ ಟಿಪ್ಪಣಿಗಳು | ಖರಾಬ್ ಕೋಡ್ ಸಂಘಟನೆ, ಹಳೆಯ ವ್ಯಾಕರಣ, ಟಿಪ್ಪಣಿಗಳ ಕೊರತೆ ಮತ್ತು ರಚನೆ ಇಲ್ಲದಂತೆ |
|
||||
| **ಬಳಕೆದಾರ ಅನುಭವ** | ಸರಳ ಆಟವಾಡು, ಸ್ಪಷ್ಟ ಸೂಚನೆಗಳು, ಉತ್ತಮ ಪ್ರತಿಕ್ರಿಯೆಗಳು, ಮನರಂಜಕ ಅಂತ್ಯ/ಪುನರ್ಆರಂಭ ಅನುಭವ | ಉತ್ತಮ ಆಟವಾಡು, ಸಮರ್ಥ ಸೂಚನೆಗಳು ಮತ್ತು ಪ್ರತಿಕ್ರಿಯೆಗಳು, ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಅಂತ್ಯ/ಪುನರ್ಆರಂಭ | ಮೂಲಭೂತ ಆಟವಾಡು, ಕಡಿಮೆ ಸೂಚನೆಗಳು, ಆಟದ ಸ್ಥಿತಿಯಲ್ಲಿ ಕನಿಷ್ಠ ಸ್ಪಷ್ಟತೆ | ಗೊಂದಲಕಾರಿಯಾದ ಆಟವಾಡು, ಸ್ಪಷ್ಟವಾಗದ ಸೂಚನೆಗಳು ಮತ್ತು ಕಡಿಮೆ ಬಳಕೆದಾರ ಪ್ರತಿಕ್ರಿಯೆಗಳು |
|
||||
| **ತಾಂತ್ರಿಕ ಜಾರಿಗೊಳಿಕೆ** | ಆಟ ಅಭಿವೃದ್ಧಿ ತತ್ವಗಳು, ಈವೆಂಟ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ಮತ್ತು ಸ್ಥಿತಿ ನಿರ್ವಹಣದಲ್ಲಿ ನಿಪುಣತೆ ತೋರಿಸುವುದು | ಆಟ ತತ್ವಗಳನ್ನು ಒಳ್ಳೆಯ ರೀತಿಯಲ್ಲಿ ಅರ್ಥ ಮಾಡಿಕೊಂಡು ಜಾರಿಗೊಳಿಸುವಿಕೆ | ಮೂಲಭೂತ ಅರ್ಥ ಮತ್ತು ಅಂದಾಜು ಜಾರಿಗೊಳಿಸುವಿಕೆ | ಕಡಿಮೆ ಅರ್ಥ ಮತ್ತು ಕಠಿಣ ಜಾರಿಗೊಳಿಕೆ |
|
||||
| **ದಾಖಲೆಗಳಲ್ಲಿ** | ಸ್ಪಷ್ಟ ಸೂಚನೆಗಳುಳ್ಳ ಸಮಗ್ರ README, ಉತ್ತಮವಾಗಿ ದಾಖಲಾತಿಯುಳ್ಳ ಕೋಡ್ ಮತ್ತು ವಿಶದ ಪರೀಕ್ಷಾ ಪ್ರমাণಗಳು | ಉತ್ತಮ ದಾಖಲಾತಿ, ಸ್ಪಷ್ಟ ಸೂಚನೆಗಳು ಮತ್ತು ಯೋಗ್ಯ ಟಿಪ್ಪಣಿಗಳು | ಮೂಲಬೂತ ದಾಖಲೆ ಮತ್ತು ಕಡಿಮೆ ಸೂಚನೆಗಳು | ದಾಖಲೆಗಳ ಕೊರತೆ ಅಥವಾ ಇಲ್ಲದಂತಹ ಸ್ಥಿತಿ |
|
||||
|
||||
### ಮೌಲ್ಯಮಾಪನ ಮಾಪನ
|
||||
|
||||
- **ಅತ್ಯುತ್ತಮ (16-20 ಅಂಕೆಗಳು)**: ಸೃಜನಶೀಲ ಲಕ್ಷಣಗಳು ಮತ್ತು ಹೊಳೆಯುವ ಜಾರಿಗೊಳಿಕೆಯೊಂದಿಗೆ ನಿರೀಕ್ಷೆಗಳನ್ನು ಮೀರಿದೆ
|
||||
- **ಪ್ರೌಢ (12-15 ಅಂಕೆಗಳು)**: ಎಲ್ಲಾ ಅಗತ್ಯತೆಗಳನ್ನು ಪೂರೈಸಿ ಉತ್ತಮ ಜಾರಿಗೊಳಿಕೆ
|
||||
- **ಅಭಿವೃದ್ಧಿ (8-11 ಅಂಕೆಗಳು)**: ಹೆಚ್ಚಿನ ಅಗತ್ಯತೆಗಳನ್ನು ಪೂರೈಸಿದೆಯಾದರೂ ಸಣ್ಣ ಸಮಸ್ಯೆಗಳಿರಬಹುದು
|
||||
- **ಪ್ರಾರಂಭಿಕ (4-7 ಅಂಕೆಗಳು)**: ಕೆಲವು ಅಗತ್ಯತೆಗಳನ್ನು ಪೂರೈಸಿ, ಆದರೆ ಪ್ರಮುಖ ಸುಧಾರಣೆಗಳನ್ನು ಅಗತ್ಯವಿದೆ
|
||||
|
||||
## ಹೆಚ್ಚುವರಿ ಅಧ್ಯಯನ ಸಂಪನ್ಮೂಲಗಳು
|
||||
|
||||
- [MDN ಆಟ ಅಭಿವೃದ್ಧಿ ಮಾರ್ಗದರ್ಶಿ](https://developer.mozilla.org/en-US/docs/Games)
|
||||
- [ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಆಟ ಅಭಿವೃದ್ಧಿ ಪ್ರಾಥಮಿಕ ಪಾಠಗಳು](https://developer.mozilla.org/en-US/docs/Games/Tutorials)
|
||||
- [ಕ್ಯಾನ್ವಾಸ್ API ದಸ್ತಾವೇಜು](https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API)
|
||||
- [ಆಟ ವಿನ್ಯಾಸ ಸಿದ್ಧಾಂತಗಳು](https://www.gamasutra.com/blogs/)
|
||||
|
||||
> 💡 **ಪ್ರೋ ಟಿಪ್**: ಸರಳವಾಗಿ ಪ್ರಾರಂಭಿಸಿ ಮತ್ತು ಹಂತ ಹಂತವಾಗಿ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸೇರಿಸಿ. ಒಳ್ಳೆಯ ಮುಚ್ಚಳೆಯಾದ ಸರಳ ಆಟವು ದೋಷಗಳಿದ್ದ ಸಂಕೀರ್ಣ ಆಟಕ್ಕಿಂತ ಉತ್ತಮ!
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಅಸೀಮಾ**:
|
||||
ಈ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವದಿಸಲಾಗಿದೆ. ನಾವು ಸತ್ಯತೆಯತ್ತ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅನಿಖಂಡತೆಯಿರಬಹುದು ಎಂಬುದನ್ನು ಗಮನದಲ್ಲಿಡಿ. ಮೂಲ ಭಾಷೆಯ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು ಪ್ರಾಧಿಕಾರಾತ್ಮಕ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ಅರ್ಥಬಾಧೆ ಅಥವಾ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೊಳ್ಲುವಿಕೆಗೆ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,17 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "068cbb9b3c10a96d503f6cdd6c9ace8c",
|
||||
"translation_date": "2026-01-08T15:01:54+00:00",
|
||||
"source_file": "6-space-game/6-end-condition/solution/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
ಇದು ಒಂದು ಪ್ಲೇಸ್ಹೋಲ್ಡ್, ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಖಾಲಿ ಇಡಲಾಗಿದೆ
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ವಿವರಣೆ**:
|
||||
ಈ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಸರಿಯಾದ ಅನುವಾದಕ್ಕಾಗಿ ಪ್ರಯತ್ನಿಸಿದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದದಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇದ್ದಿರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಡಾಕ್ಯುಮೆಂಟ್ ಅದರ ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಅಧಿಕಾರಪೂರ್ಣ ಮೂಲ ಎಂದು ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಗಳು ಅಥವಾ ದೋಷಾಸ್ಪದ interpretations ಗಾಗಿ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,17 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "068cbb9b3c10a96d503f6cdd6c9ace8c",
|
||||
"translation_date": "2026-01-08T15:01:06+00:00",
|
||||
"source_file": "6-space-game/6-end-condition/your-work/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
ಇದು ಒಂದು ಪ್ಲೇಸ್ಹೋಲ್ಡರ್, ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಖಾಲಿ ಇರಿಸಲಾಗಿದೆ
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತ್ಯಜ್ಯಾಂಶ**:
|
||||
ಈ ਦਸਤಾವೇಜನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಸರಿಯಾದ ಅನುವಿತ್ತಿಗಾಗಿ ಪ್ರಯತ್ನಿಸಿದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತಳಿವುಗಳಿರಬಹುದು. ಮೂಲ ದಸ್ತಾವೇಜನ್ನು ಅದರ ಸ್ಥಳೀಯ ಭಾಷೆಯಲ್ಲಿಯೇ ಅಧಿಕೃತ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಅಗತ್ಯ ಮಾಹಿತಿಗೆ ವ್ಯಕ್ತಿಗತ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದ ಸೇವೆಯನ್ನು ಪಡೆಯುವುದು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ದೋಷ ಅರ್ಥಗುಳುಮೆಯ ಅಥವಾ ದೋಷ ವಿವರಣೆಗಳಿಗೆ ನಾವು ಜವಾಬ್ದಾರಿಯಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,47 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "c40a698395ee5102715f7880bba3f2e7",
|
||||
"translation_date": "2026-01-08T11:10:48+00:00",
|
||||
"source_file": "6-space-game/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಬಾವುಳುವಂತಹ ಒಂದು ಬಾಹ್ಯಾಕಾಶ ಆಟವನ್ನು ನಿರ್ಮಿಸಿ
|
||||
|
||||
ಮೆಚ್ಚುಗೆಯಾದ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಮೂಲಭೂತಗಳನ್ನು ಕಲಿಸಲು ಒಂದು ಬಾಹ್ಯಾಕಾಶ ಆಟ
|
||||
|
||||
ಈ ಪಾಠದಲ್ಲಿ ನೀವು ನಿಮ್ಮದೇ ಬಾಹ್ಯಾಕಾಶ ಆಟವನ್ನು ಹೇಗೆ ನಿರ್ಮಿಸಿಕೊಳ್ಳಬೇಕೆಂದನ್ನು ಕಲಿಯಲಿದ್ದೀರಿ. ನೀವು "Space Invaders" ಎಂಬ ಆಟವನ್ನು ಎಂದಾದರೂ ಆಡಿದ್ದರೆ, ಈ ಆಟದಲ್ಲಿ ಅದೇ ಧಾರಣೆ ಇದೆ: ಒಂದು ಬಾಹ್ಯಾಕಾಶ ನಾವಿಕೆಯನ್ನು ನಿಯಂತ್ರಿಸಿ ಮತ್ತು ಮೇಲಿನಿಂದ ಬರುವ ರಾಕ್ಷಸರ ಮೇಲೆ ಬೆಂಕಿ ಹಾಯಿಸುವುದು. ಅಂತಿಮ ಆಟ ಹೇಗಿರುತ್ತದೆ ನೋಡಿರಿ:
|
||||
|
||||

|
||||
|
||||
ಈ ಆರು ಪಾಠಗಳಲ್ಲಿ ನೀವು ಈ ಕೆಳಗಿನವುಗಳನ್ನು ಕಲಿಯಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ:
|
||||
|
||||
- **ಇಂಟರಾಗ್** ಮಾಡುವುದು Canvas ಅಂಶದೊಂದಿಗೆ ಸ್ಕ್ರೀನಿನಲ್ಲಿ ಅಳೆಯಲು
|
||||
- **ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು** ಕಾರ್ಟಿಶಿಯನ್ ಸಂಯೋಜನೆ ವ್ಯವಸ್ಥೆಯನ್ನು
|
||||
- **ಕಲಿಯುವುದು** Pub-Sub ಮಾದರಿಯನ್ನು ಧ್ವನಿಸಂಪನ್ಮೂಲ ಆಟಗಳಿಗೆ ಸರಳವಾಗಿ ನಿರ್ವಹಿಸಲು ಮತ್ತು ವಿಸ್ತರಿಸಲು
|
||||
- **ಉಪಯೋಗಿಸುವುದು** Async/Await ಮೂಲಕ ಆಟದ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಲೋಡ್ ಮಾಡಲು
|
||||
- **ನಿಯಂತ್ರಿಸುವುದು** ಕೀಬೋರ್ಡ್ ಘಟನೆಗಳು
|
||||
|
||||
## ಅವಲೋಕನ
|
||||
|
||||
- ಸಿದ್ಧಾಂತ
|
||||
- [ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಬಳಸಿ ಆಟಗಳನ್ನು ನಿರ್ಮಿಸುವ ಪರಿಚಯ](1-introduction/README.md)
|
||||
- ಅಭ್ಯಾಸ
|
||||
- [ಕ್ಯಾನ್ವಾಸ್ಗೆ ಚಿತ್ರಣ ಮಾಡಿ](2-drawing-to-canvas/README.md)
|
||||
- [ಸ್ಕ್ರೀನಿನಲ್ಲಿ ಅಂಶಗಳನ್ನು ಚಲಿಸುವುದು](3-moving-elements-around/README.md)
|
||||
- [ಘರ್ಷಣೆ ಪರಿಶೀಲನೆ](4-collision-detection/README.md)
|
||||
- [ಸ್ಕೋರ್ ನೊಳಗೆ ಇಡುವುದು](5-keeping-score/README.md)
|
||||
- [ಆಟ ಮುಗಿಸುವುದು ಮತ್ತು ಪುನರಾರಂಭಿಸುವುದು](6-end-condition/README.md)
|
||||
|
||||
## ಕೃಪೆಗಳು
|
||||
|
||||
ಈ ಆಟದ ಪೈಕಿ ಉಪಯೋಗಿಸಿದ ಸಂಪನ್ಮೂಲಗಳು https://www.kenney.nl/ ನಿಂದ ಬರುತ್ತವೆ.
|
||||
ನೀವು ಗೇಮ್ ನಿರ್ಮಾಣದಲ್ಲಿ ಆಸಕ್ತಿ ಇದ್ದರೆ, ಇವು ಕೆಲವು ಅತ್ಯುತ್ತಮ ಸಂಪನ್ಮೂಲಗಳು, ಬಹಳಷ್ಟು ಉಚಿತವಾಗಿವೆ ಮತ್ತು ಕೆಲವು ಪಾವತಿಸಲಾಗಿವೆ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ನಿರಾಕರಣೆ**:
|
||||
ಈ ದಸ್ತಾವೇಜು [Co-op Translator](https://github.com/Azure/co-op-translator) ಎಂಬ AI ಅನುವಾದ ಸೇವೆಯನ್ನು ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಸತೀಕತೆಯಿಗಾಗಿ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯಾಂಶಗಳಿರುವ ಸಾಧ್ಯತೆ ಇದೆ ಎಂಬುದನ್ನು ಗಮನದಲ್ಲಿರಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ದಸ್ತಾವೇಜು authoritative ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಗಂಭೀರ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡುತ್ತೇವೆ. ಈ ಅನುವಾದದ ಉಪಯೋಗದಿಂದ ಆಗಬಹುದಾದ ಯಾವುದೇ ತಪ್ಪ فهمಗಳು ಅಥವಾ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೊಳ್ ಲಿಕೆಗಾಗಿ ನಾವು ಜವಾಬ್ದಾರಿಯಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,166 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "efb01fcafd2ef40c593a6e662fc938a8",
|
||||
"translation_date": "2026-01-08T16:38:09+00:00",
|
||||
"source_file": "7-bank-project/2-forms/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ನಿಮ್ಮ ಬ್ಯಾಂಕ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಆಧುನಿಕ CSS ನೊಂದಿಗೆ ಶೈಲಿ ಮಾಡಿರಿ
|
||||
|
||||
## ಪ್ರಾಜೆಕ್ಟ್ ಅವಲೋಕನ
|
||||
|
||||
ನಿಮ್ಮ ಕಾರ್ಯಾತ್ಮಕ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ವ್ಯಕ್ತಿಗತವಾಗಿ ಆಕರ್ಷಕ, ವೃತ್ತಿಪರವಾದ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ನಾಗಿ ಪರಿವರ್ತಿಸಿ ಆಧುನಿಕ CSS ತಂತ್ರಗಳನ್ನು ಬಳಸಿ. ನೀವು ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ಉತ್ತಮಗೊಳಿಸುವ ಸಮನ್ವಿತ ವಿನ್ಯಾಸ ವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ಮಿಸಲು ಪ್ರಯತ್ನಿಸುವಿರಿ ಅದರ ಜೊತೆಗೆ ಸುದೃಢ ಪ್ರವೇಶಯೋಗ್ಯತೆ ಮತ್ತು ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ವಿನ್ಯಾಸ ತತ್ವಗಳನ್ನು ಕಾಪಾಡುತ್ತಿರುತ್ತೀರಿ.
|
||||
|
||||
ಈ ನಿಯೋಜನೆ ನವೀನ ವೆಬ್ ವಿನ್ಯಾಸ ಮಾದರಿಗಳನ್ನು ಅನ್ವಯಿಸಲು, ಸಂಯಮಿತ ದೃಶ್ಯ ಗುರುತುಗಳನ್ನು ಜವಾಬ್ದಾರಿಯಾಗಿ ಅನುಷ್ಠಾನಗೊಳಿಸಲು ಮತ್ತು ಬಳಕೆದಾರರಿಗೆ ಆಕರ್ಷಕ ಮತ್ತು ಸುಲಭವಾಗಿ ಸಂಚರಿಸಲು ಸಾಧ್ಯವಿರುವ ಅಂತರ್ಗತವನ್ನು ಸೃಷ್ಟಿಸಲು ಸವಾಲು ಹಾಕುತ್ತದೆ.
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
### ಹಂತ 1: ನಿಮ್ಮ ಶೈಲಿಪುಸ್ತಕವನ್ನು ಸಿದ್ಧಗೊಳಿಸಿರಿ
|
||||
|
||||
**ನಿಮ್ಮ CSS ಆಧಾರವನ್ನು ರಚಿಸಿ:**
|
||||
|
||||
1. **ಸೃಷ್ಟಿಸಿ** ನಿಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್ ರೂಟ್ನಲ್ಲಿ `styles.css` ಎಂಬ ಹೊಸ ಫೈಲ್
|
||||
2. **ಲಿಂಕ್ ಮಾಡಿ** ಸ್ಟೈಲಿಶೀಟ್ ಅನ್ನು ನಿಮ್ಮ `index.html` ಫೈಲಿನಲ್ಲಿ:
|
||||
```html
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
```
|
||||
3. **ಆರಂಭಿಸಿ** CSS ರಿಸೆಟ್ ಮತ್ತು ಆಧುನಿಕ ಡಿಫಾಲ್ಟ್ಗಳಿಂದ:
|
||||
```css
|
||||
/* Modern CSS reset and base styles */
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
}
|
||||
```
|
||||
|
||||
### ಹಂತ 2: ವಿನ್ಯಾಸ ವ್ಯವಸ್ಥೆಯ ಅವಶ್ಯಕತೆಗಳು
|
||||
|
||||
**ಈ ಅತ್ಯಾವಶ್ಯಕ ವಿನ್ಯಾಸ ಅಂಶಗಳನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸಿ:**
|
||||
|
||||
#### ಬಣ್ಣಗಳ ಪ್ಯಾಲೆಟ್
|
||||
- **ಪ್ರಾಥಮಿಕ ಬಣ್ಣ**: ಬಟನ್ಗಳು ಮತ್ತು ಹೈಲೈಟ್ಗಳಿಗೆ ವೃತ್ತಿಪರ ಬಣ್ಣವನ್ನು ಆಯ್ಕೆಮಾಡಿ
|
||||
- **ಪೂರ್ವಬದ್ಧ ಬಣ್ಣ**: ಆಕ್ಸೆಂಟ್ಗಳು ಮತ್ತು ದ್ವಿತೀಯ ಕ್ರಿಯೆಗಳಿಗೆ ಪೂರಕ ಬಣ್ಣ
|
||||
- **ನ್ಯೂಟ್ರಲ್ ಬಣ್ಣಗಳು**: ಪಠ್ಯ, ಬಾರ್ಡರ್ಸ್ ಮತ್ತು ಹಿನ್ನೆಲೆಗೆ ಬೂದು ಬಣ್ಣಗಳು
|
||||
- **ಯಶಸ್ವಿ/ದೋಷ ಬಣ್ಣಗಳು**: ಯಶಸ್ಸು ಸ್ಥಿತಿಗಳಿಗೆ ಹಸಿರು, ದೋಷಗಳಿಗೆ ಕೆಂಪು
|
||||
|
||||
#### ಟೈಪೋಗ್ರಫಿ
|
||||
- **ಬಳಕೆಯ ಹೈರಾರ್ಕಿ**: H1, H2, ಮತ್ತು H3 ಅಂಶಗಳ ನಡುವೆ ಸ್ಪಷ್ಟ ಭೇದ
|
||||
- **ದೇಹ ಪಠ್ಯ**: ಓದಲು ಸುಲಭವಾದ ಫಾಂಟ್ ಗಾತ್ರ (ಕನಿಷ್ಠ 16px) ಮತ್ತು ಸೂಕ್ತ ಸಾಲು ಎತ್ತರ
|
||||
- **ಫಾರ್ಮ್ ಲೇಬಲ್ಗಳು**: ಸ್ಪಷ್ಟ, ಪ್ರವೇಶಾರ್ಹ ಪಠ್ಯದ ಶೈಲಿ
|
||||
|
||||
#### ವಿನ್ಯಾಸ ಮತ್ತು ಜಾಗ
|
||||
- **ಸಮಾನ ಸಮೀಪಿಕೆ**: ಸಮೀಪಿಕೆ ಮಾಪಕವನ್ನು ಬಳಸಿ (8px, 16px, 24px, 32px)
|
||||
- **ಗ್ರಿಡ್ ವ್ಯವಸ್ಥೆ**: ಫಾರ್ಮ್ಗಳು ಮತ್ತು ವಿಷಯ ವಿಭಾಗಗಳಿಗೆ ಸಂಗ್ರಹಿತ ವಿನ್ಯಾಸ
|
||||
- **ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ವಿನ್ಯಾಸ**: ಮೊಬೈಲ್-ಮೊದಲು ವಿಧಾನ ಮತ್ತು ಬ್ರೇಕ್ಪಾಯಿಂಟ್ಗಳು
|
||||
|
||||
### ಹಂತ 3: ಘಟಕ ಶೈಲಿ
|
||||
|
||||
**ಈ ನಿರ್ದಿಷ್ಟ ಘಟಕಗಳನ್ನು ಶೈಲುಗೊಳಿಸಿ:**
|
||||
|
||||
#### ಫಾರ್ಮ್ಗಳು
|
||||
- **ಇನ್ಪುಟ್ ಫೀಲ್ಡ್ಗಳು**: ವೃತ್ತಿಪರ ಬಾರ್ಡರ್ಸ್, ಫೋಕಸ್ ಸ್ಥಿತಿಗಳು ಮತ್ತು ಮಾನ್ಯತೆ ಶೈಲಿ
|
||||
- **ಬಟನ್ಗಳು**: ಹೋವರ್ ಪರಿಣಾಮಗಳು, ನಿಷ್ಕ್ರಿಯ ಸ್ಥಿತಿಗಳು ಮತ್ತು ಲೋಡಿಂಗ್ ಸೂಚಕಗಳು
|
||||
- **ಲೇಬಲ್ಗಳು**: ಸ್ಪಷ್ಟ ಸ್ಥಾನಗಳಿರುತ್ತವೆ ಮತ್ತು ಅವಶ್ಯಕ ಕ್ಷೇತ್ರ ಸೂಚಕಗಳು
|
||||
- **ದೋಷ ಸಂದೇಶಗಳು**: ದೃಶ್ಯಮಾನ ದೋಷ ಶೈಲಿ ಮತ್ತು ಸಹಾಯಕ ಸಂದೇಶಗಳು
|
||||
|
||||
#### ನ್ಯಾವಿಗೇಶನ್
|
||||
- **ಹೆಡರ್**: ಸ್ವಚ್ಛ, ಬ್ರಾಂಡಡ್ ನ್ಯಾವಿಗೇಶನ್ ಪ್ರದೇಶ
|
||||
- **ಲಿಂಕ್ಗಳು**: ದಪ್ಪ ಹೋವರ್ ಸ್ಥಿತಿಗಳು ಮತ್ತು ಸಕ್ರಿಯ ಸೂಚಕಗಳು
|
||||
- **ಲೋಗೋ/ಶೀರ್ಷಿಕೆ**: ವಿಶಿಷ್ಟ ಬ್ರಾಂಡಿಂಗ್ ಅಂಶ
|
||||
|
||||
#### ವಿಷಯ ಪ್ರದೇಶಗಳು
|
||||
- **ವಿಭಾಗಗಳು**: ವಿವಿಧ ಪ್ರದೇಶಗಳ ನಡುವೆ ಸ್ಪಷ್ಟ ದೃಶ್ಯ ವಿಭಜನೆ
|
||||
- **ಕಾರ್ಡ್ಗಳು**: ಕಾರ್ಡ್ ಆಧಾರಿತ ವಿನ್ಯಾಸ ಬಳಿಸಿದರೆ, ನೆರಳು ಮತ್ತು ಬಾರ್ಡರ್ಗಳನ್ನು ಸೇರಿಸಿ
|
||||
- **ಹಿನ್ನೆಲೆಗಳು**: ವೈಟ್ ಸ್ಪೇಸ್ ಮತ್ತು ಸೌಮ್ಯ ಹಿನ್ನೆಲೆಗಳ ಸೂಕ್ತ ಬಳಕೆ
|
||||
|
||||
### ಹಂತ 4: ಸುಧಾರಿತ ವೈಶಿಷ್ಟ್ಯಗಳು (ಐಚ್ಛಿಕ)
|
||||
|
||||
**ಈ ಆಧುನಿಕ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸುವ ಬಗ್ಗೆ ಪರಿಗಣಿಸಿ:**
|
||||
- **ಡಾರ್ಕ್ ಮೋಡ್**: ಬೆಳಕು ಮತ್ತು ಮೊಗ್ಗಿನ ಥೀಮ್ಗಳ ನಡುವೆ ಟಾಗಲ್
|
||||
- **ಆನಿಮೇಷನ್ಗಳು**: ಸೌಮ್ಯ ಸಂಕ್ರಮಣೆಗಳು ಮತ್ತು ಸೂಕ್ಷ್ಮ ಕ್ರಿಯೆಗಳು
|
||||
- **ಲೋಡಿಂಗ್ ಸ್ಥಿತಿಗಳು**: ಫಾರ್ಮ್ ಸಲ್ಲಿಕೆ ವೇಳೆ ದೃಶ್ಯ ಪ್ರತಿಕ್ರಿಯೆ
|
||||
- **ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ಚಿತ್ರಗಳು**: ವಿಭಿನ್ನ ಪರದೆ ಗಾತ್ರಗಳಿಗೆ ಉತ್ತರದರ್ಶಕ ಚಿತ್ರಗಳು
|
||||
|
||||
## ವಿನ್ಯಾಸ ಪ್ರೇರಣೆ
|
||||
|
||||
**ಆಧುನಿಕ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಲಕ್ಷಣಗಳು:**
|
||||
- **ಸ್ವಚ್ಛ, ಕನಿಷ್ಠ ವಿನ್ಯಾಸ** ಸಾಕಷ್ಟು ಶ್ವೇತ ಸ್ಥಳದೊಂದಿಗೆ
|
||||
- **ವೃತ್ತಿಪರ ಬಣ್ಣ ಯೋಜನೆಗಳು** (ನೀಲಿ, ಹಸಿರು, ಅಥವಾ ವೈಭವೋಪೇತ ನ್ಯೂಟ್ರಲ್ಸ್)
|
||||
- **ಸ್ಪಷ್ಟ ದೃಶ್ಯ ಹೈರಾರ್ಕಿ** ಪ್ರಭಾವಶಾಲಿ ಕರೆ-ಟು-ಆ್ಯಕ್ಷನ್ ಬಟನ್ಗಳೊಂದಿಗೆ
|
||||
- **ಪ್ರವೇಶಾರ್ಹ ವ್ಯತ್ಯಾಸ ಅನುಪಾತಗಳು** WCAG ಮಾರ್ಗಸೂಚಿಗಳನ್ನು ಪೂರೈಸುತ್ತವೆ
|
||||
- **ಮೊಬೈಲ್-ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ವಿನ್ಯಾಸಗಳು** ಎಲ್ಲಾ ಸಾಧನಗಳಲ್ಲಿ ಕೆಲಸ ಮಾಡುವಂತೆ
|
||||
|
||||
## ಪ್ರಾಸಂಗಿಕ ಅಗತ್ಯಗಳು
|
||||
|
||||
### CSS ಸಂಘಟನೆ
|
||||
```css
|
||||
/* 1. CSS Custom Properties (Variables) */
|
||||
:root {
|
||||
--primary-color: #007bff;
|
||||
--secondary-color: #6c757d;
|
||||
/* Add more variables */
|
||||
}
|
||||
|
||||
/* 2. Base Styles */
|
||||
/* Reset, typography, general elements */
|
||||
|
||||
/* 3. Layout */
|
||||
/* Grid, flexbox, positioning */
|
||||
|
||||
/* 4. Components */
|
||||
/* Forms, buttons, cards */
|
||||
|
||||
/* 5. Utilities */
|
||||
/* Helper classes, responsive utilities */
|
||||
|
||||
/* 6. Media Queries */
|
||||
/* Responsive breakpoints */
|
||||
```
|
||||
|
||||
### ಪ್ರವೇಶಾರ್ಹತೆ ಅಗತ್ಯಗಳು
|
||||
- **ಬಣ್ಣ ವ್ಯತ್ಯಾಸ**: ಸಾಮಾನ್ಯ ಪಠ್ಯಕ್ಕೆ ಕನಿಷ್ಠ 4.5:1 ಅನುಪಾತ ಖಾತ್ರಿಗೊಳಿಸಿ
|
||||
- **ಫೋಕಸ್ ಸೂಚಕಗಳು**: ಕೀಬೋರ್ಡ್ ನ್ಯಾವಿಗೇಶನ್ಗೆ ದೃಶ್ಯমান ಫೋಕಸ್ ಸ್ಥಿತಿಗಳು
|
||||
- **ಫಾರ್ಮ್ ಲೇಬಲ್ಗಳು**: ಸರಿಯಾಗಿ ಇನ್ಪುಟ್ಗಳಿಗೆ ಸಂಬಂಧಿಸಿದಂತೆ
|
||||
- **ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ವಿನ್ಯಾಸ**: 320px ರಿಂದ 1920px ಅಗಲದ ಪರದಿಗಳ ಮೇಲೆ ಬಳಸಬಹುದಾಗಿರಬೇಕು
|
||||
|
||||
## ಮೌಲ್ಯಮಾಪನ ರೂಬ್ರಿಕ್
|
||||
|
||||
| ಮಾನದಂಡ | ಉದಾಹರಣಾರ್ಹ (A) | ಪ್ರवीಣ (B) | ಬೆಳೆಯುತ್ತಿರುವ (C) | ಸುಧಾರಣೆ ಅಗತ್ಯ (F) |
|
||||
|----------|-----------------|------------|-------------------|-------------------|
|
||||
| **ವಿನ್ಯಾಸ ವ್ಯವಸ್ಥೆ** | ಸಾಮರಸ್ಯ ಬಣ್ಣಗಳು, ಟೈಪೋಗ್ರಫಿ ಮತ್ತು ಜಾಗದೊಂದಿಗೆ ಸಂಪೂರ್ಣ ವಿನ್ಯಾಸ ವ್ಯವಸ್ಥೆಯನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸುತ್ತದೆ | ಸ್ಪಷ್ಟ ವಿನ್ಯಾಸ ಮಾದರಿಗಳೊಂದಿಗೆ ಸಮಾನ ಶೈಲಿಯನ್ನು ಬಳಸುತ್ತದೆ ಮತ್ತು ಉತ್ತಮ ದೃಶ್ಯ ಹಿಡಿತ | ಮೂಲಶೈಲಿ ಅನ್ವಯಿಸಲಾಗಿದ್ದು ಕೆಲವು ಸಕಲತೆ ಸಮಸ್ಯೆಗಳು ಅಥವಾ ವಿನ್ಯಾಸ ಅಂಶಗಳ ಕೊರತೆ | ಅತಿ ಕಡಿಮೆ ಶೈಲಿ, ಅಸಮನ್ವಿತ ಅಥವಾ ಘರ್ಷಣಾಶೀಲ ವಿನ್ಯಾಸ ಆಯ್ಕೆಗಳು |
|
||||
| **ಬಳಕೆದಾರ ಅನುಭವ** | ಉತ್ಸಾಹಕಾರಿ, ವೃತ್ತಿಪರ ಅಂತರ್ಜಾಲವನ್ನು ನಿರ್ಮಿಸಿ ಅತ್ಯುತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವ ಮತ್ತು ದೃಶ್ಯ ಆಕರ್ಷಣೆ | ಸ್ಪಷ್ಟ ನ್ಯಾವಿಗೇಶನ್ ಮತ್ತು ಓಲವಿನ ವಿಷಯದೊಂದಿಗೆ ಉತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವ ಒದಗಿಸುತ್ತದೆ | ಕೆಲವು UX ಸುಧಾರಣೆಗಳಿಗೆ ಅಗತ್ಯವಿರುವ ಮೂಲಭೂತ ಬಳಕೆದಾರ ಅನುಭವ | ದುರಂತ ಬಳಕೆದಾರ ಅನುಭವ, ಸಂಚರಣೆ ಅಥವಾ ಓದಿನಲ್ಲಿ ಕಷ್ಟಕರ |
|
||||
| **ತಾಂತ್ರಿಕ ಅನುಷ್ಠಾನ** | ಆಧುನಿಕ CSS ತಂತ್ರಗಳು, ಸಂಘಟಿತ ಕೋಡ್ ರಚನೆ ಮತ್ತು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಅನುಸರಿಸುತ್ತದೆ | ಉತ್ತಮ ಸಂಘಟನೆಯೊಂದಿಗೆ ಪರಿಣಾಮಕಾರಿಯಾಗಿ CSS ಅನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸುತ್ತದೆ ಮತ್ತು ಸೂಕ್ತ ತಂತ್ರಗಳನ್ನು ಬಳಸುತ್ತದೆ | CSS ಸರಿಯಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ ಆದರೆ ಸಂಘಟನೆ ಅಥವಾ ಆಧುನಿಕ ವಿಧಾನಗಳ ಕೊರತೆ ಇರಬಹುದು | ತಾಂತ್ರಿಕ ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ ಅಥವಾ ಬ್ರೌಸರ್ ಹೊಂದಾಣಿಕೆಯಲ್ಲಿ ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ ದುರ್ಬಲ CSS ಅನುಷ್ಠಾನ |
|
||||
| **ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ವಿನ್ಯಾಸ** | ಎಲ್ಲ ಸಾಧನ ಗಾತ್ರಗಳಲ್ಲೂ ಸುಂದರವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಸಂಪೂರ್ಣ ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ವಿನ್ಯಾಸ | ಕೆಲವು ಪರದೆ ಗಾತ್ರಗಳಲ್ಲಿ ತಣ್ಣನೆಯ ಸಮಸ್ಯೆಗಳನ್ನು ಹೊಂದಿದ ಉತ್ತಮ ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ವರ್ತನೆ | ಕೆಲವು ವಿನ್ಯಾಸ ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ ಮೂಲಭೂತ ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ಅನುಷ್ಠಾನ | ಪ್ರತಿಕ್ರಿಯಾಶೀಲವಿಲ್ಲ ಅಥವಾ ಮೊಬೈಲ್ ಸಾಧನಗಳಲ್ಲಿ ಪ್ರಮುಖ ಸಮಸ್ಯೆಗಳು |
|
||||
| **ಪ್ರವೇಶಾರ್ಹತೆ** | WCAG ಮಾರ್ಗಸೂಚಿಗಳನ್ನು ಪೂರೈಸುತ್ತದೆ ಉತ್ತಮ ಕೀಬೋರ್ಡ್ ನ್ಯಾವಿಗೇಶನ್ ಮತ್ತು ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಬೆಂಬಲದೊಂದಿಗೆ | ಸೂಕ್ತ ವ್ಯತ್ಯಾಸ ಮತ್ತು ಫೋಕಸ್ ಸೂಚಕಗಳೊಂದಿಗೆ ಉತ್ತಮ ಪ್ರವೇಶಾರ್ಹತೆ ಅಭ್ಯಾಸಗಳು | ಕೆಲವು ಅಂಶಗಳ ಕೊರತೆ ಇರುವ ಮೂಲ ಪ್ರವೇಶಾರ್ಹತೆ ಪರಿಗಣನೆಗಳು | ದುರ್ಬಲ ಪ್ರವೇಶಾರ್ಹತೆ, ದೈಹಿಕ ಅಸಮರ್ಥತೆ ಹೊಂದಿರುವ ಬಳಕೆದಾರರಿಗೆ ಕಷ್ಟಕಾರಿಯಾಗಿರುತ್ತದೆ |
|
||||
|
||||
## ಸಲ್ಲಿಸುವ ಮಾರ್ಗಸೂಚಿಗಳು
|
||||
|
||||
**ನಿಮ್ಮ ಸಲ್ಲಿಕೆಯಲ್ಲಿ ಸೇರಿಸಿ:**
|
||||
- **styles.css**: ನಿಮ್ಮ ಸಂಪೂರ್ಣ ಶೈಲಿಪುಸ್ತಕ
|
||||
- **ನವೀನಗೊಳಿಸಿದ HTML**: ನೀವು ಮಾಡಿದ ಯಾವುದೇ HTML ಬದಲಾವಣೆಗಳು
|
||||
- **ಸ್ಕ್ರೀನ್ಶಾಟ್ಗಳು**: ಡೆಸ್ಕ್ಟಾಪ್ ಮತ್ತು ಮೊಬೈಲ್ನಲ್ಲಿ ನಿಮ್ಮ ವಿನ್ಯಾಸವನ್ನು ತೋರಿಸುವ ಚಿತ್ರಗಳು
|
||||
- **README**: ನಿಮ್ಮ ವಿನ್ಯಾಸ ಆಯ್ಕೆಗಳು ಮತ್ತು ಬಣ್ಣ ಪ್ಯಾಲೆಟ್ ಕುರಿತು ಸಂಕ್ಷಿಪ್ತ ವಿವರಣೆ
|
||||
|
||||
**ಬೋನಸ್ ಪಾಯಿಂಟ್ಗಳು:**
|
||||
- **CSS ಕಸ್ಟಮ್ ಪ್ರಾಪರ್ಟೀಸ್** ಉಳಿಸುವ ಶೈಲಿ ಮತ್ತು ಥೀಮಿಂಗ್
|
||||
- **ಆಧುನಿಕ CSS ವೈಶಿಷ್ಟ್ಯಗಳು** Grid, Flexbox ಅಥವಾ CSS ಆನಿಮೇಷನ್ಗಳಂತಹವು
|
||||
- **ಕಾರ್ಯಕ್ಷಮತೆ ಪರಿಗಣನೆಗಳು** ಉತ್ತಮಗೊಳ್ಳಲಾದ CSS ಮತ್ತು ಕನಿಷ್ಠ ಫೈಲ್ ಗಾತ್ರ
|
||||
- **ಕ್ರಾಸ್-ಬ್ರೌಸರ್ ಪರಿಕ್ಷಣೆ** ವಿವಿಧ ಬ್ರೌಸರ್ಗಳೊಂದಿಗಿನ ಹೊಂದಾಣಿಕೆ ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವುದು
|
||||
|
||||
> 💡 **ಪ್ರೊ ಟಿಪ್**: ಮೊಬೈಲ್ ವಿನ್ಯಾಸಕ್ಕೆ ಮೊದಲು ಪ್ರಾರಂಭಿಸಿ, ನಂತರ ದೊಡ್ಡ ಪರದೆಗಳಿಗೆ ಉತ್ತಮಗೊಳಿಸಿ. ಈ ಮೊಬೈಲ್-ಮೊದಲು ವಿಧಾನವು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ಎಲ್ಲಾ ಸಾಧನಗಳ ಮೇಲೆ ಚೆನ್ನಾಗಿಯೇ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ ಮತ್ತು ಆಧುನಿಕ ವೆಬ್ ಅಭಿವೃದ್ಧಿ ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಪಾಲಿಸುತ್ತದೆ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ತಪ್ಪು ನಿರಾಕರಣೆ**:
|
||||
ಈ ದಾಖಲೆಯನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಿಖರತೆಯನ್ನು ನಾವು ಪ್ರಯತ್ನಿಸಿದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ತಪ್ಪುತೆಗಳಿರಬಹುದು ಎಂಬುದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಾಖಲೆವೇ ಪ್ರಾಮಾಣಿಕ ಮೂಲವಾಗಿರಬೇಕಾಗಿದೆ. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು સમજಿಕೆ ಅಥವಾ ತಪ್ಪು ವ್ಯಾಖ್ಯಾನಕ್ಕಾಗಿ ನಾವು ಹೊಣೆಗಾರರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,971 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "86ee5069f27ea3151389d8687c95fac9",
|
||||
"translation_date": "2026-01-08T17:23:20+00:00",
|
||||
"source_file": "7-bank-project/3-data/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ನಿರ್ಮಾಣ ಪಾರ್ಟ್ 3: ಡೇಟಾವನ್ನು ಪಡೆಯುವ ಮತ್ತು ಬಳಸುವ ವಿಧಾನಗಳು
|
||||
|
||||
ಸ್ಟಾರ್ ಟ್ರೆಕ್ನ ಎಂಟರ್ಪ್ರೈಸ್ ಕಂಪ್ಯೂಟರ್ ಕುರಿತು ಯೋಚಿಸಿ - ಕ್ಯಾಪ್ಟನ್ ಪಿಕಾರ್ಡ್ನು ಹಡಗು ಸ್ಥಿತಿಗತಿಗಾಗಿ ಕೇಳಿದಾಗ, ಸಂಪೂರ್ಣ ಇಂಟರ್ಫೇಸ್ ನಿಲ್ಲಿಸಿ ಮರುನಿರ್ಮಿಸಲಾಗದೆ ಮಾಹಿತಿ ತಕ್ಷಣ ಕಾಣಿಸುತ್ತದೆ. ಆ ಸರಾಗ ಮಾಹಿತಿ ಹರಿವುಲೇ ನಾವು ಇಲ್ಲಿ ಡೈನಾಮಿಕ್ ಡೇಟಾ ಫೆಚಿಂಗ್ ಮೂಲಕ ನಿರ್ಮಿಸುತ್ತಿದ್ದೇವೆ.
|
||||
|
||||
ಈಗ ನಿಮ್ಮ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಒಂದು ಮುದ್ರಿತ ಸುದ್ದಿಪತ್ರಿಕೆಂತೆ ಇದೆ - ಮಾಹಿತಿಪೂರ್ಣ ಆದರೆ ಸ್ಥಿರ. ನಾವು ಅದನ್ನು NASA ಯ ಮಿಷನ್ ಕಂಟ್ರೋಲ್ ನಂತಹ ಬದಲಾಯಿಸುವುದಾಗಿ ಸಂಚಲನ ಮತ್ತು ನವೀಕರಣಗಳು ನಿರಂತರವಾಗಿ ಬಳಕೆದಾರರ ಕೆಲಸದ ಮಾರ್ಗವನ್ನು ಕಡಿತಮಾಡದೆ ನಡೆಯುವಂತೆ ಮಾಡುತ್ತೇವೆ.
|
||||
|
||||
ನೀವು ಸರ್ವರ್ಗಳೊಂದಿಗೆ ಅಸಿಂಕ್ರೋನಸ್ ಆಗಿ ಸಂವಹನ ಮಾಡುವುದನ್ನು, ವಿಭಿನ್ನ ಸಮಯಗಳಲ್ಲಿ ಬರುತ್ತಿರುವ ಡೇಟಾವನ್ನು ನಿರ್ವಹಿಸುವುದನ್ನು ಮತ್ತು ಕಚ್ಚಾ ಮಾಹಿತಿಯನ್ನು ಬಳಕೆದಾರರಿಗಾಗಿ ಅರ್ಥಪೂರ್ಣವಾಗಿ ಪರಿವರ್ತಿಸುವುದನ್ನು ಕಲಿಯುತ್ತೀರಿ. ಇದು ಡೆಮೊ ಮತ್ತು ಪ್ರೊಡಕ್ಷನ್-ಸಿದ್ಧ ಸಾಫ್ಟ್ವೇರ್ ನಡುವೆ ಇರುವ ವ್ಯತ್ಯಾಸ.
|
||||
|
||||
## ⚡ ಮುಂದಿನ 5 ನಿಮಿಷಗಳಲ್ಲಿ ನೀವು ಮಾಡಬಹುದಾದವು
|
||||
|
||||
**ಬೇಕಾದರೆ ತ್ವರಿತ ಪ್ರಾರಂಭ ಮಾರ್ಗವಳಿ ಡೆವಲಪರ್ಸ್ಗಾಗಿ**
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A[⚡ 5 ನಿಮಿಷಗಳು] --> B[API ಸರ್ವರ್ ಅನ್ನು ಹೊಂದಿಸಿ]
|
||||
B --> C[curl ಬಳಸಿ ಟೆಸ್ಟ್ ಫೆಚ್ ಮಾಡಿ]
|
||||
C --> D[ಲಾಗಿನ್ ಕಾರ್ಯವನ್ನು ನಿರ್ಮಿಸಿ]
|
||||
D --> E[ಕ್ರಿಯೆಯಲ್ಲಿ ಡೇಟಾವನ್ನು ನೋಡಿ]
|
||||
```
|
||||
- **ನಿಮಿಷ 1-2**: ನಿಮ್ಮ API ಸರ್ವರ್ ಪ್ರಾರಂಭಿಸಿ (`cd api && npm start`) ಮತ್ತು ಸಂಪರ್ಕ ಪರೀಕ್ಷಿಸಿ
|
||||
- **ನಿಮಿಷ 3**: ಮೂಲಭೂತ `getAccount()` ಫಂಕ್ಷನ್ fetch ಬಳಸಿ ಸೃಷ್ಟಿಸಿ
|
||||
- **ನಿಮಿಷ 4**: ಲಾಗಿನ್ ಫಾರ್ಮ್ ಅನ್ನು `action="javascript:login()"` ಮೂಲಕ ಸಂಪರ್ಕಿಸಿ
|
||||
- **ನಿಮಿಷ 5**: ಲಾಗಿನ್ ಪರೀಕ್ಷಿಸಿ ಮತ್ತು ಕಾಂಸೋಲ್ನಲ್ಲಿ ಖಾತೆ ಡೇಟಾ ಕಾಣಿಸಿ
|
||||
|
||||
**ತ್ವರಿತ ಪರೀಕ್ಷಾ ಕಮಾಂಡ್ಗಳು**:
|
||||
```bash
|
||||
# API ಚಾಲನೆಯಲ್ಲಿ ಇದೆ ಎಂದು ಪರಿಶೀಲಿಸಿ
|
||||
curl http://localhost:5000/api
|
||||
|
||||
# ಖಾತೆ ಡೇಟಾ ತ Rodrigues್ ಪಡೆಯಿರಿ
|
||||
curl http://localhost:5000/api/accounts/test
|
||||
```
|
||||
|
||||
**ಇದಕ್ಕೆ ಏಕೆ ಮಹತ್ವವಿದೆ**: 5 ನಿಮಿಷಗಳಲ್ಲಿ ನೀವು ಪ್ರತಿ ಆಧುನಿಕ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ ತಾಳ್ಮೆಯಿಂದ ಇಡುತ್ತದೆ ಅಸಿಂಕ್ರೋನಸ್ ಡೇಟಾ ಫೆಚಿಂಗ್ನ ಮಾಯಾಜಾಲವನ್ನು ಕಾಣುತ್ತೀರಿ. ಇದು ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಸ್ಪಂದನಶೀಲ ಮತ್ತು ಜೀವಂತಗೊಳಿಸುವ ಮೂಲಭೂತ ಅಂಶ.
|
||||
|
||||
## 🗺️ ಡೇಟಾ-ಚಾಲಿತ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳ ಮೂಲಕ ನಿಮ್ಮ ಅಧ್ಯಯನ ಪಯಣ
|
||||
|
||||
```mermaid
|
||||
journey
|
||||
title ಸ್ಥಿರ ಪುಟಗಳಿಂದ ಸುದೈನಿಮ ಅಧಿಕೃತತೆಗಳವರೆಗೆ
|
||||
section ಅಭಿವೃದ್ಧಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು
|
||||
ಸಂಪ್ರದಾಯಿಕ ಪುಟ ಮರುಲೋಡ್ಗಳು: 3: You
|
||||
AJAX/SPA ಲಾಭಗಳು ಹುಡುಕಲೊಳ್ಳಿ: 5: You
|
||||
ಫೆಚ್ API ಮಾದರಿಗಳನ್ನು ತಿಳಿಯಿರಿ: 7: You
|
||||
section ಪ್ರಾಥಮಿಕ ಪ್ರಾಮಾಣಿಕತೆ ನಿರ್ಮಿಸುವುದು
|
||||
ಲಾಗಿನ್ ಕಾರ್ಯಗಳನ್ನು ರಚಿಸು: 4: You
|
||||
ಅಸಿಂಕ್ರೋ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಣೆ ಮಾಡು: 6: You
|
||||
ಬಳಕೆದಾರ ಸೆಷನ್ಗಳನ್ನು ನಿರ್ವಹಣೆ ಮಾಡು: 8: You
|
||||
section ಸುದೈನಿಮ UI ತಿದ್ದುಪಡಿ ಗಳು
|
||||
DOM ನಿರ್ವಹಣೆಯನ್ನು ಕಲಿಯಿರಿ: 5: You
|
||||
ವ್ಯವಹಾರ ಪ್ರದರ್ಶನಗಳನ್ನು ನಿರ್ಮಿಸು: 7: You
|
||||
ಪ್ರತಿಕ್ರಿಯೆಯ dashboards ರಚಿಸು: 9: You
|
||||
section ವೃತ್ತಿಪರ ಮಾದರಿಗಳು
|
||||
ಟೆಂಪ್ಲೇಟು ಆಧಾರಿತ ರೆಂಡರಿಂಗ್: 6: You
|
||||
ದೋಷ ನಿರ್ವಹಣಾ ತಂತ್ರಗಳು: 7: You
|
||||
ಕಾರ್ಯಕ್ಷಮತೆ ಸುಧಾರಣೆ: 8: You
|
||||
```
|
||||
**ನಿಮ್ಮ ಪಯಣ ಗುರಿ**: ಈ ಪಾಠದ ಕೊನೆಯಲ್ಲಿ, ನೀವು ಆಧುನಿಕ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಡೇಟಾವನ್ನು ಹೇಗೆ ಪಡೆಯುತ್ತವೆ, ಪ್ರಕ್ರಿಯೆ ಮಾಡುತ್ತವೆ ಮತ್ತು ಡೈನಾಮಿಕ್ ಆಗಿ ಪ್ರದರ್ಶಿಸುತ್ತವೆ ಎಂಬುದನ್ನು ತಿಳಿದುಕೊಳ್ಳುತ್ತೀರಿ, ಇದು ವೃತ್ತಿಪರ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಂದ ನಾವು ನಿರೀಕ್ಷಿಸುವ ಸರಾಗ ಬಳಕೆದಾರ ಅನುಭವಗಳನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ.
|
||||
|
||||
## ಮುನ್ನಡಿ ಲಗ್ಗಣೆ ಪ್ರಶ್ನಾ ಪರೀಕ್ಷೆ
|
||||
|
||||
[ಮುನ್ನಡಿ ಲಗ್ಗಣೆ ಪ್ರಶ್ನಾ ಪರೀಕ್ಷೆ](https://ff-quizzes.netlify.app/web/quiz/45)
|
||||
|
||||
### ಪೂರ್ವಾವಶ್ಯಕತೆಗಳು
|
||||
|
||||
ಡೇಟಾ ಪಡೆಯುವುದರಲ್ಲಿ ಮುಳುಗುವ ಮೊದಲು, ಈ ಘಟಕಗಳನ್ನು ಸಿದ್ಧವಾಗಿಸಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ:
|
||||
|
||||
- **ಹಿಂದಿನ ಪಾಠ**: [ಲಾಗಿನ್ ಮತ್ತು ನೋಂದಣಿ ಫಾರ್ಮ್](../2-forms/README.md) ಪೂರೈಸಿ - ನಾವು ಇದು ಮೇಲೆ ನಿರ್ಮಿಸುವೆವು
|
||||
- **ಸ್ಥಳೀಯ ಸರ್ವರ್**: [Node.js](https://nodejs.org) ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿ ಮತ್ತು [API ಸರ್ವರ್ ಅನ್ನು ಚಾಲನೆ ಮಾಡಿ](../api/README.md) ಖಾತೆ ಡೇಟಾವನ್ನು ಒದಗಿಸಲು
|
||||
- **API ಸಂಪರ್ಕ**: ಈ ಕಮಾಂಡ್ ಮೂಲಕ ನಿಮ್ಮ ಸರ್ವರ್ ಸಂಪರ್ಕವನ್ನು ಪರೀಕ್ಷಿಸಿ:
|
||||
|
||||
```bash
|
||||
curl http://localhost:5000/api
|
||||
# ನಿರೀಕ್ಷಿತ ಪ್ರತಿಕ್ರಿಯೆ: "ಬ್ಯಾಂಕ್ API v1.0.0"
|
||||
```
|
||||
|
||||
ಈ ತ್ವರಿತ ಪರೀಕ್ಷೆ ಎಲ್ಲಾ ಘಟಕಗಳು ಸರಿಯಾದ ಸಂವಹನ ಮಾಡುತ್ತಿರುವುದನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ:
|
||||
- ನಿಮ್ಮ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ Node.js ಸರಿಯಾಗಿ ಓಡುತ್ತಿದೆಯೇ ಎಂಬುದನ್ನು ಪರಿಶೀಲಿಸುತ್ತದೆ
|
||||
- ನಿಮ್ಮ API ಸರ್ವರ್ ಸಕ್ರಿಯವಾಗಿದ್ದು ಪ್ರತಿಕ್ರಿಯಿಸುತ್ತಿದೆಯೇ ಎಂದು ದೃಢೀಕರಿಸುತ್ತದೆ
|
||||
- ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ಸರ್ವರ್ನನ್ನು ತಲುಪಬಹುದೇ ಎಂದು ಪರಿಶೀಲಿಸುತ್ತದೆ (ಮಿಷನ್ನಿಗೆ ಮುನ್ನ ರೇಡಿಯೋ ಸಂಪರ್ಕ ತಪಾಸಣೆಯಂತಾಗಿದೆ)
|
||||
|
||||
## 🧠 ಡೇಟಾ ನಿರ್ವಹಣಾ ಪರಿಸರ ಅವಲೋಕನ
|
||||
|
||||
```mermaid
|
||||
mindmap
|
||||
root((ಡೇಟಾ ನಿರ್ವಹಣೆ))
|
||||
Authentication Flow
|
||||
Login Process
|
||||
ಫಾರ್ಮ್ ಮಾನ್ಯತೆ
|
||||
ಪ್ರಮಾಣಪತ್ರ ಪರಿಶೀಲನೆ
|
||||
ಸೆಷನ್ ನಿರ್ವಹಣೆ
|
||||
User State
|
||||
ಜಾಗತಿಕ ಖಾತೆ ವಸ್ತು
|
||||
ನಾವಿಗೇಶನ್ ಗಾರ್ಡ್ಗಳು
|
||||
ದೋಷ ನಿರ್ವಹಣೆ
|
||||
API Communication
|
||||
Fetch Patterns
|
||||
GET ವಿನಂತಿಗಳು
|
||||
POST ವಿನಂತಿಗಳು
|
||||
ದೋಷ ಪ್ರತಿಕ್ರಿಯೆಗಳು
|
||||
Data Formats
|
||||
JSON ಪ್ರಕ್ರಿಯೆ
|
||||
URL ಎನ್ಕೋಡಿಂಗ್
|
||||
ಪ್ರತಿಕ್ರಿಯೆ ವಿಶ್ಲೇಷಣೆ
|
||||
Dynamic UI Updates
|
||||
DOM Manipulation
|
||||
ಸುರಕ್ಷಿತ ಪಠ್ಯ ನವೀಕರಣಗಳು
|
||||
ಅಂಶ ಸೃಷ್ಟಿ
|
||||
ಟೆಂಪ್ಲೇಟ್ ಕ್ಲೋನಿಂಗ್
|
||||
User Experience
|
||||
ನೈಜ-ಸಮಯ ನವೀಕರಣಗಳು
|
||||
ದೋಷ ಸಂದેશಗಳು
|
||||
ಲೋಡ್ ಸ್ಥಿತಿಗಳು
|
||||
Security Considerations
|
||||
XSS Prevention
|
||||
textContent ಬಳಕೆ
|
||||
ಇನ್ಪುಟ್ ಸ್ಯಾನಿಟೈಸೇಶನ್
|
||||
ಸುರಕ್ಷಿತ HTML ಸೃಷ್ಟಿ
|
||||
CORS Handling
|
||||
ಕ್ರಾಸ್-ಆರಿಜಿನ್ ವಿನಂತಿಗಳು
|
||||
ಹೆಡರ್ ಸಂರಚನೆ
|
||||
ಅಭಿವೃದ್ಧಿ ಸೆಟಪ್
|
||||
```
|
||||
**ಪ್ರಮುಖ ಸಿದ್ಧಾಂತ**: ಆಧುನಿಕ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಡೇಟಾ ಸಂಯೋಜನಾ ವ್ಯವಸ್ಥೆಗಳು - ಅವು ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ಗಳು, ಸರ್ವರ್ APIಗಳು ಮತ್ತು ಬ್ರೌಸರ್ ಭದ್ರತಾ ಮಾದರಿಗಳ ನಡುವೆ ಸಮನ್ವಯಿಸಿಸರಾಗ, ಸ್ಪಂದನಶೀಲ ಅನುಭವಗಳನ್ನು ಸೃಷ್ಟಿಸುತ್ತವೆ.
|
||||
|
||||
---
|
||||
|
||||
## ಆಧುನಿಕ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳಲ್ಲಿ ಡೇಟಾ ಪಡೆಯುವಿಕೆ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು
|
||||
|
||||
ಕಳೆದ ಇಪ್ಪತ್ತು ವರ್ಷಗಳಲ್ಲಿ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಡೇಟಾ ನಿರ್ವಹಿಸುವ ವಿಧಾನವು ಭಾರಿ ಮಾರ್ಪಡಿತವಾಗಿದೆ. ಈ ಬದಲಾಗುವಿಕೆಯನ್ನು ಅರ್ಥ ಮಾಡಿಕೊಳ್ಳುವುದು, AJAX ಮತ್ತು Fetch API ಮುಂತಾದ ಆಧುನಿಕ ತಂತ್ರಗಳನ್ನು ಏಕೆ ಶಕ್ತಿಯುತವಾಗಿವೆ ಮತ್ತು ವೆಬ್ ಡೆವಲಪರ್ಸ್ಗೆ ಅವು ಅಗತ್ಯವಾಯಿರುತ್ತವೆ ಎಂಬುದನ್ನು ಅವಲೋಕಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
|
||||
|
||||
ಸಾಂಪ್ರದಾಯಿಕ ವೆಬ್ಸೈಟುಗಳು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದವು ಮತ್ತು ನಾವು ಈಗ ನಿರ್ಮಿಸುತ್ತಿರುವ ಡೈನಾಮಿಕ್, ಸ್ಪಂದನಶೀಲ ಅಪ್ಲಿಕೇಶನ್ಗಳ ನಡುವಿನ ವ್ಯತ್ಯಾಸವನ್ನು ಅನ್ವೇಷಿಸೋಣ.
|
||||
|
||||
### ಸಾಂಪ್ರದಾಯಿಕ ಬಹು-ಪುಟ ಅಪ್ಲಿಕೇಶನ್ಗಳು (MPA)
|
||||
|
||||
ವೆಬ್ ಪ್ರಾರಂಭಿಕೆಯಲ್ಲಿದ್ದಾಗ, ಪ್ರತಿ ಕ್ಲಿಕ್ ಹಳೆಯ ದೂರದರ್ಶನದ ಚಾನೆಲ್ ಬದಲಾಯಿಸುವಂತೆ ಇದ್ದಿತು - ಸ್ಕ್ರೀನ್ ಖಾಲಿ ಆಗಿ, ನಂತರ ಹೊಸ ವಿಷಯದೊಂದಿಗೆ ನಿಧಾನವಾಗಿ ಮುತುವರ್ಜಿ ಒಪ್ಪಿಕೊಳ್ಳುತ್ತಿತ್ತು. ಇದು ಮರುಬಳಕೆಯ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳ ನಿಜವಾಗಿದ್ದ ಸ್ಥಿತಿ, ಪ್ರತಿಯೊಂದು ಕ್ರಿಯೆಯೂ ಸಂಪೂರ್ಣ ಪುಟವನ್ನು ಆರಂಭದಿಂದ ಮರುನಿರ್ಮಿಸುವುದಾಗಿತ್ತು.
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant User
|
||||
participant Browser
|
||||
participant Server
|
||||
|
||||
User->>Browser: ಲಿಂಕ್ ಕ್ಲಿಕ್ ಮಾಡುತ್ತದೆ ಅಥವಾ ಫಾರ್ಮ್ ಸಲ್ಲಿಸುತ್ತದೆ
|
||||
Browser->>Server: ಹೊಸ HTML ಪುಟಕ್ಕಾಗಿ ವಿನಂತಿ ಮಾಡುತ್ತದೆ
|
||||
Note over Browser: ಪುಟ ಖಾಲಿಯಾಗುತ್ತದೆ
|
||||
Server->>Browser: ಸಂಪೂರ್ಣ HTML ಪುಟವನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ
|
||||
Browser->>User: ಹೊಸ ಪುಟವನ್ನು ತೋರಿಸುತ್ತದೆ (ಫ್ಲ್ಯಾಶ್/ರೀಲುಡ್)
|
||||
```
|
||||

|
||||
|
||||
**ಈ ವಿಧಾನವನ್ನು ಅಸಹ್ಯವಾಗಿಸಿದ್ದದ್ದು:**
|
||||
- ಪ್ರತಿ ಕ್ಲಿಕ್ ಸಂಪೂರ್ಣ ಪುಟವನ್ನು ಪುನರ್ನirmaಣೆ ಪರಿಚಯಿಸಿತು
|
||||
- ಬಳಕೆದಾರರು ಮಧ್ಯದಲ್ಲಿ ನಿಂತು ಬದಲಾವಣೆಯ ನೋಟಗಳನ್ನು ಅನುಭವಿಸಿದ್ದರು
|
||||
- ನಿಮ್ಮ ಇಂಟರ್ನೆಟ್ ಸಂಪರ್ಕ ಅದೇ ಹೆಡರ್ ಮತ್ತು ಫೂಟರ್ ಡೌನ್ಲೋಡ್ ಮಾಡಲು ಹಗಲು-ರಾತಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿತ್ತು
|
||||
- ಅಪ್ಲಿಕೇಶನ್ಗಳು ಸಾಫ್ಟ್ವೇರ್ ಬಳಕೆಯಂತೆ ಇಲ್ಲ, ಕಡತಗಳ ಲಾಶೆಗೆ ಕ್ಲಿಕ್ ಮಾಡುವಂತಿದ್ದವು
|
||||
|
||||
### ಆಧುನಿಕ ಸಿಂಗಲ್-ಪುಟ ಅಪ್ಲಿಕೇಶನ್ಗಳು (SPA)
|
||||
|
||||
AJAX (ಅಸಿಂಕ್ರೋನಸ್ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಮತ್ತು XML) ಈ ಪರಿಕಲ್ಪನೆಯನ್ನು ಸಂಪೂರ್ಣ ಬದಲಾಯಿಸಿದೆ. ಅಂತಾರಾಷ್ಟ್ರೀಯ ಶೇಖರಣಾ ನಿಲಯದ (ISS) ಮೋಡ್ಯೂಲರ್ ವಿನ್ಯಾಸದಂತೆ, ಅಲ್ಲಿ ಬಾಹ್ಯಯಾನಿಗಳು ವಿಚ್ಛಿನ್ನ ಭಾಗಗಳನ್ನು ಮರುಸ್ಥಾಪಿಸಬಹುದು, AJAX ನಮಗೆ ಪುಟದ ನಿರ್ದಿಷ್ಟ ಭಾಗಗಳನ್ನು ಮರುಲೋಡ್ ಮಾಡದೇ ನವೀಕರಣ ಮಾಡಲು ಅವಕಾಶ ನೀಡುತ್ತದೆ. XML ಎಂದು ಹೆಸರಿರುವುದರ ಮೇಲೆ JSON ಅನ್ನು ನಾವು ಹೆಚ್ಚು ಬಳಕೆಮಾಡುತ್ತೇವೆ, ಆದರೆ ಮೂಲ ತತ್ವ ಎಂದರೆ: ಬದಲಾಯಿಸಬೇಕಾದ ಭಾಗವನ್ನು ಮಾತ್ರ ನವೀಕರಿಸು.
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant User
|
||||
participant Browser
|
||||
participant JavaScript
|
||||
participant Server
|
||||
|
||||
User->>Browser: ಪುಟದೊಂದಿಗೆ ಸಂವಹನ ಮಾಡುತ್ತದೆ
|
||||
Browser->>JavaScript: ಘಟನೆ ಕೈಗಾರಿಕೆಯನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತದೆ
|
||||
JavaScript->>Server: ಕೇವಲ ಅಗತ್ಯವಿರುವ ಡೇಟಾ ಪಡೆಯುತ್ತದೆ
|
||||
Server->>JavaScript: JSON ಡೇಟಾವನ್ನು ಹೊಂದಿಸುತ್ತದೆ
|
||||
JavaScript->>Browser: ನಿರ್ದಿಷ್ಟ ಪುಟದ ಅಂಶಗಳನ್ನು ನವೀಕರಿಸುತ್ತದೆ
|
||||
Browser->>User: ನವೀಕೃತ ವಿಷಯವನ್ನು ತೋರಿಸುತ್ತದೆ (ಮತ್ತೆ ಲೋಡ್ ಮಾಡದೆ)
|
||||
```
|
||||

|
||||
|
||||
**SPAs ಇಷ್ಟು ಚೆನ್ನಾಗಿರುವುದಕ್ಕೆ ಕಾರಣಗಳು:**
|
||||
- ಬದಲಾಯಿಸಿದ ಭಾಗಗಳನ್ನು ಮಾತ್ರ ನವೀಕರಿಸಲಾಗುತ್ತದೆ (ಬುದ್ದಿವಂತಿಕೆ吧)
|
||||
- ಯಾವುದೇ ಜಾರಿಯಾದ ವಿರಾಮಗಳಿಲ್ಲ - ಬಳಕೆದಾರರು ತಮ್ಮ ಕ್ರಮದಲ್ಲಿ ಇರುತ್ತಾರೆ
|
||||
- ಕಡಿಮೆ ಡೇಟಾ ಸಂಚಾರ ವೇಗವಾಗಿ ಲೋಡ್ ಮಾಡುತ್ತದೆ
|
||||
- ಎಲ್ಲವು ಸ್ಪಂದನಶೀಲ ಮತ್ತು ತ್ವರಿತವಾಗಿ ಆಗುತ್ತದೆ, ನಿಮ್ಮ ಫೋನಿನ ಅಪ್ಲಿಕೇಶನ್ಗಳಂತೆ
|
||||
|
||||
### ಆಧುನಿಕ Fetch API ಗೆ ಬದಲಿ
|
||||
|
||||
ಆಧುನಿಕ ಬ್ರೌಸರ್ಗಳು [`Fetch` API](https://developer.mozilla.org/docs/Web/API/Fetch_API) ಅನ್ನು ಒದಗಿಸುತ್ತವೆ, ಇದು ಹಳೆಯ [`XMLHttpRequest`](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest) ನೆ ವಿರುದ್ಧ ಬದಲಿ. ಟೆಲಿಗ್ರಾಫ್ ಮತ್ತು ಇಮೇಲ್ ಬಳಸುವ ವ್ಯತ್ಯಾಸದಂತೆ, Fetch API ಸ್ವಚ್ಛ, ಅಸಿಂಕ್ರೋನಸ್ ಕೋಡುವಿಕೆಗೆ ಪ್ರಾಮಿಸ್ಗಳನ್ನು ಉಪಯೋಗಿಸುತ್ತದೆ ಮತ್ತು JSON ನೈಜವಾಗಿ ನಿರ್ವಹಿಸುತ್ತದೆ.
|
||||
|
||||
| ವೈಶಿಷ್ಟ್ಯ | XMLHttpRequest | Fetch API |
|
||||
|---------|----------------|----------|
|
||||
| **ವ್ಯಾಕರಣ** | ಒತ್ತಡದ ಕಾಲ್ಬ್ಯಾಕ್ ಆಧಾರಿತ | ಸ್ವಚ್ಛ ಪ್ರಾಮಿಸ್ ಆಧಾರಿತ |
|
||||
| **JSON ಹ್ಯಾಂಡ್ಲಿಂಗ್** | ಕೈಯಿಂದ ವಿಶ್ಲೇಷಣೆ ಬೇಕು | ನಿರ್ಮಿಸಲಾಗದ `.json()` ವಿಧಾನವು |
|
||||
| **ದೋಷ ನಿರ್ವಹಣೆ** | ಸೀಮಿತ ದೋಷ ಮಾಹಿತಿ | ಸಂಪೂರ್ಣ ದೋಷ ವಿವರಗಳು |
|
||||
| **ಆಧುನಿಕ ಬೆಂಬಲ** | ಪಾರಂಪರ್ಯ ಅನುಕೂಲತೆ | ES6+ ಪ್ರಾಮಿಸ್ ಮತ್ತು ಅಸಿಂಕ್/ಅವೇಟ್ |
|
||||
|
||||
> 💡 **ಬ್ರೌಸರ್ ಅನುಕೂಲತೆ**: ಶುಭವಾರ್ತೆಗೆ, Fetch API ಎಲ್ಲಾ ಆಧುನಿಕ ಬ್ರೌಸರ್ಗಳಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ! ನೀವು ನಿಶ್ಚಿತ ಆವೃತ್ತಿಗಳ ಬಗ್ಗೆ ಹೆಚ್ಚು ಗೊತ್ತಾಯ್ತುಕೊಳ್ಳಬೇಕಾದರೆ, [caniuse.com](https://caniuse.com/fetch) ನಲ್ಲಿ ಸಂಪೂರ್ಣ ಅನುಕೂಲತಾ ಕಥೆಯನ್ನು ನೋಡಿ.
|
||||
>
|
||||
**ನೀವು ತಿಳಿಯಬೇಕಾಗಿರುವುದು**:
|
||||
- ಕ್ರೋಮ್, ಫೈರ್ಫಾಕ್ಸ್, ಸಫಾರಿ ಮತ್ತು ಎಡ್ಜ್ನಲ್ಲಿ ಅದ್ಭುತವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ (ಯಾವುದೇ ಬಳಕೆದಾರರ ಹಾಜರಾತಿಯ ತಾಣಗಳು)
|
||||
- ಇಂಟರ್ನೆಟ್ ಎಕ್ಸ್ಪ್ಲೋರರ್ಗೆ ಮಾತ್ರ ಹೆಚ್ಚುವರಿ ಸಹಾಯ ಬೇಕು (ನಿಜವಾಗಿಯೂ, IE ಹೋಗಲು ಸಮಯವಾಗಿದೆ)
|
||||
- ನಾವು ನಂತರ ಬಳಸುವ ಆಸುಂದರ ಅಸಿಂಕ್/ಅವೇಟ್ ಮಾದರಿಗಳಿಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ
|
||||
|
||||
### ಬಳಕೆದಾರ ಲಾಗಿನ್ ಮತ್ತು ಡೇಟಾ ಪಡೆದಿಸಿಕೊಳ್ಳುವಿಕೆ ಕಾರ್ಯಗತಗೊಳಿಸುವುದು
|
||||
|
||||
ಇದೀಗ ನಿಮ್ಮ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಸ್ಥಿರ ಪ್ರದರ್ಶನದಿಂದ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಅಪ್ಲಿಕೇಶನ್ ಆಗಿ ಪರಿವರ್ತಿಸುವ ಲಾಗಿನ್ ವ್ಯವಸ್ಥೆಯನ್ನು ಅನುಷ್ಟಾನಗೊಳಿಸೋಣ. ಭದ್ರಸേനಾ ಸೌಲಭ್ಯಗಳಲ್ಲಿ ಉಪಯೋಗಿಸುವ ಪ್ರಮಾಣೀಕರಣ ಪ್ರೋಟೋಕಾಲ್ಗಳಂತೆ, ನಾವು ಬಳಕೆದಾರರ ವಿವರಗಳನ್ನು ಪರಿಶೀಲಿಸುತ್ತೇವೆ ಮತ್ತು ನಂತರ ಅವರ ನಿರ್ದಿಷ್ಟ ಡೇಟಾಕ್ಕೆ ಪ್ರವೇಶ ನೀಡುತ್ತೇವೆ.
|
||||
|
||||
ನಮಗೆ ಇದು ಹಂತ ಹಂತವಾಗಿ ನಿರ್ಮಿಸುವೆವು, ಮೂಲಭೂತ ಪ್ರಮಾಣೀಕರಣದಿಂದ ಪ್ರಾರಂಭಿಸಿ ನಂತರ ಡೇಟಾ ಪಡೆಯುವ ಸಾಮರ್ಥ್ಯಗಳನ್ನು ಸೇರಿಸುವುದು.
|
||||
|
||||
#### ಹಂತ 1: ಲಾಗಿನ್ ಫಂಕ್ಷನ್ ಆಧಾರಶಿಲೆಯನ್ನು ಸೃಷ್ಟಿಸಿ
|
||||
|
||||
ನಿಮ್ಮ `app.js` ಫೈಲ್ ತೆರೆಯಿರಿ ಮತ್ತು ಹೊಸ `login` ಫಂಕ್ಷನ್ ಸೇರಿಸಿ. ಇದು ಬಳಕೆದಾರದ ಪ್ರಮಾಣೀಕರಣ ಪ್ರಕ್ರಿಯೆ ನಿರ್ವಹಿಸುತ್ತದೆ:
|
||||
|
||||
```javascript
|
||||
async function login() {
|
||||
const loginForm = document.getElementById('loginForm');
|
||||
const user = loginForm.user.value;
|
||||
}
|
||||
```
|
||||
|
||||
**ಇದನ್ನು ನಾವು ವಿವರಿಸೋಣ:**
|
||||
- ಆ `async` ಕೀವರ್ಡ್? ಅದು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ಗೆ "ಈ ಫಂಕ್ಷನ್ ಕೆಲವು ಬಾರಿ ಕಾಯಬೇಕಾಗಬಹುದು" ಎಂದು ಹೇಳುತ್ತಿದೆ
|
||||
- ನಾವು ಪುಟದಿಂದ ಫಾರ್ಮ್ ಪಡೆದಿಕೊಂಡಿದ್ದೇವೆ (ಏನೂ ವಿಶೇಷವಿಲ್ಲ, ID ಮೂಲಕ ಹುಡುಕವಷ್ಟೇ)
|
||||
- ನಂತರ ಬಳಕೆದಾರ ಇಟ್ಟಿರುವ ವರ್ಗವನ್ನ ತೆಗೆದುಕೊಳ್ಳುತ್ತೇವೆ
|
||||
- ಇದು ದನಿ: ಫಾರ್ಮ್ ಇನ್ಪುಟ್ ಅನ್ನು ಅದರ `name` ಗುಣಲಕ್ಷಣದಿಂದ ನೇರವಾಗಿ ಆಕ್ಸೆಸ್ ಮಾಡಬಹುದು - ಹೆಚ್ಚುವರಿ getElementById ಕರೆಗಳ ಅವಶ್ಯಕತೆ ಇಲ್ಲ!
|
||||
|
||||
> 💡 **ಫಾರ್ಮ್ ಆಕ್ಸೆಸ್ ಮಾದರಿ**: ಪ್ರತಿಯೊಂದು ಫಾರ್ಮ್ ನಿಯಂತ್ರಣವು ಅದರ ಹೆಸರಿನ (HTML ನಲ್ಲಿ `name` ಗುಣಲಕ್ಷಣದ ಮೂಲಕ) ಪ್ರಾಪರ್ಟಿಯಾಗಿ ಫಾರ್ಮ್ ಎಲೆಮೆಂಟ್ನಲ್ಲಿ ನೇರವಾಗಿ ಲಭ್ಯವಿರುತ್ತದೆ. ಇದು ಫಾರ್ಮ್ ಡೇಟಾವನ್ನು ಸ್ವಚ್ಛವಾಗಿ, ಓದಲು ಸುಲಭವಾಗಿ ಪಡೆಯಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
|
||||
|
||||
#### ಹಂತ 2: ಖಾತೆ ಡೇಟಾ ಫೆಚಿಂಗ್ ಫಂಕ್ಷನ್ ಸೃಷ್ಟಿಸಿ
|
||||
|
||||
ಬೀಗದ ನಂತರ, ನಾವು ಸರ್ವರ್ನಿಂದ ಖಾತೆ ಡೇಟಾ ಪಡೆಯಲು ಬಳಸುವ ವಿಶಿಷ್ಟ ಫಂಕ್ಷನ್ ರಚಿಸುವೆವು. ಇದು ನಿಮ್ಮ ನೋಂದಣಿ ಫಂಕ್ಷನ್ನಿಗೆ ಸಮಾನ ರೀತಿ ಆದರೆ ಡೇಟಾ ಪಡೆಯುವಿಕೆಯ ಮೇಲೆ ಕೇಂದ್ರೀಕೃತವಾಗಿದೆ:
|
||||
|
||||
```javascript
|
||||
async function getAccount(user) {
|
||||
try {
|
||||
const response = await fetch('//localhost:5000/api/accounts/' + encodeURIComponent(user));
|
||||
return await response.json();
|
||||
} catch (error) {
|
||||
return { error: error.message || 'Unknown error' };
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**ಈ ಕೋಡ್ ಏನು ಸಾಧಿಸುತ್ತದೆ:**
|
||||
- **ಆಧುನಿಕ** `fetch` API ಅನ್ನು ಅಸಿಂಕ್ರೋನಸ್ ಅನ್ನು ವಿನಂತಿಸಲು ಬಳಸುತ್ತದೆ
|
||||
- **ಯೂಸರ್ ನೇಮ್** ಪರಾಮೀಟರ್తో ಗೇಟು ವಿನಂತಿಯ URL ರಚಿಸುತ್ತದೆ
|
||||
- **`encodeURIComponent()`** ಅನ್ನು URL ಗಳಲ್ಲಿ ವಿಶೇಷ ಅಕ್ಷರಗಳನ್ನು ಸುರಕ್ಷಿತವಾಗಿ ನಿಭಾಯಿಸಲು ಅನ್ವಯಿಸುತ್ತದೆ
|
||||
- ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು JSON ಸ್ವರೂಪಕ್ಕೆ ಪರಿವರ್ತಿಸುತ್ತದೆ, ಇದು ಡೇಟಾ ನಿರ್ವಹಣೆಗೆ ಸುಲಭ
|
||||
- ದೋಷಗಳನ್ನು ಸಂಕಷ್ಟದಿಂದ ತಪ್ಪಿಸುತ್ತಾ, ದೋಷ ವಸ್ತುವನ್ನು ಹಿಂತಿರುಗಿಸುವ ಮೂಲಕ gracefully ನಿರ್ವಹಿಸುತ್ತದೆ
|
||||
|
||||
> ⚠️ **ಭದ್ರತಾ ಟಿಪ್ಪಣಿ**: `encodeURIComponent()` ಕಾರ್ಯವಿಧಾನ URLಗಳ中特 ವಿಶೇಷ ಅಕ್ಷರಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ. ನೌಕಾ ಸಂವಹನದಲ್ಲಿ ಬಳಸುವ ಎನ್ಕೋಡಿಂಗ್ ವ್ಯವಸ್ಥೆಗಳಂತೆ, ಇದು ನಿಮ್ಮ ಸಂದೇಶ ನಿಖರವಾಗಿ ತಲುಪಿಸೋದು ಖಚಿತಪಡಿಸುತ್ತದೆ, "#" ಅಥವಾ "&" ಮುಂತಾದ ಅಕ್ಷರಗಳು ತಪ್ಪಾಗಿ ಅರ್ಥಹೀನವಾಗದಂತೆ ತಡೆಯುತ್ತದೆ.
|
||||
>
|
||||
**ಇದಕ್ಕೆ ಏಕೆ ಮಹತ್ವವಿದೆ:**
|
||||
- ವಿಶೇಷ ಅಕ್ಷರಗಳು URLಗಳನ್ನು ಕೆಡು ಮುಗಿಸುವುದನ್ನು ತಡೆಯುತ್ತದೆ
|
||||
- URL ತಿದ್ದುಪಡಿ ದಾಳಿಗಳಿಂದ ರಕ್ಷಣೆ ನೀಡುತ್ತದೆ
|
||||
- ನಿಮ್ಮ ಸರ್ವರ್ ಆವಶ್ಯಕ ಮಾಹಿತಿಯನ್ನು ಪಡೆಯುತ್ತದೆ
|
||||
- ಭದ್ರತೆಯಂತೆ ಕಾರ್ಯಕ್ರಮ ಬರೆಯುವ ಅಭ್ಯಾಸ ಅನುಸರಿಸುತ್ತದೆ
|
||||
|
||||
#### HTTP GET ವಿನಂತಿಗಳನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು
|
||||
|
||||
ನೀವು `fetch` ಬಳಸುವಾಗ ಯಾವುದೇ ಹೆಚ್ಚುವರಿ ಆಯ್ಕೆಗಳನ್ನು ನೀಡದೆ ಇರೋದಾದರೆ, ಅದು ಸ್ವಯಂಚಾಲಿತವಾಗಿ [`GET`](https://developer.mozilla.org/docs/Web/HTTP/Methods/GET) ವಿನಂತಿಯನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ. ನಾವು ಮಾಡುತ್ತಿರುವುದು ಪರಿಪೂರ್ಣ: ಸರ್ವರ್ ಗೆ "ನಾನು ಈ ಬಳಕೆದಾರನ ಖಾತೆ ಡೇಟಾ ನೋಡಬಹುದೇ?" ಎಂದು ಕೇಳುವುದು.
|
||||
|
||||
GET ವಿನಂತಿಗಳನ್ನು ಗ್ರಂಥಾಲಯದಿಂದ ಪುಸ್ತಕವನ್ನು ಬೇಧಿಕೊಳ್ಳುವಂತೆ ಭಾವಿಸಬಹುದು - ನೀವು ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವುದನ್ನು ನೋಡಲು ಕೇಳುತ್ತಿದ್ದಾರೆ. POST ವಿನಂತಿಗಳು (ನೋಂದಣಿಗಾಗಿ ನಾವು ಬಳಸಿದ್ದದ್ದು) ಹೊಸ ಪುಸ್ತಕವನ್ನು ಸೇರಿಸುವಂತೆ.
|
||||
|
||||
| GET ವಿನಂತಿ | POST ವಿನಂತಿ |
|
||||
|-------------|-------------|
|
||||
| **ಉದ್ದೇಶ** | ಈಗಾಗಲೇ ಇರುವ ಡೇಟಾ ಪಡೆಯುವುದು | ಹೊಸ ಡೇಟಾವನ್ನು ಸರ್ವರ್ಗೆ ಕಳುಹಿಸುವುದು |
|
||||
| **ಪ್ಯಾರಾಮೀಟರ್ಗಳು** | URL ಪಥ/ವಿಚಾರ ಸರಣಿ ಯಲ್ಲಿ | ವಿನಂತಿ ದೇಹದಲ್ಲಿ |
|
||||
| **ಕ್ಯಾಶಿಂಗ್** | ಬ್ರೌಸರ್ಗಳು ಕ್ಯಾಶ್ ಮಾಡಬಹುದು | ಸಾಮಾನ್ಯವಾಗಿ ಕ್ಯಾಶ್ ಮಾಡದು |
|
||||
| **ಭದ್ರತೆ** | URL/ಲಾಗ್ಗಳಲ್ಲಿ ಕಾಣಿಸುತ್ತದೆ | ವಿನಂತಿ ದೇಹದಲ್ಲಿ ಮರೆಮಾಚಲ್ಪಟ್ಟಿದೆ |
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant B as ಬ್ರೌಸರ್
|
||||
participant S as ಸರ್ವರ್
|
||||
|
||||
Note over B,S: GET ವಿನಂತಿ (ದತ್ತಾಂಶ ಪಡೆಯುವುದು)
|
||||
B->>S: GET /api/accounts/test
|
||||
S-->>B: 200 OK + ಖಾತೆ ದತ್ತಾಂಶ
|
||||
|
||||
Note over B,S: POST ವಿನಂತಿ (ದತ್ತಾಂಶ ಸಲ್ಲಿಕೆ)
|
||||
B->>S: POST /api/accounts + ಹೊಸ ಖಾತೆ ದತ್ತಾಂಶ
|
||||
S-->>B: 201 ರಚಿಸಲಾಯಿತು + ದೃಢೀಕರಣ
|
||||
|
||||
Note over B,S: ದೋಷ ನಿರ್ವಹಣೆ
|
||||
B->>S: GET /api/accounts/nonexistent
|
||||
S-->>B: 404 ಕಂಡುಬರುವುದಿಲ್ಲ + ದೋಷ ಸಂದೇಶ
|
||||
```
|
||||
#### ಹಂತ 3: ಎಲ್ಲವನ್ನೂ ಒಟ್ಟಿಗೆ ಸಂಪರ್ಕಿಸುವುದು
|
||||
|
||||
ಈಗ ಸಮಾಧಾನಕಾರಿ ಹಂತ - ನಿಮ್ಮ ಖಾತೆ ಪಡೆಯುವ ಫಂಕ್ಷನ್ ಅನ್ನು ಲಾಗಿನ್ ಪ್ರಕ್ರಿಯೆಗೆ ಸಂಪರ್ಕಿಸೋಣ. ಎಲ್ಲವೂ ಇಲ್ಲಿ ಸ_free_বাংলবান್ಥಿ:
|
||||
|
||||
```javascript
|
||||
async function login() {
|
||||
const loginForm = document.getElementById('loginForm');
|
||||
const user = loginForm.user.value;
|
||||
const data = await getAccount(user);
|
||||
|
||||
if (data.error) {
|
||||
return console.log('loginError', data.error);
|
||||
}
|
||||
|
||||
account = data;
|
||||
navigate('/dashboard');
|
||||
}
|
||||
```
|
||||
|
||||
ಈ ಫಂಕ್ಷನ್ ಸ್ಪಷ್ಟ ಕ್ರಮವನ್ನು ಅನುಸರಿಸುತ್ತದೆ:
|
||||
- ಫಾರ್ಮ್ ಇಲಿನಪ್ಕೆಂದಿರುವ ಬಳಕೆದಾರ ಹೆಸರನ್ನು ತೆಗೆಯುವುದು
|
||||
- ಸರ್ವರ್ನಿಂದ ಬಳಕೆದಾರ ಖಾತೆ ಡೇಟಾವನ್ನು ವಿನಂತಿಸು
|
||||
- ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ಸಂಭವಿಸುವ ದೋಷಗಳನ್ನು ನಿರ್ವಹಿಸು
|
||||
- ಯಶಸ್ವಿಯಾದಾಗ ಖಾತೆ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಿ, ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗೆ ನಾವಿಗೇಟ್ ಮಾಡು
|
||||
|
||||
> 🎯 **ಅಸಿಂಕ್/ಅವೇಟ್ ಮಾದರಿ**: `getAccount` ಅಸಿಂಕ್ರೋನಸ್ ಫಂಕ್ಷನ್ ಆದ್ದರಿಂದ ನಾವು `await` ಕೀವರ್ಡ್ ಬಳಸಿ ಸರ್ವರ್ ಪ್ರತಿಕ್ರಿಯೆ ಬರುವವರೆಗೆ ಕಾರ್ಯನಿರ್ವಹಣೆಯನ್ನು ನಿಲ್ಲಿಸುತ್ತೇವೆ. ಇದು ಅನಿಯಂತ್ರಿತ ಡೇಟಾದೊಂದಿಗೆ ಮುಂದುವರೆಯದಂತೆ ತಡೆಯುತ್ತದೆ.
|
||||
|
||||
#### ಹಂತ 4: ನಿಮ್ಮ ಡೇಟಾ ಉಳಿಸುವ ಸ್ಥಳವನ್ನು ರಚಿಸುವುದು
|
||||
|
||||
ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ಲೋಡ್ ಆದ ನಂತರ ಖಾತೆ ಮಾಹಿತಿಯನ್ನು ನೆನಪಿಸಿಕೊಳ್ಳಲು ಒಂದೊಂದು ಸ್ಥಳ ಬೇಕು. ಇದನ್ನು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ನ ಶಾರ್ಟ್-ಟರ್ಮ್ ಮೆಮೊರಿ ಎಂದು ಭಾವಿಸಿ - ಪ್ರಸ್ತುತ ಬಳಕೆದಾರರ ಡೇಟಾ ತಿರುಗಿ ಬಳಸುವ ಸ್ಥಳ. `app.js` ಫೈಲ್ನ ಮೇಲ್ಭಾಗದಲ್ಲಿ ಈ ಸಾಲು ಸೇರಿಸಿ:
|
||||
|
||||
```javascript
|
||||
// ಇದು ಪ್ರಸ್ತುತ ಬಳಕೆದಾರನ ಖಾತೆ ಡೇಟಾವನ್ನು ಹಿಡಿದಿಡುತ್ತದೆ
|
||||
let account = null;
|
||||
```
|
||||
|
||||
**ನಾವು ಇದನ್ನು ಯಾಕೆ ಬೇಕು:**
|
||||
- ಅಪ್ಲಿಕೇಶನ್ನಿಂದ ಎಲ್ಲಡೆ ಖಾತೆ ಡೇಟಾ ಪ್ರವೇಶ ಸಾಧ್ಯವಾಗುತ್ತದೆ
|
||||
- ಪ್ರಾರಂಭದಲ್ಲಿ `null` ಅಂದರೆ "ಯಾರೂ ಲಾಗಿನ್ ಆಗುತ್ತಿಲ್ಲ" ಎಂಬ ಅರ್ಥ
|
||||
- ಯಾರಾದರೂ ಯಶಸ್ವಿಯಾಗಿ ಲಾಗಿನ್ ಅಥವಾ ನೋಂದಣಿ ಮಾಡಿದಾಗ ಅಪ್ಡೇಟ್ ಆಗುತ್ತದೆ
|
||||
- ಏಕಮಾತ್ರ ನಿಜವಾದ ಮೂಲವಾಗಿದ್ದು, ಯಾರು ಲಾಗಿನ್ ಆಗಿದ್ದಾರೆ ಎಂಬ ಗೊಂದಲವಿಲ್ಲ
|
||||
|
||||
#### ಹಂತ 5: ನಿಮ್ಮ ಫಾರ್ಮ್ ಅನ್ನು ಸಂಪರ್ಕಿಸಿ
|
||||
|
||||
ಈಗ ನಿಮ್ಮ ಹೊಸ ಲಾಗಿನ್ ಫಂಕ್ಷನ್ ಅನ್ನು HTML ಫಾರ್ಮ್ ಗೆ ಸಂಪರ್ಕಿಸೋಣ. ಫಾರ್ಮ್ ಟ್ಯಾಗ್ ಹೀಗಾಗಿ ಅಪ್ಡೇಟ್ ಮಾಡಿ:
|
||||
|
||||
```html
|
||||
<form id="loginForm" action="javascript:login()">
|
||||
<!-- Your existing form inputs -->
|
||||
</form>
|
||||
```
|
||||
|
||||
**ಈ ಸಣ್ಣ ಬದಲಾವಣೆ ಏನು ಮಾಡುತ್ತದೆ:**
|
||||
- ಫಾರ್ಮ್ ತನ್ನ ಡೀಫಾಲ್ಟ್ "ಸಂಪೂರ್ಣ ಪುಟವನ್ನು ಮರುಲೋಡ್ ಮಾಡು" ನಡವಳಿಕೆ ನಿಲ್ಲಿಸುತ್ತದೆ
|
||||
- ನಿಮ್ಮ ಕಸ್ಟಮ್ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಫಂಕ್ಷನ್ಗೆ ಕರೆ ಮಾಡುತ್ತದೆ
|
||||
- ಎಲ್ಲವೂ ಸರಾಗ ಮತ್ತು ಸಿಂಗಲ್-ಪುಟ ಅಪ್ಲಿಕೇಶನ್ ನೆನಪಿಸಿಕೊಳ್ಳುತ್ತದೆ
|
||||
- ಬಳಕೆದಾರರು "ಲಾಗಿನ್" ಬಟನ್ ಒತ್ತಿದಾಗ ಸಂಪೂರ್ಣ ನಿಯಂತ್ರಣ ನಿಮಗೆ ಲಭಿಸುತ್ತದೆ
|
||||
|
||||
#### ಹಂತ 6: ನಿಮ್ಮ ನೋಂದಣಿ ಫಂಕ್ಷನ್ನನ್ನು ಸುಧಾರಿಸಿ
|
||||
|
||||
ಸಮಾನತೆಯಿಗಾಗಿ, ನಿಮ್ಮ `register` ಫಂಕ್ಷನನ್ನು ಹೊಸ ಮೂಲಗಳಿಂದ ಖಾತೆ ಡೇಟಾ ಉಳಿಸುವುದು ಮತ್ತು ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗೆ ನಾವಿಗೇಟ್ ಮಾಡುವಂಥದಾಗಿ ಅಪ್ಡೇಟ್ ಮಾಡಿ:
|
||||
|
||||
```javascript
|
||||
// ನಿಮ್ಮ register ಫಂಕ್ಷನ್ನ ಕೊನೆಯಲ್ಲಿ ಈ ಸಾಲುಗಳನ್ನು ಸೇರಿಸಿ
|
||||
account = result;
|
||||
navigate('/dashboard');
|
||||
```
|
||||
|
||||
**ಈ ಸುಧಾರಣೆ ನೀಡುತ್ತದೆ:**
|
||||
- ನೋಂದಣಿಯಿಂದ ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗೆ ತಿರುವು ಸೌಕರ್ಯ
|
||||
- ಲಾಗಿನ್ ಮತ್ತು ನೋಂದಣಿ ಪ್ರಕ್ರಿಯೆಗಳ ನಡುವಣ ಸಮಾನ ಅನುಭವ
|
||||
- ಯಶಸ್ವಿ ನೋಂದಣಿಯ ನಂತರ ತಕ್ಷಣ ಖಾತೆ ಡೇಟಾ ಲಭ್ಯತೆ
|
||||
|
||||
#### ನಿಮ್ಮ ಅನುಷ್ಠಾನವನ್ನು ಪರೀಕ್ಷಿಸಿ
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
A[ಬಳಕೆದಾರರು ಪ್ರಾಮಾಣಿಕತೆ ನಮೂದಿಸುತ್ತಾರೆ] --> B[ಲಾಗಿನ್ ಕಾರ್ಯವನ್ನು ಕರೆಸಲಾಗುತ್ತದೆ]
|
||||
B --> C[ಸರ್ವರ್ನಿಂದ ಖಾತೆ ಡೇಟಾವನ್ನು ಹಿಂಪಡೆಯಿರಿ]
|
||||
C --> D{ಡೇಟಾ ಯಶಸ್ವಿಯಾಗಿ ಸ್ವೀಕರಿಸಲಾಯಿತು?}
|
||||
D -->|ಹೌದು| E[ಖಾತೆ ಡೇಟಾವನ್ನು ಜಾಗತಿಕವಾಗಿ ಸಂಗ್ರಹಿಸಿ]
|
||||
D -->|ಇಲ್ಲ| F[ದೋಷ ಸಂದೇಶವನ್ನು ತೋರಿಸಿ]
|
||||
E --> G[ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗೆ ನಾವಿಗೇಟ್ ಮಾಡಿ]
|
||||
F --> H[ಬಳಕೆದಾರರು ಲಾಗಿನ್ ಪುಟದಲ್ಲಿ ನಿಲ್ಲುತ್ತಾರೆ]
|
||||
```
|
||||
**ಈಗ ಅದನ್ನು ಪರೀಕ್ಷಿಸಲು ಸಮಯ:**
|
||||
1. ಹೊಸ ಖಾತೆ ಸೃಷ್ಟಿಸಿ ಎಲ್ಲವೂ ಸರಿಯಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತಿದೆಯೆ ನೋಡಿ
|
||||
2. ಅದೇ ಸಕ್ರಿಯತೆಗಳನ್ನು ಬಳಸಿ ಲಾಗಿನ್ ಪ್ರಯತ್ನಿಸಿ
|
||||
3. ಇಲ್ಲವಿದ್ದಲ್ಲಿ ಬ್ರೌಸರ್ ಕಾಂಸೋಲ್ನಲ್ಲಿ (F12) ತಪಾಸಿಸಿ
|
||||
4. ಯಶಸ್ವಿ ಲಾಗಿನ್ ನಂತರ ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗೆ ಹೋಗುತ್ತಿದ್ದೀರಾ ಎಂದು ಖಚಿತಗೊಳ್ಳಿ
|
||||
|
||||
ಯಾವುದಾದರೂ ತಪ್ಪಿದ್ದಲ್ಲಿ, ಭಯಪಡುವ ಅಗತ್ಯವಿಲ್ಲ! ಹೆಚ್ಚಿನ ಸಮಸ್ಯೆಗಳು ನುಡಿಪಟಗಳ ಹಾಗಿರುವ ಸರಳ ದೋಷಗಳಾಗಿರುತ್ತವೆ ಅಥವಾ API ಸರ್ವರ್ ಪ್ರಾರಂಭಿಸಲು ಮರೆಯುವಂತಿರುವ ಪರಿಸ್ಥಿತಿ.
|
||||
|
||||
#### ಕ್ರಾಸ್-ಓರಿಜಿನ್ ಮೈಜಿಕ್ ಬಗ್ಗೆ ಚುಟುಕು ಮಾತು
|
||||
|
||||
ನೀವು ಆಶ್ಚರ್ಯಪಡುವಿರಾ: "ನನ್ನ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ ಮತ್ತು API ಸರ್ವರ್ ಭಿನ್ನ ಪೋರ್ಟುಗಳ ಮೇಲೆ ಚಾಲನೆ ಆಗುತ್ತಿದೆಯಾದರೂ, ಅವುಗಳು ಹೇಗೆ ಸಂವಹನ ಮಾಡುತ್ತಿವೆ?" ಅದ್ಭುತ ಪ್ರಶ್ನೆ! ಈ ವಿಷಯವೇ ಪ್ರತಿಯೊಂದು ವೆಬ್ ಡೆವಲಪರ್ ಇಡೆ ಹತ್ತಿರದಿಂದ ಎದುರಿಸುವುದು.
|
||||
|
||||
> 🔒 **ಕ್ರಾಸ್-ಓರಿಜಿನ್ ಭದ್ರತೆ**: ಬ್ರೌಸರ್ಗಳು "ಒಂದೇ ಮೂಲತೆ ನীতি" ಹಮ್ಮಿಕೊಂಡಿದ್ದು, ವಿಭಿನ್ನ ಡೊಮೇನ್ಗಳ ನಡುವೆ ಅನಧಿಕೃತ ಸಂವಹನವನ್ನು ತಡೆಯುತ್ತವೆ. ಪೆಂಟಾಗನ್ ತಪಾಸಣಾ ಕೇಂದ್ರದಂತೆ, ಅವು ಸಂವಹನಸಾಧ್ಯವೆಂದು ಖಚಿತಪಡಿಸಿಕೊಂಡ ಬಳಿಕ ಮಾತ್ರ ಡೇಟಾ ವರ್ಗಾವಣೆ ಅನುಮತಿಸುತ್ತವೆ.
|
||||
>
|
||||
**ನಮ್ಮ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ:**
|
||||
- ನಿಮ್ಮ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ `localhost:3000`(ಡೆವಲಪ್ಮೆಂಟ್ ಸರ್ವರ್) ನಲ್ಲಿ ಜಾರುತ್ತಿದೆ
|
||||
- ನಿಮ್ಮ API ಸರ್ವರ್ `localhost:5000` (ಬ್ಯಾಕ್ಎಂಡ್ ಸರ್ವರ್) ನಲ್ಲಿ ಜಾರುತ್ತಿದೆ
|
||||
- API ಸರ್ವರ್ CORS ಹೆಡರ್ಗಳನ್ನು ಹೊಂದಿದ್ದು ನಿಮ್ಮ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ ಸಂವಹನಕ್ಕೆ ಸ್ಪಷ್ಟ ಅನುಮತಿ ನೀಡುತ್ತದೆ
|
||||
|
||||
ಈ ಸಂರಚನೆ ಯೋಚಿಸೋಣವು ಹೀಗಿದೆ: ಫ್ರಂಟ್ಎಂಡ್ ಮತ್ತು ಬ್ಯಾಕ್ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ವಿಭಿನ್ನ ಸರ್ವರ್ಗಳಲ್ಲಿ ಚಲಿಸುತ್ತವೆ.
|
||||
|
||||
> 📚 **ಹೆಚ್ಚು ಕಲಿಯಿರಿ**: APIಗಳು ಮತ್ತು ಡೇಟಾ ಪಡೆಯುವಿಕೆ ಕುರಿತ ಈ [Microsoft Learn ಮೋಡ್ಯೂಲ್](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art/?WT.mc_id=academic-77807-sagibbon) ಮೂಲಕ ಆಳವಾಗಿ ತಿಳಿಯಿರಿ.
|
||||
|
||||
## HTML ನಲ್ಲಿ ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಜೀವಂತಗೊಳಿಸುವುದು
|
||||
|
||||
ಈಗ ನಾವು ಪಡೆಯಲಾದ ಡೇಟಾವನ್ನು ಬಳಕೆದಾರರಿಗೆ DOM ಮಾದರಿಯಲ್ಲಿ ತೋರಿಸೋಣ. ಡಾರ್ಕ್ರೂಮ್ನಲ್ಲಿ ಫೋಟೋಗಳನ್ನು ಪ್ರಕ್ರಿಯೆ ಮಾಡುವಂತೆ, ನಾವು ಅದೊಂದ -*ನಿರೀಕ್ಷಿಸಲಾಗದ* ಡೇಟಾವನ್ನು ತೆರೆದಡೆದುಕೊಳ್ಳುವ ಹಾಗೂ ಬಳಕೆದಾರರೊಂದಿಗೆ ಸಂವಾದ ಮಾಡಬಲ್ಲ ಮಾದರಿಯಲ್ಲಿಗೆ ಪರಿವರ್ತಿಸುತ್ತೇವೆ.
|
||||
DOM ಮ್ಯಾನಿಪುಲೇಶನ್ ಅಂದರೆ ಸ್ಥಿರ ವೆಬ್ ಪುಟಗಳನ್ನು ಸಕ್ರಿಯ ಅಪ್ಲಿಕೇಶನ್ಗಳಾಗಿ ಪರಿವರ್ತಿಸುವ ತಂತ್ರಜ್ಞಾನ, ಅದು ಬಳಕೆದಾರರ ಸಂವಹನ ಮತ್ತು ಸರ್ವರ್ ಪ್ರತಿಕ್ರಿಯೆಗಳ ಆಧಾರದ ಮೇಲೆ ಅವರ ವಿಷಯವನ್ನು ನವೀಕರಿಸುತ್ತದೆ.
|
||||
|
||||
### ಕೆಲಸಕ್ಕೆ ಸರಿಯಾದ ಉಪಕರಣವನ್ನು ಆಯ್ಕೆಮಾಡುವುದು
|
||||
|
||||
ನೀವು ನಿಮ್ಮ HTML ಅನ್ನು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಮೂಲಕ ನವೀಕರಿಸುವಾಗ, ಹಲವಾರು ಆಯ್ಕೆಗಳಿವೆ. ಇದನ್ನು ಉಪಕರಣಸಂಚಯದಲ್ಲಿರುವ ವಿಭಿನ್ನ ಸಾಧನಗಳಂತೆ ಪರಿಗಣಿಸಿ - ಪ್ರತಿ ಉಪಕರಣವು ವಿಶೇಷ ಕೆಲಸಗಳಿಗೆ ಸೂಕ್ತವಾಗಿದೆ:
|
||||
|
||||
| ವಿಧಿ | ಇದರ ಉತ್ತಮ ಪ್ರಯೋಜನಗಳು | ಯಾವಾಗ ಬಳಸಬೇಕು | ಸುರಕ್ಷತಾ ಮಟ್ಟ |
|
||||
|--------|---------------------|----------------|--------------|
|
||||
| `textContent` | ಬಳಕೆದಾರರ ಡೇಟಾವನ್ನು ಸುರಕ್ಷಿತವಾಗಿ ಪ್ರದರ್ಶಿಸುವುದು | ನೀವು ಎಡ ಪರೀಕ್ಷೆಗೆ ಬರೆದು ತೋರಿಸುವಾಗ | ✅ ದೃಢವಾಗಿರುತ್ತದೆ |
|
||||
| `createElement()` + `append()` | ಸಂಕೀರ್ಣ ವಿನ್ಯಾಸಗಳನ್ನು ನಿರ್ಮಿಸುವುದು | ಹೊಸ ವಿಭಾಗಗಳು/ಪಟ್ಟಿಗಳನ್ನು ರಚಿಸುವಾಗ | ✅ ಬಲವಾದದು |
|
||||
| `innerHTML` | HTML ವಿಷಯವನ್ನು ಹೊಂದಿಸುವುದು | ⚠️ ಇದನ್ನು ತಪ್ಪಿಸಲು ಪ್ರಯತ್ನಿಸಿ | ❌ ಅಪಾಯಕರವಾಗಿದೆ |
|
||||
|
||||
#### ಪಠ್ಯವನ್ನು ಸುರಕ್ಷಿತವಾಗಿ ತೋರಿಸುವ ಮಾರ್ಗ: textContent
|
||||
|
||||
[`textContent`](https://developer.mozilla.org/docs/Web/API/Node/textContent) ಗುಣಲಕ್ಷಣವು ಬಳಕೆದಾರರ ಅಥವಾ ಅನ್ಯ ಪಠ್ಯವನ್ನು ತೋರಿಸುವಾಗ ನಿಮ್ಮ ಅತ್ಯುತ್ತಮ ಗೆಳೆಯ. ಇದು ನಿಮ್ಮ ವೆಬ್ಪೇಜ್ಗೆ ಬೌನ್ಸರ್ ಇದ್ದಂತೆ - ಏನೇನೇ ಹಾನಿಕಾರಕವೇ ಇಲ್ಲದೆ ತಲುಪುತ್ತದೆ:
|
||||
|
||||
```javascript
|
||||
// ಪಠ್ಯವನ್ನು ನವೀಕರಿಸುವ ಸುರಕ್ಷಿತ, ನಂಬಬಹುದಾದ ವಿಧಾನ
|
||||
const balanceElement = document.getElementById('balance');
|
||||
balanceElement.textContent = account.balance;
|
||||
```
|
||||
|
||||
**textContent ನ ಲಾಭಗಳು:**
|
||||
- ಎಲ್ಲವನ್ನೂ ಸರಳ ಪಠ್ಯವಾಗಿ ಪರಿಗಣಿಸುತ್ತದೆ (ಸ್ಕ್ರಿಪ್ಟ್ ಕಾರ್ಯ ನಿರ್ವಹಣೆಯನ್ನು ತಡೆಯುತ್ತದೆ)
|
||||
- ಮುಂಗಡದಲ್ಲಿರುವ ವಿಷಯವನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ತೆರವುಗೊಳಿಸುತ್ತದೆ
|
||||
- ಸರಳ ಪಠ್ಯ ನವೀಕರಣಗಳಿಗೆ ಪರಿಣಾಮಕಾರಿಯಾಗಿದೆ
|
||||
- ದುಷ್ಟ ವಿಷಯಗಳಿಂದ ರಕ್ಷಣೆಗಾಗಿ ಒಳಗಿರುವ ಸುರಕ್ಷತೆ ಒದಗಿಸುತ್ತದೆ
|
||||
|
||||
#### ಡೈನಾಮಿಕ್ HTML ಅಂಶಗಳನ್ನು ರಚಿಸುವುದು
|
||||
|
||||
ಹೆಚ್ಚಿನ ಸಂಕೀರ್ಣ ವಿಷಯಕ್ಕಾಗಿ, [`document.createElement()`](https://developer.mozilla.org/docs/Web/API/Document/createElement) ಅನ್ನು [`append()`](https://developer.mozilla.org/docs/Web/API/ParentNode/append) ವಿಧಾನೊಡನೆ ಸಂಯೋಜಿಸಿ:
|
||||
|
||||
```javascript
|
||||
// ಹೊಸ ಅಂಶಗಳನ್ನು ರಚಿಸುವ ಸುರಕ್ಷಿತ ವಿಧಾನ
|
||||
const transactionItem = document.createElement('div');
|
||||
transactionItem.className = 'transaction-item';
|
||||
transactionItem.textContent = `${transaction.date}: ${transaction.description}`;
|
||||
container.append(transactionItem);
|
||||
```
|
||||
|
||||
**ಈ ವಿಧಾನವನ್ನು ತಿಳಿದುಕೊಳ್ಳುವುದು:**
|
||||
- ಹೊಸ DOM ಅಂಶಗಳನ್ನು ಪ್ರೋಗ್ರಾಮ್ ತಂತ್ರದೊಂದಿಗೆ ಸೃಷ್ಟಿಸುತ್ತದೆ
|
||||
- ಅಂಶದ ಗುಣಲಕ್ಷಣಗಳು ಮತ್ತು ವಿಷಯದ ಮೇಲೆ ಪೂರ್ಣ ನಿಯಂತ್ರಣವನ್ನು ಕಾಯ್ದುಕೊಳ್ಳುತ್ತದೆ
|
||||
- ಸಂಕೀರ್ಣ, ಗಂಟಲಿನೊಳಗಿನ ಅಂಶ სტ್ರಕ್ಚರ್ಗಳನ್ನು ಸಹ ಅನುಮತಿಸುತ್ತದೆ
|
||||
- ರಚನೆ ಮತ್ತು ವಿಷಯವನ್ನು ವಿಭಜಿಸುವುದರಿಂದ ಸುರಕ್ಷತೆ ಕಾಯ್ದಿರುತ್ತದೆ
|
||||
|
||||
> ⚠️ **ಸುರಕ್ಷತಾ ಪರಿಗಣನೆ**: ಹಲವಾರು ಪಾಠಗಳಲ್ಲಿ [`innerHTML`](https://developer.mozilla.org/docs/Web/API/Element/innerHTML) ಕಾಣಸಿಗಬಹುದು, ಅದು ನೇರವಾಗಿ ಸೇರ್ಪಡೆ ಮಾಡಿದ ಸ್ಕ್ರಿಪ್ಟುಗಳು ನಡೆಸಬಹುದು. CERNನಲ್ಲಿ ಅನುಮತಿಸದ ಕೋಡ್ ಅನ್ವಯವನ್ನು ತಡೆಯುವ ಸುರಕ್ಷತಾ ನಿಯಮಾವಳಿಗಳಂತೆ, `textContent` ಮತ್ತು `createElement` ಉಪಯೋಗಿಸುವುದು ಹೆಚ್ಚು ಸುರಕ್ಷಿತ ಪರ್ಯಾಯಗಳು.
|
||||
>
|
||||
**innerHTML ನ ಅಪಾಯಗಳು:**
|
||||
- ಬಳಕೆದಾರರ ಡೇಟಾದ `<script>` ಟ್ಯಾಗ್ಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ
|
||||
- ಕೋಡ್ ಇಂಜೆಕ್ಷನ್ ದಾಳಿಗೆ ಒಳಪಡಬಹುದಾಗಿದೆ
|
||||
- ಭದ್ರತಾ ಭಂಗಗಳಿಗೆ ಅವಕಾಶ ಸೃಷ್ಟಿಸುತ್ತದೆ
|
||||
- ನಾವು ಉಪಯೋಗಿಸುವ ಸುರಕ್ಷಿತ ಪರ್ಯಾಯಗಳು ಸಮಾನ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಒದಗಿಸುತ್ತವೆ
|
||||
|
||||
### ದೋಷಗಳನ್ನು ಬಳಕೆದಾರ ಸ್ನೇಹಿಯಾಗಿ ಮಾಡುವುದು
|
||||
|
||||
ಈಗಾಗಲೇ, ಲಾಗಿನ್ ದೋಷಗಳು ಬ್ರೌಸರಿನ ಕಾನ್ಸೋಲ್ನಲ್ಲಿ ಮಾತ್ರ ತೋರುತ್ತಿವೆ, ಅದು ಬಳಕೆದಾರರಿಗೆ ಗೋಚರಿಸುವುದಿಲ್ಲ. ಪೈಲಟ್ನ ಆಂತರಿಕ ನಿರ್ಣಯಗಳ ಮತ್ತು ಪ್ರಯಾಣಿಕರ ಮಾಹಿತಿ ವ್ಯವಸ್ಥೆಯ ನಡುವಿನ ಭೇದದಂತೆ, ನಾವು ಸರಿಯಾದ ಮಾರ್ಗದಲ್ಲಿ ಪ್ರಮುಖ ಮಾಹಿತಿಯನ್ನು ನುಡಿಸಲು ಅಗತ್ಯವಿದೆ.
|
||||
|
||||
ದೋಷ ಸಂದೇಶಗಳನ್ನು ಗೋಚರಿಸುವ ಮೂಲಕ ಬಳಕೆದಾರರಿಗೆ ತಕ್ಷಣದ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ನೀಡಬಹುದು, ಏನು ತಪ್ಪು ಆಗಿದೆ ಮತ್ತು ಮುಂದೆ ಏನು ಮಾಡಬೇಕು ಎಂಬುದನ್ನು ತಿಳಿಸಲು.
|
||||
|
||||
#### ಹೆಜ್ಜೆ 1: ದೋಷ ಸಂದೇಶಗಳಿಗಾಗಿ ಸ್ಥಳ ಸೇರಿಸುವುದು
|
||||
|
||||
ಮೊದಲು, ನಿಮ್ಮ HTML ನಲ್ಲಿ ದೋಷ ಸಂದೇಶಗಳಿಗೆ ಮನೆ ನೀಡೋಣ. ಲಾಗಿನ್ ಬಟನ್ ಮುಂದೆ ಇದನ್ನು ಸೇರಿಸಿ, ಇದರಿಂದ ಬಳಕೆದಾರರು ಸಹಜವಾಗಿ ನೋಡುತ್ತಾರೆ:
|
||||
|
||||
```html
|
||||
<!-- This is where error messages will appear -->
|
||||
<div id="loginError" role="alert"></div>
|
||||
<button>Login</button>
|
||||
```
|
||||
|
||||
**ಇಲ್ಲಿ ಏನು ಆಗುತ್ತಿದೆ:**
|
||||
- ನಾವು ಖಾಲಿ ಕಂಟೈನರ್ ಸೃಷ್ಟಿಸುತ್ತಿದ್ದೇವೆ, ಅದು ಅಗತ್ಯವಿದ್ದಾಗ ಮಾತ್ರ ಗೋಚರಿಸುತ್ತದೆ
|
||||
- ಅದು ಬಳಕೆದಾರರು "Login" ಕ್ಲಿಕ್ ಮಾಡಿದ ನಂತರ ಸಹಜವಾಗಿ ನೋಡಲಿರುವ ಸ್ಥಳದಲ್ಲಿದೆ
|
||||
- ಅಲ್ಲಿ ಇರುವ `role="alert"` ಸ್ಕ್ರೀನ್ ರೀಡರ್ಗಳಿಗೆ ಮಾಹಿತಿ ನೀಡುತ್ತದೆ - "ಇದು ಮಹತ್ವದದ್ದು!"
|
||||
- ವಿಶಿಷ್ಟ `id` ನಮ್ಮ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ಗೆ ಸುಲಭ ಗುರಿ ಒದಗಿಸುತ್ತದೆ
|
||||
|
||||
#### ಹೆಜ್ಜೆ 2: ಉಪಯುಕ್ತ ಸಹಾಯಕ ಕಾರ್ಯವನ್ನು ರಚಿಸುವುದು
|
||||
|
||||
ಯಾವುದೇ ಅಂಶದ ಪಠ್ಯವನ್ನು ನವೀಕರಿಸಬಹುದಾದ ಒಂದು ಸರಳ ಕಾರ್ಯವನ್ನು ರಚಿಸೋಣ. ಇದು "ಒಂದು ಬಾರಿ ಬರೆದು ಎಲ್ಲೆಡೆ ಉಪಯೋಗಿಸು" ಮಾದರಿಯ ಕಾರ್ಯ:
|
||||
|
||||
```javascript
|
||||
function updateElement(id, text) {
|
||||
const element = document.getElementById(id);
|
||||
element.textContent = text;
|
||||
}
|
||||
```
|
||||
|
||||
**ಈ ಕಾರ್ಯದ ಲಾಭಗಳು:**
|
||||
- ಒಂದು ಅಂಶದ ಐಡಿ ಮತ್ತು ಪಠ್ಯವನ್ನು ಮಾತ್ರ ಬೇಕು
|
||||
- DOM ಅಂಶಗಳನ್ನು ಸುರಕ್ಷಿತವಾಗಿ ಹುಡುಕಿ ನವೀಕರಿಸುತ್ತದೆ
|
||||
- ಪುನರಾಯೋಜನೀಯ ಮಾದರಿಯನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ
|
||||
- ಸಂಪೂರ್ಣ ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿ ಸಮಾನ ನವೀಕರಣ ಕ್ರಮ ಕಾಯ್ದಿರಿಸುತ್ತದೆ
|
||||
|
||||
#### ಹೆಜ್ಜೆ 3: ದೋಷಗಳನ್ನು ಬಳಕೆದಾರರಿಗೆ ಕಾಣುವಂತೆ ತೋರಿಸುವುದು
|
||||
|
||||
ಈಗ ಗೂಢ ಸಮರಾದ್ಯಾತ್ರೆಯ ಸಂದೇಶವನ್ನು ಬದಲಿಸಿ, ಬಳಕೆದಾರರು ನಿಜವಾಗಿಯೂ ನೋಡಬಹುದಾದ ದೋಷ ಸಂದೇಶವನ್ನು ತೋರಿಸೋಣ. ನಿಮ್ಮ ಲಾಗಿನ್ ಕಾರ್ಯವನ್ನು ಅಪ್ಡೇಟ್ ಮಾಡಿ:
|
||||
|
||||
```javascript
|
||||
// ಕೇವಲ ಕನ್ಸೋಲ್ಗೆ ದಾಖಲು ಮಾಡದಿರುವ ಬದಲು, ಬಳಕೆದಾರಿಗೆ ಏನು ತಪ್ಪಾಗಿದೆ ಎಂದು ತೋರಿಸಿ
|
||||
if (data.error) {
|
||||
return updateElement('loginError', data.error);
|
||||
}
|
||||
```
|
||||
|
||||
**ಈ ಸಣ್ಣ ಬದಲಾವಣೆ ಡೋಡ ಪ್ರಭಾವ ಉಂಟುಮಾಡುತ್ತದೆ:**
|
||||
- ದೋಷ ಸಂದೇಶಗಳು ಬಳಕೆದಾರರು ನೋಡುತ್ತಿರುವ ಸ್ಥಳದಲ್ಲಿ ತೋರುತ್ತವೆ
|
||||
- ಇನ್ನೂ ಕಮ್ಗಳ ಗೋಚರಿಸದ ವೈಫಲ್ಯಗಳಿಲ್ಲ
|
||||
- ಬಳಕೆದಾರರಿಗೆ ತಕ್ಷಣದ, ವ್ಯವಹಾರಯುಕ್ತ ಪ್ರತಿಕ್ರಿಯೆ ಸಿಗುತ್ತದೆ
|
||||
- ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ವೃತ್ತಿಪರ ಮತ್ತು ಚಿಂತನೆಯುತ್ತಿರುತ್ತದೆ
|
||||
|
||||
ಈಗ ತಪ್ಪಾದ ಖಾತೆ ಸಕ್ರಿಯಗೊಳಿಸಿದಾಗ, ಅಲ್ಲಿ ಸಹಾಯಕ ದೋಷ ಸಂದೇಶವನ್ನು ನೋಡಬಹುದಾಗಿದೆ!
|
||||
|
||||

|
||||
|
||||
#### ಹೆಜ್ಜೆ 4: ಪ್ರವೇಶಕಾರ್ಯದಕ್ಷತೆಗೆ ಹೊಂದಿಕೊಳ್ಳುವುದು
|
||||
|
||||
ನಮ್ಮ `role="alert"` ಅಂಶ ಒಂದು ಲೈವ್ ರೀಜನ್ನ ಪೈಕಿ ಒಂದು - [Live Region](https://developer.mozilla.org/docs/Web/Accessibility/ARIA/ARIA_Live_Regions) ರೀತಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ, ಅದು ಸ್ಕ್ರೀನ್ ರೀಡರ್ಗಳಿಗೆ ತಕ್ಷಣ ಬದಲಾವಣೆಗಳನ್ನು ಪ್ರಕಟಿಸುತ್ತದೆ:
|
||||
|
||||
```html
|
||||
<div id="loginError" role="alert"></div>
|
||||
```
|
||||
|
||||
**ಈದಕ್ಕೆ ಕಾರಣವೇನು:**
|
||||
- ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಬಳಕೆದಾರರು ದೋಷ ಸಂದೇಶವನ್ನು ತಕ್ಷಣ ಕೇಳುತ್ತಾರೆ
|
||||
- ಎಲ್ಲರೂ ಸಮಾನ ಮಾಹಿತಿಯನ್ನು ಪಡೆಯುತ್ತಾರೆ, ಅವರು ಹೇಗೆ ನವಿಗೇಟ್ ಆಗುತ್ತಾರೆಯೋ ಅವನ ಮೇಲೆ ಅವಲಂಬಿಸಿದೆ ಇಲ್ಲ
|
||||
- ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ಹೆಚ್ಚು ಅನೇಕರಿಂದ ಉಪಯೋಗಿಸಬಹುದಾದಂತೆ ಮಾಡುತ್ತದೆ
|
||||
- ನಿಮಗೆ ಒಳಗೊಂಡ ಅನುಭವಗಳ ನಿರ್ಮಾಣದ ಹಿಂದಿದ್ದೇವೆ ಎಂದು ತೋರಿಸುತ್ತದೆ
|
||||
|
||||
ಇಂತಹ ಸಣ್ಣ ಸ್ಪರ್ಶಗಳು ಉತ್ತಮ ಡೆವಲಪರ್ಗಳನ್ನು ಅತ್ಯುತ್ತಮ ಡೆವಲಪರ್ಗಳಾಗಿ ವಿಭಜಿಸುತ್ತವೆ!
|
||||
|
||||
### 🎯 ಶಿಕ್ಷಣ ಪರಿಶೀಲನೆ: ಪ್ರಮಾಣೀಕರಣ ಮಾದರಿಗಳು
|
||||
|
||||
**ನಿಂತು ಚಿಂತಿಸಿ**: ನೀವು ಸಂಪೂರ್ಣ ಪ್ರಮಾಣೀಕರಣ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಅನುಸ್ಥಾಪಿಸಿದ್ದೀರಾ. ಇದು ವೆಬ್ ಅಭಿವೃದ್ಧಿಯಲ್ಲಿ ಪ್ರಮುಖ ಮಾದರಿಯಾಗಿದೆ.
|
||||
|
||||
**ತ್ವರಿತ ಸ್ವ-ಮೌಲ್ಯಮಾಪನ:**
|
||||
- API ಕಾಲ್ಗಳಿಗೆ async/await ಯಾಕೆ ಬಳಸಿಕೊಳ್ಳಲಾಗುತ್ತದೆ ಎಂದು ವಿವರಿಸಬಹುದೇ?
|
||||
- `encodeURIComponent()` ಫಂಕ್ಷನ್ ಮರೆತಿದರೆ ಏನಾಗುತ್ತದೆ?
|
||||
- ನಮ್ಮ ದೋಷ ನಿರ್ವಹಣೆಯಿಂದ ಬಳಕೆದಾರ ಅನುಭವ ಹೇಗೆ ಸುಧಾರಿಸುತ್ತದೆ?
|
||||
|
||||
**ನೈಜ-ಜಗತ್ತಿನ ಸಂಪರ್ಕ:** ನೀವು ಇಲ್ಲಿ ಕಲಿತಿರುವ ಮಾದರಿಗಳು (async ಡೇಟಾ ಪಡೆಯುವುದು, ದೋಷ ನಿರ್ವಹಣೆ, ಬಳಕೆದಾರ ಪ್ರತಿಕ್ರಿಯೆ) ಸಾಮಾಜಿಕ ಮಾಧ್ಯಮದಿಂದ ಇ-ಕಾಮರ್ಸ್ ತಾಣಗಳವರೆಗೆ ಪ್ರತಿಯೊಂದು ನೈಜ ವೆಬ್ ಅಪ್ಲಿಕೇಶನಲ್ಲಿಯೂ ಉಪಯೋಗಿಸುತ್ತಾರೆ. ನೀವು ಉತ್ಪಾದನಾ ಮಟ್ಟದ ಕೌಶಲ್ಯಗಳನ್ನು ನಿರ್ಮಿಸುತ್ತಿದ್ದೀರಿ!
|
||||
|
||||
**ಸವಾಲಿನ ಪ್ರಶ್ನೆ:** ಈ ಪ್ರಮಾಣೀಕರಣ ವ್ಯವಸ್ಥೆಯನ್ನು ಬಹುಬಳಕೆದಾರ ಪಾತ್ರಗಳನ್ನು (ಗ್ರಾಹಕ, ಆಡಳಿತಗಾರ, ಟೆಲರ್) ಸಮರ್ಥಿಸಲು ನೀವು ಹೇಗೆ ಬದಲಾಯಿಸಬಹುದು? ಡೇಟಾ ರಚನೆ ಮತ್ತು ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ ಬದಲಾವಣೆಗಳ ಬಗ್ಗೆ ಯೋಚಿಸಿ.
|
||||
|
||||
#### ಹೆಜ್ಜೆ 5: ನೋಂದಣಿ ಪ್ರಕ್ರಿಯೆಗೆ ಇದೇ ಮಾದರಿಯನ್ನು ಅನ್ವಯಿಸಿ
|
||||
|
||||
ಒಂದೇ ರೀತಿಗೆ, ನಿಮ್ಮ ನೋಂದಣಿ ಫಾರ್ಮ್ನಲ್ಲೂ ಇದೇ ದೋಷ ನಿಯಂತ್ರಣವನ್ನು ಜಾರಿಗೊಳಿಸಿ:
|
||||
|
||||
1. ನಿಮ್ಮ ನೋಂದಣಿ HTML ಗೆ ದೋಷ ಪ್ರದರ್ಶನ ಅಂಶ ಸೇರಿಸಿ:
|
||||
```html
|
||||
<div id="registerError" role="alert"></div>
|
||||
```
|
||||
|
||||
2. ಇದೀಗ ನಿಮ್ಮ ನೋಂದಣಿ ಕಾರ್ಯವನ್ನು ನವೀಕರಿಸಿ ಎಂದೇ ಅದೇ ದೋಷ ಪ್ರದರ್ಶನ ಮಾದರಿಯನ್ನು ಬಳಸಲು:
|
||||
```javascript
|
||||
if (data.error) {
|
||||
return updateElement('registerError', data.error);
|
||||
}
|
||||
```
|
||||
|
||||
**ದೋಷ ನಿರ್ವಹಣೆಯ ಸರ್ವಜ್ಞ ಲಾಭಗಳು:**
|
||||
- ಎಲ್ಲಾ ಫಾರ್ಮ್ಗಳಲ್ಲಿ ಸಮಾನ ಬಳಕೆದಾರ ಅನುಭವ ನೀಡುವುದು
|
||||
- ಪರಿಚಿತ ಮಾದರಿಯನ್ನು ಬಳಸಿ ಮಾನಸಿಕ ಭಾರ ತಗ್ಗಿಸುವುದು
|
||||
- ಮರುಬಳಕೆ ಸಾಧ್ಯವಾದ ಕೋಡ್ನೊಂದಿಗೆ ನಿರ್ವಹಣೆ ಸರಳಗೊಳಿಸುವುದು
|
||||
- ಅಪ್ಲಿಕೇಶನ್ മുഴುವರೆಗೂ ಪ್ರವೇಶಕಾರ್ಯದಕ್ಷತೆ ಮಾನದಂಡಗಳನ್ನು ಪೂರೈಸುವುದು
|
||||
|
||||
## ನಿಮ್ಮ ಸಕ್ರಿಯ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ರಚಿಸುವುದು
|
||||
|
||||
ನಾವು ಈಗ ನಿಮ್ಮ ಸ್ಥಿರ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಅನ್ನು ಕಾಲಮಾನಿಕ ಖಾತೆ ಡೇಟಾವನ್ನು ತೋರಿಸುವ ಡೈನಾಮಿಕ್ ಇಂಟರ್ಫೇಸ್ ಆಗಿ ಪರಿವರ್ತಿಸುತ್ತೇವೆ. ಛಾಪಿತ ವಿಮಾನ ನಿರ್ವಹಣಾ ವೇಳಾಪಟ್ಟಿಯ ಮತ್ತು ವಿಮಾನ ನಿಲ್ದಾಣದ ನೇರಪ್ರವಾಹ ತಟ್ಟೆಯ ನಡುವಿನ ಭೇದದಂತೆ, ನಾವು ಸ್ಥಿರ ಮಾಹಿತಿಯಿಂದ ನಿಜಸಮಯ ಪ್ರತಿಕ್ರಿಯಾಶೀಲ ಪ್ರದರ್ಶನಕ್ಕೆ ಹೋಗಲು ಹೊರಟಿದ್ದೇವೆ.
|
||||
|
||||
ನೀವು ಕಲಿತ DOM ಮ್ಯಾನಿಪುಲೇಶನ್ ತಂತ್ರಜ್ಞಾನಗಳನ್ನು ಉಪಯೋಗಿಸಿ, ನವೀಕರಿಸುವ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ನಿರ್ಮಿಸುವೆವು.
|
||||
|
||||
### ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಪರಿಚಯಿಸಿಕೊಳ್ಳಿ
|
||||
|
||||
ನಾವು ನಿರ್ಮಾಣ ಆರಂಭಿಸುವ ಮೊದಲು, ನಿಮ್ಮ ಸರ್ವರ್ ಏನೆನಾದರೂ ಪ್ರಯೋಜನಕಾರಿ ಮಾಹಿತಿ ಕಳುಹಿಸುತ್ತದೆಯೋ ನೋಡೋಣ. ಯಶಸ್ವಿಯಾಗಿ ಲಾಗಿನ್ ಆಗಿರುವಾಗ, ನೀವು ಹೀಗೊಂದು ಡೇಟಾ ಸಾಂದ್ರಣವನ್ನು ನೋಡುತ್ತೀರಿ:
|
||||
|
||||
```json
|
||||
{
|
||||
"user": "test",
|
||||
"currency": "$",
|
||||
"description": "Test account",
|
||||
"balance": 75,
|
||||
"transactions": [
|
||||
{ "id": "1", "date": "2020-10-01", "object": "Pocket money", "amount": 50 },
|
||||
{ "id": "2", "date": "2020-10-03", "object": "Book", "amount": -10 },
|
||||
{ "id": "3", "date": "2020-10-04", "object": "Sandwich", "amount": -5 }
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
**ಈ ಡೇಟಾ ರಚನೆಯು ಒದಗಿಸುತ್ತದೆ:**
|
||||
- **`user`**: ವೈಯಕ್ತಿಕ ಅನುಭಾವಕ್ಕಾಗಿ ("ಮತ್ತೆ ಬಂದಿರೇ, ಸಾರಾ!")
|
||||
- **`currency`**: ಹಣದ ಮೊತ್ತಗಳನ್ನು ಸರಿಯಾಗಿ ತೋರಿಸಲು
|
||||
- **`description`**: ಖಾತೆಯ ಸ್ನೇಹಪೂರಿತ ಹೆಸರು
|
||||
- **`balance`**: ಅತ್ಯಂತ ಮುಖ್ಯವಾದ ಇತ್ತೀಚಿನ ಲೆಕ್ಕಪತ್ರ
|
||||
- **`transactions`**: ಸಂಪೂರ್ಣ ವ್ಯವಹಾರ ಇತಿಹಾಸ ಹಾಗೂ ವಿವರಗಳು
|
||||
|
||||
ನೀವು ವೃತ್ತಿಪರ ಬ್ಯಾಂಕಿಂಗ್ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ನಿರ್ಮಿಸಲು ಬೇಕಾದ ಎಲ್ಲದು!
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
A[ಬಳಕೆದಾರ ಲಾಗಿನ್] --> B[ಖಾತೆ ಮಾಹಿತಿ ಪಡೆಯಿರಿ]
|
||||
B --> C{ಮಾಹಿತಿ ಸರಿಯಾಗಿದೆಯೇ?}
|
||||
C -->|ಹೌದು| D[ಜಾಗತಿಕ ಚರದಲ್ಲಿ ಸಂಗ್ರಹಿಸಿ]
|
||||
C -->|ಇಲ್ಲ| E[ದೋಷ ಸಂದೇಶ ತೋರಿಸಿ]
|
||||
D --> F[ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗೆ ನ್ಯಾವಿಗೇಟ್ ಮಾಡಿ]
|
||||
F --> G[ಯುಐ ಅಂಶಗಳನ್ನು ನವೀಕರಿಸಿ]
|
||||
G --> H[ಬ্যালೆನ್ಸ್ ಪ್ರದರ್ಶಿಸಿ]
|
||||
G --> I[ವಿವರಣೆ ತೋರಿಸಿ]
|
||||
G --> J[লেনದನ ಸುರಕ್ಷಣೆ]
|
||||
J --> K[ಕಿತಾಬು ಸಾಲುಗಳನ್ನು ರಚಿಸಿ]
|
||||
K --> L[ಮುದ್ರಣ ಮೌಲ್ಯ ಸ್ವರೂಪ]
|
||||
L --> M[ಬಳಕೆದಾರ ಲೈವ್ ಡೇಟಾವನ್ನು ನೋಡುತ್ತಾನೆ]
|
||||
```
|
||||
> 💡 **ಪ್ರೋ ಟಿಪ್**: ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಅನ್ನು ತಕ್ಷಣ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತ ನೋಡಲು ಬಯಸದಿದ್ದರೆ, ಲಾಗಿನ್ ಪ್ರಕ್ರियೆಯಲ್ಲಿ `test` ಎಂಬ ಬಳಕೆದಾರ ಹೆಸರನ್ನು ಉಪಯೋಗಿಸಿ - ಇದರಲ್ಲಿ ಆದರ್ಶ ಡೇಟಾ ಪೂರ್ವನಿರ್ದಿಷ್ಟವಾಗಿ ಲೋಡ್ ಆಗಿದೆ, ಆದ್ದರಿಂದ ನೀವು ಮೊದಲೇ ವ್ಯವಹಾರಗಳನ್ನು ಸೃಷ್ಟಿಸದೇ ಎಲ್ಲವನ್ನೂ ಪರೀಕ್ಷಿಸಬಹುದು.
|
||||
>
|
||||
**ಪರೀಕ್ಷಾ ಖಾತೆ ಉಪಯೋಗಿಸುವ ಕಾರಣಗಳು:**
|
||||
- ವಾಸ್ತವಿಕ ಮಾದರಿ ಡೇಟಾ ಪೂರ್ವಲಭ್ಯ
|
||||
- ವ್ಯವಹಾರ ಪ್ರದರ್ಶನ ಹೇಗಿದೆ ಎಂಬುದನ್ನು ನೋಡಲು ಸೂಕ್ತ
|
||||
- ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು ಸಾರ್ಥಕ
|
||||
- ಕೈಗೆತ್ತಿದ್ದ ಡUMMY ಡೇಟಾ ಸೃಷ್ಟಿಸುವ ಅಗತ್ಯ ದೂರವಾಗುತ್ತದೆ
|
||||
|
||||
### ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಪ್ರದರ್ಶನ ಅಂಶಗಳನ್ನು ರಚಿಸುವುದು
|
||||
|
||||
ನಮ್ಮ ಬೆسಿಗೆ, ಖಾತೆ ಸಾರಾಂಶ ಮಾಹಿತಿ ಮತ್ತು ನಂತರ ವ್ಯವಹಾರ ಪಟ್ಟಿಗಳನ್ನು ಹಂತ ಹಂತವಾಗಿ ನಿರ್ಮಿಸೋಣ.
|
||||
|
||||
#### ಹೆಜ್ಜೆ 1: ನಿಮ್ಮ HTML ರಚನೆಯನ್ನು ನವೀಕರಿಸಿ
|
||||
|
||||
ಮೊದಲಿಗೆ, ಸ್ಥಿರ "ಬ್ಯಾಲೆನ್ಸ್" ವಿಭಾಗವನ್ನು ಡೈನಾಮಿಕ್ ಪ್ಲೇಸ್ಹೋಲ್ಡರ್ ಅಂಶಗಳೊಂದಿಗೆ ಬದಲಿಸಿ, ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ತುಂಬಿಸಬಲ್ಲಂತೆ:
|
||||
|
||||
```html
|
||||
<section>
|
||||
Balance: <span id="balance"></span><span id="currency"></span>
|
||||
</section>
|
||||
```
|
||||
|
||||
ನಂತರ, ಖಾತೆಯ ವಿವರಣೆಗಾಗಿ ವಿಭಾಗ ಸೇರಿಸಿ. ಇದು ಡ್ಯಾಶ್ಬೋರ್ಡ್ ವಿಷಯಕ್ಕೆ ಶೀರ್ಷಿಕೆ ಆಗಿಯೇ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದರಿಂದ, ಸಮಾಂತರ HTML ಬಳಸಿರಿ:
|
||||
|
||||
```html
|
||||
<h2 id="description"></h2>
|
||||
```
|
||||
|
||||
**HTML ರಚನೆಯನ್ನು ತಿಳಿದುಕೊಳ್ಳುವುದು:**
|
||||
- ಬ್ಯಾಲೆನ್ಸ್ ಮತ್ತು ಕರೆನ್ಸಿಗೆ ವಿಭಿನ್ನ `<span>` ಅಂಶಗಳನ್ನು ಉಪಯೋಗಿಸುವ ಮೂಲಕ ವೈಯಕ್ತಿಕ ನಿಯಂತ್ರಣ
|
||||
- ಪ್ರತಿಯೊಂದು ಅಂಶಕ್ಕೂ ವಿಶಿಷ್ಟ ಐಡಿಗಳಿಂದ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಗುರಿ
|
||||
- ಖಾತೆ ವಿವರಣೆಗೆ `<h2>` ಬಳಸಿ ಸಮಾಂತರ HTML ಅನುಸರಣೆ
|
||||
- ಸ್ಕ್ರೀನ್ ರೀಡರ್ಗಳು ಮತ್ತು SEO ಗಾಗಿ ಸಾಂದರ್ಭಿಕ ಹಿರarchie ರಚನೆ
|
||||
|
||||
> ✅ **ಪ್ರವೇಶಕಾರ್ಯದಕ್ಷತೆ ತಿಳಿವಳಿಕೆ**: ಖಾತೆ ವಿವರಣೆ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ವಿಷಯಕ್ಕೆ ಶೀರ್ಷಿಕೆಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ ಅದನ್ನು ಶೀರ್ಷಿಕೆಗಳಾಗಿ ಗುರುತಿಸಲಾಗಿದೆ. [ಶೀರ್ಷಿಕೆ ರಚನೆಯ](https://www.nomensa.com/blog/2017/how-structure-headings-web-accessibility) ಪ್ರವೇಶಕಾರ್ಯದಕ್ಷತೆಯ ಮೇಲೆ ಪರಿಣಾಮ ಕುರಿತ ಮಾಹಿತಿ ಕಲಿಯಿರಿ. ನಿಮ್ಮ ಪುಟದಲ್ಲಿನ ಇತರ ಅಂಶಗಳಲ್ಲಿ ಕೂಡ ಶೀರ್ಷಿಕೆ ಟ್ಯಾಗ್ಗಳಿಂದ ಲಾಭ ಪಡೆಯಬಹುದೋ ನೋಡಿ.
|
||||
|
||||
#### ಹೆಜ್ಜೆ 2: ಡ್ಯಾಶ್ಬೋರ್ಡ್ ನವೀಕರಣ ಕಾರ್ಯವನ್ನು ರಚಿಸಿ
|
||||
|
||||
ಈಗ, ನಿಜವಾದ ಖಾತೆ ಡೇಟಾದೊಂದಿಗೆ ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಅನ್ನು ತುಂಬಿಸುವ ಕಾರ್ಯವನ್ನು ರಚಿಸೋಣ:
|
||||
|
||||
```javascript
|
||||
function updateDashboard() {
|
||||
if (!account) {
|
||||
return navigate('/login');
|
||||
}
|
||||
|
||||
updateElement('description', account.description);
|
||||
updateElement('balance', account.balance.toFixed(2));
|
||||
updateElement('currency', account.currency);
|
||||
}
|
||||
```
|
||||
|
||||
**ಹಂತ ಹಂತವಾಗಿ ಈ ಕಾರ್ಯ ಏನು ಮಾಡುತ್ತದೆ:**
|
||||
- ಖಾತೆ ಡೇಟಾ ಇದ್ದೇ ಇದ್ದದ್ದನ್ನು ದೃಢಪಡಿಸುತ್ತದೆ
|
||||
- ಪ್ರಮಾಣೀಕರಣವಾಗದ ಬಳಕೆದಾರರನ್ನು ಲಾಗಿನ್ ಪುಟಕ್ಕೆ ಮರಳಿಸುತ್ತದೆ
|
||||
- ಪುನರಾಯೋಜನೀಯ `updateElement` ಕಾರ್ಯದಲ್ಲಿ ಖಾತೆ ವಿವರಣೆಯನ್ನು ನವೀಕರಿಸುತ್ತದೆ
|
||||
- ಬ್ಯಾಲೆನ್ಸ್ ಅನ್ನು ಎಂದಿಗೂ ಎರಡು ದಶಮಾಂಶಗಳಾಗಿ ಸ್ವರೂಪಗೊಳಿಸುತ್ತದೆ
|
||||
- ಸೂಕ್ತ ಕರೆನ್ಸಿ ಚಿಹ್ನೆಯನ್ನು ತೋರಿಸುತ್ತದೆ
|
||||
|
||||
> 💰 **ಹಣದ ಸ್ವರೂಪಗೊಳಿಸುವಿಕೆ**: ಆ [`toFixed(2)`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number/toFixed) ವಿಧಾನವು ರಕ್ಷಕವಾಗಿದೆ! ಅದು ನಿಮ್ಮ ಬ್ಯಾಲೆನ್ಸ್ ನಿಜವಾದ ಹಣದಂತೆ ತೋರುತ್ತದೆ - "75.00" ಬದಲಾಗಿ "75" ಎಂಬುದನ್ನು ತಪ್ಪಿಸುತ್ತದೆ. ನಿಮ್ಮ ಬಳಕೆದಾರರು ಪರಿಚಿತ ಕರೆನ್ಸಿ ಸ್ವರೂಪಗೊಳಿಸುವಿಕೆಯನ್ನು ಮೆಚ್ಚಿಕೊಳ್ಳುತ್ತಾರೆ.
|
||||
|
||||
#### ಹೆಜ್ಜೆ 3: ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ನವೀಕರಿಸುತ್ತಿದೆಯೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ
|
||||
|
||||
ಪ್ರತಿ ಬಾರಿ ಯಾರಾದರೂ ಭೇಟಿ ನೀಡುವಾಗ ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ನವೀಕರಿಸಲು, ನಿಮ್ಮ ನॅವಿಗೇಶನ್ ವ್ಯವಸ್ಥೆಗೂ ಸಂಯೋಜಿಸುವ ಅವಶ್ಯಕತೆ ಇದೆ. ನೀವು [ಪಾಠ 1 ಕಾರ್ಯ](../1-template-route/assignment.md) ಪೂರ್ಣಗೊಳಿಸಿದ್ದರೆ, ಇದು ಪರಿಚಿತವಾಗಿರುತ್ತದೆ. ಇಲ್ಲದಿದ್ದರೆ, ಯಾಕೆಂದರೆ ಇಲ್ಲಿದೆ ನೀವು ಬೇಕಾದುದು:
|
||||
|
||||
ನಿಮ್ಮ `updateRoute()` ಕಾರ್ಯದ ಕೊನೆಯಲ್ಲಿ ಈ కోಡ್ ಸೇರಿಸಿ:
|
||||
|
||||
```javascript
|
||||
if (typeof route.init === 'function') {
|
||||
route.init();
|
||||
}
|
||||
```
|
||||
|
||||
ನಂತರ, ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಆರಂಭಿಕೀಕರಣಕ್ಕಾಗಿ ನಿಮ್ಮ ಮಾರ್ಗಗಳನ್ನು ನವೀಕರಿಸಿ:
|
||||
|
||||
```javascript
|
||||
const routes = {
|
||||
'/login': { templateId: 'login' },
|
||||
'/dashboard': { templateId: 'dashboard', init: updateDashboard }
|
||||
};
|
||||
```
|
||||
|
||||
**ಈ ಬುದ್ಧಿವಂತಿಕೆದ ವ್ಯವಸ್ಥೆ ಏನು ಮಾಡುತ್ತದೆ:**
|
||||
- ಮಾರ್ಗಗಳಿಗೆ ವಿಶೇಷ ಪ್ರಾರಂಭ ಕೋಡ್ ಇದ್ದರೂ ಪರಿಶೀಲಿಸುತ್ತದೆ
|
||||
- ಮಾರ್ಗ ಬಂದಾಗ ಆ ಕೋಡ್ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ
|
||||
- ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಯಾವಾಗಲೂ ಪ್ರಸ್ತುತ, ನವೀನ ಮಾಹಿತಿಯನ್ನು ತೋರಿಸುತ್ತದೆ
|
||||
- ನಿಮ್ಮ ಮಾರ್ಗಪಥ್ ಲಾಜಿಕ್ ಶುದ್ಧ ಮತ್ತು ವ್ಯವಸ್ಥಿತವಾಗಿರುತ್ತೆ
|
||||
|
||||
#### ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಪರೀಕ್ಷಿಸುವುದು
|
||||
|
||||
ಈ ಬದಲಾವಣೆಗಳನ್ನು ಜಾರಿಗೆ ತಂದ ನಂತರ, ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ನ ಪರೀಕ್ಷೆ ಮಾಡಿ:
|
||||
|
||||
1. ಪರೀಕ್ಷಾ ಖಾತೆಯಿಂದ ಲಾಗಿನ್ ಆಗಿ
|
||||
2. ನೀವು ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗೆ ಹಿಂತಿರುಗಲ್ಪಟ್ಟಿದ್ದೀರಿ ಎಂಬುದನ್ನು ಪರಿಶೀಲಿಸಿ
|
||||
3. ಖಾತೆಯ ವಿವರಣೆ, ಬ್ಯಾಲೆನ್ಸ್ ಮತ್ತು ಕರೆನ್ಸಿ ಸರಿಯಾಗಿ ತೋರಿಸುತ್ತಿದೆಯೇ ತಪಾಸಿಸಿ
|
||||
4. ಲಾಗ್ ಔಟ್ ಮಾಡಿ ಮತ್ತೆ ಲಾಗಿನ್ ಆಗಿ ಡೇಟಾ ಸರಿಯಾಗಿ ನವೀಕರಿಸುತ್ತಿದೆಯೇ ಎಂದು ದೃಢೀಕರಿಸಿ
|
||||
|
||||
ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಈಗ ಲಾಗಿನ್ ಆಗಿರುವ ಬಳಕೆದಾರರ ಡೇಟಾವನ್ನು ಅವಲಂಬಿಸಿಕೊಂಡು ಡೈನಾಮಿಕ್ ಮಾಹಿತಿಯನ್ನು ತೋರಿಸುತ್ತಿರುತ್ತದೆ!
|
||||
|
||||
## ಟೆಂಪ್ಲೇಟ್ಗಳೊಂದಿಗೆ ಸ್ಮಾರ್ಟ್ ವ್ಯವಹಾರ ಪಟ್ಟಿಗಳನ್ನು ನಿರ್ಮಿಸುವುದು
|
||||
|
||||
ಪ್ರತಿ ವ್ಯವಹಾರದ HTML ಅನ್ನು ಕೈಯಿಂದ ಸೃಷ್ಟಿಸುವ ಬದಲು, ನಾವು ಟೆಂಪ್ಲೇಟ್ಗಳನ್ನು ಉಪಯೋಗಿಸಿ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸಮಾನ ವಿನ್ಯಾಸವನ್ನು ರಚಿಸೋಣ. ಅಂತರಿಕ್ಷ ನೌಕಾ ತಯಾರಿಕೆಯಲ್ಲಿಯ ಮಿಕ್ಕೋ ಲೆಕ್ಕಣಿಕೆ ಘಟಕಗಳಂತೆ, ಟೆಂಪ್ಲೇಟ್ಗಳು ಪ್ರತಿಯೊಂದು ವ್ಯವಹಾರ ಸಾಲು ಕೂಡ ಒಂದೇ ರಚನೆ ಮತ್ತು ವಿನ್ಯಾಸವನ್ನು ಅನುಸರಿಸುತ್ತದೆ ಎಂದು ಖಚಿತಪಡಿಸುತ್ತವೆ.
|
||||
|
||||
ಈ ತಂತ್ರಜ್ಞಾನ ಕೆಲವು ವ್ಯವಹಾರಗಳಿಂದ ಸಾವಿರಾರು ವ್ಯವಹಾರಗಳವರೆಗೂ ಸುಗಮವಾಗಿ ವಿಸ್ತರಿಸಿ, ಸಮಾನ ಕಾರ್ಯಕ್ಷಮತೆ ಮತ್ತು ಪ್ರದರ್ಶನವನ್ನು ಕಾಯ್ದುಕೊಳ್ಳುತ್ತದೆ.
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
A[HTML ಟೆಂಪ್ಲೇಟ್] --> B[ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕ್ಲೋನ್]
|
||||
B --> C[ಡೇಟಾ ilə ತುಂಬಿಸಿ]
|
||||
C --> D[ಫ್ರೇಗ್ಮೆಂಟ್ಗೆ ಸೇರಿಸಿ]
|
||||
D --> E[DOMಗೆ ಬ್ಯಾಚ್ ಸೇರಿಸಿ]
|
||||
|
||||
subgraph "ಪ್ರದರ್ಶನ ಲಾಭಗಳು"
|
||||
F[ಒಂದು DOM ನವೀಕರಣ]
|
||||
G[ಸತತ ಸ್ವರೂಪಕರಣ]
|
||||
H[ಮರುಬಳಕೆ ಮಾಡಬಹುದಾದ ಮಾದರಿ]
|
||||
end
|
||||
|
||||
E --> F
|
||||
E --> G
|
||||
E --> H
|
||||
```
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A[ವ್ಯವಹಾರದ ಡೇಟಾ] --> B[HTML ಟೆಂಪ್ಲೇಟು]
|
||||
B --> C[ಟೆಂಪ್ಲೇಟನ್ನು ಪ್ರತಿಲಿಪಿ ಮಾಡಿ]
|
||||
C --> D[ಡೇಟಾವನ್ನು ತುಂಬಿ]
|
||||
D --> E[ಡಿಓಎಂಗೆ ಸೇರಿಸಿ]
|
||||
E --> F[ಪ್ರತಿ ವ್ಯವಹಾರಕ್ಕೆ ಪುನರಾವರ್ತಿಸಿ]
|
||||
```
|
||||
### ಹೆಜ್ಜೆ 1: ವ್ಯವಹಾರ ಟೆಂಪ್ಲೇಟನ್ನು ರಚಿಸುವುದು
|
||||
|
||||
ಮೊದಲಿಗೆ, ನಿಮ್ಮ HTML `<body>` ನಲ್ಲಿ ಪ್ರದರ್ಶಿಸಲು ಬಳಸಬಹುದಾದ ವ್ಯವಹಾರ ಸಾಲುಗಳನ್ನು 위한 ಪುನಃಬಳಕೆಯ ಟೆಂಪ್ಲೇಟನ್ನು ಸೇರಿಸೋಣ:
|
||||
|
||||
```html
|
||||
<template id="transaction">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</template>
|
||||
```
|
||||
|
||||
**HTML ಟೆಂಪ್ಲೇಟ್ಗಳನ್ನು ತಿಳಿದುಕೊಳ್ಳುವುದು:**
|
||||
- ಒಂದೇ ಟೇಬಲ್ ಸಾಲಿನ ರಚನೆಯನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುತ್ತದೆ
|
||||
- ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಮೂಲಕ ನಕಲಿಸಿ ಹಾಗೂ ತುಂಬಿಸುವವರೆಗೆ ಗೋಚರಿಸುವುದಿಲ್ಲ
|
||||
- ಮೂರು ಸೆಲ್ಗಳನ್ನು ಹೊಂದಿದೆ; ದಿನಾಂಕ, ವರ್ಣನೆ ಮತ್ತು ಮೊತ್ತ
|
||||
- ಸಮಾನ ವಿನ್ಯಾಸ ಕೈಗಾರಿಕೆಗೆ ಪುನಃಬಳಕೆಯ ಮಾದರಿಯ ಒದಗಿಸುತ್ತದೆ
|
||||
|
||||
### ಹೆಜ್ಜೆ 2: ಡೈನಾಮಿಕ್ ವಿಷಯಕ್ಕಾಗಿ ನಿಮ್ಮ ಟೇಬಲ್ ಸಿದ್ಧಪಡಿಸಿರಿ
|
||||
|
||||
ನಂತರ, ಟೇಬಲ್ ಶರೀರಕ್ಕೆ ಐಡಿ ಸೇರಿಸಿ, ಇದರಿಂದ ಜಾವಾ ಸ್ಕ್ರಿಪ್ಟ್ সহজವಾಗಿ ಗುರಿ ತಲುಪಬಹುದು:
|
||||
|
||||
```html
|
||||
<tbody id="transactions"></tbody>
|
||||
```
|
||||
|
||||
**ಇದರಿಂದ ಪಡೆಯುವದು:**
|
||||
- ವ್ಯವಹಾರ ಸಾಲುಗಳ ಸೇರಿಸಲು ಸ್ಪಷ್ಟ ಗುರಿಯನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ
|
||||
- ಟೇಬಲ್ ರಚನೆ ಮತ್ತು ಡೈನಾಮಿಕ್ ವಿಷಯವನ್ನು ವಿಭಜಿಸುತ್ತದೆ
|
||||
- ವ್ಯವಹಾರ ಡೇಟಾವನ್ನು ಬಹಳ ಸುಲಭವಾಗಿ ತೆರವುಗೊಳಿಸಲು ಮತ್ತು ಪುನಃ ತುಂಬಿಸಲು ಸಹಾಯಮಾಡುತ್ತದೆ
|
||||
|
||||
### ಹೆಜ್ಜೆ 3: ವ್ಯವಹಾರ ಸಾಲು ತಯಾರಕ ಕಾರ್ಯವನ್ನು ರಚಿಸುವುದು
|
||||
|
||||
ಈಗ, ವ್ಯವಹಾರ ಡೇಟಾವನ್ನು HTML ಅಂಶಗಳಾಗಿ ಪರಿವರ್ತಿಸುವ ಕಾರ್ಯವನ್ನು ರಚಿಸೋಣ:
|
||||
|
||||
```javascript
|
||||
function createTransactionRow(transaction) {
|
||||
const template = document.getElementById('transaction');
|
||||
const transactionRow = template.content.cloneNode(true);
|
||||
const tr = transactionRow.querySelector('tr');
|
||||
tr.children[0].textContent = transaction.date;
|
||||
tr.children[1].textContent = transaction.object;
|
||||
tr.children[2].textContent = transaction.amount.toFixed(2);
|
||||
return transactionRow;
|
||||
}
|
||||
```
|
||||
|
||||
**ಈ ಫ್ಯಾಕ್ಟ್ರಿ ಕಾರ್ಯವನ್ನು ವಿಶ್ಲೇಷಿಸುವುದು:**
|
||||
- ಟೆಂಪ್ಲೇಟ್ ಅನ್ನು ಅದರ ಐಡಿಯಿಂದ ಪಡೆದುಕೊಳ್ಳುತ್ತದೆ
|
||||
- ಸುರಕ್ಷಿತ ಸಂಚಲನಕ್ಕಾಗಿ ಟೆಂಪ್ಲೇಟ್ ವಿಷಯವನ್ನು ನಕಲಿಸುತ್ತದೆ
|
||||
- ನಕಲಿಸಿದ ವಿಷಯದ ಟೇಬಲ್ ಸಾಲನ್ನು ಆರಿಸಿಕೊಂಡು
|
||||
- ಪ್ರತಿಯೊಂದು ಸೆಲಿಗೆ ವ್ಯವಹಾರ ಡೇಟಾವನ್ನು ತುಂಬಿಸುತ್ತದೆ
|
||||
- ಮೊತ್ತವನ್ನು ಸರಿಯಾದ ದಶಮಾಂಶಗಳಿಂದ ಸ್ವರೂಪಗೊಳಿಸುತ್ತದೆ
|
||||
- ಟೇಬಲ್ ಸಾಲುಗಳನ್ನು ಹಾಕಲು ತಯಾರಾಗಿಸಿದ ಪೂರ್ಣವಾದ ಅಂಶವನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ
|
||||
|
||||
### ಹೆಜ್ಜೆ 4: ಹಲವಾರು ವ್ಯವಹಾರ ಸಾಲುಗಳನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಉತ್ಪಾದಿಸುವುದು
|
||||
|
||||
ನಿಮ್ಮ `updateDashboard()` ಕಾರ್ಯದಲ್ಲಿ ಈ ಕೆಳಗಿನ ಕೋಡ್ ಸೇರಿಸಿ ಎಲ್ಲ ವ್ಯವಹಾರಗಳನ್ನು ತೋರಿಸಲು:
|
||||
|
||||
```javascript
|
||||
const transactionsRows = document.createDocumentFragment();
|
||||
for (const transaction of account.transactions) {
|
||||
const transactionRow = createTransactionRow(transaction);
|
||||
transactionsRows.appendChild(transactionRow);
|
||||
}
|
||||
updateElement('transactions', transactionsRows);
|
||||
```
|
||||
|
||||
**ಈ ಪರಿಣಾಮಕಾರಿ ವಿಧಾನವನ್ನು ತಿಳಿದುಕೊಳ್ಳುವುದು:**
|
||||
- ಡಾಕ್ಯುಮೆಂಟ್ ಫ್ರಾಗ್ಮೆಂಟ್ ಅನ್ನು ರಚಿಸಿ DOM ಕಾರ್ಯಗಳನ್ನು ಗುಚ್ಛವಾಗಿ ನಿರ್ವಹಿಸುತ್ತದೆ
|
||||
- ಖಾತೆ ಡೇಟಾದ ಎಲ್ಲಾ ವ್ಯವಹಾರಗಳಲ್ಲಿನ ಮೂಲಕ ಚಲಿಸುತ್ತದೆ
|
||||
- ಫ್ಯಾಕ್ಟರಿ ಕಾರ್ಯದಿಂದ ಪ್ರತಿ ವ್ಯವಹಾರಕ್ಕೆ ಸಾಲು ಸೃಷ್ಟಿಸುತ್ತದೆ
|
||||
- ಎಲ್ಲಾ ಸಾಲುಗಳನ್ನು ಫ್ರಾಗ್ಮೆಂಟ್ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಿ ನಂತರ DOM ಗೆ ಸೇರಿಸುತ್ತದೆ
|
||||
- ವೈಯಕ್ತಿಕ ಸೇರಿಸುವಿಕೆಗಳಿಗಿಂತ ಒಂದು ಬಾರಿ ಮಾತ್ರ DOM ನವೀಕರಣ ಮಾಡುತ್ತದೆ
|
||||
|
||||
> ⚡ **ಕಾರ್ಯಕ್ಷಮತೆ ಉತ್ತಮಿಕೆ**: [`document.createDocumentFragment()`](https://developer.mozilla.org/docs/Web/API/Document/createDocumentFragment) ಬೋಯಿಂಗ್ನಲ್ಲಿ ಅಸೆಂಬ್ಲಿ ಪ್ರಕ್ರಿಯೆಯಂತೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ - ಕಾಂಪೋನೆಂಟುಗಳನ್ನು ಮುಖ್ಯ ಲೈನ್ನಿಂದ ಹೊರಗೆ ತಯಾರಿಸಿ, ಬಳಿಕ ಸಂಪೂರ್ಣ ಘಟಕವಾಗಿ ಸ್ಥಾಪಿಸಲಾಗುತ್ತದೆ. ಈ ಬ್ಯಾಚಿಂಗ್ ವಿಧಾನವು DOM ಮರುಪ್ರವಾಹಗಳನ್ನು ಕಡಿಮೆ ಮಾಡಿ ಒಂದೇ ಸೇರವಿಕೆಯನ್ನು ಅನೇಕ ವೈಯಕ್ತಿಕ ಕ್ರಿಯೆಗಳಿಗಿಂತ ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿ ಆಗಿಸುತ್ತದೆ.
|
||||
|
||||
### ಹಂತ 5: ಮಿಶ್ರ ವಿಷಯಕ್ಕಾಗಿ Update ಫಂಕ್ಷನ್ ಅನ್ನು ಉತ್ತಮಗೊಳಿಸುವುದು
|
||||
|
||||
ನಿಮ್ಮ `updateElement()` ಫಂಕ್ಷನ್ ಪ್ರಸ್ತುತ ಮಾತ್ರ ಪಠ್ಯ ವಿಷಯವನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ. ಅದನ್ನು ಪಠ್ಯ ಮತ್ತು DOM ನೋಡ್ ಎರಡನ್ನೂ ಸಹ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ನವೀಕರಿಸಿ:
|
||||
|
||||
```javascript
|
||||
function updateElement(id, textOrNode) {
|
||||
const element = document.getElementById(id);
|
||||
element.textContent = ''; // ಎಲ್ಲಾ ಮಕ್ಕಳನ್ನು ತೆಗೆದುಹಾಕುತ್ತದೆ
|
||||
element.append(textOrNode);
|
||||
}
|
||||
```
|
||||
|
||||
**ಈ ನವೀಕರಣದ ಪ್ರಮುಖ ಸುಧಾರಣೆಗಳು:**
|
||||
- ಹೊಸ ವಿಷಯವನ್ನು ಸೇರಿಸುವ ಮೊದಲು ಇರುವುದು ಇಲ್ಲದೆ ಮಾಡಿ
|
||||
- ಪ್ಯಾರಾಮೀಟರ್ಗಳಾಗಿ ಪಠ್ಯ ಸ್ಟ್ರಿಂಗ್ಗಳು ಅಥವಾ DOM ನೋಡ್ಗಳನ್ನು ಸ್ವೀಕರಿಸುತ್ತದೆ
|
||||
- ಲವಚಿಕತೆಯಿಗಾಗಿ [`append()`](https://developer.mozilla.org/docs/Web/API/ParentNode/append) ವಿಧಾನವನ್ನು ಬಳಕೆ ಮಾಡುತ್ತದೆ
|
||||
- ಇತ್ತೀಚಿನ ಪಠ್ಯ ಆಧರಿತ ಬಳಕೆಯೊಂದಿಗೆ ಹಿಂದಿನ ಸಮ್ಮಿಲನತೆಯನ್ನು ಕಾಯ್ದುಕೊಳ್ಳುತ್ತದೆ
|
||||
|
||||
### ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಅನ್ನು ಪರೀಕ್ಷಿಸಲು ಸಮಯ
|
||||
|
||||
ನಿಜವಾದ ಕ್ಷಣಕ್ಕೆ ಸಿದ್ಧರಾಗಿ! ನಿಮ್ಮ ಡೈನಾಮಿಕ್ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಅನ್ನು ಕಾರ್ಯದಲ್ಲಿದ್ದಂತೆ ನೋಡೋಣ:
|
||||
|
||||
1. `test` ಖಾತೆಯನ್ನು ಬಳಸಿ ಲಾಗಿನ್ ಮಾಡಿ (ಇದರಲ್ಲಿ ಉದಾಹರಣೆಯ ಡೇಟಾ ಇದೆ)
|
||||
2. ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗೆ ಹೋಗಿ
|
||||
3. ವ್ಯವಹಾರ ಸಾಲುಗಳು ಸರಿಯಾದ ಫಾರ್ಮ್ಯಾಟ್ಗಳಲ್ಲಿ ಪ್ರತ್ಯಕ್ಷವಾಗುತ್ತವೆಯೇ ಎನ್ನುವುದನ್ನು ಪರಿಶೀಲಿಸಿ
|
||||
4. ದಿನಾಂಕಗಳು, ವಿವರಣೆಗಳು ಮತ್ತು ಮೊತ್ತಗಳು ಎಲ್ಲಾ ಸರಿಯಾಗಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿ
|
||||
|
||||
ಎಲ್ಲವೂ ಸರಿಯಾಗಿದ್ದರೆ, ನೀವು ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ನಲ್ಲಿ ಪೂರ್ಣ ಕಾರ್ಯನಿರ್ವಹಣೆಯಿರುವ ವ್ಯವಹಾರಪಟ್ಟಿಯನ್ನು ನೋಡುವಿರಿ! 🎉
|
||||
|
||||
**ನೀವು ಸಾಧಿಸಿದದ್ದು:**
|
||||
- ಯಾವುದೇ ಪ್ರಮಾಣದ ಡೇಟಾದೊಂದಿಗೆ ವಿಸ್ತರಿಸಬಹುದಾದ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ನಿರ್ಮಿಸಲಾಗಿದ್ದು
|
||||
- ಸ್ಥಿರ ಫಾರ್ಮ್ಯಾಟಿಂಗ್ಗೆ ಮರುಬಳಕೆ ಮಾಡಬಹುದಾದ ಟೆಂಪ್ಲೇಟುಗಳನ್ನು ಸೃಷ್ಟಿಸಲಾಗಿದೆ
|
||||
- ಪರಿಣಾಮಕಾರಿಯಾದ DOM ನಿರ್ವಹಣಾ ತಂತ್ರಗಳನ್ನು ಜಾರಿಗೆ ತಂದುಕೊಳ್ಳಲಾಗಿದೆ
|
||||
- ಉತ್ಪಾದನಾ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಬಳಕೆದಾರ ಲಕ್ಷಣಗಳಿಗೆ ಸಮಾನ ಕಾರ್ಯಚಟುವಟಿಕೆಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗಿದೆ
|
||||
|
||||
ನೀವು ಸ್ಥಿರ ವೆಬ್ಪೇಜ್ ಅನ್ನು ಡೈನಾಮಿಕ್ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ ಆಗಿ ಯಶಸ್ವಿಯಾಗಿ ಪರಿವರ್ತಿಸಿದ್ದಾರೆ.
|
||||
|
||||
### 🎯 ಪಾಠ ನಿರೀಕ್ಷಣೆ ಪರಿಶೀಲನೆ: ಡೈನಾಮಿಕ್ ವಿಷಯ ರಚನೆ
|
||||
|
||||
**ವಾಸ್ತುಶಿಲ್ಪ ಅರಿವು**: ನೀವು React, Vue, Angular ಮುಂತಾದ ಫ್ರೇಮ್ವರ್ಕ್ಗಳಲ್ಲಿ ಬಳಸುವ ಮಾದರಿಗಳನ್ನು ಅನುಸರಿಸುವ ಸುಕ್ಷ್ಮ ಡೇಟಾ-ಮೂಲಕ UI ಪೈಪ್ಲೈನ್ ಅನ್ನು ಜಾರಿಗೆ ತಂದಿದ್ದೀರಿ.
|
||||
|
||||
**ಪ್ರಮುಖ ಕಲಿತ ತತ್ವಗಳು**:
|
||||
- **ಟೆಂಪ್ಲೇಟ್ ಆಧಾರಿತ ರೆಂಡರಿಂಗ್**: ಮರುಬಳಕೆ ಮಾಡಬಹುದಾದ UI ಕಾಂಪೋನೆಂಟುಗಳ ಸೃಷ್ಟಿ
|
||||
- **ಡಾಕ್ಯುಮೆಂಟ್ ಫ್ರಾಗ್ಮೆಂಟ್ಗಳು**: DOM ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಉತ್ತಮಗೊಳಿಸುವುವು
|
||||
- **ಸುರಕ್ಷಿತ DOM ನಿರ್ವಹಣೆ**: ಭದ್ರತೆಯಲ್ಲಿನ ಅಪಾಯಗಳನ್ನು ತಡೆಯುವುದು
|
||||
- **ಡೇಟಾ ಪರಿವರ್ತನೆ**: ಸರ್ವರ್ ಡೇಟಾವಿನಿಂದ ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ಗಳಿಗೆ ಪರಿವರ್ತನೆ
|
||||
|
||||
**ಕೈಗಾರಿಕಾ ಸಂಪರ್ಕ**: ಈ ತಂತ್ರಗಳು ಆಧುನಿಕ ಫ್ರಂಟ್ಎಂಡ್ ಫ್ರೇಮ್ವರ್ಕ್ಗಳ ಮೂಲಭೂತ. React ನ ವರ್ಚ್ಚುವಲ್ DOM, Vue ನ ಟೆಂಪ್ಲೇಟ್ ಸಿಸ್ಟಮ್, ಮತ್ತು Angular ನ ಕಾಂಪೋನೆಂಟ್ ವಾಸ್ತುಶಿಲ್ಪ,都 ಈ ಪ್ರಮುಖ ತತ್ವಗಳ ಮೇಲಾಗಿವೆ.
|
||||
|
||||
**ಪರಿಗಣನೆ ಪ್ರಶ್ನೆ**: ಈ ವ್ಯವಸ್ಥೆಯನ್ನು ನೈತಿಕ ಸಮಯದ ನವೀಕರಣಗಳನ್ನು (ಹಾಗೆ ಹೊಸ ವ್ಯವಹಾರಗಳು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕಾಣುವುದು) ಹೇಗೆ ವಿಸ್ತರಿಸುವಿರಿ? WebSockets ಅಥವಾ ಸರ್ವರ್-ಕಳುಹಿಸಲಾದ ಘಟನಾಕ್ರಮಗಳ ಬಗ್ಗೆ ಯೋಚಿಸಿ.
|
||||
|
||||
---
|
||||
|
||||
## 📈 ನಿಮ್ಮ ಡೇಟಾ ನಿರ್ವಹಣೆಯ ಪರಿಣತಿ ಸಮಯರೇಖೆ
|
||||
|
||||
```mermaid
|
||||
timeline
|
||||
title ಡೇಟಾ-ಚಾಲಿತ ಅಭಿವೃದ್ಧಿ ಪ್ರಯಾಣ
|
||||
|
||||
section ಮೂಲಭೂತ ನಿರ್ಮಾಣ
|
||||
API ಸೆಟ್ಅಪ್ ಮತ್ತು ಪರೀಕ್ಷೆ
|
||||
: ಕ್ಲೈಂಟ್-ಸರ್ವರ್ ಸಂವಹನವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಿ
|
||||
: HTTP ವಿನಂತಿ/ಪ್ರತಿಕ್ರಿಯೆ ಚಕ್ರವನ್ನು ಮಾಸ್ಟರ್ ಮಾಡಿ
|
||||
: ಡಿಬಗ್ ತಂತ್ರಗಳನ್ನು ಕಲಿಯಿರಿ
|
||||
|
||||
section ಪ್ರಾಮಾಣೀಕರಣ ಪರಿಣತಿ
|
||||
ಅಸಿಂಕ್ರೋನಸ್ ಫಂಕ್ಷನ್ ಮಾದರಿಗಳು
|
||||
: ಸ್ವಚ್ಛ async/await ಕೋಡ್ ಬರೆಯಿರಿ
|
||||
: ಪ್ರಾಮಿಸ್ಗಳನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ನಿರ್ವಹಿಸಿ
|
||||
: ದೋಷ ಮಿತಿ ರೇಖೆಗಳನ್ನು ಜಾರಿಗೆ ತಂದೀರಿ
|
||||
ಬಳಕೆದಾರ ಸೆಶನ್ ನಿರ್ವಹಣೆ
|
||||
: ಗ್ಲೋಬಲ್ ಸ್ಟೇಟ್ ಮಾದರಿಗಳನ್ನು ಸೃಷ್ಟಿಸಿ
|
||||
: ನ್ಯಾವಿಗೇಶನ್ ಗಾರ್ಡ್ಗಳನ್ನು ನಿರ್ಮಿಸಿ
|
||||
: ಬಳಕೆದಾರ ಪ್ರತಿಕ್ರಿಯಾ ವ್ಯವಸ್ಥೆಗಳನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸಿ
|
||||
|
||||
section ಡೈನಾಮಿಕ್ UI ಅಭಿವೃದ್ಧಿ
|
||||
ಸುರಕ್ಷಿತ DOM ನಿರ್ವಹಣೆ
|
||||
: XSS ಭದ್ರತೆಗಳನ್ನು ತಡೆಯಿರಿ
|
||||
: innerHTML ಬದಲು textContent ಬಳಸಿ
|
||||
: ಪ್ರವೇಶযোগ্যತೆ ಸ್ನೇಹಿ ಇಂಟರ್ಫೇಸ್ ನಿರ್ಮಿಸಿ
|
||||
ಟೆಂಪ್ಲೇಟ್ ವ್ಯವಸ್ಥೆಗಳು
|
||||
: ಮರುಬಳಕೆಯ_UI_ಘಟಕಗಳನ್ನು ನಿರ್ಮಿಸಿ
|
||||
: ಫ್ರಾಗ್ಮೆಂಟ್ಗಳೊಂದಿಗೆ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ದೊಡ್ದಮಾಡಿ
|
||||
: ದೊಡ್ಡ ಡೇಟಾಸೆಟ್ಗಳನ್ನು ಕையாளಲು ವ್ಯಾಪ್ತಿ ಮಾಡಿರಿ
|
||||
|
||||
section ವೃತ್ತಿಪರ ಮಾದರಿಗಳು
|
||||
ಉತ್ಪಾದನೆ-ಸಿದ್ಧ ಕೋಡ್
|
||||
: ಸಮಗ್ರ ದೋಷ ನಿರ್ವಹಣೆಯನ್ನು ಜಾರಿಗೆ ತರುತ್ತದೆ
|
||||
: ಭದ್ರತಾ ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಅನುಸರಿಸಿ
|
||||
: ನಿರ್ವಹಣೀಯ ವಾಸ್ತುಶಿಲ್ಪಗಳನ್ನು ಸೃಷ್ಟಿಸಿ
|
||||
ಆಧುನಿಕ ವೆಬ್ ಮಾನದಂಡಗಳು
|
||||
: Fetch API ಮಾದರಿಗಳನ್ನು ಮಾಸ್ಟರ್ ಮಾಡಿ
|
||||
: CORS ಸಂರಚನೆಗಳನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಿ
|
||||
: ಪ್ರತಿಕ್ರಿಯಾಶೀಲ, ಪ್ರವೇಶযোগ্য UI ಗಳನ್ನು ನಿರ್ಮಿಸಿ
|
||||
```
|
||||
**🎓 ಪದವಿ ಕೊನೆಯ ಮರ್ಕುಳಿ**: ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಮಾದರಿಗಳನ್ನು ಬಳಸಿ ಸಂಪೂರ್ಣ ಡೇಟಾ-ಚಾಲಿತ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಯಶಸ್ವಿಯಾಗಿ ನಿರ್ಮಿಸಿದ್ದೀರಿ. ಈ ಕೌಶಲ್ಯಗಳು React, Vue ಅಥವಾ Angular ನಂತಹ ಫ್ರೇಮ್ವರ್ಕ್ಗಳೊಂದಿಗೆ ನೇರವಾಗಿ ಅನ್ವಯಿಸುತ್ತದೆ.
|
||||
|
||||
**🔄 ಮುಂದಿನ ಹಂತದ ಸಾಮರ್ಥ್ಯಗಳು**:
|
||||
- ಈ ತತ್ವಗಳ ಮೇಲೆ ಆಧಾರಿತ ಫ್ರಂಟ್ಎಂಡ್ ಫ್ರೇಮ್ವರ್ಕ್ಗಳನ್ನು ಅನ್ವೇಷಿಸಲು ಸಿದ್ಧ
|
||||
- WebSockets ಮೂಲಕ ನೈತಿಕ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಜಾರಿಗೆ ತರುವುದಕ್ಕೆ ಸಿದ್ಧ
|
||||
- ಆಫ್ಲೈನ್ ಸಾಮರ್ಥ್ಯಗಳೊಂದಿಗೆ ಪ್ರೋಗ್ರೆಸಿವ್ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಸಿದ್ಧ
|
||||
- ಸುಧಾರಿತ ಸ್ಥಿತಿ ನಿರ್ವಹಣಾ ಮಾದರಿಗಳನ್ನು ಕಲಿಯಲು ತಯಾರು
|
||||
|
||||
## GitHub Copilot ಏಜೆಂಟ್ ಸವಾಲ್ 🚀
|
||||
|
||||
ನೀವು ಏಜೆಂಟ್ ಮೋಡ್ ಬಳಸಿ ಕೆಳಗಿನ ಸವಾಲನ್ನು ಪೂರ್ಣಗೊಳಿಸಿ:
|
||||
|
||||
**ವಿವರಣೆ:** ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಿ, ಬಳಕೆದಾರರು ದಿನಾಂಕ ಮಿತಿ, ಮೊತ್ತ ಅಥವಾ ವ್ಯವಹಾರ ವಿವರ ನಿಯತಾಂಕಗಳ ಮೂಲಕ ನಿರ್ದಿಷ್ಟ ವ್ಯವಹಾರಗಳನ್ನು ಹುಡುಕಲು ಮತ್ತು ಫಿಲ್ಟರ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗುವಂತಹ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಜೋಡಿಸಿ.
|
||||
|
||||
**ಪ್ರಾಂಪ್ಟ್:** ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ಗಾಗಿ ಹುಡುಕಾಟ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ನಿರ್ಮಿಸಿ, ಅದು ಒಳಗೊಂಡಿದೆ: 1) ದಿನಾಂಕ ಮಿತಿ (ಇಂದಿನಿಂದ/ಇಂದಿಗೆ), ಕನಿಷ್ಠ/ಗರಿಷ್ಟ ಮೊತ್ತ, ಮತ್ತು ವ್ಯವಹಾರ ವಿವರಣೆ ಕೀーワード್ಗಳ್ತ್ರ ಹಾವಾಯ್ ಹುಡುಕಾಟ ಫಾರ್ಮ್, 2) ಹುಡುಕಾಟ ಮಾನದಂಡಗಳಿಗೆ ಅನುಗುಣವಾಗಿ account.transactions ಅrray ಅನ್ನು ಫಿಲ್ಟರ್ ಮಾಡುವ `filterTransactions()` ಫಂಕ್ಷನ್, 3) ಫಿಲ್ಟರ್ ಮಾಡಿದ ಫಲಿತಾಂಶಗಳನ್ನು ತೋರಿಸಲು `updateDashboard()` ನವೀಕರಣ, ಮತ್ತು 4) ವೀಕ್ಷಣೆಯನ್ನು ಮರುಹೊಂದಿಸಲು "ಫಿಲ್ಟರ್ ತೆರವು" ಬಟನ್. ಆಧುನಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅರೆ ಮಂಡಲ ವಿಧಾನಗಳಾದ `filter()` ಬಳಸಿ ಹಾಗೂ ಖಾಲಿ ಹುಡುಕಾಟ ಮಾನದಂಡಗಳ ಗಡಿಮೆಸಲು ಹ್ಯಾಂಡಲ್ ಮಾಡಿ.
|
||||
|
||||
ಇಲ್ಲಿ [ಏಜೆಂಟ್ ಮೋಡ್](https://code.visualstudio.com/blogs/2025/02/24/introducing-copilot-agent-mode) ಕುರಿತು ಹೆಚ್ಚಿನ ಮಾಹಿತಿ ಲಭ್ಯವಿದೆ.
|
||||
|
||||
## 🚀 ಸವಾಲ್
|
||||
|
||||
ನಿಮ್ಮ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಮುಂದಿನ ಮಟ್ಟಕ್ಕೆ ತೆಗೆದುಹೋಗಲು ಸಿದ್ಧವೇ? ಇದನ್ನು ನಿಜವಾಗಿಯೂ ಬಳಸಲು ಇಚ್ಛಿಸುವಂಥದಾಗಿಸೋಣ. ನಿಮ್ಮ ಸೃಜನಶೀಲತೆಯನ್ನು ಪ್ರೇರేపಿಸುವ ಕೆಲವು ಆಲೋಚನೆಗಳು:
|
||||
|
||||
**ಸುಂದರವಾಗಿ ಮಾಡಿ**: CSS ಶೈಲಿಯನ್ನು ಸೇರಿಸಿ ನಿಮ್ಮ ಕಾರ್ಯನಿರ್ವಹಣೆಯ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಅನ್ನು ದೃಶ್ಯವಾಗಿ ಆಕರ್ಷಕವಾಗಿಸಿಕೊಳ್ಳಿ. ಸ್ವಚ್ಛ ರೇಖೆಗಳು, ಉತ್ತಮ ಅಂತರ, ಹಾಗೂ ಸಂಪೂರ್ಣ ಹಾಸಿನ ಮರುಭರಿತ ಸ್ಪರ್ಶಗಳು.
|
||||
|
||||
**ಪ್ರತ್ಯುತ್ಯದಾಯಕವಾಗಿಸಿಕೊಳ್ಳಿ**: [ಮೀಡಿಯಾ ಕ್ವೆರಿಗಳ](https://developer.mozilla.org/docs/Web/CSS/Media_Queries) ಉಪಯೋಗಿಸಿ [ಪ್ರತ್ಯುತ್ಯದಾಯಕ ವಿನ್ಯಾಸ](https://developer.mozilla.org/docs/Web/Progressive_web_apps/Responsive/responsive_design_building_blocks) ರಚಿಸಿ, ಇದು ಫೋನ್ಗಳು, ಟ್ಯಾಬ್ಲೆಟ್ಗಳು ಮತ್ತು ಡೆಸ್ಕ್ಟಾಪ್ಗಳಲ್ಲಿ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ನಿಮ್ಮ ಬಳಕೆದಾರರು ನಿಮಗೆ ಧನ್ಯವಾದ ಹೇಳುತ್ತಾರೆ!
|
||||
|
||||
**ಕೆಲವು ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸೇರಿಸಿ**: ವ್ಯವಹಾರಗಳನ್ನು ಬಣ್ಣದಿಂದ ವಿವರಿಸಿ (ಆದಾಯಕ್ಕೆ ಹಸಿರು, ವೆಚ್ಚಕ್ಕೆ ಕೆಂಪು), ಐಕಾನ್ಗಳನ್ನು ಸೇರಿಸಿ, ಅಥವಾ ಹೋವರ್ ಪರಿಣಾಮಗಳ ಮೂಲಕ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಸಂವೇದನಾಶೀಲಗೊಳಿಸಿ.
|
||||
|
||||
ಇದಲ್ಲದೆ, ಈ ರೀತಿ ಒಳ್ಳೆಯ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಕಾಣಿಸಬಹುದು:
|
||||
|
||||

|
||||
|
||||
ನೀವು ಇದನ್ನು ಖಚಿತವಾಗಿ ಬೀಳ್ತೀರಾ ಎಂದು ಭಾವಿಸಬೇಡಿ - ಇದನ್ನು ಪ್ರೇರಣೆ ರೂಪದಲ್ಲಿ ತೆಗೆದುಕೊಳ್ಳಿ ಮತ್ತು ನಿಮ್ಮದೇ ರೀತಿಯಲ್ಲಿ ಮಾಡಿ!
|
||||
|
||||
## ಪಾಠೋತ್ತರ ಪ್ರಶ್ನೋತ್ತರ
|
||||
|
||||
[ಪಾಠೋತ್ತರ ಪ್ರಶ್ನೋತ್ತರ](https://ff-quizzes.netlify.app/web/quiz/46)
|
||||
|
||||
## ಹಬ್ಬಾಳಿಕೆ
|
||||
|
||||
[ನಿಮ್ಮ ಕೋಡ್ ನವೀಕರಿಸಿ ಮತ್ತು ಕಾಮೆಂಟ್ ಮಾಡಿ](assignment.md)
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಅದ್ಭುತ ಸೂಚನೆ**:
|
||||
ಈ ದಾಖಲೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಎಂಬ AI ಅನುವಾದ ಸೇವೆಯ ಮೂಲಕ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಯ ಪ್ರಯತ್ನ ಮಾಡುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಧುಯೋಗತೆಗಳು ಇರಬಹುದಾಗಿದೆ ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಾಖಲೆವೇ ಅತ್ಯಂತ ನೈಜ ಮೂಲವಾಗಿರುತ್ತದೆ ಎಂದು ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವದ ಮಾಹಿತಿ ಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾದ ಯಾವುದೇ ತಪ್ಪು ವಿವರಣೆಗಳು ಅಥವಾ ತಪ್ಪು ಅರ್ಥಗರ್ಭಿತಗಳಿಗೆ ನಾವು ಜವಾಬ್ದಾರಿಯಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,144 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "d0a02cb117e91a5b5f24178080068a3d",
|
||||
"translation_date": "2026-01-08T17:32:48+00:00",
|
||||
"source_file": "7-bank-project/3-data/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಕೋಡ್ ಮರುಸಂಯೋಜನೆ ಮತ್ತು ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ನಿಯೋಜನೆ
|
||||
|
||||
## ಕಲಿಕಾ ಗುರಿಗಳು
|
||||
|
||||
ಈ ನಿಯೋಜನೆಯನ್ನು ಪೂರ್ಣಗೊಳಿಸುವ ಮೂಲಕ, ನೀವು ವೃತ್ತಿಪರ ಡೆವಲಪರ್ಗಳು ಪ್ರತಿದಿನ ಬಳಸುತಿರುವ ಅಗತ್ಯವಾದ ಸಾಫ್ಟ್ವೇರ್ ಅಭಿವೃದ್ಧಿ ಕೌಶಲ್ಯಗಳನ್ನು ಅಭ್ಯಾಸ ಮಾಡಿಕೊಳ್ಳುತ್ತೀರಿ. ನೀವು ಕೋಡ್ ಅನ್ನು ನಿರ್ವಹಣೆಯುಳ್ಳಂತೆ ಸಂಘಟಿಸುವುದು, ಅವರுத்தಿಕೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುವುದು ಮತ್ತು ನಿಮ್ಮ ಕೆಲಸವನ್ನು ಭವಿಷ್ಯದಲ್ಲಿ ಅಭಿವೃದ್ಧಿಪಡಿಸುವವರಿಗಾಗಿ (ನಿಮ್ಮ ಸಹಿತ!) ಡಾಕ್ಯುಮೆಂಟ್ ಮಾಡುವುದು ಕಲಿಯುತ್ತೀರಿ.
|
||||
|
||||
ವಾಸ್ತವಿಕ ವೆಬ್ ಅಭಿವೃದ್ಧಿ ಯೋಜನೆಗಳಲ್ಲಿ ಸ್ವಚ್ಛ, ಚೆನ್ನಾಗಿ ಡಾಕ್ಯುಮೆಂಟ್ ಮಾಡಲಾದ ಕೋಡ್ ಬಹಳ ಮುಖ್ಯವಾಗಿದ್ದು, ಅಲ್ಲಿ ಹಲವಾರು ಡೆವಲಪರ್ಗಳು ಸಹಕಾರ ಮಾಡುತ್ತಾರೆ ಮತ್ತು ಕೋಡ್ಬೇಸ್ಗಳು ಕಾಲಕ್ರಮದಲ್ಲಿ ಅಭಿವೃದ್ಧಿಯಾಗುತ್ತವೆ.
|
||||
|
||||
## ನಿಯೋಜನೆ ಅವಲೋಕನ
|
||||
|
||||
ನಿಮ್ಮ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ನ `app.js` ಫೈಲ್ ಲಾಗಿನ್, ನೋಂದಣಿ ಮತ್ತು ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಕಾರ್ಯತತ್ಥ್ಯದೊಂದಿಗೆ ಸಾಕಷ್ಟು ವಿಸ್ತಾರಗೊಂಡಿದ್ದೇನೆ. ಈ ಕೋಡ್ ಅನ್ನು ವೃತ್ತಿಪರ ಅಭಿವೃದ್ಧಿ ಅಭ್ಯಾಸಗಳನ್ನು ಬಳಸಿ ಮರುಸಂಯೋಜನೆ ಮಾಡುವ ಸಮಯವಾಗಿದೆ, ಇದರಿಂದ ಓದುವುದರಲ್ಲಿ ಸುಲಭವಾಗುವುದು, ನಿರ್ವಹಣೆಯುಳ್ಳದು ಆಗುವುದು ಮತ್ತು ಅವರುತಿಕೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಬಹುದು.
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
ನಿಮ್ಮ ಪ್ರಸ್ತುತ `app.js` ಕೋಡ್ ಅನ್ನು ಈ ಮೂರು ಪ್ರಮುಖ ಮರುಸಂಯೋಜನೆ ತಂತ್ರಗಳನ್ನು ಜಾರಿಗೆ ತರುವ ಮೂಲಕ ಬದಲಾಯಿಸಿ:
|
||||
|
||||
### 1. ನಿಗದಿತ ನಿಯತಾಂಕಗಳನ್ನು ಹೊರತೆಗೆಯಿರಿ
|
||||
|
||||
**ಕಾರ್ಯ**: ಪುನಃ ಬಳಕೆಗೆ ಯೋಗ್ಯ ನಿಯತಾಂಕಗಳೊಂದಿಗೆ ಫೈಲ್ನ ಮೇಲ್ಭಾಗದಲ್ಲಿ ಸಂರಚನಾ ವಿಭಾಗದೊ לה ಪೂರ್ಣಗೊಳ್ಳಲು.
|
||||
|
||||
**ಅಮಲಾತ್ಮಕ ಸಲಹೆಗಳು:**
|
||||
- ಸರ್ವರ್ API ಮೂಲ URL ಅನ್ನು ಹೊರತೆಗೆಯಿರಿ (ಪ್ರಸ್ತುತ ಅನೇಕ ಸ್ಥಳಗಳಲ್ಲಿ ಹಾರ್ಡ್ಕೋಡ್ ಆಗಿದೆ)
|
||||
- ಅನೇಕ ಕಾರ್ಯಗಳಲ್ಲಿ ಕಾಣುವ ದೋಷ ಸಂದೇಶಗಳಿಗೆ ನಿಯತಾಂಕಗಳನ್ನು ರಚಿಸಿ
|
||||
- ಪುನರಾವೃತ್ತಿ ಆಗುತ್ತಿರುವ ಮಾರ್ಗ ಪಥಗಳು ಮತ್ತು ತತ್ವಾಂಶಗಳ IDಗಳನ್ನು ಹೊರತೆಗೆದುಕೊಳ್ಳುವ ಕುರಿತು ಪರಿಗಣಿಸಿ
|
||||
|
||||
**ಉದಾಹರಣೆ ರಚನೆ:**
|
||||
```javascript
|
||||
// ಸಂರಚನಾ ಸ್ಥಿರಾಂಕಗಳು
|
||||
const API_BASE_URL = 'http://localhost:5000/api';
|
||||
const ROUTES = {
|
||||
LOGIN: '/login',
|
||||
DASHBOARD: '/dashboard'
|
||||
};
|
||||
```
|
||||
|
||||
### 2. ಏಕೀಕೃತ ವಿನಂತಿ ಕಾರ್ಯವನ್ನು ರಚಿಸಿ
|
||||
|
||||
**ಕಾರ್ಯ**: `createAccount()` ಮತ್ತು `getAccount()` ನಡುವೆ ಇರುವ ನಕಲಿ ಕೋಡ್ ನಾಶ ಮಾಡಬಲ್ಲ ಪುನಃ ಬಳಕೆಯ `sendRequest()` ಫಂಕ್ಷನ್ ರಚಿಸಿ.
|
||||
|
||||
**ಆವಶ್ಯಕತೆಗಳು:**
|
||||
- GET ಮತ್ತು POST ಎರಡನ್ನೂ ನಿರ್ವಹಿಸಲು
|
||||
- ಸೂಕ್ತ ದೋಷ ನಿರ್ವಹಣೆ ಒಳಗೊಂಡಂತೆ
|
||||
- ಭಿನ್ನ URL ಎಂಡ್ಪಾಯಿಂಟ್ಗಳನ್ನು ಬೆಂಬಲಿಸುವುದು
|
||||
- ಐಚ್ಛಿಕ ವಿನಂತಿ ದೇಹದಲ್ಲಿನ ಡೇಟಾ ಸ್ವೀಕರಿಸುವುದು
|
||||
|
||||
**ಕಾರ್ಯಸೂಚಿ ಕೋಡ್ ಶಿಲ್ಪ:**
|
||||
```javascript
|
||||
async function sendRequest(endpoint, method = 'GET', data = null) {
|
||||
// ನಿಮ್ಮ ಜಾರಿಗೆ ಇಲ್ಲಿ
|
||||
}
|
||||
```
|
||||
|
||||
### 3. ವೃತ್ತಿಪರ ಕೋಡ್ ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಸೇರಿಸಿ
|
||||
|
||||
**ಕಾರ್ಯ**: ನಿಮ್ಮ ಲಾಜಿಯ ಹಿಂದೆ ಇರುವ "ಏಕೆ" ಯನ್ನು ವಿವರಿಸುವ ಸ್ಪಷ್ಟ, ಸಹಾಯಕ ಕಾಮೆಂಟ್ ಗಳೊಂದಿಗೆ ನಿಮ್ಮ ಕೋಡ್ ಡಾಕ್ಯುಮೆಂಟ್ ಮಾಡಿ.
|
||||
|
||||
**ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಮಾನದಂಡಗಳು:**
|
||||
- ಉದ್ದೇಶ, ಪ್ಯಾರಾಮೀಟರ್ಗಳು ಮತ್ತು ರಿಟರ್ನ್ ಮೌಲ್ಯಗಳನ್ನು ವಿವರಿಸುವ ಕಾರ್ಯ ಡಾಕ್ಯುಮೆಂಟ್ ಸೇರಿಸಿ
|
||||
- ಸಂಕೀರ್ಣ ಲಾಜಿಕ್ ಅಥವಾ ವ್ಯವಹಾರ ನಿಯಮಗಳಿಗಾಗಿ ಇನ್ಲೈನ್ ಕಾಮೆಂಟ್ಗಳನ್ನೊಳಗೊಂಡಿರಿ
|
||||
- ಸಂಬಂಧಿತ ಕಾರ್ಯಗಳನ್ನು ವಿಭಾಗ ಶೀರ್ಷಿಕೆಗಳಿಂದ ಗುಂಪು ಮಾಡಿ
|
||||
- ಸ್ಪಷ್ಟವಾಗದ ಕೋಡ್ ಮಾದರಿಗಳು ಅಥವಾ ಬ್ರೌಜರ್ ನಿರ್ದಿಷ್ಟ ಪರಿಹಾರಗಳನ್ನು ವಿವರಿಸಿ
|
||||
|
||||
**ಉದಾಹರಣೆ ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಶೈಲಿ:**
|
||||
```javascript
|
||||
/**
|
||||
* Authenticates user and redirects to dashboard
|
||||
* @param {Event} event - Form submission event
|
||||
* @returns {Promise<void>} - Resolves when login process completes
|
||||
*/
|
||||
async function login(event) {
|
||||
// ಜಾವಾಸ్క್ರಿಪ್ಟ್ ಬಳಸಿ ನಿರ್ವಹಿಸಲು ಡೀಫ ನೀತ್ಯಾ ಫಾರ್ಮ್ ಸಲ್ಲಿಕೆಯನ್ನು ತಡೆಹಿಡಿಯಿರಿ
|
||||
event.preventDefault();
|
||||
|
||||
// ನಿಮ್ಮ ಅನುಷ್ಠಾನ...
|
||||
}
|
||||
```
|
||||
|
||||
## ಯಶಸ್ಸಿನ ಮಾನದಂಡಗಳು
|
||||
|
||||
ನಿಮ್ಮ ಮರುಸಂಯೋಜಿತ ಕೋಡ್ ಈ ವೃತ್ತಿಪರ ಅಭಿವೃದ್ಧಿ ಅಭ್ಯಾಸಗಳನ್ನು ತೋರಿಸಬೇಕು:
|
||||
|
||||
### ಉದಾಹರಣೀಯ ಜಾರಿ
|
||||
- ✅ **ನಿಗದಿತ ನಿಯತಾಂಕಗಳು**: ಅಷ್ಟಿಷ್ಟು ಮಾಂತ್ರಿಕ ಸ್ಟ್ರಿಂಗ್ಗಳು ಮತ್ತು URL ಗಳನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಹೆಸರಿಸಲಾದ ನಿಯತಾಂಕಗಳಲ್ಲಿ ಹೊರತೆಗೆಯಲಾಗಿದೆ
|
||||
- ✅ **DRY ತತ್ವ**: ಸಾಮಾನ್ಯ ವಿನಂತಿ ತರ್ಕವನ್ನು ಪುನಃ ಬಳಕೆಯ `sendRequest()` ಕಾರ್ಯದಲ್ಲಿ ಸಮಗ್ರಗೊಳಿಸಲಾಗಿದೆ
|
||||
- ✅ **ಡಾಕ್ಯುಮೆಂಟೇಶನ್**: ಕಾರ್ಯಗಳ ಉದ್ದೇಶ ಮತ್ತು ಪ್ಯಾರಾಮೀಟರ್ಗಳನ್ನು ವಿವರಿಸುವ JSDoc ಕಾಮೆಂಟ್ಗಳು ಇವೆ
|
||||
- ✅ **ಸಂಘಟನೆ**: ಕೋಡ್ ಕೃತ್ರಿಮವಾಗಿ ವರ್ಗೀಕರಿಸಿ ವಿಭಾಗ ಶೀರ್ಷಿಕೆ ಮತ್ತು ಸತ್ವಪೂರ್ಣ ಸ್ವರೂಪದಲ್ಲಿ ಉನ್ನತಮವಾಗಿದೆ
|
||||
- ✅ **ದೋಷ ನಿರ್ವಹಣೆ**: ಹೊಸ ವಿನಂತಿ ಕಾರ್ಯವನ್ನು ಬಳಸಿ ಸುಧಾರಿತ ದೋಷ ನಿರ್ವಹಣೆ
|
||||
|
||||
### ಯೋಗ್ಯ ಜಾರಿ
|
||||
- ✅ **ನಿಗದಿತ ನಿಯತಾಂಕಗಳು**: ಬಹುತೇಕ ಪುನರಾವೃತಿ ಮೌಲ್ಯಗಳನ್ನು ಹೊರತೆಗೆಯಲಾಗಿದೆ, ಚಿಕ್ಕ ಹಾರ್ಡ್ಕೋಡ್ ಮೌಲ್ಯಗಳು ಉಳಿದಿವೆ
|
||||
- ✅ **ಘಟಕಾಕೃತಿ**: ಮೂಲಭೂತ `sendRequest()` ಕಾರ್ಯ ರಚಿಸಲಾಗಿದೆ ಆದರೆ ಎಲ್ಲ ತಿರುವು ಪ್ರಕರಣಗಳನ್ನು ನಿರ್ವಹಿಸದಿರಬಹುದು
|
||||
- ✅ **ಕಾಮೆಂಟ್ಗಳು**: ಮುಖ್ಯ ಕಾರ್ಯಗಳನ್ನು ಡಾಕ್ಯುಮೆಂಟ್ ಮಾಡಲಾಗಿದೆ, ಆದರೆ ಕೆಲವು ವಿವರಣೆಗಳು ಪೂರ್ಣವಾಗಿಲ್ಲದಿರಬಹುದು
|
||||
- ✅ **ಓದಬಹುದಾದಿಕೆ**: ಕೋಡ್ ಸಾಮಾನ್ಯವಾಗಿ ಚೆನ್ನಾಗಿ ಸಂಘಟಿತವಾಗಿದೆ, ಕೆಲವು ಸುಧಾರಣೆ ಸ್ಥಳಗಳಿವೆ
|
||||
|
||||
### ಸುಧಾರಣೆ ಬೇಕು
|
||||
- ❌ **ನಿಗದಿತ ನಿಯತಾಂಕಗಳು**: ಅನೇಕ ಮಾಂತ್ರಿಕ ಸ್ಟ್ರಿಂಗ್ಗಳು ಮತ್ತು URL ಗಳು ಸಂಪೂರ್ಣ ಫೈಲ್ನಲ್ಲಿ ಹಾರ್ಡ್ಕೋಡ್ ಆಗಿವೆ
|
||||
- ❌ **ಪುನರಾವೃತಿ**: ಸಮಾನ ಕಾರ್ಯಗಳ ನಡುವೆ ಮಹತ್ವದ ಕೋಡ್ ನಕಲಿಕೆ ಉಳಿದಿದೆ
|
||||
- ❌ **ಡಾಕ್ಯುಮೆಂಟೇಶನ್**: ಕೋಡ್ ಉದ್ದೇಶವನ್ನು ವಿವರಿಸುವ ಕಾಮೆಂಟ್ಗಳು ಇಲ್ಲ ಅಥವಾ ಅಪ್ರತಿಕೂಲವಾಗಿವೆ
|
||||
- ❌ **ಸಂಘಟನೆ**: ಕೋಡ್ ಸ್ಪಷ್ಟವಾದ ರಚನೆಯಾಗಿಲ್ಲ ಮತ್ತು ತರ್ಕಮಯ ಗುಂಪುಗಳಿಲ್ಲ
|
||||
|
||||
## ನಿಮ್ಮ ಮರುಸಂಯೋಜಿತ ಕೋಡ್ ಅನ್ನು ಪರೀಕ್ಷಿಸುವುದು
|
||||
|
||||
ಮರುಸಂಯೋಜನೆಯ ನಂತರ, ನಿಮ್ಮ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದೆಯಾ ಎಂದು ದೃಢಪಡಿಸಿ:
|
||||
|
||||
1. **ಎಲ್ಲಾ ಬಳಕೆದಾರ ಹರಿವುಗಳನ್ನು ಪರೀಕ್ಷಿಸಿ**: ನೋಂದಣಿ, ಲಾಗಿನ್, ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಪ್ರದರ್ಶನ, ಮತ್ತು ದೋಷ ನಿರ್ವಹಣೆ
|
||||
2. **API ಕರೆಗೆ ತಪಾಸಣೆ ಮಾಡಿ**: ನಿಮ್ಮ `sendRequest()` ಕಾರ್ಯವು ಖಾತೆ ರಚನೆ ಮತ್ತು ಪಡೆಯಲು ಎರಡನ್ನೂ ಸರಿಯಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ
|
||||
3. **ದೋಷ ಸ್ಥಿತಿಗಳನ್ನು ಪರಿಶೀಲಿಸಿ**: ಅಸಾಕ್ಷ್ಯಾತ ಪ್ರಮಾಣಪತ್ರ ಮತ್ತು ನೆಟ್ವರ್ಕ್ ದೋಷಗಳೊಂದಿಗೆ ಪರೀಕ್ಷಿಸಿ
|
||||
4. **ಕನ್ಸೋಲ್ ಔಟ್ಪುಟ್ ಪರಿಶೀಲನೆ**: ಮರುಸಂಯೋಜನೆಯ ವೇಳೆ ಯಾವುದೇ ಹೊಸ ದೋಷಗಳು ಹುಟ್ಟಿಕೊಂಡಿಲ್ಲವೇ ಎಂದು ಖಚಿತಪಡಿಸಿ
|
||||
|
||||
## ಸಲ್ಲಿಕೆಯ ಮಾರ್ಗಸೂಚಿಗಳು
|
||||
|
||||
ನಿಮ್ಮ ಮರುಸಂಯೋಜಿತ `app.js` ಫೈಲ್ ಅನ್ನು ಈ ನಿಯಮಾನುಸಾರ ಸಲ್ಲಿಸಿ:
|
||||
- ವಿವಿಧ ಕಾರ್ಯತತ್ಥ್ಯಗಳನ್ನು ಸಂಘಟಿಸುವ ಸ್ಪಷ್ಟ ವಿಭಾಗ ಶೀರ್ಷಿಕೆಗಳು
|
||||
- ಸತ್ವಪೂರ್ಣ ಕೋಡ್ ಸ್ವರೂಪ ಮತ್ತು ಉದ್ದೇಶದ ಅನುಯಾಯಿಗಳಾಗಿ
|
||||
- ಎಲ್ಲಾ ಕಾರ್ಯಗಳ ಪೂರ್ಣ JSDoc ಡಾಕ್ಯುಮೆಂಟೇಶನ್
|
||||
- ಮೇಲ್ಭಾಗದಲ್ಲಿ ಜನರಲ್ ಮರುಸಂಯೋಜನೆ ದೃಷ್ಟಿಕೋಣವನ್ನು ವಿವರಿಸುವ ಸಂಕ್ಷಿಪ್ತ ಕಾಮೆಂಟ್
|
||||
|
||||
**ಬೋನಸ್ ಚಾಲೆಂಜ್**: ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ವಾಸ್ತುಶಿಲ್ಪವನ್ನು ವಿವರಿಸುವ ಮತ್ತು ವಿವಿಧ ಕಾರ್ಯಗಳು ಹೇಗೆ ಒಟ್ಟಿಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದನ್ನು ವಿವರಿಸುವ ಸರಳ ಕೋಡ್ ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಫೈಲ್ (`CODE_STRUCTURE.md`) ರಚಿಸಿ.
|
||||
|
||||
## ವಾಸ್ತವಿಕ ಜಗತ್ತು ಸಂಪರ್ಕ
|
||||
|
||||
ಈ ನಿಯೋಜನೆ ವೃತ್ತಿಪರ ಡೆವಲಪರ್ಗಳು ನಿಯಮತಃ ನಡೆಸುವ ಕೋಡ್ ನಿರ್ವಹಣೆಯ ರೀತಿಯನ್ನು ಅನುಕರಣ ಮಾಡುತ್ತದೆ. ಕೈಗಾರಿಕಾ ಸೆಟ್ಟಿಂಗ್ಗಳಲ್ಲಿ:
|
||||
- **ಕೋಡ್ ವಿಮರ್ಶೆ**ಗಳು ಓದಬೇಕಾದ ಹಾಗೆ ಮತ್ತು ನಿರ್ವಹಣೆಯುಳ್ಳ ರೀತಿಯಲ್ಲಿ ಈ ನಿಯೋಜನೆಗಳಂತೆ ಮೌಲ್ಯಮಾಪನ ಮಾಡುತ್ತವೆ
|
||||
- **ತಾಂತ್ರಿಕ ಸಾಲ** ಕೋಡ್ ನಿಯಮಿತವಾಗಿ ಮರುಸಂಯೋಜನೆ ಮಾಡದೇ ಮತ್ತು ಡಾಕ್ಯುಮೆಂಟ್ ಮಾಡದೇ ಉಳಿದಾಗ ಸಂಗ್ರಹವಾಗುತ್ತದೆ
|
||||
- **ಟೀಮ್ ಸಹಕಾರ** ಸ್ಪಷ್ಟ ಮತ್ತು ಚೆನ್ನಾಗಿ ಡಾಕ್ಯುಮೆಂಟ್ ಮಾಡಲಾದ ಕೋಡ್ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿದೆ, ಹೊಸ ಟೀಮ್ ಸದಸ್ಯರು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ
|
||||
- **ದೋಷ ಶುದ್ದತೆಗಳು** ಸೂಕ್ತ ಅವಿಭಜನೆಗಳೊಂದಿಗೆ ಉತ್ತಮ ಸಂಘಟಿತ ಕೋಡ್ಬೇಸ್ಗಳಲ್ಲಿ ಬಹಳ ಸುಲಭ
|
||||
|
||||
ನೀವು ಇಲ್ಲಿ ಅಭ್ಯಾಸ ಮಾಡುತ್ತಿರುವ ಕೌಶಲ್ಯಗಳು - ನಿಯತಾಂಕಗಳನ್ನು ಹೊರತೆಗೆಯುವುದು, ನಕಲಿಕೆಯನ್ನು ನಿವಾರಿಸುವುದು ಮತ್ತು ಸ್ಪಷ್ಟ ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಬರೆಯುವುದು - ವೃತ್ತಿಪರ ಸಾಫ್ಟ್ವೇರ್ ಅಭಿವೃದ್ಧಿಗೆ ಮೂಲಭೂತ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ನಿರಾಕರಣೆ**:
|
||||
ಈ ದಾಖಲೆ AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಯ ಕಡೆ ಗಮನ ಹರಿಸುತ್ತೇವೆ ಆದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇದ್ದಿರಬಹುದು. ಮೂಲ ದಾಖಲೆ ಅದರ ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಅಧಿಕೃತ ಮೂಲವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸ್ಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದವನ್ನು ಬಳಸದರಿಂದ ಉಂಟಾಗಬಹುದಾದ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿಕೆ ಅಥವಾ ಅರ್ಥಭ್ರಾಂತರ জন্য ನಾವು ಜವಾಬ್ದಾರಿಯಾಗಿರುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,164 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "50a7783473b39a2e0f133e271a102231",
|
||||
"translation_date": "2026-01-08T18:01:29+00:00",
|
||||
"source_file": "7-bank-project/4-state-management/assignment.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# "ಲೆನದ ಪತ್ರವನ್ನು ಸೇರಿಸಿ" ಡೈಲಾಗ್ ಅನುಷ್ಠಾನಗೊಳಿಸಿ
|
||||
|
||||
## ಅವಲೋಕನ
|
||||
|
||||
ನಿಮ್ಮ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಈಗ ಸ್ಟೇಟ್ ಮ್ಯಾನೇಜ್ಮೆಂಟ್ ಮತ್ತು ಡೇಟಾ ಪರ್ಸಿಸ್ಟನ್ಸ್ ಪಡೆದಿದೆ, ಆದರೆ ಅದು ಒಂದು ಅವಶ್ಯಕ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಹೊಂದಿಲ್ಲ: ಬಳಕೆದಾರರು ತಮ್ಮದೇ ಲೆನದ ಪತ್ರಗಳನ್ನು ಸೇರಿಸಲು ಸಾಧ್ಯವಾಗಬೇಕಾಗಿದೆ. ಈ ಅಸೈನ್ಮೆಂಟ್ನಲ್ಲಿ, ನೀವು ನಿಮ್ಮ ಇತರ ಸ್ಟೇಟ್ ಮ್ಯಾನೇಜ್ಮೆಂಟ್ ವ್ಯವಸ್ಥೆಯೊಂದಿಗೆ ಸೊಗಸಾಗಿ ಏಕೀಕರಿಸುವ ಸಂಪೂರ್ಣ "ಲೆನದ ಪತ್ರವನ್ನು ಸೇರಿಸಿ" ಡೈಲಾಗ್ ಅನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸುತ್ತೀರಿ.
|
||||
|
||||
ಈ ಅಸೈನ್ಮೆಂಟ್ ನಿಮ್ಮ ನಾಲ್ಕು ಬ್ಯಾಂಕಿಂಗ್ ಪಾಠಗಳಲ್ಲಿ ಕಲಿತ ಎಲ್ಲಾ ವಿಷಯಗಳನ್ನು: HTML ಟೆಂಪ್ಲೇಟಿಂಗ್, ಫಾರ್ಮ್ ಹ್ಯಾಂಡಲಿಂಗ್, API ಏಕೀಕರಣ, ಮತ್ತು ಸ್ಟೇಟ್ ಮ್ಯಾನೇಜ್ಮೆಂಟ್ ಅನ್ನು ಒಟ್ಟಾರೆ ಕೊಂಡೊಯ್ಯುತ್ತದೆ.
|
||||
|
||||
## ಕಲಿಕೆ ಉದ್ದೇಶಗಳು
|
||||
|
||||
ಈ ಅಸೈನ್ಮೆಂಟ್ ಪೂರ್ಣಗೊಳಿಸುವ ಮೂಲಕ, ನೀವು:
|
||||
- **ಬಳಕೆದಾರ ಸ್ನೇಹಿ** ಡೈಲಾಗ್ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ರಚಿಸುವಿರಿ
|
||||
- **ಅಕ್ಸೆಸಿಬಲ್** ಫಾರ್ಮ್ ವಿನ್ಯಾಸವನ್ನು ಕೀಬೋರ್ಡ್ ಮತ್ತು ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಬೆಂಬಲದೊಂದಿಗೆ ಅನುಷ್ಠಾನಗೊಳಿಸುವಿರಿ
|
||||
- **ಎಕ್ಸಿಸ್ಟಿಂಗ್ ಸ್ಟೇಟ್ ಮ್ಯಾನೇಜ್ಮೆಂಟ್** ವ್ಯವಸ್ಥೆಯೊಂದಿಗೆ ಹೊಸ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಏಕೀಕರಿಸುವಿರಿ
|
||||
- **API ಸಂವಹನ ಮತ್ತು ದೋಷ ನಿರ್ವಹಣೆ** ಅಭ್ಯಾಸ ಮಾಡುವಿರಿ
|
||||
- **ಆಧುನಿಕ ವೆಬ್ ಅಭಿವೃದ್ಧಿ ಮಾದರಿಗಳನ್ನು** ನೈಜ-ಲೋಕ ವೈಶಿಷ್ಟ್ಯಕ್ಕೆ ಅನ್ವಯಿಸುವಿರಿ
|
||||
|
||||
## ಸೂಚನೆಗಳು
|
||||
|
||||
### ಹಂತ 1: ಲೆನದ ಪತ್ರ ಸೇರಿಸುವ ಬಟನ್
|
||||
|
||||
ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಪುಟದಲ್ಲಿ ಬಳಕೆದಾರರು ಸುಲಭವಾಗಿ ಕಂಡು ಸಾಧಿಸಲು ಆಗುವ "ಲೆನದ ಪತ್ರ ಸೇರಿಸಿ" ಬಟನ್ ಅನ್ನು **ಸೃಷ್ಟಿಸಿ**.
|
||||
|
||||
**ಅವಶ್ಯಕತೆಗಳು:**
|
||||
- ಡ್ಯಾಶ್ಬೋರ್ಡ್ನ ತರ್ಕಬದ್ಧ ಸ್ಥಳದಲ್ಲಿ ಬಟನ್ **ನಿರ್ವಹಿಸಿ**
|
||||
- ಸ್ಪಷ್ಟ, ಕ್ರಿಯಾಶೀಲ ಬಟನ್ ಪಠ್ಯವನ್ನು **ಬಳಸು**
|
||||
- ನಿಮ್ಮ ಇತ್ತೀಚಿನ UI ವಿನ್ಯಾಸಕ್ಕೆ ಅನುಗುಣವಾಗಿ ಬಟನನ್ನು **ಶೈಲಿ ಮಾಡಿ**
|
||||
- ಬಟನ್ ಕೀಬೋರ್ಡ್ ಮೂಲಕ **ಸುಲಭವಾಗಿ ಬಳಕೆ ಮಾಡಬಹುದಾಗಿರಲಿ**
|
||||
|
||||
### ಹಂತ 2: ಡೈಲಾಗ್ ಅನುಷ್ಠಾನ
|
||||
|
||||
ನಿಮ್ಮ ಡೈಲಾಗ್ ಅನುಷ್ಠಾನಕ್ಕೆ ಈ ಎರಡು ವಿಧಾನಗಳಲ್ಲೊಂದು ಆಯ್ಕೆಮಾಡಿ:
|
||||
|
||||
**ವಿಕಲ್ಪ A: ಪ್ರತ್ಯೇಕ ಪುಟ**
|
||||
- ಲೆನದ ಪತ್ರ ಫಾರ್ಮ್ಗೆ ಹೊಸ HTML ಟೆಂಪ್ಲೇಟನ್ನು **ಸೃಷ್ಟಿಸಿ**
|
||||
- ನಿಮ್ಮ ರೌಟಿಂಗ್ ವ್ಯವಸ್ಥೆಗೆ ಹೊಸ ಮಾರ್ಗವನ್ನು **ಹೋರಾಟ ಮಾಡಿ**
|
||||
- ಫಾರ್ಮ್ ಪುಟಕ್ಕೆ ಮತ್ತು ಹಿಂದಕ್ಕೆ ಸಂಚರಿಸುವ ಅವಕಾಶವನ್ನು **ಅನುಷ್ಠಾನಗೊಳಿಸಿ**
|
||||
|
||||
**ವಿಕಲ್ಪ B: ಮೋಡಲ್ ಡೈಲಾಗ್ (ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ)**
|
||||
- ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಬಿಟ್ಟುಹೋಗದೆ JavaScript ಬಳಸಿ ಡೈಲಾಗ್ ಅನ್ನು ತೋರಿಸ/ಮರೆಮಾಡಿ
|
||||
- [`hidden` ಗುಣಲಕ್ಷಣ](https://developer.mozilla.org/docs/Web/HTML/Global_attributes/hidden) ಅಥವಾ CSS ವರ್ಗಗಳನ್ನು **ಬಳಸಿರಿ**
|
||||
- ಸರಿಯಾದ ಫೋಕಸ್ ನಿರ್ವಹಣೆಯೊಂದಿಗೆ ಸಿವಾರ ಪಟ್ಟ ಅನುಭವವನ್ನು **ತಯಾರಿಸಿ**
|
||||
|
||||
### ಹಂತ 3: ಅಕ್ಸೆಸಿಬಿಲಿಟಿ ಅನುಷ್ಠಾನ
|
||||
|
||||
ನಿಮ್ಮ ಡೈಲಾಗ್ [ಮೋಡಲ್ ಡೈಲಾಗ್ಗಳಿಗೆ ನನ್ನವಿರುವ ಅಕ್ಸೆಸಿಬಿಲಿಟಿ ಮಾನದಂಡಗಳನ್ನು](https://developer.paciellogroup.com/blog/2018/06/the-current-state-of-modal-dialog-accessibility/) ಪೂರೈಸುವಂತೆ **ಪರಿಶೀಲಿಸಿ**:
|
||||
|
||||
**ಕೀಬೋರ್ಡ್ ನ್ಯಾವಿಗೇಶನ್:**
|
||||
- ಡೈಲಾಗ್ ಮುಚ್ಚಲು Escape ಕೀ ಬೆಂಬಲಿಸಿ
|
||||
- ಡೈಲಾಗ್ ತೆರೆಯಲಾದಾಗ ಫೋಕಸ್ ಅನ್ನು ಒಳಗಿನ ಭಾಗದಲ್ಲಿಯೇ **ಬಿಗಿ ಹಿಡಿಸಿ**
|
||||
- ಮುಚ್ಚಿದ ನಂತರ ಫೋಕಸ್ ಅನ್ನು ಟ್ರಿಗರ್ ಬಟನ್ಗೆ ಮತ್ತೆ **ಹಿಂತಿರುಗಿಸಿ**
|
||||
|
||||
**ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಬೆಂಬಲ:**
|
||||
- ಸೂಕ್ತ ARIA ಲೇಬಲ್ಗಳು ಮತ್ತು ಪಾತ್ರಗಳನ್ನು **ಹೋದಲಿಸಿ**
|
||||
- ಡೈಲಾಗ್ ತೆರೆಯುವುದು/ಮುಚ್ಚುವುದು ಸ್ಕ್ರೀನ್ ರೀಡರ್ಗೆ **ಘೋಷಿಸಿ**
|
||||
- ಸ್ಪಷ್ಟ ಫಾರ್ಮ್ ಕ್ಷೇತ್ರ ಲೇಬಲ್ಗಳನ್ನು ಮತ್ತು ದೋಷ ಸಂದೇಶಗಳನ್ನು **ನೀಡಿ**
|
||||
|
||||
### ಹಂತ 4: ಫಾರ್ಮ್ ರಚನೆ
|
||||
|
||||
ಲೆನದ ಪತ್ರ ಡೇಟಾಗೆ ಸೇರಿಸಲು HTML ಫಾರ್ಮ್ ಅನ್ನು **ವಿನ್ಯಾಸ ಮಾಡಿ**:
|
||||
|
||||
**ಅವಶ್ಯಕ ಕ್ಷೇತ್ರಗಳು:**
|
||||
- **ದಿನಾಂಕ**: ಲೆನದ ಪತ್ರ ಯಾವಾಗ ನಡೆದಿದೆ
|
||||
- **ವಿವರಣೆ**: ಲೆನದ ಪತ್ರ ಯಾವ ಕಾರಣಕ್ಕಾಗಿ ಇದೆ
|
||||
- **ಮುಲ್ಯ**: ಲೆನದ ಪತಿಯ ಮೌಲ್ಯ (ಆದಾಯಕ್ಕೆ ಧನಾತ್ಮಕ, ಖರ್ಚಿಗೆ ಋಣಾತ್ಮಕ)
|
||||
|
||||
**ಫಾರ್ಮ್ ವೈಶಿಷ್ಟ್ಯಗಳು:**
|
||||
- ಸಲ್ಲಿಸುವ ಮೊದಲು ಬಳಕೆದಾರ ಅಂಕಗಳನ್ನು **ಸರಿಯಾದದಾಗಿರುವುದನ್ನೌಪಯೋಗಿ**
|
||||
- ತಪ್ಪು ಡೇಟಾಗೆ ಸ್ಪಷ್ಟ ದೋಷ ಸಂದೇಶಗಳನ್ನು **ನೀಡಿ**
|
||||
- ಸಹಾಯಕ Placeholder ಪಠ್ಯ ಮತ್ತು ಲೇಬಲ್ಗಳನ್ನು **ಸೇರಿಸಿ**
|
||||
- ನಿಮ್ಮ ಇತ್ತೀಚಿನ ವಿನ್ಯಾಸಕ್ಕೆ ಸಮ್ಮತವಾಗಿ **ಶೈಲಿ ಮಾಡಿ**
|
||||
|
||||
### ಹಂತ 5: API ಏಕೀಕರಣ
|
||||
|
||||
ನಿಮ್ಮ ಫಾರ್ಮ್ ಅನ್ನು ಬ್ಯಾಂಕಿಂಗ್ API ನೊಂದಿಗೆ **ಸಂಪರ್ಕಿಸಿ**:
|
||||
|
||||
**ಅನುಷ್ಠಾನ ಹಂತಗಳು:**
|
||||
- ಸರಿಯಾದ ಎಂಡ್ಪಾಯಿಂಟ್ ಮತ್ತು ಡೇಟಾ ಫಾರ್ಮಾಟ್ ಗಾಗಿ [ಸರ್ವರ್ API ನಿರ್ದಿಷ್ಟತೆಗಳನ್ನು](../api/README.md) **ಪರಿಶೀಲಿಸಿ**
|
||||
- ಫಾರ್ಮ್ ಇನ್ಪುಟ್ಗಳಿಂದ JSON ಡೇಟಾ **ತಯಾರಿಸಿ**
|
||||
- ಸರಿಯಾದ ದೋಷ ನಿರ್ವಹಣೆಯೊಂದಿಗೆ API ಗೆ ಡೇಟಾವನ್ನು **ಪাঠಿಸಿ**
|
||||
- ಬಳಕೆದಾರಿಗೆ ಯಶಸ್ಸು/ವಿಫಲತೆ ಸಂದೇಶಗಳನ್ನು **ತೋರಿಸಿ**
|
||||
- ನೆಟ್ವರ್ಕ್ ದೋಷಗಳನ್ನು ಶ್ರದ್ಧೆಯುತವಾಗಿ **ನಿರ್ವಹಿಸಿ**
|
||||
|
||||
### ಹಂತ 6: ಸ್ಟೇಟ್ ಮ್ಯಾನೇಜ್ಮೆಂಟ್ ಏಕೀಕರಣ
|
||||
|
||||
ಹೊಸ ಲೆನದ ಪತ್ರದೊಂದಿಗೆ ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಅನ್ನು **ಅัปಡೇಟ್ ಮಾಡಿ**:
|
||||
|
||||
**ಎಕೀಕರಣ ಅವಶ್ಯಕತೆಗಳು:**
|
||||
- ಲೆನದ ಪತ್ರ ಯಶಸ್ವಿಯಾಗಿ ಸೇರಿಸಿದ ನಂತರ ಖಾತೆ ಡೇಟಾವನ್ನು **ರಿಫ್ರೆಶ್ ಮಾಡಿ**
|
||||
- ಪುಟ ರೀಹ್ಲೋಡ್ ಅಗತ್ಯವಿಲ್ಲದೆ ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಪ್ರದರ್ಶನವನ್ನು **ನವೀಕರಿಸಿ**
|
||||
- ಹೊಸ ಲೆನದ ಪತ್ರ ತಕ್ಷಣವೇ **ತೋರಿಸಬೇಕು**
|
||||
- ಪ್ರಕ್ರಿಯೆ ಅವಧಿಯಲ್ಲಿ ಸರಿಯಾದ ಸ್ಟೇಟ್ ಸಮ್ಮತತೆಯನ್ನು **ರಕ್ಷಿಸಿ**
|
||||
|
||||
## ತಾಂತ್ರಿಕ ನಿರ್ದಿಷ್ಟತೆಗಳು
|
||||
|
||||
**API ಎಂಡ್ಪಾಯಿಂಟ್ ವಿವರಗಳು:**
|
||||
[ಸರ್ವರ್ API ಡಾಕ್ಯುಮೆಂಟೇಶನ್](../api/README.md) ನೋಡಿ:
|
||||
- ಲೆನದ ಪತ್ರ ಡೇಟಾ ಗೆ ಅಗತ್ಯವಿರುವ JSON ಫಾರ್ಮಾಟ್
|
||||
- HTTP ವಿಧಾನ ಮತ್ತು ಎಂಡ್ಪಾಯಿಂಟ್ URL
|
||||
- ನಿರೀಕ್ಷಿತ ಪ್ರತಿಕ್ರಿಯೆ ಫಾರ್ಮಾಟ್
|
||||
- ದೋಷ ಪ್ರತಿಕ್ರಿಯೆ ನಿರ್ವಹಣೆ
|
||||
|
||||
**ನಿರೀಕ್ಷಿತ ಫಲಿತಾಂಶ:**
|
||||
ಈ ಅಸೈನ್ಮೆಂಟ್ ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ, ನಿಮ್ಮ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ಪರಿಪೂರ್ಣವಾಗಿ ಕೆಲಸ ಮಾಡುವ "ಲೆನದ ಪತ್ರ ಸೇರಿಸಿ" ವೈಶಿಷ್ಟ್ಯವನ್ನು ಹೊಂದಿರುತ್ತದೆ, ವೃತ್ತಿಪರವಾಗಿ ಕಾಣುವುದು ಮತ್ತು ನಡೆದುಕೊಳ್ಳುವುದು:
|
||||
|
||||

|
||||
|
||||
## ನಿಮ್ಮ ಅನುಷ್ಠಾನವನ್ನು ಪರೀಕ್ಷಿಸುವುದು
|
||||
|
||||
**ಕಾರ್ಯಾಚರಣಾ ಪರೀಕ್ಷೆ:**
|
||||
1. "ಲೆನದ ಪತ್ರ ಸೇರಿಸಿ" ಬಟನ್ ಸ್ಪಷ್ಟವಾಗಿ ದೃಶ್ಯಮಾನದಾಗಿದ್ದು ಲಭ್ಯವಿದೆ ಎಂದು **ತಪಾಸಣೆ ಮಾಡಿ**
|
||||
2. ಡೈಲಾಗ್ ಸರಿಯಾಗಿ ತೆರೆಯುತ್ತದೆ ಮತ್ತು ಮುಚ್ಚುತ್ತದೆ ಎಂಬುದನ್ನು **ಪರಿಶೀಲಿಸಿ**
|
||||
3. ಎಲ್ಲಾ ಅಗತ್ಯ ಕ್ಷೇತ್ರಗಳಿಗೆ ಫಾರ್ಮ್ ಮೌಲ್ಯಪೂರಣ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂದು **ನಿಖರತೆ ಮಾಡಿ**
|
||||
4. ಯಶಸ್ವಿ ಲೆನದ ಪತ್ರಗಳು ತಕ್ಷಣವೇ ಡ್ಯಾಶ್ಬೋರ್ಡ್ನಲ್ಲಿ ಕಾಣುತ್ತವೆ ಎಂಬುದನ್ನು **ಪರಿಶೀಲಿಸಿ**
|
||||
5. ತಪ್ಪು ಡೇಟಾ ಮತ್ತು ನೆಟ್ವರ್ಕ್ ಸಮಸ್ಯೆಗಳಿಗಾಗಿ ದೋಷ ನಿರ್ವಹಣೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂದು **ನಿರೀಕ್ಷಿಸಿ**
|
||||
|
||||
**ಅಕ್ಸೆಸಿಬಿಲಿಟಿ ಪರೀಕ್ಷೆ:**
|
||||
1. ಕೇವಲ ಕೀಬೋರ್ಡ್ ಬಳಸಿ ಸಂಪೂರ್ಣ ಪ್ರಕ್ರಿಯೆ ಮೂಲಕ **ಸಂಚರಿಸಿ**
|
||||
2. ಸರಿಯಾದ ಘೋಷಣೆಗಳಿಗಾಗಿ ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಬಳಸಿ **ಪರೀಕ್ಷಿಸಿ**
|
||||
3. ಫೋಕಸ್ ನಿರ್ವಹಣೆ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದೆ ಎಂದು **ನಿಖರವಾಗಿ ಪರಿಶೀಲಿಸಿ**
|
||||
4. ಎಲ್ಲಾ ಫಾರ್ಮ್ ಘಟಕಗಳಿಗೆ ಸೂಕ್ತ ಲೇಬಲ್ಗಳು ಇರುವುದನ್ನು **ತಪಾಸಿಸಿರಿ**
|
||||
|
||||
## ಮೌಲ್ಯಮಾಪನ ರೂಬ್ರಿಕ್
|
||||
|
||||
| ಮಾನದಂಡ | ಉದಾಹರಣೆ | ಅತ್ಯುತ್ತಮ | ಸುಧಾರಣೆ ಅಗತ್ಯವಿದೆ |
|
||||
| -------- | --------- | -------- | ----------------- |
|
||||
| **ಕಾರ್ಯಾಚರಣೆ** | ಲೆನದ ಪತ್ರ ವೈಶಿಷ್ಟ್ಯವು ದೋಷರಹಿತವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಅತ್ಯುತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವ ಮತ್ತು ಪಾಠಗಳಿಂದ ಎಲ್ಲ ಉತ್ತಮ ಕ್ರಮಗಳನ್ನು ಅನುಸರಿಸುತ್ತದೆ | ಲೆನದ ಪತ್ರ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಆದರೆ ಕೆಲವು ಅತ್ಯುತ್ತಮ ಕ್ರಮಗಳನ್ನು ಅನುಸರಿಸದೆ ಅಥವಾ ಸಣ್ಣ ಬಳಕೆದಾರ ಅನುಕೂಲ ಸಮಸ್ಯೆಗಳಿವೆ | ಲೆನದ ಪತ್ರ ಭಾಗಶಃ ಮಾತ್ರ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಅಥವಾ ಪ್ರಮುಖ ಬಳಕೆದಾರ ಅನುಕೂಲ ಸಮಸ್ಯೆಗಳಿವೆ |
|
||||
| **ಕೋಡ್ ಗುಣಮಟ್ಟ** | ಕೋಡ್ ಸುಸಂಯೋಜಿತವಾಗಿದೆ, ಸ್ಥಾಪಿತ ಮಾದರಿಗಳನ್ನು ಅನುಸರಿಸುತ್ತದೆ, ಸರಿಯಾದ ದೋಷ ನಿರ್ವಹಣೆಯುಳ್ಳದೆ ಮತ್ತು ಇತ್ತೀಚಿನ ಸ್ಟೇಟ್ ವ್ಯವಸ್ಥೆಯೊಂದಿಗೆ ಸಂಪೂರ್ಣ ಏಕೀಕರಿಸಲಾಗಿದೆ | ಕೋಡ್ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಆದರೆ ಕೆಲವೊಂದು ಸಂಘಟನೆ ಸಮಸ್ಯೆಗಳು ಅಥವಾ ಅಸ್ಥಿರ ಮಾದರಿಗಳಿವೆ | ಕೋಡ್ ಧಾರ್ಮಿಕ ಸಮಸ್ಯೆ ಮತ್ತು ಇತ್ತೀಚಿನ ಮಾದರಿಗಳೊಂದಿಗೆ ಸರಿಯಾಗಿ ಏಕೀಕರಿಸದೇ ಇದೆ |
|
||||
| **அಕ್ಸೆಸಿಬಿಲಿಟಿ** | ಸಂಪೂರ್ಣ ಕೀಬೋರ್ಡ್ ನ್ಯಾವಿಗೇಶನ್ ಬೆಂಬಲ, ಸ್ಕ್ರೀನ್ ರೀಡರ್ ಹೊಂದಾಣಿಕೆ, ಹಾಗೂ WCAG ಮಾರ್ಗಸೂಚಿತ ಸಹಿತ ಅತ್ಯುತ್ತಮ ಫೋಕಸ್ ನಿರ್ವಹಣೆ | ಮೂಲಭೂತ ಅಕ್ಸೆಸಿಬಿಲಿಟಿ ವೈಶಿಷ್ಟ್ಯಗಳು ಜಾರಿಯಾದವು, ಆದರೆ ಕೆಲವು ಕೀಬೋರ್ಡ್ ನ್ಯಾವಿಗೇಶನ್ ಅಥವಾ ಸ್ಕ್ರೀನ್ ರೀಡರ್ ವೈಶಿಷ್ಟ್ಯಗಳು ಇಲ್ಲ | ಅನೇಕ ಅಥವಾ ಯಾವುದೇ ಅಕ್ಸೆಸಿಬಿಲಿಟಿ ಪರಿಗಣನೆಗಳು ಜಾರಿಯಾಗಿಲ್ಲ |
|
||||
| **ಬಳಕೆದಾರ ಅನುಭವ** | ಸ್ಪಷ್ಟ ಪ್ರತಿಕ್ರಿಯೆ, ಸೌಮ್ಯ ಸಂಭಾಷಣೆ ಮತ್ತು ವೃತ್ತಿಪರ ಆಲಂಕಾರಿಕತೆ ಹೊಂದಿದ ಅದೃಷ್ಟಶಾಲಿ, ಮೆಚ್ಚುಗೆಯ ಸೋಪಾನ | ಉತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವ ಆದರೆ ಪ್ರತಿಕ್ರಿಯೆ ಅಥವಾ ದೃಶ್ಯ ವಿನ್ಯಾಸದಲ್ಲಿ ಸಣ್ಣ ಸುಧಾರಣೆಗಳಿಗೆ ಅಗತ್ಯವಿದೆ | ಗೊಂದಲಕಾರಿ ಇಂಟರ್ಫೇಸ್ ಅಥವಾ ಬಳಕೆದಾರ ಪ್ರತಿಕ್ರಿಯೆಯ ಕೊರತೆ ಇರುವ ದೌರ್ಬಲ್ಯপূর্ণ ಅನುಭವ |
|
||||
|
||||
## ಹೆಚ್ಚುವರಿ ಸವಾಲುಗಳು (ಐಚ್ಛಿಕ)
|
||||
|
||||
ನೀವು ಮೂಲ ಅಗತ್ಯಗಳನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ, ಈ ಸುಧಾರಣೆಗಳನ್ನು ಪರಿಗಣಿಸಿ:
|
||||
|
||||
**ವಿಕಸಿತ ವೈಶಿಷ್ಟ್ಯಗಳು:**
|
||||
- ಲೆನದ ಪತ್ರ ವರ್ಗಗಳನ್ನು (ಅಹಾರ, ಸಾರಿಗೆ, ಮನರಂಜನೆ ಇತ್ಯಾದಿ) **ಸೇರಿಸಿ**
|
||||
- ನೈಜ-ಸಮಯ ಪ್ರತಿಕ್ರಿಯೆಯೊಂದಿಗೆ ಇನ್ಪುಟ್ ಮೌಲ್ಯಪೂರಣವನ್ನು **ಅನುಷ್ಠಾನಗೊಳಿಸಿ**
|
||||
- ಶಕ್ತಿಶಾಲಿ ಬಳಕೆದಾರರಿಗೆ ಕೀಬೋರ್ಡ್ ಶಾರ್ಟ್ಕಟ್ ಗಳನ್ನು **ತಯಾರಿಸಿ**
|
||||
- ಲೆನದ ಪತ್ರ ಸಂಪಾದನೆ ಮತ್ತು ಅಳಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು **ಸೇರಿಸಿ**
|
||||
|
||||
**ಮುನ್ನಡೆ ಏಕೀಕರಣ:**
|
||||
- ಇತ್ತೀಚೆಗೆ ಸೇರಿಸಿದ ಲೆನದ ಪತ್ರಗಳಿಗೆ undo ಕಾರ್ಯಾಂಕವನ್ನು **ಅನುಷ್ಠಾನಗೊಳಿಸಿ**
|
||||
- CSV ಫೈಲ್ಗಳಿಂದ ಒಂದುಗೂಡಿಸಿದ ಲೆನದ ಪತ್ರಗಳನ್ನು **ಆಮದು ಮಾಡಿ**
|
||||
- ಲೆನದ ಪತ್ರ ಹುಡುಕಾಟ ಮತ್ತು ಫಿಲ್ಟರಿಂಗ್ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು **ಸೃಷ್ಟಿಸಿ**
|
||||
- ಡೇಟಾ ರಫ್ತು ಕಾರ್ಯವನ್ನು **ಅನುಷ್ಠಾನಗೊಳಿಸಿ**
|
||||
|
||||
ಈ ಐಚ್ಛಿಕ ವೈಶಿಷ್ಟ್ಯಗಳು ನಿಮಗೆ ಹೆಚ್ಚು ಉನ್ನತ ವೆಬ್ ಅಭಿವೃದ್ಧಿ ತಂತ್ರಾಂಶಗಳನ್ನು ಅಭ್ಯಾಸ ಮಾಡಲು ಸಹಾಯ ಮಾಡುತ್ತವೆ ಮತ್ತು ಸಂಪೂರ್ಣವಾದ ಬ್ಯಾಂಕಿಂಗ್ ಅಪ್ಲಿಕೇಶನ್ ರಚಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತವೆ!
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಉಲ್ಲೇಖ ನಿರಾಕರಣೆ**:
|
||||
ಈ ದಾಖಲೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಎಂಬ AI ಅನುವಾದ ಸೇವೆಯನ್ನು ಬಳಸಿಕೊಂಡು ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಯನ್ನು ಸಾಧಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ ಸಹ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸ್ಪಷ್ಟತೆಗಳು ಇರಬಹುದು ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿನ ನೇರ ದಾಖಲೆಯನ್ನು ಅಧಿಕೃತ ಮೂಲ ಎಂದು ಪರಿಗಣಿಸಲಾಗಬೇಕು. ಗಂಭೀರ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲಾರದ ಅಥವಾ ತಪ್ಪು ವ್ಯಾಖ್ಯಾನಗಳಿಗೆ ನಾವು ಉತ್ತರದಾಯಕರಾಗಿರಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,37 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "830359535306594b448db6575ce5cdee",
|
||||
"translation_date": "2026-01-08T11:31:04+00:00",
|
||||
"source_file": "7-bank-project/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# :dollar: ಬ್ಯಾಂಕ್ ನಿರ್ಮಿಸಿ
|
||||
|
||||
ಈ ಯೋಜನೆಯಲ್ಲಿ, ನೀವು ಒಂದು ಕಲ್ಪಿತ ಬ್ಯಾಂಕನ್ನು ಹೇಗೆ ನಿರ್ಮಿಸಬೇಕು ಎಂಬುದನ್ನು ಕಲಿಯೋಿರಿ. ಇವುಗಳಲ್ಲಿ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ ವಿನ್ಯಾಸಗೊಳಿಸುವುದು ಮತ್ತು ಮಾರ್ಗಗಳನ್ನು ಒದಗಿಸುವುದು, ಫಾರ್ಮ್ಗಳನ್ನು ನಿರ್ಮಿಸುವುದು, ಸ್ಥಿತಿಯನ್ನು ನಿರ್ವಹಿಸುವುದು, ಮತ್ತು ಬ್ಯಾಂಕಿನ ಡೇಟಾವನ್ನು ಪಡೆಯಲು API ಯಿಂದ ಡೇಟಾವನ್ನು ಎങ്ങനെ ಪಡೆಯಬೇಕು ಎಂಬುದು ಸೇರಿವೆ.
|
||||
|
||||
|  |  |
|
||||
|--------------------------------|--------------------------------|
|
||||
|
||||
## ಪಾಠಗಳು
|
||||
|
||||
1. [ವೆಬ್ ಅಪ್ಲಿಕೇಶನಿನಲ್ಲಿ HTML ಟೆಂಪ್ಲೇಟ್ಸ್ ಮತ್ತು ಮಾರ್ಗಗಳು](1-template-route/README.md)
|
||||
2. [ಲಾಗಿನ್ ಮತ್ತು ನೋಂದಣಿ ಫಾರ್ಮ್ ನಿರ್ಮಿಸಿ](2-forms/README.md)
|
||||
3. [ಡೇಟಾವನ್ನು ಪಡೆಯುವ ಮತ್ತು ಬಳಸುವ ವಿಧಾನಗಳು](3-data/README.md)
|
||||
4. [ಸ್ಥಿತಿ ನಿರ್ವಹಣೆಯ ಸಂಪ್ರದಾಯಗಳು](4-state-management/README.md)
|
||||
|
||||
### ಕ್ರೆಡಿಟ್ಸ್
|
||||
|
||||
ಈ ಪಾಠಗಳನ್ನು :hearts: ಯೋಹಾನ್ ಲಾಸೋರ್ಸಾ [Yohan Lasorsa](https://twitter.com/sinedied) ಅವರು ಬರೆಯಲಾಗಿದೆ.
|
||||
|
||||
ನೀವು ಈ ಪಾಠಗಳಲ್ಲಿ ಬಳಸಿರುವ [ಸರ್ವರ್ API](/7-bank-project/api/README.md) ಯನ್ನು ಹೇಗೆ ನಿರ್ಮಿಸಬೇಕೆಂದು ಕಲಿಯಲು ಆಸಕ್ತರಿದ್ದರೆ, ನೀವು [ಈ ವೀಡಿಯೋ ಶ್ರೇಣಿಯನ್ನು](https://aka.ms/NodeBeginner) (ಪ್ರಮುಖವಾಗಿ 17 ರಿಂದ 21 ವೀಡಿಯೋಗಳವರೆಗೆ) ಅನುಸರಿಸಬಹುದು.
|
||||
|
||||
ನೀವು [ಈ ಇಂಟರಾಕ್ಟಿವ್ ಲರ್ನ್ ಟ್ಯುಟೋರಿಯಲ್](https://aka.ms/learn/express-api) ಅನ್ನು ಕೂಡ ನೋಡಿ ತಿಳಿಯಬಹುದು.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ಒಪ್ಪಂದ ಮುಕ್ತಾಯ**:
|
||||
ಈ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು AI ಭಾಷಾಂತರ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿಕೊಂಡು ಭಾಷಾಂತರಿಸಲಾಗಿದೆ. ನಾವು ಸರಿಯಾದತೆಯಿಗಾಗಿ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೆ, ಸ್ವಯಂಚಾಲಿತ ಭಾಷಾಂತರಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ತಪ್ಪುಗಳು ಇರಬಹುದು ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನದಲ್ಲಿ ಇಡಿ. ಮೂಲ ಭಾಷೆಯಡಿಯಲ್ಲಿ ಇರುವ ಮೂಲ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು ಅಧಿಕೃತ ಮೂಲವಾಗಿದೆ ಎಂದು ಪರಿಗಣಿಸಬೇಕು. ಅತ್ಯಂತ ಸಂಖ್ಯಾತಮ ಮಾಹಿತಿಗಳಿಗೆ ವೃತ್ತಿಪರ ಮಾನವ ಭಾಷಾಂತರವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಭಾಷಾಂತರ ಬಳಕೆಯಿಂದ ಆಗಿರುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥ ಮಾಡಿಕೊಳ್ಳುವಿಕೆ ಅಥವಾ ತಪ್ಪಾದ ಅರ್ಥಗೊಳ್ಳುವಿಕೆಗೆ ನಾವು ಜವಾಬ್ದಾರರಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,50 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "9884f8c8a61cf56214450f8b16a094ce",
|
||||
"translation_date": "2026-01-08T16:40:10+00:00",
|
||||
"source_file": "7-bank-project/api/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಬ್ಯಾಂಕ್ API
|
||||
|
||||
> [Node.js](https://nodejs.org) + [Express](https://expressjs.com/) ಬಳಸಿ ನಿರ್ಮಿಸಿರುವ ಬ್ಯಾಂಕ್ API.
|
||||
|
||||
API ಈಗಾಗಲೆ ನಿಮಗಾಗಿ ನಿರ್ಮಿಸಲಾಗಿದೆ ಮತ್ತು ವ್ಯಾಯಾಮದ ಭಾಗವಲ್ಲ.
|
||||
|
||||
ಯಾದರೂ, ನೀವು ಹೀಗೆ ಒಂದು API ಹೇಗೆ ನಿರ್ಮಿಸುವುದೇನು ಎಂಬುದನ್ನು ಕಲಿಯಲು ಆಸಕ್ತಿ ಹೊಂದಿದ್ದರೆ, ಈ ಸರಣಿಯ ವೀಡಿಯೊಗಳನ್ನು ಅನುಸರಿಸಬಹುದು: https://aka.ms/NodeBeginner (ವೀಡಿಯೊಗಳು 17 ರಿಂದ 21 ಅವಧಿವರೆಗೆ ಈ ನಿಖರ API ಅನ್ನು ಕವರ್ ಮಾಡುತ್ತವೆ).
|
||||
|
||||
ನೀವು ಈ ಇಂಟರಾಕ್ಟಿವ್ ಟ್ಯುಟೋರಿಯಲ್ಗೆ ಸಹ ಒಂದು ತಿರುಗು ನೋಡಬಹುದು: https://aka.ms/learn/express-api
|
||||
|
||||
## ಸರ್ವರ್ ಚಾಲನೆ
|
||||
|
||||
ನಿಮ್ಮಲ್ಲಿ [Node.js](https://nodejs.org) ಸ್ಥಾಪಿತವಾಗಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.
|
||||
|
||||
1. ಈ ರೆಪೊವನ್ನು Git clone ಮಾಡಿ [The Web-Dev-For-Beginners](https://github.com/microsoft/Web-Dev-For-Beginners).
|
||||
2. ನಿಮ್ಮ ಟರ್ಮಿನಲ್ ಅನ್ನು ತೆರೆಯಿರಿ ಮತ್ತು `Web-Dev-For-Beginners/7-bank-project/api` ಫೋಲ್ಡರ್ಗೆ ನವಿಗೇಟ್ ಮಾಡಿ
|
||||
2. `npm install` ಆಜ್ಞೆಯನ್ನು ಓಡಿಸಿ ಮತ್ತು ಪ್ಯಾಕೇಜುಗಳು ಸ್ಥಾಪಿತವಾಗುವವರೆಗೆ ಕಾಯಿರಿ (ನಿಮ್ಮ ಇಂಟರ್ನೆಟ್ ಸಂಪರ್ಕದ ಗುಣಮಟ್ಟದ ಪ್ರಕಾರ ಸ್ವಲ್ಪ ಸಮಯ ತೆಗೆದುಕೊಳ್ಳಬಹುದು).
|
||||
3. ಸ್ಥಾಪನೆ ಮುಗಿದ ಮೇಲೆ, `npm start` ಆಜ್ಞೆಯನ್ನು ಓಡಿಸಿ ಮತ್ತು ನೀವು ಸಿದ್ಧರಾಗಿ.
|
||||
|
||||
ಸರ್ವರ್ `5000` ಪೋರ್ಟ್ ನಲ್ಲಿ ಶ್ರವಣ ಆರಂಭಿಸಬೇಕು.
|
||||
*ಈ ಸರ್ವರ್ ಮುಖ್ಯ ಬ್ಯಾಂಕ್ ಆ್ಯಪ್ ಸರ್ವರ್ ಟರ್ಮಿನಲ್ಗಾಗಿ (ಪೋರ್ಟ್ `3000` ನಲ್ಲಿ ಶ್ರವಣ) ಜೊತೆಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಅದನ್ನು ಮುಚ್ಚಬೇಡಿ.*
|
||||
|
||||
> ಗಮನಿಸಿ: ಎಲ್ಲಾ ದಾಖಲಾತಿಗಳು ಮೆಮೋರಿಯಲ್ಲಿದೆ ಮತ್ತು ಸಂರಕ್ಷಿಸಲಾಗುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ಸರ್ವರ್ ನಿಲ್ಲಿಸಿದಾಗ ಎಲ್ಲಾ ಡೇಟಾ ಕಳೆದುಹೋಗುತ್ತದೆ.
|
||||
|
||||
## API ವಿವರಗಳು
|
||||
|
||||
ರೌಟ್ | ವಿವರಣೆ
|
||||
---------------------------------------------|------------------------------------
|
||||
GET /api/ | ಸರ್ವರ್ ಮಾಹಿತಿ ಪಡೆಯಿರಿ
|
||||
POST /api/accounts/ | ಖಾತೆಯನ್ನು ಸೃಷ್ಟಿಸಿ, ಉದಾ: `{ user: 'Yohan', description: 'My budget', currency: 'EUR', balance: 100 }`
|
||||
GET /api/accounts/:user | సూచಿಸಲಾದ ಖಾತೆಗಾಗಿ ಎಲ್ಲಾ ಡೇಟಾ ಪಡೆಯಿರಿ
|
||||
DELETE /api/accounts/:user | ಸೂಚಿಸಲಾದ ಖಾತೆ ಅನ್ನು ತೆಗೆದುಹಾಕಿ
|
||||
POST /api/accounts/:user/transactions | ಒಂದು ವ್ಯವಹಾರ ಸೇರಿಸಿ, ಉದಾ: `{ date: '2020-07-23T18:25:43.511Z', object: 'Bought a book', amount: -20 }`
|
||||
DELETE /api/accounts/:user/transactions/:id | ಸೂಚಿಸಲಾದ ವ್ಯವಹಾರವನ್ನು ತೆಗೆದುಹಾಕಿ
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ವಿಷಯ ಸೂಚನೆ**:
|
||||
ಈ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಗಾಗಿ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು ಅಧಿಕೃತ ಮೂಲ ಎಂದು ಪರಿಗಣಿಸಲಾಗಬೇಕು. ಮಹತ್ವದ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಸಲಹೆ ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿಕೆ ಅಥವಾ ತಪ್ಪಾಗಿ ವ್ಯಾಖ್ಯಾನಿಸುವಿಕೆಗೆ ನಾವು ಜವಾಬ್ದಾರಿಯಾಗುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||
@ -0,0 +1,29 @@
|
||||
<!--
|
||||
CO_OP_TRANSLATOR_METADATA:
|
||||
{
|
||||
"original_hash": "461aa4fc74c6b1789c3a13b5d82c0cd9",
|
||||
"translation_date": "2026-01-08T18:07:24+00:00",
|
||||
"source_file": "7-bank-project/solution/README.md",
|
||||
"language_code": "kn"
|
||||
}
|
||||
-->
|
||||
# ಬ್ಯಾಂಕ್ ಅಪ್
|
||||
|
||||
> ಬ್ಯಾಂಕ್ ಅಪ್ ಯೋಜನೆಯನ್ನು ರೂಪಿಸಲು ಉದಾಹರಣೆಯ ಪರಿಹಾರ, ವನಿಲಾ HTML5, CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ (ಯಾವುದೇ ಫ್ರೇಮ್ವರ್ಕ್ಗಳು ಅಥವಾ ಲೈಬ್ರರಿಗಳು ಬಳಸಿಲ್ಲ) ಬಳಸಿ ನಿರ್ಮಿಸಲಾಗಿದೆ.
|
||||
|
||||
## ಅಪ್ ರನ್ ಮಾಡುವುದು
|
||||
|
||||
ಮೊದಲು ನೀವು [API ಸರ್ವರ್](../api/README.md) ಚಾಲನೆಯಲ್ಲಿದೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.
|
||||
|
||||
ಯಾವುದೇ ವೆಬ್ ಸರ್ವರ್ ಅಪ್ ಅನ್ನು ರನ್ ಮಾಡಬಹುದು, ಆದರೆ ನೀವು ಯಾವುದೇ ಕಾರಣಕ್ಕಾಗಿ API ರನ್ ಮಾಡಲು [Node.js](https://nodejs.org) ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿರಬೇಕು, ಆದ್ದರಿಂದ ನೀವು:
|
||||
|
||||
1. ಈ ರೆಪೊ ಕ್ಲೋನ್ ಮಾಡಿ.
|
||||
2. ತರ್ಮಿನಲ್ ತೆರೆದು, ಈ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ ಹೋಗಿ, ನಂತರ `npx lite-server .` ಅನ್ನು ರನ್ ಮಾಡಿ. ಇದು ಪೋರ್ಟ್ `3000` ನಲ್ಲಿ ಡೆವಲಪ್ಮೆಂಟ್ ವೆಬ್ ಸರ್ವರ್ ಆರಂಭಿಸುತ್ತದೆ.
|
||||
3. ಅಪ್ ರನ್ ಮಾಡಲು ಬ್ರೌಸರ್ನಲ್ಲಿ `http://localhost:3000` ತೆರೆಯಿರಿ.
|
||||
|
||||
---
|
||||
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
||||
**ವಿಮೃಶಣೆ**:
|
||||
ಈ ದಾಖಲೆyiನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಗಾಗಿ ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಸಮರ್ಪಕತೆಗಳಿರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿನ ಮೂಲ ದಾಖಲೆyniೇ ಪ್ರಮಾಣಿಕ ಮೂಲವಾಗಿರಬೇಕು. ಪ್ರಮುಖ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೆಗಳು ಅಥವಾ ದೋಷಗಳಗಾಗಿ ನಾವು ಹೊಣೆಗಾರರಾಗಿರುವುದಿಲ್ಲ.
|
||||
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
|
||||